From 47acb56c4a1cd027de029353ef4f1a8879beed2a Mon Sep 17 00:00:00 2001 From: nin-jin Date: Sun, 10 Mar 2024 07:07:26 +0000 Subject: [PATCH] Deployed using Blazing fast GitHub Pages deploy --- node.d.ts | 324 ++++---- node.d.ts.map | 2 +- node.deps.json | 2 +- node.js | 1828 +++++++++++++++++++++++---------------------- node.js.map | 2 +- node.mjs | 1828 +++++++++++++++++++++++---------------------- node.test.js | 1866 +++++++++++++++++++++++----------------------- node.test.js.map | 2 +- package.json | 12 +- web.d.ts | 147 ++-- web.d.ts.map | 2 +- web.deps.json | 2 +- web.js | 3 + web.js.map | 2 +- web.mjs | 3 + 15 files changed, 3068 insertions(+), 2957 deletions(-) diff --git a/node.d.ts b/node.d.ts index f89df6c..aafa7dd 100644 --- a/node.d.ts +++ b/node.d.ts @@ -1042,57 +1042,57 @@ declare namespace $ { declare namespace $ { - type $mol_view__dom_name__GFLH59DL = $mol_type_enforce< + type $mol_view__dom_name__MDHLH6IB = $mol_type_enforce< string , ReturnType< $mol_view['dom_name'] > > - type $mol_view__sub__LIB91J7Q = $mol_type_enforce< + type $mol_view__sub__XAMTCKCV = $mol_type_enforce< ReturnType< $mol_page['title_content'] > , ReturnType< $mol_view['sub'] > > - type $mol_view__sub__TWE5U7GS = $mol_type_enforce< + type $mol_view__sub__KYMTG78D = $mol_type_enforce< ReturnType< $mol_page['tools'] > , ReturnType< $mol_view['sub'] > > - type $mol_view__minimal_height__RMSL0X6Z = $mol_type_enforce< + type $mol_view__minimal_height__Z5Z27O15 = $mol_type_enforce< number , ReturnType< $mol_view['minimal_height'] > > - type $mol_view__dom_name__DGB1ZK1T = $mol_type_enforce< + type $mol_view__dom_name__CIHRQR0P = $mol_type_enforce< string , ReturnType< $mol_view['dom_name'] > > - type $mol_view__sub__1R8XRPYO = $mol_type_enforce< + type $mol_view__sub__6GJLMMMT = $mol_type_enforce< ReturnType< $mol_page['head'] > , ReturnType< $mol_view['sub'] > > - type $mol_page_body_scroll_top__9XRI654K = $mol_type_enforce< + type $mol_page_body_scroll_top__GC3E8GPO = $mol_type_enforce< Parameters< $mol_page['body_scroll_top'] >[0] , Parameters< ReturnType< $mol_page['Body'] >['scroll_top'] >[0] > - type $mol_view__sub__ACUVAFB0 = $mol_type_enforce< + type $mol_view__sub__8NLIDG6R = $mol_type_enforce< ReturnType< $mol_page['body'] > , ReturnType< $mol_view['sub'] > > - type $mol_scroll__sub__UE49NP19 = $mol_type_enforce< + type $mol_scroll__sub__S19OGEHF = $mol_type_enforce< ReturnType< $mol_page['body_content'] > , ReturnType< $mol_scroll['sub'] > > - type $mol_view__dom_name__6GBCJ1GQ = $mol_type_enforce< + type $mol_view__dom_name__NCA3QIFW = $mol_type_enforce< string , ReturnType< $mol_view['dom_name'] > > - type $mol_view__sub__NTBX9A2B = $mol_type_enforce< + type $mol_view__sub__IBDYF5T0 = $mol_type_enforce< ReturnType< $mol_page['foot'] > , ReturnType< $mol_view['sub'] > @@ -1197,6 +1197,99 @@ declare namespace $ { } } +declare namespace $ { + type $mol_charset_encoding = 'utf8' | 'utf-16le' | 'utf-16be' | 'ibm866' | 'iso-8859-2' | 'iso-8859-3' | 'iso-8859-4' | 'iso-8859-5' | 'iso-8859-6' | 'iso-8859-7' | 'iso-8859-8' | 'iso-8859-8i' | 'iso-8859-10' | 'iso-8859-13' | 'iso-8859-14' | 'iso-8859-15' | 'iso-8859-16' | 'koi8-r' | 'koi8-u' | 'koi8-r' | 'macintosh' | 'windows-874' | 'windows-1250' | 'windows-1251' | 'windows-1252' | 'windows-1253' | 'windows-1254' | 'windows-1255' | 'windows-1256' | 'windows-1257' | 'windows-1258' | 'x-mac-cyrillic' | 'gbk' | 'gb18030' | 'hz-gb-2312' | 'big5' | 'euc-jp' | 'iso-2022-jp' | 'shift-jis' | 'euc-kr' | 'iso-2022-kr'; +} + +declare namespace $ { + function $mol_charset_decode(buffer: BufferSource, encoding?: $mol_charset_encoding): string; +} + +declare namespace $ { + function $mol_charset_encode(value: string): Uint8Array; +} + +declare namespace $ { + type $mol_file_type = 'file' | 'dir' | 'link'; + interface $mol_file_stat { + type: $mol_file_type; + size: number; + atime: Date; + mtime: Date; + ctime: Date; + } + class $mol_file_not_found extends Error { + } + abstract class $mol_file extends $mol_object { + static absolute(path: string): $mol_file; + static relative(path: string): $mol_file; + static base: string; + path(): string; + parent(): $mol_file; + abstract stat(next?: $mol_file_stat | null, virt?: 'virt'): $mol_file_stat | null; + reset(): void; + version(): string; + abstract ensure(): void; + abstract drop(): void; + watcher(): { + destructor(): void; + }; + exists(next?: boolean): boolean; + type(): "" | $mol_file_type; + name(): string; + ext(): string; + abstract buffer(next?: Uint8Array): Uint8Array; + text(next?: string, virt?: 'virt'): string; + abstract sub(): $mol_file[]; + abstract resolve(path: string): $mol_file; + abstract relate(base?: $mol_file): string; + abstract append(next: Uint8Array | string): void; + find(include?: RegExp, exclude?: RegExp): $mol_file[]; + size(): number; + open(...modes: readonly ('create' | 'exists_truncate' | 'exists_fail' | 'read_only' | 'write_only' | 'read_write' | 'append')[]): number; + toJSON(): string; + } +} + +declare namespace $ { + function $mol_compare_array>(a: Value, b: Value): boolean; +} + +declare namespace $ { + enum $mol_file_mode_open { + create, + exists_truncate, + exists_fail, + read_only, + write_only, + read_write, + append + } + class $mol_file_node extends $mol_file { + static absolute(path: string): $mol_file_node; + static relative(path: string): $mol_file_node; + watcher(): { + destructor(): void; + }; + stat(next?: $mol_file_stat | null, virt?: 'virt'): $mol_file_stat | null; + ensure(): void; + drop(): void; + buffer(next?: Uint8Array): Uint8Array; + sub(): $mol_file[]; + resolve(path: string): $mol_file; + relate(base?: $mol_file): string; + append(next: Uint8Array | string): undefined; + open(...modes: readonly (keyof typeof $mol_file_mode_open)[]): number; + } +} + +declare namespace $ { + class $mol_state_local_node extends $mol_state_local { + static dir(): $mol_file; + static value(key: string, next?: Value | null): Value | null; + } +} + declare namespace $ { function $mol_lights(this: $, next?: boolean): boolean; } @@ -1353,7 +1446,7 @@ declare namespace $ { declare namespace $ { - type $mol_speck__value__DNABSGDA = $mol_type_enforce< + type $mol_speck__value__FHKARII7 = $mol_type_enforce< ReturnType< $mol_button['error'] > , ReturnType< $mol_speck['value'] > @@ -1437,7 +1530,7 @@ declare namespace $ { declare namespace $ { - type $mol_view__sub__J35HMRXE = $mol_type_enforce< + type $mol_view__sub__59N6ER7E = $mol_type_enforce< readonly(any)[] , ReturnType< $mol_view['sub'] > @@ -1545,7 +1638,7 @@ declare namespace $ { declare namespace $ { - type $mol_svg_path__geometry__VBZN24KE = $mol_type_enforce< + type $mol_svg_path__geometry__C68HEKKK = $mol_type_enforce< ReturnType< $mol_icon['path'] > , ReturnType< $mol_svg_path['geometry'] > @@ -1571,91 +1664,6 @@ declare namespace $ { } //# sourceMappingURL=6.view.tree.d.ts.map -declare namespace $ { - type $mol_charset_encoding = 'utf8' | 'utf-16le' | 'utf-16be' | 'ibm866' | 'iso-8859-2' | 'iso-8859-3' | 'iso-8859-4' | 'iso-8859-5' | 'iso-8859-6' | 'iso-8859-7' | 'iso-8859-8' | 'iso-8859-8i' | 'iso-8859-10' | 'iso-8859-13' | 'iso-8859-14' | 'iso-8859-15' | 'iso-8859-16' | 'koi8-r' | 'koi8-u' | 'koi8-r' | 'macintosh' | 'windows-874' | 'windows-1250' | 'windows-1251' | 'windows-1252' | 'windows-1253' | 'windows-1254' | 'windows-1255' | 'windows-1256' | 'windows-1257' | 'windows-1258' | 'x-mac-cyrillic' | 'gbk' | 'gb18030' | 'hz-gb-2312' | 'big5' | 'euc-jp' | 'iso-2022-jp' | 'shift-jis' | 'euc-kr' | 'iso-2022-kr'; -} - -declare namespace $ { - function $mol_charset_decode(buffer: BufferSource, encoding?: $mol_charset_encoding): string; -} - -declare namespace $ { - function $mol_charset_encode(value: string): Uint8Array; -} - -declare namespace $ { - type $mol_file_type = 'file' | 'dir' | 'link'; - interface $mol_file_stat { - type: $mol_file_type; - size: number; - atime: Date; - mtime: Date; - ctime: Date; - } - class $mol_file_not_found extends Error { - } - abstract class $mol_file extends $mol_object { - static absolute(path: string): $mol_file; - static relative(path: string): $mol_file; - static base: string; - path(): string; - parent(): $mol_file; - abstract stat(next?: $mol_file_stat | null, virt?: 'virt'): $mol_file_stat | null; - reset(): void; - version(): string; - abstract ensure(): void; - abstract drop(): void; - watcher(): { - destructor(): void; - }; - exists(next?: boolean): boolean; - type(): "" | $mol_file_type; - name(): string; - ext(): string; - abstract buffer(next?: Uint8Array): Uint8Array; - text(next?: string, virt?: 'virt'): string; - abstract sub(): $mol_file[]; - abstract resolve(path: string): $mol_file; - abstract relate(base?: $mol_file): string; - abstract append(next: Uint8Array | string): void; - find(include?: RegExp, exclude?: RegExp): $mol_file[]; - size(): number; - open(...modes: readonly ('create' | 'exists_truncate' | 'exists_fail' | 'read_only' | 'write_only' | 'read_write' | 'append')[]): number; - } -} - -declare namespace $ { - function $mol_compare_array>(a: Value, b: Value): boolean; -} - -declare namespace $ { - enum $mol_file_mode_open { - create, - exists_truncate, - exists_fail, - read_only, - write_only, - read_write, - append - } - class $mol_file_node extends $mol_file { - static absolute(path: string): $mol_file_node; - static relative(path: string): $mol_file_node; - watcher(): { - destructor(): void; - }; - stat(next?: $mol_file_stat | null, virt?: 'virt'): $mol_file_stat | null; - ensure(): void; - drop(): void; - buffer(next?: Uint8Array): Uint8Array; - sub(): $mol_file[]; - resolve(path: string): $mol_file; - relate(base?: $mol_file): string; - append(next: Uint8Array | string): undefined; - open(...modes: readonly (keyof typeof $mol_file_mode_open)[]): number; - } -} - declare namespace $ { interface $mol_locale_dict { [key: string]: string; @@ -1804,12 +1812,12 @@ declare namespace $ { declare namespace $ { - type $mol_link__uri__JK2CSKL4 = $mol_type_enforce< + type $mol_link__uri__0JL6H93T = $mol_type_enforce< ReturnType< $mol_embed_native['uri'] > , ReturnType< $mol_link['uri'] > > - type $mol_link__sub__RLGOACH5 = $mol_type_enforce< + type $mol_link__sub__2UOXRCIR = $mol_type_enforce< readonly(any)[] , ReturnType< $mol_link['sub'] > @@ -1889,267 +1897,267 @@ declare namespace $ { declare namespace $ { - type $mol_link_source__uri__QLGEQA3W = $mol_type_enforce< + type $mol_link_source__uri__9X82UL7L = $mol_type_enforce< string , ReturnType< $mol_link_source['uri'] > > - type $mol_button_major__title__D3CPB4WU = $mol_type_enforce< + type $mol_button_major__title__5I3G5B12 = $mol_type_enforce< ReturnType< $hyoo_showcase['offer_title'] > , ReturnType< $mol_button_major['title'] > > - type $mol_link__uri__BL9KGVAI = $mol_type_enforce< + type $mol_link__uri__MHY2PXT3 = $mol_type_enforce< string , ReturnType< $mol_link['uri'] > > - type $mol_link__sub__96VEB0YA = $mol_type_enforce< + type $mol_link__sub__GAFVRY5W = $mol_type_enforce< readonly(any)[] , ReturnType< $mol_link['sub'] > > - type $hyoo_showcase_app__title__0TFDTZ57 = $mol_type_enforce< + type $hyoo_showcase_app__title__RECB00QA = $mol_type_enforce< ReturnType< $hyoo_showcase['app_widgets_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__A2A9RJN5 = $mol_type_enforce< + type $hyoo_showcase_app__details__EKKB4YTH = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__Z0R9FIM5 = $mol_type_enforce< + type $hyoo_showcase_app__title__D9BDAVN2 = $mol_type_enforce< ReturnType< $hyoo_showcase['app_scout_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__50THTXNJ = $mol_type_enforce< + type $hyoo_showcase_app__details__3WOU9ZBU = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__X4DIKFGY = $mol_type_enforce< + type $hyoo_showcase_app__title__13LUY31M = $mol_type_enforce< ReturnType< $hyoo_showcase['app_piterjs_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__S8P5C5V0 = $mol_type_enforce< + type $hyoo_showcase_app__details__ZLHDR7IV = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__U03XF287 = $mol_type_enforce< + type $hyoo_showcase_app__title__VAQO7U0R = $mol_type_enforce< ReturnType< $hyoo_showcase['app_shelter_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__9EK6YIFW = $mol_type_enforce< + type $hyoo_showcase_app__details__RS6XSFQ9 = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__X58R3E61 = $mol_type_enforce< + type $hyoo_showcase_app__title__0UD9TC7V = $mol_type_enforce< ReturnType< $hyoo_showcase['app_fallacy_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__CCURNLME = $mol_type_enforce< + type $hyoo_showcase_app__details__XHSRDX32 = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__IMJDL6WQ = $mol_type_enforce< + type $hyoo_showcase_app__title__7M00OR6O = $mol_type_enforce< ReturnType< $hyoo_showcase['app_toys_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__Z5A24LPV = $mol_type_enforce< + type $hyoo_showcase_app__details__PV11ECPP = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__9UYKAV2S = $mol_type_enforce< + type $hyoo_showcase_app__title__96LLLIZ2 = $mol_type_enforce< ReturnType< $hyoo_showcase['app_calc_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__2533F099 = $mol_type_enforce< + type $hyoo_showcase_app__details__0J9WKEHO = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__ETYRJDDQ = $mol_type_enforce< + type $hyoo_showcase_app__title__BPXZZCT8 = $mol_type_enforce< ReturnType< $hyoo_showcase['app_notes_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__XDWH5VI3 = $mol_type_enforce< + type $hyoo_showcase_app__details__PFEDN66Q = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__BL4P3KBB = $mol_type_enforce< + type $hyoo_showcase_app__title__5ME6ZULF = $mol_type_enforce< ReturnType< $hyoo_showcase['app_invest_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__D7WVTYB1 = $mol_type_enforce< + type $hyoo_showcase_app__details__FHGQGK7N = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__9IGA8G2H = $mol_type_enforce< + type $hyoo_showcase_app__title__QO0KVG8O = $mol_type_enforce< ReturnType< $hyoo_showcase['app_todomvc_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__N6DTDY0V = $mol_type_enforce< + type $hyoo_showcase_app__details__0HUIG8GW = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__MA5VFT7K = $mol_type_enforce< + type $hyoo_showcase_app__title__RKBVT90C = $mol_type_enforce< ReturnType< $hyoo_showcase['app_life_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__ZC9EG9H3 = $mol_type_enforce< + type $hyoo_showcase_app__details__54PEKFP0 = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__EQRE1EM4 = $mol_type_enforce< + type $hyoo_showcase_app__title__199K5BAG = $mol_type_enforce< ReturnType< $hyoo_showcase['app_habhub_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__A1LJ4HFZ = $mol_type_enforce< + type $hyoo_showcase_app__details__7FCT7XY1 = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__RBD2E82S = $mol_type_enforce< + type $hyoo_showcase_app__title__ZJ97H3HK = $mol_type_enforce< ReturnType< $hyoo_showcase['app_questions_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__7VJ6E8UX = $mol_type_enforce< + type $hyoo_showcase_app__details__D9ZS0IOR = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__B1A9GOZG = $mol_type_enforce< + type $hyoo_showcase_app__title__LR1BMPZR = $mol_type_enforce< ReturnType< $hyoo_showcase['app_slides_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__15DKDOZJ = $mol_type_enforce< + type $hyoo_showcase_app__details__IK65XUXV = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__E3Y8POBX = $mol_type_enforce< + type $hyoo_showcase_app__title__POS84CA3 = $mol_type_enforce< ReturnType< $hyoo_showcase['app_iq_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__AN0IAKNR = $mol_type_enforce< + type $hyoo_showcase_app__details__GPGQ13O4 = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__IWAU5BMS = $mol_type_enforce< + type $hyoo_showcase_app__title__1W7WH8AU = $mol_type_enforce< ReturnType< $hyoo_showcase['app_rdf_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__GFOSFKRP = $mol_type_enforce< + type $hyoo_showcase_app__details__03Q7Y1Z5 = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__WRECZC2X = $mol_type_enforce< + type $hyoo_showcase_app__title__Q2GEPIBE = $mol_type_enforce< ReturnType< $hyoo_showcase['app_lamps_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__M3VGYATE = $mol_type_enforce< + type $hyoo_showcase_app__details__QKZHNNRP = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__1RFJ7PT2 = $mol_type_enforce< + type $hyoo_showcase_app__title__MSVS8KAC = $mol_type_enforce< ReturnType< $hyoo_showcase['app_bench_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__X4N0T6DI = $mol_type_enforce< + type $hyoo_showcase_app__details__PXPUKMI8 = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__KKMW3LUJ = $mol_type_enforce< + type $hyoo_showcase_app__title__68BPQTNJ = $mol_type_enforce< ReturnType< $hyoo_showcase['app_request_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__DPJFU9IY = $mol_type_enforce< + type $hyoo_showcase_app__details__1BWIJLGY = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__DQGHVM4J = $mol_type_enforce< + type $hyoo_showcase_app__title__MLPPXM8O = $mol_type_enforce< ReturnType< $hyoo_showcase['app_jsperf_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__DN13TTZ9 = $mol_type_enforce< + type $hyoo_showcase_app__details__1O3BKCH1 = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__ZHHFJ695 = $mol_type_enforce< + type $hyoo_showcase_app__title__U250OXY7 = $mol_type_enforce< ReturnType< $hyoo_showcase['app_issues_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__ME62EHA6 = $mol_type_enforce< + type $hyoo_showcase_app__details__Z6S1WYF2 = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__ERRB3EQ0 = $mol_type_enforce< + type $hyoo_showcase_app__title__CMXPA9X7 = $mol_type_enforce< ReturnType< $hyoo_showcase['app_tree_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__03YGDKS4 = $mol_type_enforce< + type $hyoo_showcase_app__details__82Y17C9Q = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__0NETI8Z6 = $mol_type_enforce< + type $hyoo_showcase_app__title__31T1ZZIK = $mol_type_enforce< ReturnType< $hyoo_showcase['app_icons_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__NYVFMEG8 = $mol_type_enforce< + type $hyoo_showcase_app__details__TJB7VDW4 = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $hyoo_showcase_app__title__LWL3XV25 = $mol_type_enforce< + type $hyoo_showcase_app__title__6OABM64D = $mol_type_enforce< ReturnType< $hyoo_showcase['app_portal_title'] > , ReturnType< $hyoo_showcase_app['title'] > > - type $hyoo_showcase_app__details__HTNF6I4O = $mol_type_enforce< + type $hyoo_showcase_app__details__QVLITEYZ = $mol_type_enforce< string , ReturnType< $hyoo_showcase_app['details'] > > - type $mol_scroll__sub__78Q1OAP1 = $mol_type_enforce< + type $mol_scroll__sub__SJ2WL0PY = $mol_type_enforce< ReturnType< $hyoo_showcase['apps'] > , ReturnType< $mol_scroll['sub'] > @@ -2220,24 +2228,24 @@ declare namespace $ { body( ): readonly(any)[] } - type $mol_view__sub__4EUJGGWM = $mol_type_enforce< + type $mol_view__sub__MBGF0NWQ = $mol_type_enforce< readonly(any)[] , ReturnType< $mol_view['sub'] > > - type $mol_frame__style__8IFD4IQA = $mol_type_enforce< + type $mol_frame__style__30PQD1OI = $mol_type_enforce< ({ 'background-image': ReturnType< $hyoo_showcase_app['background'] >, }) , ReturnType< $mol_frame['style'] > > - type $mol_frame__uri__E41OA5JV = $mol_type_enforce< + type $mol_frame__uri__X4NTMF62 = $mol_type_enforce< ReturnType< $hyoo_showcase_app['details'] > , ReturnType< $mol_frame['uri'] > > - type $mol_view__sub__WCQ2GJCR = $mol_type_enforce< + type $mol_view__sub__6QJLHWHK = $mol_type_enforce< readonly(any)[] , ReturnType< $mol_view['sub'] > diff --git a/node.d.ts.map b/node.d.ts.map index 6cf605e..b294eaf 100644 --- a/node.d.ts.map +++ b/node.d.ts.map @@ -1 +1 @@ -{"version":3,"sources":["../../../mam.d.ts","../../../mol/ambient/ambient.d.ts","../../../mol/delegate/delegate.d.ts","../../../mol/owning/owning.d.ts","../../../mol/fail/fail.d.ts","../../../mol/fail/hidden/hidden.d.ts","../../../mol/type/writable/writable.d.ts","../../../mol/func/name/name.d.ts","../../../mol/object2/object2.d.ts","../../../mol/object/object.d.ts","../../../mol/window/window.node.d.ts","../../../mol/wire/cursor/cursor.d.ts","../../../mol/wire/pub/pub.d.ts","../../../mol/wire/sub/sub.d.ts","../../../mol/wire/wire.d.ts","../../../mol/dev/format/format.d.ts","../../../mol/wire/pub/sub/sub.d.ts","../../../mol/after/timeout/timeout.d.ts","../../../mol/after/frame/frame.node.d.ts","../../../mol/promise/like/like.d.ts","../../../mol/wire/fiber/fiber.d.ts","../../../mol/guid/guid.d.ts","../../../mol/key/key.d.ts","../../../mol/compare/deep/deep.d.ts","../../../mol/log3/log3.d.ts","../../../mol/span/span.d.ts","../../../mol/tree2/to/string/string.d.ts","../../../mol/tree2/tree2.d.ts","../../../mol/error/syntax/syntax.d.ts","../../../mol/tree2/from/string/string.d.ts","../../../mol/tree2/from/json/json.d.ts","../../../mol/term/color/color.d.ts","../../../mol/log3/log3.node.d.ts","../../../mol/wire/task/task.d.ts","../../../mol/wire/method/method.d.ts","../../../mol/type/tail/tail.d.ts","../../../mol/type/foot/foot.d.ts","../../../mol/fail/catch/catch.d.ts","../../../mol/fail/log/log.d.ts","../../../mol/wire/atom/atom.d.ts","../../../mol/wire/solo/solo.d.ts","../../../mol/wire/plex/plex.d.ts","../../../mol/mem/mem.d.ts","../../../mol/dom/context/context.d.ts","../../../node/node.node.d.ts","../../../mol/env/env.d.ts","../../../mol/env/env.node.d.ts","../../../mol/exec/exec.node.d.ts","../../../mol/dom/context/context.node.d.ts","../../../mol/after/tick/tick.d.ts","../../../mol/view/selection/selection.d.ts","../../../mol/wrapper/wrapper.d.ts","../../../mol/memo/memo.d.ts","../../../mol/dom/qname/qname.d.ts","../../../mol/wire/probe/probe.d.ts","../../../mol/wire/watch/watch.d.ts","../../../mol/const/const.d.ts","../../../mol/wire/solid/solid.d.ts","../../../mol/dom/render/attributes/attributes.d.ts","../../../mol/dom/render/events/events.d.ts","../../../mol/dom/render/styles/styles.d.ts","../../../mol/dom/render/children/children.d.ts","../../../mol/dom/render/fields/fields.d.ts","../../../mol/wire/async/async.d.ts","../../../mol/type/keys/extract/extract.d.ts","../../../mol/type/pick/pick.d.ts","../../../mol/style/attach/attach.d.ts","../../../mol/decor/decor.d.ts","../../../mol/style/unit/unit.d.ts","../../../mol/style/func/func.d.ts","../../../mol/type/override/override.d.ts","../../../mol/style/properties/properties.d.ts","../../../mol/style/prop/prop.d.ts","../../../mol/theme/theme.d.ts","../../../mol/theme/-css/theme.css.d.ts","../../../mol/gap/gap.d.ts","../../../mol/gap/-css/gap.css.d.ts","../../../mol/view/view/view.d.ts","../../../mol/view/view/-css/view.css.d.ts","../../../mol/dom/listener/listener.d.ts","../../../mol/print/print.d.ts","../../../mol/style/pseudo/class.d.ts","../../../mol/style/pseudo/element.d.ts","../../../mol/type/error/error.d.ts","../../../mol/style/guard/guard.d.ts","../../../mol/style/sheet/sheet.d.ts","../../../mol/style/define/define.d.ts","../../../mol/scroll/-view.tree/scroll.view.tree.d.ts","../../../mol/scroll/scroll.view.d.ts","../../../mol/scroll/scroll.view.css.d.ts","../../../mol/type/enforce/enforce.d.ts","../../../mol/plugin/plugin.d.ts","../../../mol/page/-view.tree/page.view.tree.d.ts","../../../mol/page/page.view.css.d.ts","../../../mol/action/action.d.ts","../../../mol/state/arg/arg.node.d.ts","../../../mol/mem/persist/persist.d.ts","../../../mol/mem/cached/cached.d.ts","../../../mol/wire/sync/sync.d.ts","../../../mol/storage/storage.d.ts","../../../mol/state/local/local.d.ts","../../../mol/lights/lights.d.ts","../../../mol/theme/auto/-view.tree/auto.view.tree.d.ts","../../../mol/theme/auto/auto.view.d.ts","../../../mol/layer/layer.d.ts","../../../mol/layer/-css/layer.css.d.ts","../../../mol/speck/-css/speck.view.css.d.ts","../../../mol/speck/-view.tree/speck.view.tree.d.ts","../../../mol/keyboard/code/code.d.ts","../../../mol/button/-view.tree/button.view.tree.d.ts","../../../mol/button/button.view.d.ts","../../../mol/button/-css/button.view.css.d.ts","../../../mol/button/typed/-css/typed.view.css.d.ts","../../../mol/button/typed/-view.tree/typed.view.tree.d.ts","../../../mol/button/minor/-css/minor.view.css.d.ts","../../../mol/button/minor/-view.tree/minor.view.tree.d.ts","../../../mol/maybe/maybe.d.ts","../../../mol/check/-css/check.css.d.ts","../../../mol/check/-view.tree/check.view.tree.d.ts","../../../mol/check/check.view.d.ts","../../../mol/check/icon/-css/icon.view.css.d.ts","../../../mol/check/icon/-view.tree/icon.view.tree.d.ts","../../../mol/state/time/time.d.ts","../../../mol/svg/-view.tree/svg.view.tree.d.ts","../../../mol/svg/svg.view.d.ts","../../../mol/svg/root/-css/root.view.css.d.ts","../../../mol/svg/root/-view.tree/root.view.tree.d.ts","../../../mol/svg/path/-view.tree/path.view.tree.d.ts","../../../mol/icon/-css/icon.view.css.d.ts","../../../mol/icon/-view.tree/icon.view.tree.d.ts","../../../mol/icon/brightness/6/-view.tree/6.view.tree.d.ts","../../../mol/charset/encoding/encoding.d.ts","../../../mol/charset/decode/decode.d.ts","../../../mol/charset/encode/encode.d.ts","../../../mol/file/file.d.ts","../../../mol/compare/array/array.d.ts","../../../mol/file/file.node.d.ts","../../../mol/locale/locale.d.ts","../../../mol/lights/toggle/-view.tree/toggle.view.tree.d.ts","../../../mol/lights/toggle/toggle.view.d.ts","../../../mol/link/-view.tree/link.view.tree.d.ts","../../../mol/link/link.view.d.ts","../../../mol/link/link.view.css.d.ts","../../../mol/icon/script/-view.tree/script.view.tree.d.ts","../../../mol/icon/script/text/-view.tree/text.view.tree.d.ts","../../../mol/link/source/-view.tree/source.view.tree.d.ts","../../../mol/button/major/-css/major.view.css.d.ts","../../../mol/button/major/-view.tree/major.view.tree.d.ts","../../../mol/promise/promise/promise.d.ts","../../../mol/wait/timeout/timeout.d.ts","../../../mol/embed/native/-view.tree/native.view.tree.d.ts","../../../mol/embed/native/native.view.d.ts","../../../mol/embed/native/-css/native.view.css.d.ts","../../../mol/frame/-view.tree/frame.view.tree.d.ts","../../../mol/frame/frame.view.d.ts","../../../mol/frame/frame.view.css.d.ts","../-view.tree/showcase.view.tree.d.ts","../showcase.view.d.ts","../-css/showcase.view.css.d.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACbA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;AACA;AACA;AACA;ACLA;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;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;AACA;AACA;AACA;ACHA;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;AC/BA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpBA;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;ACzBA;AACA;AACA;AACA;ACHA;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;AACA;AACA;AACA;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;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;AC1BA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjBA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;ACHA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACPA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;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;AACA;AACA;AACA;AACA;AACA;AACA;ACxCA;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;AChCA;AACA;AACA;AACA;ACHA;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;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;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;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClJA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;ACHA;AACA;AACA;ACFA;AACA;AACA;AACA;ACHA;AACA;AACA;ACFA;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;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;AACA;AACA;ACtEA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACPA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrBA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;ACFA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;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;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClFA;AACA;AACA;ACFA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxBA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACXA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;ACHA;AACA;AACA;ACFA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChBA;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;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;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;AACA;AACA;ACxGA;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;AACA;AACA;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;ACFA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACPA;AACA;AACA;AACA;ACHA;AACA;AACA;ACFA;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;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACPA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;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;AACA;AACA;AACA;AACA;AACA;AACA;ACxCA;AACA;AACA;AACA;ACHA;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;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;AACA;AACA;AACA;ACLA;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;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;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;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACXA;AACA;AACA;ACFA;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;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;AACA;AACA;ACFA;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;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;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;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;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;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;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;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;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;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;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;AClXA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA","sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null]} \ No newline at end of file +{"version":3,"sources":["../../../mam.d.ts","../../../mol/ambient/ambient.d.ts","../../../mol/delegate/delegate.d.ts","../../../mol/owning/owning.d.ts","../../../mol/fail/fail.d.ts","../../../mol/fail/hidden/hidden.d.ts","../../../mol/type/writable/writable.d.ts","../../../mol/func/name/name.d.ts","../../../mol/object2/object2.d.ts","../../../mol/object/object.d.ts","../../../mol/window/window.node.d.ts","../../../mol/wire/cursor/cursor.d.ts","../../../mol/wire/pub/pub.d.ts","../../../mol/wire/sub/sub.d.ts","../../../mol/wire/wire.d.ts","../../../mol/dev/format/format.d.ts","../../../mol/wire/pub/sub/sub.d.ts","../../../mol/after/timeout/timeout.d.ts","../../../mol/after/frame/frame.node.d.ts","../../../mol/promise/like/like.d.ts","../../../mol/wire/fiber/fiber.d.ts","../../../mol/guid/guid.d.ts","../../../mol/key/key.d.ts","../../../mol/compare/deep/deep.d.ts","../../../mol/log3/log3.d.ts","../../../mol/span/span.d.ts","../../../mol/tree2/to/string/string.d.ts","../../../mol/tree2/tree2.d.ts","../../../mol/error/syntax/syntax.d.ts","../../../mol/tree2/from/string/string.d.ts","../../../mol/tree2/from/json/json.d.ts","../../../mol/term/color/color.d.ts","../../../mol/log3/log3.node.d.ts","../../../mol/wire/task/task.d.ts","../../../mol/wire/method/method.d.ts","../../../mol/type/tail/tail.d.ts","../../../mol/type/foot/foot.d.ts","../../../mol/fail/catch/catch.d.ts","../../../mol/fail/log/log.d.ts","../../../mol/wire/atom/atom.d.ts","../../../mol/wire/solo/solo.d.ts","../../../mol/wire/plex/plex.d.ts","../../../mol/mem/mem.d.ts","../../../mol/dom/context/context.d.ts","../../../node/node.node.d.ts","../../../mol/env/env.d.ts","../../../mol/env/env.node.d.ts","../../../mol/exec/exec.node.d.ts","../../../mol/dom/context/context.node.d.ts","../../../mol/after/tick/tick.d.ts","../../../mol/view/selection/selection.d.ts","../../../mol/wrapper/wrapper.d.ts","../../../mol/memo/memo.d.ts","../../../mol/dom/qname/qname.d.ts","../../../mol/wire/probe/probe.d.ts","../../../mol/wire/watch/watch.d.ts","../../../mol/const/const.d.ts","../../../mol/wire/solid/solid.d.ts","../../../mol/dom/render/attributes/attributes.d.ts","../../../mol/dom/render/events/events.d.ts","../../../mol/dom/render/styles/styles.d.ts","../../../mol/dom/render/children/children.d.ts","../../../mol/dom/render/fields/fields.d.ts","../../../mol/wire/async/async.d.ts","../../../mol/type/keys/extract/extract.d.ts","../../../mol/type/pick/pick.d.ts","../../../mol/style/attach/attach.d.ts","../../../mol/decor/decor.d.ts","../../../mol/style/unit/unit.d.ts","../../../mol/style/func/func.d.ts","../../../mol/type/override/override.d.ts","../../../mol/style/properties/properties.d.ts","../../../mol/style/prop/prop.d.ts","../../../mol/theme/theme.d.ts","../../../mol/theme/-css/theme.css.d.ts","../../../mol/gap/gap.d.ts","../../../mol/gap/-css/gap.css.d.ts","../../../mol/view/view/view.d.ts","../../../mol/view/view/-css/view.css.d.ts","../../../mol/dom/listener/listener.d.ts","../../../mol/print/print.d.ts","../../../mol/style/pseudo/class.d.ts","../../../mol/style/pseudo/element.d.ts","../../../mol/type/error/error.d.ts","../../../mol/style/guard/guard.d.ts","../../../mol/style/sheet/sheet.d.ts","../../../mol/style/define/define.d.ts","../../../mol/scroll/-view.tree/scroll.view.tree.d.ts","../../../mol/scroll/scroll.view.d.ts","../../../mol/scroll/scroll.view.css.d.ts","../../../mol/type/enforce/enforce.d.ts","../../../mol/plugin/plugin.d.ts","../../../mol/page/-view.tree/page.view.tree.d.ts","../../../mol/page/page.view.css.d.ts","../../../mol/action/action.d.ts","../../../mol/state/arg/arg.node.d.ts","../../../mol/mem/persist/persist.d.ts","../../../mol/mem/cached/cached.d.ts","../../../mol/wire/sync/sync.d.ts","../../../mol/storage/storage.d.ts","../../../mol/state/local/local.d.ts","../../../mol/charset/encoding/encoding.d.ts","../../../mol/charset/decode/decode.d.ts","../../../mol/charset/encode/encode.d.ts","../../../mol/file/file.d.ts","../../../mol/compare/array/array.d.ts","../../../mol/file/file.node.d.ts","../../../mol/state/local/local.node.d.ts","../../../mol/lights/lights.d.ts","../../../mol/theme/auto/-view.tree/auto.view.tree.d.ts","../../../mol/theme/auto/auto.view.d.ts","../../../mol/layer/layer.d.ts","../../../mol/layer/-css/layer.css.d.ts","../../../mol/speck/-css/speck.view.css.d.ts","../../../mol/speck/-view.tree/speck.view.tree.d.ts","../../../mol/keyboard/code/code.d.ts","../../../mol/button/-view.tree/button.view.tree.d.ts","../../../mol/button/button.view.d.ts","../../../mol/button/-css/button.view.css.d.ts","../../../mol/button/typed/-css/typed.view.css.d.ts","../../../mol/button/typed/-view.tree/typed.view.tree.d.ts","../../../mol/button/minor/-css/minor.view.css.d.ts","../../../mol/button/minor/-view.tree/minor.view.tree.d.ts","../../../mol/maybe/maybe.d.ts","../../../mol/check/-css/check.css.d.ts","../../../mol/check/-view.tree/check.view.tree.d.ts","../../../mol/check/check.view.d.ts","../../../mol/check/icon/-css/icon.view.css.d.ts","../../../mol/check/icon/-view.tree/icon.view.tree.d.ts","../../../mol/state/time/time.d.ts","../../../mol/svg/-view.tree/svg.view.tree.d.ts","../../../mol/svg/svg.view.d.ts","../../../mol/svg/root/-css/root.view.css.d.ts","../../../mol/svg/root/-view.tree/root.view.tree.d.ts","../../../mol/svg/path/-view.tree/path.view.tree.d.ts","../../../mol/icon/-css/icon.view.css.d.ts","../../../mol/icon/-view.tree/icon.view.tree.d.ts","../../../mol/icon/brightness/6/-view.tree/6.view.tree.d.ts","../../../mol/locale/locale.d.ts","../../../mol/lights/toggle/-view.tree/toggle.view.tree.d.ts","../../../mol/lights/toggle/toggle.view.d.ts","../../../mol/link/-view.tree/link.view.tree.d.ts","../../../mol/link/link.view.d.ts","../../../mol/link/link.view.css.d.ts","../../../mol/icon/script/-view.tree/script.view.tree.d.ts","../../../mol/icon/script/text/-view.tree/text.view.tree.d.ts","../../../mol/link/source/-view.tree/source.view.tree.d.ts","../../../mol/button/major/-css/major.view.css.d.ts","../../../mol/button/major/-view.tree/major.view.tree.d.ts","../../../mol/promise/promise/promise.d.ts","../../../mol/wait/timeout/timeout.d.ts","../../../mol/embed/native/-view.tree/native.view.tree.d.ts","../../../mol/embed/native/native.view.d.ts","../../../mol/embed/native/-css/native.view.css.d.ts","../../../mol/frame/-view.tree/frame.view.tree.d.ts","../../../mol/frame/frame.view.d.ts","../../../mol/frame/frame.view.css.d.ts","../-view.tree/showcase.view.tree.d.ts","../showcase.view.d.ts","../-css/showcase.view.css.d.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACbA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;AACA;AACA;AACA;ACLA;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;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;AACA;AACA;AACA;ACHA;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;AC/BA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpBA;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;ACzBA;AACA;AACA;AACA;ACHA;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;AACA;AACA;AACA;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;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;AC1BA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjBA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;ACHA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACPA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;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;AACA;AACA;AACA;AACA;AACA;AACA;ACxCA;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;AChCA;AACA;AACA;AACA;ACHA;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;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;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;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClJA;AACA;AACA;AACA;AACA;ACJA;AACA;AACA;AACA;ACHA;AACA;AACA;ACFA;AACA;AACA;AACA;ACHA;AACA;AACA;ACFA;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;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;AACA;AACA;ACtEA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACPA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACrBA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;ACFA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;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;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClFA;AACA;AACA;ACFA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxBA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;ACHA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACzCA;AACA;AACA;AACA;ACHA;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;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACXA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA;AACA;ACHA;AACA;AACA;ACFA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AChBA;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;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;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;AACA;AACA;ACxGA;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;AACA;AACA;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;ACFA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACPA;AACA;AACA;AACA;ACHA;AACA;AACA;ACFA;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;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACPA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACZA;AACA;AACA;AACA;AACA;AACA;ACLA;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;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACdA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;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;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACXA;AACA;AACA;ACFA;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;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;AACA;AACA;ACFA;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;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;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;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;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;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;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;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;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;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;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;AClXA;AACA;AACA;AACA;AACA;AACA;ACLA;AACA;AACA","sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null]} \ No newline at end of file diff --git a/node.deps.json b/node.deps.json index 0d3b06d..80aabae 100644 --- a/node.deps.json +++ b/node.deps.json @@ -1 +1 @@ -{"files":["mam.ts","LICENSE","README.md","yarn.lock","mam.jam.js","tsfmt.json","package.json","tsconfig.json","lang.lang.tree","meta.lang.tree","sandbox.config.json","hyoo/LICENSE","hyoo/hyoo.ts","hyoo/hyoo.meta.tree","mol/CNAME","mol/LICENSE","mol/readme.md","mol/index.html","mol/mol.meta.tree","mol/CONTRIBUTING.md","mol/CODE_OF_CONDUCT.md","mol/view/readme.md","mol/view/view.lang.tree","mol/ambient/readme.md","mol/ambient/ambient.ts","mol/delegate/delegate.ts","mol/owning/owning.ts","mol/fail/fail.ts","mol/fail/hidden/hidden.ts","mol/type/README.md","mol/type/writable/writable.ts","mol/func/name/name.ts","mol/object2/object2.ts","mol/object/object.ts","mol/object/readme.md","mol/window/window.node.ts","mol/wire/cursor/cursor.ts","mol/wire/pub/pub.ts","mol/wire/sub/sub.ts","mol/wire/wire.ts","mol/wire/README.md","mol/dev/format/format.ts","mol/wire/pub/sub/sub.ts","mol/wire/pub/sub/README.md","mol/after/timeout/readme.md","mol/after/timeout/timeout.ts","mol/after/frame/frame.node.ts","mol/promise/like/like.ts","mol/wire/fiber/fiber.ts","mol/wire/fiber/readme.md","mol/guid/guid.ts","mol/key/key.ts","mol/key/README.md","mol/compare/deep/deep.ts","mol/compare/deep/README.md","mol/log3/log3.ts","mol/span/span.ts","mol/tree2/to/string/string.ts","mol/tree2/tree2.ts","mol/tree2/readme.md","mol/error/syntax/syntax.ts","mol/tree2/from/string/string.ts","mol/tree2/from/json/json.ts","mol/term/readme.md","mol/term/color/color.ts","mol/log3/log3.node.ts","mol/wire/task/task.ts","mol/wire/method/README.md","mol/wire/method/method.ts","mol/type/tail/tail.ts","mol/type/foot/foot.ts","mol/fail/catch/catch.ts","mol/fail/log/log.ts","mol/wire/atom/atom.ts","mol/wire/solo/solo.ts","mol/wire/solo/readme.md","mol/wire/plex/plex.ts","mol/mem/mem.ts","mol/dom/context/context.ts","node/node.ts","node/node.node.ts","mol/env/env.ts","mol/env/env.node.ts","mol/exec/exec.node.ts","mol/dom/context/context.node.ts","mol/after/tick/tick.ts","mol/view/selection/selection.ts","mol/wrapper/wrapper.ts","mol/memo/memo.ts","mol/dom/qname/qname.ts","mol/wire/probe/probe.ts","mol/wire/watch/watch.ts","mol/const/const.ts","mol/const/readme.md","mol/wire/solid/solid.ts","mol/dom/render/attributes/attributes.ts","mol/dom/render/events/events.ts","mol/dom/render/styles/styles.ts","mol/dom/render/children/children.ts","mol/dom/render/fields/fields.ts","mol/wire/async/async.ts","mol/wire/async/README.md","mol/type/keys/extract/extract.ts","mol/type/pick/pick.ts","mol/style/readme.md","mol/style/attach/attach.ts","mol/decor/decor.ts","mol/style/unit/unit.ts","mol/style/func/func.ts","mol/type/override/override.ts","mol/style/properties/properties.ts","mol/style/prop/prop.ts","mol/style/prop/readme.md","mol/theme/theme.ts","mol/theme/-css/theme.css.ts","mol/theme/theme.css","mol/gap/gap.ts","mol/gap/-css/gap.css.ts","mol/gap/gap.css","mol/view/view/view.ts","mol/view/view/-css/view.css.ts","mol/view/view/view.css","mol/scroll/-view.tree/scroll.view.tree.js","mol/scroll/scroll.view.tree","mol/dom/listener/listener.ts","mol/print/print.ts","mol/style/pseudo/class.ts","mol/style/pseudo/element.ts","mol/type/error/error.ts","mol/style/guard/guard.ts","mol/style/sheet/sheet.ts","mol/style/define/define.ts","mol/scroll/readme.md","mol/scroll/-view.tree/scroll.view.tree.js.map","mol/scroll/-view.tree/scroll.view.tree.d.ts","mol/scroll/-view.tree/scroll.view.tree.d.ts.map","mol/scroll/-view.tree/scroll.view.tree.locale=en.json","mol/scroll/scroll.view.ts","mol/scroll/scroll.view.css.ts","mol/type/enforce/enforce.ts","mol/page/-view.tree/page.view.tree.js","mol/plugin/plugin.ts","mol/plugin/readme.md","mol/page/readme.md","mol/page/-view.tree/page.view.tree.js.map","mol/page/-view.tree/page.view.tree.d.ts","mol/page/-view.tree/page.view.tree.d.ts.map","mol/page/-view.tree/page.view.tree.locale=en.json","mol/page/page.view.tree","mol/page/page.view.css.ts","mol/theme/auto/-view.tree/auto.view.tree.js","mol/theme/auto/auto.view.tree","mol/state/arg/arg.ts","mol/action/action.ts","mol/state/arg/readme.md","mol/state/arg/arg.node.ts","mol/mem/persist/persist.ts","mol/mem/cached/cached.ts","mol/wire/sync/sync.ts","mol/wire/sync/README.md","mol/storage/storage.ts","mol/state/local/local.ts","mol/lights/lights.ts","mol/lights/readme.md","mol/theme/auto/readme.md","mol/theme/auto/-view.tree/auto.view.tree.js.map","mol/theme/auto/-view.tree/auto.view.tree.d.ts","mol/theme/auto/-view.tree/auto.view.tree.d.ts.map","mol/theme/auto/-view.tree/auto.view.tree.locale=en.json","mol/theme/auto/auto.view.ts","mol/speck/-view.tree/speck.view.tree.js","mol/speck/speck.view.tree","mol/layer/layer.ts","mol/layer/-css/layer.css.ts","mol/layer/layer.css","mol/speck/readme.md","mol/speck/-css/speck.view.css.ts","mol/speck/-view.tree/speck.view.tree.js.map","mol/speck/-view.tree/speck.view.tree.d.ts","mol/speck/-view.tree/speck.view.tree.d.ts.map","mol/speck/-view.tree/speck.view.tree.locale=en.json","mol/speck/speck.view.css","mol/button/-view.tree/button.view.tree.js","mol/button/button.view.tree","mol/keyboard/code/code.ts","mol/button/readme.md","mol/button/-view.tree/button.view.tree.js.map","mol/button/-view.tree/button.view.tree.d.ts","mol/button/-view.tree/button.view.tree.d.ts.map","mol/button/-view.tree/button.view.tree.locale=en.json","mol/button/button.view.ts","mol/button/-css/button.view.css.ts","mol/button/button.view.css","mol/button/typed/-view.tree/typed.view.tree.js","mol/button/typed/typed.view.tree","mol/button/typed/-css/typed.view.css.ts","mol/button/typed/-view.tree/typed.view.tree.js.map","mol/button/typed/-view.tree/typed.view.tree.d.ts","mol/button/typed/-view.tree/typed.view.tree.d.ts.map","mol/button/typed/-view.tree/typed.view.tree.locale=en.json","mol/button/typed/typed.view.css","mol/button/minor/-view.tree/minor.view.tree.js","mol/button/minor/minor.view.tree","mol/button/minor/-css/minor.view.css.ts","mol/button/minor/-view.tree/minor.view.tree.js.map","mol/button/minor/-view.tree/minor.view.tree.d.ts","mol/button/minor/-view.tree/minor.view.tree.d.ts.map","mol/button/minor/-view.tree/minor.view.tree.locale=en.json","mol/button/minor/minor.view.css","mol/check/-view.tree/check.view.tree.js","mol/check/check.view.tree","mol/maybe/maybe.ts","mol/check/-css/check.css.ts","mol/check/check.css","mol/check/readme.md","mol/check/-view.tree/check.view.tree.js.map","mol/check/-view.tree/check.view.tree.d.ts","mol/check/-view.tree/check.view.tree.d.ts.map","mol/check/-view.tree/check.view.tree.locale=en.json","mol/check/check.view.ts","mol/check/icon/-view.tree/icon.view.tree.js","mol/check/icon/icon.view.tree","mol/check/icon/-css/icon.view.css.ts","mol/check/icon/-view.tree/icon.view.tree.js.map","mol/check/icon/-view.tree/icon.view.tree.d.ts","mol/check/icon/-view.tree/icon.view.tree.d.ts.map","mol/check/icon/-view.tree/icon.view.tree.locale=en.json","mol/check/icon/icon.view.css","mol/svg/-view.tree/svg.view.tree.js","mol/svg/svg.view.tree","mol/state/time/time.ts","mol/state/time/readme.md","mol/svg/readme.md","mol/svg/-view.tree/svg.view.tree.js.map","mol/svg/-view.tree/svg.view.tree.d.ts","mol/svg/-view.tree/svg.view.tree.d.ts.map","mol/svg/-view.tree/svg.view.tree.locale=en.json","mol/svg/svg.view.ts","mol/svg/root/-view.tree/root.view.tree.js","mol/svg/root/root.view.tree","mol/svg/root/-css/root.view.css.ts","mol/svg/root/-view.tree/root.view.tree.js.map","mol/svg/root/-view.tree/root.view.tree.d.ts","mol/svg/root/-view.tree/root.view.tree.d.ts.map","mol/svg/root/-view.tree/root.view.tree.locale=en.json","mol/svg/root/root.view.css","mol/svg/path/-view.tree/path.view.tree.js","mol/svg/path/-view.tree/path.view.tree.js.map","mol/svg/path/-view.tree/path.view.tree.d.ts","mol/svg/path/-view.tree/path.view.tree.d.ts.map","mol/svg/path/-view.tree/path.view.tree.locale=en.json","mol/svg/path/path.view.tree","mol/icon/-view.tree/icon.view.tree.js","mol/icon/icon.view.tree","mol/icon/LICENSE","mol/icon/README.md","mol/icon/-css/icon.view.css.ts","mol/icon/icon.view.css","mol/icon/-view.tree/icon.view.tree.js.map","mol/icon/-view.tree/icon.view.tree.d.ts","mol/icon/-view.tree/icon.view.tree.d.ts.map","mol/icon/-view.tree/icon.view.tree.locale=en.json","mol/icon/brightness/6/-view.tree/6.view.tree.js","mol/icon/brightness/6/-view.tree/6.view.tree.js.map","mol/icon/brightness/6/-view.tree/6.view.tree.d.ts","mol/icon/brightness/6/-view.tree/6.view.tree.d.ts.map","mol/icon/brightness/6/-view.tree/6.view.tree.locale=en.json","mol/icon/brightness/6/6.view.tree","mol/charset/encoding/encoding.ts","mol/charset/decode/decode.ts","mol/charset/encode/encode.ts","mol/file/file.ts","mol/compare/array/array.ts","mol/file/file.node.ts","mol/locale/locale.ts","mol/locale/readme.md","mol/lights/toggle/-view.tree/toggle.view.tree.js","mol/lights/toggle/toggle.view.tree","mol/lights/toggle/-view.tree/toggle.view.tree.js.map","mol/lights/toggle/-view.tree/toggle.view.tree.d.ts","mol/lights/toggle/-view.tree/toggle.view.tree.d.ts.map","mol/lights/toggle/-view.tree/toggle.view.tree.locale=en.json","mol/lights/toggle/toggle.view.ts","mol/lights/toggle/toggle.locale=ru.json","mol/lights/toggle/toggle.locale=uk.json","mol/link/-view.tree/link.view.tree.js","mol/link/link.view.tree","mol/link/readme.md","mol/link/-view.tree/link.view.tree.js.map","mol/link/-view.tree/link.view.tree.d.ts","mol/link/-view.tree/link.view.tree.d.ts.map","mol/link/-view.tree/link.view.tree.locale=en.json","mol/link/link.view.ts","mol/link/link.view.css.ts","mol/icon/script/-view.tree/script.view.tree.js","mol/icon/script/-view.tree/script.view.tree.js.map","mol/icon/script/-view.tree/script.view.tree.d.ts","mol/icon/script/-view.tree/script.view.tree.d.ts.map","mol/icon/script/-view.tree/script.view.tree.locale=en.json","mol/icon/script/script.view.tree","mol/icon/script/text/-view.tree/text.view.tree.js","mol/icon/script/text/-view.tree/text.view.tree.js.map","mol/icon/script/text/-view.tree/text.view.tree.d.ts","mol/icon/script/text/-view.tree/text.view.tree.d.ts.map","mol/icon/script/text/-view.tree/text.view.tree.locale=en.json","mol/icon/script/text/text.view.tree","mol/link/source/-view.tree/source.view.tree.js","mol/link/source/readme.md","mol/link/source/-view.tree/source.view.tree.js.map","mol/link/source/-view.tree/source.view.tree.d.ts","mol/link/source/-view.tree/source.view.tree.d.ts.map","mol/link/source/-view.tree/source.view.tree.locale=en.json","mol/link/source/source.view.tree","mol/link/source/source.locale=ru.json","mol/button/major/-view.tree/major.view.tree.js","mol/button/major/major.view.tree","mol/button/major/-css/major.view.css.ts","mol/button/major/-view.tree/major.view.tree.js.map","mol/button/major/-view.tree/major.view.tree.d.ts","mol/button/major/-view.tree/major.view.tree.d.ts.map","mol/button/major/-view.tree/major.view.tree.locale=en.json","mol/button/major/major.view.css","mol/embed/native/-view.tree/native.view.tree.js","mol/embed/native/native.view.tree","mol/promise/promise/promise.ts","mol/wait/timeout/timeout.ts","mol/embed/native/-view.tree/native.view.tree.js.map","mol/embed/native/-view.tree/native.view.tree.d.ts","mol/embed/native/-view.tree/native.view.tree.d.ts.map","mol/embed/native/-view.tree/native.view.tree.locale=en.json","mol/embed/native/native.view.ts","mol/embed/native/-css/native.view.css.ts","mol/embed/native/native.view.css","mol/frame/-view.tree/frame.view.tree.js","mol/frame/frame.view.tree","mol/frame/-view.tree/frame.view.tree.js.map","mol/frame/-view.tree/frame.view.tree.d.ts","mol/frame/-view.tree/frame.view.tree.d.ts.map","mol/frame/-view.tree/frame.view.tree.locale=en.json","mol/frame/frame.view.ts","mol/frame/frame.view.css.ts","hyoo/showcase/-view.tree/showcase.view.tree.js","hyoo/showcase/showcase.view.tree","hyoo/showcase/CNAME","hyoo/showcase/LICENSE","hyoo/showcase/README.md","hyoo/showcase/index.html","hyoo/showcase/-view.tree/showcase.view.tree.js.map","hyoo/showcase/-view.tree/showcase.view.tree.d.ts","hyoo/showcase/-view.tree/showcase.view.tree.d.ts.map","hyoo/showcase/-view.tree/showcase.view.tree.locale=en.json","hyoo/showcase/showcase.view.ts","hyoo/showcase/-css/showcase.view.css.ts","hyoo/showcase/showcase.view.css","hyoo/showcase/showcase.meta.tree","hyoo/showcase/showcase.locale=ru.json"],"mods":{},"deps_in":{"hyoo":{"hyoo/showcase":-9007199254740991},"":{"hyoo":-9007199254740991,"mol":-9007199254740991,"node":-9007199254740991,"node_modules":-9007199254740991},"hyoo/showcase/showcase.view.tree":{"hyoo/showcase":0},"hyoo/showcase/-view.tree/showcase.view.tree.js":{"hyoo/showcase/showcase.view.tree":0,"hyoo/showcase":0},"hyoo/showcase":{},"mol/page":{"hyoo/showcase/-view.tree/showcase.view.tree.js":-1,"hyoo/showcase":-1},"mol":{"mol/page":-9007199254740991,"mol/view":-9007199254740991,"mol/window":-9007199254740991,"mol/object":-9007199254740991,"mol/object2":-9007199254740991,"mol/ambient":-9007199254740991,"mol/owning":-9007199254740991,"mol/delegate":-9007199254740991,"mol/fail":-9007199254740991,"mol/type":-9007199254740991,"mol/func":-9007199254740991,"mol/mem":-9007199254740991,"mol/wire":-9007199254740991,"mol/dev":-9007199254740991,"mol/after":-9007199254740991,"mol/promise":-9007199254740991,"mol/key":-9007199254740991,"mol/guid":-9007199254740991,"mol/compare":-9007199254740991,"mol/log3":-9007199254740991,"mol/tree2":-9007199254740991,"mol/span":-9007199254740991,"mol/error":-9007199254740991,"mol/term":-9007199254740991,"mol/dom":-9007199254740991,"mol/exec":-9007199254740991,"mol/env":-9007199254740991,"mol/memo":-9007199254740991,"mol/wrapper":-9007199254740991,"mol/const":-9007199254740991,"mol/plugin":-9007199254740991,"mol/style":-9007199254740991,"mol/theme":-9007199254740991,"mol/decor":-9007199254740991,"mol/gap":-9007199254740991,"mol/scroll":-9007199254740991,"mol/print":-9007199254740991,"mol/lights":-9007199254740991,"mol/state":-9007199254740991,"mol/action":-9007199254740991,"mol/storage":-9007199254740991,"mol/check":-9007199254740991,"mol/button":-9007199254740991,"mol/speck":-9007199254740991,"mol/layer":-9007199254740991,"mol/keyboard":-9007199254740991,"mol/maybe":-9007199254740991,"mol/icon":-9007199254740991,"mol/svg":-9007199254740991,"mol/locale":-1.25,"mol/file":-9007199254740991,"mol/charset":-9007199254740991,"mol/link":-9007199254740991,"mol/frame":-9007199254740991,"mol/embed":-9007199254740991,"mol/wait":-9007199254740991},"mol/view/view":{"mol/page":-1,"mol/plugin":-1,"mol/scroll/-view.tree/scroll.view.tree.js":-1,"mol/scroll":-1,"mol/style/define":-2,"mol/style/guard":-1,"mol/style/sheet":-2,"mol/page/-view.tree/page.view.tree.js":-1,"mol/button/-view.tree/button.view.tree.js":-1,"mol/speck/-view.tree/speck.view.tree.js":-1,"mol/speck":-1,"mol/button":-1,"mol/check/-view.tree/check.view.tree.js":-3,"mol/check":-1,"mol/svg/-view.tree/svg.view.tree.js":-1,"mol/svg":-1,"mol/link/-view.tree/link.view.tree.js":-1,"mol/link":-1,"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-1},"mol/view":{"mol/view/view":0,"mol/view/selection":-9007199254740991,"mol/page":-2,"mol/button":-2,"mol/check":-2,"mol/link":-2},"mol/window":{"mol/view/view":-2},"mol/object":{"mol/window":-1,"mol/view/view":-1,"mol/view/selection":-1,"mol/print":-1,"mol/dom/listener":-1,"mol/state/arg":-1,"mol/state/local":-1,"mol/state/time":-1,"mol/locale":-1,"mol/file":-1,"mol/file/file.ts":-1},"mol/object2":{"mol/object":-1,"mol/after/timeout":-1,"mol/span":-1,"mol/after/tick":-1,"mol/wrapper":-1,"mol/storage":-1},"mol/ambient":{"mol/object2":-2,"mol/style/sheet":-2},"mol/owning":{"mol/object2":-3,"mol/wire/fiber":-4,"mol/wire/atom":-3,"mol/plugin":-3,"mol/view/view":-3},"mol/delegate":{"mol/owning":-3},"mol/fail/hidden":{"mol/object2":-3,"mol/wire/fiber":-4,"mol/tree2":-4,"mol/fail/catch":-2,"mol/view/view":-4,"mol/button":-4,"mol/file":-4,"mol/file/file.ts":-4},"mol/fail":{"mol/fail/hidden":-9007199254740991,"mol/wire/pub":-4,"mol/wire/pub/sub":-3,"mol/span":-3,"mol/tree2":-4,"mol/tree2/from/string":-4,"mol/fail/log":-9007199254740991,"mol/fail/catch":-9007199254740991,"mol/exec":-3,"mol/wire/watch":-3,"mol/file":-2},"mol/type/writable":{"mol/object2":-3},"mol/type":{"mol/type/writable":-9007199254740991,"mol/type/foot":-9007199254740991,"mol/type/tail":-9007199254740991,"mol/type/pick":-9007199254740991,"mol/type/keys":-9007199254740991,"mol/type/override":-9007199254740991,"mol/type/error":-9007199254740991,"mol/type/enforce":-9007199254740991},"mol/func/name":{"mol/object2":-3,"mol/wire/atom":-3,"mol/view/view":-4,"mol/style/sheet":-2},"mol/func":{"mol/func/name":-9007199254740991},"mol/mem":{"mol/view/view":-2,"mol/view/selection":-2,"mol/scroll/-view.tree/scroll.view.tree.js":-1,"mol/scroll":-1,"mol/print":-2,"mol/page":-1,"mol/page/-view.tree/page.view.tree.js":-1,"mol/state/arg":-2,"mol/state/local":-2,"mol/storage":-2,"mol/mem/persist":-9007199254740991,"mol/mem/cached":-9007199254740991,"mol/button/-view.tree/button.view.tree.js":-1,"mol/button":-1,"mol/check/-view.tree/check.view.tree.js":-1,"mol/check":-1,"mol/svg":-2,"mol/state/time":-2,"mol/icon/-view.tree/icon.view.tree.js":-1,"mol/icon":-1,"mol/locale":-2,"mol/file":-2,"mol/file/file.ts":-2,"mol/lights/toggle/-view.tree/toggle.view.tree.js":-1,"mol/lights/toggle":-1,"mol/link/-view.tree/link.view.tree.js":-1,"mol/link":-1,"mol/link/source":-1,"mol/link/source/-view.tree/source.view.tree.js":-1,"hyoo/showcase/-view.tree/showcase.view.tree.js":-1,"mol/embed/native/-view.tree/native.view.tree.js":-1,"mol/embed/native":-1,"mol/frame/-view.tree/frame.view.tree.js":-1,"mol/frame":-1,"hyoo/showcase":-1},"mol/wire/solo":{"mol/mem":-1},"mol/wire":{"mol/wire/solo":-5,"mol/wire/atom":-4,"mol/wire/fiber":-9007199254740991,"mol/wire/pub/sub":-3,"mol/wire/method":-9007199254740991,"mol/wire/task":-4,"mol/wire/plex":-5,"mol/wire/probe":-9007199254740991,"mol/wire/watch":-2,"mol/wire/solid":-2,"mol/wire/async":-9007199254740991,"mol/wire/sync":-9007199254740991},"mol/wire/sub":{"mol/wire":-1,"mol/wire/pub/sub":-1},"mol/wire/pub":{"mol/wire/sub":-1,"mol/wire/pub/sub":-1,"mol/wire/fiber":-5},"mol/wire/cursor":{"mol/wire/pub":-2,"mol/wire/sub":-2,"mol/wire/pub/sub":-2,"mol/wire/fiber":-2,"mol/wire/atom":-3,"mol/wire/task":-3},"mol/wire/atom":{"mol/wire/solo":-4,"mol/wire/plex":-4,"mol/wire/watch":-2},"mol/wire/fiber":{"mol/wire/atom":-1,"mol/wire/task":-1,"mol/wire/solo":-5,"mol/wire/plex":-5,"mol/wire/probe":-2,"mol/wire/solid":-2,"mol/plugin":-3,"mol/view/view":-3,"mol/wire/async":-2},"mol/wire/pub/sub":{"mol/wire/fiber":-1,"mol/wire/solid":-1},"mol/dev/format":{"mol/wire/pub/sub":-2,"mol/wire/fiber":-2,"mol/const":-2,"mol/view/view":-2},"mol/dev":{"mol/dev/format":-9007199254740991},"mol/after/frame":{"mol/wire/fiber":-2,"mol/wire/atom":-2,"mol/view/view":-3,"mol/state/time":-2},"mol/after":{"mol/after/frame":-9007199254740991,"mol/after/timeout":-9007199254740991,"mol/after/tick":-9007199254740991},"mol/after/timeout":{"mol/after/frame":-1,"mol/state/time":-2,"mol/wait/timeout":-2},"mol/promise/like":{"mol/wire/fiber":-3,"mol/wire/task":-3,"mol/fail/log":-2,"mol/fail/catch":-2,"mol/wire/atom":-3,"mol/view/view":-4},"mol/promise":{"mol/promise/like":-9007199254740991,"mol/promise/promise":-9007199254740991},"mol/key":{"mol/wire/atom":-3},"mol/guid":{"mol/key":-3},"mol/wire/method":{"mol/wire/atom":-2,"mol/action":-1},"mol/wire/task":{"mol/wire/method":-2,"mol/wire/async":-2,"mol/wire/sync":-4},"mol/compare/deep":{"mol/wire/task":-5,"mol/wire/atom":-5},"mol/compare":{"mol/compare/deep":-9007199254740991,"mol/compare/array":-9007199254740991},"mol/log3":{"mol/wire/task":-5,"mol/exec":-2,"mol/storage":-5,"mol/file":-6},"mol/log3/log3.ts":{"mol/log3":0},"mol/tree2/from/json":{"mol/log3":-3},"mol/tree2/from":{"mol/tree2/from/json":-9007199254740991},"mol/tree2":{"mol/tree2/from":-9007199254740991,"mol/tree2/from/string":-1,"mol/tree2/from/json":-1},"mol/span":{"mol/tree2":-2,"mol/tree2/from/string":-2,"mol/error/syntax":-3,"mol/tree2/from/json":-1},"mol/tree2/from/string":{"mol/tree2/from":-2},"mol/error/syntax":{"mol/tree2/from/string":-4},"mol/error":{"mol/error/syntax":-9007199254740991},"mol/tree2/to/string":{"mol/tree2":-3},"mol/tree2/to":{"mol/tree2/to/string":-9007199254740991},"mol/term/color":{"mol/log3":-1},"mol/term":{"mol/term/color":-9007199254740991},"mol/type/foot":{"mol/wire/atom":-3},"mol/type/tail":{"mol/type/foot":-1.25,"mol/wire/solo":-2},"mol/fail/log":{"mol/wire/atom":-5,"mol/view/view":-4,"node":-3,"mol/button":-4,"mol/file":-3,"mol/link":-4},"mol/fail/catch":{"mol/fail/log":-2,"mol/locale":-4},"mol/wire/plex":{"mol/mem":-1},"mol/dom/context":{"mol/view/view":-3,"mol/view/selection":-3,"mol/dom/render/children":-3,"mol/style/attach":-2,"mol/print":-3,"mol/state/local":-4,"mol/storage":-3,"mol/svg":-3,"mol/locale":-3,"mol/link":-3,"mol/embed/native":-4},"mol/dom":{"mol/dom/context":-9007199254740991,"mol/dom/qname":-9007199254740991,"mol/dom/render":-9007199254740991,"mol/dom/listener":-9007199254740991},"mol/dom/context/context.ts":{"mol/dom/context":0},"node":{"mol/dom/context":-1,"mol/exec":-2,"mol/charset/encode":-1,"mol/file":-1},"node/node.ts":{"node":0},"node_modules":{"node":-2},"mol/exec":{"mol/dom/context":-4},"mol/env":{"mol/exec":-4},"mol/env/env.ts":{"mol/env":0},"mol/view/selection":{"mol/view/view":-3},"mol/after/tick":{"mol/view/selection":-3,"mol/style/attach":-1},"mol/memo":{"mol/view/view":-2},"mol/wrapper":{"mol/memo":-1},"mol/dom/qname":{"mol/view/view":-3,"mol/style/sheet":-2},"mol/wire/probe":{"mol/view/view":-3,"mol/mem/cached":-1},"mol/wire/watch":{"mol/view/view":-4},"mol/const":{"mol/view/view":-3,"mol/file":-4},"mol/wire/solid":{"mol/view/view":-3,"mol/mem/persist":-1,"mol/embed/native":-3},"mol/dom/render/attributes":{"mol/view/view":-3},"mol/dom/render":{"mol/dom/render/attributes":-9007199254740991,"mol/dom/render/events":-9007199254740991,"mol/dom/render/styles":-9007199254740991,"mol/dom/render/children":-9007199254740991,"mol/dom/render/fields":-9007199254740991},"mol/dom/render/events":{"mol/view/view":-3},"mol/plugin":{"mol/theme/auto/-view.tree/auto.view.tree.js":-1,"mol/theme/auto":-1,"mol/page":-6},"mol/dom/render/styles":{"mol/view/view":-3},"mol/dom/render/children":{"mol/view/view":-3},"mol/dom/render/fields":{"mol/view/view":-3},"mol/wire/async":{"mol/view/view":-3,"mol/embed/native":-4},"mol/type/pick":{"mol/view/view":-1},"mol/type/keys/extract":{"mol/type/pick":-3,"mol/style/guard":-1},"mol/type/keys":{"mol/type/keys/extract":-9007199254740991},"mol/style/attach":{"mol/view/view":0,"mol/theme":0,"mol/gap":0,"mol/style/define":-2,"mol/check":0,"mol/speck":0,"mol/layer":0,"mol/button":0,"mol/button/minor":0,"mol/button/typed":0,"mol/check/icon":0,"mol/icon":0,"mol/svg/root":0,"mol/button/major":0,"mol/embed/native":0,"hyoo/showcase":0},"mol/style":{"mol/style/attach":-9007199254740991,"mol/style/prop":-9007199254740991,"mol/style/func":-9007199254740991,"mol/style/unit":-9007199254740991,"mol/style/properties":-9007199254740991,"mol/style/define":-9007199254740991,"mol/style/guard":-9007199254740991,"mol/style/pseudo":-9007199254740991,"mol/style/sheet":-9007199254740991},"mol/theme":{"mol/view/view":-1,"mol/page":-2,"mol/theme/auto":-3,"mol/speck/-view.tree/speck.view.tree.js":-3,"mol/speck":-3,"mol/button/typed":-1,"mol/button/minor":-1,"mol/check/icon":-1,"mol/icon":-1,"mol/link":-2,"mol/button/major/-view.tree/major.view.tree.js":-3,"mol/button/major":-3,"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-1},"mol/style/prop":{"mol/theme":-1,"mol/gap":-1,"mol/layer":-1},"mol/style/func":{"mol/style/prop":-3,"mol/style/properties":-1,"mol/page":-1},"mol/style/unit":{"mol/style/func":-1,"mol/style/properties":-1,"mol/scroll":-1,"mol/page":-1,"mol/link":-1,"mol/frame":-2},"mol/decor":{"mol/style/unit":-1,"mol/style/func":-1},"mol/style/properties":{"mol/style/guard":-1,"mol/style/prop":-3},"mol/type/override":{"mol/style/properties":-1},"mol/gap":{"mol/view/view":-1,"mol/page":-3,"mol/button":-1,"mol/button/typed":-1,"mol/link":-2,"mol/embed/native":-1},"mol/scroll":{"mol/page":-1,"mol/page/-view.tree/page.view.tree.js":-3,"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"mol/embed/native/-view.tree/native.view.tree.js":-1,"mol/embed/native":-1,"hyoo/showcase":-1},"mol/scroll/scroll.view.tree":{"mol/scroll":0},"mol/scroll/-view.tree/scroll.view.tree.js":{"mol/scroll/scroll.view.tree":0,"mol/scroll":0},"mol/print":{"mol/scroll":-3},"mol/dom/listener":{"mol/print":-3,"mol/embed/native":-3},"mol/style/define":{"mol/scroll":-1,"mol/page":-1,"mol/link":-1,"mol/frame":-1},"mol/style/guard":{"mol/style/define":-2,"mol/style/sheet":-2},"mol/style/pseudo":{"mol/style/guard":-1},"mol/type/error":{"mol/style/guard":-2},"mol/style/sheet":{"mol/style/define":-3},"mol/type/enforce":{"mol/page":-1,"mol/button":-1,"mol/check":-1,"mol/icon":-1,"mol/embed/native":-1,"hyoo/showcase":-1},"mol/page/-view.tree/page.view.tree.js":{"mol/page":0},"mol/theme/auto":{"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-2},"mol/theme/auto/auto.view.tree":{"mol/theme/auto":0},"mol/theme/auto/-view.tree/auto.view.tree.js":{"mol/theme/auto/auto.view.tree":0,"mol/theme/auto":0},"mol/lights":{"mol/theme/auto":-3,"mol/lights/toggle":-3},"mol/state/arg":{"mol/lights":-2,"mol/link":-3},"mol/state":{"mol/state/arg":-9007199254740991,"mol/state/local":-9007199254740991,"mol/state/time":-9007199254740991},"mol/state/arg/arg.ts":{"mol/state/arg":0},"mol/action":{"mol/state/arg":-2,"mol/file":-2},"mol/state/local":{"mol/lights":-3,"mol/locale":-3},"mol/storage":{"mol/state/local":-4},"mol/mem/persist":{"mol/storage":-3},"mol/mem/cached":{"mol/storage":-3,"mol/file":-5},"mol/wire/sync":{"mol/storage":-3,"mol/embed/native":-3,"mol/wait/timeout":-2},"mol/lights/toggle":{"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-2},"mol/lights/toggle/toggle.view.tree":{"mol/lights/toggle":0},"mol/lights/toggle/-view.tree/toggle.view.tree.js":{"mol/lights/toggle/toggle.view.tree":0,"mol/lights/toggle":0},"mol/check/icon":{"mol/lights/toggle/-view.tree/toggle.view.tree.js":-1,"mol/lights/toggle":-1},"mol/check":{"mol/check/icon":0,"mol/check/icon/-view.tree/icon.view.tree.js":-1},"mol/check/check.view.tree":{"mol/check":0},"mol/check/-view.tree/check.view.tree.js":{"mol/check/check.view.tree":0,"mol/check":0},"mol/button/minor":{"mol/check/-view.tree/check.view.tree.js":-1,"mol/check":-1},"mol/button":{"mol/button/minor":-9007199254740991,"mol/button/typed":-1,"mol/button/typed/-view.tree/typed.view.tree.js":-1,"mol/button/major":-9007199254740991},"mol/button/button.view.tree":{"mol/button":0},"mol/button/-view.tree/button.view.tree.js":{"mol/button/button.view.tree":0,"mol/button":0},"mol/speck":{"mol/button/-view.tree/button.view.tree.js":-3,"mol/button":-1},"mol/speck/speck.view.tree":{"mol/speck":0},"mol/speck/-view.tree/speck.view.tree.js":{"mol/speck/speck.view.tree":0,"mol/speck":0},"mol/layer":{"mol/speck":-1,"mol/button":-1},"mol/keyboard/code":{"mol/button":-3},"mol/keyboard":{"mol/keyboard/code":-9007199254740991},"mol/button/minor/minor.view.tree":{"mol/button/minor":0},"mol/button/minor/-view.tree/minor.view.tree.js":{"mol/button/minor/minor.view.tree":0,"mol/button/minor":0},"mol/button/typed":{"mol/button/minor/-view.tree/minor.view.tree.js":-1,"mol/button/minor":-1,"mol/button/major/-view.tree/major.view.tree.js":-1,"mol/button/major":-1},"mol/button/typed/typed.view.tree":{"mol/button/typed":0},"mol/button/typed/-view.tree/typed.view.tree.js":{"mol/button/typed/typed.view.tree":0,"mol/button/typed":0},"mol/maybe":{"mol/check":-4},"mol/check/icon/icon.view.tree":{"mol/check/icon":0},"mol/check/icon/-view.tree/icon.view.tree.js":{"mol/check/icon/icon.view.tree":0,"mol/check/icon":0},"mol/icon/brightness/6":{"mol/lights/toggle/-view.tree/toggle.view.tree.js":-3,"mol/lights/toggle":-2},"mol/icon/brightness":{"mol/icon/brightness/6":-9007199254740991},"mol/icon":{"mol/icon/brightness":-9007199254740991,"mol/icon/brightness/6":-1,"mol/icon/brightness/6/-view.tree/6.view.tree.js":-1,"mol/icon/script":-1,"mol/icon/script/-view.tree/script.view.tree.js":-1,"mol/icon/script/text":-1,"mol/icon/script/text/-view.tree/text.view.tree.js":-1},"mol/icon/icon.view.tree":{"mol/icon":0},"mol/icon/-view.tree/icon.view.tree.js":{"mol/icon/icon.view.tree":0,"mol/icon":0},"mol/svg/root":{"mol/icon/-view.tree/icon.view.tree.js":-1,"mol/icon":-1},"mol/svg":{"mol/svg/root":-1,"mol/svg/root/-view.tree/root.view.tree.js":-1,"mol/svg/path":-1,"mol/svg/path/-view.tree/path.view.tree.js":-1},"mol/svg/svg.view.tree":{"mol/svg":0},"mol/svg/-view.tree/svg.view.tree.js":{"mol/svg/svg.view.tree":0,"mol/svg":0},"mol/state/time":{"mol/svg":-3},"mol/svg/root/root.view.tree":{"mol/svg/root":0},"mol/svg/root/-view.tree/root.view.tree.js":{"mol/svg/root/root.view.tree":0,"mol/svg/root":0},"mol/svg/path":{"mol/icon/-view.tree/icon.view.tree.js":-3,"mol/icon":-1},"mol/svg/path/-view.tree/path.view.tree.js":{"mol/svg/path":0},"mol/icon/brightness/6/-view.tree/6.view.tree.js":{"mol/icon/brightness/6":0},"mol/locale":{"mol/lights/toggle/-view.tree/toggle.view.tree.js":-3,"mol/lights/toggle":-3,"mol/link/source":-3,"mol/link/source/-view.tree/source.view.tree.js":-3,"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-3},"mol/file":{"mol/locale":-3},"mol/charset/decode":{"mol/file":-4,"mol/file/file.ts":-4},"mol/charset":{"mol/charset/decode":-9007199254740991,"mol/charset/encoding":-9007199254740991,"mol/charset/encode":-9007199254740991},"mol/charset/encoding":{"mol/charset/decode":-1},"mol/charset/encode":{"mol/file":-4,"mol/file/file.ts":-4},"mol/file/file.ts":{"mol/file":0},"mol/compare/array":{"mol/file":-5},"mol/link/source":{"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-1},"mol/link":{"mol/link/source":-1,"mol/link/source/-view.tree/source.view.tree.js":-1,"hyoo/showcase/-view.tree/showcase.view.tree.js":-1,"mol/embed/native/-view.tree/native.view.tree.js":-3,"mol/embed/native":-1,"hyoo/showcase":-1},"mol/link/link.view.tree":{"mol/link":0},"mol/link/-view.tree/link.view.tree.js":{"mol/link/link.view.tree":0,"mol/link":0},"mol/icon/script/text":{"mol/link/source":-2,"mol/link/source/-view.tree/source.view.tree.js":-3},"mol/icon/script":{"mol/icon/script/text":-9007199254740991},"mol/icon/script/-view.tree/script.view.tree.js":{"mol/icon/script":0},"mol/icon/script/text/-view.tree/text.view.tree.js":{"mol/icon/script/text":0},"mol/link/source/-view.tree/source.view.tree.js":{"mol/link/source":0},"mol/button/major":{"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-1},"mol/button/major/major.view.tree":{"mol/button/major":0},"mol/button/major/-view.tree/major.view.tree.js":{"mol/button/major/major.view.tree":0,"mol/button/major":0},"mol/frame":{"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-1},"mol/frame/frame.view.tree":{"mol/frame":0},"mol/frame/-view.tree/frame.view.tree.js":{"mol/frame/frame.view.tree":0,"mol/frame":0},"mol/embed/native":{"mol/frame/-view.tree/frame.view.tree.js":-1,"mol/frame":-1},"mol/embed":{"mol/embed/native":-9007199254740991},"mol/embed/native/native.view.tree":{"mol/embed/native":0},"mol/embed/native/-view.tree/native.view.tree.js":{"mol/embed/native/native.view.tree":0,"mol/embed/native":0},"mol/wait/timeout":{"mol/embed/native":-3},"mol/wait":{"mol/wait/timeout":-9007199254740991},"mol/promise/promise":{"mol/wait/timeout":-2}},"deps_out":{"hyoo/showcase":{"hyoo":-9007199254740991,"hyoo/showcase/showcase.view.tree":0,"mol/style/attach":0,"mol/theme":-1,"mol/page":-1,"mol/theme/auto":-2,"mol/lights/toggle":-2,"mol/link/source":-1,"mol/locale":-3,"mol/button/major":-1,"mol/link":-1,"mol/scroll":-1,"mol/mem":-1,"mol/view/view":-1,"mol/frame":-1,"mol/type/enforce":-1,"hyoo/showcase/-view.tree/showcase.view.tree.js":0},"hyoo":{"":-9007199254740991},"hyoo/showcase/showcase.view.tree":{"hyoo/showcase/-view.tree/showcase.view.tree.js":0},"hyoo/showcase/-view.tree/showcase.view.tree.js":{"mol/page":-1,"mol/theme/auto":-3,"mol/lights/toggle":-3,"mol/link/source":-3,"mol/locale":-3,"mol/button/major":-3,"mol/link":-1,"mol/scroll":-3,"mol/theme":-3,"mol/mem":-1,"mol/view/view":-3,"mol/frame":-3},"mol/page":{"mol":-9007199254740991,"mol/view/view":-1,"mol/scroll":-1,"mol/mem":-1,"mol/type/enforce":-1,"mol/view":-2,"mol/page/-view.tree/page.view.tree.js":0,"mol/style/unit":-1,"mol/style/func":-1,"mol/style/define":-1,"mol/theme":-2,"mol/gap":-3,"mol/plugin":-6},"mol":{"":-9007199254740991},"mol/view/view":{"mol/view":0,"mol/window":-2,"mol/object":-1,"mol/mem":-2,"mol/fail/log":-4,"mol/dom/context":-3,"mol/view/selection":-3,"mol/memo":-2,"mol/dom/qname":-3,"mol/wire/probe":-3,"mol/wire/watch":-4,"mol/const":-3,"mol/wire/solid":-3,"mol/dom/render/attributes":-3,"mol/dom/render/events":-3,"mol/promise/like":-4,"mol/dom/render/styles":-3,"mol/dom/render/children":-3,"mol/dom/render/fields":-3,"mol/func/name":-4,"mol/owning":-3,"mol/wire/fiber":-3,"mol/wire/async":-3,"mol/dev/format":-2,"mol/fail/hidden":-4,"mol/after/frame":-3,"mol/type/pick":-1,"mol/style/attach":0,"mol/theme":-1,"mol/gap":-1},"mol/view":{"mol":-9007199254740991},"mol/window":{"mol":-9007199254740991,"mol/object":-1},"mol/object":{"mol":-9007199254740991,"mol/object2":-1},"mol/object2":{"mol":-9007199254740991,"mol/ambient":-2,"mol/owning":-3,"mol/fail/hidden":-3,"mol/type/writable":-3,"mol/func/name":-3},"mol/ambient":{"mol":-9007199254740991},"mol/owning":{"mol":-9007199254740991,"mol/delegate":-3},"mol/delegate":{"mol":-9007199254740991},"mol/fail/hidden":{"mol/fail":-9007199254740991},"mol/fail":{"mol":-9007199254740991},"mol/type/writable":{"mol/type":-9007199254740991},"mol/type":{"mol":-9007199254740991},"mol/func/name":{"mol/func":-9007199254740991},"mol/func":{"mol":-9007199254740991},"mol/mem":{"mol":-9007199254740991,"mol/wire/solo":-1,"mol/wire/plex":-1},"mol/wire/solo":{"mol/wire":-5,"mol/wire/atom":-4,"mol/wire/fiber":-5,"mol/type/tail":-2},"mol/wire":{"mol":-9007199254740991,"mol/wire/sub":-1},"mol/wire/sub":{"mol/wire/pub":-1,"mol/wire/cursor":-2},"mol/wire/pub":{"mol/fail":-4,"mol/wire/cursor":-2},"mol/wire/cursor":{},"mol/wire/atom":{"mol/wire":-4,"mol/wire/fiber":-1,"mol/func/name":-3,"mol/key":-3,"mol/after/frame":-2,"mol/wire/cursor":-3,"mol/wire/method":-2,"mol/type/foot":-3,"mol/owning":-3,"mol/compare/deep":-5,"mol/fail/log":-5,"mol/promise/like":-3},"mol/wire/fiber":{"mol/wire":-9007199254740991,"mol/wire/pub/sub":-1,"mol/after/frame":-2,"mol/wire/cursor":-2,"mol/promise/like":-3,"mol/dev/format":-2,"mol/owning":-4,"mol/wire/pub":-5,"mol/fail/hidden":-4},"mol/wire/pub/sub":{"mol/wire/pub":-1,"mol/wire/sub":-1,"mol/wire/cursor":-2,"mol/wire":-3,"mol/fail":-3,"mol/dev/format":-2},"mol/dev/format":{"mol/dev":-9007199254740991},"mol/dev":{"mol":-9007199254740991},"mol/after/frame":{"mol/after":-9007199254740991,"mol/after/timeout":-1},"mol/after":{"mol":-9007199254740991},"mol/after/timeout":{"mol/after":-9007199254740991,"mol/object2":-1},"mol/promise/like":{"mol/promise":-9007199254740991},"mol/promise":{"mol":-9007199254740991},"mol/key":{"mol":-9007199254740991,"mol/guid":-3},"mol/guid":{"mol":-9007199254740991},"mol/wire/method":{"mol/wire":-9007199254740991,"mol/wire/task":-2},"mol/wire/task":{"mol/wire":-4,"mol/wire/fiber":-1,"mol/compare/deep":-5,"mol/log3":-5,"mol/promise/like":-3,"mol/wire/cursor":-3},"mol/compare/deep":{"mol/compare":-9007199254740991},"mol/compare":{"mol":-9007199254740991},"mol/log3":{"mol":-9007199254740991,"mol/log3/log3.ts":0,"mol/tree2/from/json":-3,"mol/term/color":-1},"mol/log3/log3.ts":{},"mol/tree2/from/json":{"mol/tree2/from":-9007199254740991,"mol/span":-1,"mol/tree2":-1},"mol/tree2/from":{"mol/tree2":-9007199254740991,"mol/tree2/from/string":-2},"mol/tree2":{"mol":-9007199254740991,"mol/span":-2,"mol/fail":-4,"mol/tree2/to/string":-3,"mol/fail/hidden":-4},"mol/span":{"mol":-9007199254740991,"mol/object2":-1,"mol/fail":-3},"mol/tree2/from/string":{"mol/tree2":-1,"mol/span":-2,"mol/fail":-4,"mol/error/syntax":-4},"mol/error/syntax":{"mol/error":-9007199254740991,"mol/span":-3},"mol/error":{"mol":-9007199254740991},"mol/tree2/to/string":{"mol/tree2/to":-9007199254740991},"mol/tree2/to":{},"mol/term/color":{"mol/term":-9007199254740991},"mol/term":{"mol":-9007199254740991},"mol/type/foot":{"mol/type":-9007199254740991,"mol/type/tail":-1.25},"mol/type/tail":{"mol/type":-9007199254740991},"mol/fail/log":{"mol/fail":-9007199254740991,"mol/promise/like":-2,"mol/fail/catch":-2},"mol/fail/catch":{"mol/fail":-9007199254740991,"mol/promise/like":-2,"mol/fail/hidden":-2},"mol/wire/plex":{"mol/wire":-5,"mol/wire/atom":-4,"mol/wire/fiber":-5},"mol/dom/context":{"mol/dom":-9007199254740991,"mol/dom/context/context.ts":0,"node":-1,"mol/exec":-4},"mol/dom":{"mol":-9007199254740991},"mol/dom/context/context.ts":{},"node":{"":-9007199254740991,"node/node.ts":0,"node_modules":-2,"mol/fail/log":-3},"node_modules":{"":-9007199254740991},"mol/exec":{"mol":-9007199254740991,"mol/log3":-2,"node":-2,"mol/env":-4,"mol/fail":-3},"mol/env":{"mol":-9007199254740991,"mol/env/env.ts":0},"mol/env/env.ts":{},"mol/view/selection":{"mol/view":-9007199254740991,"mol/object":-1,"mol/mem":-2,"mol/dom/context":-3,"mol/after/tick":-3},"mol/after/tick":{"mol/after":-9007199254740991,"mol/object2":-1},"mol/memo":{"mol":-9007199254740991,"mol/wrapper":-1},"mol/wrapper":{"mol":-9007199254740991,"mol/object2":-1},"mol/dom/qname":{"mol/dom":-9007199254740991},"mol/wire/probe":{"mol/wire":-9007199254740991,"mol/wire/fiber":-2},"mol/wire/watch":{"mol/wire":-2,"mol/wire/atom":-2,"mol/fail":-3},"mol/const":{"mol":-9007199254740991,"mol/dev/format":-2},"mol/wire/solid":{"mol/wire":-2,"mol/wire/fiber":-2,"mol/wire/pub/sub":-1},"mol/dom/render/attributes":{"mol/dom/render":-9007199254740991},"mol/dom/render":{"mol/dom":-9007199254740991},"mol/dom/render/events":{"mol/dom/render":-9007199254740991},"mol/plugin":{"mol":-9007199254740991,"mol/view/view":-1,"mol/owning":-3,"mol/wire/fiber":-3},"mol/dom/render/styles":{"mol/dom/render":-9007199254740991},"mol/dom/render/children":{"mol/dom/render":-9007199254740991,"mol/dom/context":-3},"mol/dom/render/fields":{"mol/dom/render":-9007199254740991},"mol/wire/async":{"mol/wire":-9007199254740991,"mol/wire/fiber":-2,"mol/wire/task":-2},"mol/type/pick":{"mol/type":-9007199254740991,"mol/type/keys/extract":-3},"mol/type/keys/extract":{"mol/type/keys":-9007199254740991},"mol/type/keys":{"mol/type":-9007199254740991},"mol/style/attach":{"mol/style":-9007199254740991,"mol/after/tick":-1,"mol/dom/context":-2},"mol/style":{"mol":-9007199254740991},"mol/theme":{"mol":-9007199254740991,"mol/style/prop":-1,"mol/style/attach":0},"mol/style/prop":{"mol/style":-9007199254740991,"mol/style/func":-3,"mol/style/properties":-3},"mol/style/func":{"mol/style":-9007199254740991,"mol/style/unit":-1,"mol/decor":-1},"mol/style/unit":{"mol/style":-9007199254740991,"mol/decor":-1},"mol/decor":{"mol":-9007199254740991},"mol/style/properties":{"mol/style":-9007199254740991,"mol/type/override":-1,"mol/style/func":-1,"mol/style/unit":-1},"mol/type/override":{"mol/type":-9007199254740991},"mol/gap":{"mol":-9007199254740991,"mol/style/prop":-1,"mol/style/attach":0},"mol/scroll":{"mol":-9007199254740991,"mol/scroll/scroll.view.tree":0,"mol/mem":-1,"mol/print":-3,"mol/view/view":-1,"mol/scroll/-view.tree/scroll.view.tree.js":0,"mol/style/unit":-1,"mol/style/define":-1},"mol/scroll/scroll.view.tree":{"mol/scroll/-view.tree/scroll.view.tree.js":0},"mol/scroll/-view.tree/scroll.view.tree.js":{"mol/view/view":-1,"mol/mem":-1},"mol/print":{"mol":-9007199254740991,"mol/object":-1,"mol/mem":-2,"mol/dom/listener":-3,"mol/dom/context":-3},"mol/dom/listener":{"mol/dom":-9007199254740991,"mol/object":-1},"mol/style/define":{"mol/style":-9007199254740991,"mol/view/view":-2,"mol/style/guard":-2,"mol/style/attach":-2,"mol/style/sheet":-3},"mol/style/guard":{"mol/style":-9007199254740991,"mol/view/view":-1,"mol/style/properties":-1,"mol/style/pseudo":-1,"mol/type/keys/extract":-1,"mol/type/error":-2},"mol/style/pseudo":{"mol/style":-9007199254740991},"mol/type/error":{"mol/type":-9007199254740991},"mol/style/sheet":{"mol/style":-9007199254740991,"mol/view/view":-2,"mol/style/guard":-2,"mol/dom/qname":-2,"mol/ambient":-2,"mol/func/name":-2},"mol/type/enforce":{"mol/type":-9007199254740991},"mol/page/-view.tree/page.view.tree.js":{"mol/view/view":-1,"mol/scroll":-3,"mol/mem":-1},"mol/theme/auto":{"mol/theme":-3,"mol/theme/auto/auto.view.tree":0,"mol/lights":-3,"mol/plugin":-1,"mol/theme/auto/-view.tree/auto.view.tree.js":0},"mol/theme/auto/auto.view.tree":{"mol/theme/auto/-view.tree/auto.view.tree.js":0},"mol/theme/auto/-view.tree/auto.view.tree.js":{"mol/plugin":-1},"mol/lights":{"mol":-9007199254740991,"mol/state/arg":-2,"mol/state/local":-3},"mol/state/arg":{"mol/state":-9007199254740991,"mol/state/arg/arg.ts":0,"mol/object":-1,"mol/mem":-2,"mol/action":-2},"mol/state":{"mol":-9007199254740991},"mol/action":{"mol":-9007199254740991,"mol/wire/method":-1},"mol/state/local":{"mol/state":-9007199254740991,"mol/object":-1,"mol/dom/context":-4,"mol/mem":-2,"mol/storage":-4},"mol/storage":{"mol":-9007199254740991,"mol/object2":-1,"mol/mem":-2,"mol/dom/context":-3,"mol/mem/persist":-3,"mol/mem/cached":-3,"mol/log3":-5,"mol/wire/sync":-3},"mol/mem/persist":{"mol/mem":-9007199254740991,"mol/wire/solid":-1},"mol/mem/cached":{"mol/mem":-9007199254740991,"mol/wire/probe":-1},"mol/wire/sync":{"mol/wire":-9007199254740991,"mol/wire/task":-4},"mol/lights/toggle":{"mol/lights":-3,"mol/lights/toggle/toggle.view.tree":0,"mol/check/icon":-1,"mol/icon/brightness/6":-2,"mol/locale":-3,"mol/mem":-1,"mol/lights/toggle/-view.tree/toggle.view.tree.js":0},"mol/lights/toggle/toggle.view.tree":{"mol/lights/toggle/-view.tree/toggle.view.tree.js":0},"mol/lights/toggle/-view.tree/toggle.view.tree.js":{"mol/check/icon":-1,"mol/icon/brightness/6":-3,"mol/locale":-3,"mol/mem":-1},"mol/check/icon":{"mol/check":0,"mol/style/attach":0,"mol/check/icon/icon.view.tree":0,"mol/theme":-1,"mol/check/icon/-view.tree/icon.view.tree.js":0},"mol/check":{"mol":-9007199254740991,"mol/style/attach":0,"mol/check/check.view.tree":0,"mol/maybe":-4,"mol/view":-2,"mol/button/minor":-1,"mol/view/view":-1,"mol/mem":-1,"mol/type/enforce":-1,"mol/check/-view.tree/check.view.tree.js":0},"mol/check/check.view.tree":{"mol/check/-view.tree/check.view.tree.js":0},"mol/check/-view.tree/check.view.tree.js":{"mol/button/minor":-1,"mol/view/view":-3,"mol/mem":-1},"mol/button/minor":{"mol/button":-9007199254740991,"mol/style/attach":0,"mol/button/minor/minor.view.tree":0,"mol/theme":-1,"mol/button/typed":-1,"mol/button/minor/-view.tree/minor.view.tree.js":0},"mol/button":{"mol":-9007199254740991,"mol/button/button.view.tree":0,"mol/mem":-1,"mol/fail/hidden":-4,"mol/keyboard/code":-3,"mol/fail/log":-4,"mol/style/attach":0,"mol/gap":-1,"mol/layer":-1,"mol/view/view":-1,"mol/speck":-1,"mol/type/enforce":-1,"mol/view":-2,"mol/button/-view.tree/button.view.tree.js":0},"mol/button/button.view.tree":{"mol/button/-view.tree/button.view.tree.js":0},"mol/button/-view.tree/button.view.tree.js":{"mol/view/view":-1,"mol/speck":-3,"mol/mem":-1},"mol/speck":{"mol":-9007199254740991,"mol/style/attach":0,"mol/speck/speck.view.tree":0,"mol/layer":-1,"mol/view/view":-1,"mol/theme":-3,"mol/speck/-view.tree/speck.view.tree.js":0},"mol/speck/speck.view.tree":{"mol/speck/-view.tree/speck.view.tree.js":0},"mol/speck/-view.tree/speck.view.tree.js":{"mol/view/view":-1,"mol/theme":-3},"mol/layer":{"mol":-9007199254740991,"mol/style/prop":-1,"mol/style/attach":0},"mol/keyboard/code":{"mol/keyboard":-9007199254740991},"mol/keyboard":{"mol":-9007199254740991},"mol/button/minor/minor.view.tree":{"mol/button/minor/-view.tree/minor.view.tree.js":0},"mol/button/minor/-view.tree/minor.view.tree.js":{"mol/button/typed":-1},"mol/button/typed":{"mol/button":-1,"mol/style/attach":0,"mol/button/typed/typed.view.tree":0,"mol/gap":-1,"mol/theme":-1,"mol/button/typed/-view.tree/typed.view.tree.js":0},"mol/button/typed/typed.view.tree":{"mol/button/typed/-view.tree/typed.view.tree.js":0},"mol/button/typed/-view.tree/typed.view.tree.js":{"mol/button":-1},"mol/maybe":{"mol":-9007199254740991},"mol/check/icon/icon.view.tree":{"mol/check/icon/-view.tree/icon.view.tree.js":0},"mol/check/icon/-view.tree/icon.view.tree.js":{"mol/check":-1},"mol/icon/brightness/6":{"mol/icon/brightness":-9007199254740991,"mol/icon":-1,"mol/icon/brightness/6/-view.tree/6.view.tree.js":0},"mol/icon/brightness":{"mol/icon":-9007199254740991},"mol/icon":{"mol":-9007199254740991,"mol/style/attach":0,"mol/icon/icon.view.tree":0,"mol/theme":-1,"mol/svg/root":-1,"mol/svg/path":-1,"mol/mem":-1,"mol/type/enforce":-1,"mol/icon/-view.tree/icon.view.tree.js":0},"mol/icon/icon.view.tree":{"mol/icon/-view.tree/icon.view.tree.js":0},"mol/icon/-view.tree/icon.view.tree.js":{"mol/svg/root":-1,"mol/svg/path":-3,"mol/mem":-1},"mol/svg/root":{"mol/svg":-1,"mol/style/attach":0,"mol/svg/root/root.view.tree":0,"mol/svg/root/-view.tree/root.view.tree.js":0},"mol/svg":{"mol":-9007199254740991,"mol/svg/svg.view.tree":0,"mol/mem":-2,"mol/dom/context":-3,"mol/state/time":-3,"mol/view/view":-1,"mol/svg/-view.tree/svg.view.tree.js":0},"mol/svg/svg.view.tree":{"mol/svg/-view.tree/svg.view.tree.js":0},"mol/svg/-view.tree/svg.view.tree.js":{"mol/view/view":-1},"mol/state/time":{"mol/state":-9007199254740991,"mol/object":-1,"mol/mem":-2,"mol/after/timeout":-2,"mol/after/frame":-2},"mol/svg/root/root.view.tree":{"mol/svg/root/-view.tree/root.view.tree.js":0},"mol/svg/root/-view.tree/root.view.tree.js":{"mol/svg":-1},"mol/svg/path":{"mol/svg":-1,"mol/svg/path/-view.tree/path.view.tree.js":0},"mol/svg/path/-view.tree/path.view.tree.js":{"mol/svg":-1},"mol/icon/brightness/6/-view.tree/6.view.tree.js":{"mol/icon":-1},"mol/locale":{"mol":-1.25,"mol/object":-1,"mol/mem":-2,"mol/state/local":-3,"mol/dom/context":-3,"mol/file":-3,"mol/fail/catch":-4},"mol/file":{"mol":-9007199254740991,"mol/object":-1,"mol/mem":-2,"mol/fail/hidden":-4,"mol/charset/decode":-4,"mol/charset/encode":-4,"mol/file/file.ts":0,"node":-1,"mol/fail":-2,"mol/const":-4,"mol/fail/log":-3,"mol/action":-2,"mol/mem/cached":-5,"mol/compare/array":-5,"mol/log3":-6},"mol/charset/decode":{"mol/charset":-9007199254740991,"mol/charset/encoding":-1},"mol/charset":{"mol":-9007199254740991},"mol/charset/encoding":{"mol/charset":-9007199254740991},"mol/charset/encode":{"mol/charset":-9007199254740991,"node":-1},"mol/file/file.ts":{"mol/object":-1,"mol/mem":-2,"mol/fail/hidden":-4,"mol/charset/decode":-4,"mol/charset/encode":-4},"mol/compare/array":{"mol/compare":-9007199254740991},"mol/link/source":{"mol/link":-1,"mol/icon/script/text":-2,"mol/locale":-3,"mol/mem":-1,"mol/link/source/-view.tree/source.view.tree.js":0},"mol/link":{"mol":-9007199254740991,"mol/link/link.view.tree":0,"mol/mem":-1,"mol/state/arg":-3,"mol/dom/context":-3,"mol/fail/log":-4,"mol/view/view":-1,"mol/view":-2,"mol/link/-view.tree/link.view.tree.js":0,"mol/style/unit":-1,"mol/style/define":-1,"mol/theme":-2,"mol/gap":-2},"mol/link/link.view.tree":{"mol/link/-view.tree/link.view.tree.js":0},"mol/link/-view.tree/link.view.tree.js":{"mol/view/view":-1,"mol/mem":-1},"mol/icon/script/text":{"mol/icon/script":-9007199254740991,"mol/icon":-1,"mol/icon/script/text/-view.tree/text.view.tree.js":0},"mol/icon/script":{"mol/icon":-1,"mol/icon/script/-view.tree/script.view.tree.js":0},"mol/icon/script/-view.tree/script.view.tree.js":{"mol/icon":-1},"mol/icon/script/text/-view.tree/text.view.tree.js":{"mol/icon":-1},"mol/link/source/-view.tree/source.view.tree.js":{"mol/link":-1,"mol/icon/script/text":-3,"mol/locale":-3,"mol/mem":-1},"mol/button/major":{"mol/button":-9007199254740991,"mol/style/attach":0,"mol/button/major/major.view.tree":0,"mol/button/typed":-1,"mol/theme":-3,"mol/button/major/-view.tree/major.view.tree.js":0},"mol/button/major/major.view.tree":{"mol/button/major/-view.tree/major.view.tree.js":0},"mol/button/major/-view.tree/major.view.tree.js":{"mol/button/typed":-1,"mol/theme":-3},"mol/frame":{"mol":-9007199254740991,"mol/frame/frame.view.tree":0,"mol/embed/native":-1,"mol/mem":-1,"mol/frame/-view.tree/frame.view.tree.js":0,"mol/style/define":-1,"mol/style/unit":-2},"mol/frame/frame.view.tree":{"mol/frame/-view.tree/frame.view.tree.js":0},"mol/frame/-view.tree/frame.view.tree.js":{"mol/embed/native":-1,"mol/mem":-1},"mol/embed/native":{"mol/embed":-9007199254740991,"mol/embed/native/native.view.tree":0,"mol/mem":-1,"mol/wire/solid":-3,"mol/wire/sync":-3,"mol/dom/listener":-3,"mol/dom/context":-4,"mol/wire/async":-4,"mol/wait/timeout":-3,"mol/style/attach":0,"mol/gap":-1,"mol/scroll":-1,"mol/link":-1,"mol/type/enforce":-1,"mol/embed/native/-view.tree/native.view.tree.js":0},"mol/embed":{"mol":-9007199254740991},"mol/embed/native/native.view.tree":{"mol/embed/native/-view.tree/native.view.tree.js":0},"mol/embed/native/-view.tree/native.view.tree.js":{"mol/scroll":-1,"mol/link":-3,"mol/mem":-1},"mol/wait/timeout":{"mol/wait":-9007199254740991,"mol/promise/promise":-2,"mol/after/timeout":-2,"mol/wire/sync":-2},"mol/wait":{"mol":-9007199254740991},"mol/promise/promise":{"mol/promise":-9007199254740991}},"sloc":{"ts":5391,"LICENSE":167,"md":2191,"lock":930,"js":9,"json":134,"tree":390,"CNAME":2,"html":12,"css":361},"deps":{"hyoo/showcase":{"..":-9007199254740991,"./showcase.view.tree":0,"/hyoo/showcase/app":0,"/mol/style/attach":0,"/hyoo/showcase":0,"/hyoo/showcase/scroll":0,"/hyoo/showcase/app/title":0,"/hyoo/showcase/app/container":0,"/hyoo/showcase/app/demo":0,"/mol/theme/line":-1,"/hyoo/showcase/offer/link":0,"/mol/page":-1,"/mol/theme/auto":-2,"/mol/lights/toggle":-2,"/mol/link/source":-1,"/mol/locale/text":-3,"/hyoo/showcase/offer/title":-3,"/mol/button/major":-1,"/mol/link":-1,"/hyoo/showcase/app/widgets/title":-3,"/hyoo/showcase/app/scout/title":-3,"/hyoo/showcase/app/piterjs/title":-3,"/hyoo/showcase/app/shelter/title":-3,"/hyoo/showcase/app/fallacy/title":-3,"/hyoo/showcase/app/toys/title":-3,"/hyoo/showcase/app/calc/title":-3,"/hyoo/showcase/app/notes/title":-3,"/hyoo/showcase/app/invest/title":-3,"/hyoo/showcase/app/todomvc/title":-3,"/hyoo/showcase/app/life/title":-3,"/hyoo/showcase/app/habhub/title":-3,"/hyoo/showcase/app/questions/title":-3,"/hyoo/showcase/app/slides/title":-3,"/hyoo/showcase/app/iq/title":-3,"/hyoo/showcase/app/rdf/title":-3,"/hyoo/showcase/app/lamps/title":-3,"/hyoo/showcase/app/bench/title":-3,"/hyoo/showcase/app/request/title":-3,"/hyoo/showcase/app/jsperf/title":-3,"/hyoo/showcase/app/issues/title":-3,"/hyoo/showcase/app/tree/title":-3,"/hyoo/showcase/app/icons/title":-3,"/hyoo/showcase/app/portal/title":-3,"/mol/scroll":-1,"/mol/theme/dark":-3,"/hyoo/showcase/title":-3,"/mol/mem":-1,"/hyoo/showcase/prototype":-1,"/mol/view":-1,"/mol/frame":-1,"/hyoo/showcase/app/prototype":-1,"/mol/type/enforce":-1,"/hyoo/showcase/-view.tree/showcase.view.tree.js":0},"hyoo":{"..":-9007199254740991},"":{},"hyoo/showcase/showcase.view.tree":{"/hyoo/showcase/-view.tree/showcase.view.tree.js":0},"hyoo/showcase/-view.tree/showcase.view.tree.js":{"/hyoo/showcase":-1,"/mol/page":-1,"/mol/theme/auto":-3,"/mol/lights/toggle":-3,"/mol/link/source":-3,"/mol/locale/text":-3,"/hyoo/showcase/offer/title":-3,"/mol/button/major":-3,"/mol/link":-1,"/hyoo/showcase/app/widgets/title":-3,"/hyoo/showcase/app":-1,"/hyoo/showcase/app/scout/title":-3,"/hyoo/showcase/app/piterjs/title":-3,"/hyoo/showcase/app/shelter/title":-3,"/hyoo/showcase/app/fallacy/title":-3,"/hyoo/showcase/app/toys/title":-3,"/hyoo/showcase/app/calc/title":-3,"/hyoo/showcase/app/notes/title":-3,"/hyoo/showcase/app/invest/title":-3,"/hyoo/showcase/app/todomvc/title":-3,"/hyoo/showcase/app/life/title":-3,"/hyoo/showcase/app/habhub/title":-3,"/hyoo/showcase/app/questions/title":-3,"/hyoo/showcase/app/slides/title":-3,"/hyoo/showcase/app/iq/title":-3,"/hyoo/showcase/app/rdf/title":-3,"/hyoo/showcase/app/lamps/title":-3,"/hyoo/showcase/app/bench/title":-3,"/hyoo/showcase/app/request/title":-3,"/hyoo/showcase/app/jsperf/title":-3,"/hyoo/showcase/app/issues/title":-3,"/hyoo/showcase/app/tree/title":-3,"/hyoo/showcase/app/icons/title":-3,"/hyoo/showcase/app/portal/title":-3,"/mol/scroll":-3,"/mol/theme/dark":-3,"/hyoo/showcase/title":-3,"/mol/mem":-1,"/hyoo/showcase/prototype":-1,"/mol/view":-3,"/mol/frame":-3,"/hyoo/showcase/app/prototype":-1},"mol/page":{"..":-9007199254740991,"/mol/page":-1,"/mol/view":-1,"/mol/scroll":-1,"/mol/mem":-1,"/mol/page/prototype":-1,"/mol/type/enforce":-1,"/mol/page/body/scroll/top":-1,"/mol/view/content":-2,"/mol/page/-view.tree/page.view.tree.js":0,"/mol/style/unit":-1,"/mol/style/func":-1,"/mol/style/define":-1,"/mol/theme/text":-2,"/mol/gap/block":-3,"/mol/theme/card":-4,"/mol/gap/round":-4,"/mol/gap/text":-3},"mol":{"..":-9007199254740991},"mol/view/view":{"..":-9007199254740991,"/mol/view/content":-1,"/mol/view":0,"/mol/view/visible/width":-1,"/mol/window/size":-2,"/mol/view/visible/height":-1,"/mol/view/state/key":-1,"/mol/object":-1,"/mol/mem/key":-2,"/mol/mem":-2,"/mol/fail/log":-4,"/mol/dom/context/document/query/selector/all":-3,"/mol/view/selection/focused":-3,"/mol/memo/method":-2,"/mol/dom/qname":-3,"/mol/wire/probe":-3,"/mol/wire/watch":-4,"/mol/dom/context/document/create/element":-3,"/mol/const":-3,"/mol/wire/solid":-3,"/mol/dom/render/attributes":-3,"/mol/dom/render/events":-3,"/mol/plugin":-6,"/mol/promise/like":-4,"/mol/dom/render/styles":-3,"/mol/dom/context":-3,"/mol/dom/render/children":-3,"/mol/dom/render/fields":-3,"/mol/func/name":-4,"/mol/owning/get":-3,"/mol/wire/fiber":-3,"/mol/wire/async":-3,"/mol/dev/format/head":-2,"/mol/dev/format/span":-3,"/mol/dev/format/native":-4,"/mol/fail/hidden":-4,"/mol/after/frame":-3,"/mol/view/all":-1,"/mol/type/pick":-1,"/mol/style/attach":0,"/mol/theme/line":-1,"/mol/gap/round":-1,"/mol/view/root":0,"/mol/theme/back":-1,"/mol/theme/text":-1,"/mol/view/error":0,"/mol/theme/hover":-1},"mol/view":{"..":-9007199254740991},"mol/window":{"..":-9007199254740991,"./window.ts":0,"/mol/window":-1,"/mol/object":-1},"mol/object":{"..":-9007199254740991,"/mol/object/field":-1,"/mol/object":-1,"/mol/object2":-1},"mol/object2":{"..":-9007199254740991,"/mol/object2":-1,"/mol/ambient/ref":-2,"/mol/owning/get":-3,"/mol/fail/hidden":-3,"/mol/type/writable":-3,"/mol/func/name":-3},"mol/ambient":{"..":-9007199254740991,"/mol/ambient/ref":-1,"/mol/ambient/context":-1,"/mol/ambient":-1},"mol/owning":{"..":-9007199254740991,"/mol/owning/map":-1,"/mol/owning/allow":-1,"/mol/delegate":-3,"/mol/owning/get":-1,"/mol/owning/map/get":-2,"/mol/owning/check":-1,"/mol/owning/catch":-1,"/mol/owning/map/set":-2},"mol/delegate":{"..":-9007199254740991,"/mol/delegate":-1},"mol/fail/hidden":{"..":-9007199254740991,"/mol/fail/hidden":-1},"mol/fail":{"..":-9007199254740991,"/mol/fail":-1},"mol/type/writable":{"..":-9007199254740991,"/mol/type/writable":-1},"mol/type":{"..":-9007199254740991},"mol/func/name":{"..":-9007199254740991,"/mol/func/name":-1,"/mol/func/name/from":-1},"mol/func":{"..":-9007199254740991},"mol/mem":{"..":-9007199254740991,"/mol/mem":-1,"/mol/wire/solo":-1,"/mol/mem/key":-1,"/mol/wire/plex":-1},"mol/wire/solo":{"..":-9007199254740991,"/mol/wire/solo":-1,"/mol/wire/atom/solo":-4,"/mol/wire/fiber/warm":-5,"/mol/wire/auto":-5,"/mol/type/tail":-2},"mol/wire":{"..":-9007199254740991,"/mol/wire/auto/sub":-1,"/mol/wire/sub":-1,"/mol/wire/auto":-1,"/mol/wire/affected":-1},"mol/wire/sub":{"..":-9007199254740991,"/mol/wire/sub":-1,"/mol/wire/pub":-1,"/mol/wire/cursor":-2},"mol/wire/pub":{"..":-9007199254740991,"/mol/wire/pub":-1,"/mol/wire/sub":-3,"/mol/fail":-4,"/mol/wire/auto":-3,"/mol/wire/cursor/stale":-2},"mol/wire/cursor":{"..":-9007199254740991,"/mol/wire/cursor":-1},"mol/wire/atom":{"..":-9007199254740991,"/mol/wire/atom":-1,"/mol/wire/fiber":-1,"/mol/func/name":-3,"/mol/key":-3,"/mol/after/frame":-2,"/mol/wire/atom/watcher":-3,"/mol/wire/atom/watch":-3,"/mol/wire/atom/watching":-3,"/mol/wire/cursor/final":-4,"/mol/wire/atom/watching/delete":-5,"/mol/wire/cursor/stale":-5,"/mol/wire/atom/watching/add":-3,"/mol/wire/method":-2,"/mol/type/foot":-3,"/mol/wire/fiber/warm":-4,"/mol/wire/auto":-4,"/mol/owning/check":-3,"/mol/compare/deep":-5,"/mol/fail/log":-5,"/mol/owning/catch":-4,"/mol/wire/cursor/fresh":-3,"/mol/promise/like":-3},"mol/wire/fiber":{"..":-9007199254740991,"/mol/wire/fiber":-1,"/mol/wire/pub/sub":-1,"/mol/after/frame":-2,"/mol/wire/fiber/plan/task":-5,"/mol/wire/cursor/final":-3,"/mol/promise/like":-3,"/mol/wire/fiber/planning/add":-3,"/mol/wire/fiber/plan":-3,"/mol/wire/fiber/reaping/add":-3,"/mol/dev/format/head":-2,"/mol/wire/cursor/stale":-2,"/mol/wire/cursor/doubt":-3,"/mol/wire/cursor/fresh":-3,"/mol/dev/format/div":-3,"/mol/owning/check":-4,"/mol/dev/format/auto":-4,"/mol/dev/format/shade":-5,"/mol/dev/format/body":-6,"/mol/dev/format/native":-5,"/mol/wire/pub":-5,"/mol/wire/fiber/warm":-3,"/mol/fail/hidden":-4},"mol/wire/pub/sub":{"..":-9007199254740991,"/mol/wire/pub/sub":-1,"/mol/wire/pub":-1,"/mol/wire/sub":-1,"/mol/wire/cursor/stale":-2,"/mol/wire/auto":-3,"/mol/fail":-3,"/mol/wire/cursor/fresh":-3,"/mol/wire/cursor/final":-3,"/mol/wire/cursor/doubt":-3,"/mol/dev/format/head":-2,"/mol/dev/format/native":-3},"mol/dev/format":{"..":-9007199254740991,"/mol/dev/format/register":-1,"/mol/dev/format/head":-1,"/mol/dev/format/body":-1,"/mol/dev/format/accent":-1,"/mol/dev/format/native":-1,"/mol/dev/format/shade":-1,"/mol/dev/format/auto":-1,"/mol/dev/format/element":-1,"/mol/dev/format/span":-1,"/mol/dev/format/div":-1,"/mol/dev/format/element/bind":-1,"/mol/dev/format/ol":-1,"/mol/dev/format/li":-1,"/mol/dev/format/table":-1,"/mol/dev/format/tr":-1,"/mol/dev/format/td":-1,"/mol/dev/format/span/bind":-1,"/mol/dev/format/strong":-1,"/mol/dev/format/string":-1,"/mol/dev/format/indent":-1,"/mol/dev/format/div/bind":-1},"mol/dev":{"..":-9007199254740991},"mol/after/frame":{"..":-9007199254740991,"./frame.ts":0,"/mol/after/frame":-1,"/mol/after/timeout":-1},"mol/after":{"..":-9007199254740991},"mol/after/timeout":{"..":-9007199254740991,"/mol/after/timeout":-1,"/mol/object2":-1},"mol/promise/like":{"..":-9007199254740991,"/mol/promise/like":-1},"mol/promise":{"..":-9007199254740991},"mol/key":{"..":-9007199254740991,"/mol/key/store":-1,"/mol/key":-1,"/mol/key/store/get":-3,"/mol/guid":-3,"/mol/key/store/set":-3},"mol/guid":{"..":-9007199254740991,"/mol/guid":-1},"mol/wire/method":{"..":-9007199254740991,"/mol/wire/method":-1,"/mol/wire/task/getter":-2},"mol/wire/task":{"..":-9007199254740991,"/mol/wire/task":-1,"/mol/wire/fiber":-1,"/mol/wire/task/get":-3,"/mol/wire/auto":-4,"/mol/compare/deep":-5,"/mol/log3/warn":-5,"/mol/promise/like":-3,"/mol/wire/cursor/fresh":-4,"/mol/wire/cursor/final":-3},"mol/compare/deep":{"..":-9007199254740991,"/mol/compare/deep/cache":-1,"/mol/compare/deep":-1,"/mol/compare/deep/cache/get":-2,"/mol/compare/deep/cache/set":-3},"mol/compare":{"..":-9007199254740991},"mol/log3":{"..":-9007199254740991,"/mol/log3/event":-1,"/mol/log3/logger":-1,"/mol/log3/come":-1,"/mol/log3/done":-1,"/mol/log3/fail":-1,"/mol/log3/warn":-1,"/mol/log3/rise":-1,"/mol/log3/area":-1,"/mol/log3/area/lazy":-1,"/mol/log3/stack":-1,"/mol/log3/area/call":-3,"./log3.ts":0,"/mol/log3/node/make":-1,"/mol/tree2/from/json":-3,"/mol/term/color/blue":-1,"/mol/term/color/green":-1,"/mol/term/color/red":-1,"/mol/term/color/yellow":-1,"/mol/term/color/magenta":-1,"/mol/term/color/cyan":-1},"mol/log3/log3.ts":{"/mol/log3/event":-1,"/mol/log3/logger":-1,"/mol/log3/come":-1,"/mol/log3/done":-1,"/mol/log3/fail":-1,"/mol/log3/warn":-1,"/mol/log3/rise":-1,"/mol/log3/area":-1,"/mol/log3/area/lazy":-1,"/mol/log3/stack":-1,"/mol/log3/area/call":-3},"mol/tree2/from/json":{"..":-9007199254740991,"/mol/tree2/from/json":-1,"/mol/span/unknown":-1,"/mol/tree2":-1,"/mol/tree2/data":-3},"mol/tree2/from":{"..":-9007199254740991},"mol/tree2":{"..":-9007199254740991,"/mol/tree2/path":-1,"/mol/tree2/hack":-1,"/mol/tree2":-1,"/mol/tree2/belt":-1,"/mol/span":-2,"/mol/span/unknown":-3,"/mol/tree2/list":-3,"/mol/tree2/data":-3,"/mol/fail":-4,"/mol/tree2/struct":-3,"/mol/tree2/from/string":-2,"/mol/tree2/to/string":-3,"/mol/fail/hidden":-4,"/mol/tree2/empty":-1},"mol/span":{"..":-9007199254740991,"/mol/span":-1,"/mol/object2":-1,"/mol/span/begin":-2,"/mol/fail":-3},"mol/tree2/from/string":{"..":-9007199254740991,"/mol/tree2/from/string":-1,"/mol/tree2":-1,"/mol/span/entire":-2,"/mol/tree2/list":-2,"/mol/fail":-4,"/mol/error/syntax":-4},"mol/error/syntax":{"..":-9007199254740991,"/mol/error/syntax":-1,"/mol/span":-3},"mol/error":{"..":-9007199254740991},"mol/tree2/to/string":{"..":-9007199254740991,"/mol/tree2/to/string":-1,"/mol/tree2":-2},"mol/tree2/to":{"..":-9007199254740991},"mol/term/color":{"..":-9007199254740991,"/mol/term/color":-1},"mol/term":{"..":-9007199254740991},"mol/type/foot":{"..":-9007199254740991,"/mol/type/tail":-1.25,"/mol/type/foot":-1},"mol/type/tail":{"..":-9007199254740991,"/mol/type/tail":-1},"mol/fail/log":{"..":-9007199254740991,"/mol/fail/log":-1,"/mol/promise/like":-2,"/mol/fail/catch":-2},"mol/fail/catch":{"..":-9007199254740991,"/mol/fail/catch":-1,"/mol/promise/like":-2,"/mol/fail/hidden":-2},"mol/wire/plex":{"..":-9007199254740991,"/mol/wire/plex":-1,"/mol/wire/atom/plex":-4,"/mol/wire/fiber/warm":-5,"/mol/wire/auto":-5},"mol/dom/context":{"..":-9007199254740991,"/mol/dom/context":-1,"./context.ts":0,"/node/jsdom":-1},"mol/dom":{"..":-9007199254740991},"mol/dom/context/context.ts":{"/mol/dom/context":-1},"node":{"..":-9007199254740991,"./node.ts":0,"/node":0,"module":-2,"path":-2,"fs":-2,"/mol/exec":-4,"/mol/fail/log":-3},"node/node.ts":{},"node_modules":{"..":-9007199254740991},"mol/exec":{"..":-9007199254740991,"./exec.ts":0,"/mol/exec":-1,"/mol/log3/come":-2,"/node/path/relative":-3,"/node/child_process":-2,"/node/path/resolve":-4,"/mol/env":-4,"/mol/fail":-3},"mol/env":{"..":-9007199254740991,"/mol/env":-1,"./env.ts":0},"mol/env/env.ts":{"/mol/env":-1},"mol/view/selection":{"..":-9007199254740991,"/mol/view/selection":-1,"/mol/object":-1,"/mol/mem":-2,"/mol/dom/context/document/active/element":-3,"/mol/after/tick":-3,"/mol/dom/context/blur":-4},"mol/after/tick":{"..":-9007199254740991,"/mol/after/tick":-1,"/mol/object2":-1},"mol/memo":{"..":-9007199254740991,"/mol/memo":-1,"/mol/wrapper":-1},"mol/wrapper":{"..":-9007199254740991,"/mol/wrapper":-1,"/mol/object2":-1},"mol/dom/qname":{"..":-9007199254740991,"/mol/dom/qname":-1},"mol/wire/probe":{"..":-9007199254740991,"/mol/wire/probe":-1,"/mol/wire/fiber/warm":-2},"mol/wire/watch":{"..":-9007199254740991,"/mol/wire/watch":-1,"/mol/wire/auto":-2,"/mol/wire/atom":-2,"/mol/fail":-3},"mol/const":{"..":-9007199254740991,"/mol/const":-1,"/mol/dev/format/head":-2,"/mol/dev/format/span":-2,"/mol/dev/format/auto":-2},"mol/wire/solid":{"..":-9007199254740991,"/mol/wire/solid":-1,"/mol/wire/auto":-2,"/mol/wire/fiber":-2,"/mol/wire/pub/sub":-1},"mol/dom/render/attributes":{"..":-9007199254740991,"/mol/dom/render/attributes":-1},"mol/dom/render":{"..":-9007199254740991},"mol/dom/render/events":{"..":-9007199254740991,"/mol/dom/render/events":-1},"mol/plugin":{"..":-9007199254740991,"/mol/plugin":-1,"/mol/view":-1,"/mol/owning/get":-3,"/mol/wire/fiber":-3},"mol/dom/render/styles":{"..":-9007199254740991,"/mol/dom/render/styles":-1},"mol/dom/render/children":{"..":-9007199254740991,"/mol/dom/render/children":-1,"/mol/dom/context":-3,"/mol/dom/context/document/create/text/node":-5},"mol/dom/render/fields":{"..":-9007199254740991,"/mol/dom/render/fields":-1},"mol/wire/async":{"..":-9007199254740991,"/mol/wire/async":-1,"/mol/wire/fiber":-2,"/mol/wire/task/getter":-2},"mol/type/pick":{"..":-9007199254740991,"/mol/type/pick":-1,"/mol/type/keys/extract":-3},"mol/type/keys/extract":{"..":-9007199254740991,"/mol/type/keys/extract":-1},"mol/type/keys":{"..":-9007199254740991},"mol/style/attach":{"..":-9007199254740991,"/mol/after/tick":-1,"/mol/style/attach/force":-1,"/mol/style/attach":-1,"/mol/dom/context/document":-2},"mol/style":{"..":-9007199254740991},"mol/theme":{"..":-9007199254740991,"/mol/theme":0,"/mol/style/prop":-1,"/mol/style/attach":0,"/mol/theme/dark":-0.25,"/mol/theme/light":-0.25,"/mol/theme/base":-0.25,"/mol/theme/accent":-0.25,"/mol/theme/current":-0.25,"/mol/theme/special":-0.25,"/mol/theme/hue":-1,"/mol/theme/hue/spread":-1,"/mol/theme/text":-1,"/mol/theme/back":-1,"/mol/theme/luma":-1,"/mol/theme/image":-1,"/mol/theme/card":-1,"/mol/theme/field":-1,"/mol/theme/hover":-1,"/mol/theme/shade":-1,"/mol/theme/line":-1,"/mol/theme/focus":-1,"/mol/theme/control":-1},"mol/style/prop":{"..":-9007199254740991,"/mol/style/prop/result":-1,"/mol/style/func":-3,"/mol/style/prop":-1,"/mol/style/func/vary":-3},"mol/style/func":{"..":-9007199254740991,"/mol/style/func/name":-1,"/mol/style/func/image":-1,"/mol/style/func/filter":-1,"/mol/style/unit":-1,"/mol/style/func":-1,"/mol/decor":-1,"/mol/style/unit/str":-2,"/mol/style/unit/length":-2,"/mol/style/properties/color":-3,"/mol/style/unit/angle":-2},"mol/style/unit":{"..":-9007199254740991,"/mol/style/unit/length":-1,"/mol/style/unit/angle":-1,"/mol/style/unit/time":-1,"/mol/style/unit/any":-1,"/mol/style/unit/str":-1,"/mol/style/unit":-1,"/mol/decor":-1},"mol/decor":{"..":-9007199254740991,"/mol/decor":-1},"mol/style/properties":{"..":-9007199254740991,"/mol/style/properties":-1,"/mol/type/override":-1,"/mol/style/func":-1,"/mol/style/properties/color":-1,"/mol/style/unit/length":-1,"/mol/style/unit/str":-3,"/mol/style/unit/time":-3,"/mol/style/func/filter":-2,"/mol/style/func/image":-3},"mol/type/override":{"..":-9007199254740991,"/mol/type/override":-1},"mol/gap":{"..":-9007199254740991,"/mol/gap":-1,"/mol/style/prop":-1,"/mol/style/attach":0,"/mol/gap/block":-1,"/mol/gap/text":-1,"/mol/gap/round":-1,"/mol/gap/space":-1,"/mol/gap/blur":-1},"mol/scroll":{"..":-9007199254740991,"./scroll.view.tree":0,"/mol/scroll":-1,"/mol/mem":-1,"/mol/print/active":-3,"/mol/view":-1,"/mol/scroll/prototype":-1,"/mol/scroll/-view.tree/scroll.view.tree.js":0,"/mol/style/unit":-1,"/mol/style/define":-1},"mol/scroll/scroll.view.tree":{"/mol/scroll/-view.tree/scroll.view.tree.js":0},"mol/scroll/-view.tree/scroll.view.tree.js":{"/mol/scroll":-1,"/mol/view":-1,"/mol/mem":-1,"/mol/scroll/prototype":-1},"mol/print":{"..":-9007199254740991,"/mol/print":-1,"/mol/object":-1,"/mol/mem":-2,"/mol/dom/listener":-3,"/mol/dom/context":-3},"mol/dom/listener":{"..":-9007199254740991,"/mol/dom/listener":-1,"/mol/object":-1},"mol/style/define":{"..":-9007199254740991,"/mol/style/define":-1,"/mol/view":-2,"/mol/style/guard":-2,"/mol/style/attach":-2,"/mol/style/sheet":-3},"mol/style/guard":{"..":-9007199254740991,"/mol/view":-1,"/mol/style/guard":-1,"/mol/style/properties":-1,"/mol/style/pseudo/element":-1,"/mol/style/pseudo/class":-1,"/mol/type/keys/extract":-1,"/mol/type/error":-2},"mol/style/pseudo":{"..":-9007199254740991,"/mol/style/pseudo/class":-1,"/mol/style/pseudo/element":-1},"mol/type/error":{"..":-9007199254740991,"/mol/type/error":-1},"mol/style/sheet":{"..":-9007199254740991,"/mol/style/sheet":-1,"/mol/view":-2,"/mol/style/guard":-2,"/mol/dom/qname":-2,"/mol/ambient":-2,"/mol/func/name":-2},"mol/type/enforce":{"..":-9007199254740991,"/mol/type/enforce":-1},"mol/page/-view.tree/page.view.tree.js":{"/mol/page":-1,"/mol/view":-1,"/mol/scroll":-3,"/mol/mem":-1,"/mol/page/prototype":-1},"mol/theme/auto":{"..":-9007199254740991,"./auto.view.tree":0,"/mol/theme/auto":-1,"/mol/lights":-3,"/mol/theme/light":-3,"/mol/theme/dark":-3,"/mol/plugin":-1,"/mol/theme/auto/-view.tree/auto.view.tree.js":0},"mol/theme/auto/auto.view.tree":{"/mol/theme/auto/-view.tree/auto.view.tree.js":0},"mol/theme/auto/-view.tree/auto.view.tree.js":{"/mol/theme/auto":-1,"/mol/plugin":-1},"mol/lights":{"..":-9007199254740991,"/mol/lights":-1,"/mol/state/arg/value":-2,"/mol/state/local/value":-3},"mol/state/arg":{"..":-9007199254740991,"./arg.ts":0,"/mol/state/arg":-1,"/mol/object":-1,"/mol/mem":-2,"/mol/mem/key":-2,"/mol/action":-2},"mol/state":{"..":-9007199254740991},"mol/state/arg/arg.ts":{},"mol/action":{"..":-9007199254740991,"/mol/action":-1,"/mol/wire/method":-1},"mol/state/local":{"..":-9007199254740991,"/mol/state/local":-1,"/mol/object":-1,"/mol/dom/context/local/storage":-4,"/mol/mem":-2,"/mol/mem/key":-2,"/mol/storage/persisted":-4,"/mol/state/local/value":-3},"mol/storage":{"..":-9007199254740991,"/mol/storage":-1,"/mol/object2":-1,"/mol/mem":-2,"/mol/dom/context/navigator/storage":-3,"/mol/mem/persist":-3,"/mol/mem/cached":-3,"/mol/log3/done":-5,"/mol/log3/fail":-5,"/mol/wire/sync":-3},"mol/mem/persist":{"..":-9007199254740991,"/mol/mem/persist":-1,"/mol/wire/solid":-1},"mol/mem/cached":{"..":-9007199254740991,"/mol/mem/cached":-1,"/mol/wire/probe":-1},"mol/wire/sync":{"..":-9007199254740991,"/mol/wire/sync":-1,"/mol/wire/task/getter":-4},"mol/lights/toggle":{"..":-9007199254740991,"./toggle.view.tree":0,"/mol/lights/toggle":-1,"/mol/lights":-3,"/mol/check/icon":-1,"/mol/icon/brightness/6":-2,"/mol/locale/text":-3,"/mol/lights/toggle/hint":-3,"/mol/mem":-1,"/mol/lights/toggle/prototype":-1,"/mol/lights/toggle/-view.tree/toggle.view.tree.js":0},"mol/lights/toggle/toggle.view.tree":{"/mol/lights/toggle/-view.tree/toggle.view.tree.js":0},"mol/lights/toggle/-view.tree/toggle.view.tree.js":{"/mol/lights/toggle":-1,"/mol/check/icon":-1,"/mol/icon/brightness/6":-3,"/mol/locale/text":-3,"/mol/lights/toggle/hint":-3,"/mol/mem":-1,"/mol/lights/toggle/prototype":-1},"mol/check/icon":{"..":-9007199254740991,"/mol/style/attach":0,"./icon.view.tree":0,"/mol/check/icon":0,"/mol/check/checked":0,"/mol/theme/current":-1,"/mol/check":-1,"/mol/check/icon/-view.tree/icon.view.tree.js":0},"mol/check":{"..":-9007199254740991,"/mol/style/attach":0,"/mol/check":0,"/mol/check/title":0,"./check.view.tree":0,"/mol/maybe":-4,"/mol/view/content":-2,"/mol/button/minor":-1,"/mol/view":-1,"/mol/mem":-1,"/mol/check/prototype":-1,"/mol/type/enforce":-1,"/mol/check/-view.tree/check.view.tree.js":0},"mol/check/check.view.tree":{"/mol/check/-view.tree/check.view.tree.js":0},"mol/check/-view.tree/check.view.tree.js":{"/mol/check":-1,"/mol/button/minor":-1,"/mol/view":-3,"/mol/mem":-1,"/mol/check/prototype":-1},"mol/button/minor":{"..":-9007199254740991,"/mol/style/attach":0,"./minor.view.tree":0,"/mol/button/minor":0,"/mol/theme/control":-1,"/mol/theme/shade":-1,"/mol/button/typed":-1,"/mol/button/minor/-view.tree/minor.view.tree.js":0},"mol/button":{"..":-9007199254740991,"./button.view.tree":0,"/mol/button":0,"/mol/mem":-1,"/mol/fail/hidden":-4,"/mol/keyboard/code/enter":-3,"/mol/fail/log":-4,"/mol/style/attach":0,"/mol/gap/round":-1,"/mol/layer/hover":-1,"/mol/layer/focus":-1,"/mol/view":-1,"/mol/speck":-1,"/mol/button/prototype":-1,"/mol/type/enforce":-1,"/mol/view/content":-2,"/mol/button/-view.tree/button.view.tree.js":0},"mol/button/button.view.tree":{"/mol/button/-view.tree/button.view.tree.js":0},"mol/button/-view.tree/button.view.tree.js":{"/mol/button":-1,"/mol/view":-1,"/mol/speck":-3,"/mol/mem":-1,"/mol/button/prototype":-1},"mol/speck":{"..":-9007199254740991,"/mol/style/attach":0,"./speck.view.tree":0,"/mol/speck":0,"/mol/layer/speck":-1,"/mol/view":-1,"/mol/theme/accent":-3,"/mol/speck/-view.tree/speck.view.tree.js":0},"mol/speck/speck.view.tree":{"/mol/speck/-view.tree/speck.view.tree.js":0},"mol/speck/-view.tree/speck.view.tree.js":{"/mol/speck":-1,"/mol/view":-1,"/mol/theme/accent":-3},"mol/layer":{"..":-9007199254740991,"/mol/layer":-1,"/mol/style/prop":-1,"/mol/style/attach":0,"/mol/layer/hover":-1,"/mol/layer/focus":-1,"/mol/layer/speck":-1,"/mol/layer/float":-1,"/mol/layer/popup":-1},"mol/keyboard/code":{"..":-9007199254740991,"/mol/keyboard/code":-1},"mol/keyboard":{"..":-9007199254740991},"mol/button/minor/minor.view.tree":{"/mol/button/minor/-view.tree/minor.view.tree.js":0},"mol/button/minor/-view.tree/minor.view.tree.js":{"/mol/button/minor":-1,"/mol/button/typed":-1},"mol/button/typed":{"..":-9007199254740991,"/mol/style/attach":0,"./typed.view.tree":0,"/mol/button/typed":0,"/mol/gap/text":-1,"/mol/gap/round":-1,"/mol/gap/space":-1,"/mol/theme/hover":-1,"/mol/theme/focus":-1,"/mol/button":-1,"/mol/button/typed/-view.tree/typed.view.tree.js":0},"mol/button/typed/typed.view.tree":{"/mol/button/typed/-view.tree/typed.view.tree.js":0},"mol/button/typed/-view.tree/typed.view.tree.js":{"/mol/button/typed":-1,"/mol/button":-1},"mol/maybe":{"..":-9007199254740991,"/mol/maybe":-1},"mol/check/icon/icon.view.tree":{"/mol/check/icon/-view.tree/icon.view.tree.js":0},"mol/check/icon/-view.tree/icon.view.tree.js":{"/mol/check/icon":-1,"/mol/check":-1},"mol/icon/brightness/6":{"..":-9007199254740991,"/mol/icon/brightness/6":-1,"/mol/icon":-1,"/mol/icon/brightness/6/-view.tree/6.view.tree.js":0},"mol/icon/brightness":{"..":-9007199254740991},"mol/icon":{"..":-9007199254740991,"/mol/style/attach":0,"./icon.view.tree":0,"/mol/icon":0,"/mol/theme/back":-1,"/mol/icon/path":0,"/mol/svg/root":-1,"/mol/svg/path":-1,"/mol/mem":-1,"/mol/icon/prototype":-1,"/mol/type/enforce":-1,"/mol/icon/-view.tree/icon.view.tree.js":0},"mol/icon/icon.view.tree":{"/mol/icon/-view.tree/icon.view.tree.js":0},"mol/icon/-view.tree/icon.view.tree.js":{"/mol/icon":-1,"/mol/svg/root":-1,"/mol/svg/path":-3,"/mol/mem":-1,"/mol/icon/prototype":-1},"mol/svg/root":{"..":-9007199254740991,"/mol/style/attach":0,"./root.view.tree":0,"/mol/svg/root":0,"/mol/svg":-1,"/mol/svg/root/-view.tree/root.view.tree.js":0},"mol/svg":{"..":-9007199254740991,"./svg.view.tree":0,"/mol/svg":-1,"/mol/mem":-2,"/mol/dom/context":-3,"/mol/state/time/now":-3,"/mol/view":-1,"/mol/svg/-view.tree/svg.view.tree.js":0},"mol/svg/svg.view.tree":{"/mol/svg/-view.tree/svg.view.tree.js":0},"mol/svg/-view.tree/svg.view.tree.js":{"/mol/svg":-1,"/mol/view":-1},"mol/state/time":{"..":-9007199254740991,"/mol/state/time":-1,"/mol/object":-1,"/mol/mem/key":-2,"/mol/after/timeout":-2,"/mol/after/frame":-2},"mol/svg/root/root.view.tree":{"/mol/svg/root/-view.tree/root.view.tree.js":0},"mol/svg/root/-view.tree/root.view.tree.js":{"/mol/svg/root":-1,"/mol/svg":-1},"mol/svg/path":{"..":-9007199254740991,"/mol/svg/path":-1,"/mol/svg":-1,"/mol/svg/path/-view.tree/path.view.tree.js":0},"mol/svg/path/-view.tree/path.view.tree.js":{"/mol/svg/path":-1,"/mol/svg":-1},"mol/icon/brightness/6/-view.tree/6.view.tree.js":{"/mol/icon/brightness/6":-1,"/mol/icon":-1},"mol/locale":{"..":-9007199254740991,"/mol/locale/dict":-1,"/mol":-1.25,"/mol/locale":-1,"/mol/object":-1,"/mol/mem":-2,"/mol/state/local/value":-3,"/mol/dom/context/navigator/language/replace":-3,"/mol/mem/key":-2,"/mol/file/relative":-3,"/mol/fail/catch":-4},"mol/file":{"..":-9007199254740991,"/mol/file/type":-1,"/mol/file/stat":-1,"/mol/file/not/found":-1,"/mol/file":-1,"/mol/object":-1,"/mol/mem/key":-2,"/mol/fail/hidden":-4,"/mol/file/web/watcher":-3,"/mol/mem":-2,"/mol/charset/decode":-4,"/mol/charset/encode":-4,"./file.ts":0,"/node/fs/stat/sync":-1,"/mol/fail":-2,"/mol/file/mode/open":-1,"/node/fs/constants":-2,"/mol/file/node":-1,"/mol/const":-4,"/node/path/resolve":-3,"/node/chokidar/watch":-3,"/mol/file/relative":-4,"/mol/fail/log":-3,"/node/fs/mkdir/sync":-4,"/mol/action":-2,"/node/fs/unlink/sync":-3,"/mol/mem/cached":-5,"/node/fs/read/file/sync":-5,"/mol/compare/array":-5,"/mol/log3/rise":-6,"/node/fs/write/file/sync":-4,"/node/fs/readdir/sync":-4,"/node/path/join":-3,"/node/path/relative":-3,"/node/fs/append/file/sync":-4,"/node/fs/open/sync":-3},"mol/charset/decode":{"..":-9007199254740991,"/mol/charset/encoding":-1,"/mol/charset/decode":-1},"mol/charset":{"..":-9007199254740991},"mol/charset/encoding":{"..":-9007199254740991,"/mol/charset/encoding":-1},"mol/charset/encode":{"..":-9007199254740991,"/node/util":-1,"/mol/charset/encode":-1},"mol/file/file.ts":{"/mol/file/type":-1,"/mol/file/stat":-1,"/mol/file/not/found":-1,"/mol/file":-1,"/mol/object":-1,"/mol/mem/key":-2,"/mol/fail/hidden":-4,"/mol/file/web/watcher":-3,"/mol/mem":-2,"/mol/charset/decode":-4,"/mol/charset/encode":-4},"mol/compare/array":{"..":-9007199254740991,"/mol/compare/array":-1},"mol/link/source":{"..":-9007199254740991,"/mol/link/source":-1,"/mol/link":-1,"/mol/icon/script/text":-2,"/mol/locale/text":-3,"/mol/link/source/hint":-3,"/mol/mem":-1,"/mol/link/source/prototype":-1,"/mol/link/source/-view.tree/source.view.tree.js":0},"mol/link":{"..":-9007199254740991,"./link.view.tree":0,"/mol/link":-1,"/mol/mem":-1,"/mol/state/arg":-3,"/mol/state/arg/href":-3,"/mol/state/arg/href/normal":-3,"/mol/state/arg/value":-4,"/mol/dom/context/location/origin":-3,"/mol/fail/log":-4,"/mol/view":-1,"/mol/link/prototype":-1,"/mol/view/content":-2,"/mol/link/-view.tree/link.view.tree.js":0,"/mol/style/unit":-1,"/mol/style/define":-1,"/mol/theme/control":-2,"/mol/gap/text":-2,"/mol/gap/space":-2,"/mol/gap/round":-3,"/mol/theme/hover":-4,"/mol/theme/focus":-3,"/mol/theme/current":-5},"mol/link/link.view.tree":{"/mol/link/-view.tree/link.view.tree.js":0},"mol/link/-view.tree/link.view.tree.js":{"/mol/link":-1,"/mol/view":-1,"/mol/mem":-1,"/mol/link/prototype":-1},"mol/icon/script/text":{"..":-9007199254740991,"/mol/icon/script/text":-1,"/mol/icon":-1,"/mol/icon/script/text/-view.tree/text.view.tree.js":0},"mol/icon/script":{"..":-9007199254740991,"/mol/icon/script":-1,"/mol/icon":-1,"/mol/icon/script/-view.tree/script.view.tree.js":0},"mol/icon/script/-view.tree/script.view.tree.js":{"/mol/icon/script":-1,"/mol/icon":-1},"mol/icon/script/text/-view.tree/text.view.tree.js":{"/mol/icon/script/text":-1,"/mol/icon":-1},"mol/link/source/-view.tree/source.view.tree.js":{"/mol/link/source":-1,"/mol/link":-1,"/mol/icon/script/text":-3,"/mol/locale/text":-3,"/mol/link/source/hint":-3,"/mol/mem":-1,"/mol/link/source/prototype":-1},"mol/button/major":{"..":-9007199254740991,"/mol/style/attach":0,"./major.view.tree":0,"/mol/button/major":0,"/mol/button/typed":-1,"/mol/theme/accent":-3,"/mol/button/major/-view.tree/major.view.tree.js":0},"mol/button/major/major.view.tree":{"/mol/button/major/-view.tree/major.view.tree.js":0},"mol/button/major/-view.tree/major.view.tree.js":{"/mol/button/major":-1,"/mol/button/typed":-1,"/mol/theme/accent":-3},"mol/frame":{"..":-9007199254740991,"./frame.view.tree":0,"/mol/frame":-1,"/mol/embed/native":-1,"/mol/mem":-1,"/mol/frame/prototype":-1,"/mol/frame/-view.tree/frame.view.tree.js":0,"/mol/style/define":-1,"/mol/style/unit/vh":-2},"mol/frame/frame.view.tree":{"/mol/frame/-view.tree/frame.view.tree.js":0},"mol/frame/-view.tree/frame.view.tree.js":{"/mol/frame":-1,"/mol/embed/native":-1,"/mol/mem":-1,"/mol/frame/prototype":-1},"mol/embed/native":{"..":-9007199254740991,"./native.view.tree":0,"/mol/embed/native":0,"/mol/mem":-1,"/mol/wire/solid":-3,"/mol/wire/sync":-3,"/mol/dom/listener":-3,"/mol/dom/context":-4,"/mol/wire/async":-4,"/mol/wait/timeout":-3,"/mol/style/attach":0,"/mol/gap/round":-1,"/mol/scroll":-1,"/mol/link":-1,"/mol/embed/native/prototype":-1,"/mol/type/enforce":-1,"/mol/embed/native/-view.tree/native.view.tree.js":0},"mol/embed":{"..":-9007199254740991},"mol/embed/native/native.view.tree":{"/mol/embed/native/-view.tree/native.view.tree.js":0},"mol/embed/native/-view.tree/native.view.tree.js":{"/mol/embed/native":-1,"/mol/scroll":-1,"/mol/link":-3,"/mol/mem":-1,"/mol/embed/native/prototype":-1},"mol/wait/timeout":{"..":-9007199254740991,"/mol/wait/timeout/async":-1,"/mol/promise":-2,"/mol/after/timeout":-2,"/mol/wait/timeout":-1,"/mol/wire/sync":-2},"mol/wait":{"..":-9007199254740991},"mol/promise/promise":{"..":-9007199254740991,"/mol/promise":-1}}} \ No newline at end of file +{"files":["mam.ts","LICENSE","README.md","yarn.lock","mam.jam.js","tsfmt.json","package.json","tsconfig.json","lang.lang.tree","meta.lang.tree","sandbox.config.json","hyoo/LICENSE","hyoo/hyoo.ts","hyoo/hyoo.meta.tree","mol/CNAME","mol/LICENSE","mol/readme.md","mol/index.html","mol/mol.meta.tree","mol/CONTRIBUTING.md","mol/CODE_OF_CONDUCT.md","mol/view/readme.md","mol/view/view.lang.tree","mol/ambient/readme.md","mol/ambient/ambient.ts","mol/delegate/delegate.ts","mol/owning/owning.ts","mol/fail/fail.ts","mol/fail/hidden/hidden.ts","mol/type/README.md","mol/type/writable/writable.ts","mol/func/name/name.ts","mol/object2/object2.ts","mol/object/object.ts","mol/object/readme.md","mol/window/window.node.ts","mol/wire/cursor/cursor.ts","mol/wire/pub/pub.ts","mol/wire/sub/sub.ts","mol/wire/wire.ts","mol/wire/README.md","mol/dev/format/format.ts","mol/wire/pub/sub/sub.ts","mol/wire/pub/sub/README.md","mol/after/timeout/readme.md","mol/after/timeout/timeout.ts","mol/after/frame/frame.node.ts","mol/promise/like/like.ts","mol/wire/fiber/fiber.ts","mol/wire/fiber/readme.md","mol/guid/guid.ts","mol/key/key.ts","mol/key/README.md","mol/compare/deep/deep.ts","mol/compare/deep/README.md","mol/log3/log3.ts","mol/span/span.ts","mol/tree2/to/string/string.ts","mol/tree2/tree2.ts","mol/tree2/readme.md","mol/error/syntax/syntax.ts","mol/tree2/from/string/string.ts","mol/tree2/from/json/json.ts","mol/term/readme.md","mol/term/color/color.ts","mol/log3/log3.node.ts","mol/wire/task/task.ts","mol/wire/method/README.md","mol/wire/method/method.ts","mol/type/tail/tail.ts","mol/type/foot/foot.ts","mol/fail/catch/catch.ts","mol/fail/log/log.ts","mol/wire/atom/atom.ts","mol/wire/solo/solo.ts","mol/wire/solo/readme.md","mol/wire/plex/plex.ts","mol/mem/mem.ts","mol/dom/context/context.ts","node/node.ts","node/node.node.ts","mol/env/env.ts","mol/env/env.node.ts","mol/exec/exec.node.ts","mol/dom/context/context.node.ts","mol/after/tick/tick.ts","mol/view/selection/selection.ts","mol/wrapper/wrapper.ts","mol/memo/memo.ts","mol/dom/qname/qname.ts","mol/wire/probe/probe.ts","mol/wire/watch/watch.ts","mol/const/const.ts","mol/const/readme.md","mol/wire/solid/solid.ts","mol/dom/render/attributes/attributes.ts","mol/dom/render/events/events.ts","mol/dom/render/styles/styles.ts","mol/dom/render/children/children.ts","mol/dom/render/fields/fields.ts","mol/wire/async/async.ts","mol/wire/async/README.md","mol/type/keys/extract/extract.ts","mol/type/pick/pick.ts","mol/style/readme.md","mol/style/attach/attach.ts","mol/decor/decor.ts","mol/style/unit/unit.ts","mol/style/func/func.ts","mol/type/override/override.ts","mol/style/properties/properties.ts","mol/style/prop/prop.ts","mol/style/prop/readme.md","mol/theme/theme.ts","mol/theme/-css/theme.css.ts","mol/theme/theme.css","mol/gap/gap.ts","mol/gap/-css/gap.css.ts","mol/gap/gap.css","mol/view/view/view.ts","mol/view/view/-css/view.css.ts","mol/view/view/view.css","mol/scroll/-view.tree/scroll.view.tree.js","mol/scroll/scroll.view.tree","mol/dom/listener/listener.ts","mol/print/print.ts","mol/style/pseudo/class.ts","mol/style/pseudo/element.ts","mol/type/error/error.ts","mol/style/guard/guard.ts","mol/style/sheet/sheet.ts","mol/style/define/define.ts","mol/scroll/readme.md","mol/scroll/-view.tree/scroll.view.tree.js.map","mol/scroll/-view.tree/scroll.view.tree.d.ts","mol/scroll/-view.tree/scroll.view.tree.d.ts.map","mol/scroll/-view.tree/scroll.view.tree.locale=en.json","mol/scroll/scroll.view.ts","mol/scroll/scroll.view.css.ts","mol/type/enforce/enforce.ts","mol/page/-view.tree/page.view.tree.js","mol/plugin/plugin.ts","mol/plugin/readme.md","mol/page/readme.md","mol/page/-view.tree/page.view.tree.js.map","mol/page/-view.tree/page.view.tree.d.ts","mol/page/-view.tree/page.view.tree.d.ts.map","mol/page/-view.tree/page.view.tree.locale=en.json","mol/page/page.view.tree","mol/page/page.view.css.ts","mol/theme/auto/-view.tree/auto.view.tree.js","mol/theme/auto/auto.view.tree","mol/state/arg/arg.ts","mol/action/action.ts","mol/state/arg/readme.md","mol/state/arg/arg.node.ts","mol/mem/persist/persist.ts","mol/mem/cached/cached.ts","mol/wire/sync/sync.ts","mol/wire/sync/README.md","mol/storage/storage.ts","mol/state/local/local.ts","mol/charset/encoding/encoding.ts","mol/charset/decode/decode.ts","mol/charset/encode/encode.ts","mol/file/file.ts","mol/compare/array/array.ts","mol/file/file.node.ts","mol/state/local/local.node.ts","mol/lights/lights.ts","mol/lights/readme.md","mol/theme/auto/readme.md","mol/theme/auto/-view.tree/auto.view.tree.js.map","mol/theme/auto/-view.tree/auto.view.tree.d.ts","mol/theme/auto/-view.tree/auto.view.tree.d.ts.map","mol/theme/auto/-view.tree/auto.view.tree.locale=en.json","mol/theme/auto/auto.view.ts","mol/speck/-view.tree/speck.view.tree.js","mol/speck/speck.view.tree","mol/layer/layer.ts","mol/layer/-css/layer.css.ts","mol/layer/layer.css","mol/speck/readme.md","mol/speck/-css/speck.view.css.ts","mol/speck/-view.tree/speck.view.tree.js.map","mol/speck/-view.tree/speck.view.tree.d.ts","mol/speck/-view.tree/speck.view.tree.d.ts.map","mol/speck/-view.tree/speck.view.tree.locale=en.json","mol/speck/speck.view.css","mol/button/-view.tree/button.view.tree.js","mol/button/button.view.tree","mol/keyboard/code/code.ts","mol/button/readme.md","mol/button/-view.tree/button.view.tree.js.map","mol/button/-view.tree/button.view.tree.d.ts","mol/button/-view.tree/button.view.tree.d.ts.map","mol/button/-view.tree/button.view.tree.locale=en.json","mol/button/button.view.ts","mol/button/-css/button.view.css.ts","mol/button/button.view.css","mol/button/typed/-view.tree/typed.view.tree.js","mol/button/typed/typed.view.tree","mol/button/typed/-css/typed.view.css.ts","mol/button/typed/-view.tree/typed.view.tree.js.map","mol/button/typed/-view.tree/typed.view.tree.d.ts","mol/button/typed/-view.tree/typed.view.tree.d.ts.map","mol/button/typed/-view.tree/typed.view.tree.locale=en.json","mol/button/typed/typed.view.css","mol/button/minor/-view.tree/minor.view.tree.js","mol/button/minor/minor.view.tree","mol/button/minor/-css/minor.view.css.ts","mol/button/minor/-view.tree/minor.view.tree.js.map","mol/button/minor/-view.tree/minor.view.tree.d.ts","mol/button/minor/-view.tree/minor.view.tree.d.ts.map","mol/button/minor/-view.tree/minor.view.tree.locale=en.json","mol/button/minor/minor.view.css","mol/check/-view.tree/check.view.tree.js","mol/check/check.view.tree","mol/maybe/maybe.ts","mol/check/-css/check.css.ts","mol/check/check.css","mol/check/readme.md","mol/check/-view.tree/check.view.tree.js.map","mol/check/-view.tree/check.view.tree.d.ts","mol/check/-view.tree/check.view.tree.d.ts.map","mol/check/-view.tree/check.view.tree.locale=en.json","mol/check/check.view.ts","mol/check/icon/-view.tree/icon.view.tree.js","mol/check/icon/icon.view.tree","mol/check/icon/-css/icon.view.css.ts","mol/check/icon/-view.tree/icon.view.tree.js.map","mol/check/icon/-view.tree/icon.view.tree.d.ts","mol/check/icon/-view.tree/icon.view.tree.d.ts.map","mol/check/icon/-view.tree/icon.view.tree.locale=en.json","mol/check/icon/icon.view.css","mol/svg/-view.tree/svg.view.tree.js","mol/svg/svg.view.tree","mol/state/time/time.ts","mol/state/time/readme.md","mol/svg/readme.md","mol/svg/-view.tree/svg.view.tree.js.map","mol/svg/-view.tree/svg.view.tree.d.ts","mol/svg/-view.tree/svg.view.tree.d.ts.map","mol/svg/-view.tree/svg.view.tree.locale=en.json","mol/svg/svg.view.ts","mol/svg/root/-view.tree/root.view.tree.js","mol/svg/root/root.view.tree","mol/svg/root/-css/root.view.css.ts","mol/svg/root/-view.tree/root.view.tree.js.map","mol/svg/root/-view.tree/root.view.tree.d.ts","mol/svg/root/-view.tree/root.view.tree.d.ts.map","mol/svg/root/-view.tree/root.view.tree.locale=en.json","mol/svg/root/root.view.css","mol/svg/path/-view.tree/path.view.tree.js","mol/svg/path/-view.tree/path.view.tree.js.map","mol/svg/path/-view.tree/path.view.tree.d.ts","mol/svg/path/-view.tree/path.view.tree.d.ts.map","mol/svg/path/-view.tree/path.view.tree.locale=en.json","mol/svg/path/path.view.tree","mol/icon/-view.tree/icon.view.tree.js","mol/icon/icon.view.tree","mol/icon/LICENSE","mol/icon/README.md","mol/icon/-css/icon.view.css.ts","mol/icon/icon.view.css","mol/icon/-view.tree/icon.view.tree.js.map","mol/icon/-view.tree/icon.view.tree.d.ts","mol/icon/-view.tree/icon.view.tree.d.ts.map","mol/icon/-view.tree/icon.view.tree.locale=en.json","mol/icon/brightness/6/-view.tree/6.view.tree.js","mol/icon/brightness/6/-view.tree/6.view.tree.js.map","mol/icon/brightness/6/-view.tree/6.view.tree.d.ts","mol/icon/brightness/6/-view.tree/6.view.tree.d.ts.map","mol/icon/brightness/6/-view.tree/6.view.tree.locale=en.json","mol/icon/brightness/6/6.view.tree","mol/locale/locale.ts","mol/locale/readme.md","mol/lights/toggle/-view.tree/toggle.view.tree.js","mol/lights/toggle/toggle.view.tree","mol/lights/toggle/-view.tree/toggle.view.tree.js.map","mol/lights/toggle/-view.tree/toggle.view.tree.d.ts","mol/lights/toggle/-view.tree/toggle.view.tree.d.ts.map","mol/lights/toggle/-view.tree/toggle.view.tree.locale=en.json","mol/lights/toggle/toggle.view.ts","mol/lights/toggle/toggle.locale=ru.json","mol/lights/toggle/toggle.locale=uk.json","mol/link/-view.tree/link.view.tree.js","mol/link/link.view.tree","mol/link/readme.md","mol/link/-view.tree/link.view.tree.js.map","mol/link/-view.tree/link.view.tree.d.ts","mol/link/-view.tree/link.view.tree.d.ts.map","mol/link/-view.tree/link.view.tree.locale=en.json","mol/link/link.view.ts","mol/link/link.view.css.ts","mol/icon/script/-view.tree/script.view.tree.js","mol/icon/script/-view.tree/script.view.tree.js.map","mol/icon/script/-view.tree/script.view.tree.d.ts","mol/icon/script/-view.tree/script.view.tree.d.ts.map","mol/icon/script/-view.tree/script.view.tree.locale=en.json","mol/icon/script/script.view.tree","mol/icon/script/text/-view.tree/text.view.tree.js","mol/icon/script/text/-view.tree/text.view.tree.js.map","mol/icon/script/text/-view.tree/text.view.tree.d.ts","mol/icon/script/text/-view.tree/text.view.tree.d.ts.map","mol/icon/script/text/-view.tree/text.view.tree.locale=en.json","mol/icon/script/text/text.view.tree","mol/link/source/-view.tree/source.view.tree.js","mol/link/source/readme.md","mol/link/source/-view.tree/source.view.tree.js.map","mol/link/source/-view.tree/source.view.tree.d.ts","mol/link/source/-view.tree/source.view.tree.d.ts.map","mol/link/source/-view.tree/source.view.tree.locale=en.json","mol/link/source/source.view.tree","mol/link/source/source.locale=ru.json","mol/button/major/-view.tree/major.view.tree.js","mol/button/major/major.view.tree","mol/button/major/-css/major.view.css.ts","mol/button/major/-view.tree/major.view.tree.js.map","mol/button/major/-view.tree/major.view.tree.d.ts","mol/button/major/-view.tree/major.view.tree.d.ts.map","mol/button/major/-view.tree/major.view.tree.locale=en.json","mol/button/major/major.view.css","mol/embed/native/-view.tree/native.view.tree.js","mol/embed/native/native.view.tree","mol/promise/promise/promise.ts","mol/wait/timeout/timeout.ts","mol/embed/native/-view.tree/native.view.tree.js.map","mol/embed/native/-view.tree/native.view.tree.d.ts","mol/embed/native/-view.tree/native.view.tree.d.ts.map","mol/embed/native/-view.tree/native.view.tree.locale=en.json","mol/embed/native/native.view.ts","mol/embed/native/-css/native.view.css.ts","mol/embed/native/native.view.css","mol/frame/-view.tree/frame.view.tree.js","mol/frame/frame.view.tree","mol/frame/-view.tree/frame.view.tree.js.map","mol/frame/-view.tree/frame.view.tree.d.ts","mol/frame/-view.tree/frame.view.tree.d.ts.map","mol/frame/-view.tree/frame.view.tree.locale=en.json","mol/frame/frame.view.ts","mol/frame/frame.view.css.ts","hyoo/showcase/-view.tree/showcase.view.tree.js","hyoo/showcase/showcase.view.tree","hyoo/showcase/CNAME","hyoo/showcase/LICENSE","hyoo/showcase/README.md","hyoo/showcase/index.html","hyoo/showcase/-view.tree/showcase.view.tree.js.map","hyoo/showcase/-view.tree/showcase.view.tree.d.ts","hyoo/showcase/-view.tree/showcase.view.tree.d.ts.map","hyoo/showcase/-view.tree/showcase.view.tree.locale=en.json","hyoo/showcase/showcase.view.ts","hyoo/showcase/-css/showcase.view.css.ts","hyoo/showcase/showcase.view.css","hyoo/showcase/showcase.meta.tree","hyoo/showcase/showcase.locale=ru.json"],"mods":{},"deps_in":{"hyoo":{"hyoo/showcase":-9007199254740991},"":{"hyoo":-9007199254740991,"mol":-9007199254740991,"node":-9007199254740991,"node_modules":-9007199254740991},"hyoo/showcase/showcase.view.tree":{"hyoo/showcase":0},"hyoo/showcase/-view.tree/showcase.view.tree.js":{"hyoo/showcase/showcase.view.tree":0,"hyoo/showcase":0},"hyoo/showcase":{},"mol/page":{"hyoo/showcase/-view.tree/showcase.view.tree.js":-1,"hyoo/showcase":-1},"mol":{"mol/page":-9007199254740991,"mol/view":-9007199254740991,"mol/window":-9007199254740991,"mol/object":-9007199254740991,"mol/object2":-9007199254740991,"mol/ambient":-9007199254740991,"mol/owning":-9007199254740991,"mol/delegate":-9007199254740991,"mol/fail":-9007199254740991,"mol/type":-9007199254740991,"mol/func":-9007199254740991,"mol/mem":-9007199254740991,"mol/wire":-9007199254740991,"mol/dev":-9007199254740991,"mol/after":-9007199254740991,"mol/promise":-9007199254740991,"mol/key":-9007199254740991,"mol/guid":-9007199254740991,"mol/compare":-9007199254740991,"mol/log3":-9007199254740991,"mol/tree2":-9007199254740991,"mol/span":-9007199254740991,"mol/error":-9007199254740991,"mol/term":-9007199254740991,"mol/dom":-9007199254740991,"mol/exec":-9007199254740991,"mol/env":-9007199254740991,"mol/memo":-9007199254740991,"mol/wrapper":-9007199254740991,"mol/const":-9007199254740991,"mol/plugin":-9007199254740991,"mol/style":-9007199254740991,"mol/theme":-9007199254740991,"mol/decor":-9007199254740991,"mol/gap":-9007199254740991,"mol/scroll":-9007199254740991,"mol/print":-9007199254740991,"mol/lights":-9007199254740991,"mol/state":-9007199254740991,"mol/action":-9007199254740991,"mol/storage":-9007199254740991,"mol/file":-9007199254740991,"mol/charset":-9007199254740991,"mol/check":-9007199254740991,"mol/button":-9007199254740991,"mol/speck":-9007199254740991,"mol/layer":-9007199254740991,"mol/keyboard":-9007199254740991,"mol/maybe":-9007199254740991,"mol/icon":-9007199254740991,"mol/svg":-9007199254740991,"mol/locale":-1.25,"mol/link":-9007199254740991,"mol/frame":-9007199254740991,"mol/embed":-9007199254740991,"mol/wait":-9007199254740991},"mol/view/view":{"mol/page":-1,"mol/plugin":-1,"mol/scroll/-view.tree/scroll.view.tree.js":-1,"mol/scroll":-1,"mol/style/define":-2,"mol/style/guard":-1,"mol/style/sheet":-2,"mol/page/-view.tree/page.view.tree.js":-1,"mol/button/-view.tree/button.view.tree.js":-1,"mol/speck/-view.tree/speck.view.tree.js":-1,"mol/speck":-1,"mol/button":-1,"mol/check/-view.tree/check.view.tree.js":-3,"mol/check":-1,"mol/svg/-view.tree/svg.view.tree.js":-1,"mol/svg":-1,"mol/link/-view.tree/link.view.tree.js":-1,"mol/link":-1,"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-1},"mol/view":{"mol/view/view":0,"mol/view/selection":-9007199254740991,"mol/page":-2,"mol/button":-2,"mol/check":-2,"mol/link":-2},"mol/window":{"mol/view/view":-2},"mol/object":{"mol/window":-1,"mol/view/view":-1,"mol/view/selection":-1,"mol/print":-1,"mol/dom/listener":-1,"mol/state/arg":-1,"mol/state/local":-1,"mol/state/local/local.ts":-1,"mol/file":-1,"mol/file/file.ts":-1,"mol/state/time":-1,"mol/locale":-1},"mol/object2":{"mol/object":-1,"mol/after/timeout":-1,"mol/span":-1,"mol/after/tick":-1,"mol/wrapper":-1,"mol/storage":-1},"mol/ambient":{"mol/object2":-2,"mol/style/sheet":-2},"mol/owning":{"mol/object2":-3,"mol/wire/fiber":-4,"mol/wire/atom":-3,"mol/plugin":-3,"mol/view/view":-3},"mol/delegate":{"mol/owning":-3},"mol/fail/hidden":{"mol/object2":-3,"mol/wire/fiber":-4,"mol/tree2":-4,"mol/fail/catch":-2,"mol/view/view":-4,"mol/file":-4,"mol/file/file.ts":-4,"mol/button":-4},"mol/fail":{"mol/fail/hidden":-9007199254740991,"mol/wire/pub":-4,"mol/wire/pub/sub":-3,"mol/span":-3,"mol/tree2":-4,"mol/tree2/from/string":-4,"mol/fail/log":-9007199254740991,"mol/fail/catch":-9007199254740991,"mol/exec":-3,"mol/wire/watch":-3,"mol/file":-2},"mol/type/writable":{"mol/object2":-3},"mol/type":{"mol/type/writable":-9007199254740991,"mol/type/foot":-9007199254740991,"mol/type/tail":-9007199254740991,"mol/type/pick":-9007199254740991,"mol/type/keys":-9007199254740991,"mol/type/override":-9007199254740991,"mol/type/error":-9007199254740991,"mol/type/enforce":-9007199254740991},"mol/func/name":{"mol/object2":-3,"mol/wire/atom":-3,"mol/view/view":-4,"mol/style/sheet":-2},"mol/func":{"mol/func/name":-9007199254740991},"mol/mem":{"mol/view/view":-2,"mol/view/selection":-2,"mol/scroll/-view.tree/scroll.view.tree.js":-1,"mol/scroll":-1,"mol/print":-2,"mol/page":-1,"mol/page/-view.tree/page.view.tree.js":-1,"mol/state/arg":-2,"mol/state/local":-2,"mol/storage":-2,"mol/mem/persist":-9007199254740991,"mol/mem/cached":-9007199254740991,"mol/state/local/local.ts":-2,"mol/file":-2,"mol/file/file.ts":-2,"mol/button/-view.tree/button.view.tree.js":-1,"mol/button":-1,"mol/check/-view.tree/check.view.tree.js":-1,"mol/check":-1,"mol/svg":-2,"mol/state/time":-2,"mol/icon/-view.tree/icon.view.tree.js":-1,"mol/icon":-1,"mol/locale":-2,"mol/lights/toggle/-view.tree/toggle.view.tree.js":-1,"mol/lights/toggle":-1,"mol/link/-view.tree/link.view.tree.js":-1,"mol/link":-1,"mol/link/source":-1,"mol/link/source/-view.tree/source.view.tree.js":-1,"hyoo/showcase/-view.tree/showcase.view.tree.js":-1,"mol/embed/native/-view.tree/native.view.tree.js":-1,"mol/embed/native":-1,"mol/frame/-view.tree/frame.view.tree.js":-1,"mol/frame":-1,"hyoo/showcase":-1},"mol/wire/solo":{"mol/mem":-1},"mol/wire":{"mol/wire/solo":-5,"mol/wire/atom":-4,"mol/wire/fiber":-9007199254740991,"mol/wire/pub/sub":-3,"mol/wire/method":-9007199254740991,"mol/wire/task":-4,"mol/wire/plex":-5,"mol/wire/probe":-9007199254740991,"mol/wire/watch":-2,"mol/wire/solid":-2,"mol/wire/async":-9007199254740991,"mol/wire/sync":-9007199254740991},"mol/wire/sub":{"mol/wire":-1,"mol/wire/pub/sub":-1},"mol/wire/pub":{"mol/wire/sub":-1,"mol/wire/pub/sub":-1,"mol/wire/fiber":-5},"mol/wire/cursor":{"mol/wire/pub":-2,"mol/wire/sub":-2,"mol/wire/pub/sub":-2,"mol/wire/fiber":-2,"mol/wire/atom":-3,"mol/wire/task":-3},"mol/wire/atom":{"mol/wire/solo":-4,"mol/wire/plex":-4,"mol/wire/watch":-2},"mol/wire/fiber":{"mol/wire/atom":-1,"mol/wire/task":-1,"mol/wire/solo":-5,"mol/wire/plex":-5,"mol/wire/probe":-2,"mol/wire/solid":-2,"mol/plugin":-3,"mol/view/view":-3,"mol/wire/async":-2},"mol/wire/pub/sub":{"mol/wire/fiber":-1,"mol/wire/solid":-1},"mol/dev/format":{"mol/wire/pub/sub":-2,"mol/wire/fiber":-2,"mol/const":-2,"mol/view/view":-2},"mol/dev":{"mol/dev/format":-9007199254740991},"mol/after/frame":{"mol/wire/fiber":-2,"mol/wire/atom":-2,"mol/view/view":-3,"mol/state/time":-2},"mol/after":{"mol/after/frame":-9007199254740991,"mol/after/timeout":-9007199254740991,"mol/after/tick":-9007199254740991},"mol/after/timeout":{"mol/after/frame":-1,"mol/state/time":-2,"mol/wait/timeout":-2},"mol/promise/like":{"mol/wire/fiber":-3,"mol/wire/task":-3,"mol/fail/log":-2,"mol/fail/catch":-2,"mol/wire/atom":-3,"mol/view/view":-4},"mol/promise":{"mol/promise/like":-9007199254740991,"mol/promise/promise":-9007199254740991},"mol/key":{"mol/wire/atom":-3},"mol/guid":{"mol/key":-3},"mol/wire/method":{"mol/wire/atom":-2,"mol/action":-1},"mol/wire/task":{"mol/wire/method":-2,"mol/wire/async":-2,"mol/wire/sync":-4},"mol/compare/deep":{"mol/wire/task":-5,"mol/wire/atom":-5},"mol/compare":{"mol/compare/deep":-9007199254740991,"mol/compare/array":-9007199254740991},"mol/log3":{"mol/wire/task":-5,"mol/exec":-2,"mol/storage":-5,"mol/file":-6},"mol/log3/log3.ts":{"mol/log3":0},"mol/tree2/from/json":{"mol/log3":-3},"mol/tree2/from":{"mol/tree2/from/json":-9007199254740991},"mol/tree2":{"mol/tree2/from":-9007199254740991,"mol/tree2/from/string":-1,"mol/tree2/from/json":-1},"mol/span":{"mol/tree2":-2,"mol/tree2/from/string":-2,"mol/error/syntax":-3,"mol/tree2/from/json":-1},"mol/tree2/from/string":{"mol/tree2/from":-2},"mol/error/syntax":{"mol/tree2/from/string":-4},"mol/error":{"mol/error/syntax":-9007199254740991},"mol/tree2/to/string":{"mol/tree2":-3},"mol/tree2/to":{"mol/tree2/to/string":-9007199254740991},"mol/term/color":{"mol/log3":-1},"mol/term":{"mol/term/color":-9007199254740991},"mol/type/foot":{"mol/wire/atom":-3},"mol/type/tail":{"mol/type/foot":-1.25,"mol/wire/solo":-2},"mol/fail/log":{"mol/wire/atom":-5,"mol/view/view":-4,"node":-3,"mol/file":-3,"mol/button":-4,"mol/link":-4},"mol/fail/catch":{"mol/fail/log":-2,"mol/locale":-4},"mol/wire/plex":{"mol/mem":-1},"mol/dom/context":{"mol/view/view":-3,"mol/view/selection":-3,"mol/dom/render/children":-3,"mol/style/attach":-2,"mol/print":-3,"mol/state/local":-4,"mol/storage":-3,"mol/state/local/local.ts":-4,"mol/svg":-3,"mol/locale":-3,"mol/link":-3,"mol/embed/native":-4},"mol/dom":{"mol/dom/context":-9007199254740991,"mol/dom/qname":-9007199254740991,"mol/dom/render":-9007199254740991,"mol/dom/listener":-9007199254740991},"mol/dom/context/context.ts":{"mol/dom/context":0},"node":{"mol/dom/context":-1,"mol/exec":-2,"mol/state/local":-3,"mol/charset/encode":-1,"mol/file":-1},"node/node.ts":{"node":0},"node_modules":{"node":-2},"mol/exec":{"mol/dom/context":-4},"mol/env":{"mol/exec":-4},"mol/env/env.ts":{"mol/env":0},"mol/view/selection":{"mol/view/view":-3},"mol/after/tick":{"mol/view/selection":-3,"mol/style/attach":-1},"mol/memo":{"mol/view/view":-2},"mol/wrapper":{"mol/memo":-1},"mol/dom/qname":{"mol/view/view":-3,"mol/style/sheet":-2},"mol/wire/probe":{"mol/view/view":-3,"mol/mem/cached":-1},"mol/wire/watch":{"mol/view/view":-4},"mol/const":{"mol/view/view":-3,"mol/file":-4},"mol/wire/solid":{"mol/view/view":-3,"mol/mem/persist":-1,"mol/embed/native":-3},"mol/dom/render/attributes":{"mol/view/view":-3},"mol/dom/render":{"mol/dom/render/attributes":-9007199254740991,"mol/dom/render/events":-9007199254740991,"mol/dom/render/styles":-9007199254740991,"mol/dom/render/children":-9007199254740991,"mol/dom/render/fields":-9007199254740991},"mol/dom/render/events":{"mol/view/view":-3},"mol/plugin":{"mol/theme/auto/-view.tree/auto.view.tree.js":-1,"mol/theme/auto":-1,"mol/page":-6},"mol/dom/render/styles":{"mol/view/view":-3},"mol/dom/render/children":{"mol/view/view":-3},"mol/dom/render/fields":{"mol/view/view":-3},"mol/wire/async":{"mol/view/view":-3,"mol/embed/native":-4},"mol/type/pick":{"mol/view/view":-1},"mol/type/keys/extract":{"mol/type/pick":-3,"mol/style/guard":-1},"mol/type/keys":{"mol/type/keys/extract":-9007199254740991},"mol/style/attach":{"mol/view/view":0,"mol/theme":0,"mol/gap":0,"mol/style/define":-2,"mol/check":0,"mol/speck":0,"mol/layer":0,"mol/button":0,"mol/button/minor":0,"mol/button/typed":0,"mol/check/icon":0,"mol/icon":0,"mol/svg/root":0,"mol/button/major":0,"mol/embed/native":0,"hyoo/showcase":0},"mol/style":{"mol/style/attach":-9007199254740991,"mol/style/prop":-9007199254740991,"mol/style/func":-9007199254740991,"mol/style/unit":-9007199254740991,"mol/style/properties":-9007199254740991,"mol/style/define":-9007199254740991,"mol/style/guard":-9007199254740991,"mol/style/pseudo":-9007199254740991,"mol/style/sheet":-9007199254740991},"mol/theme":{"mol/view/view":-1,"mol/page":-2,"mol/theme/auto":-3,"mol/speck/-view.tree/speck.view.tree.js":-3,"mol/speck":-3,"mol/button/typed":-1,"mol/button/minor":-1,"mol/check/icon":-1,"mol/icon":-1,"mol/link":-2,"mol/button/major/-view.tree/major.view.tree.js":-3,"mol/button/major":-3,"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-1},"mol/style/prop":{"mol/theme":-1,"mol/gap":-1,"mol/layer":-1},"mol/style/func":{"mol/style/prop":-3,"mol/style/properties":-1,"mol/page":-1},"mol/style/unit":{"mol/style/func":-1,"mol/style/properties":-1,"mol/scroll":-1,"mol/page":-1,"mol/link":-1,"mol/frame":-2},"mol/decor":{"mol/style/unit":-1,"mol/style/func":-1},"mol/style/properties":{"mol/style/guard":-1,"mol/style/prop":-3},"mol/type/override":{"mol/style/properties":-1},"mol/gap":{"mol/view/view":-1,"mol/page":-3,"mol/button":-1,"mol/button/typed":-1,"mol/link":-2,"mol/embed/native":-1},"mol/scroll":{"mol/page":-1,"mol/page/-view.tree/page.view.tree.js":-3,"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"mol/embed/native/-view.tree/native.view.tree.js":-1,"mol/embed/native":-1,"hyoo/showcase":-1},"mol/scroll/scroll.view.tree":{"mol/scroll":0},"mol/scroll/-view.tree/scroll.view.tree.js":{"mol/scroll/scroll.view.tree":0,"mol/scroll":0},"mol/print":{"mol/scroll":-3},"mol/dom/listener":{"mol/print":-3,"mol/embed/native":-3},"mol/style/define":{"mol/scroll":-1,"mol/page":-1,"mol/link":-1,"mol/frame":-1},"mol/style/guard":{"mol/style/define":-2,"mol/style/sheet":-2},"mol/style/pseudo":{"mol/style/guard":-1},"mol/type/error":{"mol/style/guard":-2},"mol/style/sheet":{"mol/style/define":-3},"mol/type/enforce":{"mol/page":-1,"mol/button":-1,"mol/check":-1,"mol/icon":-1,"mol/embed/native":-1,"hyoo/showcase":-1},"mol/page/-view.tree/page.view.tree.js":{"mol/page":0},"mol/theme/auto":{"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-2},"mol/theme/auto/auto.view.tree":{"mol/theme/auto":0},"mol/theme/auto/-view.tree/auto.view.tree.js":{"mol/theme/auto/auto.view.tree":0,"mol/theme/auto":0},"mol/lights":{"mol/theme/auto":-3,"mol/lights/toggle":-3},"mol/state/arg":{"mol/lights":-2,"mol/link":-3},"mol/state":{"mol/state/arg":-9007199254740991,"mol/state/local":-9007199254740991,"mol/state/time":-9007199254740991},"mol/state/arg/arg.ts":{"mol/state/arg":0},"mol/action":{"mol/state/arg":-2,"mol/file":-2},"mol/state/local":{"mol/lights":-3,"mol/locale":-3},"mol/storage":{"mol/state/local":-4,"mol/state/local/local.ts":-4},"mol/mem/persist":{"mol/storage":-3},"mol/mem/cached":{"mol/storage":-3,"mol/file":-5},"mol/wire/sync":{"mol/storage":-3,"mol/embed/native":-3,"mol/wait/timeout":-2},"mol/state/local/local.ts":{"mol/state/local":0},"mol/file":{"mol/state/local":-3,"mol/locale":-3},"mol/charset/decode":{"mol/file":-4,"mol/file/file.ts":-4},"mol/charset":{"mol/charset/decode":-9007199254740991,"mol/charset/encoding":-9007199254740991,"mol/charset/encode":-9007199254740991},"mol/charset/encoding":{"mol/charset/decode":-1},"mol/charset/encode":{"mol/file":-4,"mol/file/file.ts":-4},"mol/file/file.ts":{"mol/file":0},"mol/compare/array":{"mol/file":-5},"mol/lights/toggle":{"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-2},"mol/lights/toggle/toggle.view.tree":{"mol/lights/toggle":0},"mol/lights/toggle/-view.tree/toggle.view.tree.js":{"mol/lights/toggle/toggle.view.tree":0,"mol/lights/toggle":0},"mol/check/icon":{"mol/lights/toggle/-view.tree/toggle.view.tree.js":-1,"mol/lights/toggle":-1},"mol/check":{"mol/check/icon":0,"mol/check/icon/-view.tree/icon.view.tree.js":-1},"mol/check/check.view.tree":{"mol/check":0},"mol/check/-view.tree/check.view.tree.js":{"mol/check/check.view.tree":0,"mol/check":0},"mol/button/minor":{"mol/check/-view.tree/check.view.tree.js":-1,"mol/check":-1},"mol/button":{"mol/button/minor":-9007199254740991,"mol/button/typed":-1,"mol/button/typed/-view.tree/typed.view.tree.js":-1,"mol/button/major":-9007199254740991},"mol/button/button.view.tree":{"mol/button":0},"mol/button/-view.tree/button.view.tree.js":{"mol/button/button.view.tree":0,"mol/button":0},"mol/speck":{"mol/button/-view.tree/button.view.tree.js":-3,"mol/button":-1},"mol/speck/speck.view.tree":{"mol/speck":0},"mol/speck/-view.tree/speck.view.tree.js":{"mol/speck/speck.view.tree":0,"mol/speck":0},"mol/layer":{"mol/speck":-1,"mol/button":-1},"mol/keyboard/code":{"mol/button":-3},"mol/keyboard":{"mol/keyboard/code":-9007199254740991},"mol/button/minor/minor.view.tree":{"mol/button/minor":0},"mol/button/minor/-view.tree/minor.view.tree.js":{"mol/button/minor/minor.view.tree":0,"mol/button/minor":0},"mol/button/typed":{"mol/button/minor/-view.tree/minor.view.tree.js":-1,"mol/button/minor":-1,"mol/button/major/-view.tree/major.view.tree.js":-1,"mol/button/major":-1},"mol/button/typed/typed.view.tree":{"mol/button/typed":0},"mol/button/typed/-view.tree/typed.view.tree.js":{"mol/button/typed/typed.view.tree":0,"mol/button/typed":0},"mol/maybe":{"mol/check":-4},"mol/check/icon/icon.view.tree":{"mol/check/icon":0},"mol/check/icon/-view.tree/icon.view.tree.js":{"mol/check/icon/icon.view.tree":0,"mol/check/icon":0},"mol/icon/brightness/6":{"mol/lights/toggle/-view.tree/toggle.view.tree.js":-3,"mol/lights/toggle":-2},"mol/icon/brightness":{"mol/icon/brightness/6":-9007199254740991},"mol/icon":{"mol/icon/brightness":-9007199254740991,"mol/icon/brightness/6":-1,"mol/icon/brightness/6/-view.tree/6.view.tree.js":-1,"mol/icon/script":-1,"mol/icon/script/-view.tree/script.view.tree.js":-1,"mol/icon/script/text":-1,"mol/icon/script/text/-view.tree/text.view.tree.js":-1},"mol/icon/icon.view.tree":{"mol/icon":0},"mol/icon/-view.tree/icon.view.tree.js":{"mol/icon/icon.view.tree":0,"mol/icon":0},"mol/svg/root":{"mol/icon/-view.tree/icon.view.tree.js":-1,"mol/icon":-1},"mol/svg":{"mol/svg/root":-1,"mol/svg/root/-view.tree/root.view.tree.js":-1,"mol/svg/path":-1,"mol/svg/path/-view.tree/path.view.tree.js":-1},"mol/svg/svg.view.tree":{"mol/svg":0},"mol/svg/-view.tree/svg.view.tree.js":{"mol/svg/svg.view.tree":0,"mol/svg":0},"mol/state/time":{"mol/svg":-3},"mol/svg/root/root.view.tree":{"mol/svg/root":0},"mol/svg/root/-view.tree/root.view.tree.js":{"mol/svg/root/root.view.tree":0,"mol/svg/root":0},"mol/svg/path":{"mol/icon/-view.tree/icon.view.tree.js":-3,"mol/icon":-1},"mol/svg/path/-view.tree/path.view.tree.js":{"mol/svg/path":0},"mol/icon/brightness/6/-view.tree/6.view.tree.js":{"mol/icon/brightness/6":0},"mol/locale":{"mol/lights/toggle/-view.tree/toggle.view.tree.js":-3,"mol/lights/toggle":-3,"mol/link/source":-3,"mol/link/source/-view.tree/source.view.tree.js":-3,"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-3},"mol/link/source":{"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-1},"mol/link":{"mol/link/source":-1,"mol/link/source/-view.tree/source.view.tree.js":-1,"hyoo/showcase/-view.tree/showcase.view.tree.js":-1,"mol/embed/native/-view.tree/native.view.tree.js":-3,"mol/embed/native":-1,"hyoo/showcase":-1},"mol/link/link.view.tree":{"mol/link":0},"mol/link/-view.tree/link.view.tree.js":{"mol/link/link.view.tree":0,"mol/link":0},"mol/icon/script/text":{"mol/link/source":-2,"mol/link/source/-view.tree/source.view.tree.js":-3},"mol/icon/script":{"mol/icon/script/text":-9007199254740991},"mol/icon/script/-view.tree/script.view.tree.js":{"mol/icon/script":0},"mol/icon/script/text/-view.tree/text.view.tree.js":{"mol/icon/script/text":0},"mol/link/source/-view.tree/source.view.tree.js":{"mol/link/source":0},"mol/button/major":{"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-1},"mol/button/major/major.view.tree":{"mol/button/major":0},"mol/button/major/-view.tree/major.view.tree.js":{"mol/button/major/major.view.tree":0,"mol/button/major":0},"mol/frame":{"hyoo/showcase/-view.tree/showcase.view.tree.js":-3,"hyoo/showcase":-1},"mol/frame/frame.view.tree":{"mol/frame":0},"mol/frame/-view.tree/frame.view.tree.js":{"mol/frame/frame.view.tree":0,"mol/frame":0},"mol/embed/native":{"mol/frame/-view.tree/frame.view.tree.js":-1,"mol/frame":-1},"mol/embed":{"mol/embed/native":-9007199254740991},"mol/embed/native/native.view.tree":{"mol/embed/native":0},"mol/embed/native/-view.tree/native.view.tree.js":{"mol/embed/native/native.view.tree":0,"mol/embed/native":0},"mol/wait/timeout":{"mol/embed/native":-3},"mol/wait":{"mol/wait/timeout":-9007199254740991},"mol/promise/promise":{"mol/wait/timeout":-2}},"deps_out":{"hyoo/showcase":{"hyoo":-9007199254740991,"hyoo/showcase/showcase.view.tree":0,"mol/style/attach":0,"mol/theme":-1,"mol/page":-1,"mol/theme/auto":-2,"mol/lights/toggle":-2,"mol/link/source":-1,"mol/locale":-3,"mol/button/major":-1,"mol/link":-1,"mol/scroll":-1,"mol/mem":-1,"mol/view/view":-1,"mol/frame":-1,"mol/type/enforce":-1,"hyoo/showcase/-view.tree/showcase.view.tree.js":0},"hyoo":{"":-9007199254740991},"hyoo/showcase/showcase.view.tree":{"hyoo/showcase/-view.tree/showcase.view.tree.js":0},"hyoo/showcase/-view.tree/showcase.view.tree.js":{"mol/page":-1,"mol/theme/auto":-3,"mol/lights/toggle":-3,"mol/link/source":-3,"mol/locale":-3,"mol/button/major":-3,"mol/link":-1,"mol/scroll":-3,"mol/theme":-3,"mol/mem":-1,"mol/view/view":-3,"mol/frame":-3},"mol/page":{"mol":-9007199254740991,"mol/view/view":-1,"mol/scroll":-1,"mol/mem":-1,"mol/type/enforce":-1,"mol/view":-2,"mol/page/-view.tree/page.view.tree.js":0,"mol/style/unit":-1,"mol/style/func":-1,"mol/style/define":-1,"mol/theme":-2,"mol/gap":-3,"mol/plugin":-6},"mol":{"":-9007199254740991},"mol/view/view":{"mol/view":0,"mol/window":-2,"mol/object":-1,"mol/mem":-2,"mol/fail/log":-4,"mol/dom/context":-3,"mol/view/selection":-3,"mol/memo":-2,"mol/dom/qname":-3,"mol/wire/probe":-3,"mol/wire/watch":-4,"mol/const":-3,"mol/wire/solid":-3,"mol/dom/render/attributes":-3,"mol/dom/render/events":-3,"mol/promise/like":-4,"mol/dom/render/styles":-3,"mol/dom/render/children":-3,"mol/dom/render/fields":-3,"mol/func/name":-4,"mol/owning":-3,"mol/wire/fiber":-3,"mol/wire/async":-3,"mol/dev/format":-2,"mol/fail/hidden":-4,"mol/after/frame":-3,"mol/type/pick":-1,"mol/style/attach":0,"mol/theme":-1,"mol/gap":-1},"mol/view":{"mol":-9007199254740991},"mol/window":{"mol":-9007199254740991,"mol/object":-1},"mol/object":{"mol":-9007199254740991,"mol/object2":-1},"mol/object2":{"mol":-9007199254740991,"mol/ambient":-2,"mol/owning":-3,"mol/fail/hidden":-3,"mol/type/writable":-3,"mol/func/name":-3},"mol/ambient":{"mol":-9007199254740991},"mol/owning":{"mol":-9007199254740991,"mol/delegate":-3},"mol/delegate":{"mol":-9007199254740991},"mol/fail/hidden":{"mol/fail":-9007199254740991},"mol/fail":{"mol":-9007199254740991},"mol/type/writable":{"mol/type":-9007199254740991},"mol/type":{"mol":-9007199254740991},"mol/func/name":{"mol/func":-9007199254740991},"mol/func":{"mol":-9007199254740991},"mol/mem":{"mol":-9007199254740991,"mol/wire/solo":-1,"mol/wire/plex":-1},"mol/wire/solo":{"mol/wire":-5,"mol/wire/atom":-4,"mol/wire/fiber":-5,"mol/type/tail":-2},"mol/wire":{"mol":-9007199254740991,"mol/wire/sub":-1},"mol/wire/sub":{"mol/wire/pub":-1,"mol/wire/cursor":-2},"mol/wire/pub":{"mol/fail":-4,"mol/wire/cursor":-2},"mol/wire/cursor":{},"mol/wire/atom":{"mol/wire":-4,"mol/wire/fiber":-1,"mol/func/name":-3,"mol/key":-3,"mol/after/frame":-2,"mol/wire/cursor":-3,"mol/wire/method":-2,"mol/type/foot":-3,"mol/owning":-3,"mol/compare/deep":-5,"mol/fail/log":-5,"mol/promise/like":-3},"mol/wire/fiber":{"mol/wire":-9007199254740991,"mol/wire/pub/sub":-1,"mol/after/frame":-2,"mol/wire/cursor":-2,"mol/promise/like":-3,"mol/dev/format":-2,"mol/owning":-4,"mol/wire/pub":-5,"mol/fail/hidden":-4},"mol/wire/pub/sub":{"mol/wire/pub":-1,"mol/wire/sub":-1,"mol/wire/cursor":-2,"mol/wire":-3,"mol/fail":-3,"mol/dev/format":-2},"mol/dev/format":{"mol/dev":-9007199254740991},"mol/dev":{"mol":-9007199254740991},"mol/after/frame":{"mol/after":-9007199254740991,"mol/after/timeout":-1},"mol/after":{"mol":-9007199254740991},"mol/after/timeout":{"mol/after":-9007199254740991,"mol/object2":-1},"mol/promise/like":{"mol/promise":-9007199254740991},"mol/promise":{"mol":-9007199254740991},"mol/key":{"mol":-9007199254740991,"mol/guid":-3},"mol/guid":{"mol":-9007199254740991},"mol/wire/method":{"mol/wire":-9007199254740991,"mol/wire/task":-2},"mol/wire/task":{"mol/wire":-4,"mol/wire/fiber":-1,"mol/compare/deep":-5,"mol/log3":-5,"mol/promise/like":-3,"mol/wire/cursor":-3},"mol/compare/deep":{"mol/compare":-9007199254740991},"mol/compare":{"mol":-9007199254740991},"mol/log3":{"mol":-9007199254740991,"mol/log3/log3.ts":0,"mol/tree2/from/json":-3,"mol/term/color":-1},"mol/log3/log3.ts":{},"mol/tree2/from/json":{"mol/tree2/from":-9007199254740991,"mol/span":-1,"mol/tree2":-1},"mol/tree2/from":{"mol/tree2":-9007199254740991,"mol/tree2/from/string":-2},"mol/tree2":{"mol":-9007199254740991,"mol/span":-2,"mol/fail":-4,"mol/tree2/to/string":-3,"mol/fail/hidden":-4},"mol/span":{"mol":-9007199254740991,"mol/object2":-1,"mol/fail":-3},"mol/tree2/from/string":{"mol/tree2":-1,"mol/span":-2,"mol/fail":-4,"mol/error/syntax":-4},"mol/error/syntax":{"mol/error":-9007199254740991,"mol/span":-3},"mol/error":{"mol":-9007199254740991},"mol/tree2/to/string":{"mol/tree2/to":-9007199254740991},"mol/tree2/to":{},"mol/term/color":{"mol/term":-9007199254740991},"mol/term":{"mol":-9007199254740991},"mol/type/foot":{"mol/type":-9007199254740991,"mol/type/tail":-1.25},"mol/type/tail":{"mol/type":-9007199254740991},"mol/fail/log":{"mol/fail":-9007199254740991,"mol/promise/like":-2,"mol/fail/catch":-2},"mol/fail/catch":{"mol/fail":-9007199254740991,"mol/promise/like":-2,"mol/fail/hidden":-2},"mol/wire/plex":{"mol/wire":-5,"mol/wire/atom":-4,"mol/wire/fiber":-5},"mol/dom/context":{"mol/dom":-9007199254740991,"mol/dom/context/context.ts":0,"node":-1,"mol/exec":-4},"mol/dom":{"mol":-9007199254740991},"mol/dom/context/context.ts":{},"node":{"":-9007199254740991,"node/node.ts":0,"node_modules":-2,"mol/fail/log":-3},"node_modules":{"":-9007199254740991},"mol/exec":{"mol":-9007199254740991,"mol/log3":-2,"node":-2,"mol/env":-4,"mol/fail":-3},"mol/env":{"mol":-9007199254740991,"mol/env/env.ts":0},"mol/env/env.ts":{},"mol/view/selection":{"mol/view":-9007199254740991,"mol/object":-1,"mol/mem":-2,"mol/dom/context":-3,"mol/after/tick":-3},"mol/after/tick":{"mol/after":-9007199254740991,"mol/object2":-1},"mol/memo":{"mol":-9007199254740991,"mol/wrapper":-1},"mol/wrapper":{"mol":-9007199254740991,"mol/object2":-1},"mol/dom/qname":{"mol/dom":-9007199254740991},"mol/wire/probe":{"mol/wire":-9007199254740991,"mol/wire/fiber":-2},"mol/wire/watch":{"mol/wire":-2,"mol/wire/atom":-2,"mol/fail":-3},"mol/const":{"mol":-9007199254740991,"mol/dev/format":-2},"mol/wire/solid":{"mol/wire":-2,"mol/wire/fiber":-2,"mol/wire/pub/sub":-1},"mol/dom/render/attributes":{"mol/dom/render":-9007199254740991},"mol/dom/render":{"mol/dom":-9007199254740991},"mol/dom/render/events":{"mol/dom/render":-9007199254740991},"mol/plugin":{"mol":-9007199254740991,"mol/view/view":-1,"mol/owning":-3,"mol/wire/fiber":-3},"mol/dom/render/styles":{"mol/dom/render":-9007199254740991},"mol/dom/render/children":{"mol/dom/render":-9007199254740991,"mol/dom/context":-3},"mol/dom/render/fields":{"mol/dom/render":-9007199254740991},"mol/wire/async":{"mol/wire":-9007199254740991,"mol/wire/fiber":-2,"mol/wire/task":-2},"mol/type/pick":{"mol/type":-9007199254740991,"mol/type/keys/extract":-3},"mol/type/keys/extract":{"mol/type/keys":-9007199254740991},"mol/type/keys":{"mol/type":-9007199254740991},"mol/style/attach":{"mol/style":-9007199254740991,"mol/after/tick":-1,"mol/dom/context":-2},"mol/style":{"mol":-9007199254740991},"mol/theme":{"mol":-9007199254740991,"mol/style/prop":-1,"mol/style/attach":0},"mol/style/prop":{"mol/style":-9007199254740991,"mol/style/func":-3,"mol/style/properties":-3},"mol/style/func":{"mol/style":-9007199254740991,"mol/style/unit":-1,"mol/decor":-1},"mol/style/unit":{"mol/style":-9007199254740991,"mol/decor":-1},"mol/decor":{"mol":-9007199254740991},"mol/style/properties":{"mol/style":-9007199254740991,"mol/type/override":-1,"mol/style/func":-1,"mol/style/unit":-1},"mol/type/override":{"mol/type":-9007199254740991},"mol/gap":{"mol":-9007199254740991,"mol/style/prop":-1,"mol/style/attach":0},"mol/scroll":{"mol":-9007199254740991,"mol/scroll/scroll.view.tree":0,"mol/mem":-1,"mol/print":-3,"mol/view/view":-1,"mol/scroll/-view.tree/scroll.view.tree.js":0,"mol/style/unit":-1,"mol/style/define":-1},"mol/scroll/scroll.view.tree":{"mol/scroll/-view.tree/scroll.view.tree.js":0},"mol/scroll/-view.tree/scroll.view.tree.js":{"mol/view/view":-1,"mol/mem":-1},"mol/print":{"mol":-9007199254740991,"mol/object":-1,"mol/mem":-2,"mol/dom/listener":-3,"mol/dom/context":-3},"mol/dom/listener":{"mol/dom":-9007199254740991,"mol/object":-1},"mol/style/define":{"mol/style":-9007199254740991,"mol/view/view":-2,"mol/style/guard":-2,"mol/style/attach":-2,"mol/style/sheet":-3},"mol/style/guard":{"mol/style":-9007199254740991,"mol/view/view":-1,"mol/style/properties":-1,"mol/style/pseudo":-1,"mol/type/keys/extract":-1,"mol/type/error":-2},"mol/style/pseudo":{"mol/style":-9007199254740991},"mol/type/error":{"mol/type":-9007199254740991},"mol/style/sheet":{"mol/style":-9007199254740991,"mol/view/view":-2,"mol/style/guard":-2,"mol/dom/qname":-2,"mol/ambient":-2,"mol/func/name":-2},"mol/type/enforce":{"mol/type":-9007199254740991},"mol/page/-view.tree/page.view.tree.js":{"mol/view/view":-1,"mol/scroll":-3,"mol/mem":-1},"mol/theme/auto":{"mol/theme":-3,"mol/theme/auto/auto.view.tree":0,"mol/lights":-3,"mol/plugin":-1,"mol/theme/auto/-view.tree/auto.view.tree.js":0},"mol/theme/auto/auto.view.tree":{"mol/theme/auto/-view.tree/auto.view.tree.js":0},"mol/theme/auto/-view.tree/auto.view.tree.js":{"mol/plugin":-1},"mol/lights":{"mol":-9007199254740991,"mol/state/arg":-2,"mol/state/local":-3},"mol/state/arg":{"mol/state":-9007199254740991,"mol/state/arg/arg.ts":0,"mol/object":-1,"mol/mem":-2,"mol/action":-2},"mol/state":{"mol":-9007199254740991},"mol/action":{"mol":-9007199254740991,"mol/wire/method":-1},"mol/state/local":{"mol/state":-9007199254740991,"mol/object":-1,"mol/dom/context":-4,"mol/mem":-2,"mol/storage":-4,"mol/state/local/local.ts":0,"node":-3,"mol/file":-3},"mol/storage":{"mol":-9007199254740991,"mol/object2":-1,"mol/mem":-2,"mol/dom/context":-3,"mol/mem/persist":-3,"mol/mem/cached":-3,"mol/log3":-5,"mol/wire/sync":-3},"mol/mem/persist":{"mol/mem":-9007199254740991,"mol/wire/solid":-1},"mol/mem/cached":{"mol/mem":-9007199254740991,"mol/wire/probe":-1},"mol/wire/sync":{"mol/wire":-9007199254740991,"mol/wire/task":-4},"mol/state/local/local.ts":{"mol/object":-1,"mol/dom/context":-4,"mol/mem":-2,"mol/storage":-4},"mol/file":{"mol":-9007199254740991,"mol/object":-1,"mol/mem":-2,"mol/fail/hidden":-4,"mol/charset/decode":-4,"mol/charset/encode":-4,"mol/file/file.ts":0,"node":-1,"mol/fail":-2,"mol/const":-4,"mol/fail/log":-3,"mol/action":-2,"mol/mem/cached":-5,"mol/compare/array":-5,"mol/log3":-6},"mol/charset/decode":{"mol/charset":-9007199254740991,"mol/charset/encoding":-1},"mol/charset":{"mol":-9007199254740991},"mol/charset/encoding":{"mol/charset":-9007199254740991},"mol/charset/encode":{"mol/charset":-9007199254740991,"node":-1},"mol/file/file.ts":{"mol/object":-1,"mol/mem":-2,"mol/fail/hidden":-4,"mol/charset/decode":-4,"mol/charset/encode":-4},"mol/compare/array":{"mol/compare":-9007199254740991},"mol/lights/toggle":{"mol/lights":-3,"mol/lights/toggle/toggle.view.tree":0,"mol/check/icon":-1,"mol/icon/brightness/6":-2,"mol/locale":-3,"mol/mem":-1,"mol/lights/toggle/-view.tree/toggle.view.tree.js":0},"mol/lights/toggle/toggle.view.tree":{"mol/lights/toggle/-view.tree/toggle.view.tree.js":0},"mol/lights/toggle/-view.tree/toggle.view.tree.js":{"mol/check/icon":-1,"mol/icon/brightness/6":-3,"mol/locale":-3,"mol/mem":-1},"mol/check/icon":{"mol/check":0,"mol/style/attach":0,"mol/check/icon/icon.view.tree":0,"mol/theme":-1,"mol/check/icon/-view.tree/icon.view.tree.js":0},"mol/check":{"mol":-9007199254740991,"mol/style/attach":0,"mol/check/check.view.tree":0,"mol/maybe":-4,"mol/view":-2,"mol/button/minor":-1,"mol/view/view":-1,"mol/mem":-1,"mol/type/enforce":-1,"mol/check/-view.tree/check.view.tree.js":0},"mol/check/check.view.tree":{"mol/check/-view.tree/check.view.tree.js":0},"mol/check/-view.tree/check.view.tree.js":{"mol/button/minor":-1,"mol/view/view":-3,"mol/mem":-1},"mol/button/minor":{"mol/button":-9007199254740991,"mol/style/attach":0,"mol/button/minor/minor.view.tree":0,"mol/theme":-1,"mol/button/typed":-1,"mol/button/minor/-view.tree/minor.view.tree.js":0},"mol/button":{"mol":-9007199254740991,"mol/button/button.view.tree":0,"mol/mem":-1,"mol/fail/hidden":-4,"mol/keyboard/code":-3,"mol/fail/log":-4,"mol/style/attach":0,"mol/gap":-1,"mol/layer":-1,"mol/view/view":-1,"mol/speck":-1,"mol/type/enforce":-1,"mol/view":-2,"mol/button/-view.tree/button.view.tree.js":0},"mol/button/button.view.tree":{"mol/button/-view.tree/button.view.tree.js":0},"mol/button/-view.tree/button.view.tree.js":{"mol/view/view":-1,"mol/speck":-3,"mol/mem":-1},"mol/speck":{"mol":-9007199254740991,"mol/style/attach":0,"mol/speck/speck.view.tree":0,"mol/layer":-1,"mol/view/view":-1,"mol/theme":-3,"mol/speck/-view.tree/speck.view.tree.js":0},"mol/speck/speck.view.tree":{"mol/speck/-view.tree/speck.view.tree.js":0},"mol/speck/-view.tree/speck.view.tree.js":{"mol/view/view":-1,"mol/theme":-3},"mol/layer":{"mol":-9007199254740991,"mol/style/prop":-1,"mol/style/attach":0},"mol/keyboard/code":{"mol/keyboard":-9007199254740991},"mol/keyboard":{"mol":-9007199254740991},"mol/button/minor/minor.view.tree":{"mol/button/minor/-view.tree/minor.view.tree.js":0},"mol/button/minor/-view.tree/minor.view.tree.js":{"mol/button/typed":-1},"mol/button/typed":{"mol/button":-1,"mol/style/attach":0,"mol/button/typed/typed.view.tree":0,"mol/gap":-1,"mol/theme":-1,"mol/button/typed/-view.tree/typed.view.tree.js":0},"mol/button/typed/typed.view.tree":{"mol/button/typed/-view.tree/typed.view.tree.js":0},"mol/button/typed/-view.tree/typed.view.tree.js":{"mol/button":-1},"mol/maybe":{"mol":-9007199254740991},"mol/check/icon/icon.view.tree":{"mol/check/icon/-view.tree/icon.view.tree.js":0},"mol/check/icon/-view.tree/icon.view.tree.js":{"mol/check":-1},"mol/icon/brightness/6":{"mol/icon/brightness":-9007199254740991,"mol/icon":-1,"mol/icon/brightness/6/-view.tree/6.view.tree.js":0},"mol/icon/brightness":{"mol/icon":-9007199254740991},"mol/icon":{"mol":-9007199254740991,"mol/style/attach":0,"mol/icon/icon.view.tree":0,"mol/theme":-1,"mol/svg/root":-1,"mol/svg/path":-1,"mol/mem":-1,"mol/type/enforce":-1,"mol/icon/-view.tree/icon.view.tree.js":0},"mol/icon/icon.view.tree":{"mol/icon/-view.tree/icon.view.tree.js":0},"mol/icon/-view.tree/icon.view.tree.js":{"mol/svg/root":-1,"mol/svg/path":-3,"mol/mem":-1},"mol/svg/root":{"mol/svg":-1,"mol/style/attach":0,"mol/svg/root/root.view.tree":0,"mol/svg/root/-view.tree/root.view.tree.js":0},"mol/svg":{"mol":-9007199254740991,"mol/svg/svg.view.tree":0,"mol/mem":-2,"mol/dom/context":-3,"mol/state/time":-3,"mol/view/view":-1,"mol/svg/-view.tree/svg.view.tree.js":0},"mol/svg/svg.view.tree":{"mol/svg/-view.tree/svg.view.tree.js":0},"mol/svg/-view.tree/svg.view.tree.js":{"mol/view/view":-1},"mol/state/time":{"mol/state":-9007199254740991,"mol/object":-1,"mol/mem":-2,"mol/after/timeout":-2,"mol/after/frame":-2},"mol/svg/root/root.view.tree":{"mol/svg/root/-view.tree/root.view.tree.js":0},"mol/svg/root/-view.tree/root.view.tree.js":{"mol/svg":-1},"mol/svg/path":{"mol/svg":-1,"mol/svg/path/-view.tree/path.view.tree.js":0},"mol/svg/path/-view.tree/path.view.tree.js":{"mol/svg":-1},"mol/icon/brightness/6/-view.tree/6.view.tree.js":{"mol/icon":-1},"mol/locale":{"mol":-1.25,"mol/object":-1,"mol/mem":-2,"mol/state/local":-3,"mol/dom/context":-3,"mol/file":-3,"mol/fail/catch":-4},"mol/link/source":{"mol/link":-1,"mol/icon/script/text":-2,"mol/locale":-3,"mol/mem":-1,"mol/link/source/-view.tree/source.view.tree.js":0},"mol/link":{"mol":-9007199254740991,"mol/link/link.view.tree":0,"mol/mem":-1,"mol/state/arg":-3,"mol/dom/context":-3,"mol/fail/log":-4,"mol/view/view":-1,"mol/view":-2,"mol/link/-view.tree/link.view.tree.js":0,"mol/style/unit":-1,"mol/style/define":-1,"mol/theme":-2,"mol/gap":-2},"mol/link/link.view.tree":{"mol/link/-view.tree/link.view.tree.js":0},"mol/link/-view.tree/link.view.tree.js":{"mol/view/view":-1,"mol/mem":-1},"mol/icon/script/text":{"mol/icon/script":-9007199254740991,"mol/icon":-1,"mol/icon/script/text/-view.tree/text.view.tree.js":0},"mol/icon/script":{"mol/icon":-1,"mol/icon/script/-view.tree/script.view.tree.js":0},"mol/icon/script/-view.tree/script.view.tree.js":{"mol/icon":-1},"mol/icon/script/text/-view.tree/text.view.tree.js":{"mol/icon":-1},"mol/link/source/-view.tree/source.view.tree.js":{"mol/link":-1,"mol/icon/script/text":-3,"mol/locale":-3,"mol/mem":-1},"mol/button/major":{"mol/button":-9007199254740991,"mol/style/attach":0,"mol/button/major/major.view.tree":0,"mol/button/typed":-1,"mol/theme":-3,"mol/button/major/-view.tree/major.view.tree.js":0},"mol/button/major/major.view.tree":{"mol/button/major/-view.tree/major.view.tree.js":0},"mol/button/major/-view.tree/major.view.tree.js":{"mol/button/typed":-1,"mol/theme":-3},"mol/frame":{"mol":-9007199254740991,"mol/frame/frame.view.tree":0,"mol/embed/native":-1,"mol/mem":-1,"mol/frame/-view.tree/frame.view.tree.js":0,"mol/style/define":-1,"mol/style/unit":-2},"mol/frame/frame.view.tree":{"mol/frame/-view.tree/frame.view.tree.js":0},"mol/frame/-view.tree/frame.view.tree.js":{"mol/embed/native":-1,"mol/mem":-1},"mol/embed/native":{"mol/embed":-9007199254740991,"mol/embed/native/native.view.tree":0,"mol/mem":-1,"mol/wire/solid":-3,"mol/wire/sync":-3,"mol/dom/listener":-3,"mol/dom/context":-4,"mol/wire/async":-4,"mol/wait/timeout":-3,"mol/style/attach":0,"mol/gap":-1,"mol/scroll":-1,"mol/link":-1,"mol/type/enforce":-1,"mol/embed/native/-view.tree/native.view.tree.js":0},"mol/embed":{"mol":-9007199254740991},"mol/embed/native/native.view.tree":{"mol/embed/native/-view.tree/native.view.tree.js":0},"mol/embed/native/-view.tree/native.view.tree.js":{"mol/scroll":-1,"mol/link":-3,"mol/mem":-1},"mol/wait/timeout":{"mol/wait":-9007199254740991,"mol/promise/promise":-2,"mol/after/timeout":-2,"mol/wire/sync":-2},"mol/wait":{"mol":-9007199254740991},"mol/promise/promise":{"mol/promise":-9007199254740991}},"sloc":{"ts":5417,"LICENSE":167,"md":2191,"lock":930,"js":9,"json":134,"tree":390,"CNAME":2,"html":12,"css":361},"deps":{"hyoo/showcase":{"..":-9007199254740991,"./showcase.view.tree":0,"/hyoo/showcase/app":0,"/mol/style/attach":0,"/hyoo/showcase":0,"/hyoo/showcase/scroll":0,"/hyoo/showcase/app/title":0,"/hyoo/showcase/app/container":0,"/hyoo/showcase/app/demo":0,"/mol/theme/line":-1,"/hyoo/showcase/offer/link":0,"/mol/page":-1,"/mol/theme/auto":-2,"/mol/lights/toggle":-2,"/mol/link/source":-1,"/mol/locale/text":-3,"/hyoo/showcase/offer/title":-3,"/mol/button/major":-1,"/mol/link":-1,"/hyoo/showcase/app/widgets/title":-3,"/hyoo/showcase/app/scout/title":-3,"/hyoo/showcase/app/piterjs/title":-3,"/hyoo/showcase/app/shelter/title":-3,"/hyoo/showcase/app/fallacy/title":-3,"/hyoo/showcase/app/toys/title":-3,"/hyoo/showcase/app/calc/title":-3,"/hyoo/showcase/app/notes/title":-3,"/hyoo/showcase/app/invest/title":-3,"/hyoo/showcase/app/todomvc/title":-3,"/hyoo/showcase/app/life/title":-3,"/hyoo/showcase/app/habhub/title":-3,"/hyoo/showcase/app/questions/title":-3,"/hyoo/showcase/app/slides/title":-3,"/hyoo/showcase/app/iq/title":-3,"/hyoo/showcase/app/rdf/title":-3,"/hyoo/showcase/app/lamps/title":-3,"/hyoo/showcase/app/bench/title":-3,"/hyoo/showcase/app/request/title":-3,"/hyoo/showcase/app/jsperf/title":-3,"/hyoo/showcase/app/issues/title":-3,"/hyoo/showcase/app/tree/title":-3,"/hyoo/showcase/app/icons/title":-3,"/hyoo/showcase/app/portal/title":-3,"/mol/scroll":-1,"/mol/theme/dark":-3,"/hyoo/showcase/title":-3,"/mol/mem":-1,"/hyoo/showcase/prototype":-1,"/mol/view":-1,"/mol/frame":-1,"/hyoo/showcase/app/prototype":-1,"/mol/type/enforce":-1,"/hyoo/showcase/-view.tree/showcase.view.tree.js":0},"hyoo":{"..":-9007199254740991},"":{},"hyoo/showcase/showcase.view.tree":{"/hyoo/showcase/-view.tree/showcase.view.tree.js":0},"hyoo/showcase/-view.tree/showcase.view.tree.js":{"/hyoo/showcase":-1,"/mol/page":-1,"/mol/theme/auto":-3,"/mol/lights/toggle":-3,"/mol/link/source":-3,"/mol/locale/text":-3,"/hyoo/showcase/offer/title":-3,"/mol/button/major":-3,"/mol/link":-1,"/hyoo/showcase/app/widgets/title":-3,"/hyoo/showcase/app":-1,"/hyoo/showcase/app/scout/title":-3,"/hyoo/showcase/app/piterjs/title":-3,"/hyoo/showcase/app/shelter/title":-3,"/hyoo/showcase/app/fallacy/title":-3,"/hyoo/showcase/app/toys/title":-3,"/hyoo/showcase/app/calc/title":-3,"/hyoo/showcase/app/notes/title":-3,"/hyoo/showcase/app/invest/title":-3,"/hyoo/showcase/app/todomvc/title":-3,"/hyoo/showcase/app/life/title":-3,"/hyoo/showcase/app/habhub/title":-3,"/hyoo/showcase/app/questions/title":-3,"/hyoo/showcase/app/slides/title":-3,"/hyoo/showcase/app/iq/title":-3,"/hyoo/showcase/app/rdf/title":-3,"/hyoo/showcase/app/lamps/title":-3,"/hyoo/showcase/app/bench/title":-3,"/hyoo/showcase/app/request/title":-3,"/hyoo/showcase/app/jsperf/title":-3,"/hyoo/showcase/app/issues/title":-3,"/hyoo/showcase/app/tree/title":-3,"/hyoo/showcase/app/icons/title":-3,"/hyoo/showcase/app/portal/title":-3,"/mol/scroll":-3,"/mol/theme/dark":-3,"/hyoo/showcase/title":-3,"/mol/mem":-1,"/hyoo/showcase/prototype":-1,"/mol/view":-3,"/mol/frame":-3,"/hyoo/showcase/app/prototype":-1},"mol/page":{"..":-9007199254740991,"/mol/page":-1,"/mol/view":-1,"/mol/scroll":-1,"/mol/mem":-1,"/mol/page/prototype":-1,"/mol/type/enforce":-1,"/mol/page/body/scroll/top":-1,"/mol/view/content":-2,"/mol/page/-view.tree/page.view.tree.js":0,"/mol/style/unit":-1,"/mol/style/func":-1,"/mol/style/define":-1,"/mol/theme/text":-2,"/mol/gap/block":-3,"/mol/theme/card":-4,"/mol/gap/round":-4,"/mol/gap/text":-3},"mol":{"..":-9007199254740991},"mol/view/view":{"..":-9007199254740991,"/mol/view/content":-1,"/mol/view":0,"/mol/view/visible/width":-1,"/mol/window/size":-2,"/mol/view/visible/height":-1,"/mol/view/state/key":-1,"/mol/object":-1,"/mol/mem/key":-2,"/mol/mem":-2,"/mol/fail/log":-4,"/mol/dom/context/document/query/selector/all":-3,"/mol/view/selection/focused":-3,"/mol/memo/method":-2,"/mol/dom/qname":-3,"/mol/wire/probe":-3,"/mol/wire/watch":-4,"/mol/dom/context/document/create/element":-3,"/mol/const":-3,"/mol/wire/solid":-3,"/mol/dom/render/attributes":-3,"/mol/dom/render/events":-3,"/mol/plugin":-6,"/mol/promise/like":-4,"/mol/dom/render/styles":-3,"/mol/dom/context":-3,"/mol/dom/render/children":-3,"/mol/dom/render/fields":-3,"/mol/func/name":-4,"/mol/owning/get":-3,"/mol/wire/fiber":-3,"/mol/wire/async":-3,"/mol/dev/format/head":-2,"/mol/dev/format/span":-3,"/mol/dev/format/native":-4,"/mol/fail/hidden":-4,"/mol/after/frame":-3,"/mol/view/all":-1,"/mol/type/pick":-1,"/mol/style/attach":0,"/mol/theme/line":-1,"/mol/gap/round":-1,"/mol/view/root":0,"/mol/theme/back":-1,"/mol/theme/text":-1,"/mol/view/error":0,"/mol/theme/hover":-1},"mol/view":{"..":-9007199254740991},"mol/window":{"..":-9007199254740991,"./window.ts":0,"/mol/window":-1,"/mol/object":-1},"mol/object":{"..":-9007199254740991,"/mol/object/field":-1,"/mol/object":-1,"/mol/object2":-1},"mol/object2":{"..":-9007199254740991,"/mol/object2":-1,"/mol/ambient/ref":-2,"/mol/owning/get":-3,"/mol/fail/hidden":-3,"/mol/type/writable":-3,"/mol/func/name":-3},"mol/ambient":{"..":-9007199254740991,"/mol/ambient/ref":-1,"/mol/ambient/context":-1,"/mol/ambient":-1},"mol/owning":{"..":-9007199254740991,"/mol/owning/map":-1,"/mol/owning/allow":-1,"/mol/delegate":-3,"/mol/owning/get":-1,"/mol/owning/map/get":-2,"/mol/owning/check":-1,"/mol/owning/catch":-1,"/mol/owning/map/set":-2},"mol/delegate":{"..":-9007199254740991,"/mol/delegate":-1},"mol/fail/hidden":{"..":-9007199254740991,"/mol/fail/hidden":-1},"mol/fail":{"..":-9007199254740991,"/mol/fail":-1},"mol/type/writable":{"..":-9007199254740991,"/mol/type/writable":-1},"mol/type":{"..":-9007199254740991},"mol/func/name":{"..":-9007199254740991,"/mol/func/name":-1,"/mol/func/name/from":-1},"mol/func":{"..":-9007199254740991},"mol/mem":{"..":-9007199254740991,"/mol/mem":-1,"/mol/wire/solo":-1,"/mol/mem/key":-1,"/mol/wire/plex":-1},"mol/wire/solo":{"..":-9007199254740991,"/mol/wire/solo":-1,"/mol/wire/atom/solo":-4,"/mol/wire/fiber/warm":-5,"/mol/wire/auto":-5,"/mol/type/tail":-2},"mol/wire":{"..":-9007199254740991,"/mol/wire/auto/sub":-1,"/mol/wire/sub":-1,"/mol/wire/auto":-1,"/mol/wire/affected":-1},"mol/wire/sub":{"..":-9007199254740991,"/mol/wire/sub":-1,"/mol/wire/pub":-1,"/mol/wire/cursor":-2},"mol/wire/pub":{"..":-9007199254740991,"/mol/wire/pub":-1,"/mol/wire/sub":-3,"/mol/fail":-4,"/mol/wire/auto":-3,"/mol/wire/cursor/stale":-2},"mol/wire/cursor":{"..":-9007199254740991,"/mol/wire/cursor":-1},"mol/wire/atom":{"..":-9007199254740991,"/mol/wire/atom":-1,"/mol/wire/fiber":-1,"/mol/func/name":-3,"/mol/key":-3,"/mol/after/frame":-2,"/mol/wire/atom/watcher":-3,"/mol/wire/atom/watch":-3,"/mol/wire/atom/watching":-3,"/mol/wire/cursor/final":-4,"/mol/wire/atom/watching/delete":-5,"/mol/wire/cursor/stale":-5,"/mol/wire/atom/watching/add":-3,"/mol/wire/method":-2,"/mol/type/foot":-3,"/mol/wire/fiber/warm":-4,"/mol/wire/auto":-4,"/mol/owning/check":-3,"/mol/compare/deep":-5,"/mol/fail/log":-5,"/mol/owning/catch":-4,"/mol/wire/cursor/fresh":-3,"/mol/promise/like":-3},"mol/wire/fiber":{"..":-9007199254740991,"/mol/wire/fiber":-1,"/mol/wire/pub/sub":-1,"/mol/after/frame":-2,"/mol/wire/fiber/plan/task":-5,"/mol/wire/cursor/final":-3,"/mol/promise/like":-3,"/mol/wire/fiber/planning/add":-3,"/mol/wire/fiber/plan":-3,"/mol/wire/fiber/reaping/add":-3,"/mol/dev/format/head":-2,"/mol/wire/cursor/stale":-2,"/mol/wire/cursor/doubt":-3,"/mol/wire/cursor/fresh":-3,"/mol/dev/format/div":-3,"/mol/owning/check":-4,"/mol/dev/format/auto":-4,"/mol/dev/format/shade":-5,"/mol/dev/format/body":-6,"/mol/dev/format/native":-5,"/mol/wire/pub":-5,"/mol/wire/fiber/warm":-3,"/mol/fail/hidden":-4},"mol/wire/pub/sub":{"..":-9007199254740991,"/mol/wire/pub/sub":-1,"/mol/wire/pub":-1,"/mol/wire/sub":-1,"/mol/wire/cursor/stale":-2,"/mol/wire/auto":-3,"/mol/fail":-3,"/mol/wire/cursor/fresh":-3,"/mol/wire/cursor/final":-3,"/mol/wire/cursor/doubt":-3,"/mol/dev/format/head":-2,"/mol/dev/format/native":-3},"mol/dev/format":{"..":-9007199254740991,"/mol/dev/format/register":-1,"/mol/dev/format/head":-1,"/mol/dev/format/body":-1,"/mol/dev/format/accent":-1,"/mol/dev/format/native":-1,"/mol/dev/format/shade":-1,"/mol/dev/format/auto":-1,"/mol/dev/format/element":-1,"/mol/dev/format/span":-1,"/mol/dev/format/div":-1,"/mol/dev/format/element/bind":-1,"/mol/dev/format/ol":-1,"/mol/dev/format/li":-1,"/mol/dev/format/table":-1,"/mol/dev/format/tr":-1,"/mol/dev/format/td":-1,"/mol/dev/format/span/bind":-1,"/mol/dev/format/strong":-1,"/mol/dev/format/string":-1,"/mol/dev/format/indent":-1,"/mol/dev/format/div/bind":-1},"mol/dev":{"..":-9007199254740991},"mol/after/frame":{"..":-9007199254740991,"./frame.ts":0,"/mol/after/frame":-1,"/mol/after/timeout":-1},"mol/after":{"..":-9007199254740991},"mol/after/timeout":{"..":-9007199254740991,"/mol/after/timeout":-1,"/mol/object2":-1},"mol/promise/like":{"..":-9007199254740991,"/mol/promise/like":-1},"mol/promise":{"..":-9007199254740991},"mol/key":{"..":-9007199254740991,"/mol/key/store":-1,"/mol/key":-1,"/mol/key/store/get":-3,"/mol/guid":-3,"/mol/key/store/set":-3},"mol/guid":{"..":-9007199254740991,"/mol/guid":-1},"mol/wire/method":{"..":-9007199254740991,"/mol/wire/method":-1,"/mol/wire/task/getter":-2},"mol/wire/task":{"..":-9007199254740991,"/mol/wire/task":-1,"/mol/wire/fiber":-1,"/mol/wire/task/get":-3,"/mol/wire/auto":-4,"/mol/compare/deep":-5,"/mol/log3/warn":-5,"/mol/promise/like":-3,"/mol/wire/cursor/fresh":-4,"/mol/wire/cursor/final":-3},"mol/compare/deep":{"..":-9007199254740991,"/mol/compare/deep/cache":-1,"/mol/compare/deep":-1,"/mol/compare/deep/cache/get":-2,"/mol/compare/deep/cache/set":-3},"mol/compare":{"..":-9007199254740991},"mol/log3":{"..":-9007199254740991,"/mol/log3/event":-1,"/mol/log3/logger":-1,"/mol/log3/come":-1,"/mol/log3/done":-1,"/mol/log3/fail":-1,"/mol/log3/warn":-1,"/mol/log3/rise":-1,"/mol/log3/area":-1,"/mol/log3/area/lazy":-1,"/mol/log3/stack":-1,"/mol/log3/area/call":-3,"./log3.ts":0,"/mol/log3/node/make":-1,"/mol/tree2/from/json":-3,"/mol/term/color/blue":-1,"/mol/term/color/green":-1,"/mol/term/color/red":-1,"/mol/term/color/yellow":-1,"/mol/term/color/magenta":-1,"/mol/term/color/cyan":-1},"mol/log3/log3.ts":{"/mol/log3/event":-1,"/mol/log3/logger":-1,"/mol/log3/come":-1,"/mol/log3/done":-1,"/mol/log3/fail":-1,"/mol/log3/warn":-1,"/mol/log3/rise":-1,"/mol/log3/area":-1,"/mol/log3/area/lazy":-1,"/mol/log3/stack":-1,"/mol/log3/area/call":-3},"mol/tree2/from/json":{"..":-9007199254740991,"/mol/tree2/from/json":-1,"/mol/span/unknown":-1,"/mol/tree2":-1,"/mol/tree2/data":-3},"mol/tree2/from":{"..":-9007199254740991},"mol/tree2":{"..":-9007199254740991,"/mol/tree2/path":-1,"/mol/tree2/hack":-1,"/mol/tree2":-1,"/mol/tree2/belt":-1,"/mol/span":-2,"/mol/span/unknown":-3,"/mol/tree2/list":-3,"/mol/tree2/data":-3,"/mol/fail":-4,"/mol/tree2/struct":-3,"/mol/tree2/from/string":-2,"/mol/tree2/to/string":-3,"/mol/fail/hidden":-4,"/mol/tree2/empty":-1},"mol/span":{"..":-9007199254740991,"/mol/span":-1,"/mol/object2":-1,"/mol/span/begin":-2,"/mol/fail":-3},"mol/tree2/from/string":{"..":-9007199254740991,"/mol/tree2/from/string":-1,"/mol/tree2":-1,"/mol/span/entire":-2,"/mol/tree2/list":-2,"/mol/fail":-4,"/mol/error/syntax":-4},"mol/error/syntax":{"..":-9007199254740991,"/mol/error/syntax":-1,"/mol/span":-3},"mol/error":{"..":-9007199254740991},"mol/tree2/to/string":{"..":-9007199254740991,"/mol/tree2/to/string":-1,"/mol/tree2":-2},"mol/tree2/to":{"..":-9007199254740991},"mol/term/color":{"..":-9007199254740991,"/mol/term/color":-1},"mol/term":{"..":-9007199254740991},"mol/type/foot":{"..":-9007199254740991,"/mol/type/tail":-1.25,"/mol/type/foot":-1},"mol/type/tail":{"..":-9007199254740991,"/mol/type/tail":-1},"mol/fail/log":{"..":-9007199254740991,"/mol/fail/log":-1,"/mol/promise/like":-2,"/mol/fail/catch":-2},"mol/fail/catch":{"..":-9007199254740991,"/mol/fail/catch":-1,"/mol/promise/like":-2,"/mol/fail/hidden":-2},"mol/wire/plex":{"..":-9007199254740991,"/mol/wire/plex":-1,"/mol/wire/atom/plex":-4,"/mol/wire/fiber/warm":-5,"/mol/wire/auto":-5},"mol/dom/context":{"..":-9007199254740991,"/mol/dom/context":-1,"./context.ts":0,"/node/jsdom":-1},"mol/dom":{"..":-9007199254740991},"mol/dom/context/context.ts":{"/mol/dom/context":-1},"node":{"..":-9007199254740991,"./node.ts":0,"/node":0,"module":-2,"path":-2,"fs":-2,"/mol/exec":-4,"/mol/fail/log":-3},"node/node.ts":{},"node_modules":{"..":-9007199254740991},"mol/exec":{"..":-9007199254740991,"./exec.ts":0,"/mol/exec":-1,"/mol/log3/come":-2,"/node/path/relative":-3,"/node/child_process":-2,"/node/path/resolve":-4,"/mol/env":-4,"/mol/fail":-3},"mol/env":{"..":-9007199254740991,"/mol/env":-1,"./env.ts":0},"mol/env/env.ts":{"/mol/env":-1},"mol/view/selection":{"..":-9007199254740991,"/mol/view/selection":-1,"/mol/object":-1,"/mol/mem":-2,"/mol/dom/context/document/active/element":-3,"/mol/after/tick":-3,"/mol/dom/context/blur":-4},"mol/after/tick":{"..":-9007199254740991,"/mol/after/tick":-1,"/mol/object2":-1},"mol/memo":{"..":-9007199254740991,"/mol/memo":-1,"/mol/wrapper":-1},"mol/wrapper":{"..":-9007199254740991,"/mol/wrapper":-1,"/mol/object2":-1},"mol/dom/qname":{"..":-9007199254740991,"/mol/dom/qname":-1},"mol/wire/probe":{"..":-9007199254740991,"/mol/wire/probe":-1,"/mol/wire/fiber/warm":-2},"mol/wire/watch":{"..":-9007199254740991,"/mol/wire/watch":-1,"/mol/wire/auto":-2,"/mol/wire/atom":-2,"/mol/fail":-3},"mol/const":{"..":-9007199254740991,"/mol/const":-1,"/mol/dev/format/head":-2,"/mol/dev/format/span":-2,"/mol/dev/format/auto":-2},"mol/wire/solid":{"..":-9007199254740991,"/mol/wire/solid":-1,"/mol/wire/auto":-2,"/mol/wire/fiber":-2,"/mol/wire/pub/sub":-1},"mol/dom/render/attributes":{"..":-9007199254740991,"/mol/dom/render/attributes":-1},"mol/dom/render":{"..":-9007199254740991},"mol/dom/render/events":{"..":-9007199254740991,"/mol/dom/render/events":-1},"mol/plugin":{"..":-9007199254740991,"/mol/plugin":-1,"/mol/view":-1,"/mol/owning/get":-3,"/mol/wire/fiber":-3},"mol/dom/render/styles":{"..":-9007199254740991,"/mol/dom/render/styles":-1},"mol/dom/render/children":{"..":-9007199254740991,"/mol/dom/render/children":-1,"/mol/dom/context":-3,"/mol/dom/context/document/create/text/node":-5},"mol/dom/render/fields":{"..":-9007199254740991,"/mol/dom/render/fields":-1},"mol/wire/async":{"..":-9007199254740991,"/mol/wire/async":-1,"/mol/wire/fiber":-2,"/mol/wire/task/getter":-2},"mol/type/pick":{"..":-9007199254740991,"/mol/type/pick":-1,"/mol/type/keys/extract":-3},"mol/type/keys/extract":{"..":-9007199254740991,"/mol/type/keys/extract":-1},"mol/type/keys":{"..":-9007199254740991},"mol/style/attach":{"..":-9007199254740991,"/mol/after/tick":-1,"/mol/style/attach/force":-1,"/mol/style/attach":-1,"/mol/dom/context/document":-2},"mol/style":{"..":-9007199254740991},"mol/theme":{"..":-9007199254740991,"/mol/theme":0,"/mol/style/prop":-1,"/mol/style/attach":0,"/mol/theme/dark":-0.25,"/mol/theme/light":-0.25,"/mol/theme/base":-0.25,"/mol/theme/accent":-0.25,"/mol/theme/current":-0.25,"/mol/theme/special":-0.25,"/mol/theme/hue":-1,"/mol/theme/hue/spread":-1,"/mol/theme/text":-1,"/mol/theme/back":-1,"/mol/theme/luma":-1,"/mol/theme/image":-1,"/mol/theme/card":-1,"/mol/theme/field":-1,"/mol/theme/hover":-1,"/mol/theme/shade":-1,"/mol/theme/line":-1,"/mol/theme/focus":-1,"/mol/theme/control":-1},"mol/style/prop":{"..":-9007199254740991,"/mol/style/prop/result":-1,"/mol/style/func":-3,"/mol/style/prop":-1,"/mol/style/func/vary":-3},"mol/style/func":{"..":-9007199254740991,"/mol/style/func/name":-1,"/mol/style/func/image":-1,"/mol/style/func/filter":-1,"/mol/style/unit":-1,"/mol/style/func":-1,"/mol/decor":-1,"/mol/style/unit/str":-2,"/mol/style/unit/length":-2,"/mol/style/properties/color":-3,"/mol/style/unit/angle":-2},"mol/style/unit":{"..":-9007199254740991,"/mol/style/unit/length":-1,"/mol/style/unit/angle":-1,"/mol/style/unit/time":-1,"/mol/style/unit/any":-1,"/mol/style/unit/str":-1,"/mol/style/unit":-1,"/mol/decor":-1},"mol/decor":{"..":-9007199254740991,"/mol/decor":-1},"mol/style/properties":{"..":-9007199254740991,"/mol/style/properties":-1,"/mol/type/override":-1,"/mol/style/func":-1,"/mol/style/properties/color":-1,"/mol/style/unit/length":-1,"/mol/style/unit/str":-3,"/mol/style/unit/time":-3,"/mol/style/func/filter":-2,"/mol/style/func/image":-3},"mol/type/override":{"..":-9007199254740991,"/mol/type/override":-1},"mol/gap":{"..":-9007199254740991,"/mol/gap":-1,"/mol/style/prop":-1,"/mol/style/attach":0,"/mol/gap/block":-1,"/mol/gap/text":-1,"/mol/gap/round":-1,"/mol/gap/space":-1,"/mol/gap/blur":-1},"mol/scroll":{"..":-9007199254740991,"./scroll.view.tree":0,"/mol/scroll":-1,"/mol/mem":-1,"/mol/print/active":-3,"/mol/view":-1,"/mol/scroll/prototype":-1,"/mol/scroll/-view.tree/scroll.view.tree.js":0,"/mol/style/unit":-1,"/mol/style/define":-1},"mol/scroll/scroll.view.tree":{"/mol/scroll/-view.tree/scroll.view.tree.js":0},"mol/scroll/-view.tree/scroll.view.tree.js":{"/mol/scroll":-1,"/mol/view":-1,"/mol/mem":-1,"/mol/scroll/prototype":-1},"mol/print":{"..":-9007199254740991,"/mol/print":-1,"/mol/object":-1,"/mol/mem":-2,"/mol/dom/listener":-3,"/mol/dom/context":-3},"mol/dom/listener":{"..":-9007199254740991,"/mol/dom/listener":-1,"/mol/object":-1},"mol/style/define":{"..":-9007199254740991,"/mol/style/define":-1,"/mol/view":-2,"/mol/style/guard":-2,"/mol/style/attach":-2,"/mol/style/sheet":-3},"mol/style/guard":{"..":-9007199254740991,"/mol/view":-1,"/mol/style/guard":-1,"/mol/style/properties":-1,"/mol/style/pseudo/element":-1,"/mol/style/pseudo/class":-1,"/mol/type/keys/extract":-1,"/mol/type/error":-2},"mol/style/pseudo":{"..":-9007199254740991,"/mol/style/pseudo/class":-1,"/mol/style/pseudo/element":-1},"mol/type/error":{"..":-9007199254740991,"/mol/type/error":-1},"mol/style/sheet":{"..":-9007199254740991,"/mol/style/sheet":-1,"/mol/view":-2,"/mol/style/guard":-2,"/mol/dom/qname":-2,"/mol/ambient":-2,"/mol/func/name":-2},"mol/type/enforce":{"..":-9007199254740991,"/mol/type/enforce":-1},"mol/page/-view.tree/page.view.tree.js":{"/mol/page":-1,"/mol/view":-1,"/mol/scroll":-3,"/mol/mem":-1,"/mol/page/prototype":-1},"mol/theme/auto":{"..":-9007199254740991,"./auto.view.tree":0,"/mol/theme/auto":-1,"/mol/lights":-3,"/mol/theme/light":-3,"/mol/theme/dark":-3,"/mol/plugin":-1,"/mol/theme/auto/-view.tree/auto.view.tree.js":0},"mol/theme/auto/auto.view.tree":{"/mol/theme/auto/-view.tree/auto.view.tree.js":0},"mol/theme/auto/-view.tree/auto.view.tree.js":{"/mol/theme/auto":-1,"/mol/plugin":-1},"mol/lights":{"..":-9007199254740991,"/mol/lights":-1,"/mol/state/arg/value":-2,"/mol/state/local/value":-3},"mol/state/arg":{"..":-9007199254740991,"./arg.ts":0,"/mol/state/arg":-1,"/mol/object":-1,"/mol/mem":-2,"/mol/mem/key":-2,"/mol/action":-2},"mol/state":{"..":-9007199254740991},"mol/state/arg/arg.ts":{},"mol/action":{"..":-9007199254740991,"/mol/action":-1,"/mol/wire/method":-1},"mol/state/local":{"..":-9007199254740991,"/mol/state/local":-1,"/mol/object":-1,"/mol/dom/context/local/storage":-4,"/mol/mem":-2,"/mol/mem/key":-2,"/mol/storage/persisted":-4,"/mol/state/local/value":-3,"./local.ts":0,"/mol/state/local/node":-1,"/node/os/homedir":-3,"/mol/file/absolute":-3},"mol/storage":{"..":-9007199254740991,"/mol/storage":-1,"/mol/object2":-1,"/mol/mem":-2,"/mol/dom/context/navigator/storage":-3,"/mol/mem/persist":-3,"/mol/mem/cached":-3,"/mol/log3/done":-5,"/mol/log3/fail":-5,"/mol/wire/sync":-3},"mol/mem/persist":{"..":-9007199254740991,"/mol/mem/persist":-1,"/mol/wire/solid":-1},"mol/mem/cached":{"..":-9007199254740991,"/mol/mem/cached":-1,"/mol/wire/probe":-1},"mol/wire/sync":{"..":-9007199254740991,"/mol/wire/sync":-1,"/mol/wire/task/getter":-4},"mol/state/local/local.ts":{"/mol/state/local":-1,"/mol/object":-1,"/mol/dom/context/local/storage":-4,"/mol/mem":-2,"/mol/mem/key":-2,"/mol/storage/persisted":-4,"/mol/state/local/value":-3},"mol/file":{"..":-9007199254740991,"/mol/file/type":-1,"/mol/file/stat":-1,"/mol/file/not/found":-1,"/mol/file":-1,"/mol/object":-1,"/mol/mem/key":-2,"/mol/fail/hidden":-4,"/mol/file/web/watcher":-3,"/mol/mem":-2,"/mol/charset/decode":-4,"/mol/charset/encode":-4,"./file.ts":0,"/node/fs/stat/sync":-1,"/mol/fail":-2,"/mol/file/mode/open":-1,"/node/fs/constants":-2,"/mol/file/node":-1,"/mol/const":-4,"/node/path/resolve":-3,"/node/chokidar/watch":-3,"/mol/file/relative":-4,"/mol/fail/log":-3,"/node/fs/mkdir/sync":-4,"/mol/action":-2,"/node/fs/unlink/sync":-3,"/mol/mem/cached":-5,"/node/fs/read/file/sync":-5,"/mol/compare/array":-5,"/mol/log3/rise":-6,"/node/fs/write/file/sync":-4,"/node/fs/readdir/sync":-4,"/node/path/join":-3,"/node/path/relative":-3,"/node/fs/append/file/sync":-4,"/node/fs/open/sync":-3},"mol/charset/decode":{"..":-9007199254740991,"/mol/charset/encoding":-1,"/mol/charset/decode":-1},"mol/charset":{"..":-9007199254740991},"mol/charset/encoding":{"..":-9007199254740991,"/mol/charset/encoding":-1},"mol/charset/encode":{"..":-9007199254740991,"/node/util":-1,"/mol/charset/encode":-1},"mol/file/file.ts":{"/mol/file/type":-1,"/mol/file/stat":-1,"/mol/file/not/found":-1,"/mol/file":-1,"/mol/object":-1,"/mol/mem/key":-2,"/mol/fail/hidden":-4,"/mol/file/web/watcher":-3,"/mol/mem":-2,"/mol/charset/decode":-4,"/mol/charset/encode":-4},"mol/compare/array":{"..":-9007199254740991,"/mol/compare/array":-1},"mol/lights/toggle":{"..":-9007199254740991,"./toggle.view.tree":0,"/mol/lights/toggle":-1,"/mol/lights":-3,"/mol/check/icon":-1,"/mol/icon/brightness/6":-2,"/mol/locale/text":-3,"/mol/lights/toggle/hint":-3,"/mol/mem":-1,"/mol/lights/toggle/prototype":-1,"/mol/lights/toggle/-view.tree/toggle.view.tree.js":0},"mol/lights/toggle/toggle.view.tree":{"/mol/lights/toggle/-view.tree/toggle.view.tree.js":0},"mol/lights/toggle/-view.tree/toggle.view.tree.js":{"/mol/lights/toggle":-1,"/mol/check/icon":-1,"/mol/icon/brightness/6":-3,"/mol/locale/text":-3,"/mol/lights/toggle/hint":-3,"/mol/mem":-1,"/mol/lights/toggle/prototype":-1},"mol/check/icon":{"..":-9007199254740991,"/mol/style/attach":0,"./icon.view.tree":0,"/mol/check/icon":0,"/mol/check/checked":0,"/mol/theme/current":-1,"/mol/check":-1,"/mol/check/icon/-view.tree/icon.view.tree.js":0},"mol/check":{"..":-9007199254740991,"/mol/style/attach":0,"/mol/check":0,"/mol/check/title":0,"./check.view.tree":0,"/mol/maybe":-4,"/mol/view/content":-2,"/mol/button/minor":-1,"/mol/view":-1,"/mol/mem":-1,"/mol/check/prototype":-1,"/mol/type/enforce":-1,"/mol/check/-view.tree/check.view.tree.js":0},"mol/check/check.view.tree":{"/mol/check/-view.tree/check.view.tree.js":0},"mol/check/-view.tree/check.view.tree.js":{"/mol/check":-1,"/mol/button/minor":-1,"/mol/view":-3,"/mol/mem":-1,"/mol/check/prototype":-1},"mol/button/minor":{"..":-9007199254740991,"/mol/style/attach":0,"./minor.view.tree":0,"/mol/button/minor":0,"/mol/theme/control":-1,"/mol/theme/shade":-1,"/mol/button/typed":-1,"/mol/button/minor/-view.tree/minor.view.tree.js":0},"mol/button":{"..":-9007199254740991,"./button.view.tree":0,"/mol/button":0,"/mol/mem":-1,"/mol/fail/hidden":-4,"/mol/keyboard/code/enter":-3,"/mol/fail/log":-4,"/mol/style/attach":0,"/mol/gap/round":-1,"/mol/layer/hover":-1,"/mol/layer/focus":-1,"/mol/view":-1,"/mol/speck":-1,"/mol/button/prototype":-1,"/mol/type/enforce":-1,"/mol/view/content":-2,"/mol/button/-view.tree/button.view.tree.js":0},"mol/button/button.view.tree":{"/mol/button/-view.tree/button.view.tree.js":0},"mol/button/-view.tree/button.view.tree.js":{"/mol/button":-1,"/mol/view":-1,"/mol/speck":-3,"/mol/mem":-1,"/mol/button/prototype":-1},"mol/speck":{"..":-9007199254740991,"/mol/style/attach":0,"./speck.view.tree":0,"/mol/speck":0,"/mol/layer/speck":-1,"/mol/view":-1,"/mol/theme/accent":-3,"/mol/speck/-view.tree/speck.view.tree.js":0},"mol/speck/speck.view.tree":{"/mol/speck/-view.tree/speck.view.tree.js":0},"mol/speck/-view.tree/speck.view.tree.js":{"/mol/speck":-1,"/mol/view":-1,"/mol/theme/accent":-3},"mol/layer":{"..":-9007199254740991,"/mol/layer":-1,"/mol/style/prop":-1,"/mol/style/attach":0,"/mol/layer/hover":-1,"/mol/layer/focus":-1,"/mol/layer/speck":-1,"/mol/layer/float":-1,"/mol/layer/popup":-1},"mol/keyboard/code":{"..":-9007199254740991,"/mol/keyboard/code":-1},"mol/keyboard":{"..":-9007199254740991},"mol/button/minor/minor.view.tree":{"/mol/button/minor/-view.tree/minor.view.tree.js":0},"mol/button/minor/-view.tree/minor.view.tree.js":{"/mol/button/minor":-1,"/mol/button/typed":-1},"mol/button/typed":{"..":-9007199254740991,"/mol/style/attach":0,"./typed.view.tree":0,"/mol/button/typed":0,"/mol/gap/text":-1,"/mol/gap/round":-1,"/mol/gap/space":-1,"/mol/theme/hover":-1,"/mol/theme/focus":-1,"/mol/button":-1,"/mol/button/typed/-view.tree/typed.view.tree.js":0},"mol/button/typed/typed.view.tree":{"/mol/button/typed/-view.tree/typed.view.tree.js":0},"mol/button/typed/-view.tree/typed.view.tree.js":{"/mol/button/typed":-1,"/mol/button":-1},"mol/maybe":{"..":-9007199254740991,"/mol/maybe":-1},"mol/check/icon/icon.view.tree":{"/mol/check/icon/-view.tree/icon.view.tree.js":0},"mol/check/icon/-view.tree/icon.view.tree.js":{"/mol/check/icon":-1,"/mol/check":-1},"mol/icon/brightness/6":{"..":-9007199254740991,"/mol/icon/brightness/6":-1,"/mol/icon":-1,"/mol/icon/brightness/6/-view.tree/6.view.tree.js":0},"mol/icon/brightness":{"..":-9007199254740991},"mol/icon":{"..":-9007199254740991,"/mol/style/attach":0,"./icon.view.tree":0,"/mol/icon":0,"/mol/theme/back":-1,"/mol/icon/path":0,"/mol/svg/root":-1,"/mol/svg/path":-1,"/mol/mem":-1,"/mol/icon/prototype":-1,"/mol/type/enforce":-1,"/mol/icon/-view.tree/icon.view.tree.js":0},"mol/icon/icon.view.tree":{"/mol/icon/-view.tree/icon.view.tree.js":0},"mol/icon/-view.tree/icon.view.tree.js":{"/mol/icon":-1,"/mol/svg/root":-1,"/mol/svg/path":-3,"/mol/mem":-1,"/mol/icon/prototype":-1},"mol/svg/root":{"..":-9007199254740991,"/mol/style/attach":0,"./root.view.tree":0,"/mol/svg/root":0,"/mol/svg":-1,"/mol/svg/root/-view.tree/root.view.tree.js":0},"mol/svg":{"..":-9007199254740991,"./svg.view.tree":0,"/mol/svg":-1,"/mol/mem":-2,"/mol/dom/context":-3,"/mol/state/time/now":-3,"/mol/view":-1,"/mol/svg/-view.tree/svg.view.tree.js":0},"mol/svg/svg.view.tree":{"/mol/svg/-view.tree/svg.view.tree.js":0},"mol/svg/-view.tree/svg.view.tree.js":{"/mol/svg":-1,"/mol/view":-1},"mol/state/time":{"..":-9007199254740991,"/mol/state/time":-1,"/mol/object":-1,"/mol/mem/key":-2,"/mol/after/timeout":-2,"/mol/after/frame":-2},"mol/svg/root/root.view.tree":{"/mol/svg/root/-view.tree/root.view.tree.js":0},"mol/svg/root/-view.tree/root.view.tree.js":{"/mol/svg/root":-1,"/mol/svg":-1},"mol/svg/path":{"..":-9007199254740991,"/mol/svg/path":-1,"/mol/svg":-1,"/mol/svg/path/-view.tree/path.view.tree.js":0},"mol/svg/path/-view.tree/path.view.tree.js":{"/mol/svg/path":-1,"/mol/svg":-1},"mol/icon/brightness/6/-view.tree/6.view.tree.js":{"/mol/icon/brightness/6":-1,"/mol/icon":-1},"mol/locale":{"..":-9007199254740991,"/mol/locale/dict":-1,"/mol":-1.25,"/mol/locale":-1,"/mol/object":-1,"/mol/mem":-2,"/mol/state/local/value":-3,"/mol/dom/context/navigator/language/replace":-3,"/mol/mem/key":-2,"/mol/file/relative":-3,"/mol/fail/catch":-4},"mol/link/source":{"..":-9007199254740991,"/mol/link/source":-1,"/mol/link":-1,"/mol/icon/script/text":-2,"/mol/locale/text":-3,"/mol/link/source/hint":-3,"/mol/mem":-1,"/mol/link/source/prototype":-1,"/mol/link/source/-view.tree/source.view.tree.js":0},"mol/link":{"..":-9007199254740991,"./link.view.tree":0,"/mol/link":-1,"/mol/mem":-1,"/mol/state/arg":-3,"/mol/state/arg/href":-3,"/mol/state/arg/href/normal":-3,"/mol/state/arg/value":-4,"/mol/dom/context/location/origin":-3,"/mol/fail/log":-4,"/mol/view":-1,"/mol/link/prototype":-1,"/mol/view/content":-2,"/mol/link/-view.tree/link.view.tree.js":0,"/mol/style/unit":-1,"/mol/style/define":-1,"/mol/theme/control":-2,"/mol/gap/text":-2,"/mol/gap/space":-2,"/mol/gap/round":-3,"/mol/theme/hover":-4,"/mol/theme/focus":-3,"/mol/theme/current":-5},"mol/link/link.view.tree":{"/mol/link/-view.tree/link.view.tree.js":0},"mol/link/-view.tree/link.view.tree.js":{"/mol/link":-1,"/mol/view":-1,"/mol/mem":-1,"/mol/link/prototype":-1},"mol/icon/script/text":{"..":-9007199254740991,"/mol/icon/script/text":-1,"/mol/icon":-1,"/mol/icon/script/text/-view.tree/text.view.tree.js":0},"mol/icon/script":{"..":-9007199254740991,"/mol/icon/script":-1,"/mol/icon":-1,"/mol/icon/script/-view.tree/script.view.tree.js":0},"mol/icon/script/-view.tree/script.view.tree.js":{"/mol/icon/script":-1,"/mol/icon":-1},"mol/icon/script/text/-view.tree/text.view.tree.js":{"/mol/icon/script/text":-1,"/mol/icon":-1},"mol/link/source/-view.tree/source.view.tree.js":{"/mol/link/source":-1,"/mol/link":-1,"/mol/icon/script/text":-3,"/mol/locale/text":-3,"/mol/link/source/hint":-3,"/mol/mem":-1,"/mol/link/source/prototype":-1},"mol/button/major":{"..":-9007199254740991,"/mol/style/attach":0,"./major.view.tree":0,"/mol/button/major":0,"/mol/button/typed":-1,"/mol/theme/accent":-3,"/mol/button/major/-view.tree/major.view.tree.js":0},"mol/button/major/major.view.tree":{"/mol/button/major/-view.tree/major.view.tree.js":0},"mol/button/major/-view.tree/major.view.tree.js":{"/mol/button/major":-1,"/mol/button/typed":-1,"/mol/theme/accent":-3},"mol/frame":{"..":-9007199254740991,"./frame.view.tree":0,"/mol/frame":-1,"/mol/embed/native":-1,"/mol/mem":-1,"/mol/frame/prototype":-1,"/mol/frame/-view.tree/frame.view.tree.js":0,"/mol/style/define":-1,"/mol/style/unit/vh":-2},"mol/frame/frame.view.tree":{"/mol/frame/-view.tree/frame.view.tree.js":0},"mol/frame/-view.tree/frame.view.tree.js":{"/mol/frame":-1,"/mol/embed/native":-1,"/mol/mem":-1,"/mol/frame/prototype":-1},"mol/embed/native":{"..":-9007199254740991,"./native.view.tree":0,"/mol/embed/native":0,"/mol/mem":-1,"/mol/wire/solid":-3,"/mol/wire/sync":-3,"/mol/dom/listener":-3,"/mol/dom/context":-4,"/mol/wire/async":-4,"/mol/wait/timeout":-3,"/mol/style/attach":0,"/mol/gap/round":-1,"/mol/scroll":-1,"/mol/link":-1,"/mol/embed/native/prototype":-1,"/mol/type/enforce":-1,"/mol/embed/native/-view.tree/native.view.tree.js":0},"mol/embed":{"..":-9007199254740991},"mol/embed/native/native.view.tree":{"/mol/embed/native/-view.tree/native.view.tree.js":0},"mol/embed/native/-view.tree/native.view.tree.js":{"/mol/embed/native":-1,"/mol/scroll":-1,"/mol/link":-3,"/mol/mem":-1,"/mol/embed/native/prototype":-1},"mol/wait/timeout":{"..":-9007199254740991,"/mol/wait/timeout/async":-1,"/mol/promise":-2,"/mol/after/timeout":-2,"/mol/wait/timeout":-1,"/mol/wire/sync":-2},"mol/wait":{"..":-9007199254740991},"mol/promise/promise":{"..":-9007199254740991,"/mol/promise":-1}}} \ No newline at end of file diff --git a/node.js b/node.js index 7af0b45..1ce0182 100644 --- a/node.js +++ b/node.js @@ -3865,36 +3865,6 @@ var $; $.$mol_state_local = $mol_state_local; })($ || ($ = {})); -; -"use strict"; -var $; -(function ($) { - function parse(theme) { - if (theme === 'true') - return true; - if (theme === 'false') - return false; - return null; - } - function $mol_lights(next) { - const arg = parse(this.$mol_state_arg.value('mol_lights')); - const base = false; - if (next === undefined) { - return arg ?? this.$mol_state_local.value('$mol_lights') ?? base; - } - else { - if (arg === null) { - this.$mol_state_local.value('$mol_lights', next === base ? null : next); - } - else { - this.$mol_state_arg.value('mol_lights', String(next)); - } - return next; - } - } - $.$mol_lights = $mol_lights; -})($ || ($ = {})); - ; "use strict"; @@ -3902,513 +3872,439 @@ var $; "use strict"; var $; (function ($) { - var $$; - (function ($$) { - class $mol_theme_auto extends $.$mol_theme_auto { - theme() { - return this.$.$mol_lights() ? '$mol_theme_light' : '$mol_theme_dark'; - } - } - $$.$mol_theme_auto = $mol_theme_auto; - })($$ = $.$$ || ($.$$ = {})); + const decoders = {}; + function $mol_charset_decode(buffer, encoding = 'utf8') { + let decoder = decoders[encoding]; + if (!decoder) + decoder = decoders[encoding] = new TextDecoder(encoding); + return decoder.decode(buffer); + } + $.$mol_charset_decode = $mol_charset_decode; })($ || ($ = {})); -; - ($.$mol_speck) = class $mol_speck extends ($.$mol_view) { - theme(){ - return "$mol_theme_accent"; - } - value(){ - return null; - } - attr(){ - return {...(super.attr()), "mol_theme": (this.theme())}; - } - style(){ - return {...(super.style()), "minHeight": "1em"}; - } - sub(){ - return [(this.value())]; - } - }; - - ; "use strict"; var $; (function ($) { - $.$mol_layer = $mol_style_prop('mol_layer', [ - 'hover', - 'focus', - 'speck', - 'float', - 'popup', - ]); + const TextEncoder = globalThis.TextEncoder ?? $node.util.TextEncoder; + const encoder = new TextEncoder(); + function $mol_charset_encode(value) { + return encoder.encode(value); + } + $.$mol_charset_encode = $mol_charset_encode; })($ || ($ = {})); ; "use strict"; var $; (function ($) { - $mol_style_attach("mol/layer/layer.css", ":root {\n\t--mol_layer_hover: 1;\n\t--mol_layer_focus: 2;\n\t--mol_layer_speck: 3;\n\t--mol_layer_float: 4;\n\t--mol_layer_popup: 5;\n}\n"); + class $mol_file_not_found extends Error { + } + $.$mol_file_not_found = $mol_file_not_found; + class $mol_file extends $mol_object { + static absolute(path) { + throw new Error('Not implemented yet'); + } + static relative(path) { + throw new Error('Not implemented yet'); + } + static base = ''; + path() { + return '.'; + } + parent() { + return this.resolve('..'); + } + reset() { + try { + this.stat(null); + } + catch (error) { + if (error instanceof $mol_file_not_found) + return; + return $mol_fail_hidden(error); + } + } + version() { + return this.stat()?.mtime.getTime().toString(36).toUpperCase() ?? ''; + } + watcher() { + console.warn('$mol_file_web.watcher() not implemented'); + return { + destructor() { } + }; + } + exists(next) { + let exists = Boolean(this.stat()); + if (next === undefined) + return exists; + if (next === exists) + return exists; + if (next) { + this.parent().exists(true); + this.ensure(); + } + else { + this.drop(); + } + this.reset(); + return next; + } + type() { + return this.stat()?.type ?? ''; + } + name() { + return this.path().replace(/^.*\//, ''); + } + ext() { + const match = /((?:\.\w+)+)$/.exec(this.path()); + return match ? match[1].substring(1) : ''; + } + text(next, virt) { + if (virt) { + const now = new Date; + this.stat({ + type: 'file', + size: 0, + atime: now, + mtime: now, + ctime: now, + }, 'virt'); + return next; + } + if (next === undefined) { + return $mol_charset_decode(this.buffer(undefined)); + } + else { + const buffer = next === undefined ? undefined : $mol_charset_encode(next); + this.buffer(buffer); + return next; + } + } + find(include, exclude) { + const found = []; + const sub = this.sub(); + for (const child of sub) { + const child_path = child.path(); + if (exclude && child_path.match(exclude)) + continue; + if (!include || child_path.match(include)) + found.push(child); + if (child.type() === 'dir') { + const sub_child = child.find(include, exclude); + for (const child of sub_child) + found.push(child); + } + } + return found; + } + size() { + switch (this.type()) { + case 'file': return this.stat()?.size ?? 0; + default: return 0; + } + } + open(...modes) { + return 0; + } + toJSON() { + return this.path(); + } + } + __decorate([ + $mol_mem + ], $mol_file.prototype, "exists", null); + __decorate([ + $mol_mem + ], $mol_file.prototype, "text", null); + __decorate([ + $mol_mem_key + ], $mol_file, "absolute", null); + $.$mol_file = $mol_file; })($ || ($ = {})); ; "use strict"; var $; (function ($) { - $mol_style_attach("mol/speck/speck.view.css", "[mol_speck] {\n\tfont-size: .625rem;\n\tborder-radius: 1rem;\n\tmargin: -0.5rem -0.25rem;\n\talign-self: flex-start;\n\tmin-height: 1em;\n\tmin-width: .5em;\n\tvertical-align: sub;\n\tpadding: .25em .5em;\n\tposition: absolute;\n\tz-index: var(--mol_layer_speck);\n\ttext-align: center;\n\tline-height: 1;\n\tdisplay: inline-block;\n\twhite-space: nowrap;\n\ttext-overflow: ellipsis;\n\tuser-select: none;\n}\n"); + function $mol_compare_array(a, b) { + if (a === b) + return true; + if (Object.getPrototypeOf(a) !== Object.getPrototypeOf(b)) + return false; + if (a.length !== b.length) + return false; + for (let i = 0; i < a.length; i++) + if (a[i] !== b[i]) + return false; + return true; + } + $.$mol_compare_array = $mol_compare_array; })($ || ($ = {})); -; -"use strict"; - -; - ($.$mol_button) = class $mol_button extends ($.$mol_view) { - event_activate(next){ - if(next !== undefined) return next; - return null; - } - clicks(next){ - if(next !== undefined) return next; - return null; - } - event_key_press(next){ - if(next !== undefined) return next; - return null; - } - disabled(){ - return false; - } - tab_index(){ - return 0; - } - hint(){ - return ""; - } - hint_safe(){ - return (this.hint()); - } - error(){ - return ""; - } - enabled(){ - return true; - } - click(next){ - if(next !== undefined) return next; - return null; - } - event_click(next){ - if(next !== undefined) return next; - return null; - } - event(){ - return { - ...(super.event()), - "click": (next) => (this.event_activate(next)), - "dblclick": (next) => (this.clicks(next)), - "keydown": (next) => (this.event_key_press(next)) - }; - } - attr(){ - return { - ...(super.attr()), - "disabled": (this.disabled()), - "role": "button", - "tabindex": (this.tab_index()), - "title": (this.hint_safe()) - }; - } - sub(){ - return [(this.title())]; - } - Speck(){ - const obj = new this.$.$mol_speck(); - (obj.value) = () => ((this.error())); - return obj; - } - }; - ($mol_mem(($.$mol_button.prototype), "event_activate")); - ($mol_mem(($.$mol_button.prototype), "clicks")); - ($mol_mem(($.$mol_button.prototype), "event_key_press")); - ($mol_mem(($.$mol_button.prototype), "click")); - ($mol_mem(($.$mol_button.prototype), "event_click")); - ($mol_mem(($.$mol_button.prototype), "Speck")); - - -; -"use strict"; -var $; -(function ($) { - let $mol_keyboard_code; - (function ($mol_keyboard_code) { - $mol_keyboard_code[$mol_keyboard_code["backspace"] = 8] = "backspace"; - $mol_keyboard_code[$mol_keyboard_code["tab"] = 9] = "tab"; - $mol_keyboard_code[$mol_keyboard_code["enter"] = 13] = "enter"; - $mol_keyboard_code[$mol_keyboard_code["shift"] = 16] = "shift"; - $mol_keyboard_code[$mol_keyboard_code["ctrl"] = 17] = "ctrl"; - $mol_keyboard_code[$mol_keyboard_code["alt"] = 18] = "alt"; - $mol_keyboard_code[$mol_keyboard_code["pause"] = 19] = "pause"; - $mol_keyboard_code[$mol_keyboard_code["capsLock"] = 20] = "capsLock"; - $mol_keyboard_code[$mol_keyboard_code["escape"] = 27] = "escape"; - $mol_keyboard_code[$mol_keyboard_code["space"] = 32] = "space"; - $mol_keyboard_code[$mol_keyboard_code["pageUp"] = 33] = "pageUp"; - $mol_keyboard_code[$mol_keyboard_code["pageDown"] = 34] = "pageDown"; - $mol_keyboard_code[$mol_keyboard_code["end"] = 35] = "end"; - $mol_keyboard_code[$mol_keyboard_code["home"] = 36] = "home"; - $mol_keyboard_code[$mol_keyboard_code["left"] = 37] = "left"; - $mol_keyboard_code[$mol_keyboard_code["up"] = 38] = "up"; - $mol_keyboard_code[$mol_keyboard_code["right"] = 39] = "right"; - $mol_keyboard_code[$mol_keyboard_code["down"] = 40] = "down"; - $mol_keyboard_code[$mol_keyboard_code["insert"] = 45] = "insert"; - $mol_keyboard_code[$mol_keyboard_code["delete"] = 46] = "delete"; - $mol_keyboard_code[$mol_keyboard_code["key0"] = 48] = "key0"; - $mol_keyboard_code[$mol_keyboard_code["key1"] = 49] = "key1"; - $mol_keyboard_code[$mol_keyboard_code["key2"] = 50] = "key2"; - $mol_keyboard_code[$mol_keyboard_code["key3"] = 51] = "key3"; - $mol_keyboard_code[$mol_keyboard_code["key4"] = 52] = "key4"; - $mol_keyboard_code[$mol_keyboard_code["key5"] = 53] = "key5"; - $mol_keyboard_code[$mol_keyboard_code["key6"] = 54] = "key6"; - $mol_keyboard_code[$mol_keyboard_code["key7"] = 55] = "key7"; - $mol_keyboard_code[$mol_keyboard_code["key8"] = 56] = "key8"; - $mol_keyboard_code[$mol_keyboard_code["key9"] = 57] = "key9"; - $mol_keyboard_code[$mol_keyboard_code["A"] = 65] = "A"; - $mol_keyboard_code[$mol_keyboard_code["B"] = 66] = "B"; - $mol_keyboard_code[$mol_keyboard_code["C"] = 67] = "C"; - $mol_keyboard_code[$mol_keyboard_code["D"] = 68] = "D"; - $mol_keyboard_code[$mol_keyboard_code["E"] = 69] = "E"; - $mol_keyboard_code[$mol_keyboard_code["F"] = 70] = "F"; - $mol_keyboard_code[$mol_keyboard_code["G"] = 71] = "G"; - $mol_keyboard_code[$mol_keyboard_code["H"] = 72] = "H"; - $mol_keyboard_code[$mol_keyboard_code["I"] = 73] = "I"; - $mol_keyboard_code[$mol_keyboard_code["J"] = 74] = "J"; - $mol_keyboard_code[$mol_keyboard_code["K"] = 75] = "K"; - $mol_keyboard_code[$mol_keyboard_code["L"] = 76] = "L"; - $mol_keyboard_code[$mol_keyboard_code["M"] = 77] = "M"; - $mol_keyboard_code[$mol_keyboard_code["N"] = 78] = "N"; - $mol_keyboard_code[$mol_keyboard_code["O"] = 79] = "O"; - $mol_keyboard_code[$mol_keyboard_code["P"] = 80] = "P"; - $mol_keyboard_code[$mol_keyboard_code["Q"] = 81] = "Q"; - $mol_keyboard_code[$mol_keyboard_code["R"] = 82] = "R"; - $mol_keyboard_code[$mol_keyboard_code["S"] = 83] = "S"; - $mol_keyboard_code[$mol_keyboard_code["T"] = 84] = "T"; - $mol_keyboard_code[$mol_keyboard_code["U"] = 85] = "U"; - $mol_keyboard_code[$mol_keyboard_code["V"] = 86] = "V"; - $mol_keyboard_code[$mol_keyboard_code["W"] = 87] = "W"; - $mol_keyboard_code[$mol_keyboard_code["X"] = 88] = "X"; - $mol_keyboard_code[$mol_keyboard_code["Y"] = 89] = "Y"; - $mol_keyboard_code[$mol_keyboard_code["Z"] = 90] = "Z"; - $mol_keyboard_code[$mol_keyboard_code["metaLeft"] = 91] = "metaLeft"; - $mol_keyboard_code[$mol_keyboard_code["metaRight"] = 92] = "metaRight"; - $mol_keyboard_code[$mol_keyboard_code["select"] = 93] = "select"; - $mol_keyboard_code[$mol_keyboard_code["numpad0"] = 96] = "numpad0"; - $mol_keyboard_code[$mol_keyboard_code["numpad1"] = 97] = "numpad1"; - $mol_keyboard_code[$mol_keyboard_code["numpad2"] = 98] = "numpad2"; - $mol_keyboard_code[$mol_keyboard_code["numpad3"] = 99] = "numpad3"; - $mol_keyboard_code[$mol_keyboard_code["numpad4"] = 100] = "numpad4"; - $mol_keyboard_code[$mol_keyboard_code["numpad5"] = 101] = "numpad5"; - $mol_keyboard_code[$mol_keyboard_code["numpad6"] = 102] = "numpad6"; - $mol_keyboard_code[$mol_keyboard_code["numpad7"] = 103] = "numpad7"; - $mol_keyboard_code[$mol_keyboard_code["numpad8"] = 104] = "numpad8"; - $mol_keyboard_code[$mol_keyboard_code["numpad9"] = 105] = "numpad9"; - $mol_keyboard_code[$mol_keyboard_code["multiply"] = 106] = "multiply"; - $mol_keyboard_code[$mol_keyboard_code["add"] = 107] = "add"; - $mol_keyboard_code[$mol_keyboard_code["subtract"] = 109] = "subtract"; - $mol_keyboard_code[$mol_keyboard_code["decimal"] = 110] = "decimal"; - $mol_keyboard_code[$mol_keyboard_code["divide"] = 111] = "divide"; - $mol_keyboard_code[$mol_keyboard_code["F1"] = 112] = "F1"; - $mol_keyboard_code[$mol_keyboard_code["F2"] = 113] = "F2"; - $mol_keyboard_code[$mol_keyboard_code["F3"] = 114] = "F3"; - $mol_keyboard_code[$mol_keyboard_code["F4"] = 115] = "F4"; - $mol_keyboard_code[$mol_keyboard_code["F5"] = 116] = "F5"; - $mol_keyboard_code[$mol_keyboard_code["F6"] = 117] = "F6"; - $mol_keyboard_code[$mol_keyboard_code["F7"] = 118] = "F7"; - $mol_keyboard_code[$mol_keyboard_code["F8"] = 119] = "F8"; - $mol_keyboard_code[$mol_keyboard_code["F9"] = 120] = "F9"; - $mol_keyboard_code[$mol_keyboard_code["F10"] = 121] = "F10"; - $mol_keyboard_code[$mol_keyboard_code["F11"] = 122] = "F11"; - $mol_keyboard_code[$mol_keyboard_code["F12"] = 123] = "F12"; - $mol_keyboard_code[$mol_keyboard_code["numLock"] = 144] = "numLock"; - $mol_keyboard_code[$mol_keyboard_code["scrollLock"] = 145] = "scrollLock"; - $mol_keyboard_code[$mol_keyboard_code["semicolon"] = 186] = "semicolon"; - $mol_keyboard_code[$mol_keyboard_code["equals"] = 187] = "equals"; - $mol_keyboard_code[$mol_keyboard_code["comma"] = 188] = "comma"; - $mol_keyboard_code[$mol_keyboard_code["dash"] = 189] = "dash"; - $mol_keyboard_code[$mol_keyboard_code["period"] = 190] = "period"; - $mol_keyboard_code[$mol_keyboard_code["forwardSlash"] = 191] = "forwardSlash"; - $mol_keyboard_code[$mol_keyboard_code["graveAccent"] = 192] = "graveAccent"; - $mol_keyboard_code[$mol_keyboard_code["bracketOpen"] = 219] = "bracketOpen"; - $mol_keyboard_code[$mol_keyboard_code["slashBack"] = 220] = "slashBack"; - $mol_keyboard_code[$mol_keyboard_code["slashBackLeft"] = 226] = "slashBackLeft"; - $mol_keyboard_code[$mol_keyboard_code["bracketClose"] = 221] = "bracketClose"; - $mol_keyboard_code[$mol_keyboard_code["quoteSingle"] = 222] = "quoteSingle"; - })($mol_keyboard_code = $.$mol_keyboard_code || ($.$mol_keyboard_code = {})); -})($ || ($ = {})); - -; -"use strict"; - ; "use strict"; var $; (function ($) { - var $$; - (function ($$) { - class $mol_button extends $.$mol_button { - status(next = [null]) { return next; } - disabled() { - return !this.enabled(); - } - event_activate(next) { - if (!next) - return; - if (!this.enabled()) - return; - try { - this.event_click(next); - this.click(next); - this.status([null]); + function stat_convert(stat) { + if (!stat) + return null; + let type; + if (stat.isDirectory()) + type = 'dir'; + if (stat.isFile()) + type = 'file'; + if (stat.isSymbolicLink()) + type = 'link'; + if (!type) + return $mol_fail(new Error(`Unsupported file type`)); + return { + type, + size: Number(stat.size), + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime + }; + } + function buffer_normalize(buf) { + return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength); + } + let $mol_file_mode_open; + (function ($mol_file_mode_open) { + $mol_file_mode_open[$mol_file_mode_open["create"] = $node.fs.constants.O_CREAT] = "create"; + $mol_file_mode_open[$mol_file_mode_open["exists_truncate"] = $node.fs.constants.O_TRUNC] = "exists_truncate"; + $mol_file_mode_open[$mol_file_mode_open["exists_fail"] = $node.fs.constants.O_EXCL] = "exists_fail"; + $mol_file_mode_open[$mol_file_mode_open["read_only"] = $node.fs.constants.O_RDONLY] = "read_only"; + $mol_file_mode_open[$mol_file_mode_open["write_only"] = $node.fs.constants.O_WRONLY] = "write_only"; + $mol_file_mode_open[$mol_file_mode_open["read_write"] = $node.fs.constants.O_RDWR] = "read_write"; + $mol_file_mode_open[$mol_file_mode_open["append"] = $node.fs.constants.O_APPEND] = "append"; + })($mol_file_mode_open = $.$mol_file_mode_open || ($.$mol_file_mode_open = {})); + class $mol_file_node extends $mol_file { + static absolute(path) { + return this.make({ + path: $mol_const(path) + }); + } + static relative(path) { + return this.absolute($node.path.resolve(this.base, path).replace(/\\/g, '/')); + } + watcher() { + const watcher = $node.chokidar.watch(this.path(), { + persistent: true, + ignored: /(^\.|___$)/, + depth: 0, + ignoreInitial: true, + awaitWriteFinish: { + stabilityThreshold: 100, + }, + }); + watcher + .on('all', (type, path) => { + const file = $mol_file.relative(path.replace(/\\/g, '/')); + file.reset(); + if (type === 'change') { + this.stat(null); } - catch (error) { - Promise.resolve().then(() => this.status([error])); - $mol_fail_hidden(error); + else { + file.parent().reset(); } - } - event_key_press(event) { - if (event.keyCode === $mol_keyboard_code.enter) { - return this.event_activate(event); + }) + .on('error', $mol_fail_log); + return { + destructor() { + watcher.close(); } + }; + } + stat(next, virt) { + let stat = next; + const path = this.path(); + this.parent().watcher(); + if (virt) + return next; + try { + stat = next ?? stat_convert($node.fs.statSync(path, { throwIfNoEntry: false })); } - tab_index() { - return this.enabled() ? super.tab_index() : -1; + catch (error) { + if (error.code === 'ENOENT') + error = new $mol_file_not_found(`File not found`); + error.message += '\n' + path; + return this.$.$mol_fail_hidden(error); } - error() { - const [error] = this.status(); - if (!error) - return ''; - if (error instanceof Promise) { - return $mol_fail_hidden(error); - } - return String(error.message ?? error); + return stat; + } + ensure() { + const path = this.path(); + try { + $node.fs.mkdirSync(path); } - hint_safe() { + catch (e) { + e.message += '\n' + path; + this.$.$mol_fail_hidden(e); + } + } + drop() { + $node.fs.unlinkSync(this.path()); + } + buffer(next) { + const path = this.path(); + if (next === undefined) { + if (!this.stat()) + return new Uint8Array; try { - return this.hint(); + const prev = $mol_mem_cached(() => this.buffer()); + next = buffer_normalize($node.fs.readFileSync(path)); + if (prev !== undefined && !$mol_compare_array(prev, next)) { + this.$.$mol_log3_rise({ + place: `$mol_file_node..buffer()`, + message: 'Changed', + path: this.relate(), + }); + } + return next; } catch (error) { - $mol_fail_log(error); - return ''; + error.message += '\n' + path; + return this.$.$mol_fail_hidden(error); } } - sub_visible() { - return [ - ...this.error() ? [this.Speck()] : [], - ...this.sub(), - ]; + this.parent().exists(true); + const now = new Date; + this.stat({ + type: 'file', + size: next.length, + atime: now, + mtime: now, + ctime: now, + }, 'virt'); + try { + $node.fs.writeFileSync(path, next); + } + catch (error) { + error.message += '\n' + path; + return this.$.$mol_fail_hidden(error); } + return next; } - __decorate([ - $mol_mem - ], $mol_button.prototype, "status", null); - $$.$mol_button = $mol_button; - })($$ = $.$$ || ($.$$ = {})); -})($ || ($ = {})); - -; -"use strict"; -var $; -(function ($) { - $mol_style_attach("mol/button/button.view.css", "[mol_button] {\n\tborder: none;\n\tfont: inherit;\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\ttext-decoration: inherit;\n\tcursor: inherit;\n\tposition: relative;\n\tbox-sizing: border-box;\n\tword-break: normal;\n\tcursor: default;\n\tuser-select: none;\n\tborder-radius: var(--mol_gap_round);\n}\n\n[mol_button]:where(:not(:disabled)):hover {\n\tz-index: var(--mol_layer_hover);\n}\n\n[mol_button]:focus-visible {\n\toutline: none;\n\tz-index: var(--mol_layer_focus);\n}\n"); -})($ || ($ = {})); - -; - ($.$mol_button_typed) = class $mol_button_typed extends ($.$mol_button) { - minimal_height(){ - return 40; - } - minimal_width(){ - return 40; - } - }; - - -; -"use strict"; -var $; -(function ($) { - $mol_style_attach("mol/button/typed/typed.view.css", "[mol_button_typed] {\n\talign-content: center;\n\talign-items: center;\n\tpadding: var(--mol_gap_text);\n\tborder-radius: var(--mol_gap_round);\n\tgap: var(--mol_gap_space);\n\tuser-select: none;\n\tcursor: pointer;\n}\n\n[mol_button_typed][disabled] {\n\tpointer-events: none;\n}\n\n[mol_button_typed]:hover ,\n[mol_button_typed]:focus-visible {\n\tbackground-color: var(--mol_theme_hover);\n}\n\n[mol_button_typed]:active {\n\tcolor: var(--mol_theme_focus);\n}\n\n"); -})($ || ($ = {})); - -; -"use strict"; - -; - ($.$mol_button_minor) = class $mol_button_minor extends ($.$mol_button_typed) {}; - - -; -"use strict"; -var $; -(function ($) { - $mol_style_attach("mol/button/minor/minor.view.css", "[mol_button_minor] {\n\tcolor: var(--mol_theme_control);\n}\n\n[mol_button_minor][disabled] {\n\tcolor: var(--mol_theme_shade);\n}\n"); -})($ || ($ = {})); - -; -"use strict"; - -; - ($.$mol_check) = class $mol_check extends ($.$mol_button_minor) { - checked(next){ - if(next !== undefined) return next; - return false; - } - aria_checked(){ - return "false"; - } - aria_role(){ - return "checkbox"; - } - Icon(){ - return null; - } - title(){ - return ""; - } - Title(){ - const obj = new this.$.$mol_view(); - (obj.sub) = () => ([(this.title())]); - return obj; - } - label(){ - return [(this.Title())]; - } - attr(){ - return { - ...(super.attr()), - "mol_check_checked": (this.checked()), - "aria-checked": (this.aria_checked()), - "role": (this.aria_role()) - }; - } - sub(){ - return [(this.Icon()), (this.label())]; - } - }; - ($mol_mem(($.$mol_check.prototype), "checked")); - ($mol_mem(($.$mol_check.prototype), "Title")); - - -; -"use strict"; -var $; -(function ($) { - function $mol_maybe(value) { - return (value == null) ? [] : [value]; - } - $.$mol_maybe = $mol_maybe; -})($ || ($ = {})); - -; -"use strict"; -var $; -(function ($) { - $mol_style_attach("mol/check/check.css", "[mol_check] {\n\tflex: 0 0 auto;\n\tjustify-content: flex-start;\n\talign-content: center;\n\t/* align-items: flex-start; */\n\tborder: none;\n\tfont-weight: inherit;\n\tbox-shadow: none;\n\ttext-align: left;\n\tdisplay: inline-flex;\n\tflex-wrap: nowrap;\n}\n\n[mol_check_title] {\n\tflex-shrink: 1;\n}\n"); -})($ || ($ = {})); - -; -"use strict"; - -; -"use strict"; -var $; -(function ($) { - var $$; - (function ($$) { - class $mol_check extends $.$mol_check { - click(next) { - if (next?.defaultPrevented) - return; - this.checked(!this.checked()); - if (next) - next.preventDefault(); + sub() { + if (!this.exists()) + return []; + if (this.type() !== 'dir') + return []; + const path = this.path(); + this.stat(); + try { + return $node.fs.readdirSync(path) + .filter(name => !/^\.+$/.test(name)) + .map(name => this.resolve(name)); } - sub() { - return [ - ...$mol_maybe(this.Icon()), - ...this.label(), - ]; + catch (e) { + e.message += '\n' + path; + return this.$.$mol_fail_hidden(e); } - label() { - return this.title() ? super.label() : []; + } + resolve(path) { + return this.constructor.relative($node.path.join(this.path(), path)); + } + relate(base = this.constructor.relative('.')) { + return $node.path.relative(base.path(), this.path()).replace(/\\/g, '/'); + } + append(next) { + const path = this.path(); + try { + $node.fs.appendFileSync(path, next); } - aria_checked() { - return String(this.checked()); + catch (e) { + e.message += '\n' + path; + return this.$.$mol_fail_hidden(e); } } - $$.$mol_check = $mol_check; - })($$ = $.$$ || ($.$$ = {})); -})($ || ($ = {})); - -; - ($.$mol_check_icon) = class $mol_check_icon extends ($.$mol_check) {}; - - -; -"use strict"; -var $; -(function ($) { - $mol_style_attach("mol/check/icon/icon.view.css", "[mol_check_icon]:where([mol_check_checked]) {\n\tcolor: var(--mol_theme_current);\n}\n"); -})($ || ($ = {})); - -; -"use strict"; - -; - ($.$mol_svg) = class $mol_svg extends ($.$mol_view) { - dom_name(){ - return "svg"; - } - dom_name_space(){ - return "http://www.w3.org/2000/svg"; - } - font_size(){ - return 16; - } - font_family(){ - return ""; - } - style_size(){ - return {}; - } - }; - + open(...modes) { + return $node.fs.openSync(this.path(), modes.reduce((res, mode) => res | $mol_file_mode_open[mode], 0)); + } + } + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "watcher", null); + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "stat", null); + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "ensure", null); + __decorate([ + $mol_action + ], $mol_file_node.prototype, "drop", null); + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "buffer", null); + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "sub", null); + __decorate([ + $mol_mem_key + ], $mol_file_node, "absolute", null); + $.$mol_file_node = $mol_file_node; + $.$mol_file = $mol_file_node; +})($ || ($ = {})); ; "use strict"; var $; (function ($) { - class $mol_state_time extends $mol_object { - static task(precision, reset) { - if (precision) { - return new $mol_after_timeout(precision, () => this.task(precision, null)); - } - else { - return new $mol_after_frame(() => this.task(precision, null)); - } + class $mol_state_local_node extends $mol_state_local { + static dir() { + const base = process.env.XDG_DATA_HOME || ($node.os.homedir() + '/.local/share'); + return $mol_file.absolute(base).resolve('./hyoo_state_local'); } - static now(precision) { - this.task(precision); - return Date.now(); + static value(key, next) { + const file = this.dir().resolve(encodeURIComponent(key) + '.json'); + if (next === null) { + file.exists(false); + return null; + } + const arg = next === undefined ? undefined : JSON.stringify(next); + return JSON.parse(file.text(arg) || 'null'); } } __decorate([ - $mol_mem_key - ], $mol_state_time, "task", null); + $mol_mem + ], $mol_state_local_node, "dir", null); __decorate([ $mol_mem_key - ], $mol_state_time, "now", null); - $.$mol_state_time = $mol_state_time; + ], $mol_state_local_node, "value", null); + $.$mol_state_local_node = $mol_state_local_node; + $.$mol_state_local = $mol_state_local_node; +})($ || ($ = {})); + +; +"use strict"; +var $; +(function ($) { + function parse(theme) { + if (theme === 'true') + return true; + if (theme === 'false') + return false; + return null; + } + function $mol_lights(next) { + const arg = parse(this.$mol_state_arg.value('mol_lights')); + const base = false; + if (next === undefined) { + return arg ?? this.$mol_state_local.value('$mol_lights') ?? base; + } + else { + if (arg === null) { + this.$mol_state_local.value('$mol_lights', next === base ? null : next); + } + else { + this.$mol_state_arg.value('mol_lights', String(next)); + } + return next; + } + } + $.$mol_lights = $mol_lights; })($ || ($ = {})); ; @@ -4420,51 +4316,31 @@ var $; (function ($) { var $$; (function ($$) { - class $mol_svg extends $.$mol_svg { - computed_style() { - const win = this.$.$mol_dom_context; - const style = win.getComputedStyle(this.dom_node()); - if (!style['font-size']) - $mol_state_time.now(0); - return style; - } - font_size() { - return parseInt(this.computed_style()['font-size']) || 16; - } - font_family() { - return this.computed_style()['font-family']; + class $mol_theme_auto extends $.$mol_theme_auto { + theme() { + return this.$.$mol_lights() ? '$mol_theme_light' : '$mol_theme_dark'; } } - __decorate([ - $mol_mem - ], $mol_svg.prototype, "computed_style", null); - __decorate([ - $mol_mem - ], $mol_svg.prototype, "font_size", null); - __decorate([ - $mol_mem - ], $mol_svg.prototype, "font_family", null); - $$.$mol_svg = $mol_svg; + $$.$mol_theme_auto = $mol_theme_auto; })($$ = $.$$ || ($.$$ = {})); })($ || ($ = {})); ; - ($.$mol_svg_root) = class $mol_svg_root extends ($.$mol_svg) { - view_box(){ - return "0 0 100 100"; - } - aspect(){ - return "xMidYMid"; + ($.$mol_speck) = class $mol_speck extends ($.$mol_view) { + theme(){ + return "$mol_theme_accent"; } - dom_name(){ - return "svg"; + value(){ + return null; } attr(){ - return { - ...(super.attr()), - "viewBox": (this.view_box()), - "preserveAspectRatio": (this.aspect()) - }; + return {...(super.attr()), "mol_theme": (this.theme())}; + } + style(){ + return {...(super.style()), "minHeight": "1em"}; + } + sub(){ + return [(this.value())]; } }; @@ -4473,456 +4349,612 @@ var $; "use strict"; var $; (function ($) { - $mol_style_attach("mol/svg/root/root.view.css", "[mol_svg_root] {\n\toverflow: hidden;\n}\n"); + $.$mol_layer = $mol_style_prop('mol_layer', [ + 'hover', + 'focus', + 'speck', + 'float', + 'popup', + ]); })($ || ($ = {})); ; "use strict"; +var $; +(function ($) { + $mol_style_attach("mol/layer/layer.css", ":root {\n\t--mol_layer_hover: 1;\n\t--mol_layer_focus: 2;\n\t--mol_layer_speck: 3;\n\t--mol_layer_float: 4;\n\t--mol_layer_popup: 5;\n}\n"); +})($ || ($ = {})); ; - ($.$mol_svg_path) = class $mol_svg_path extends ($.$mol_svg) { - geometry(){ - return ""; - } - dom_name(){ - return "path"; - } - attr(){ - return {...(super.attr()), "d": (this.geometry())}; - } - }; - +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/speck/speck.view.css", "[mol_speck] {\n\tfont-size: .625rem;\n\tborder-radius: 1rem;\n\tmargin: -0.5rem -0.25rem;\n\talign-self: flex-start;\n\tmin-height: 1em;\n\tmin-width: .5em;\n\tvertical-align: sub;\n\tpadding: .25em .5em;\n\tposition: absolute;\n\tz-index: var(--mol_layer_speck);\n\ttext-align: center;\n\tline-height: 1;\n\tdisplay: inline-block;\n\twhite-space: nowrap;\n\ttext-overflow: ellipsis;\n\tuser-select: none;\n}\n"); +})($ || ($ = {})); ; "use strict"; ; - ($.$mol_icon) = class $mol_icon extends ($.$mol_svg_root) { - path(){ + ($.$mol_button) = class $mol_button extends ($.$mol_view) { + event_activate(next){ + if(next !== undefined) return next; + return null; + } + clicks(next){ + if(next !== undefined) return next; + return null; + } + event_key_press(next){ + if(next !== undefined) return next; + return null; + } + disabled(){ + return false; + } + tab_index(){ + return 0; + } + hint(){ return ""; } - Path(){ - const obj = new this.$.$mol_svg_path(); - (obj.geometry) = () => ((this.path())); - return obj; + hint_safe(){ + return (this.hint()); } - view_box(){ - return "0 0 24 24"; + error(){ + return ""; } - minimal_width(){ - return 16; + enabled(){ + return true; } - minimal_height(){ - return 16; + click(next){ + if(next !== undefined) return next; + return null; + } + event_click(next){ + if(next !== undefined) return next; + return null; + } + event(){ + return { + ...(super.event()), + "click": (next) => (this.event_activate(next)), + "dblclick": (next) => (this.clicks(next)), + "keydown": (next) => (this.event_key_press(next)) + }; + } + attr(){ + return { + ...(super.attr()), + "disabled": (this.disabled()), + "role": "button", + "tabindex": (this.tab_index()), + "title": (this.hint_safe()) + }; } sub(){ - return [(this.Path())]; + return [(this.title())]; } - }; - ($mol_mem(($.$mol_icon.prototype), "Path")); - - -; -"use strict"; -var $; -(function ($) { - $mol_style_attach("mol/icon/icon.view.css", "[mol_icon] {\n\tfill: currentColor;\n\tstroke: none;\n\twidth: 1em;\n\theight: 1.5em;\n\tflex: 0 0 auto;\n\tvertical-align: top;\n\tdisplay: inline-block;\n\tfilter: drop-shadow(0px 1px 1px var(--mol_theme_back));\n\ttransform-origin: center;\n}\n\n[mol_icon_path] {\n\ttransform-origin: center;\n}\n"); -})($ || ($ = {})); - -; -"use strict"; - -; - ($.$mol_icon_brightness_6) = class $mol_icon_brightness_6 extends ($.$mol_icon) { - path(){ - return "M12,18V6C15.31,6 18,8.69 18,12C18,15.31 15.31,18 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z"; + Speck(){ + const obj = new this.$.$mol_speck(); + (obj.value) = () => ((this.error())); + return obj; } }; + ($mol_mem(($.$mol_button.prototype), "event_activate")); + ($mol_mem(($.$mol_button.prototype), "clicks")); + ($mol_mem(($.$mol_button.prototype), "event_key_press")); + ($mol_mem(($.$mol_button.prototype), "click")); + ($mol_mem(($.$mol_button.prototype), "event_click")); + ($mol_mem(($.$mol_button.prototype), "Speck")); -; -"use strict"; - -; -"use strict"; - ; "use strict"; var $; (function ($) { - const decoders = {}; - function $mol_charset_decode(buffer, encoding = 'utf8') { - let decoder = decoders[encoding]; - if (!decoder) - decoder = decoders[encoding] = new TextDecoder(encoding); - return decoder.decode(buffer); - } - $.$mol_charset_decode = $mol_charset_decode; + let $mol_keyboard_code; + (function ($mol_keyboard_code) { + $mol_keyboard_code[$mol_keyboard_code["backspace"] = 8] = "backspace"; + $mol_keyboard_code[$mol_keyboard_code["tab"] = 9] = "tab"; + $mol_keyboard_code[$mol_keyboard_code["enter"] = 13] = "enter"; + $mol_keyboard_code[$mol_keyboard_code["shift"] = 16] = "shift"; + $mol_keyboard_code[$mol_keyboard_code["ctrl"] = 17] = "ctrl"; + $mol_keyboard_code[$mol_keyboard_code["alt"] = 18] = "alt"; + $mol_keyboard_code[$mol_keyboard_code["pause"] = 19] = "pause"; + $mol_keyboard_code[$mol_keyboard_code["capsLock"] = 20] = "capsLock"; + $mol_keyboard_code[$mol_keyboard_code["escape"] = 27] = "escape"; + $mol_keyboard_code[$mol_keyboard_code["space"] = 32] = "space"; + $mol_keyboard_code[$mol_keyboard_code["pageUp"] = 33] = "pageUp"; + $mol_keyboard_code[$mol_keyboard_code["pageDown"] = 34] = "pageDown"; + $mol_keyboard_code[$mol_keyboard_code["end"] = 35] = "end"; + $mol_keyboard_code[$mol_keyboard_code["home"] = 36] = "home"; + $mol_keyboard_code[$mol_keyboard_code["left"] = 37] = "left"; + $mol_keyboard_code[$mol_keyboard_code["up"] = 38] = "up"; + $mol_keyboard_code[$mol_keyboard_code["right"] = 39] = "right"; + $mol_keyboard_code[$mol_keyboard_code["down"] = 40] = "down"; + $mol_keyboard_code[$mol_keyboard_code["insert"] = 45] = "insert"; + $mol_keyboard_code[$mol_keyboard_code["delete"] = 46] = "delete"; + $mol_keyboard_code[$mol_keyboard_code["key0"] = 48] = "key0"; + $mol_keyboard_code[$mol_keyboard_code["key1"] = 49] = "key1"; + $mol_keyboard_code[$mol_keyboard_code["key2"] = 50] = "key2"; + $mol_keyboard_code[$mol_keyboard_code["key3"] = 51] = "key3"; + $mol_keyboard_code[$mol_keyboard_code["key4"] = 52] = "key4"; + $mol_keyboard_code[$mol_keyboard_code["key5"] = 53] = "key5"; + $mol_keyboard_code[$mol_keyboard_code["key6"] = 54] = "key6"; + $mol_keyboard_code[$mol_keyboard_code["key7"] = 55] = "key7"; + $mol_keyboard_code[$mol_keyboard_code["key8"] = 56] = "key8"; + $mol_keyboard_code[$mol_keyboard_code["key9"] = 57] = "key9"; + $mol_keyboard_code[$mol_keyboard_code["A"] = 65] = "A"; + $mol_keyboard_code[$mol_keyboard_code["B"] = 66] = "B"; + $mol_keyboard_code[$mol_keyboard_code["C"] = 67] = "C"; + $mol_keyboard_code[$mol_keyboard_code["D"] = 68] = "D"; + $mol_keyboard_code[$mol_keyboard_code["E"] = 69] = "E"; + $mol_keyboard_code[$mol_keyboard_code["F"] = 70] = "F"; + $mol_keyboard_code[$mol_keyboard_code["G"] = 71] = "G"; + $mol_keyboard_code[$mol_keyboard_code["H"] = 72] = "H"; + $mol_keyboard_code[$mol_keyboard_code["I"] = 73] = "I"; + $mol_keyboard_code[$mol_keyboard_code["J"] = 74] = "J"; + $mol_keyboard_code[$mol_keyboard_code["K"] = 75] = "K"; + $mol_keyboard_code[$mol_keyboard_code["L"] = 76] = "L"; + $mol_keyboard_code[$mol_keyboard_code["M"] = 77] = "M"; + $mol_keyboard_code[$mol_keyboard_code["N"] = 78] = "N"; + $mol_keyboard_code[$mol_keyboard_code["O"] = 79] = "O"; + $mol_keyboard_code[$mol_keyboard_code["P"] = 80] = "P"; + $mol_keyboard_code[$mol_keyboard_code["Q"] = 81] = "Q"; + $mol_keyboard_code[$mol_keyboard_code["R"] = 82] = "R"; + $mol_keyboard_code[$mol_keyboard_code["S"] = 83] = "S"; + $mol_keyboard_code[$mol_keyboard_code["T"] = 84] = "T"; + $mol_keyboard_code[$mol_keyboard_code["U"] = 85] = "U"; + $mol_keyboard_code[$mol_keyboard_code["V"] = 86] = "V"; + $mol_keyboard_code[$mol_keyboard_code["W"] = 87] = "W"; + $mol_keyboard_code[$mol_keyboard_code["X"] = 88] = "X"; + $mol_keyboard_code[$mol_keyboard_code["Y"] = 89] = "Y"; + $mol_keyboard_code[$mol_keyboard_code["Z"] = 90] = "Z"; + $mol_keyboard_code[$mol_keyboard_code["metaLeft"] = 91] = "metaLeft"; + $mol_keyboard_code[$mol_keyboard_code["metaRight"] = 92] = "metaRight"; + $mol_keyboard_code[$mol_keyboard_code["select"] = 93] = "select"; + $mol_keyboard_code[$mol_keyboard_code["numpad0"] = 96] = "numpad0"; + $mol_keyboard_code[$mol_keyboard_code["numpad1"] = 97] = "numpad1"; + $mol_keyboard_code[$mol_keyboard_code["numpad2"] = 98] = "numpad2"; + $mol_keyboard_code[$mol_keyboard_code["numpad3"] = 99] = "numpad3"; + $mol_keyboard_code[$mol_keyboard_code["numpad4"] = 100] = "numpad4"; + $mol_keyboard_code[$mol_keyboard_code["numpad5"] = 101] = "numpad5"; + $mol_keyboard_code[$mol_keyboard_code["numpad6"] = 102] = "numpad6"; + $mol_keyboard_code[$mol_keyboard_code["numpad7"] = 103] = "numpad7"; + $mol_keyboard_code[$mol_keyboard_code["numpad8"] = 104] = "numpad8"; + $mol_keyboard_code[$mol_keyboard_code["numpad9"] = 105] = "numpad9"; + $mol_keyboard_code[$mol_keyboard_code["multiply"] = 106] = "multiply"; + $mol_keyboard_code[$mol_keyboard_code["add"] = 107] = "add"; + $mol_keyboard_code[$mol_keyboard_code["subtract"] = 109] = "subtract"; + $mol_keyboard_code[$mol_keyboard_code["decimal"] = 110] = "decimal"; + $mol_keyboard_code[$mol_keyboard_code["divide"] = 111] = "divide"; + $mol_keyboard_code[$mol_keyboard_code["F1"] = 112] = "F1"; + $mol_keyboard_code[$mol_keyboard_code["F2"] = 113] = "F2"; + $mol_keyboard_code[$mol_keyboard_code["F3"] = 114] = "F3"; + $mol_keyboard_code[$mol_keyboard_code["F4"] = 115] = "F4"; + $mol_keyboard_code[$mol_keyboard_code["F5"] = 116] = "F5"; + $mol_keyboard_code[$mol_keyboard_code["F6"] = 117] = "F6"; + $mol_keyboard_code[$mol_keyboard_code["F7"] = 118] = "F7"; + $mol_keyboard_code[$mol_keyboard_code["F8"] = 119] = "F8"; + $mol_keyboard_code[$mol_keyboard_code["F9"] = 120] = "F9"; + $mol_keyboard_code[$mol_keyboard_code["F10"] = 121] = "F10"; + $mol_keyboard_code[$mol_keyboard_code["F11"] = 122] = "F11"; + $mol_keyboard_code[$mol_keyboard_code["F12"] = 123] = "F12"; + $mol_keyboard_code[$mol_keyboard_code["numLock"] = 144] = "numLock"; + $mol_keyboard_code[$mol_keyboard_code["scrollLock"] = 145] = "scrollLock"; + $mol_keyboard_code[$mol_keyboard_code["semicolon"] = 186] = "semicolon"; + $mol_keyboard_code[$mol_keyboard_code["equals"] = 187] = "equals"; + $mol_keyboard_code[$mol_keyboard_code["comma"] = 188] = "comma"; + $mol_keyboard_code[$mol_keyboard_code["dash"] = 189] = "dash"; + $mol_keyboard_code[$mol_keyboard_code["period"] = 190] = "period"; + $mol_keyboard_code[$mol_keyboard_code["forwardSlash"] = 191] = "forwardSlash"; + $mol_keyboard_code[$mol_keyboard_code["graveAccent"] = 192] = "graveAccent"; + $mol_keyboard_code[$mol_keyboard_code["bracketOpen"] = 219] = "bracketOpen"; + $mol_keyboard_code[$mol_keyboard_code["slashBack"] = 220] = "slashBack"; + $mol_keyboard_code[$mol_keyboard_code["slashBackLeft"] = 226] = "slashBackLeft"; + $mol_keyboard_code[$mol_keyboard_code["bracketClose"] = 221] = "bracketClose"; + $mol_keyboard_code[$mol_keyboard_code["quoteSingle"] = 222] = "quoteSingle"; + })($mol_keyboard_code = $.$mol_keyboard_code || ($.$mol_keyboard_code = {})); })($ || ($ = {})); ; "use strict"; -var $; -(function ($) { - const TextEncoder = globalThis.TextEncoder ?? $node.util.TextEncoder; - const encoder = new TextEncoder(); - function $mol_charset_encode(value) { - return encoder.encode(value); - } - $.$mol_charset_encode = $mol_charset_encode; -})($ || ($ = {})); ; "use strict"; var $; (function ($) { - class $mol_file_not_found extends Error { - } - $.$mol_file_not_found = $mol_file_not_found; - class $mol_file extends $mol_object { - static absolute(path) { - throw new Error('Not implemented yet'); - } - static relative(path) { - throw new Error('Not implemented yet'); - } - static base = ''; - path() { - return '.'; - } - parent() { - return this.resolve('..'); - } - reset() { - try { - this.stat(null); + var $$; + (function ($$) { + class $mol_button extends $.$mol_button { + status(next = [null]) { return next; } + disabled() { + return !this.enabled(); } - catch (error) { - if (error instanceof $mol_file_not_found) + event_activate(next) { + if (!next) return; - return $mol_fail_hidden(error); - } - } - version() { - return this.stat()?.mtime.getTime().toString(36).toUpperCase() ?? ''; - } - watcher() { - console.warn('$mol_file_web.watcher() not implemented'); - return { - destructor() { } - }; - } - exists(next) { - let exists = Boolean(this.stat()); - if (next === undefined) - return exists; - if (next === exists) - return exists; - if (next) { - this.parent().exists(true); - this.ensure(); - } - else { - this.drop(); - } - this.reset(); - return next; - } - type() { - return this.stat()?.type ?? ''; - } - name() { - return this.path().replace(/^.*\//, ''); - } - ext() { - const match = /((?:\.\w+)+)$/.exec(this.path()); - return match ? match[1].substring(1) : ''; - } - text(next, virt) { - if (virt) { - const now = new Date; - this.stat({ - type: 'file', - size: 0, - atime: now, - mtime: now, - ctime: now, - }, 'virt'); - return next; + if (!this.enabled()) + return; + try { + this.event_click(next); + this.click(next); + this.status([null]); + } + catch (error) { + Promise.resolve().then(() => this.status([error])); + $mol_fail_hidden(error); + } } - if (next === undefined) { - return $mol_charset_decode(this.buffer(undefined)); + event_key_press(event) { + if (event.keyCode === $mol_keyboard_code.enter) { + return this.event_activate(event); + } } - else { - const buffer = next === undefined ? undefined : $mol_charset_encode(next); - this.buffer(buffer); - return next; + tab_index() { + return this.enabled() ? super.tab_index() : -1; } - } - find(include, exclude) { - const found = []; - const sub = this.sub(); - for (const child of sub) { - const child_path = child.path(); - if (exclude && child_path.match(exclude)) - continue; - if (!include || child_path.match(include)) - found.push(child); - if (child.type() === 'dir') { - const sub_child = child.find(include, exclude); - for (const child of sub_child) - found.push(child); + error() { + const [error] = this.status(); + if (!error) + return ''; + if (error instanceof Promise) { + return $mol_fail_hidden(error); } + return String(error.message ?? error); } - return found; - } - size() { - switch (this.type()) { - case 'file': return this.stat()?.size ?? 0; - default: return 0; + hint_safe() { + try { + return this.hint(); + } + catch (error) { + $mol_fail_log(error); + return ''; + } } - } - open(...modes) { - return 0; - } - } - __decorate([ - $mol_mem - ], $mol_file.prototype, "exists", null); - __decorate([ - $mol_mem - ], $mol_file.prototype, "text", null); - __decorate([ - $mol_mem_key - ], $mol_file, "absolute", null); - $.$mol_file = $mol_file; + sub_visible() { + return [ + ...this.error() ? [this.Speck()] : [], + ...this.sub(), + ]; + } + } + __decorate([ + $mol_mem + ], $mol_button.prototype, "status", null); + $$.$mol_button = $mol_button; + })($$ = $.$$ || ($.$$ = {})); })($ || ($ = {})); ; "use strict"; var $; (function ($) { - function $mol_compare_array(a, b) { - if (a === b) - return true; - if (Object.getPrototypeOf(a) !== Object.getPrototypeOf(b)) - return false; - if (a.length !== b.length) - return false; - for (let i = 0; i < a.length; i++) - if (a[i] !== b[i]) - return false; - return true; - } - $.$mol_compare_array = $mol_compare_array; + $mol_style_attach("mol/button/button.view.css", "[mol_button] {\n\tborder: none;\n\tfont: inherit;\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\ttext-decoration: inherit;\n\tcursor: inherit;\n\tposition: relative;\n\tbox-sizing: border-box;\n\tword-break: normal;\n\tcursor: default;\n\tuser-select: none;\n\tborder-radius: var(--mol_gap_round);\n}\n\n[mol_button]:where(:not(:disabled)):hover {\n\tz-index: var(--mol_layer_hover);\n}\n\n[mol_button]:focus-visible {\n\toutline: none;\n\tz-index: var(--mol_layer_focus);\n}\n"); })($ || ($ = {})); +; + ($.$mol_button_typed) = class $mol_button_typed extends ($.$mol_button) { + minimal_height(){ + return 40; + } + minimal_width(){ + return 40; + } + }; + + ; "use strict"; var $; (function ($) { - function stat_convert(stat) { - if (!stat) - return null; - let type; - if (stat.isDirectory()) - type = 'dir'; - if (stat.isFile()) - type = 'file'; - if (stat.isSymbolicLink()) - type = 'link'; - if (!type) - return $mol_fail(new Error(`Unsupported file type`)); - return { - type, - size: Number(stat.size), - atime: stat.atime, - mtime: stat.mtime, - ctime: stat.ctime - }; - } - function buffer_normalize(buf) { - return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength); + $mol_style_attach("mol/button/typed/typed.view.css", "[mol_button_typed] {\n\talign-content: center;\n\talign-items: center;\n\tpadding: var(--mol_gap_text);\n\tborder-radius: var(--mol_gap_round);\n\tgap: var(--mol_gap_space);\n\tuser-select: none;\n\tcursor: pointer;\n}\n\n[mol_button_typed][disabled] {\n\tpointer-events: none;\n}\n\n[mol_button_typed]:hover ,\n[mol_button_typed]:focus-visible {\n\tbackground-color: var(--mol_theme_hover);\n}\n\n[mol_button_typed]:active {\n\tcolor: var(--mol_theme_focus);\n}\n\n"); +})($ || ($ = {})); + +; +"use strict"; + +; + ($.$mol_button_minor) = class $mol_button_minor extends ($.$mol_button_typed) {}; + + +; +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/button/minor/minor.view.css", "[mol_button_minor] {\n\tcolor: var(--mol_theme_control);\n}\n\n[mol_button_minor][disabled] {\n\tcolor: var(--mol_theme_shade);\n}\n"); +})($ || ($ = {})); + +; +"use strict"; + +; + ($.$mol_check) = class $mol_check extends ($.$mol_button_minor) { + checked(next){ + if(next !== undefined) return next; + return false; + } + aria_checked(){ + return "false"; + } + aria_role(){ + return "checkbox"; + } + Icon(){ + return null; + } + title(){ + return ""; + } + Title(){ + const obj = new this.$.$mol_view(); + (obj.sub) = () => ([(this.title())]); + return obj; + } + label(){ + return [(this.Title())]; + } + attr(){ + return { + ...(super.attr()), + "mol_check_checked": (this.checked()), + "aria-checked": (this.aria_checked()), + "role": (this.aria_role()) + }; + } + sub(){ + return [(this.Icon()), (this.label())]; + } + }; + ($mol_mem(($.$mol_check.prototype), "checked")); + ($mol_mem(($.$mol_check.prototype), "Title")); + + +; +"use strict"; +var $; +(function ($) { + function $mol_maybe(value) { + return (value == null) ? [] : [value]; } - let $mol_file_mode_open; - (function ($mol_file_mode_open) { - $mol_file_mode_open[$mol_file_mode_open["create"] = $node.fs.constants.O_CREAT] = "create"; - $mol_file_mode_open[$mol_file_mode_open["exists_truncate"] = $node.fs.constants.O_TRUNC] = "exists_truncate"; - $mol_file_mode_open[$mol_file_mode_open["exists_fail"] = $node.fs.constants.O_EXCL] = "exists_fail"; - $mol_file_mode_open[$mol_file_mode_open["read_only"] = $node.fs.constants.O_RDONLY] = "read_only"; - $mol_file_mode_open[$mol_file_mode_open["write_only"] = $node.fs.constants.O_WRONLY] = "write_only"; - $mol_file_mode_open[$mol_file_mode_open["read_write"] = $node.fs.constants.O_RDWR] = "read_write"; - $mol_file_mode_open[$mol_file_mode_open["append"] = $node.fs.constants.O_APPEND] = "append"; - })($mol_file_mode_open = $.$mol_file_mode_open || ($.$mol_file_mode_open = {})); - class $mol_file_node extends $mol_file { - static absolute(path) { - return this.make({ - path: $mol_const(path) - }); - } - static relative(path) { - return this.absolute($node.path.resolve(this.base, path).replace(/\\/g, '/')); - } - watcher() { - const watcher = $node.chokidar.watch(this.path(), { - persistent: true, - ignored: /(^\.|___$)/, - depth: 0, - ignoreInitial: true, - awaitWriteFinish: { - stabilityThreshold: 100, - }, - }); - watcher - .on('all', (type, path) => { - const file = $mol_file.relative(path.replace(/\\/g, '/')); - file.reset(); - if (type === 'change') { - this.stat(null); - } - else { - file.parent().reset(); - } - }) - .on('error', $mol_fail_log); - return { - destructor() { - watcher.close(); - } - }; - } - stat(next, virt) { - let stat = next; - const path = this.path(); - this.parent().watcher(); - if (virt) - return next; - try { - stat = next ?? stat_convert($node.fs.statSync(path, { throwIfNoEntry: false })); - } - catch (error) { - if (error.code === 'ENOENT') - error = new $mol_file_not_found(`File not found`); - error.message += '\n' + path; - return this.$.$mol_fail_hidden(error); - } - return stat; - } - ensure() { - const path = this.path(); - try { - $node.fs.mkdirSync(path); - } - catch (e) { - e.message += '\n' + path; - this.$.$mol_fail_hidden(e); - } - } - drop() { - $node.fs.unlinkSync(this.path()); - } - buffer(next) { - const path = this.path(); - if (next === undefined) { - if (!this.stat()) - return new Uint8Array; - try { - const prev = $mol_mem_cached(() => this.buffer()); - next = buffer_normalize($node.fs.readFileSync(path)); - if (prev !== undefined && !$mol_compare_array(prev, next)) { - this.$.$mol_log3_rise({ - place: `$mol_file_node..buffer()`, - message: 'Changed', - path: this.relate(), - }); - } - return next; - } - catch (error) { - error.message += '\n' + path; - return this.$.$mol_fail_hidden(error); - } - } - this.parent().exists(true); - const now = new Date; - this.stat({ - type: 'file', - size: next.length, - atime: now, - mtime: now, - ctime: now, - }, 'virt'); - try { - $node.fs.writeFileSync(path, next); + $.$mol_maybe = $mol_maybe; +})($ || ($ = {})); + +; +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/check/check.css", "[mol_check] {\n\tflex: 0 0 auto;\n\tjustify-content: flex-start;\n\talign-content: center;\n\t/* align-items: flex-start; */\n\tborder: none;\n\tfont-weight: inherit;\n\tbox-shadow: none;\n\ttext-align: left;\n\tdisplay: inline-flex;\n\tflex-wrap: nowrap;\n}\n\n[mol_check_title] {\n\tflex-shrink: 1;\n}\n"); +})($ || ($ = {})); + +; +"use strict"; + +; +"use strict"; +var $; +(function ($) { + var $$; + (function ($$) { + class $mol_check extends $.$mol_check { + click(next) { + if (next?.defaultPrevented) + return; + this.checked(!this.checked()); + if (next) + next.preventDefault(); } - catch (error) { - error.message += '\n' + path; - return this.$.$mol_fail_hidden(error); + sub() { + return [ + ...$mol_maybe(this.Icon()), + ...this.label(), + ]; } - return next; - } - sub() { - if (!this.exists()) - return []; - if (this.type() !== 'dir') - return []; - const path = this.path(); - this.stat(); - try { - return $node.fs.readdirSync(path) - .filter(name => !/^\.+$/.test(name)) - .map(name => this.resolve(name)); + label() { + return this.title() ? super.label() : []; } - catch (e) { - e.message += '\n' + path; - return this.$.$mol_fail_hidden(e); + aria_checked() { + return String(this.checked()); } } - resolve(path) { - return this.constructor.relative($node.path.join(this.path(), path)); - } - relate(base = this.constructor.relative('.')) { - return $node.path.relative(base.path(), this.path()).replace(/\\/g, '/'); - } - append(next) { - const path = this.path(); - try { - $node.fs.appendFileSync(path, next); + $$.$mol_check = $mol_check; + })($$ = $.$$ || ($.$$ = {})); +})($ || ($ = {})); + +; + ($.$mol_check_icon) = class $mol_check_icon extends ($.$mol_check) {}; + + +; +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/check/icon/icon.view.css", "[mol_check_icon]:where([mol_check_checked]) {\n\tcolor: var(--mol_theme_current);\n}\n"); +})($ || ($ = {})); + +; +"use strict"; + +; + ($.$mol_svg) = class $mol_svg extends ($.$mol_view) { + dom_name(){ + return "svg"; + } + dom_name_space(){ + return "http://www.w3.org/2000/svg"; + } + font_size(){ + return 16; + } + font_family(){ + return ""; + } + style_size(){ + return {}; + } + }; + + +; +"use strict"; +var $; +(function ($) { + class $mol_state_time extends $mol_object { + static task(precision, reset) { + if (precision) { + return new $mol_after_timeout(precision, () => this.task(precision, null)); } - catch (e) { - e.message += '\n' + path; - return this.$.$mol_fail_hidden(e); + else { + return new $mol_after_frame(() => this.task(precision, null)); } } - open(...modes) { - return $node.fs.openSync(this.path(), modes.reduce((res, mode) => res | $mol_file_mode_open[mode], 0)); + static now(precision) { + this.task(precision); + return Date.now(); } } __decorate([ - $mol_mem - ], $mol_file_node.prototype, "watcher", null); - __decorate([ - $mol_mem - ], $mol_file_node.prototype, "stat", null); - __decorate([ - $mol_mem - ], $mol_file_node.prototype, "ensure", null); - __decorate([ - $mol_action - ], $mol_file_node.prototype, "drop", null); - __decorate([ - $mol_mem - ], $mol_file_node.prototype, "buffer", null); - __decorate([ - $mol_mem - ], $mol_file_node.prototype, "sub", null); + $mol_mem_key + ], $mol_state_time, "task", null); __decorate([ $mol_mem_key - ], $mol_file_node, "absolute", null); - $.$mol_file_node = $mol_file_node; - $.$mol_file = $mol_file_node; + ], $mol_state_time, "now", null); + $.$mol_state_time = $mol_state_time; +})($ || ($ = {})); + +; +"use strict"; + +; +"use strict"; +var $; +(function ($) { + var $$; + (function ($$) { + class $mol_svg extends $.$mol_svg { + computed_style() { + const win = this.$.$mol_dom_context; + const style = win.getComputedStyle(this.dom_node()); + if (!style['font-size']) + $mol_state_time.now(0); + return style; + } + font_size() { + return parseInt(this.computed_style()['font-size']) || 16; + } + font_family() { + return this.computed_style()['font-family']; + } + } + __decorate([ + $mol_mem + ], $mol_svg.prototype, "computed_style", null); + __decorate([ + $mol_mem + ], $mol_svg.prototype, "font_size", null); + __decorate([ + $mol_mem + ], $mol_svg.prototype, "font_family", null); + $$.$mol_svg = $mol_svg; + })($$ = $.$$ || ($.$$ = {})); +})($ || ($ = {})); + +; + ($.$mol_svg_root) = class $mol_svg_root extends ($.$mol_svg) { + view_box(){ + return "0 0 100 100"; + } + aspect(){ + return "xMidYMid"; + } + dom_name(){ + return "svg"; + } + attr(){ + return { + ...(super.attr()), + "viewBox": (this.view_box()), + "preserveAspectRatio": (this.aspect()) + }; + } + }; + + +; +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/svg/root/root.view.css", "[mol_svg_root] {\n\toverflow: hidden;\n}\n"); +})($ || ($ = {})); + +; +"use strict"; + +; + ($.$mol_svg_path) = class $mol_svg_path extends ($.$mol_svg) { + geometry(){ + return ""; + } + dom_name(){ + return "path"; + } + attr(){ + return {...(super.attr()), "d": (this.geometry())}; + } + }; + + +; +"use strict"; + +; + ($.$mol_icon) = class $mol_icon extends ($.$mol_svg_root) { + path(){ + return ""; + } + Path(){ + const obj = new this.$.$mol_svg_path(); + (obj.geometry) = () => ((this.path())); + return obj; + } + view_box(){ + return "0 0 24 24"; + } + minimal_width(){ + return 16; + } + minimal_height(){ + return 16; + } + sub(){ + return [(this.Path())]; + } + }; + ($mol_mem(($.$mol_icon.prototype), "Path")); + + +; +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/icon/icon.view.css", "[mol_icon] {\n\tfill: currentColor;\n\tstroke: none;\n\twidth: 1em;\n\theight: 1.5em;\n\tflex: 0 0 auto;\n\tvertical-align: top;\n\tdisplay: inline-block;\n\tfilter: drop-shadow(0px 1px 1px var(--mol_theme_back));\n\ttransform-origin: center;\n}\n\n[mol_icon_path] {\n\ttransform-origin: center;\n}\n"); })($ || ($ = {})); +; +"use strict"; + +; + ($.$mol_icon_brightness_6) = class $mol_icon_brightness_6 extends ($.$mol_icon) { + path(){ + return "M12,18V6C15.31,6 18,8.69 18,12C18,15.31 15.31,18 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z"; + } + }; + + +; +"use strict"; + ; "use strict"; var $; diff --git a/node.js.map b/node.js.map index a037177..1797cdd 100644 --- a/node.js.map +++ b/node.js.map @@ -1 +1 @@ -{"version":3,"sources":["-","../../../mam.ts","../../../mol/ambient/ambient.ts","../../../mol/delegate/delegate.ts","../../../mol/owning/owning.ts","../../../mol/fail/fail.ts","../../../mol/fail/hidden/hidden.ts","../../../mol/func/name/name.ts","../../../mol/object2/object2.ts","../../../mol/object/object.ts","../../../mol/window/window.node.ts","../../../mol/wire/cursor/cursor.ts","../../../mol/wire/pub/pub.ts","../../../mol/wire/wire.ts","../../../mol/dev/format/format.ts","../../../mol/wire/pub/sub/sub.ts","../../../mol/after/timeout/timeout.ts","../../../mol/after/frame/frame.node.ts","../../../mol/promise/like/like.ts","../../../mol/wire/fiber/fiber.ts","../../../mol/guid/guid.ts","../../../mol/key/key.ts","../../../mol/compare/deep/deep.ts","../../../mol/log3/log3.ts","../../../mol/span/span.ts","../../../mol/tree2/to/string/string.ts","../../../mol/tree2/tree2.ts","../../../mol/error/syntax/syntax.ts","../../../mol/tree2/from/string/string.ts","../../../mol/tree2/from/json/json.ts","../../../mol/term/color/color.ts","../../../mol/log3/log3.node.ts","../../../mol/wire/task/task.ts","../../../mol/wire/method/method.ts","../../../mol/fail/catch/catch.ts","../../../mol/fail/log/log.ts","../../../mol/wire/atom/atom.ts","../../../mol/wire/solo/solo.ts","../../../mol/wire/plex/plex.ts","../../../mol/mem/mem.ts","../../../mol/dom/context/context.ts","../../../node/node.node.ts","../../../mol/env/env.ts","../../../mol/env/env.node.ts","../../../mol/exec/exec.node.ts","../../../mol/dom/context/context.node.ts","../../../mol/after/tick/tick.ts","../../../mol/view/selection/selection.ts","../../../mol/wrapper/wrapper.ts","../../../mol/memo/memo.ts","../../../mol/dom/qname/qname.ts","../../../mol/wire/probe/probe.ts","../../../mol/wire/watch/watch.ts","../../../mol/const/const.ts","../../../mol/wire/solid/solid.ts","../../../mol/dom/render/attributes/attributes.ts","../../../mol/dom/render/events/events.ts","../../../mol/dom/render/styles/styles.ts","../../../mol/dom/render/children/children.ts","../../../mol/dom/render/fields/fields.ts","../../../mol/wire/async/async.ts","../../../mol/style/attach/attach.ts","../../../mol/decor/decor.ts","../../../mol/style/unit/unit.ts","../../../mol/style/func/func.ts","../../../mol/style/prop/prop.ts","../../../mol/theme/theme.ts","../../../mol/theme/-css/theme.css.ts","../../../mol/gap/gap.ts","../../../mol/gap/-css/gap.css.ts","../../../mol/view/view/view.ts","../../../mol/view/view/-css/view.css.ts","../../../mol/scroll/scroll.view.tree","../../../mol/dom/listener/listener.ts","../../../mol/print/print.ts","../../../mol/style/sheet/sheet.ts","../../../mol/style/define/define.ts","../../../mol/scroll/scroll.view.ts","../../../mol/scroll/scroll.view.css.ts","../../../mol/page/page.view.tree","../../../mol/plugin/plugin.ts","../../../mol/page/page.view.css.ts","../../../mol/theme/auto/auto.view.tree","../../../mol/action/action.ts","../../../mol/state/arg/arg.node.ts","../../../mol/mem/persist/persist.ts","../../../mol/mem/cached/cached.ts","../../../mol/wire/sync/sync.ts","../../../mol/storage/storage.ts","../../../mol/state/local/local.ts","../../../mol/lights/lights.ts","../../../mol/theme/auto/auto.view.ts","../../../mol/speck/speck.view.tree","../../../mol/layer/layer.ts","../../../mol/layer/-css/layer.css.ts","../../../mol/speck/-css/speck.view.css.ts","../../../mol/button/button.view.tree","../../../mol/keyboard/code/code.ts","../../../mol/button/button.view.ts","../../../mol/button/-css/button.view.css.ts","../../../mol/button/typed/typed.view.tree","../../../mol/button/typed/-css/typed.view.css.ts","../../../mol/button/minor/minor.view.tree","../../../mol/button/minor/-css/minor.view.css.ts","../../../mol/check/check.view.tree","../../../mol/maybe/maybe.ts","../../../mol/check/-css/check.css.ts","../../../mol/check/check.view.ts","../../../mol/check/icon/icon.view.tree","../../../mol/check/icon/-css/icon.view.css.ts","../../../mol/svg/svg.view.tree","../../../mol/state/time/time.ts","../../../mol/svg/svg.view.ts","../../../mol/svg/root/root.view.tree","../../../mol/svg/root/-css/root.view.css.ts","../../../mol/svg/path/path.view.tree","../../../mol/icon/icon.view.tree","../../../mol/icon/-css/icon.view.css.ts","../../../mol/icon/brightness/6/6.view.tree","../../../mol/charset/decode/decode.ts","../../../mol/charset/encode/encode.ts","../../../mol/file/file.ts","../../../mol/compare/array/array.ts","../../../mol/file/file.node.ts","../../../mol/locale/locale.ts","../../../mol/lights/toggle/toggle.view.tree","../../../localized_string","../../../mol/lights/toggle/toggle.view.ts","../../../mol/link/link.view.tree","../../../mol/link/link.view.ts","../../../mol/link/link.view.css.ts","../../../mol/icon/script/script.view.tree","../../../mol/icon/script/text/text.view.tree","../../../mol/link/source/source.view.tree","../../../mol/button/major/major.view.tree","../../../mol/button/major/-css/major.view.css.ts","../../../mol/embed/native/native.view.tree","../../../mol/promise/promise/promise.ts","../../../mol/wait/timeout/timeout.ts","../../../mol/embed/native/native.view.ts","../../../mol/embed/native/-css/native.view.css.ts","../../../mol/frame/frame.view.tree","../../../mol/frame/frame.view.ts","../../../mol/frame/frame.view.css.ts","../../../hyoo/showcase/showcase.view.tree","../../../hyoo/showcase/showcase.view.ts","../../../hyoo/showcase/-css/showcase.view.css.ts"],"names":[],"mappings":"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","sourcesContent":[null,"Error.stackTraceLimit = 50;\n\ndeclare let _$_: { new(): {} } & typeof globalThis\ndeclare class $ extends _$_ {}\n\nnamespace $ {\n\texport type $ = typeof $$\n\texport declare class $$ extends $ {}\n\tnamespace $$ {\n\t\texport type $$ = $\n\t}\n}\n\nmodule.exports = $\n","namespace $ {\n\n\texport const $mol_ambient_ref : unique symbol = Symbol( '$mol_ambient_ref' )\n\n\t/** @deprecated use $ instead */\n\texport type $mol_ambient_context = $\n\n\texport function $mol_ambient( this : $ | void , overrides : Partial< $ > ) : $ {\n\t\treturn Object.setPrototypeOf( overrides , this || $ )\n\t}\n\n}\n","namespace $ {\n\n\tconst instances = new WeakSet< any >()\n\n\t/**\n\t * Proxy that delegates all to lazy returned target.\n\t * \n\t * \t$mol_delegate( Array.prototype , ()=> fetch_array() )\n\t */\n export function $mol_delegate< Value extends object >(\n\t\tproto : Value ,\n\t\ttarget : ()=> Value ,\n\t) {\n\n\t\tconst proxy = new Proxy( proto , {\n\n\t\t\tget: ( _ , field )=> {\n\t\t\t\tconst obj = target()\n\t\t\t\tlet val = Reflect.get( obj , field )\n\t\t\t\tif( typeof val === 'function' ) {\n\t\t\t\t\tval = val.bind( obj )\n\t\t\t\t} \n\t\t\t\treturn val\n\t\t\t},\n\t\t\thas: ( _ , field )=> Reflect.has( target(), field ),\n\t\t\tset: ( _ , field , value )=> Reflect.set( target() , field , value ),\n\t\t\t\n\t\t\tgetOwnPropertyDescriptor: ( _ , field )=> Reflect.getOwnPropertyDescriptor( target() , field ),\n\t\t\townKeys: ()=> Reflect.ownKeys( target() ),\n\t\t\t\n\t\t\tgetPrototypeOf: ()=> Reflect.getPrototypeOf( target() ),\n\t\t\tsetPrototypeOf: ( _ , donor )=> Reflect.setPrototypeOf( target() , donor ),\n\t\t\t\n\t\t\tisExtensible: ()=> Reflect.isExtensible( target() ),\n\t\t\tpreventExtensions: ()=> Reflect.preventExtensions( target() ),\n\t\t\t\n\t\t\tapply: ( _ , self , args )=> Reflect.apply( target() as Function , self , args ),\n\t\t\tconstruct: ( _ , args , retarget )=> Reflect.construct( target() as Function , args , retarget ),\n\t\t\t\n\t\t\tdefineProperty: ( _ , field , descr )=> Reflect.defineProperty( target() , field , descr ),\n\t\t\tdeleteProperty: ( _ , field )=> Reflect.deleteProperty( target() , field ),\n\n\t\t} )\n\n\t\tinstances.add( proxy )\n\n\t\treturn proxy\n\n\t}\n\n\tReflect.defineProperty(\n\t\t$mol_delegate ,\n\t\tSymbol.hasInstance ,\n\t\t{\n\t\t\tvalue : ( obj : object )=> instances.has( obj ),\n\t\t},\n\t)\n\n}\n","namespace $ {\n\n\texport const $mol_owning_map = new WeakMap< any , any >()\n\n\texport function $mol_owning_allow< Having >(\n\t\thaving : Having ,\n\t) : having is Having & {\n\t\tdestructor() : void\n\t} {\n\t\ttry {\n\t\t\tif( !having ) return false\n\t\t\tif( typeof having !== 'object' && typeof having !== 'function' ) return false\n\t\t\tif( having instanceof $mol_delegate ) return false\n\t\t\tif( typeof (having as any)['destructor'] !== 'function' ) return false\n\t\t\treturn true\n\t\t} catch {\n\t\t\treturn false\n\t\t}\n\t}\n\n\texport function $mol_owning_get< Having , Owner extends object >( having : Having , Owner? : { new() : Owner } ) : Owner | null {\n\t\n\t\tif( !$mol_owning_allow( having ) ) return null\n\n\t\twhile( true ) {\n\n\t\t\tconst owner = $mol_owning_map.get( having )\n\t\t\tif( !owner ) return owner\n\t\t\tif( !Owner ) return owner\n\t\t\t\n\t\t\tif( owner instanceof Owner ) return owner\n\n\t\t\thaving = owner\n\t\t}\n\n\t}\n\t\n\texport function $mol_owning_check< Owner , Having >(\n\t\towner : Owner ,\n\t\thaving : Having ,\n\t) : having is Having & { destructor() : void } {\n\t\tif( !$mol_owning_allow( having ) ) return false\n\t\tif( $mol_owning_map.get( having ) !== owner ) return false\n\t\treturn true\n\t}\n\t\n\texport function $mol_owning_catch< Owner , Having >(\n\t\towner : Owner ,\n\t\thaving : Having ,\n\t) {\n\t\tif( !$mol_owning_allow( having ) ) return false\n\t\tif( $mol_owning_map.get( having ) ) return false\n\n\t\t$mol_owning_map.set( having , owner )\n\t\treturn true\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_fail( error : any ) : never {\n\t\tthrow error\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_fail_hidden( error : any ) : never {\n\t\tthrow error /// Use 'Never Pause Here' breakpoint in DevTools or simply blackbox this script\n\t}\n\n}\n","namespace $ {\n\t\n\tconst named = new WeakSet< Function >()\n\t\n\texport function $mol_func_name( this : $ , func : Function ) : string {\n\t\t\n\t\tlet name = func.name\n\t\tif( name?.length > 1 ) return name\n\t\tif( named.has( func ) ) return name\n\n\t\tfor( let key in this ) {\n\t\t\ttry {\n\t\t\t\tif( (this as any)[ key ] !== func ) continue\n\t\t\t\tname = key\n\t\t\t\tObject.defineProperty( func , 'name' , { value : name } )\n\t\t\t\tbreak\n\t\t\t} catch {}\n\t\t}\n\n\t\tnamed.add( func )\n\t\treturn name\n\t\t\n\t}\n\n\texport function $mol_func_name_from< Target extends Function >( target : Target , source : Function ) {\n\t\tObject.defineProperty( target , 'name' , { value : source.name } )\n\t\treturn target\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_object2 {\n\t\t\n\t\tstatic $ = $ as any as $\n\t\t\n\t\t[Symbol.toStringTag]!: string\n\n\t\t[ $mol_ambient_ref ] = null as any as $\n\t\tget $() {\n\t\t\tif( this[ $mol_ambient_ref ] ) return this[ $mol_ambient_ref ]\n\t\t\tconst owner = $mol_owning_get( this ) as any\n\t\t\treturn this[ $mol_ambient_ref ] = owner?.$ || $mol_object2.$ as $\n\t\t}\n\t\tset $( next : $ ) {\n\t\t\tif( this[ $mol_ambient_ref ] ) $mol_fail_hidden( new Error( 'Context already defined' ) )\n\t\t\tthis[ $mol_ambient_ref ] = next\n\t\t}\n\n\t\tpublic static create< Instance >(\n\t\t\tthis : new( init? : ( instance : any )=> void )=> Instance ,\n\t\t\tinit? : ( instance : $mol_type_writable )=> void\n\t\t) : Instance {\n\t\t\tconst obj = new this\n\t\t\tif( init ) init( obj )\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\tstatic [ Symbol.toPrimitive ]() {\n\t\t\treturn this.toString()\n\t\t}\n\t\t\n\t\tstatic toString() {\n\t\t\treturn ( this as any )[ Symbol.toStringTag ] || this.$.$mol_func_name( this )\n\t\t}\n\t\t\n\t\tstatic toJSON() {\n\t\t\treturn this.toString()\n\t\t}\n\t\t\n\t\tdestructor() { }\n\t\tstatic destructor() { }\n\t\t\n\t\t//[ Symbol.toPrimitive ]( hint: string ) {\n\t\t//\treturn hint === 'number' ? this.valueOf() : this.toString()\n\t\t//}\n\t\t\n\t\ttoString(): string {\n\t\t\treturn this[ Symbol.toStringTag ] || this.constructor.name + '<>'\n\t\t}\n\t\t\n\t\t// toJSON(): any {\n\t\t// \treturn this.toString()\n\t\t// }\n\n\t}\n}\n","namespace $ {\n\n\texport namespace $$ { let $ }\n\n\texport const $mol_object_field = Symbol( '$mol_object_field' )\n\t\n\texport class $mol_object extends $mol_object2 {\n\t\t\n\t\tpublic static make< This extends typeof $mol_object >(\n\t\t\tthis: This,\n\t\t\tconfig: Partial< InstanceType< This > >,\n\t\t) {\n\t\t\treturn super.create( obj => {\n\t\t\t\tfor( let key in config ) ( obj as any )[ key ] = config[ key ]!\n\t\t\t} ) as InstanceType< This >\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\t\n\texport class $mol_window extends $mol_object {\n\t\t\n\t\tstatic size() {\n\t\t\treturn {\n\t\t\t\twidth: 1024,\n\t\t\t\theight: 768,\n\t\t\t}\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\t/** Special status statuses. */\n\texport enum $mol_wire_cursor {\n\t\t\n\t\t/** Update required. */\n\t\tstale = -1,\n\t\t\n\t\t/** Some of (transitive) pub update required. */\n\t\tdoubt = -2,\n\t\t\n\t\t/** Actual state but may be dropped. */\n\t\tfresh = -3,\n\t\t\n\t\t/** State will never be changed. */\n\t\tfinal = -4,\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\t/**\n\t * Collects subscribers in compact array. 28B\n\t */\n\texport class $mol_wire_pub extends Object {\n\t\t\n\t\tdata = [] as unknown[]\n\t\t\n\t\t// Derived objects should be Arrays.\n\t\tstatic get [ Symbol.species ]() {\n\t\t\treturn Array\n\t\t}\n\t\t\n\t\t/**\n\t\t * Index of first subscriber.\n\t\t */\n\t\tprotected sub_from = 0 // 4B\n\t\t\n\t\t/**\n\t\t * All current subscribers.\n\t\t */\n\t\tget sub_list() {\n\t\t\tconst res = [] as $mol_wire_sub[]\n\t\t\tfor( let i = this.sub_from; i < this.data.length; i += 2 ) {\n\t\t\t\tres.push( this.data[i] as $mol_wire_sub )\n\t\t\t}\n\t\t\treturn res as readonly $mol_wire_sub[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * Has any subscribers or not.\n\t\t */\n\t\tget sub_empty() {\n\t\t\treturn this.sub_from === this.data.length\n\t\t}\n\t\t\n\t\t/**\n\t\t * Subscribe subscriber to this publisher events and return position of subscriber that required to unsubscribe.\n\t\t */\n\t\tsub_on( sub: $mol_wire_pub, pub_pos: number ) {\n\t\t\tconst pos = this.data.length\n\t\t\tthis.data.push( sub, pub_pos )\n\t\t\treturn pos\n\t\t}\n\t\t\n\t\t/**\n\t\t * Unsubscribe subscriber from this publisher events by subscriber position provided by `on(pub)`.\n\t\t */\n\t\tsub_off( sub_pos: number ) {\n\t\t\t\n\t\t\tif(!( sub_pos < this.data.length )) {\n\t\t\t\t$mol_fail( new Error( `Wrong pos ${ sub_pos }` ) )\n\t\t\t}\n\t\t\t\n\t\t\tconst end = this.data.length - 2\n\t\t\tif( sub_pos !== end ) {\n\t\t\t\tthis.peer_move( end, sub_pos )\n\t\t\t}\n\t\t\t\n\t\t\tthis.data.pop()\n\t\t\tthis.data.pop()\n\t\t\t\n\t\t\tif( this.data.length === this.sub_from ) this.reap()\n\t\t\t\n\t\t}\n\t\t\n\t\t/**\n\t\t * Called when last sub was unsubscribed.\n\t\t **/\n\t\treap() { }\n\t\t\n\t\t/**\n\t\t * Autowire this publisher with current subscriber.\n\t\t **/\n\t\tpromote() {\n\t\t\t$mol_wire_auto()?.track_next( this )\n\t\t}\n\t\t\n\t\t/**\n\t\t * Enforce actualization. Should not throw errors.\n\t\t */\n\t\tfresh() {}\n\t\t\n\t\t/**\n\t\t * Allow to put data to caches in the subtree.\n\t\t */\n\t\tcomplete() {}\n\t\t\n\t\tget incompleted() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * Notify subscribers about self changes.\n\t\t */\n\t\temit( quant = $mol_wire_cursor.stale ) {\n\t\t\tfor( let i = this.sub_from; i < this.data.length; i += 2 ) {\n\t\t\t\t;( this.data[i] as $mol_wire_sub ).absorb( quant )\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * Moves peer from one position to another. Doesn't clear data at old position!\n\t\t */\n\t\tpeer_move( from_pos: number, to_pos: number ) {\n\t\t\t\n\t\t\tconst peer = this.data[ from_pos ] as $mol_wire_pub\n\t\t\tconst self_pos = this.data[ from_pos + 1 ] as number\n\t\t\t\n\t\t\tthis.data[ to_pos ] = peer\n\t\t\tthis.data[ to_pos + 1 ] = self_pos\n\t\t\t\n\t\t\tpeer.peer_repos( self_pos, to_pos )\n\t\t}\n\t\t\n\t\t/**\n\t\t * Updates self position in the peer.\n\t\t */\n\t\tpeer_repos( peer_pos: number, self_pos: number ) {\n\t\t\tthis.data[ peer_pos + 1 ] = self_pos\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport let $mol_wire_auto_sub: $mol_wire_sub | null = null\n\t\n\t/**\n\t * When fulfilled, all publishers are promoted to this subscriber on access to its.\n\t */\n\texport function $mol_wire_auto( next = $mol_wire_auto_sub ) {\n\t\treturn $mol_wire_auto_sub = next\n\t}\n\t\n\t/**\n\t * Affection queue. Used to prevent accidental stack overflow on emit.\n\t */\n\texport const $mol_wire_affected = [] as ( $mol_wire_sub | number )[]\n\t\n}\n","namespace $ {\n\n\t// https://docs.google.com/document/d/1FTascZXT9cxfetuPRT2eXPQKXui4nWFivUnS_335T3U/preview#\n\t($ as any)['devtoolsFormatters'] ||= []\n\n\texport function $mol_dev_format_register( config : {\n\t\theader : ( val : any , config : any )=> any\n\t\thasBody : ( val : any , config : any )=> false\n\t} | {\n\t\theader : ( val : any , config : any )=> any\n\t\thasBody : ( val : any , config : any )=> boolean\n\t\tbody : ( val : any , config : any )=> any\n\t} ) {\n\t\t($ as any)['devtoolsFormatters'].push( config )\n\t}\n\n\texport let $mol_dev_format_head = Symbol( '$mol_dev_format_head' )\n\texport let $mol_dev_format_body = Symbol( '$mol_dev_format_body' )\n\n\t$mol_dev_format_register({\n\n\t\theader : ( val : any , config = false ) => {\n\t\t\t\n\t\t\tif( config ) return null\n\n\t\t\tif( !val ) return null\n\t\t\t\n\t\t\tif( $mol_dev_format_head in val ) {\n\t\t\t\ttry {\n\t\t\t\t\treturn val[ $mol_dev_format_head ]()\n\t\t\t\t} catch( error ) {\n\t\t\t\t\treturn $mol_dev_format_accent( $mol_dev_format_native( val ), '💨', $mol_dev_format_native( error ), '' )\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tif( typeof val === 'function' ) {\n\t\t\t\treturn $mol_dev_format_native( val )\n\t\t\t}\n\t\t\t\n\t\t\tif( Symbol.toStringTag in val ) {\n\t\t\t\treturn $mol_dev_format_native( val )\n\t\t\t}\n\t\t\t\n\t\t\treturn null\n\t\t\t\n\t\t} ,\n\t\t\n\t\thasBody : val => val[ $mol_dev_format_body ] ,\n\n\t\tbody : val => val[ $mol_dev_format_body ]() ,\n\n\t})\n\n\texport function $mol_dev_format_native( obj : any ) {\n\t\t\n\t\tif( typeof obj === 'undefined' ) return $mol_dev_format_shade( 'undefined' )\n\t\t\n\t\t// if( ![ 'object', 'function', 'symbol' ].includes( typeof obj ) ) return obj\n\n\t\treturn [\n\t\t\t'object' ,\n\t\t\t{\n\t\t\t\tobject : obj ,\n\t\t\t\tconfig : true ,\n\t\t\t} ,\n\t\t]\n\n\t}\n\n\texport function $mol_dev_format_auto( obj : any ) {\n\t\t\n\t\tif( obj == null ) return $mol_dev_format_shade( String( obj ) )\n\n\t\treturn [\n\t\t\t'object' ,\n\t\t\t{\n\t\t\t\tobject : obj ,\n\t\t\t\tconfig : false ,\n\t\t\t} ,\n\t\t]\n\n\t}\n\n\texport function $mol_dev_format_element( element : string , style : object , ...content : any[] ) {\n\t\t\t\n\t\tconst styles = [] as string[]\n\t\t\n\t\tfor( let key in style ) styles.push( `${ key } : ${ (style as any)[key] }` )\n\t\t\n\t\treturn [\n\t\t\telement ,\n\t\t\t{\n\t\t\t\tstyle : styles.join( ' ; ' ) ,\n\t\t\t} ,\n\t\t\t... content ,\n\t\t]\n\n\t}\n\n\texport function $mol_dev_format_span( style : object , ...content : any[] ) {\n\t\treturn $mol_dev_format_element(\n\t\t\t'span' ,\n\t\t\t{\n\t\t\t\t// 'vertical-align' : '8%',\n\t\t\t\t... style ,\n\t\t\t} ,\n\t\t\t... content ,\n\t\t)\n\t}\n\n\texport let $mol_dev_format_div = $mol_dev_format_element.bind( null , 'div' )\n\texport let $mol_dev_format_ol = $mol_dev_format_element.bind( null , 'ol' )\n\texport let $mol_dev_format_li = $mol_dev_format_element.bind( null , 'li' )\n\texport let $mol_dev_format_table = $mol_dev_format_element.bind( null , 'table' )\n\texport let $mol_dev_format_tr = $mol_dev_format_element.bind( null , 'tr' )\n\texport let $mol_dev_format_td = $mol_dev_format_element.bind( null , 'td' )\n\n\texport let $mol_dev_format_accent = $mol_dev_format_span.bind( null , {\n\t\t'color' : 'magenta' ,\n\t} )\n\n\texport let $mol_dev_format_strong = $mol_dev_format_span.bind( null , {\n\t\t'font-weight' : 'bold' ,\n\t} )\n\n\texport let $mol_dev_format_string = $mol_dev_format_span.bind( null , {\n\t\t'color' : 'green',\n\t} )\n\n\texport let $mol_dev_format_shade = $mol_dev_format_span.bind( null , {\n\t\t'color' : 'gray',\n\t} )\n\n\texport let $mol_dev_format_indent = $mol_dev_format_div.bind( null , {\n\t\t'margin-left': '13px'\n\t} )\n\n}\n","namespace $ {\n\t\n\t/**\n\t * Publisher that can auto collect other publishers. 32B\n\t * \n\t * \tP1 P2 P3 P4 S1 S2 S3\n\t * \t^ ^\n\t * \tpubs_from subs_from\n\t */\n\texport class $mol_wire_pub_sub extends $mol_wire_pub implements $mol_wire_sub {\n\t\t\n\t\tprotected pub_from = 0 // 4B\n\t\tprotected cursor = $mol_wire_cursor.stale // 4B\n\t\t\n\t\tget temp() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\tget pub_list() {\n\t\t\tconst res = [] as $mol_wire_pub[]\n\t\t\tconst max = this.cursor >=0 ? this.cursor : this.sub_from\n\t\t\tfor( let i = this.pub_from; i < max; i += 2 ) {\n\t\t\t\tif( this.data[i] ) res.push( this.data[i] as $mol_wire_pub )\n\t\t\t}\n\t\t\treturn res\n\t\t}\n\t\t\n\t\ttrack_on() {\n\t\t\tthis.cursor = this.pub_from\n\t\t\tconst sub = $mol_wire_auto()\n\t\t\t$mol_wire_auto( this )\n\t\t\treturn sub\n\t\t}\n\t\t\n\t\tpromote() {\n\t\t\t\n\t\t\tif( this.cursor >= this.pub_from ) {\n\t\t\t\t$mol_fail( new Error( 'Circular subscription' ) )\n\t\t\t}\n\t\t\t\n\t\t\tsuper.promote()\n\t\t}\n\t\t\n\t\ttrack_next( pub?: $mol_wire_pub ): $mol_wire_pub | null {\n\t\t\t\n\t\t\tif( this.cursor < 0 ) $mol_fail( new Error( 'Promo to non begun sub' ) )\n\t\t\t\n\t\t\tif( this.cursor < this.sub_from ) {\n\t\t\t\n \t\t\t\tconst next = this.data[ this.cursor ] as $mol_wire_pub | undefined\n\t\t\t\tif( pub === undefined ) return next ?? null\n\t\t\t\t\n\t\t\t\tif( next === pub ) {\n\t\t\t\t\tthis.cursor += 2\n\t\t\t\t\treturn next\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( next ) {\n\t\t\t\t\t\n\t\t\t\t\tif( this.sub_from < this.data.length ) {\n\t\t\t\t\t\tthis.peer_move( this.sub_from, this.data.length )\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tthis.peer_move( this.cursor, this.sub_from )\n\t\t\t\t\tthis.sub_from += 2\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} else {\n\t\t\t\t\n\t\t\t\tif( pub === undefined ) return null\n\t\t\t\t\n\t\t\t\tif( this.sub_from < this.data.length ) {\n\t\t\t\t\tthis.peer_move( this.sub_from, this.data.length )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tthis.sub_from += 2\n\t\t\t\t\n\t\t\t}\t\t\t\n\t\t\t\n\t\t\tthis.data[ this.cursor ] = pub\n\t\t\tthis.data[ this.cursor + 1 ] = pub.sub_on( this, this.cursor )\n\t\t\t\n\t\t\tthis.cursor += 2\n\t\t\t\n\t\t\treturn pub\n\t\t}\n\t\t\n\t\ttrack_off( sub: $mol_wire_sub | null ) {\n\t\t\t\n\t\t\t$mol_wire_auto( sub )\n\t\t\t\n\t\t\tif( this.cursor < 0 ) {\n\t\t\t\t$mol_fail( new Error( 'End of non begun sub' ) )\n\t\t\t}\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.pub_from;\n\t\t\t\tcursor < this.cursor;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub\n\t\t\t\tpub.fresh()\n\t\t\t}\n\t\t\t\n\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\n\t\t}\n\t\t\n\t\tpub_off( sub_pos: number ) {\n\t\t\tthis.data[ sub_pos ] = undefined as any\n\t\t\tthis.data[ sub_pos + 1 ] = undefined as any \n\t\t}\n\t\t\n\t\tdestructor() {\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.data.length - 2;\n\t\t\t\tcursor >= this.sub_from;\n\t\t\t\tcursor -= 2\n\t\t\t) {\n\t\t\t\tconst sub = this.data[ cursor ] as $mol_wire_sub\n\t\t\t\tconst pos = this.data[ cursor + 1 ] as number\n\t\t\t\tsub.pub_off( pos )\n\t\t\t\tthis.data.pop()\n\t\t\t\tthis.data.pop()\n\t\t\t}\n\t\t\t\n\t\t\tthis.cursor = this.pub_from\n\t\t\tthis.track_cut()\n\t\t\tthis.cursor = $mol_wire_cursor.final\n\t\t\t\n\t\t}\n\t\t\n\t\ttrack_cut() {\n\t\t\t\n\t\t\tif( this.cursor < this.pub_from ) {\n\t\t\t\t$mol_fail( new Error( 'Cut of non begun sub' ) )\n\t\t\t}\n\t\t\t\n\t\t\tlet tail = 0\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.cursor;\n\t\t\t\tcursor < this.sub_from;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\t\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub | undefined\n\t\t\t\tpub?.sub_off( this.data[ cursor + 1 ] as number )\n\t\t\t\t\n\t\t\t\tif( this.sub_from < this.data.length ) {\n\t\t\t\t\tthis.peer_move( this.data.length - 2, cursor )\n\t\t\t\t\tthis.data.pop()\n\t\t\t\t\tthis.data.pop()\n\t\t\t\t} else {\n\t\t\t\t\t++ tail\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tfor(; tail; -- tail ) {\n\t\t\t\tthis.data.pop()\n\t\t\t\tthis.data.pop()\n\t\t\t}\n\t\t\t\n\t\t\tthis.sub_from = this.cursor\n\t\t\t\n\t\t}\n\t\t\n\t\tcomplete() { }\n\t\t\n\t\tcomplete_pubs() {\n\t\t\t\n\t\t\tconst limit = this.cursor < 0 ? this.sub_from : this.cursor \n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.pub_from;\n\t\t\t\tcursor < limit;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub\n\t\t\t\tif( pub?.incompleted ) return \n\t\t\t}\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.pub_from;\n\t\t\t\tcursor < limit;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub\n\t\t\t\tpub?.complete()\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tabsorb( quant = $mol_wire_cursor.stale ) {\n\t\t\t\n\t\t\tif( this.cursor === $mol_wire_cursor.final ) return\n\t\t\tif( this.cursor >= quant ) return\n\t\t\t\n\t\t\tthis.cursor = quant\n\t\t\tthis.emit( $mol_wire_cursor.doubt )\n\t\t\t\n\t\t}\n\t\t\n\t\t[ $mol_dev_format_head ]() {\n\t\t\treturn $mol_dev_format_native( this )\n\t\t}\n\t\t\n\t\t/**\n\t\t * Is subscribed to any publisher or not.\n\t\t */\n\t\tget pub_empty() {\n\t\t\treturn this.sub_from === this.pub_from\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\texport class $mol_after_timeout extends $mol_object2 {\n\n\t\tid : any\n\n\t\tconstructor(\n\t\t\tpublic delay : number ,\n\t\t\tpublic task : ()=> void ,\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis.id = setTimeout( task , delay )\n\t\t}\n\n\t\tdestructor() {\n\t\t\tclearTimeout( this.id )\n\t\t}\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport class $mol_after_frame extends $mol_after_timeout {\n\n\t\tconstructor(\n\t\t\tpublic task : ()=> void ,\n\t\t) {\n\t\t\tsuper( 16 , task )\n\t\t}\n\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_promise_like( val: any ): val is Promise {\n\t\treturn val && typeof val === 'object' && 'then' in val && typeof val.then === 'function'\n\t}\n\n}\n","namespace $ {\n\t\n\tconst handled = new WeakSet< Promise< unknown > >()\n\t\n\t/**\n\t * Suspendable task with support both sync/async api.\n\t * \n\t * \tA1 A2 A3 A4 P1 P2 P3 P4 S1 S2 S3\n\t * \t^ ^ ^\n\t * \targs_from pubs_from subs_from\n\t **/\n\texport abstract class $mol_wire_fiber<\n\t\tHost,\n\t\tArgs extends readonly unknown[],\n\t\tResult,\n\t> extends $mol_wire_pub_sub {\n\t\n\t\tstatic warm = true\n\t\t\n\t\tstatic planning = new Set< $mol_wire_fiber< any, any, any > >()\n\t\tstatic reaping = new Set< $mol_wire_fiber< any, any, any > >()\n\t\t\n\t\tstatic plan_task: $mol_after_frame | null = null\n\t\tstatic plan() {\n\t\t\t\n\t\t\tif( this.plan_task ) return\n\t\t\t\n\t\t\tthis.plan_task = new $mol_after_frame( ()=> {\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\tthis.sync()\n\t\t\t\t} finally {\n\t\t\t\t\t$mol_wire_fiber.plan_task = null\n\t\t\t\t}\n\n\t\t\t} )\n\t\t\t\n\t\t}\n\t\t\n\t\tstatic sync() {\n\t\t\t\n\t\t\t// Sync whole fiber graph\n\t\t\twhile( this.planning.size ) {\n\t\t\t\tfor( const fiber of this.planning ) {\n\t\t\t\t\tthis.planning.delete( fiber )\n\t\t\t\t\tif( fiber.cursor >= 0 ) continue\n\t\t\t\t\tif( fiber.cursor === $mol_wire_cursor.final ) continue\n\t\t\t\t\tfiber.fresh()\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\t// Collect garbage\n\t\t\twhile( this.reaping.size ) {\n\t\t\t\t\n\t\t\t\tconst fibers = this.reaping\n\t\t\t\tthis.reaping = new Set\n\t\t\t\t\n\t\t\t\tfor( const fiber of fibers ) {\n\t\t\t\t\tif( !fiber.sub_empty ) continue\n\t\t\t\t\tfiber.destructor()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\t[Symbol.toStringTag]!: string\n\n\t\tpublic cache: Result | Error | Promise< Result | Error > = undefined as any\n\t\t\n\t\tget args() {\n\t\t\treturn this.data.slice( 0 , this.pub_from ) as any as Args\n\t\t}\n\t\t\n\t\tresult() {\n\t\t\tif( $mol_promise_like( this.cache ) ) return\n\t\t\tif( this.cache instanceof Error ) return\n\t\t\treturn this.cache\n\t\t}\n\t\t\n\t\tget incompleted() {\n\t\t\treturn $mol_promise_like( this.cache )\n\t\t}\n\t\t\n\t\tfield() {\n\t\t\treturn this.task.name + '<>'\n\t\t}\n\t\t\n\t\tconstructor(\n\t\t\tid: string,\n\t\t\treadonly task: ( this : Host , ... args : Args )=> Result,\n\t\t\treadonly host?: Host,\n\t\t\targs?: Args\n\t\t) {\n\t\t\t\n\t\t\tsuper()\n\t\t\tif( args ) this.data.push( ... args )\n\t\t\tthis.pub_from = this.sub_from = args?.length ?? 0\n\t\t\tthis[ Symbol.toStringTag ] = id\n\t\t\t\n\t\t}\n\t\t\n\t\tplan() {\n\t\t\t$mol_wire_fiber.planning.add( this )\n\t\t\t$mol_wire_fiber.plan()\n\t\t}\n\t\t\n\t\treap() {\n\t\t\t$mol_wire_fiber.reaping.add( this )\n\t\t\t$mol_wire_fiber.plan()\n\t\t}\n\t\t\n\t\ttoString() {\n\t\t\treturn this[ Symbol.toStringTag ]\n\t\t}\n\t\t\n\t\ttoJSON() {\n\t\t\treturn this[ Symbol.toStringTag ]\n\t\t}\n\n\t\t[ $mol_dev_format_head ]() {\n\t\t\t\n\t\t\tconst cursor = {\n\t\t\t\t[ $mol_wire_cursor.stale ]: '🔴',\n\t\t\t\t[ $mol_wire_cursor.doubt ]: '🟡',\n\t\t\t\t[ $mol_wire_cursor.fresh ]: '🟢',\n\t\t\t\t[ $mol_wire_cursor.final ]: '🔵',\n\t\t\t}[ this.cursor ] ?? this.cursor.toString()\n\t\t\t\n\t\t\treturn $mol_dev_format_div( {},\n\t\t\t\t$mol_owning_check( this, this.cache )\n\t\t\t\t\t? $mol_dev_format_auto({\n\t\t\t\t\t\t[ $mol_dev_format_head ]: ()=> $mol_dev_format_shade( cursor ),\n\t\t\t\t\t\t[ $mol_dev_format_body ]: ()=> $mol_dev_format_native( this ),\n\t\t\t\t\t})\n\t\t\t\t\t: $mol_dev_format_shade( $mol_dev_format_native( this ), cursor ),\n\t\t\t\t$mol_dev_format_auto( this.cache ),\n\t\t\t)\n\t\t\t\n\t\t}\n\t\t\n\t\tget $() {\n\t\t\treturn ( this.host ?? this.task as any )['$']\n\t\t}\n\t\t\n\t\temit( quant = $mol_wire_cursor.stale ) {\n\t\t\tif( this.sub_empty ) this.plan()\n\t\t\telse super.emit( quant )\n\t\t}\n\t\t\n\t\tfresh() {\n\n\t\t\ttype Result = typeof this.cache\n\t\t\t\n\t\t\tif( this.cursor === $mol_wire_cursor.fresh ) return\n\t\t\tif( this.cursor === $mol_wire_cursor.final ) return\n\t\t\t\n\t\t\tcheck: if( this.cursor === $mol_wire_cursor.doubt ) {\n\t\t\t\t\n\t\t\t\tfor( let i = this.pub_from ; i < this.sub_from; i += 2 ) {\n\t\t\t\t\t;( this.data[i] as $mol_wire_pub )?.fresh()\n\t\t\t\t\tif( this.cursor !== $mol_wire_cursor.doubt ) break check\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\treturn\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tconst bu = this.track_on()\n\t\t\tlet result: typeof this.cache\n\n\t\t\ttry {\n\n\t\t\t\tswitch( this.pub_from ) {\n\t\t\t\t\tcase 0: result = (this.task as any).call( this.host! ); break\n\t\t\t\t\tcase 1: result = (this.task as any).call( this.host!, this.data[0] ); break\n\t\t\t\t\tdefault: result = (this.task as any).call( this.host!, ... this.args ); break\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_promise_like( result ) ) {\n\t\t\t\t\t\n\t\t\t\t\tconst put = ( res: Result )=> {\n\t\t\t\t\t\tif( this.cache === result ) this.put( res )\n\t\t\t\t\t\treturn res\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tresult = Object.assign( result.then( put, put ), {\n\t\t\t\t\t\tdestructor: (result as any)['destructor'] ?? (()=> {})\n\t\t\t\t\t} )\n\t\t\t\t\t\n\t\t\t\t\thandled.add( result )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t\n\t\t\t\tif( error instanceof Error || $mol_promise_like( error ) ) {\n\t\t\t\t\tresult = error\n\t\t\t\t} else {\n\t\t\t\t\tresult = new Error( String( error ), { cause: error } )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_promise_like( result ) && !handled.has( result ) ) {\n\t\t\t\t\t\n\t\t\t\t\tresult = Object.assign( result.finally( ()=> {\n\t\t\t\t\t\tif( this.cache === result ) this.absorb()\n\t\t\t\t\t} ), {\n\t\t\t\t\t\tdestructor: (result as any)['destructor'] ?? (()=> {})\n\t\t\t\t\t} )\n\t\t\t\t\t\n\t\t\t\t\thandled.add( result )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tif( ! $mol_promise_like( result ) ) {\n\t\t\t\tthis.track_cut()\n\t\t\t}\n\t\t\t\n\t\t\tthis.track_off( bu )\n\t\t\tthis.put( result )\n\n\t\t}\n\t\t\n\t\trefresh() {\n\t\t\tthis.cursor = $mol_wire_cursor.stale\n\t\t\tthis.fresh()\n\t\t}\n\t\t\n\t\tabstract put( next: Result | Error | Promise< Result | Error > ): Result | Error | Promise< Result | Error >\n\t\t\n\t\t/**\n\t\t * Synchronous execution. Throws Promise when waits async task (SuspenseAPI provider).\n\t\t * Should be called inside SuspenseAPI consumer (ie fiber).\n\t\t */\n\t\tsync() {\n\t\t\t\n\t\t\tif( !$mol_wire_fiber.warm ) {\n\t\t\t\treturn this.result() as Awaited< Result >\n\t\t\t}\n\t\t\t\n\t\t\tthis.promote()\n\t\t\tthis.fresh()\n\t\t\t\n\t\t\tif( this.cache instanceof Error ) {\n\t\t\t\treturn $mol_fail_hidden( this.cache )\n\t\t\t}\n\t\t\t\n\t\t\tif( $mol_promise_like( this.cache ) ) {\n\t\t\t\treturn $mol_fail_hidden( this.cache )\n\t\t\t}\n\t\t\t\n\t\t\treturn this.cache as Awaited< Result >\n\t\t}\n\n\t\t/**\n\t\t * Asynchronous execution.\n\t\t * It's SuspenseAPI consumer. So SuspenseAPI providers can be called inside.\n\t\t */\n\t\tasync async() {\n\t\t\t\n\t\t\twhile( true ) {\n\t\t\t\t\n\t\t\t\tthis.fresh()\n\t\t\t\t\n\t\t\t\tif( this.cache instanceof Error ) {\n\t\t\t\t\t$mol_fail_hidden( this.cache )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( ! $mol_promise_like( this.cache ) ) return this.cache\n\t\t\t\t\t\n\t\t\t\tawait Promise.race([ this.cache, this.step() ])\n\t\t\t\tif( ! $mol_promise_like( this.cache ) ) return this.cache\n\t\t\t\t\t\n\t\t\t\tif( this.cursor === $mol_wire_cursor.final ) {\n\t\t\t\t\t// never ends on destructed fiber\n\t\t\t\t\tawait new Promise( ()=> {} )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\tstep() {\n\t\t\treturn new Promise< null >( done => {\n\t\t\t\tconst sub = new $mol_wire_pub_sub\n\t\t\t\tconst prev = sub.track_on()\n\t\t\t\tsub.track_next( this )\n\t\t\t\tsub.track_off( prev )\n\t\t\t\tsub.absorb = ()=> {\n\t\t\t\t\tdone( null )\n\t\t\t\t\tsub.destructor()\n\t\t\t\t}\n\t\t\t} )\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\t/** Generates unique identifier. */\n\texport function $mol_guid(\n\t\tlength = 8,\n\t\texists: ( id: string )=> boolean = ()=> false,\n\t) {\n\n\t\tfor(;;) {\n\n\t\t\tlet id = Math.random().toString( 36 ).substring( 2, length + 2 ).toUpperCase()\n\t\t\tif( exists( id ) ) continue\n\t\t\t\n\t\t\treturn id\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\t\n\texport const $mol_key_store = new WeakMap< object, string >()\n\n\t/** Returns string key for any value. */\n\texport function $mol_key< Value >( value : Value ) : string {\n\t\t\n\t\tif( typeof value === 'bigint' ) return value.toString() + 'n'\n\t\tif( typeof value === 'symbol' ) return value.description!\n\t\tif( !value ) return JSON.stringify( value )\n\t\tif( typeof value !== 'object' && typeof value !== 'function' ) return JSON.stringify( value )\n\t\t\n\t\treturn JSON.stringify( value, ( field, value )=> {\n\t\t\t\n\t\t\tif( typeof value === 'bigint' ) return value.toString() + 'n'\n\t\t\tif( typeof value === 'symbol' ) return value.description\n\t\t\tif( !value ) return value\n\t\t\tif( typeof value !== 'object' && typeof value !== 'function' ) return value\n\t\t\tif( Array.isArray( value ) ) return value\n\t\t\t\n\t\t\tconst proto = Reflect.getPrototypeOf( value )\n\t\t\tif( !proto ) return value\n\t\t\tif( Reflect.getPrototypeOf( proto ) === null ) return value\n\t\t\t\n\t\t\tif( 'toJSON' in value ) return value\n\t\t\tif( value instanceof RegExp ) return value.toString()\n\t\t\tif( value instanceof Uint8Array ) return [ ... value ]\n\t\t\t\n\t\t\tlet key = $mol_key_store.get( value )\n\t\t\tif( key ) return key\n\t\t\t\n\t\t\tkey = $mol_guid()\n\t\t\t$mol_key_store.set( value, key )\n\t\t\t\n\t\t\treturn key\n\t\t} )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport let $mol_compare_deep_cache = new WeakMap< any , WeakMap< any , boolean > >()\n\t\n\t/**\n\t * Deeply compares two values. Returns true if equal.\n\t * Define `Symbol.toPrimitive` to customize.\n\t */\n\texport function $mol_compare_deep< Value >( left: Value, right: Value ): boolean {\n\n\t\tif( Object.is( left , right ) ) return true\n\n\t\tif( left === null ) return false\n\t\tif( right === null ) return false\n\n\t\tif( typeof left !== 'object' ) return false\n\t\tif( typeof right !== 'object' ) return false\n\n\t\tconst left_proto = Reflect.getPrototypeOf( left as any )\n\t\tconst right_proto = Reflect.getPrototypeOf( right as any )\n\t\t\n\t\tif( left_proto !== right_proto ) return false\n\n\t\tif( left instanceof Boolean ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof Number ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof String ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof Date ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof RegExp ) return left.source === (right as any).source && left.flags === (right as any).flags\n\t\tif( left instanceof Error ) return left.message === (right as any).message && left.stack === (right as any).stack\n\n\t\tlet left_cache = $mol_compare_deep_cache.get( left )\n\t\tif( left_cache ) {\n\n\t\t\tconst right_cache = left_cache.get( right )\n\t\t\tif( typeof right_cache === 'boolean' ) return right_cache\n\n\t\t} else {\n\t\t\t\n\t\t\tleft_cache = new WeakMap< any , boolean >([[ right, true ]])\n\t\t\t$mol_compare_deep_cache.set( left , left_cache )\n\n\t\t}\n\n\t\tlet result!: boolean\n\n\t\ttry {\n\t\t\t\n\t\t\tif( !left_proto ) result = compare_pojo( left, right as any )\n\t\t\telse if( !Reflect.getPrototypeOf( left_proto ) ) result = compare_pojo( left, right as any )\n\t\t\telse if( Symbol.toPrimitive in left ) result = compare_primitive( left, right )\n\t\t\telse if( Array.isArray( left ) ) result = compare_array( left, right as any )\n\t\t\telse if( left instanceof Set ) result = compare_set( left, right as any )\n\t\t\telse if( left instanceof Map ) result = compare_map( left, right as any )\n\t\t\telse if( ArrayBuffer.isView( left ) ) result = compare_buffer( left, right as any )\n\t\t\telse if( Symbol.iterator in left ) result = compare_iterator( ( left as any )[ Symbol.iterator ](), ( right as any )[ Symbol.iterator ]() )\n\t\t\telse result = false\n\n\t\t} finally {\n\t\t\tleft_cache.set( right , result )\n\t\t}\n\t\t\n\t\treturn result\n\t}\n\n\tfunction compare_array< Value extends any[] >( left: Value, right: Value ): boolean {\n\t\t\n\t\tconst len = left.length\n\t\tif( len !== right.length ) return false\n\t\t\n\t\tfor( let i = 0; i < len; ++i ) {\n\t\t\tif( !$mol_compare_deep( left[i] , right[i] ) ) return false\n\t\t}\n\t\t\n\t\treturn true\n\t}\n\t\n\tfunction compare_buffer( left: ArrayBufferView, right: ArrayBufferView ): boolean {\n\t\t\n\t\tconst len = left.byteLength\n\t\tif( len !== right.byteLength ) return false\n\t\t\n\t\tif( left instanceof DataView ) return compare_buffer(\n\t\t\tnew Uint8Array( left.buffer, left.byteOffset, left.byteLength ),\n\t\t\tnew Uint8Array( right.buffer, left.byteOffset, left.byteLength ),\n\t\t)\n\t\t\n\t\tfor( let i = 0; i < len; ++i ) {\n\t\t\tif( (left as any)[i] !== (right as any)[i] ) return false\n\t\t}\n\t\t\n\t\treturn true\n\t}\n\t\n\tfunction compare_iterator< Value extends IterableIterator >(\n\t\tleft: Value,\n\t\tright: Value,\n\t): boolean {\n\t\t\n\t\twhile( true ) {\n\n\t\t\tconst left_next = left.next()\n\t\t\tconst right_next = right.next()\n\n\t\t\tif( left_next.done !== right_next.done ) return false\n\t\t\tif( left_next.done ) break\n\n\t\t\tif( !$mol_compare_deep( left_next.value , right_next.value ) ) return false\n\n\t\t}\n\n\t\treturn true\n\n\t}\n\t\n\tfunction compare_set< Value extends Set >( left: Value, right: Value ): boolean {\n\t\tif( left.size !== right.size ) return false\n\t\treturn compare_iterator( left.values(), right.values() )\n\t}\n\t\n\tfunction compare_map< Key, Value >( left: Map< Key, Value > , right: Map< Key, Value > ): boolean {\n\t\tif( left.size !== right.size ) return false\n\t\treturn compare_iterator( left.keys(), right.keys() )\n\t\t\t&& compare_iterator( left.values(), right.values() )\n\t}\n\t\n\tfunction compare_pojo( left: {}, right: {} ): boolean {\n\t\t\n\t\tconst left_keys = Object.getOwnPropertyNames( left )\n\t\tconst right_keys = Object.getOwnPropertyNames( right )\n\t\t\n\t\tif( !compare_array( left_keys, right_keys ) ) return false\n\n\t\tfor( let key of left_keys ) {\n\t\t\tif( !$mol_compare_deep( ( left as any )[ key ], ( right as any )[ key ] ) ) return false\n\t\t}\n\n\t\tconst left_syms = Object.getOwnPropertySymbols( left )\n\t\tconst right_syms = Object.getOwnPropertySymbols( right )\n\t\t\n\t\tif( !compare_array( left_syms, right_syms ) ) return false\n\n\t\tfor( let key of left_syms ) {\n\t\t\tif( !$mol_compare_deep( ( left as any )[ key ], ( right as any )[ key ] ) ) return false\n\t\t}\n\n\t\treturn true\n\t}\n\t\n\tfunction compare_primitive( left: {}, right: {} ): boolean {\n\t\treturn Object.is(\n\t\t\t(left as any)[ Symbol.toPrimitive ]( 'default' ),\n\t\t\t(right as any)[ Symbol.toPrimitive ]( 'default' ),\n\t\t)\n\t}\n\t\n}\n","namespace $ {\n\n\t/** Logger event data */\n\texport type $mol_log3_event< Fields > = {\n\t\t[ key in string ] : unknown\n\t} & {\n\t\t\n\t\t/** Time of event creation */\n\t\ttime? : string\n\n\t\t/** Place of event creation */\n\t\tplace : unknown\n\n\t\t/** Short description of event */\n\t\tmessage : string\n\n\t} & Fields\n\n\t/** Logger function */\n\texport type $mol_log3_logger< Fields , Res = void > = (\n\t\tthis : $ ,\n\t\tevent : $mol_log3_event< Fields > ,\n\t)=> Res\n\n\t/** Log begin of some task */\n\texport declare let $mol_log3_come : $mol_log3_logger<{}>\n\t\n\t/** Log end of some task */\n\texport declare let $mol_log3_done : $mol_log3_logger<{}>\n\t\n\t/** Log error */\n\texport declare let $mol_log3_fail : $mol_log3_logger<{}>\n\t\n\t/** Log warning message */\n\texport declare let $mol_log3_warn : $mol_log3_logger<{ hint : string }>\n\t\n\t/** Log some generic event */\n\texport declare let $mol_log3_rise : $mol_log3_logger<{}>\n\n\t/** Log begin of log group, returns func to close group */\n\texport declare let $mol_log3_area : $mol_log3_logger< {} , ()=> void >\n\n\t/** Log begin of collapsed group only when some logged inside, returns func to close group */\n\texport function $mol_log3_area_lazy(\n\t\tthis : $ ,\n\t\tevent : $mol_log3_event<{}> ,\n\t) {\n\n\t\tconst self = this\n\t\tconst stack = self.$mol_log3_stack\n\n\t\tconst deep = stack.length\n\t\tlet logged = false\n\n\t\tstack.push( ()=> {\n\t\t\tlogged = true\n\t\t\tself.$mol_log3_area.call( self , event )\n\t\t} )\n\n\t\treturn ()=> {\n\t\t\tif( logged ) self.console.groupEnd()\n\t\t\tif( stack.length > deep ) stack.length = deep\n\t\t}\n\n\t}\n\n\texport let $mol_log3_stack = [] as ( ()=> void )[]\n\n}\n","namespace $ {\n\n\t/** Position in any resource. */\n\texport class $mol_span extends $mol_object2 {\n\n\t\tconstructor(\n\t\t\treadonly uri: string ,\n\t\t\treadonly source: string ,\n\t\t\treadonly row: number ,\n\t\t\treadonly col: number ,\n\t\t\treadonly length: number ,\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis[ Symbol.toStringTag ] = `${ this.uri }#${ this.row }:${ this.col }/${ this.length }`\n\t\t}\n\n\t\t/** Span for begin of unknown resource */\n\t\tstatic unknown = $mol_span.begin('?')\n\n\t\t/** Makes new span for begin of resource. */\n\t\tstatic begin( uri: string, source = '' ) {\n\t\t\treturn new $mol_span( uri , source, 1 , 1 , 0 )\n\t\t}\n\n\t\t/** Makes new span for end of resource. */\n\t\tstatic end( uri: string , source: string ) {\n\t\t\treturn new $mol_span( uri , source, 1 , source.length + 1 , 0 )\n\t\t}\n\n\t\t/** Makes new span for entire resource. */\n\t\tstatic entire( uri: string , source: string ) {\n\t\t\treturn new $mol_span( uri , source, 1 , 1 , source.length )\n\t\t}\n\n\t\ttoString() {\n\t\t\treturn this[ Symbol.toStringTag ]\n\t\t}\n\n\t\ttoJSON() {\n\t\t\treturn {\n\t\t\t\turi: this.uri,\n\t\t\t\trow: this.row,\n\t\t\t\tcol: this.col,\n\t\t\t\tlength: this.length\n\t\t\t}\n\t\t}\n\n\t\t/** Makes new error for this span. */\n\t\terror( message : string , Class = Error ) {\n\t\t\treturn new Class( `${message} (${this})` )\n\t\t}\n\n\t\t/** Makes new span for same uri. */\n\t\tspan( row : number , col : number , length : number ) {\n\t\t\treturn new $mol_span( this.uri , this.source, row , col , length )\n\t\t}\n\n\t\t/** Makes new span after end of this. */\n\t\tafter( length = 0 ) {\n\t\t\treturn new $mol_span( this.uri , this.source, this.row , this.col + this.length , length )\n\t\t}\n\n\t\t/** Makes new span between begin and end. */\n\t\tslice( begin: number, end = -1 ) {\n\t\t\tlet len = this.length\n\t\t\t\n\t\t\tif( begin < 0 ) begin += len\n\t\t\tif( end < 0 ) end += len\n\n\t\t\tif (begin < 0 || begin > len) this.$.$mol_fail( this.error( `Begin value '${begin}' out of range`, RangeError ) )\n\t\t\tif (end < 0 || end > len) this.$.$mol_fail( this.error( `End value '${end}' out of range`, RangeError ) )\n\t\t\tif (end < begin) this.$.$mol_fail( this.error( `End value '${end}' can't be less than begin value`, RangeError ) )\n\n\t\t\treturn this.span( this.row , this.col + begin , end - begin )\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\t/** Serializes tree to string in tree format. */\n\texport function $mol_tree2_to_string(\n\t\tthis: $,\n\t\ttree: $mol_tree2,\n\t) : string {\n\n\t\tlet output = [] as string[]\n\t\t\n\t\tfunction dump(\n\t\t\ttree: $mol_tree2,\n\t\t\tprefix = '',\n\t\t) {\n\n\t\t\tif( tree.type.length ) {\n\t\t\t\t\n\t\t\t\tif( !prefix.length ) {\n\t\t\t\t\tprefix = \"\\t\";\n\t\t\t\t}\n\n\t\t\t\toutput.push( tree.type )\n\n\t\t\t\tif( tree.kids.length == 1 ) {\n\t\t\t\t\toutput.push( ' ' )\n\t\t\t\t\tdump( tree.kids[ 0 ], prefix )\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\toutput.push( \"\\n\" )\n\n\t\t\t} else if( tree.value.length || prefix.length ) {\n\n\t\t\t\toutput.push( \"\\\\\" + tree.value + \"\\n\" )\n\n\t\t\t}\n\n\t\t\tfor( const kid of tree.kids ) {\n\t\t\t\toutput.push( prefix )\n\t\t\t\tdump( kid, prefix + \"\\t\" )\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tdump( tree )\n\n\t\treturn output.join('')\n\t}\n\t\t\n}\n","namespace $ {\n\n\t/** Path by types in tree. */\n\texport type $mol_tree2_path =\n\t\tArray< string | number | null >\n\t\n\t/** Hask tool for processing node. */\n\texport type $mol_tree2_hack< Context > =\n\t\t(\n\t\t\tinput : $mol_tree2 ,\n\t\t\tbelt : $mol_tree2_belt< Context > ,\n\t\t\tcontext : Context ,\n\t\t)=> readonly $mol_tree2[]\n\n\t/** Collection of hask tools for processing tree. */\n\texport type $mol_tree2_belt< Context > =\n\t\tRecord< string , $mol_tree2_hack< Context > >\n\n\t/**\n\t * Abstract Syntax Tree with human readable serialization.\n\t * Avoid direct instantiation. Use static factories instead.\n\t * @see https://github.com/nin-jin/tree.d\n\t */\n\texport class $mol_tree2 extends Object {\n\t\t\n\t\tconstructor(\n\n\t\t\t/** Type of structural node, `value` should be empty */\n\t\t\treadonly type : string,\n\t\t\t\n\t\t\t/** Content of data node, `type` should be empty */\n\t\t\treadonly value : string,\n\n\t\t\t/** Child nodes */\n\t\t\treadonly kids : readonly $mol_tree2[],\n\t\t\t\n\t\t\t/** Position in most far source resource */\n\t\t\treadonly span : $mol_span,\n\n\t\t) {\n\t\t\tsuper()\n\t\t\t;(this as any)[ Symbol.toStringTag ] = type || '\\\\' + value\n\t\t}\n\n\t\t/** Makes collection node. */\n\t\tstatic list(\n\t\t\tkids : readonly $mol_tree2[] ,\n\t\t\tspan = $mol_span.unknown ,\n\t\t) {\n\t\t\treturn new $mol_tree2( '' , '' , kids , span )\n\t\t}\n\t\t\n\t\t/** Makes new derived collection node. */\n\t\tlist(\n\t\t\tkids : readonly $mol_tree2[] ,\n\t\t) {\n\t\t\treturn $mol_tree2.list( kids , this.span )\n\t\t}\n\n\t\t/** Makes data node for any string. */\n\t\tstatic data(\n\t\t\tvalue : string ,\n\t\t\tkids = [] as readonly $mol_tree2[] ,\n\t\t\tspan = $mol_span.unknown ,\n\t\t) {\n\n\t\t\tconst chunks = value.split( '\\n' )\n\n\t\t\tif( chunks.length > 1 ) {\n\t\t\t\n\t\t\t\tlet kid_span = span.span( span.row , span.col , 0 )\n\n\t\t\t\tconst data = chunks.map( chunk => {\n\t\t\t\t\tkid_span = kid_span.after( chunk.length )\n\t\t\t\t\treturn new $mol_tree2( '' , chunk , [] , kid_span )\n\t\t\t\t} )\n\n\t\t\t\tkids = [ ... data , ... kids ]\n\n\t\t\t\tvalue = ''\n\n\t\t\t}\n\n\t\t\treturn new $mol_tree2( '' , value , kids , span )\n\n\t\t}\n\t\t\n\t\t/** Makes new derived data node. */\n\t\tdata(\n\t\t\tvalue : string ,\n\t\t\tkids = [] as readonly $mol_tree2[] ,\n\t\t) {\n\t\t\treturn $mol_tree2.data( value , kids , this.span )\n\t\t}\n\t\t\n\t\t/** Makes struct node. */\n\t\tstatic struct(\n\t\t\ttype : string ,\n\t\t\tkids = [] as readonly $mol_tree2[] ,\n\t\t\tspan = $mol_span.unknown ,\n\t\t) {\n\n\t\t\tif( /[ \\n\\t\\\\]/.test( type ) ) {\n\t\t\t\t$$.$mol_fail( span.error( `Wrong type ${ JSON.stringify( type ) }` ) )\n\t\t\t}\n\n\t\t\treturn new $mol_tree2( type , '' , kids , span )\n\n\t\t}\n\t\t\n\t\t/** Makes new derived structural node. */\n\t\tstruct(\n\t\t\ttype : string ,\n\t\t\tkids = [] as readonly $mol_tree2[] ,\n\t\t) {\n\t\t\treturn $mol_tree2.struct( type , kids , this.span )\n\t\t}\n\n\t\t/** Makes new derived node with different kids id defined. */\n\t\tclone( kids : readonly $mol_tree2[], span = this.span ) {\n\t\t\treturn new $mol_tree2( this.type , this.value , kids , span )\n\t\t}\n\n\t\t/** Returns multiline text content. */\n\t\ttext() {\n\n\t\t\tvar values : string[] = []\n\t\t\t\n\t\t\tfor( var kid of this.kids ) {\n\t\t\t\tif( kid.type ) continue\n\t\t\t\tvalues.push( kid.value )\n\t\t\t}\n\t\t\t\n\t\t\treturn this.value + values.join( '\\n' )\n\n\t\t}\n\t\t\n\t\t/** Parses tree format. */\n\t\t/** @deprecated Use $mol_tree2_from_string */\n\t\tstatic fromString( str : string , uri = 'unknown' ) {\n\t\t\treturn $$.$mol_tree2_from_string( str, uri )\n\t\t}\n\n\t\t/** Serializes to tree format. */\n\t\ttoString() : string {\n\t\t\treturn $$.$mol_tree2_to_string( this )\n\t\t}\n\t\t\n\t\t/** Makes new tree with node overrided by path. */\n\t\tinsert( value : $mol_tree2 | null , ...path : $mol_tree2_path ) : $mol_tree2 {\n\n\t\t\tif( path.length === 0 ) return value!\n\t\t\t\n\t\t\tconst type = path[0]\n\t\t\tif( typeof type === 'string' ) {\n\n\t\t\t\tlet replaced = false\n\t\t\t\tconst sub = this.kids.map( ( item , index )=> {\n\t\t\t\t\tif( item.type !== type ) return item\n\t\t\t\t\treplaced = true\n\t\t\t\t\treturn item.insert( value , ... path.slice( 1 ) )\n\t\t\t\t} ).filter( Boolean )\n\t\t\t\t\n\t\t\t\tif( !replaced && value ) {\n\t\t\t\t\tsub.push( this.struct( type , [] ).insert( value , ... path.slice( 1 ) ) )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn this.clone( sub )\n\n\t\t\t} else if( typeof type === 'number' ) {\n\t\t\t\t\n\t\t\t\tconst sub = this.kids.slice()\n\t\t\t\tsub[ type ] = ( sub[ type ] || this.list([]) )\n\t\t\t\t\t.insert( value , ... path.slice( 1 ) )\n\t\t\t\t\n\t\t\t\treturn this.clone( sub.filter( Boolean ) )\n\n\t\t\t} else {\n\t\t\t\t\n\t\t\t\tconst kids = ( ( this.kids.length === 0 ) ? [ this.list([]) ] : this.kids )\n\t\t\t\t.map( item => item.insert( value , ... path.slice( 1 ) ) )\n\t\t\t\t.filter( Boolean )\n\n\t\t\t\treturn this.clone( kids )\n\n\t\t\t}\n\n\t\t}\n\n\t\t/** Query nodes by path. */\n\t\tselect( ...path : $mol_tree2_path ) {\n\n\t\t\tlet next = [ this as $mol_tree2 ]\n\n\t\t\tfor( const type of path ) {\n\n\t\t\t\tif( !next.length ) break\n\t\t\t\t\n\t\t\t\tconst prev = next\n\t\t\t\tnext = []\n\n\t\t\t\tfor( var item of prev ) {\n\n\t\t\t\t\tswitch( typeof( type ) ) {\n\n\t\t\t\t\t\tcase 'string' :\n\n\t\t\t\t\t\t\tfor( var child of item.kids ) {\n\t\t\t\t\t\t\t\tif( child.type == type ) {\n\t\t\t\t\t\t\t\t\tnext.push( child )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\n\t\t\t\t\t\tcase 'number' :\n\n\t\t\t\t\t\t\tif( type < item.kids.length ) next.push( item.kids[ type ] )\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\n\t\t\t\t\t\tdefault : next.push( ... item.kids )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn this.list( next )\n\t\t\t\n\t\t}\n\t\t\n\t\t/** Filter kids by path or value. */\n\t\tfilter( path : string[] , value? : string ) {\n\n\t\t\tconst sub = this.kids.filter( item => {\n\t\t\t\t\t\n\t\t\t\tvar found = item.select( ...path )\n\t\t\t\t\n\t\t\t\tif( value === undefined ) {\n\t\t\t\t\treturn Boolean( found.kids.length )\n\t\t\t\t} else {\n\t\t\t\t\treturn found.kids.some( child => child.value == value )\n\t\t\t\t}\n\t\t\t\n\t\t\t} )\n\t\t\t\n\t\t\treturn this.clone( sub )\n\n\t\t}\n\n\t\thack_self< Context extends { span?: $mol_span; [ key: string ]: unknown } = {} >(\n\t\t\tbelt: $mol_tree2_belt< Context >,\n\t\t\tcontext = {} as Context,\n\t\t) {\n\t\t\tlet handle = belt[ this.type ] || belt[ '' ]\n\t\t\t\t\n\t\t\tif( !handle || handle === Object.prototype[ this.type as keyof Object ] ) {\n\t\t\t\thandle = ( input, belt, context )=> [\n\t\t\t\t\tinput.clone( input.hack( belt, context ), context.span )\n\t\t\t\t]\n\t\t\t}\n\t\t\t\n\t\t\ttry {\n\t\t\t\treturn handle( this , belt , context! )\n\t\t\t} catch( error: any ) {\n\t\t\t\terror.message += `\\n${ this.clone([]) }${ this.span }`\n\t\t\t\t$mol_fail_hidden( error )\n\t\t\t}\n\t\t}\n\n\t\t/** Transform tree through context with transformers */\n\t\thack< Context extends { span?: $mol_span; [ key: string ]: unknown } = {} >(\n\t\t\tbelt: $mol_tree2_belt< Context >,\n\t\t\tcontext = {} as Context,\n\t\t) {\n\t\t\treturn ( [] as readonly $mol_tree2[] ).concat(\n\t\t\t\t... this.kids.map( child => child.hack_self(belt, context) )\n\t\t\t)\n\n\t\t}\n\n\t\t/** Makes Error with node coordinates. */\n\t\terror( message : string , Class = Error ) {\n\t\t\treturn this.span.error( `${ message }\\n${ this.clone([]) }` , Class )\n\t\t}\n\n\t}\n\n\texport class $mol_tree2_empty extends $mol_tree2 {\n\t\tconstructor() {\n\t\t\tsuper( '' , '' , [] , $mol_span.unknown )\n\t\t}\n\t}\n\t\n}\n","namespace $ {\n\n\t/** Syntax error with cordinates and source line snippet. */\n\texport class $mol_error_syntax extends SyntaxError {\n\t\tconstructor (\n\t\t\tpublic reason: string,\n\t\t\tpublic line: string,\n\t\t\tpublic span: $mol_span,\n\t\t) {\n\t\t\tsuper(`${ reason }\\n${ span }\\n${ line.substring( 0 , span.col - 1 ).replace( /\\S/g, ' ' ) }${ ''.padEnd( span.length, '!' ) }\\n${ line }`)\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\t/** Parses tree format from string. */\n\texport function $mol_tree2_from_string(\n\t\tthis: $,\n\t\tstr: string,\n\t\turi = '?',\n\t) : $mol_tree2 {\n\n\t\tconst span = $mol_span.entire( uri, str )\n\n\t\tvar root = $mol_tree2.list( [], span )\n\t\tvar stack = [ root ]\n\n\t\tvar pos = 0, row = 0, min_indent = 0\n\t\t\n\t\twhile( str.length > pos ) {\n\n\t\t\tvar indent = 0\n\t\t\tvar line_start = pos\n\n\t\t\trow++\n\n\t\t\t// read indent\n\t\t\twhile( str.length > pos && str[ pos ] == '\\t' ) {\n\t\t\t\tindent++\n\t\t\t\tpos++\n\t\t\t}\n\n\t\t\tif( ! root.kids.length ) {\n\t\t\t\tmin_indent = indent\n\t\t\t}\n\n\t\t\tindent -= min_indent\n\n\t\t\t// invalid tab size\n\t\t\tif( indent < 0 || indent >= stack.length ) {\n\n\t\t\t\tconst sp = span.span( row, 1, pos - line_start )\n\n\t\t\t\t// skip error line\n\t\t\t\twhile( str.length > pos && str[ pos ] != '\\n' ) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\n\t\t\t\tif( indent < 0 ) {\n\t\t\t\t\tif( str.length > pos ) {\n\t\t\t\t\t\tthis.$mol_fail( new this.$mol_error_syntax(\n\t\t\t\t\t\t\t`Too few tabs`,\n\t\t\t\t\t\t\tstr.substring( line_start, pos ),\n\t\t\t\t\t\t\tsp,\n\t\t\t\t\t\t) )\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.$mol_fail( new this.$mol_error_syntax(\n\t\t\t\t\t\t`Too many tabs`,\n\t\t\t\t\t\tstr.substring( line_start, pos ),\n\t\t\t\t\t\tsp,\n\t\t\t\t\t) )\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t\tstack.length = indent + 1\n\t\t\tvar parent = stack[ indent ]\n\n\t\t\t// parse types\n\t\t\twhile( str.length > pos && str[ pos ] != '\\\\' && str[ pos ] != '\\n' ) {\n\n\t\t\t\t// type can not contain space and tab\n\t\t\t\tvar error_start = pos\n\t\t\t\twhile( str.length > pos && ( str[ pos ] == ' ' || str[ pos ] == '\\t' ) ) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\n\t\t\t\tif( pos > error_start ) {\n\t\t\t\t\tlet line_end = str.indexOf( '\\n' , pos )\n\t\t\t\t\tif( line_end === -1 ) line_end = str.length\n\t\t\t\t\tconst sp = span.span( row, error_start - line_start + 1, pos - error_start )\n\t\t\t\t\tthis.$mol_fail( new this.$mol_error_syntax(\n\t\t\t\t\t\t`Wrong nodes separator`,\n\t\t\t\t\t\tstr.substring( line_start, line_end ),\n\t\t\t\t\t\tsp,\n\t\t\t\t\t) )\n\t\t\t\t}\n\n\t\t\t\t// read type\n\t\t\t\tvar type_start = pos\n\t\t\t\twhile( \n\t\t\t\t\tstr.length > pos && \n\t\t\t\t\tstr[ pos ] != '\\\\' && \n\t\t\t\t\tstr[ pos ] != ' ' && \n\t\t\t\t\tstr[ pos ] != '\\t' && \n\t\t\t\t\tstr[ pos ] != '\\n'\n\t\t\t\t) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\t\t\t\tif( pos > type_start ) {\n\t\t\t\t\tlet next = new $mol_tree2(\n\t\t\t\t\t\tstr.slice( type_start , pos ),\n\t\t\t\t\t\t'',\n\t\t\t\t\t\t[],\n\t\t\t\t\t\tspan.span( row, type_start - line_start + 1, pos - type_start ),\n\t\t\t\t\t)\n\t\t\t\t\tconst parent_kids = parent.kids as $mol_tree2[]\n\t\t\t\t\tparent_kids.push( next )\n\t\t\t\t\tparent = next\n\t\t\t\t}\n\n\t\t\t\t// read one space if exists\n\t\t\t\tif( str.length > pos && str[ pos ] == ' ' ) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// read data\n\t\t\tif( str.length > pos && str[ pos ] == '\\\\' ) {\n\t\t\t\tvar data_start = pos\n\t\t\t\twhile( str.length > pos && str[ pos ] != '\\n' ) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\t\t\t\tlet next = new $mol_tree2(\n\t\t\t\t\t'',\n\t\t\t\t\tstr.slice( data_start + 1 , pos ),\n\t\t\t\t\t[],\n\t\t\t\t\tspan.span( row, data_start - line_start + 2, pos - data_start - 1 ),\n\t\t\t\t)\n\t\t\t\tconst parent_kids = parent.kids as $mol_tree2[]\n\t\t\t\tparent_kids.push( next )\n\t\t\t\tparent = next\n\t\t\t}\n\n\t\t\t// now must be end of text\n\t\t\tif( str.length === pos && stack.length > 0 ) {\n\t\t\t\tconst sp = span.span( row, pos - line_start + 1, 1 )\n\t\t\t\tthis.$mol_fail( new this.$mol_error_syntax(\n\t\t\t\t\t`Unexpected EOF, LF required`,\n\t\t\t\t\tstr.substring( line_start, str.length ),\n\t\t\t\t\tsp,\n\t\t\t\t) )\n\t\t\t}\n\n\t\t\tstack.push( parent )\n\t\t\tpos++\n\t\t}\n\n\t\treturn root\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_tree2_from_json( json: any, span = $mol_span.unknown ): $mol_tree2 {\n\n\t\tif( typeof json === 'boolean' || typeof json === 'number' || json === null ) {\n\t\t\treturn new $mol_tree2( String( json ) , '' , [] , span )\n\t\t}\n\t\t\n\t\tif( typeof json === 'string' ) {\n\t\t\treturn $mol_tree2.data( json , [], span )\n\t\t}\n\n\t\tif( Array.isArray( json ) ) {\n\t\t\tconst sub = json.map( json => $mol_tree2_from_json( json , span ) )\n\t\t\treturn new $mol_tree2( '/' , '', sub, span )\n\t\t}\n\t\t\n\t\tif( ArrayBuffer.isView( json ) ) {\n\t\t\tconst buf = new Uint8Array( json.buffer, json.byteOffset, json.byteLength )\n\t\t\treturn $mol_tree2.data( String.fromCharCode( ... buf ) , [], span )\n\t\t}\n\t\t\t\n\t\tif( json instanceof Date ) {\n\t\t\treturn new $mol_tree2( '', json.toISOString() , [] , span )\n\t\t}\n\n\t\tif( typeof json.toJSON === 'function' ) {\n\t\t\treturn $mol_tree2_from_json( json.toJSON() )\n\t\t}\n\n\t\tif( json.toString !== Object.prototype.toString ) {\n\t\t\treturn $mol_tree2.data( json.toString() , [], span )\n\t\t}\n\n\t\tif( json instanceof Error ) {\n\t\t\tconst { name , message , stack } = json\n\t\t\tjson = { ... json, name, message, stack }\n\t\t}\n\n\t\tconst sub = [] as $mol_tree2[]\n\t\t\n\t\tfor( var key in json ) {\n\n\t\t\tconst val = json[ key ]\n\n\t\t\tif( val === undefined ) continue\n\n\t\t\tconst subsub = $mol_tree2_from_json( val, span )\n\t\t\t\n\t\t\tif( /^[^\\n\\t\\\\ ]+$/.test( key ) ) {\n\t\t\t\tsub.push( new $mol_tree2( key, '', [ subsub ], span ) )\n\t\t\t} else {\n\t\t\t\tsub.push( $mol_tree2.data( key, [ subsub ], span ) )\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\treturn new $mol_tree2( '*' , '', sub , span )\n\t\t\t\n\t}\n\n}\n","namespace $ {\n\t\n\t/** Module for working with terminal. Text coloring when output in terminal */\n\texport class $mol_term_color {\n\t\t\n\t\tstatic reset = this.ansi( 0, 0 )\n\t\tstatic bold = this.ansi( 1, 22 )\n\t\tstatic italic = this.ansi( 3, 23 )\n\t\tstatic underline = this.ansi( 4, 24 )\n\t\tstatic inverse = this.ansi( 7, 27 )\n\t\tstatic hidden = this.ansi( 8, 28 )\n\t\tstatic strike = this.ansi( 9, 29 )\n\t\t\n\t\tstatic gray = this.ansi( 90, 39 )\n\t\tstatic red = this.ansi( 91, 39 )\n\t\tstatic green = this.ansi( 92, 39 )\n\t\tstatic yellow = this.ansi( 93, 39 )\n\t\tstatic blue = this.ansi( 94, 39 )\n\t\tstatic magenta = this.ansi( 95, 39 )\n\t\tstatic cyan = this.ansi( 96, 39 )\n\t\t\n\t\tstatic Gray = ( str: string )=> this.inverse( this.gray( str ) )\n\t\tstatic Red = ( str: string )=> this.inverse( this.red( str ) )\n\t\tstatic Green = ( str: string )=> this.inverse( this.green( str ) )\n\t\tstatic Yellow = ( str: string )=> this.inverse( this.yellow( str ) )\n\t\tstatic Blue = ( str: string )=> this.inverse( this.blue( str ) )\n\t\tstatic Magenta = ( str: string )=> this.inverse( this.magenta( str ) )\n\t\tstatic Cyan = ( str: string )=> this.inverse( this.cyan( str ) )\n\t\t\n\t\tstatic ansi( open: number, close: number ) {\n\t\n\t\t\tif( typeof process === 'undefined' ) return String\n\t\t\tif( !process.stdout.isTTY ) return String\n\t\t\n\t\t\tconst prefix = `\\x1b[${open}m`\n\t\t\tconst postfix = `\\x1b[${close}m`\n\t\t\t\n\t\t\tconst suffix_regexp = new RegExp( postfix.replace( '[', '\\\\[' ), 'g' )\n\t\t\n\t\t\treturn function colorer( str: string ) {\n\t\t\n\t\t\t\tstr = String( str )\n\t\t\t\tif( str === '' ) return str\n\t\t\n\t\t\t\tconst suffix = str.replace( suffix_regexp, prefix )\n\t\t\t\treturn prefix + suffix + postfix\n\t\t\n\t\t\t}\n\t\t\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_log3_node_make(\n\t\tlevel : keyof Console ,\n\t\toutput : 'stdout' | 'stderr',\n\t\ttype : string ,\n\t\tcolor: ( str: string )=> string ,\n\t) {\n\n\t\treturn function $mol_log3_logger(\n\t\t\tthis : $ ,\n\t\t\tevent : $mol_log3_event<{}> ,\n\t\t) {\n\n\t\t\tif( !event.time ) event = { time : new Date().toISOString() , ... event }\n\n\t\t\tlet tree = this.$mol_tree2_from_json( event )\n\t\t\ttree = tree.struct( type, tree.kids )\n\t\t\t\n\t\t\tlet str = color( tree.toString() )\n\t\t\t;( this.console[ level ] as any )( str )\n\t\n\t\t\tconst self = this\n\t\t\treturn ()=> self.console.groupEnd()\n\n\t\t}\n\n\t}\n\n\t$.$mol_log3_come = $mol_log3_node_make( 'info' , 'stdout' , 'come' , $mol_term_color.blue )\n\t$.$mol_log3_done = $mol_log3_node_make( 'info' , 'stdout' , 'done' , $mol_term_color.green )\n\t$.$mol_log3_fail = $mol_log3_node_make( 'error' , 'stderr' , 'fail' , $mol_term_color.red )\n\t$.$mol_log3_warn = $mol_log3_node_make( 'warn' , 'stderr' , 'warn' , $mol_term_color.yellow )\n\t$.$mol_log3_rise = $mol_log3_node_make( 'log' , 'stdout' , 'rise' , $mol_term_color.magenta )\n\t$.$mol_log3_area = $mol_log3_node_make( 'log' , 'stdout' , 'area' , $mol_term_color.cyan )\n\n}\n","namespace $ {\n\t\n\t/** One-shot fiber */\n\texport class $mol_wire_task<\n\t\tHost,\n\t\tArgs extends readonly unknown[],\n\t\tResult,\n\t> extends $mol_wire_fiber< Host, Args, Result > {\n\t\t\n\t\tstatic getter<\n\t\t\tHost,\n\t\t\tArgs extends readonly unknown[],\n\t\t\tResult,\n\t\t>(\n\t\t\ttask: ( this : Host , ... args : Args )=> Result,\n\t\t): ( host: Host, args: Args )=> $mol_wire_task< Host, Args, Result > {\n\t\t\t\n\t\t\treturn function $mol_wire_task_get( host: Host, args: Args ) {\n\t\t\t\t\n\t\t\t\tconst sub = $mol_wire_auto()\n\t\t\t\tconst existen = sub?.track_next() as $mol_wire_task< Host, Args, Result > | undefined\n\t\t\t\t\n\t\t\t\treuse: if( existen ) {\n\t\t\t\t\t\n\t\t\t\t\tif( !existen.temp ) break reuse\n\t\t\t\t\t\n\t\t\t\t\tif( existen.host !== host ) break reuse\n\t\t\t\t\tif( existen.task !== task ) break reuse\n\t\t\t\t\tif( !$mol_compare_deep( existen.args, args ) ) break reuse\n\t\t\t\t\t\n\t\t\t\t\treturn existen\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tconst next = new $mol_wire_task( `${ (host as any)?.[ Symbol.toStringTag ] ?? host }.${ task.name }<#>`, task, host, args )\n\t\t\t\t\n\t\t\t\t// Disabled because non-idempotency is required for try-catch\n\t\t\t\tif( existen?.temp ) {\n\t\t\t\t\t$$.$mol_log3_warn({\n\t\t\t\t\t\tplace: '$mol_wire_task',\n\t\t\t\t\t\tmessage: `Non idempotency`,\n\t\t\t\t\t\texisten,\n\t\t\t\t\t\tnext,\n\t\t\t\t\t\thint: 'Ignore it',\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn next\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tget temp() {\n\t\t\treturn true\n\t\t}\n\t\t\n\t\tcomplete() {\n\t\t\tif( $mol_promise_like( this.cache ) ) return\n\t\t\tthis.destructor()\n\t\t}\n\t\t\n\t\tput( next: Result | Error | Promise< Result | Error > ) {\n\t\t\t\n\t\t\tconst prev = this.cache\n\t\t\tthis.cache = next\n\t\t\t\n\t\t\tif( $mol_promise_like( next ) ) {\n\t\t\t\t\n\t\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\tif( next !== prev ) this.emit()\n\t\t\t\t\n\t\t\t\treturn next\n\t\t\t}\n\t\t\t\n\t\t\tthis.cursor = $mol_wire_cursor.final\n\t\t\t\n\t\t\tif( this.sub_empty ) this.destructor()\n\t\t\telse if( next !== prev ) this.emit()\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\t\n\t/**\n\t * Decorates method to fiber to ensure it is executed only once inside other fiber.\n\t */\n\texport function $mol_wire_method<\n\t\tHost extends object,\n\t\tArgs extends readonly any[],\n\t>(\n\t\thost : Host,\n\t\tfield : PropertyKey,\n\t\tdescr? : TypedPropertyDescriptor< ( ... args: Args )=> any >,\n\t) {\n\t\t\n\t\tif( !descr ) descr = Reflect.getOwnPropertyDescriptor( host , field ) as any\n\t\tconst orig = descr?.value! ?? (host as any)[ field ]\n\t\t\n\t\tconst sup = Reflect.getPrototypeOf( host )!\t\n\t\tif( typeof (sup as any)[ field ] === 'function' ) {\n\t\t\tObject.defineProperty( orig , 'name' , { value : (sup as any)[ field ].name } )\n\t\t}\n\t\t\n\t\tconst temp = $mol_wire_task.getter( orig )\n\t\tconst value = function( this: Host, ... args: Args ) {\n\t\t\tconst fiber = temp( this ?? null as any, args )\n\t\t\treturn fiber.sync()\n\t\t}\n\t\t\n\t\tObject.defineProperty( value , 'name' , { value : orig.name + ' ' } )\n\t\t\n\t\tObject.assign( value, { orig } )\n\t\tconst descr2 = { ... descr, value }\n\t\tReflect.defineProperty( host, field, descr2 )\n\t\t\n\t\treturn descr2\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\tconst catched = new WeakMap< any , boolean >()\n\n\texport function $mol_fail_catch( error: unknown ) {\n\t\t\n\t\tif( typeof error !== 'object' ) return false\n\t\tif( $mol_promise_like( error ) ) $mol_fail_hidden( error )\n\t\tif( catched.get( error ) ) return false\n\t\t\n\t\tcatched.set( error , true )\n\t\treturn true\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_fail_log( error: unknown ) {\n\t\t\n\t\tif( $mol_promise_like( error ) ) return false\n\t\tif( !$mol_fail_catch( error ) ) return false\n\t\t\n\t\tconsole.error( error )\n\t\t\n\t\treturn true\n\t\t\n\t}\n\n}\n","namespace $ {\n\n\t/** Long-living fiber. */\n\texport class $mol_wire_atom<\n\t\tHost,\n\t\tArgs extends readonly unknown[],\n\t\tResult,\n\t> extends $mol_wire_fiber< Host, Args, Result > {\n\n\t\tstatic solo<\n\t\t\tHost,\n\t\t\tArgs extends readonly unknown[],\n\t\t\tResult,\n\t\t>(\n\t\t\thost: Host,\n\t\t\ttask: ( this: Host, ... args: Args )=> Result,\n\t\t): $mol_wire_atom< Host, Args, Result > {\n\t\t\t\n\t\t\tconst field = task.name + '<>'\n\t\t\t\n\t\t\tconst existen = Object.getOwnPropertyDescriptor( host ?? task, field )?.value\n\t\t\tif( existen ) return existen\n\t\t\t\n\t\t\tconst prefix = (host as any)?.[ Symbol.toStringTag ] ?? ( host instanceof Function ? $$.$mol_func_name( host ) : host )\n\t\t\tconst key = `${ prefix }.${ field }`\n\t\t\t\n\t\t\tconst fiber = new $mol_wire_atom( key, task, host, [] as any as Args )\n\t\t\t;( host as any ?? task )[ field ] = fiber\n\t\t\t\n\t\t\treturn fiber\n\t\t}\n\t\t\n\t\tstatic plex<\n\t\t\tHost,\n\t\t\tArgs extends readonly unknown[],\n\t\t\tResult,\n\t\t>(\n\t\t\thost: Host,\n\t\t\ttask: ( this: Host , ... args: Args )=> Result,\n\t\t\tkey: Args[0],\n\t\t): $mol_wire_atom< Host, Args, Result > {\n\t\t\t\n\t\t\tconst field = task.name + '<>'\n\t\t\tlet dict = Object.getOwnPropertyDescriptor( host ?? task, field )?.value\n\t\t\tconst prefix = (host as any)?.[ Symbol.toStringTag ] ?? ( host instanceof Function ? $$.$mol_func_name( host ) : host )\n\t\t\tconst key_str = $mol_key( key )\n\t\t\t\n\t\t\tif( dict ) {\n\t\t\t\tconst existen = dict.get( key_str )\n\t\t\t\tif( existen ) return existen\n\t\t\t} else {\n\t\t\t\tdict = ( host as any ?? task )[ field ] = new Map()\n\t\t\t}\n\t\t\t\n\t\t\tconst id = `${ prefix }.${ task.name }<${ key_str.replace( /^\"|\"$/g, \"'\" ) }>`\n\t\t\tconst fiber = new $mol_wire_atom( id, task, host, [ key ] as any as Args )\n\t\t\tdict.set( key_str, fiber )\n\t\t\t\n\t\t\treturn fiber\n\t\t}\n\t\t\n\t\tstatic watching = new Set< $mol_wire_atom< any, any, any > >()\n\t\tstatic watcher = null as $mol_after_frame | null\n\t\t\n\t\tstatic watch() {\n\t\t\n\t\t\t$mol_wire_atom.watcher = new $mol_after_frame( $mol_wire_atom.watch )\n\t\t\t\n\t\t\tfor( const atom of $mol_wire_atom.watching ) {\n\t\t\t\t\n\t\t\t\tif( atom.cursor === $mol_wire_cursor.final ) {\n\t\t\t\t\t$mol_wire_atom.watching.delete( atom )\n\t\t\t\t} else {\n\t\t\t\t\tatom.cursor = $mol_wire_cursor.stale\n\t\t\t\t\tatom.fresh()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\twatch() {\n\t\t\t\n\t\t\tif( !$mol_wire_atom.watcher ) {\n\t\t\t\t$mol_wire_atom.watcher = new $mol_after_frame( $mol_wire_atom.watch )\n\t\t\t}\n\t\t\t\n\t\t\t$mol_wire_atom.watching.add( this )\n\t\t\t\n\t\t}\n\t\t\n\t\t/**\n\t\t * Update fiber value through another temp fiber.\n\t\t */\n\t\t@ $mol_wire_method\n\t\tresync( args: Args ) {\n\t\t\treturn this.put( this.task.call( this.host!, ... args ) )\n\t\t}\n\t\t\n\t\t@ $mol_wire_method\n\t\tonce() {\n\t\t\treturn this.sync()\n\t\t}\n\t\t\n\t\tchannel() {\n\t\t\treturn Object.assign( ( next?: $mol_type_foot< Args > )=> {\n\t\t\t\t\t\n\t\t\t\tif( next !== undefined ) return this.resync( [ ... this.args, next ] as any ) as never\n\t\t\t\tif( !$mol_wire_fiber.warm ) return this.result() as never\n\t\t\t\t\n\t\t\t\tif( $mol_wire_auto()?.temp ) {\n\t\t\t\t\treturn this.once()\n\t\t\t\t} else {\n\t\t\t\t\treturn this.sync()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}, { atom: this as $mol_wire_atom< Host, Args, Result > } )\n\t\t}\n\t\t\n\t\tdestructor() {\n\t\t\t\n\t\t\tsuper.destructor()\n\t\t\t\n\t\t\tconst prev = this.cache\n\t\t\tif( $mol_owning_check( this, prev ) ) {\n\t\t\t\tprev.destructor()\n\t\t\t}\n\t\t\t\n\t\t\tif( this.pub_from === 0 ) {\n\t\t\t\t;( this.host as any ?? this.task )[ this.field() ] = null\n\t\t\t} else {\n\t\t\t\t;( this.host as any ?? this.task )[ this.field() ].delete( $mol_key( this.args[0] ) )\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\tput( next: Result | Error | Promise< Result | Error > ) {\n\t\t\t\n\t\t\tconst prev = this.cache\n\t\t\t\n\t\t\tupdate: if( next !== prev ) {\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\tif( $mol_compare_deep( prev, next ) ) break update\n\t\t\t\t} catch( error: any ) {\n\t\t\t\t\t$mol_fail_log( error )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_owning_check( this, prev ) ) {\n\t\t\t\t\tprev.destructor()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_owning_catch( this, next ) ) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\t(next as any)[ Symbol.toStringTag ] = (this as any)[ Symbol.toStringTag ]\n\t\t\t\t\t} catch { // Promises throw in strict mode\n\t\t\t\t\t\tObject.defineProperty( next, Symbol.toStringTag, { value: (this as any)[ Symbol.toStringTag ] } )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( !this.sub_empty ) this.emit()\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tthis.cache = next\n\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\n\t\t\tif( $mol_promise_like( next ) ) return next\n\t\t\t\n\t\t\tthis.complete_pubs()\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n\t\n\t/** Decorates solo object channel to [mol_wire_atom](../atom/atom.ts). */\n\texport function $mol_wire_solo< Args extends any[] >(\n\t\thost: object,\n\t\tfield: string,\n\t\tdescr?: TypedPropertyDescriptor< ( ... args: Args )=> any >\n\t) {\n\n\t\tif( !descr ) descr = Reflect.getOwnPropertyDescriptor( host , field )\n\t\tconst orig = descr?.value! ?? (host as any)[ field ]\n\t\t\n\t\tconst sup = Reflect.getPrototypeOf( host )!\n\t\tif( typeof (sup as any)[ field ] === 'function' ) {\n\t\t\tObject.defineProperty( orig , 'name' , { value : (sup as any)[ field ].name } )\n\t\t}\n\t\t\n\t\tconst descr2 = {\n\t\t\t... descr,\n\t\t\tvalue: function( this: typeof host, ... args: Args ){\n\t\t\t\n\t\t\t\tlet atom = $mol_wire_atom.solo( this, orig )\n\t\t\t\t\n\t\t\t\tif(( args.length === 0 )||( args[0] === undefined )) {\n\t\t\t\t\t\n\t\t\t\t\tif( !$mol_wire_fiber.warm ) return atom.result()\n\t\t\t\t\t\n\t\t\t\t\tif( $mol_wire_auto()?.temp ) {\n\t\t\t\t\t\treturn atom.once()\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn atom.sync()\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn atom.resync( args )\t\n\t\t\t}\n\t\t}\n\t\t\n\t\tReflect.defineProperty( descr2.value , 'name' , { value : orig.name + ' ' } )\n\t\tReflect.defineProperty( descr2.value , 'length' , { value : orig.length } )\n\t\tObject.assign( descr2.value, { orig } )\n\t\t\n\t\tReflect.defineProperty( host, field, descr2 )\n\t\t\n\t\treturn descr2 as any as TypedPropertyDescriptor< ( ... args: First_optional< Args > )=> any >\n\t}\n\n\ttype First_optional< Args extends any[] > = Args extends []\n\t\t? []\n\t\t: [ Args[0] | undefined, ... $mol_type_tail< Args > ]\n\n}\n","namespace $ {\n\t\n\t/** Reactive memoizing multiplexed property decorator. */\n\texport function $mol_wire_plex< Args extends [ any, ... any[] ] >(\n\t\thost: object,\n\t\tfield: string,\n\t\tdescr?: TypedPropertyDescriptor< ( ... args: Args )=> any >\n\t) {\n\n\t\tif( !descr ) descr = Reflect.getOwnPropertyDescriptor( host , field )\n\t\tconst orig = descr?.value! ?? (host as any)[ field ]\n\t\t\n\t\tconst sup = Reflect.getPrototypeOf( host )!\n\t\tif( typeof (sup as any)[ field ] === 'function' ) {\n\t\t\tObject.defineProperty( orig , 'name' , { value : (sup as any)[ field ].name } )\n\t\t}\n\t\t\n\t\tconst descr2 = {\n\t\t\t... descr,\n\t\t\tvalue: function( this: typeof host, ... args: Args ) {\n\t\t\t\n\t\t\t\tlet atom = $mol_wire_atom.plex( this, orig, args[0] )\n\t\t\t\t\n\t\t\t\tif(( args.length === 1 )||( args[1] === undefined )) {\n\t\t\t\t\t\n\t\t\t\t\tif( !$mol_wire_fiber.warm ) return atom.result()\n\t\t\t\t\t\n\t\t\t\t\tif( $mol_wire_auto()?.temp ) {\n\t\t\t\t\t\treturn atom.once()\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn atom.sync()\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn atom.resync( args )\t\n\t\t\t}\n\t\t}\n\t\t\n\t\tReflect.defineProperty( descr2.value , 'name' , { value : orig.name + ' ' } )\n\t\tReflect.defineProperty( descr2.value , 'length' , { value : orig.length } )\n\t\tObject.assign( descr2.value, { orig } )\n\t\t\n\t\tReflect.defineProperty( host, field, descr2 )\n\t\t\n\t\treturn descr2\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Reactive memoizing solo property decorator from [mol_wire](../wire/README.md)\n\t * @example\n\t * '@' $mol_mem\n\t * name(next?: string) {\n\t * \treturn next ?? 'default'\n\t * }\n\t * @see https://mol.hyoo.ru/#!section=docs/=qxmh6t_sinbmb\n\t */\n\texport let $mol_mem = $mol_wire_solo\n\n\t/**\n\t * Reactive memoizing multiplexed property decorator [mol_wire](../wire/README.md)\n\t * @example\n\t * '@' $mol_mem_key\n\t * name(id: number, next?: string) {\n\t * return next ?? 'default'\n\t * }\n\t * @see https://mol.hyoo.ru/#!section=docs/=qxmh6t_sinbmb\n\t */\n\texport let $mol_mem_key = $mol_wire_plex\n}\n","namespace $ {\n\t\n\texport var $mol_dom_context : typeof globalThis\n\t\n}\n","interface $node {\n\t[key:string]: any\n}\n\nvar $node = new Proxy( { require } as any , {\n\t\n\tget( target , name : string , wrapper ) {\n\n\t\tif( target[ name ] ) return target[ name ]\n\n\t\tconst mod = target.require( 'module' ) as typeof import( 'module' )\n\t\t\n\t\tif( mod.builtinModules.indexOf( name ) >= 0 ) return target.require( name )\n\t\tif( name[0] === '.' ) return target.require( name )\n\t\t\n\t\tconst path = target.require( 'path' ) as typeof import( 'path' )\n\t\tconst fs = target.require( 'fs' ) as typeof import( 'fs' )\n\n\t\tlet dir = path.resolve( '.' )\n\t\tconst suffix = `./node_modules/${ name }`\n\n\t\tconst $$ = ( $ as any )\n\t\t\n\t\twhile( !fs.existsSync( path.join( dir , suffix ) ) ) {\n\n\t\t\tconst parent = path.resolve( dir , '..' )\n\n\t\t\tif( parent === dir ) {\n\n\t\t\t\t$$.$mol_exec( '.' , 'npm' , 'install' , '--omit=dev', name )\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\t$$.$mol_exec( '.' , 'npm' , 'install' , '--omit=dev', '@types/' + name )\n\t\t\t\t} catch {}\n\n\t\t\t\tbreak\n\n\t\t\t} else {\n\n\t\t\t\tdir = parent\n\n\t\t\t}\n\n\t\t}\n\t\t\n\t\ttry {\n\t\t\treturn target.require( name )\n\t\t} catch( error ) {\n\t\t\t$.$mol_fail_log( error )\n\t\t\treturn null\n\t\t}\n\n\t},\n\n\tset( target , name : string , value ) {\n\t\ttarget[ name ] = value\n\t\treturn true\n\t},\n\n} ) as $node\n\nrequire = ( req =>\n\tObject.assign( function require( name : string ) {\n\t\treturn $node[ name ]\n\t} , req )\n)( require )\n\n","namespace $ {\n\texport function $mol_env() {\n\t\treturn {} as Record< string, string | undefined >\n\t}\n}\n","namespace $ {\n\t$.$mol_env = function $mol_env() {\n\t\treturn this.process.env\n\t}\n}\n","namespace $ {\n\texport function $mol_exec(\n\t\tthis : $ ,\n\t\tdir : string ,\n\t\tcommand : string ,\n\t\t...args : string[]\n\t) {\n\n\t\tlet [ app , ... args0 ] = command.split( ' ' )\n\t\targs = [ ... args0 , ... args ]\n\n\t\tthis.$mol_log3_come({\n\t\t\tplace: '$mol_exec' ,\n\t\t\tdir: $node.path.relative( '' , dir ) ,\n\t\t\tmessage: 'Run',\n\t\t\tcommand: `${app} ${ args.join(' ') }` ,\n\t\t})\n\n\t\tvar res = $node['child_process'].spawnSync(\n\t\t\tapp ,\n\t\t\targs,\n\t\t\t{\n\t\t\t\tcwd : $node.path.resolve( dir ) ,\n\t\t\t\tshell : true ,\n\t\t\t\tenv: this.$mol_env(),\n\t\t\t}\n\t\t)\n\t\t\n\t\tif( res.status || res.error ) {\n\t\t\treturn $mol_fail( res.error || new Error( res.stderr.toString(), { cause: res.stdout } ) )\n\t\t}\n\t\t\n\t\tif( !res.stdout ) res.stdout = Buffer.from([])\n\n\t\treturn res\n\t}\n}\n","namespace $ {\n\t\n\t$.$mol_dom_context = new $node.jsdom.JSDOM( '' , { url : 'https://localhost/' } ).window as any\n\t\n}\n","namespace $ {\n\n\texport class $mol_after_tick extends $mol_object2 {\n\n\t\tpromise : any\n\t\tcancelled = false\n\n\t\tconstructor(\n\t\t\tpublic task : ()=> void ,\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis.promise = Promise.resolve().then( ()=> {\n\t\t\t\tif( this.cancelled ) return\n\t\t\t\ttask()\n\t\t\t} )\n\t\t}\n\n\t\tdestructor() {\n\t\t\tthis.cancelled = true\n\t\t}\n\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport class $mol_view_selection extends $mol_object {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic focused( next? : Element[], notify?: 'notify' ) : Element[] {\n\t\t\t\n\t\t\tconst parents : Element[] = []\n\t\t\tlet element = next?.[0] ?? $mol_dom_context.document.activeElement\n\t\t\t\n\t\t\twhile( element ) {\n\t\t\t\tparents.push( element )\n\t\t\t\telement = element.parentNode as HTMLElement\n\t\t\t}\n\t\t\t\n\t\t\tif( !next || notify ) return parents\n\t\t\t\n\t\t\tnew $mol_after_tick( ()=> {\n\t\t\t\t\n\t\t\t\tconst element = this.focused()![0] as HTMLElement\n\t\t\t\t\n\t\t\t\tif( element ) element.focus()\n\t\t\t\telse $mol_dom_context.blur()\n\t\t\t\t\n\t\t\t} )\n\n\t\t\treturn parents\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\texport class $mol_wrapper extends $mol_object2 {\n\n\t\tstatic wrap : ( task : ( ... ags : any[] )=> any )=> ( ... ags : any[] )=> any\n\t\t\n\t\tstatic run< Result >( task : ()=> Result ) : Result {\n\t\t\treturn this.func( task )()\n\t\t}\n\t\n\t\tstatic func< Args extends any[] , Result , Host = void >(\n\t\t\tfunc : ( this : Host , ... args : Args )=> Result\n\t\t) : ( this : Host , ... args : Args )=> Result {\n\t\t\treturn this.wrap( func )\n\t\t}\n\n\t\tstatic get class() {\n\n\t\t\treturn < Class extends new ( ... args : any[] )=> any >(\n\t\t\t\tClass : Class\n\t\t\t) => {\n\n\t\t\t\ttype Args = ConstructorParameters< Class >\n\t\t\t\ttype Result = InstanceType< Class >\n\n\t\t\t\tconst construct = ( target : Class , args : Args )=> new Class( ... args )\n\n\t\t\t\tconst handler: ProxyHandler = {\n\t\t\t\t\tconstruct : this.func( construct )\n\t\t\t\t} \n\n\t\t\t\t;(handler as any)[ Symbol.toStringTag ] = Class.name + '#'\n\n\t\t\t\treturn new Proxy( Class , handler )\n\t\t\t\t\n\t\t\t}\n\n\t\t}\n\n\t\tstatic get method() {\n\t\t\t\n\t\t\treturn (\n\t\t\t\tobj : object,\n\t\t\t\tname : PropertyKey,\n\t\t\t\tdescr : PropertyDescriptor,\n\t\t\t) => {\n\t\t\t\tdescr.value = this.func( descr.value! )\n\t\t\t\treturn descr\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tstatic get field() {\n\t\t\t\n\t\t\treturn <\n\t\t\t\tHost ,\n\t\t\t\tField extends keyof Host ,\n\t\t\t\tArgs extends any[] ,\n\t\t\t\tResult ,\n\t\t\t>(\n\t\t\t\tobj : Host ,\n\t\t\t\tname : Field ,\n\t\t\t\tdescr : TypedPropertyDescriptor< Result >\n\t\t\t) => {\n\t\t\t\tdescr.get = descr.set = this.func( descr.get! )\n\t\t\t\treturn descr\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_memo extends $mol_wrapper {\n\t\t\n\t\tstatic wrap< This extends object , Value >( task : ( this : This , next? : Value )=> Value ) {\n\n\t\t\tconst store = new WeakMap< This , Value >()\n\n\t\t\treturn function( this : This , next? : Value ) {\n\n\t\t\t\tif( next === undefined && store.has( this ) ) return store.get( this )\n\t\t\t\t\n\t\t\t\tconst val = task.call( this , next ) ?? next\n\t\t\t\t\n\t\t\t\tstore.set( this , val! )\n\t\t\t\t\n\t\t\t\treturn val\n\n\t\t\t}\n\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_dom_qname( name : string ) {\n\t\treturn name.replace( /\\W/g , '' ).replace( /^(?=\\d+)/ , '_' )\n\t}\n\n}\n","namespace $ {\n\t\n\t/** Run code without state changes */\n\texport function $mol_wire_probe< Value >(\n\t\ttask : ()=> Value, def?: Value\n\t) : Value | undefined {\n\t\t\n\t\tconst warm = $mol_wire_fiber.warm\n\t\t\n\t\ttry {\n\t\t\t$mol_wire_fiber.warm = false\n\t\t\tconst res = task()\n\t\t\tif( res === undefined ) return def\n\t\t\treturn res\n\t\t} finally {\n\t\t\t$mol_wire_fiber.warm = warm\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\t/**\n\t * Real-time refresh current atom.\n\t * Don't use if possible. May reduce performance.\n\t */\n\texport function $mol_wire_watch() {\n\t\tconst atom = $mol_wire_auto()\n\t\tif( atom instanceof $mol_wire_atom ) {\n\t\t\tatom.watch()\n\t\t} else {\n\t\t\t$mol_fail( new Error( 'Atom is required for watching' ) )\n\t\t}\n\t}\n\t\n}\n","namespace $ { \n\t/**\n\t * Returns closure that returns constant value.\n\t * @example\n\t * const rnd = $mol_const( Math.random() )\n\t */\n\texport function $mol_const< Value >( value : Value ) {\n\t\tconst getter = <{ () : Value , '()' : Value }> ( () => value )\n\t\tgetter['()'] = value\n\t\t;(getter as any)[ Symbol.toStringTag ] = value\n\t\t;(getter as any )[ $mol_dev_format_head ] = ()=> $mol_dev_format_span( {} , '()=> ', $mol_dev_format_auto( value ) )\n\t\treturn getter\n\t}\n}\n","namespace $ {\n\t\n\t/**\n\t * Disable reaping of current subscriber\n\t */\n\texport function $mol_wire_solid() {\n\t\tlet current = $mol_wire_auto() as $mol_wire_fiber< any, any, any >\n\t\tif( current!.temp ) current = current!.host\n\t\tif( current!.reap !== nothing ) {\n\t\t\tcurrent?.sub_on( sub, sub.data.length )\n\t\t}\n\t\tcurrent!.reap = nothing\n\t}\n\t\n\tconst nothing = ()=> {}\n\tconst sub = new $mol_wire_pub_sub\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_attributes (\n\t\tel : Element ,\n\t\tattrs : { [ key : string ] : string|number|boolean|null }\n\t) {\n\n\t\tfor( let name in attrs ) {\n\n\t\t\tlet val = attrs[ name ] as any\n\n\t\t\tif( val === undefined ) {\n\t\t\t\t\n\t\t\t\tcontinue\n\t\t\t\t\n\t\t\t} if( val === null || val === false ) {\n\n\t\t\t\tif( !el.hasAttribute( name ) ) continue\n\t\t\t\t\n\t\t\t\tel.removeAttribute( name )\n\n\t\t\t} else {\n\t\t\t\t\n\t\t\t\tconst str = String( val )\n\t\t\t\tif( el.getAttribute( name ) === str ) continue\n\t\t\t\t\n\t\t\t\tel.setAttribute( name , str )\n\n\t\t\t}\n\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_events (\n\t\tel : Element ,\n\t\tevents : { [ key : string ] : ( event : Event )=> any },\n\t\tpassive = false\n\t) {\n\t\tfor( let name in events ) {\n\t\t\tel.addEventListener( name , events[ name ] , { passive } )\n\t\t}\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_styles (\n\t\tel : Element ,\n\t\tstyles : { [ key : string ] : string|number }\n\t) {\n\t\tfor( let name in styles ) {\n\t\t\tlet val = styles[ name ]\n\t\t\t\n\t\t\tconst style = ( el as HTMLElement ).style as any\n\t\t\tconst kebab = ( name : string )=> name.replace( /[A-Z]/g , letter => '-' + letter.toLowerCase() )\n\t\t\t\n\t\t\tif( typeof val === 'number' ) {\n\t\t\t\tstyle.setProperty(kebab(name), `${ val }px`);\n\t\t\t} else {\n\t\t\t\tstyle.setProperty(kebab(name), val);\n\t\t\t}\n\t\t\t\n\t\t}\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_dom_render_children (\n\t\tel : Element | DocumentFragment ,\n\t\tchildNodes : NodeList | Array< Node | string | null >\n\t) {\n\t\tconst node_set = new Set< Node | string | null >( childNodes )\n\t\t\n\t\tlet nextNode : Node | null = el.firstChild\n\t\tfor( let view of childNodes ) {\n\n\t\t\tif( view == null ) continue\n\n\t\t\tif( view instanceof $mol_dom_context.Node ) {\n\t\t\t\t\n\t\t\t\twhile( true ) {\n\t\t\t\t\tif( !nextNode ) {\n\t\t\t\t\t\tel.appendChild( view )\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t\tif( nextNode == view ) {\n\t\t\t\t\t\tnextNode = nextNode.nextSibling\n\t\t\t\t\t\tbreak\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif( node_set.has( nextNode ) ) {\n\t\t\t\t\t\t\tel.insertBefore( view , nextNode )\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst nn = nextNode.nextSibling\n\t\t\t\t\t\t\tel.removeChild( nextNode )\n\t\t\t\t\t\t\tnextNode = nn\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} else {\n\t\t\t\tif( nextNode && nextNode.nodeName === '#text' ) {\n\t\t\t\t\tconst str = String( view )\n\t\t\t\t\tif( nextNode.nodeValue !== str ) nextNode.nodeValue = str\n\t\t\t\t\tnextNode = nextNode.nextSibling\n\t\t\t\t} else {\n\t\t\t\t\tconst textNode = $mol_dom_context.document.createTextNode( String( view ) )\n\t\t\t\t\tel.insertBefore( textNode , nextNode )\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\twhile( nextNode ) {\n\t\t\tconst currNode = nextNode\n\t\t\tnextNode = currNode.nextSibling\n\t\t\tel.removeChild( currNode )\n\t\t}\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_fields (\n\t\tel : Element ,\n\t\tfields : { [ key : string ] : any }\n\t) {\n\t\tfor( let key in fields ) {\n\t\t\t\n\t\t\tconst val : any = fields[ key ]\n\t\t\t\n\t\t\tif( val === undefined ) continue\n\t\t\t\n\t\t\t(el as any)[ key ] = val\n\t\t}\n\t}\n\n}\n","namespace $ {\n\t\n\t/** Convert a pseudo-synchronous (Suspense API) API to an explicit asynchronous one (for integrating with external systems). */\n\texport function $mol_wire_async< Host extends object >( obj: Host ) {\n\t\t\n\t\tlet fiber: $mol_wire_fiber< any, any, any >\n\t\tconst temp = $mol_wire_task.getter( obj as ( ... args: any[] )=> any )\n\t\t\n\t\treturn new Proxy( obj, {\n\t\t\t\n\t\t\tget( obj, field ) {\n\t\t\t\t\n\t\t\t\tconst val = (obj as any)[ field ]\n\t\t\t\tif( typeof val !== 'function' ) return val\n\t\t\t\t\n\t\t\t\tlet fiber: $mol_wire_fiber< any, any, any >\n\t\t\t\tconst temp = $mol_wire_task.getter( val ) \n\t\t\t\t\n\t\t\t\treturn function $mol_wire_async( this: Host, ... args: any[] ) {\n\t\t\t\t\tfiber?.destructor()\n\t\t\t\t\tfiber = temp( obj, args )\n\t\t\t\t\treturn fiber.async()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t},\n\t\t\t\n\t\t\tapply( obj, self, args ) {\n\t\t\t\tfiber?.destructor()\n\t\t\t\tfiber = temp( self, args )\n\t\t\t\treturn fiber.async()\n\t\t\t},\n\t\t\t\n\t\t} ) as unknown as ObjectOrFunctionResultPromisify\n\t\t\n\t}\n\n\ttype FunctionResultPromisify = Some extends (...args: infer Args) => infer Res\n\t\t? Res extends PromiseLike ? Some : (...args: Args) => Promise\n\t\t: Some\n\n\ttype MethodsResultPromisify = {\n\t\t[K in keyof Host]: FunctionResultPromisify\n\t}\n\n\ttype ObjectOrFunctionResultPromisify = (\n\t\tSome extends (...args: any) => unknown ? FunctionResultPromisify : {}\n\t) & ( Some extends Object ? MethodsResultPromisify : Some )\n\n}\n","namespace $ {\n\n\tlet all = [] as string[]\n\tlet el : HTMLStyleElement | null = null\n\tlet timer : $mol_after_tick | null = null\n\n\texport function $mol_style_attach_force() {\n\t\tif( all.length ) {\n\t\t\tel!.innerHTML += '\\n' + all.join( '\\n\\n' )\n\t\t\tall = []\n\t\t}\n\t\ttimer = null\n\t\treturn el!\n\t}\n\t\n\texport function $mol_style_attach(\n\t\tid : string ,\n\t\ttext : string ,\n\t) {\n\n\t\tall.push( `/* ${ id } */\\n\\n${ text }`)\n\n\t\tif( timer ) return el!\n\t\t\n\t\tconst doc = $mol_dom_context.document\n\t\tif( !doc ) return null\n\n\t\tel = doc.createElement('style')\n\t\tel.id = `$mol_style_attach`\n\t\tdoc.head.appendChild( el )\n\n\t\ttimer = new $mol_after_tick( $mol_style_attach_force )\n\n\t\treturn el\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_decor< Value > {\n\t\t\n\t\tconstructor(\n\t\t\treadonly value : Value\n\t\t) {}\n\n\t\tprefix() { return '' }\n\t\tvalueOf() { return this.value }\n\t\tpostfix() { return '' }\n\n\t\ttoString(){\n\t\t\treturn `${ this.prefix() }${ this.valueOf() }${ this.postfix() }`\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\t\n\texport type $mol_style_unit_length =\n\t| '%'\n\t| 'px' | 'cm' | 'mm' | 'Q' | 'in' | 'pc' | 'pt'\n\t| 'cap' | 'ch' | 'em' | 'rem' | 'ex' | 'ic' | 'lh' | 'rlh'\n\t| 'vh' | 'vw' | 'vi' | 'vb' | 'vmin' | 'vmax'\n\t\n\texport type $mol_style_unit_angle = 'deg' | 'rad' | 'grad' | 'turn'\n\t\n\texport type $mol_style_unit_time = 's' | 'ms'\n\n\texport type $mol_style_unit_any = $mol_style_unit_length | $mol_style_unit_angle | $mol_style_unit_time\n\n\texport type $mol_style_unit_str< Quanity extends $mol_style_unit_any = $mol_style_unit_any> = `${number}${Quanity}`\n\n\t/**\n\t * CSS Units\n\t * @see https://mol.hyoo.ru/#!section=docs/=xwq9q5_f966fg\n\t */\n\texport class $mol_style_unit<\n\t\tLiteral extends $mol_style_unit_any\n\t> extends $mol_decor< number > {\n\n\t\tconstructor(\n\t\t\tvalue : number,\n\t\t\treadonly literal : Literal,\n\t\t) {\n\t\t\tsuper( value )\n\t\t}\n\n\t\tpostfix() {\n\t\t\treturn this.literal\n\t\t}\n\n\t\tstatic per( value : number ) { return `${value}%` as const }\n\t\tstatic px( value : number ) { return `${ value }px` as const }\n\t\tstatic mm( value : number ) { return `${value}mm` as const }\n\t\tstatic cm( value : number ) { return `${value}cm` as const }\n\t\tstatic Q( value : number ) { return `${value}Q` as const }\n\t\tstatic in( value : number ) { return `${value}in` as const }\n\t\tstatic pc( value : number ) { return `${value}pc` as const }\n\t\tstatic pt( value : number ) { return `${value}pt` as const }\n\t\tstatic cap( value : number ) { return `${value}cap` as const }\n\t\tstatic ch( value : number ) { return `${value}ch` as const }\n\t\tstatic em( value : number ) { return `${value}em` as const }\n\t\tstatic rem( value : number ) { return `${value}rem` as const }\n\t\tstatic ex( value : number ) { return `${value}ex` as const }\n\t\tstatic ic( value : number ) { return `${value}ic` as const }\n\t\tstatic lh( value : number ) { return `${value}lh` as const }\n\t\tstatic rlh( value : number ) { return `${value}rlh` as const }\n\t\tstatic vh( value : number ) { return `${value}vh` as const }\n\t\tstatic vw( value : number ) { return `${value}vw` as const }\n\t\tstatic vi( value : number ) { return `${value}vi` as const }\n\t\tstatic vb( value : number ) { return `${value}vb` as const }\n\t\tstatic vmin( value : number ) { return `${value}vmin` as const }\n\t\tstatic vmax( value : number ) { return `${value}vmax` as const }\n\t\t\n\t\tstatic deg( value : number ) { return `${value}deg` as const }\n\t\tstatic rad( value : number ) { return `${value}rad` as const }\n\t\tstatic grad( value : number ) { return `${value}grad` as const }\n\t\tstatic turn( value : number ) { return `${value}turn` as const }\n\n\t\tstatic s( value : number ) { return `${value}s` as const }\n\t\tstatic ms( value : number ) { return `${value}ms` as const }\n\t\n\t}\n\n}\n","namespace $ {\n\n\texport type $mol_style_func_name =\n\t| 'calc'\n\t| 'hsla'\n\t| 'rgba'\n\t| 'var'\n\t| 'clamp'\n\t| 'scale'\n\t| 'cubic-bezier'\n\t| 'linear'\n\t| 'steps'\n\t| $mol_style_func_image\n\t| $mol_style_func_filter\n\t\n\texport type $mol_style_func_image =\n\t| 'url'\n\t| 'linear-gradient'\n\t| 'radial-gradient'\n\t| 'conic-gradient'\n\t\n\texport type $mol_style_func_filter =\n\t| 'blur'\n\t| 'brightness'\n\t| 'contrast'\n\t| 'drop-shadow'\n\t| 'grayscale'\n\t| 'hue-rotate'\n\t| 'invert'\n\t| 'opacity'\n\t| 'sepia'\n\t| 'saturate'\n\n\tconst { per } = $mol_style_unit\n\t\n\t/**\n\t * CSS Functions\n\t * @see https://mol.hyoo.ru/#!section=docs/=xwq9q5_f966fg\n\t */\n\texport class $mol_style_func<\n\t\tName extends $mol_style_func_name ,\n\t\tValue = unknown,\n\t> extends $mol_decor< Value > {\n\n\t\tconstructor(\n\t\t\treadonly name : Name,\n\t\t\tvalue : Value,\n\t\t) {\n\t\t\tsuper( value )\n\t\t}\n\n\t\tprefix() { return this.name + '(' }\n\t\tpostfix() { return ')' }\n\n\t\tstatic linear_gradient< Value >( value : Value ) {\n\t\t\treturn new $mol_style_func( 'linear-gradient' , value )\n\t\t}\n\n\t\tstatic calc< Value >( value : Value ) {\n\t\t\treturn new $mol_style_func( 'calc' , value )\n\t\t}\n\n\t\tstatic vary< Name extends string, Value extends string >( name : Name, defaultValue? : Value ) {\n\t\t\treturn new $mol_style_func( 'var' , defaultValue ? [name, defaultValue] : name )\n\t\t}\n\n\t\tstatic url< Href extends string >( href : Href ) {\n\t\t\treturn new $mol_style_func( 'url' , JSON.stringify( href ) )\n\t\t}\n\n\t\tstatic hsla(\n\t\t\thue: number,\n\t\t\tsaturation: number,\n\t\t\tlightness: number,\n\t\t\talpha: number,\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t'hsla',\n\t\t\t\t[ hue , per( saturation ) , per( lightness ) , alpha ],\n\t\t\t)\n\t\t}\n\t\n\t\tstatic clamp(\n\t\t\tmin: $mol_style_unit_str< any >,\n\t\t\tmid: $mol_style_unit_str< any >,\n\t\t\tmax: $mol_style_unit_str< any >,\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t'clamp',\n\t\t\t\t[ min, mid, max ],\n\t\t\t)\n\t\t}\n\t\n\t\tstatic rgba(\n\t\t\tred: number,\n\t\t\tgreen: number,\n\t\t\tblue: number,\n\t\t\talpha: number,\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t'rgba',\n\t\t\t\t[ red , green , blue , alpha ],\n\t\t\t)\n\t\t}\n\t\n\t\tstatic scale(\n\t\t\tzoom: number,\n\t\t) {\n\t\t\treturn new $mol_style_func( 'scale', [ zoom ] )\n\t\t}\n\t\t\n\t\tstatic linear(\n\t\t\t...breakpoints : Array]>\n\t\t){\n\t\t\treturn new $mol_style_func(\n\t\t\t\t\"linear\",\n\t\t\t\tbreakpoints.map((e) =>\n\t\t\t\t\tArray.isArray(e)\n\t\t\t\t\t\t? String(e[0]) +\n\t\t\t\t\t\t \" \" +\n\t\t\t\t\t\t (typeof e[1] === \"number\" ? e[1] + \"%\" : e[1].toString())\n\t\t\t\t\t\t: String(e)\n\t\t\t\t)\n\t\t\t);\n\t\t}\n\t\t\n\t\tstatic cubic_bezier(\n\t\t\tx1: number,\n\t\t\ty1: number,\n\t\t\tx2: number,\n\t\t\ty2: number\n\t\t){\n\t\t\treturn new $mol_style_func( 'cubic-bezier', [ x1, y1, x2, y2 ]);\n\t\t}\n\t\t\n\t\tstatic steps(value: number, step_position: 'jump-start' | 'jump-end' | 'jump-none' | 'jump-both' | 'start' | 'end'){\n\t\t\treturn new $mol_style_func( 'steps', [ value, step_position ] )\n\t\t}\n\t\t\n\t\tstatic blur(value?: $mol_style_unit_str<$mol_style_unit_length>){\n\t\t\treturn new $mol_style_func( 'blur', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic brightness(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'brightness', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic contrast(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'contrast', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic drop_shadow(\n\t\t\tcolor: $mol_style_properties_color,\n\t\t\tx_offset: $mol_style_unit_str<$mol_style_unit_length>,\n\t\t\ty_offset: $mol_style_unit_str<$mol_style_unit_length>,\n\t\t\tblur_radius?: $mol_style_unit_str<$mol_style_unit_length>\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t\"drop-shadow\",\n\t\t\t\tblur_radius\n\t\t\t\t\t? [color, x_offset, y_offset, blur_radius]\n\t\t\t\t\t: [color, x_offset, y_offset]\n\t\t\t);\n\t\t}\n\t\t\n\t\tstatic grayscale(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'grayscale', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic hue_rotate(value?: 0 | $mol_style_unit_str<$mol_style_unit_angle>){\n\t\t\treturn new $mol_style_func( 'hue-rotate', value ?? \"\")\n\t\t}\n\t\t\n\t\tstatic invert(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'invert', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic opacity(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'opacity', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic sepia(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'sepia', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic saturate(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'saturate', value ?? \"\" );\n\t\t}\n\t\n\t}\n\n}\n","namespace $ {\n\t\n\texport type $mol_style_prop_result =\n\t\tRecord<\n\t\t\tstring ,\n\t\t\t$mol_style_func< 'var' >\n\t\t>\n\t\n\t/** Create record of CSS variables. */\n\texport function $mol_style_prop(\n\t\tprefix : string ,\n\t\tpostfixes : Array< string >\n\t) {\n\t\t\n\t\tconst record = postfixes.reduce( ( record_obj , postfix )=> {\n\t\t\t\n\t\t\trecord_obj[ postfix ] = $mol_style_func.vary( `--${ prefix }_${ postfix }` )\n\t\t\treturn record_obj\n\t\t\t\n\t\t}, {} as $mol_style_prop_result )\n\t\t\n\t\treturn record\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Theme css variables\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_textarea_demo\n\t */\t\n\texport const $mol_theme = $mol_style_prop(\n\t\t'mol_theme',\n\t\t[\n\t\t\t'back',\n\t\t\t'hover',\n\t\t\t'card',\n\t\t\t'current',\n\t\t\t'special',\n\t\t\t'text',\n\t\t\t'control',\n\t\t\t'shade',\n\t\t\t'line',\n\t\t\t'focus',\n\t\t\t'field',\n\t\t\t'image',\n\t\t]\n\t)\n\n}\n","namespace $ { $mol_style_attach( \"mol/theme/theme.css\",\n \":root {\\n\\t--mol_theme_hue: 210deg;\\n\\t--mol_theme_hue_spread: 90deg;\\n}\\n\\n:where([mol_theme]) {\\n\\tcolor: var(--mol_theme_text);\\n\\tfill: var(--mol_theme_text);\\n\\tbackground-color: var(--mol_theme_back);\\n}\\n\\t\\n:root, [mol_theme=\\\"$mol_theme_dark\\\"], :where([mol_theme=\\\"$mol_theme_dark\\\"]) [mol_theme] {\\n\\n\\t--mol_theme_luma: -1;\\n\\t--mol_theme_image: invert(1) hue-rotate( 180deg );\\n\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 20%, 10% );\\n\\t--mol_theme_card: hsl( var(--mol_theme_hue), 50%, 20%, .25 );\\n\\t--mol_theme_field: hsl( var(--mol_theme_hue), 50%, 8%, .25 );\\n\\t--mol_theme_hover: hsl( var(--mol_theme_hue), 0%, 50%, .1 );\\n\\t\\n\\t--mol_theme_text: hsl( var(--mol_theme_hue), 0%, 80% );\\n\\t--mol_theme_shade: hsl( var(--mol_theme_hue), 0%, 60%, 1 );\\n\\t--mol_theme_line: hsl( var(--mol_theme_hue), 0%, 50%, .2 );\\n\\t--mol_theme_focus: hsl( calc( var(--mol_theme_hue) + 180deg ), 100%, 65% );\\n\\t\\n\\t--mol_theme_control: hsl( var(--mol_theme_hue), 60%, 65% );\\n\\t--mol_theme_current: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 60%, 65% );\\n\\t--mol_theme_special: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 60%, 65% );\\n\\n\\t/* --mol_theme_back: oklch( 20% .03 var(--mol_theme_hue) );\\n\\t--mol_theme_card: oklch( 35% .05 var(--mol_theme_hue) / .25 );\\n\\t--mol_theme_field: oklch( 0% 0 var(--mol_theme_hue) / .25 );\\n\\t--mol_theme_hover: oklch( 70% 0 var(--mol_theme_hue) / .1 );\\n\\t\\n\\t--mol_theme_text: oklch( 80% 0 var(--mol_theme_hue) );\\n\\t--mol_theme_shade: oklch( 60% 0 var(--mol_theme_hue) );\\n\\t--mol_theme_line: oklch( 50% 0 var(--mol_theme_hue) / .2 );\\n\\t--mol_theme_focus: oklch( 80% .2 calc( var(--mol_theme_hue) + 120deg ) );\\n\\t\\n\\t--mol_theme_control: oklch( 70% .1 var(--mol_theme_hue) );\\n\\t--mol_theme_current: oklch( 80% .2 calc( var(--mol_theme_hue) - 60deg ) );\\n\\t--mol_theme_special: oklch( 80% .3 calc( var(--mol_theme_hue) + 60deg ) ); */\\n\\n}\\n\\n[mol_theme=\\\"$mol_theme_light\\\"], :where([mol_theme=\\\"$mol_theme_light\\\"]) [mol_theme] {\\n\\t\\n\\t--mol_theme_luma: 1;\\n\\t--mol_theme_image: none;\\n\\t\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 20%, 92% );\\n\\t--mol_theme_card: hsl( var(--mol_theme_hue), 50%, 100%, .5 );\\n\\t--mol_theme_field: hsl( var(--mol_theme_hue), 50%, 100%, .75 );\\n\\t--mol_theme_hover: hsl( var(--mol_theme_hue), 0%, 50%, .1 );\\n\\t\\n\\t--mol_theme_text: hsl( var(--mol_theme_hue), 0%, 0% );\\n\\t--mol_theme_shade: hsl( var(--mol_theme_hue), 0%, 40%, 1 );\\n\\t--mol_theme_line: hsl( var(--mol_theme_hue), 0%, 50%, .2 );\\n\\t--mol_theme_focus: hsl( calc( var(--mol_theme_hue) + 180deg ), 100%, 40% );\\n\\t\\n\\t--mol_theme_control: hsl( var(--mol_theme_hue), 80%, 30% );\\n\\t--mol_theme_current: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 80%, 30% );\\n\\t--mol_theme_special: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 80%, 30% );\\n\\t\\n\\t/* --mol_theme_back: oklch( 93% .01 var(--mol_theme_hue) );\\n\\t--mol_theme_card: oklch( 100% .02 var(--mol_theme_hue) / .25 );\\n\\t--mol_theme_field: oklch( 100% 0 var(--mol_theme_hue) / .5 );\\n\\t--mol_theme_hover: oklch( 70% 0 var(--mol_theme_hue) / .1 );\\n\\t\\n\\t--mol_theme_text: oklch( 20% 0 var(--mol_theme_hue) );\\n\\t--mol_theme_shade: oklch( 60% 0 var(--mol_theme_hue) );\\n\\t--mol_theme_line: oklch( 70% 0 var(--mol_theme_hue) / .2 );\\n\\t--mol_theme_focus: oklch( 20% .8 calc( var(--mol_theme_hue) + 120deg ) );\\n\\t\\n\\t--mol_theme_control: oklch( 45% .25 var(--mol_theme_hue) );\\n\\t--mol_theme_current: oklch( 45% .5 calc( var(--mol_theme_hue) - 60deg ) );\\n\\t--mol_theme_special: oklch( 45% .5 calc( var(--mol_theme_hue) + 60deg ) ); */\\n\\n}\\n\\n:where( :root, [mol_theme=\\\"$mol_theme_dark\\\"] ) [mol_theme=\\\"$mol_theme_base\\\"] {\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 50%, 30% );\\n\\t--mol_theme_card: hsl( var(--mol_theme_hue), 40%, 20%, .25 );\\n\\t/* --mol_theme_back: oklch( 25% .05 var(--mol_theme_hue) );\\n\\t--mol_theme_card: oklch( 35% .1 var(--mol_theme_hue) / .25 ); */\\n}\\n:where( [mol_theme=\\\"$mol_theme_light\\\"] ) [mol_theme=\\\"$mol_theme_base\\\"] {\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 50%, 80% );\\n\\t--mol_theme_card: hsl( var(--mol_theme_hue), 80%, 95%, .25 );\\n\\t/* --mol_theme_back: oklch( 95% .02 var(--mol_theme_hue) );\\n\\t--mol_theme_card: oklch( 80% .05 var(--mol_theme_hue) / .25 ); */\\n}\\n\\n:where( :root, [mol_theme=\\\"$mol_theme_dark\\\"] ) [mol_theme=\\\"$mol_theme_accent\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) + 180deg ), 90%, 30% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) + 180deg ), 80%, 20%, .25 );\\n\\t/* --mol_theme_back: oklch( 40% .2 calc( var(--mol_theme_hue) + 120deg ) );\\n\\t--mol_theme_card: oklch( 50% .3 calc( var(--mol_theme_hue) + 120deg ) / .25 ); */\\n}\\n:where( [mol_theme=\\\"$mol_theme_light\\\"] ) [mol_theme=\\\"$mol_theme_accent\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) + 180deg ), 90%, 75% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) + 180deg ), 80%, 90%, .25 );\\n\\t/* --mol_theme_back: oklch( 90% .03 calc( var(--mol_theme_hue) + 120deg ) );\\n\\t--mol_theme_card: oklch( 80% .05 calc( var(--mol_theme_hue) + 120deg ) / .25 ); */\\n}\\n\\n:where( :root, [mol_theme=\\\"$mol_theme_dark\\\"] ) [mol_theme=\\\"$mol_theme_current\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 50%, 30% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 40%, 20%, .25 );\\n\\t/* --mol_theme_back: oklch( 25% .05 calc( var(--mol_theme_hue) - 60deg ) );\\n\\t--mol_theme_card: oklch( 35% .1 calc( var(--mol_theme_hue) - 60deg ) / .25 ); */\\n}\\n:where( [mol_theme=\\\"$mol_theme_light\\\"] ) [mol_theme=\\\"$mol_theme_current\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 50%, 92% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 80%, 100%, .5 );\\n\\t/* --mol_theme_back: oklch( 95% .02 calc( var(--mol_theme_hue) - 60deg ) );\\n\\t--mol_theme_card: oklch( 80% .05 calc( var(--mol_theme_hue) - 60deg ) / .25 ); */\\n}\\n\\n:where( :root, [mol_theme=\\\"$mol_theme_dark\\\"] ) [mol_theme=\\\"$mol_theme_special\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 50%, 30% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 40%, 20%, .25 );\\n\\t/* --mol_theme_back: oklch( 25% .05 calc( var(--mol_theme_hue) + 60deg ) );\\n\\t--mol_theme_card: oklch( 35% .1 calc( var(--mol_theme_hue) + 60deg ) / .25 ); */\\n}\\n:where( [mol_theme=\\\"$mol_theme_light\\\"] ) [mol_theme=\\\"$mol_theme_special\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 50%, 92% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 80%, 100%, .5 );\\n\\t/* --mol_theme_back: oklch( 95% .02 calc( var(--mol_theme_hue) + 60deg ) );\\n\\t--mol_theme_card: oklch( 80% .05 calc( var(--mol_theme_hue) + 60deg ) / .25 ); */\\n}\\n\"\n) }","namespace $ {\n\n\t/**\n\t * Gap in CSS\n\t * @see https://page.hyoo.ru/#!=msdb74_bm7nsq\n\t */\n\texport let $mol_gap = $mol_style_prop(\n\t\t'mol_gap',\n\t\t[\n\t\t\t'block',\n\t\t\t'text',\n\t\t\t'round',\n\t\t\t'space',\n\t\t\t'blur',\n\t\t]\n\t)\n\n}\n","namespace $ { $mol_style_attach( \"mol/gap/gap.css\",\n \":root {\\n\\t--mol_gap_block: .75rem;\\n\\t--mol_gap_text: .5rem .75rem;\\n\\t--mol_gap_round: .25rem;\\n\\t--mol_gap_space: .25rem;\\n\\t--mol_gap_blur: .5rem;\\n}\\n\"\n) }","namespace $ {\n\n\texport type $mol_view_content = $mol_view|Node|string|number|boolean\n\t\n\texport function $mol_view_visible_width() {\n\t\treturn $mol_window.size().width\n\t}\n\t\n\texport function $mol_view_visible_height() {\n\t\treturn $mol_window.size().height\n\t}\n\t\n\texport function $mol_view_state_key( suffix : string ) {\n\t\treturn suffix\n\t}\n\t\n\tconst error_showed = new WeakMap< Error, $mol_view >()\n\n\t/**\n\t * The base class for all visual components. It provides the infrastructure for reactive lazy rendering, handling exceptions.\n\t * @see https://mol.hyoo.ru/#!section=docs/=vv2nig_s5zr0f\n\t */\n\t/// Reactive statefull lazy ViewModel\n\texport class $mol_view extends $mol_object {\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic Root< This extends typeof $mol_view >( this : This , id: number ) {\n\t\t\treturn new this as InstanceType< This >\n\t\t}\n\n\t\t@ $mol_mem\n\t\tautorun() {\n\t\t\ttry {\n\t\t\t\tthis.dom_tree()\n\t\t\t\tdocument.title = this.title()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t}\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic autobind() {\n\t\t\t\n\t\t\tconst nodes = $mol_dom_context.document.querySelectorAll( '[mol_view_root]:not([mol_view_root=\"\"])' )\n\t\t\t\n\t\t\tfor( let i = nodes.length - 1 ; i >= 0 ; --i ) {\n\n\t\t\t\tconst name = nodes.item( i ).getAttribute( 'mol_view_root' )!\n\t\t\t\t\n\t\t\t\tconst View = ($ as any)[ name ] as typeof $mol_view\n\t\t\t\tif( !View ) {\n\t\t\t\t\tconsole.error( `Can not attach view. Class not found: ${ name }` )\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tconst view = View.Root( i )\n\t\t\t\tview.dom_node( nodes.item( i ) )\n\t\t\t\tview.autorun()\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\ttitle() {\n\t\t\treturn this.toString().match( /.*\\.(\\w+)/ )?.[1] ?? this.toString()\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tfocused( next?: boolean ) {\n\t\t\tlet node = this.dom_node()\n\t\t\tconst value = $mol_view_selection.focused( next === undefined ? undefined : ( next ? [ node ] : [] ) )\n\t\t\treturn value.indexOf( node ) !== -1\n\t\t}\n\t\t\n\t\tstate_key( suffix = '' ) {\n\t\t\treturn this.$.$mol_view_state_key( suffix )\n\t\t}\n\t\t\n\t\t/// Name of element that created when element not found in DOM\n\t\t@ $mol_memo.method\n\t\tdom_name() {\n\t\t\treturn $mol_dom_qname( this.constructor.toString() ) || 'div'\n\t\t}\n\t\t\n\t\t/// NameSpace of element that created when element not found in DOM\n\t\tdom_name_space() { return 'http://www.w3.org/1999/xhtml' }\n\t\t\n\t\t/// Raw child views\n\t\tsub() {\n\t\t\treturn [] as readonly ($mol_view|Node|string|number|boolean)[]\n\t\t}\n\t\t\n\t\t/// Visible sub views with defined ambient context\n\t\t/// Render all by default\n\t\tsub_visible() {\n\t\t\treturn this.sub()\n\t\t}\n\t\t\n\t\t/// Minimal width that used for lazy rendering\n\t\t@ $mol_mem\n\t\tminimal_width() {\n\t\t\t\n\t\t\tlet min = 0\n\t\t\ttry {\n\t\t\t\t\n\t\t\t\tconst sub = this.sub()\n\t\t\t\tif( !sub ) return 0\n\t\t\t\t\n\t\t\t\tsub.forEach( view => {\n\t\t\t\t\tif( view instanceof $mol_view ) {\n\t\t\t\t\t\tmin = Math.max( min , view.minimal_width() )\n\t\t\t\t\t}\n\t\t\t\t} )\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn 24\n\t\t\t}\n\t\t\n\t\t\treturn min\n\t\t}\n\t\t\n\t\tmaximal_width() {\n\t\t\treturn this.minimal_width()\n\t\t}\n\t\t\n\t\t/// Minimal height that used for lazy rendering\n\t\t@ $mol_mem\n\t\tminimal_height() {\n\t\t\t\n\t\t\tlet min = 0\n\t\t\ttry {\n\t\t\t\t\n\t\t\t\tfor( const view of this.sub() ?? [] ) {\n\n\t\t\t\t\tif( view instanceof $mol_view ) {\n\t\t\t\t\t\tmin = Math.max( min , view.minimal_height() )\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t \n\t\t\t} catch( error: any ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn 24\n\t\t\t}\n\n\t\t\treturn min\n\t\t}\n\n\t\tstatic watchers = new Set< $mol_view >()\n\n\t\t@ $mol_mem\n\t\tview_rect() {\n\t\t\tif( $mol_wire_probe( ()=> this.view_rect() ) === undefined ) {\n\t\t\t\t$mol_wire_watch()\n\t\t\t\treturn null // don't touch DOM to prevent instant reflow\n\t\t\t} else {\n\t\t\t\tconst { width, height, left, right, top, bottom } = this.dom_node().getBoundingClientRect()\n\t\t\t\treturn { width, height, left, right, top, bottom } // pick to optimize compare\n\t\t\t}\n\t\t}\n\n\t\t@ $mol_memo.method\n\t\tdom_id() {\n\t\t\treturn this.toString().replace( //g, ')' ).replaceAll( /\"/g, \"'\" )\n\t\t}\n\t\n\t\tdom_node_external( next?: Element) {\n\t\t\tconst node = next ?? $mol_dom_context.document.createElementNS( this.dom_name_space() , this.dom_name() )\n\n\t\t\tconst id = this.dom_id()\n\t\t\tnode.setAttribute( 'id' , id )\n\t\t\tnode.toString = $mol_const( '<#' + id + '>' )\n\n\t\t\treturn node\n\t\t}\n\n\t\t@ $mol_mem\n\t\tdom_node( next? : Element ) {\n\t\t\t$mol_wire_solid()\n\t\t\tconst node = this.dom_node_external( next )\n\t\t\t$mol_dom_render_attributes( node , this.attr_static() )\n\t\t\t\n\t\t\tconst events = this.event_async()\n\t\t\t$mol_dom_render_events(node, events)\n\n\t\t\treturn node\n\t\t}\n\n\t\t@ $mol_mem\n\t\tdom_final() {\n\t\t\t\n\t\t\tthis.render()\n\t\t\t\n\t\t\tconst sub = this.sub_visible()\n\t\t\tif( !sub ) return\n\t\t\t\n\t\t\tfor( const el of sub ) {\n\t\t\t\tif( el && typeof el === 'object' && 'dom_final' in el ) {\n\t\t\t\t\tel['dom_final']()\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn this.dom_node()\n\t\t\t\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tdom_tree( next? : Element ) : Element {\n\t\t\tconst node = this.dom_node( next )\n\t\t\t\n\t\t\trender: try {\n\n\t\t\t\t$mol_dom_render_attributes( node , { mol_view_error : null } )\n\n\t\t\t\ttry {\n\t\t\t\t\n\t\t\t\t\tthis.render()\n\t\t\t\t\t\n\t\t\t\t} finally {\n\t\t\t\t\t\n\t\t\t\t\tfor( let plugin of this.plugins() ) {\n\t\t\t\t\t\tif( plugin instanceof $mol_plugin ) {\n\t\t\t\t\t\t\tplugin.dom_tree()\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\tconst mol_view_error = $mol_promise_like(error) ? 'Promise' : error.name || error.constructor.name\n\t\t\t\t$mol_dom_render_attributes( node , { mol_view_error } )\n\t\t\t\t\n\t\t\t\tif( $mol_promise_like( error ) ) break render\n\t\t\t\tif( ( error_showed.get( error ) ?? this ) !== this ) break render\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\tconst message = error.message || error\n\t\t\t\t\t;( node as HTMLElement ).innerText = message.replace( /^|$/mg, '\\xA0\\xA0' )\n\t\t\t\t} catch {}\n\t\t\t\t\n\t\t\t\terror_showed.set( error, this )\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\ttry {\n\t\t\t\tthis.auto()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t}\n\t\t\t\t\n\t\t\treturn node\n\t\t}\n\n\t\t@ $mol_mem\n\t\tdom_node_actual() {\n\t\t\tconst node = this.dom_node()\n\n\t\t\t$mol_dom_render_styles( node, this.style_size() )\n\n\t\t\tconst attr = this.attr()\n\t\t\tconst style = this.style()\n\n\t\t\t$mol_dom_render_attributes( node , attr )\n\t\t\t$mol_dom_render_styles( node , style )\n\n\t\t\treturn node\n\t\t}\n\t\t\n\t\tauto() {\n\t\t\treturn null as any\n\t\t}\n\n\t\t@ $mol_mem\n\t\trender() {\n\n\t\t\tconst node = this.dom_node_actual()\n\n\t\t\tconst sub = this.sub_visible()\n\t\t\tif( !sub ) return\n\t\t\t\n\t\t\tconst nodes = sub.map( child => {\n\t\t\t\tif( child == null ) return null\n\t\t\t\treturn ( child instanceof $mol_view )\n\t\t\t\t\t? child.dom_node()\n\t\t\t\t\t: child instanceof $mol_dom_context.Node\n\t\t\t\t\t? child\n\t\t\t\t\t: String( child )\n\t\t\t})\n\t\t\t\n\t\t\t$mol_dom_render_children( node , nodes )\n\n\t\t\tfor( const el of sub ) if( el && typeof el === 'object' && 'dom_tree' in el ) el['dom_tree']()\n\n\t\t\t$mol_dom_render_fields( node , this.field() )\n\t\t\t\n\t\t}\n\n\t\t@ $mol_memo.method\n\t\tstatic view_classes() {\n\t\t\tconst proto = this.prototype\n\t\t\t\n\t\t\tlet current = proto\n\t\t\tconst classes = [] as ( typeof $mol_view )[]\n\t\t\t\n\t\t\twhile( current ) {\n\t\t\t\tif( current.constructor.name !== classes.at(-1)?.name ) {\n\t\t\t\t\tclasses.push( current.constructor as typeof $mol_view )\n\t\t\t\t}\n\t\t\t\tif(!( current instanceof $mol_view )) break\n\t\t\t\tcurrent = Object.getPrototypeOf( current )\n\t\t\t}\n\t\t\t\n\t\t\treturn classes\n\t\t}\n\t\t\n\t\tstatic _view_names?: Map< string, string[] >\n\t\tstatic view_names( suffix: string ) {\n\t\t\t\n\t\t\tlet cache = Reflect.getOwnPropertyDescriptor( this, '_view_names' )?.value\n\t\t\tif( !cache ) cache = this._view_names = new Map\n\t\t\t\n\t\t\tconst cached = cache.get( suffix )\n\t\t\tif( cached ) return cached\n\t\t\t\n\t\t\tconst names = [] as string[]\n\t\t\tconst suffix2 = '_' + suffix[0].toLowerCase() + suffix.substring(1)\n\t\t\t\n\t\t\tfor( const Class of this.view_classes() ) {\n\t\t\t\tif( suffix in Class.prototype ) names.push( this.$.$mol_func_name( Class ) + suffix2 )\n\t\t\t\telse break\n\t\t\t}\n\t\t\t\n\t\t\tcache.set( suffix, names )\n\t\t\treturn names\n\t\t}\n\t\t\n\t\t@ $mol_memo.method\n\t\tview_names_owned() {\n\t\t\tconst names = [] as string[]\n\t\t\tlet owner = $mol_owning_get( this ) as $mol_wire_fiber< any, any[], any >\n\n\t\t\tif(!( owner?.host instanceof $mol_view )) return names\n\n\t\t\tconst suffix = owner.task.name.trim()\n\t\t\tconst suffix2 = '_' + suffix[0].toLowerCase() + suffix.substring(1)\n\t\t\t\n\t\t\tnames.push( ... ( owner.host.constructor as typeof $mol_view ).view_names( suffix ) )\n\t\t\t\n\t\t\tfor( let prefix of owner.host.view_names_owned() ) {\n\t\t\t\tnames.push( prefix + suffix2 )\n\t\t\t}\n\t\t\t\n\t\t\treturn names\n\t\t}\n\n\t\t@ $mol_memo.method\n\t\tview_names() {\n\t\t\tconst names = new Set< string >()\n\t\t\t\n\t\t\tfor( let name of this.view_names_owned() ) names.add( name )\n\n\t\t\tfor( let Class of ( this.constructor as typeof $mol_view ).view_classes() ) {\n\t\t\t\tconst name = this.$.$mol_func_name( Class )\n\t\t\t\tif( name ) names.add( name )\n\t\t\t}\n\n\t\t\treturn names\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\ttheme( next = null as null | string ) {\n\t\t\treturn next\n\t\t}\n\t\t\n\t\tattr_static() : { [ key : string ] : string|number|boolean|null } {\n\t\t\tlet attrs : any = {}\n\t\t\t\n\t\t\tfor( let name of this.view_names() ) attrs[ name.replace( /\\$/g , '' ).replace( /^(?=\\d)/ , '_' ).toLowerCase() ] = ''\n\t\t\t\n\t\t\treturn attrs\n\t\t}\n\t\t\n\t\tattr() {\n\t\t\treturn {\n\t\t\t\tmol_theme: this.theme() ?? undefined,\n\t\t\t} as {}\n\t\t}\n\t\t\n\t\tstyle_size() {\n\t\t\treturn {\n\t\t\t\tminHeight: this.minimal_height(),\n\t\t\t\tminWidth: this.minimal_width(),\n\t\t\t} as {\n\t\t\t\t[key: string]: string | number;\n\t\t\t}\n\t\t}\n\t\t\n\t\tstyle() : { [ key : string ] : string|number } {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\tfield() : { [ key : string ] : any } {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\tevent() : { [ key : string ] : ( event : Event )=> void } {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tevent_async() {\n\t\t\treturn { ... $mol_wire_async(this.event()) }\n\t\t}\n\n\t\tplugins() {\n\t\t\treturn [] as readonly $mol_view[]\n\t\t}\n\t\t\n\t\t[ $mol_dev_format_head ]() {\n\t\t\treturn $mol_dev_format_span( {} ,\n\t\t\t\t$mol_dev_format_native( this ) ,\n\t\t\t\t// $mol_dev_format_shade( '/' ) ,\n\t\t\t\t// $mol_dev_format_auto( $mol_wire_cache( this ).sub().cache ) ,\n\t\t\t)\n\t\t}\n\n\t\t/** Deep search view by predicate. */\n\t\t*view_find(\n\t\t\tcheck: ( path : $mol_view, text?: string )=> boolean,\n\t\t\tpath = [] as $mol_view[],\n\t\t): Generator< $mol_view[] > {\n\n\t\t\tif( check( this ) ) return yield [ ... path, this ]\n\t\t\t\n\t\t\ttry {\n\t\t\t\tfor( const item of this.sub() ) {\n\t\t\t\t\tif( item instanceof $mol_view ) {\n\t\t\t\t\t\tyield* item.view_find( check, [ ... path, this ] )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} catch( error: unknown ) {\n\t\t\t\tif( $mol_promise_like( error ) ) $mol_fail_hidden( error )\n\t\t\t\t$mol_fail_log( error )\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\t/** Renders path of views to DOM. */\n\t\tforce_render(\n\t\t\tpath : Set< $mol_view >,\n\t\t) {\n\n\t\t\tconst kids = this.sub()\n\n\t\t\tconst index = kids.findIndex( item => {\n\t\t\t\tif( item instanceof $mol_view ) {\n\t\t\t\t\treturn path.has( item )\n\t\t\t\t} else {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tif( index >= 0 ) {\n\t\t\t\t( kids[ index ] as $mol_view ).force_render( path )\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\t/** Renders view to DOM and scroll to it. */\n\t\tensure_visible( view: $mol_view, align: ScrollLogicalPosition = \"start\" ) {\n\t\t\t\n\t\t\tconst path = this.view_find( v => v === view ).next().value\n\t\t\tthis.force_render( new Set( path ) )\n\t\t\t\n\t\t\ttry {\n\t\t\t\tthis.dom_final()\n\t\t\t} catch(err) {\n\t\t\t\t$mol_fail_log(err)\n\t\t\t}\n\n\t\t\tview.dom_node().scrollIntoView({ block: align })\n\n\t\t}\n\t\t\n\t\tbring() {\n\t\t\t\n\t\t\tconst win = this.$.$mol_dom_context\n\t\t\tif( win.parent !== win.self && !win.document.hasFocus() ) return\n\t\t\t\n\t\t\tnew this.$.$mol_after_frame( ()=> {\n\t\t\t\t\n\t\t\t\tthis.dom_node().scrollIntoView({ block: 'start', inline: 'nearest' })\n\t\t\t\tthis.focused( true )\n\t\t\t\t\n\t\t\t} )\n\t\t\t\n\t\t}\n\n\t\toverride destructor() {\n\t\t\tconst node = $mol_wire_probe(() => this.dom_node())\n\t\t\tif (! node) return\n\n\t\t\tconst events = $mol_wire_probe(() => this.event_async())\n\t\t\tif (! events) return\n\n\t\t\tfor( let event_name in events ) {\n\t\t\t\tnode.removeEventListener(\n\t\t\t\t\tevent_name ,\n\t\t\t\t\tevents[ event_name ]\n\t\t\t\t)\n\t\t\t}\n\t\t}\n\t}\n\n\texport type $mol_view_all = $mol_type_pick< $ , typeof $mol_view >\n\n}\n","namespace $ { $mol_style_attach( \"mol/view/view/view.css\",\n \"[mol_view] {\\n\\ttransition-property: height, width, min-height, min-width, max-width, max-height, transform;\\n\\ttransition-duration: .2s;\\n\\ttransition-timing-function: ease-out;\\n\\t-webkit-appearance: none;\\n\\tbox-sizing: border-box;\\n\\tdisplay: flex;\\n\\tflex-shrink: 0;\\n\\tcontain: style;\\n\\tscrollbar-color: var(--mol_theme_line) transparent;\\n\\tscrollbar-width: thin;\\n}\\t\\n\\n[mol_view]::selection {\\n\\tbackground: var(--mol_theme_line);\\n}\\t\\n\\n[mol_view]::-webkit-scrollbar {\\n\\twidth: .25rem;\\n\\theight: .25rem;\\n}\\n\\n[mol_view]::-webkit-scrollbar-corner {\\n\\tbackground-color: var(--mol_theme_line);\\n}\\n\\n[mol_view]::-webkit-scrollbar-track {\\n\\tbackground-color: transparent;\\n}\\n\\n[mol_view]::-webkit-scrollbar-thumb {\\n\\tbackground-color: var(--mol_theme_line);\\n\\tborder-radius: var(--mol_gap_round);\\n}\\n\\n[mol_view] > * {\\n\\tword-break: inherit;\\n}\\n\\n[mol_view_root] {\\n\\tmargin: 0;\\n\\tpadding: 0;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tbox-sizing: border-box;\\n\\tfont-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\\n\\tfont-size: 1rem;\\n\\tline-height: 1.5rem;\\n\\tbackground: var(--mol_theme_back);\\n\\tcolor: var(--mol_theme_text);\\n\\tcontain: unset; /** Fixes bg ignoring when applied to body on Chrome */\\n\\ttab-size: 4;\\n\\toverscroll-behavior: contain; /** Disable navigation gestures **/\\n}\\n\\n@media print {\\n\\t[mol_view_root] {\\n\\t\\theight: auto;\\n\\t}\\n}\\n\\n[mol_view][mol_view_error]:not([mol_view_error=\\\"Promise\\\"]) {\\n\\tbackground-image: repeating-linear-gradient(\\n\\t\\t-45deg,\\n\\t\\t#f92323,\\n\\t\\t#f92323 .5rem,\\n\\t\\t#ff3d3d .5rem,\\n\\t\\t#ff3d3d 1.5rem\\n\\t);\\n\\tcolor: black;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\\n@keyframes mol_view_wait {\\n\\tfrom {\\n\\t\\topacity: .25;\\n\\t}\\n\\t20% {\\n\\t\\topacity: .75;\\n\\t}\\n\\tto {\\n\\t\\topacity: .25;\\n\\t}\\n}\\n\\n:where([mol_view][mol_view_error=\\\"Promise\\\"]) {\\n\\tbackground: var(--mol_theme_hover);\\n}\\n\\n[mol_view][mol_view_error=\\\"Promise\\\"] {\\n\\tanimation: mol_view_wait 1s steps( 20, end ) infinite;\\n}\\n\"\n) }","$mol_scroll $mol_view\n\tscroll_top? 0\n\tscroll_left? 0\n\tfield *\n\t\t^\n\t\ttabIndex <= tabindex -1\n\tevent *\n\t\t^\n\t\tscroll?event <=> event_scroll?event null\n","namespace $ {\n\n\texport class $mol_dom_listener extends $mol_object {\n\n\t\tconstructor(\n\t\t\tpublic _node : any ,\n\t\t\tpublic _event : string ,\n\t\t\tpublic _handler : ( event : any )=> any ,\n\t\t\tpublic _config : boolean|{ passive : boolean } = { passive : true }\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis._node.addEventListener( this._event , this._handler , this._config )\n\t\t}\n\n\t\tdestructor() {\n\t\t\tthis._node.removeEventListener( this._event , this._handler , this._config )\n\t\t\tsuper.destructor()\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_print extends $mol_object {\n\n\t\t@ $mol_mem\n\t\tstatic before() {\n\t\t\treturn new $mol_dom_listener( this.$.$mol_dom_context , 'beforeprint' , ()=> {\n\t\t\t\tthis.active( true )\n\t\t\t} )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tstatic after() {\n\t\t\treturn new $mol_dom_listener( this.$.$mol_dom_context , 'afterprint' , ()=> {\n\t\t\t\tthis.active( false )\n\t\t\t} )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tstatic active( next? : boolean ) {\n\t\t\tthis.before()\n\t\t\tthis.after()\n\t\t\treturn next || false\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_style_sheet<\n\t\tComponent extends $mol_view,\n\t\tConfig extends $mol_style_guard< Component , Config >,\n\t>(\n\t\tComponent : new()=> Component,\n\t\tconfig0 : Config ,\n\t) {\n\n\t\tlet rules = [] as string[]\n\n\t\tconst block = $mol_dom_qname( $mol_ambient({}).$mol_func_name( Component ) )\n\t\tconst kebab = ( name : string )=> name.replace( /[A-Z]/g , letter => '-' + letter.toLowerCase() )\n\n\t\tconst make_class = ( prefix : string , path : string[] , config : typeof config0 )=> {\n\n\t\t\tconst props = [] as string[]\n\n\t\t\tconst selector = ( prefix : string , path : string[] )=> {\n\t\t\t\tif( path.length === 0 ) return prefix || `[${ block }]`\n\t\t\t\tlet res = `[${ block }_${ path.join('_') }]`\n\t\t\t\tif( prefix ) res = prefix + ' :where(' + res + ')'\n\t\t\t\treturn res\n\t\t\t}\n\t\t\t\n\t\t\tfor( const key of Object.keys( config ).reverse() ) {\n\n\t\t\t\tif( /^(--)?[a-z]/.test(key) ) {\n\t\t\t\t\t\n\t\t\t\t\tconst addProp = ( keys : string[] , val : any )=> {\n\n\t\t\t\t\t\tif( Array.isArray( val ) ) {\n\n\t\t\t\t\t\t\tif( val[0] && [ Array , Object ].includes( val[0].constructor ) ) {\n\t\t\t\t\t\t\t\tval = val.map( v => {\n\t\t\t\t\t\t\t\t\treturn Object.entries( v ).map( ([ n , a ])=> {\n\t\t\t\t\t\t\t\t\t\tif( a === true ) return kebab( n )\n\t\t\t\t\t\t\t\t\t\tif( a === false ) return null\n\t\t\t\t\t\t\t\t\t\treturn String( a )\n\t\t\t\t\t\t\t\t\t} ).filter( Boolean ).join(' ')\n\t\t\t\t\t\t\t\t}).join( ',' )\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tval = val.join(' ')\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tprops.push(`\\t${ keys.join('-') }: ${ val };\\n`)\n\n\t\t\t\t\t\t} else if( val.constructor === Object ) {\n\n\t\t\t\t\t\t\tfor( let suffix in val ) {\n\t\t\t\t\t\t\t\taddProp( [ ... keys , kebab( suffix ) ] , val[ suffix ] )\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\tprops.push(`\\t${ keys.join('-') }: ${ val };\\n`)\n\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\n\t\t\t\t\taddProp( [ kebab(key) ] , (config as any)[key] )\n\n\t\t\t\t} else if( /^[A-Z]/.test(key) ) {\n\n\t\t\t\t\tmake_class( prefix , [ ... path , key.toLowerCase() ] , (config as any)[key] )\n\n\t\t\t\t} else if( key[0] === '$' ) {\n\n\t\t\t\t\tmake_class( selector( prefix , path ) + ' :where([' + $mol_dom_qname( key ) + '])' , [] , (config as any)[key] )\n\n\t\t\t\t} else if( key === '>' ) {\n\n\t\t\t\t\tconst types = config[key] as any\n\n\t\t\t\t\tfor( let type in types ) {\n\t\t\t\t\t\tmake_class( selector( prefix , path ) + ' > :where([' + $mol_dom_qname( type ) + '])' , [] , types[type] )\n\t\t\t\t\t}\n\n\t\t\t\t} else if( key === '@' ) {\n\n\t\t\t\t\tconst attrs = config[key] as any\n\n\t\t\t\t\tfor( let name in attrs ) {\n\t\t\t\t\t\tfor( let val in attrs[name] ) {\n\t\t\t\t\t\t\tmake_class( selector( prefix , path ) + ':where([' + name + '=' + JSON.stringify( val ) + '])' , [] , attrs[name][val] )\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t} else if( key === '@media' ) {\n\n\t\t\t\t\tconst media = (config as any)[key] as any\n\n\t\t\t\t\tfor( let query in media ) {\n\n\t\t\t\t\t\trules.push('}\\n')\n\t\t\t\t\t\t\n\t\t\t\t\t\tmake_class( prefix , path , media[query] )\n\t\t\t\t\t\t\n\t\t\t\t\t\trules.push( `${ key } ${ query } {\\n` )\n\n\t\t\t\t\t}\n\n\t\t\t\t} else if( key[0] === '[' && key[key.length-1] === ']' ) {\n\n\t\t\t\t\tconst attr = key.slice( 1, -1 )\n\t\t\t\t\tconst vals = config[ key as any ] as any as Record< string, any >\n\t\t\t\t\t\n\t\t\t\t\tfor( let val in vals ) {\n\t\t\t\t\t\tmake_class( selector( prefix , path ) + ':where([' + attr + '=' + JSON.stringify( val ) + '])' , [] , vals[val] )\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\t} else {\n\n\t\t\t\t\tmake_class( selector( prefix , path ) + key , [] , (config as any)[key] )\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\tif( props.length ) {\n\t\t\t\trules.push( `${ selector( prefix , path ) } {\\n${ props.reverse().join('') }}\\n` )\n\t\t\t}\n\n\t\t}\n\n\t\tmake_class( '' , [] , config0 )\n\n\t\treturn rules.reverse().join('')\n\n\t}\n\n}\n","namespace $ {\n\n\t/**\n\t * CSS in TS.\n\t * Statically typed CSS style sheets. Following samples show which CSS code are generated from TS code.\n\t * @see https://mol.hyoo.ru/#!section=docs/=xwq9q5_f966fg\n\t */\n\texport function $mol_style_define<\n\t\tComponent extends $mol_view,\n\t\tConfig extends $mol_style_guard< Component , Config >,\n\t>(\n\t\tComponent : new()=> Component,\n\t\tconfig : Config ,\n\t) {\n\n\t\treturn $mol_style_attach(\n\t\t\tComponent.name,\n\t\t\t$mol_style_sheet( Component , config ),\n\t\t)\n\n\t}\n\n}\n","namespace $.$$ {\n\t\n\t/**\n\t * Scrolling pane.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_scroll_demo\n\t */\n\texport class $mol_scroll extends $.$mol_scroll {\n\n\t\t@ $mol_mem\n\t\tscroll_top( next? : number, cache?: 'cache' ): number {\n\t\t\t\n\t\t\tconst el = this.dom_node()\n\t\t\tif( next !== undefined && !cache ) el.scrollTop = next\n\t\t\t\n\t\t\treturn el.scrollTop\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tscroll_left( next? : number, cache?: 'cache' ): number {\n\t\t\t\n\t\t\tconst el = this.dom_node()\n\t\t\tif( next !== undefined && !cache ) el.scrollLeft = next\n\t\t\t\n\t\t\treturn el.scrollLeft\n\t\t}\n\t\t\n\t\tevent_scroll( next? : Event ) {\n\t\t\t\n\t\t\tconst el = this.dom_node() as HTMLElement\n\t\t\t\n\t\t\tthis.scroll_left( el.scrollLeft, 'cache' )\n\t\t\tthis.scroll_top( el.scrollTop, 'cache' )\n\t\t\t\n\t\t}\n\n\t\tminimal_height() {\n\t\t\treturn this.$.$mol_print.active() ? null! : 0\n\t\t}\n\t\t\n\t\tminimal_width() {\n\t\t\treturn this.$.$mol_print.active() ? null! : 0\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $.$$ {\n\n\tconst { per , rem , px } = $mol_style_unit\n\n\t$mol_style_define( $mol_scroll , {\n\n\t\tdisplay: 'grid',\n\t\toverflow: 'auto',\n\t\tflex: {\n\t\t\tdirection: 'column',\n\t\t\tgrow: 1,\n\t\t\tshrink: 1,\n\t\t\t// basis: 0,\n\t\t},\n\t\toutline: 'none',\n\t\talignSelf: 'stretch',\n\t\tboxSizing: 'border-box',\n\t\twillChange: 'scroll-position',\n\t\tscroll: {\n\t\t\tpadding: [ rem(.75), 0 ],\n\t\t},\n\t\tmaxHeight: per(100),\n\t\tmaxWidth: per(100),\n\t\twebkitOverflowScrolling: 'touch',\n\t\tcontain: 'content',\n\n\t\t'>': {\n\t\t\t$mol_view: {\n\t\t\t\ttransform: 'translateZ(0)', // enforce gpu scroll in all agents\n\t\t\t\tgridArea: '1/1',\n\t\t\t},\n\t\t},\n\n\t\t'::before': {\n\t\t\tdisplay: 'none',\n\t\t},\n\t\t'::after': {\n\t\t\tdisplay: 'none',\n\t\t},\n\t\t\n\t\t'::-webkit-scrollbar': {\n\t\t\twidth: rem(.25),\n\t\t\theight: rem(.25),\n\t\t},\n\t\t\n\t\t'@media' : {\n\t\t\t'print' : {\n\t\t\t\toverflow: 'visible',\n\t\t\t\tcontain: 'none',\n\t\t\t\tmaxHeight: 'unset',\n\t\t\t},\n\t\t},\n\n\t})\n\n}\n","$mol_page $mol_view\n\tdom_name \\article\n\tfield *\n\t\t^\n\t\ttabIndex <= tabindex -1\n\tsub /\n\t\t<= Head $mol_view\n\t\t\tminimal_height 64\n\t\t\tdom_name \\header\n\t\t\tsub <= head /\n\t\t\t\t<= Title $mol_view\n\t\t\t\t\tdom_name \\h1\n\t\t\t\t\tsub <= title_content /\n\t\t\t\t\t\t<= Logo null\n\t\t\t\t\t\t<= title\n\t\t\t\t<= Tools $mol_view\n\t\t\t\t\tsub <= tools /$mol_view_content\n\t\t<= Body $mol_scroll\n\t\t\tscroll_top? => body_scroll_top?\n\t\t\tsub <= body_content /\n\t\t\t\t<= Body_content $mol_view\n\t\t\t\t\tsub <= body /$mol_view\n\t\t<= Foot $mol_view\n\t\t\tdom_name \\footer\n\t\t\tsub <= foot /$mol_view\n","namespace $ {\n\t/** Plugin is component without its own DOM element, but instead uses the owner DOM element */\n\texport class $mol_plugin extends $mol_view {\n\n\t\toverride dom_node_external( next? : Element ) {\n\t\t\treturn next ?? $mol_owning_get>( this )!.host!.dom_node()\n\t\t}\n\n\t\toverride render() {\n\t\t\tthis.dom_node_actual()\n\t\t}\n\n\t}\n\n}\n","namespace $.$$ {\n\n\tconst { per , rem } = $mol_style_unit\n\tconst { calc } = $mol_style_func\n\n\t$mol_style_define( $mol_page , {\n\n\t\tdisplay: 'flex' ,\n\t\tflex: {\n\t\t\tbasis: 'auto' ,\n\t\t\tdirection: 'column' ,\n\t\t},\n\t\tposition: 'relative' ,\n\t\talignSelf: 'stretch' ,\n\t\tmaxWidth: per(100) ,\n\t\tmaxHeight: per(100) ,\n\t\tboxSizing: 'border-box' ,\n\t\tcolor: $mol_theme.text ,\n\t\t// zIndex: 0 ,\n\t\t\n\t\t':focus': {\n\t\t\toutline: 'none',\n\t\t} ,\n\n\t\tHead: {\n\t\t\tdisplay: 'flex' ,\n\t\t\tflexWrap: 'wrap' ,\n\t\t\tjustifyContent: 'flex-end' ,\n\t\t\tflex: 'none',\n\t\t\tposition: 'relative' ,\n\t\t\tmargin: 0 ,\n\t\t\tminHeight: rem(4),\n\t\t\tpadding: $mol_gap.block ,\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.card ,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tradius: $mol_gap.round,\n\t\t\t},\n\t\t\tboxShadow: `0 0.5rem 0.5rem -0.5rem hsla(0,0%,0%,.25)` ,\n\t\t\tzIndex: 2,\n\t\t},\n\n\t\tTitle: {\n\n\t\t\tminHeight: rem(2),\n\t\t\tmargin: 0,\n\t\t\tpadding: $mol_gap.text,\n\t\t\tgap: $mol_gap.text,\n\t\t\twordBreak: 'normal',\n\t\t\ttextShadow: '0 0',\n\n\t\t\tfont: {\n\t\t\t\tsize: 'inherit',\n\t\t\t\tweight: 'normal',\n\t\t\t},\n\t\n\t\t\tflex: {\n\t\t\t\tgrow: 1,\n\t\t\t\tshrink: 1,\n\t\t\t\tbasis: 'auto',\n\t\t\t},\n\n\t\t},\n\n\t\tTools: {\n\t\t\t\n\t\t\tflex: {\n\t\t\t\tbasis: 'auto',\n\t\t\t\tgrow: 1000,\n\t\t\t\tshrink: 1,\n\t\t\t},\n\t\t\tdisplay: 'flex',\n\t\t\tjustifyContent: 'flex-end',\n\t\t\talignItems: 'flex-start',\n\t\t\tflexWrap: 'wrap',\n\n\t\t},\n\n\t\tBody: {\n\t\t\tflex: {\n\t\t\t\tgrow: 1000,\n\t\t\t\tshrink: 1,\n\t\t\t\tbasis: per(100),\n\t\t\t},\n\t\t},\n\t\t\n\t\tBody_content: {\n\t\t\tpadding: $mol_gap.block ,\n\t\t\tflex: {\n\t\t\t\tdirection: 'column',\n\t\t\t\tshrink: 1,\n\t\t\t\tgrow: 1,\n\t\t\t},\n\t\t\tjustify: {\n\t\t\t\tself: 'stretch',\n\t\t\t},\n\t\t},\n\t\t\n\t\tFoot: {\n\t\t\tdisplay: 'flex',\n\t\t\tjustifyContent: 'space-between',\n\t\t\tflex: 'none',\n\t\t\tmargin: 0,\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.card ,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tradius: $mol_gap.round,\n\t\t\t},\n\t\t\tboxShadow: `0 -0.5rem 0.5rem -0.5rem hsla(0,0%,0%,.25)` ,\n\t\t\tzIndex: 1,\n\t\t\tpadding: $mol_gap.block ,\n\t\t\t':empty': {\n\t\t\t\tdisplay: 'none',\n\t\t\t},\n\t\t},\t\n\n\t} )\n\t\n}\n","$mol_theme_auto $mol_plugin\n\tattr * mol_theme <= theme \\\n","namespace $ {\n\t/**\n\t * Decorates method to fiber to ensure it is executed only once inside other fiber from [mol_wire](../wire/README.md)\n\t * @see https://mol.hyoo.ru/#!section=docs/=1fcpsq_1wh0h2\n\t */\n\texport let $mol_action = $mol_wire_method\n}\n","namespace $ {\n\n\t/** State of arguments like `foo=bar xxx` */\n\texport class $mol_state_arg extends $mol_object {\n\t\t\n\t\tstatic prolog = ''\n\t\tstatic separator = ' '\n\t\t\n\t\t@ $mol_mem\n\t\tstatic href( next? : string ) {\n\t\t\treturn next || process.argv.slice( 2 ).join( ' ' )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic href_normal() {\n\t\t\treturn this.link({})\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic dict( next? : { [ key : string ] : string | null } ) {\n\t\t\tif( next !== void 0 ) this.href( this.make_link( next ) )\n\t\t\t\n\t\t\tvar href = this.href()\n\t\t\tvar chunks = href.split( ' ' )\n\t\t\t\n\t\t\tvar params : { [ key : string ] : string } = {}\n\t\t\tchunks.forEach(\n\t\t\t\tchunk => {\n\t\t\t\t\tif( !chunk ) return\n\t\t\t\t\tvar vals = chunk.split( '=' ).map( decodeURIComponent )\n\t\t\t\t\tparams[ vals.shift()! ] = vals.join('=')\n\t\t\t\t}\n\t\t\t)\n\t\t\t\n\t\t\treturn params as Readonly< typeof params >\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic value( key : string , next? : string | null ) {\n\t\t\tif( next === void 0 ) return this.dict()[ key ] ?? null\n\t\t\tthis.href( this.link( { [ key ] : next } ) )\n\t\t\treturn next\n\t\t}\n\t\t\n\t\tstatic link( next : Record ) {\n\t\t\tconst params : Record = {}\n\t\t\t\n\t\t\tvar prev = this.dict()\n\t\t\tfor( var key in prev ) {\n\t\t\t\tparams[ key ] = prev[ key ]\n\t\t\t}\n\t\t\t\n\t\t\tfor( var key in next ) {\n\t\t\t\tparams[ key ] = next[ key ]\n\t\t\t}\n\t\t\t\n\t\t\treturn this.make_link( params )\n\t\t}\n\t\t\n\t\tstatic make_link( next : Record) {\n\t\t\tconst chunks : string[] = []\n\t\t\tfor( const key in next ) {\n\t\t\t\tif( next[ key ] !== null ) {\n\t\t\t\t\tchunks.push([key, next[key]!].map(encodeURIComponent).join('='))\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn chunks.join( ' ' )\n\t\t}\n\t\t\n\t\t@ $mol_action\n\t\tstatic go( next : { [ key : string ] : string | null } ) {\n\t\t\tthis.href( this.make_link( next ) )\n\t\t}\n\t\t\n\t\tconstructor( public prefix = '' ) {\n\t\t\tsuper()\n\t\t}\n\t\t\n\t\tvalue( key : string , next? : string ) {\n\t\t\treturn ( this.constructor as typeof $mol_state_arg ).value( this.prefix + key , next )\n\t\t}\n\t\t\n\t\tsub( postfix : string ) {\n\t\t\treturn new ( this.constructor as typeof $mol_state_arg )( this.prefix + postfix + '.' )\n\t\t}\n\t\t\n\t\tlink( next : Record ) {\n\t\t\tconst prefix = this.prefix\n\t\t\tconst dict : Record = {}\n\t\t\tfor( var key in next ) {\n\t\t\t\tdict[ prefix + key ] = next[ key ]\n\t\t\t}\n\t\t\treturn ( this.constructor as typeof $mol_state_arg ).link( dict )\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\texport let $mol_mem_persist = $mol_wire_solid\n}\n","namespace $ {\n\texport let $mol_mem_cached = $mol_wire_probe\n}\n","namespace $ {\n\t\n\t/**\n\t * Convert asynchronous (promise-based) API to synchronous by wrapping function and method calls in a fiber.\n\t * @see https://mol.hyoo.ru/#!section=docs/=1fcpsq_1wh0h2\n\t */\n\texport function $mol_wire_sync< Host extends object >( obj: Host ) {\n\t\treturn new Proxy( obj, {\n\t\t\t\n\t\t\tget( obj, field ) {\n\t\t\t\t\n\t\t\t\tconst val = (obj as any)[ field ]\n\t\t\t\tif( typeof val !== 'function' ) return val\n\t\t\t\t\n\t\t\t\tconst temp = $mol_wire_task.getter( val )\n\t\t\t\treturn function $mol_wire_sync( this: Host, ... args: any[] ) {\n\t\t\t\t\tconst fiber = temp( obj, args )\n\t\t\t\t\treturn fiber.sync()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t},\n\t\t\t\n\t\t\tapply( obj, self, args ) {\n\t\t\t\tconst temp = $mol_wire_task.getter( obj as ( ... args: any[] )=> any )\n\t\t\t\tconst fiber = temp( self, args )\n\t\t\t\treturn fiber.sync()\n\t\t\t},\n\t\t\t\n\t\t} ) as unknown as ObjectOrFunctionResultAwaited\n\t}\n\n\ttype FunctionResultAwaited = Some extends (...args: infer Args) => infer Res\n\t\t? (...args: Args) => Awaited\n\t\t: Some\n\n\ttype MethodsResultAwaited = {\n\t\t[K in keyof Host]: FunctionResultAwaited\n\t}\n\n\ttype ObjectOrFunctionResultAwaited = (\n\t\tSome extends (...args: any) => unknown ? FunctionResultAwaited : {}\n\t) & ( Some extends Object ? MethodsResultAwaited : Some )\n\n}\n","namespace $ {\n\texport class $mol_storage extends $mol_object2 {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic native() {\n\t\t\treturn this.$.$mol_dom_context.navigator.storage ?? { // exists only in secure context\n\t\t\t\tpersisted: async ()=> false,\n\t\t\t\tpersist: async ()=> false,\n\t\t\t\testimate: async ()=> ({}),\n\t\t\t\tgetDirectory: async ()=> null! as FileSystemHandle,\n\t\t\t} as StorageManager\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic persisted( next?: boolean, cache?: 'cache' ): boolean {\n\t\t\t\n\t\t\t$mol_mem_persist()\n\t\t\t\n\t\t\tif( cache ) return Boolean( next )\n\t\t\t\n\t\t\tconst native = this.native()\n\t\t\tif( next && !$mol_mem_cached( ()=> this.persisted() ) ) {\n\t\t\t\tnative.persist().then( actual => {\n\t\t\t\t\t\n\t\t\t\t\tsetTimeout( ()=> this.persisted( actual, 'cache' ), 5000 )\n\t\t\t\t\t\n\t\t\t\t\tif( actual ) this.$.$mol_log3_done({ place: `$mol_storage`, message: `Persist: Yes` })\n\t\t\t\t\telse this.$.$mol_log3_fail({ place: `$mol_storage`, message: `Persist: No` })\n\t\t\t\t\t\n\t\t\t\t} )\n\t\t\t}\n\t\t\t\n\t\t\treturn next ?? $mol_wire_sync( native ).persisted()\n\t\t}\n\t\t\n\t\tstatic estimate() {\n\t\t\treturn $mol_wire_sync( this.native() ?? {} ).estimate()\n\t\t}\n\t\t\n\t\tstatic dir() {\n\t\t\treturn $mol_wire_sync( this.native() ).getDirectory()\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n\t\n\texport class $mol_state_local< Value > extends $mol_object {\n\t\t\n\t\tstatic 'native()' : Pick< Storage , 'getItem'|'setItem'|'removeItem' >\n\t\tstatic native() {\n\t\t\tif( this['native()'] ) return this['native()']\n\n\t\t\tcheck : try {\n\t\t\t\tconst native = $mol_dom_context.localStorage\n\t\t\t\tif( !native ) break check\n\t\t\t\t\n\t\t\t\tnative.setItem( '' , '' )\n\t\t\t\tnative.removeItem( '' )\n\t\t\t\treturn this['native()'] = native\n\t\t\t} catch( error: any ) {\n\t\t\t\tconsole.warn( error )\n\t\t\t}\n\n\t\t\treturn this['native()'] = {\n\t\t\t\tgetItem( key : string ) {\n\t\t\t\t\treturn (this as any)[ ':' + key ]\n\t\t\t\t} ,\n\t\t\t\tsetItem( key : string , value : string ) {\n\t\t\t\t\t(this as any)[ ':' + key ] = value\n\t\t\t\t} ,\n\t\t\t\tremoveItem( key : string ) {\n\t\t\t\t\t(this as any)[ ':' + key ] = void 0\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic changes( next?: StorageEvent ) { return next }\n\n\t\t@ $mol_mem_key\n\t\tstatic value< Value >(\n\t\t\tkey : string ,\n\t\t\tnext? : Value | null ,\n\t\t) : Value | null {\n\t\t\t\n\t\t\tthis.changes()\n\t\t\t\n\t\t\tif( next === void 0 ) return JSON.parse( this.native().getItem( key ) || 'null' )\n\t\t\t\n\t\t\tif( next === null ) {\n\t\t\t\tthis.native().removeItem( key )\n\t\t\t} else {\n\t\t\t\tthis.native().setItem( key , JSON.stringify( next ) )\n\t\t\t\tthis.$.$mol_storage.persisted( true )\n\t\t\t}\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t\tprefix() { return '' }\n\t\t\n\t\tvalue( key : string , next? : Value ) {\n\t\t\treturn $mol_state_local.value( this.prefix() + '.' + key , next )\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\tfunction parse( theme: string | null ) {\n\t\tif( theme === 'true' ) return true\n\t\tif( theme === 'false' ) return false\n\t\treturn null\n\t}\n\t\n\t/**\n\t * Switcher between light/dark themes (usually for `mol_theme_auto` plugin).\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_lights_demo\n\t */\n\texport function $mol_lights( this : $ , next? : boolean ) {\n\t\t\n\t\tconst arg = parse( this.$mol_state_arg.value( 'mol_lights' ) )\n\t\t\n\t\tconst base = false //this.$mol_media.match( '(prefers-color-scheme: light)' )\n\t\t\n\t\tif( next === undefined ) {\n\t\t\treturn arg ?? this.$mol_state_local.value< boolean >( '$mol_lights' ) ?? base\n\t\t} else {\n\t\t\tif( arg === null ) {\n\t\t\t\tthis.$mol_state_local.value( '$mol_lights' , next === base ? null : next )\n\t\t\t} else {\n\t\t\t\tthis.$mol_state_arg.value( 'mol_lights' , String( next ) )\n\t\t\t}\n\t\t\treturn next\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $.$$ {\n\n\t/**\n\t * The [plugin](../../plugin/readme.md) which defines theme based on [mol_lights](../../lights/readme.md).\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_lights_demo\n\t */\n\texport class $mol_theme_auto extends $.$mol_theme_auto {\n\n\t\ttheme() {\n\t\t\treturn this.$.$mol_lights() ? '$mol_theme_light' : '$mol_theme_dark'\n\t\t}\n\n\t}\n}\n","$mol_speck $mol_view\n\tattr *\n\t\t^\n\t\tmol_theme <= theme \\$mol_theme_accent\n\tstyle *\n\t\t^\n\t\tminHeight \\1em\n\tsub /\n\t\t<= value null\n","namespace $ {\n\n\t/**\n\t * Z-index values for layers\n\t * https://page.hyoo.ru/#!=xthcpx_wqmiba\n\t */\n\texport let $mol_layer = $mol_style_prop(\n\t\t'mol_layer',\n\t\t[\n\t\t\t'hover',\n\t\t\t'focus',\n\t\t\t'speck',\n\t\t\t'float',\n\t\t\t'popup',\n\t\t]\n\t)\n\n}\n","namespace $ { $mol_style_attach( \"mol/layer/layer.css\",\n \":root {\\n\\t--mol_layer_hover: 1;\\n\\t--mol_layer_focus: 2;\\n\\t--mol_layer_speck: 3;\\n\\t--mol_layer_float: 4;\\n\\t--mol_layer_popup: 5;\\n}\\n\"\n) }","namespace $ { $mol_style_attach( \"mol/speck/speck.view.css\",\n \"[mol_speck] {\\n\\tfont-size: .625rem;\\n\\tborder-radius: 1rem;\\n\\tmargin: -0.5rem -0.25rem;\\n\\talign-self: flex-start;\\n\\tmin-height: 1em;\\n\\tmin-width: .5em;\\n\\tvertical-align: sub;\\n\\tpadding: .25em .5em;\\n\\tposition: absolute;\\n\\tz-index: var(--mol_layer_speck);\\n\\ttext-align: center;\\n\\tline-height: 1;\\n\\tdisplay: inline-block;\\n\\twhite-space: nowrap;\\n\\ttext-overflow: ellipsis;\\n\\tuser-select: none;\\n}\\n\"\n) }","$mol_button $mol_view\n\tenabled true\n\tclick?event null\n\tevent_click?event null\n\tevent *\n\t\t^\n\t\tclick?event <=> event_activate?event null\n\t\tdblclick?event <=> clicks?event null\n\t\tkeydown?event <=> event_key_press?event null \n\tattr *\n\t\t^\n\t\tdisabled <= disabled false\n\t\trole \\button\n\t\ttabindex <= tab_index 0\n\t\ttitle <= hint_safe <= hint \\\n\tsub /$mol_view_content\n\t\t<= title\n\tSpeck $mol_speck\n\t\tvalue <= error \\\n","namespace $ {\n\t/**\n\t* Key names code for hotkey\n\t* @see [mol_hotkey](../../hotkey/hotkey.view.ts)\n\t*/\n\texport enum $mol_keyboard_code {\n\t\tbackspace = 8,\n\t\ttab = 9,\n\t\tenter = 13,\n\t\tshift = 16,\n\t\tctrl = 17,\n\t\talt = 18,\n\t\tpause = 19,\n\t\tcapsLock = 20,\n\t\tescape = 27,\n\t\tspace = 32,\n\t\tpageUp = 33,\n\t\tpageDown = 34,\n\t\tend = 35,\n\t\thome = 36,\n\t\tleft = 37,\n\t\tup = 38,\n\t\tright = 39,\n\t\tdown = 40,\n\t\tinsert = 45,\n\t\tdelete = 46,\n\t\tkey0 = 48,\n\t\tkey1 = 49,\n\t\tkey2 = 50,\n\t\tkey3 = 51,\n\t\tkey4 = 52,\n\t\tkey5 = 53,\n\t\tkey6 = 54,\n\t\tkey7 = 55,\n\t\tkey8 = 56,\n\t\tkey9 = 57,\n\t\tA = 65,\n\t\tB = 66,\n\t\tC = 67,\n\t\tD = 68,\n\t\tE = 69,\n\t\tF = 70,\n\t\tG = 71,\n\t\tH = 72,\n\t\tI = 73,\n\t\tJ = 74,\n\t\tK = 75,\n\t\tL = 76,\n\t\tM = 77,\n\t\tN = 78,\n\t\tO = 79,\n\t\tP = 80,\n\t\tQ = 81,\n\t\tR = 82,\n\t\tS = 83,\n\t\tT = 84,\n\t\tU = 85,\n\t\tV = 86,\n\t\tW = 87,\n\t\tX = 88,\n\t\tY = 89,\n\t\tZ = 90,\n\t\tmetaLeft = 91,\n\t\tmetaRight = 92,\n\t\tselect = 93,\n\t\tnumpad0 = 96,\n\t\tnumpad1 = 97,\n\t\tnumpad2 = 98,\n\t\tnumpad3 = 99,\n\t\tnumpad4 = 100,\n\t\tnumpad5 = 101,\n\t\tnumpad6 = 102,\n\t\tnumpad7 = 103,\n\t\tnumpad8 = 104,\n\t\tnumpad9 = 105,\n\t\tmultiply = 106,\n\t\tadd = 107,\n\t\tsubtract = 109,\n\t\tdecimal = 110,\n\t\tdivide = 111,\n\t\tF1 = 112,\n\t\tF2 = 113,\n\t\tF3 = 114,\n\t\tF4 = 115,\n\t\tF5 = 116,\n\t\tF6 = 117,\n\t\tF7 = 118,\n\t\tF8 = 119,\n\t\tF9 = 120,\n\t\tF10 = 121,\n\t\tF11 = 122,\n\t\tF12 = 123,\n\t\tnumLock = 144,\n\t\tscrollLock = 145,\n\t\tsemicolon = 186,\n\t\tequals = 187,\n\t\tcomma = 188,\n\t\tdash = 189,\n\t\tperiod = 190,\n\t\tforwardSlash = 191,\n\t\tgraveAccent = 192,\n\t\tbracketOpen = 219,\n\t\tslashBack = 220,\n\t\tslashBackLeft = 226,\n\t\tbracketClose = 221,\n\t\tquoteSingle = 222\n\t}\n}\n","namespace $.$$ {\n\t\n\t/**\n\t * Simple button.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_button_demo\n\t */\n\texport class $mol_button extends $.$mol_button {\n\n\t\t@ $mol_mem\n\t\tstatus( next = [ null as any ] ) { return next }\n\t\t\n\t\tdisabled() {\n\t\t\treturn !this.enabled()\n\t\t}\n\t\t\n\t\tevent_activate( next : Event ) {\n\t\t\t\n\t\t\tif( !next ) return\n\t\t\tif( !this.enabled() ) return\n\n\t\t\ttry {\n\t\t\t\t\n\t\t\t\tthis.event_click( next )\n\t\t\t\tthis.click( next )\n\t\t\t\tthis.status([ null ])\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t\n\t\t\t\tPromise.resolve().then( ()=> this.status([ error ]) )\n\t\t\t\t$mol_fail_hidden( error )\n\t\t\t\t\n\t\t\t}\n\n\t\t}\n\t\t\n\t\tevent_key_press ( event: KeyboardEvent ) { \n\t\t\tif( event.keyCode === $mol_keyboard_code.enter ) {\n\t\t\t\treturn this.event_activate( event )\n\t\t\t}\n\t\t} \n\t\t\n\t\ttab_index() {\n\t\t\treturn this.enabled() ? super.tab_index() : -1\n\t\t}\n\n\t\terror() {\n\n\t\t\tconst [ error ] = this.status()\n\t\t\tif( !error ) return ''\n\n\t\t\tif( error instanceof Promise ) {\n\t\t\t\treturn $mol_fail_hidden( error )\n\t\t\t}\n\t\t\t\n\t\t\treturn String( error.message ?? error )\n\n\t\t}\n\t\t\n\t\thint_safe() {\n\t\t\ttry {\n\t\t\t\treturn this.hint()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn ''\n\t\t\t}\n\t\t}\n\n\t\tsub_visible() {\n\t\t\treturn [\n\t\t\t\t... this.error() ? [ this.Speck() ] : [] ,\n\t\t\t\t... this.sub() ,\n\t\t\t]\n\t\t}\n\t\t\n\t}\n}\n","namespace $ { $mol_style_attach( \"mol/button/button.view.css\",\n \"[mol_button] {\\n\\tborder: none;\\n\\tfont: inherit;\\n\\tdisplay: inline-flex;\\n\\tflex-shrink: 0;\\n\\ttext-decoration: inherit;\\n\\tcursor: inherit;\\n\\tposition: relative;\\n\\tbox-sizing: border-box;\\n\\tword-break: normal;\\n\\tcursor: default;\\n\\tuser-select: none;\\n\\tborder-radius: var(--mol_gap_round);\\n}\\n\\n[mol_button]:where(:not(:disabled)):hover {\\n\\tz-index: var(--mol_layer_hover);\\n}\\n\\n[mol_button]:focus-visible {\\n\\toutline: none;\\n\\tz-index: var(--mol_layer_focus);\\n}\\n\"\n) }","$mol_button_typed $mol_button\n\tminimal_height 40\n\tminimal_width 40\n","namespace $ { $mol_style_attach( \"mol/button/typed/typed.view.css\",\n \"[mol_button_typed] {\\n\\talign-content: center;\\n\\talign-items: center;\\n\\tpadding: var(--mol_gap_text);\\n\\tborder-radius: var(--mol_gap_round);\\n\\tgap: var(--mol_gap_space);\\n\\tuser-select: none;\\n\\tcursor: pointer;\\n}\\n\\n[mol_button_typed][disabled] {\\n\\tpointer-events: none;\\n}\\n\\n[mol_button_typed]:hover ,\\n[mol_button_typed]:focus-visible {\\n\\tbackground-color: var(--mol_theme_hover);\\n}\\n\\n[mol_button_typed]:active {\\n\\tcolor: var(--mol_theme_focus);\\n}\\n\\n\"\n) }","$mol_button_minor $mol_button_typed\n","namespace $ { $mol_style_attach( \"mol/button/minor/minor.view.css\",\n \"[mol_button_minor] {\\n\\tcolor: var(--mol_theme_control);\\n}\\n\\n[mol_button_minor][disabled] {\\n\\tcolor: var(--mol_theme_shade);\\n}\\n\"\n) }","$mol_check $mol_button_minor\n\tattr *\n\t\t^\n\t\tmol_check_checked <= checked? false\n\t\taria-checked <= aria_checked \\false\n\t\trole <= aria_role \\checkbox\n\tsub /$mol_view_content\n\t\t<= Icon null\n\t\t<= label /\n\t\t\t<= Title $mol_view\n\t\t\t\tsub /\n\t\t\t\t\t<= title \\\n","namespace $ {\n\t\n\texport function $mol_maybe< Value >( value : Value | null | undefined ) : Value[] {\n\t\treturn ( value == null ) ? [] : [ value ]\n\t}\n\t\n}\n","namespace $ { $mol_style_attach( \"mol/check/check.css\",\n \"[mol_check] {\\n\\tflex: 0 0 auto;\\n\\tjustify-content: flex-start;\\n\\talign-content: center;\\n\\t/* align-items: flex-start; */\\n\\tborder: none;\\n\\tfont-weight: inherit;\\n\\tbox-shadow: none;\\n\\ttext-align: left;\\n\\tdisplay: inline-flex;\\n\\tflex-wrap: nowrap;\\n}\\n\\n[mol_check_title] {\\n\\tflex-shrink: 1;\\n}\\n\"\n) }","namespace $.$$ {\n\n\t/**\n\t * Checkbox UI component. See Variants for more concrete implementations.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_check_box_demo\n\t */\n\texport class $mol_check extends $.$mol_check {\n\n\t\tclick( next? : Event ) {\n\t\t\tif( next?.defaultPrevented ) return\n\t\t\tthis.checked( !this.checked() )\n\t\t\tif( next ) next.preventDefault()\n\t\t}\n\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\t... $mol_maybe( this.Icon() ) ,\n\t\t\t\t... this.label() ,\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\n\t\tlabel() {\n\t\t\treturn this.title() ? super.label() : []\n\t\t}\n\t\t\n\t\taria_checked() {\n\t\t\treturn String( this.checked() )\n\t\t}\n\n\t}\n}\n","$mol_check_icon $mol_check\n","namespace $ { $mol_style_attach( \"mol/check/icon/icon.view.css\",\n \"[mol_check_icon]:where([mol_check_checked]) {\\n\\tcolor: var(--mol_theme_current);\\n}\\n\"\n) }","$mol_svg $mol_view\n\tdom_name \\svg\n\tdom_name_space \\http://www.w3.org/2000/svg\n\tfont_size 16\n\tfont_family \\\n\tstyle_size *\n","namespace $ {\n\t\n\t/** State of time moment */\n\texport class $mol_state_time extends $mol_object {\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic task( precision: number, reset?: null ): $mol_after_timeout | $mol_after_frame {\n\t\t\t\n\t\t\tif( precision ) {\n\t\t\t\treturn new $mol_after_timeout( precision, ()=> this.task( precision, null ) )\n\t\t\t} else {\n\t\t\t\treturn new $mol_after_frame( ()=> this.task( precision, null ) )\n\t\t\t}\n\t\t\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic now( precision: number ) {\n\t\t\tthis.task( precision )\n\t\t\treturn Date.now()\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $.$$ {\n\t/** Base SVG component to display SVG images or icons. */\n\texport class $mol_svg extends $.$mol_svg {\n\t\t@$mol_mem\n\t\tcomputed_style() {\n\t\t\tconst win = this.$.$mol_dom_context\n\t\t\tconst style = win.getComputedStyle(this.dom_node()) as Record\n\n\t\t\tif(!style['font-size']) $mol_state_time.now( 0 )\n\n\t\t\treturn style\n\t\t}\n\n\t\t@$mol_mem\n\t\tfont_size(): number {\n\t\t\treturn parseInt(this.computed_style()['font-size']) || 16\n\t\t}\n\n\t\t@$mol_mem\n\t\tfont_family() {\n\t\t\treturn this.computed_style()['font-family']\n\t\t}\n\n\t}\n}\n","$mol_svg_root $mol_svg\n\tdom_name \\svg\n\tattr *\n\t\t^\n\t\tviewBox <= view_box \\0 0 100 100\n\t\tpreserveAspectRatio <= aspect \\xMidYMid\n","namespace $ { $mol_style_attach( \"mol/svg/root/root.view.css\",\n \"[mol_svg_root] {\\n\\toverflow: hidden;\\n}\\n\"\n) }","$mol_svg_path $mol_svg\n\tdom_name \\path\n\tattr *\n\t\t^\n\t\td <= geometry \\\n\n","$mol_icon $mol_svg_root\n\tview_box \\0 0 24 24\n\tminimal_width 16\n\tminimal_height 16\n\tsub /\n\t\t<= Path $mol_svg_path\n\t\t\tgeometry <= path \\\n","namespace $ { $mol_style_attach( \"mol/icon/icon.view.css\",\n \"[mol_icon] {\\n\\tfill: currentColor;\\n\\tstroke: none;\\n\\twidth: 1em;\\n\\theight: 1.5em;\\n\\tflex: 0 0 auto;\\n\\tvertical-align: top;\\n\\tdisplay: inline-block;\\n\\tfilter: drop-shadow(0px 1px 1px var(--mol_theme_back));\\n\\ttransform-origin: center;\\n}\\n\\n[mol_icon_path] {\\n\\ttransform-origin: center;\\n}\\n\"\n) }","$mol_icon_brightness_6 $mol_icon path \\M12,18V6C15.31,6 18,8.69 18,12C18,15.31 15.31,18 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z\n","namespace $ {\n\n\tconst decoders = {} as { [ key in $mol_charset_encoding ]?: TextDecoder }\n\n\texport function $mol_charset_decode(\n\t\tbuffer: BufferSource,\n\t\tencoding: $mol_charset_encoding = 'utf8',\n\t) {\n\t\t\n\t\tlet decoder = decoders[ encoding ]\n\t\tif( !decoder ) decoder = decoders[ encoding ] = new TextDecoder( encoding )\n\t\t\n\t\treturn decoder.decode( buffer )\n\t}\n\n}\n","namespace $ {\n\tconst TextEncoder = globalThis.TextEncoder ?? $node.util.TextEncoder\n\n\tconst encoder = new TextEncoder()\n\n\texport function $mol_charset_encode(value: string) {\n\t\treturn encoder.encode(value)\n\t}\n\n}\n","namespace $ {\n\n\texport type $mol_file_type = 'file' | 'dir' | 'link'\n\n\texport interface $mol_file_stat {\n\t\ttype: $mol_file_type\n\t\tsize: number\n\t\tatime: Date\n\t\tmtime: Date\n\t\tctime: Date\n\t}\n\n\texport class $mol_file_not_found extends Error {}\n\n\texport abstract class $mol_file extends $mol_object {\n\t\t\t\n\t\t@ $mol_mem_key\n\t\tstatic absolute( path : string ): $mol_file {\n\t\t\tthrow new Error( 'Not implemented yet' )\n\t\t}\n\n\t\tstatic relative( path : string ) : $mol_file {\n\t\t\tthrow new Error( 'Not implemented yet' )\n\t\t}\n\t\t\n\t\tstatic base = ''\n\t\t\n\t\tpath() {\n\t\t\treturn '.'\n\t\t}\n\t\t\n\t\tparent() {\n\t\t\treturn this.resolve( '..' )\n\t\t}\n\n\t\tabstract stat( next? : $mol_file_stat | null, virt?: 'virt' ): $mol_file_stat | null\n\n\t\treset(): void {\n\t\t\ttry {\n\t\t\t\tthis.stat( null )\n\t\t\t} catch( error: any ) {\n\t\t\t\tif (error instanceof $mol_file_not_found) return\n\t\t\t\treturn $mol_fail_hidden(error)\n\t\t\t}\n\t\t}\n\t\t\n\t\tversion() {\n\t\t\treturn this.stat()?.mtime.getTime().toString( 36 ).toUpperCase() ?? ''\n\t\t}\n\n\t\tabstract ensure(): void\n\t\tabstract drop(): void\n\n\t\twatcher() {\n\t\t\tconsole.warn('$mol_file_web.watcher() not implemented')\n\n\t\t\treturn {\n\t\t\t\tdestructor() {}\n\t\t\t}\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\texists( next? : boolean ) {\n\t\t\t\n\t\t\tlet exists = Boolean( this.stat() )\n\n\t\t\tif( next === undefined ) return exists\n\t\t\tif( next === exists ) return exists\n\n\t\t\tif( next ) {\n\t\t\t\tthis.parent().exists( true )\n\t\t\t\tthis.ensure()\n\t\t\t} else {\n\t\t\t\tthis.drop()\n\t\t\t}\n\t\t\tthis.reset()\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t\ttype() {\n\t\t\treturn this.stat()?.type ?? ''\n\t\t}\n\t\t\n\t\tname() {\n\t\t\treturn this.path().replace( /^.*\\//, '' )\n\t\t}\n\t\t\n\t\text() {\n\t\t\tconst match = /((?:\\.\\w+)+)$/.exec( this.path() )\n\t\t\treturn match ? match[ 1 ].substring( 1 ) : ''\n\t\t}\n\n\t\tabstract buffer( next? : Uint8Array ): Uint8Array\n\n\t\t@ $mol_mem\n\t\ttext(next?: string, virt?: 'virt') {\n\t\t\tif( virt ) {\n\t\t\t\tconst now = new Date\n\t\t\t\tthis.stat( {\n\t\t\t\t\ttype: 'file',\n\t\t\t\t\tsize: 0,\n\t\t\t\t\tatime: now,\n\t\t\t\t\tmtime: now,\n\t\t\t\t\tctime: now,\t\t\t\n\t\t\t\t}, 'virt' )\n\t\t\t\treturn next!\n\t\t\t}\n\t\t\tif( next === undefined ) {\n\t\t\t\treturn $mol_charset_decode( this.buffer( undefined ) )\t\n\t\t\t} else {\n\t\t\t\tconst buffer = next === undefined ? undefined : $mol_charset_encode( next )\n\t\t\t\tthis.buffer( buffer )\n\t\t\t\treturn next\n\t\t\t}\n\t\t}\n\n\t\tabstract sub(): $mol_file[]\n\n\t\tabstract resolve(path: string): $mol_file\n\n\t\tabstract relate( base?: $mol_file ): string\n\t\t\n\t\tabstract append( next : Uint8Array | string ): void\n\t\t\n\t\tfind(\n\t\t\tinclude? : RegExp ,\n\t\t\texclude? : RegExp\n\t\t) {\n\t\t\tconst found = [] as $mol_file[]\n\t\t\tconst sub = this.sub()\n\n\t\t\tfor (const child of sub) {\n\t\t\t\tconst child_path = child.path()\n\n\t\t\t\tif( exclude && child_path.match( exclude ) ) continue\n\n\t\t\t\tif( !include || child_path.match( include ) ) found.push( child )\n\n\t\t\t\tif( child.type() === 'dir' ) {\n\t\t\t\t\tconst sub_child = child.find( include , exclude )\n\t\t\t\t\tfor (const child of sub_child) found.push(child)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn found\n\t\t}\n\n\t\tsize() {\n\t\t\tswitch( this.type() ) {\n\t\t\t\tcase 'file': return this.stat()?.size ?? 0\n\t\t\t\tdefault: return 0\n\t\t\t}\n\t\t}\n\t\t\n\t\topen( ... modes: readonly ( 'create' | 'exists_truncate' | 'exists_fail' | 'read_only' | 'write_only' | 'read_write' | 'append' )[] ) {\n\t\t\treturn 0\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n export function $mol_compare_array>(a: Value, b: Value): boolean {\n\t\tif (a === b) return true\n\t\tif (Object.getPrototypeOf(a) !== Object.getPrototypeOf(b)) return false\n\t\tif (a.length !== b.length) return false\n\n\t\tfor (let i = 0; i < a.length; i++)\n\t\t\tif (a[i] !== b[i]) return false\n\n\t\treturn true\n\t}\n}\n","namespace $ {\n\n\tfunction stat_convert(stat: ReturnType): null | $mol_file_stat {\n\t\t\n\t\tif( !stat ) return null\n\t\t\n\t\tlet type: $mol_file_type | undefined\n\t\tif (stat.isDirectory()) type = 'dir'\n\t\tif (stat.isFile()) type = 'file'\n\t\tif (stat.isSymbolicLink()) type = 'link'\n\n\t\tif (! type) return $mol_fail( new Error(`Unsupported file type`) )\n\n\t\treturn {\n\t\t\ttype, \n\t\t\tsize: Number(stat.size),\n\t\t\tatime: stat.atime,\n\t\t\tmtime: stat.mtime,\n\t\t\tctime: stat.ctime\n\t\t}\n\t}\n\n\tfunction buffer_normalize(buf: Buffer): Uint8Array {\n\t\treturn new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength)\n\t}\n\t\n\texport enum $mol_file_mode_open {\n\t\t/** create if it doesn't already exist */\n\t\tcreate = $node.fs.constants.O_CREAT,\n\t\t/** truncate to zero size if it already exists */\n\t\texists_truncate = $node.fs.constants.O_TRUNC,\n\t\t/** throw exception if it already exists */\n\t\texists_fail = $node.fs.constants.O_EXCL,\n\t\tread_only = $node.fs.constants.O_RDONLY,\n\t\twrite_only = $node.fs.constants.O_WRONLY,\n\t\tread_write = $node.fs.constants.O_RDWR,\n\t\t/** data will be appended to the end */\n\t\tappend = $node.fs.constants.O_APPEND,\n\t}\n\n\texport class $mol_file_node extends $mol_file {\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic absolute( path : string ) {\n\t\t\treturn this.make({\n\t\t\t\tpath : $mol_const( path )\n\t\t\t})\n\t\t}\n\n\t\tstatic relative( path : string ) {\n\t\t\treturn this.absolute( $node.path.resolve( this.base, path ).replace( /\\\\/g , '/' ) )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\twatcher() {\n\n\t\t\tconst watcher = $node.chokidar.watch( this.path() , {\n\t\t\t\tpersistent : true ,\n\t\t\t\tignored : /(^\\.|___$)/ ,\n\t\t\t\tdepth : 0 ,\n\t\t\t\tignoreInitial : true ,\n\t\t\t\tawaitWriteFinish: {\n\t\t\t\t\tstabilityThreshold: 100,\n\t\t\t\t},\n\t\t\t} )\n\n\t\t\twatcher\n\t\t\t.on( 'all' , ( type , path )=> {\n\t\t\t\t\n\t\t\t\tconst file = $mol_file.relative( path.replace( /\\\\/g , '/' ) )\n\n\t\t\t\tfile.reset()\n\t\t\t\t\n\t\t\t\tif( type === 'change' ) {\n\t\t\t\t\tthis.stat( null )\n\t\t\t\t} else {\n\t\t\t\t\tfile.parent().reset()\n\t\t\t\t}\n\n\t\t\t} )\n\t\t\t.on( 'error' , $mol_fail_log )\n\t\t\t\n\t\t\treturn {\n\t\t\t\tdestructor() {\n\t\t\t\t\twatcher.close()\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\n\t\t@ $mol_mem\n\t\tstat( next? : $mol_file_stat | null, virt?: 'virt' ) {\n\t\t\t\n\t\t\tlet stat = next\n\t\t\tconst path = this.path()\n\n\t\t\tthis.parent().watcher()\n\t\t\t\n\t\t\tif( virt ) return next!\n\t\t\t\n\t\t\ttry {\n\t\t\t\tstat = next ?? stat_convert($node.fs.statSync( path, { throwIfNoEntry: false } ))\n\t\t\t} catch( error: any ) {\n\t\t\t\tif (error.code === 'ENOENT') error = new $mol_file_not_found(`File not found`)\n\t\t\t\terror.message += '\\n' + path\n\t\t\t\treturn this.$.$mol_fail_hidden(error)\n\t\t\t}\n\n\t\t\treturn stat\n\t\t}\n\n\t\t@ $mol_mem\n\t\tensure() {\n\t\t\tconst path = this.path()\n\n\t\t\ttry {\n\t\t\t\t$node.fs.mkdirSync( path )\n\t\t\t} catch( e: any ) {\n\t\t\t\te.message += '\\n' + path\n\t\t\t\tthis.$.$mol_fail_hidden(e)\n\t\t\t}\n\n\t\t}\n\t\t\n\t\t@ $mol_action\n\t\tdrop() {\n\t\t\t$node.fs.unlinkSync( this.path() )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tbuffer( next? : Uint8Array ) {\n\n\t\t\tconst path = this.path()\n\t\t\tif( next === undefined ) {\n\n\t\t\t\tif( !this.stat() ) return new Uint8Array\n\t\t\t\t\n\t\t\t\ttry {\n\n\t\t\t\t\tconst prev = $mol_mem_cached( ()=> this.buffer() )\n\t\t\t\t\t\n\t\t\t\t\tnext = buffer_normalize( $node.fs.readFileSync( path ) )\n\n\t\t\t\t\tif( prev !== undefined && !$mol_compare_array( prev, next ) ) {\n\t\t\t\t\t\tthis.$.$mol_log3_rise({\n\t\t\t\t\t\t\tplace: `$mol_file_node..buffer()`,\n\t\t\t\t\t\t\tmessage: 'Changed' ,\n\t\t\t\t\t\t\tpath: this.relate() ,\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\n\t\t\t\t\treturn next\n\n\t\t\t\t} catch( error: any ) {\n\n\t\t\t\t\terror.message += '\\n' + path\n\t\t\t\t\treturn this.$.$mol_fail_hidden( error )\n\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tthis.parent().exists( true )\n\t\t\t\n\t\t\tconst now = new Date\n\t\t\tthis.stat( {\n\t\t\t\ttype: 'file',\n\t\t\t\tsize: next.length,\n\t\t\t\tatime: now,\n\t\t\t\tmtime: now,\n\t\t\t\tctime: now,\n\t\t\t}, 'virt' )\n\n\t\t\ttry {\n\n\t\t\t\t$node.fs.writeFileSync( path, next )\n\n\t\t\t} catch( error: any ) {\n\n\t\t\t\terror.message += '\\n' + path\n\t\t\t\treturn this.$.$mol_fail_hidden( error )\n\n\t\t\t}\n\t\t\t\n\t\t\treturn next\n\n\t\t}\n\t\t@ $mol_mem\n\t\tsub() : $mol_file[] {\n\t\t\tif (! this.exists() ) return []\n\t\t\tif ( this.type() !== 'dir') return []\n\n\t\t\tconst path = this.path()\n\t\t\tthis.stat()\n\n\t\t\ttry {\n\t\t\t\treturn $node.fs.readdirSync( path )\n\t\t\t\t\t.filter( name => !/^\\.+$/.test( name ) )\n\t\t\t\t\t.map( name => this.resolve( name ) )\n\t\t\t} catch( e: any ) {\n\t\t\t\te.message += '\\n' + path\n\t\t\t\treturn this.$.$mol_fail_hidden(e)\n\t\t\t}\n\t\t}\n\t\t\n\t\tresolve( path : string ) {\n\t\t\treturn ( this.constructor as typeof $mol_file ).relative( $node.path.join( this.path() , path ) )\n\t\t}\n\t\t\n\t\trelate( base = ( this.constructor as typeof $mol_file ).relative( '.' )) {\n\t\t\treturn $node.path.relative( base.path() , this.path() ).replace( /\\\\/g , '/' )\n\t\t}\n\t\t\n\t\tappend( next : Uint8Array | string ) {\n\t\t\tconst path = this.path()\n\t\t\ttry {\n\t\t\t\t$node.fs.appendFileSync( path , next )\n\t\t\t} catch( e: any ) {\n\t\t\t\te.message += '\\n' + path\n\t\t\t\treturn this.$.$mol_fail_hidden(e)\n\t\t\t}\n\t\t}\n\t\t\n\t\topen( ... modes: readonly ( keyof typeof $mol_file_mode_open )[] ) {\n\t\t\treturn $node.fs.openSync(\n\t\t\t\tthis.path(),\n\t\t\t\tmodes.reduce( ( res, mode )=> res | $mol_file_mode_open[ mode ], 0 ),\n\t\t\t)\n\t\t}\n\n\t}\n\n\t$.$mol_file = $mol_file_node\n}\n","namespace $ {\n\t\n\texport interface $mol_locale_dict {\n\t\t[ key : string ] : string\n\t}\n\t\n\t/**\n\t * Localisation in $mol framework\n\t * @see https://mol.hyoo.ru/#!section=docs/=s5aqnb_odub8l\n\t */\n\texport class $mol_locale extends $mol_object {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic lang_default() {\n\t\t\treturn 'en'\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic lang( next? : string ) {\n\t\t\treturn this.$.$mol_state_local.value( 'locale' , next ) || $mol_dom_context.navigator.language.replace( /-.*/ , '' ) || this.lang_default()\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic source( lang : string ) {\n\t\t\treturn JSON.parse( this.$.$mol_file.relative( `web.locale=${ lang }.json` ).text().toString() )\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic texts( lang : string , next? : $mol_locale_dict ) : $mol_locale_dict {\n\t\t\tif( next ) return next\n\t\t\t\n\t\t\ttry {\n\t\t\t\treturn this.source( lang ).valueOf()\n\t\t\t} catch( error: any ) {\n\t\t\t\tif( $mol_fail_catch( error ) ) {\n\t\t\t\t\tconst def = this.lang_default()\n\t\t\t\t\tif( lang === def ) throw error\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic text( key : string ): string {\n\t\t\t\n\t\t\tconst lang = this.lang()\n\n\t\t\tconst target = this.texts( lang )[ key ]\n\t\t\tif( target ) return target\n\t\t\t\n\t\t\tthis.warn( key )\n\t\t\t\n\t\t\tconst en = this.texts( 'en' )[ key ]\n\t\t\tif( !en ) return key\n\t\t\t\n\t\t\t// try {\n\t\t\t// \treturn $mol_wire_sync( $hyoo_lingua_translate ).call( this.$, lang, en )\n\t\t\t// } catch( error ) {\n\t\t\t// \t$mol_fail_log( error )\n\t\t\t// }\n\t\t\t\n\t\t\treturn en\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic warn( key : string ) {\n\t\t\tconsole.warn( `Not translated to \"${ this.lang() }\": ${ key }` )\n\t\t\treturn null\n\t\t}\n\t\t\n\t}\n\t\n}\n","$mol_lights_toggle $mol_check_icon\n\tIcon <= Lights_icon $mol_icon_brightness_6\n\thint @ \\Toggle lights\n\tchecked? <=> lights? false\n","\n\t\t()\n\t\t\tthis\n\t\t\t[] \\$\n\t\t\t[] \\$mol_locale\n\t\t\t[] \\text\n\t\t\t(,) #key\n\t","namespace $.$$ {\n\t/**\n\t * Toggle for Switcher between light/dark themes (usually for `mol_theme_auto` plugin).\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_lights_demo\n\t */\n\texport class $mol_lights_toggle extends $.$mol_lights_toggle {\n\t\tlights( next? : boolean ) {\n\t\t\treturn this.$.$mol_lights( next )\n\t\t}\n\t}\n}\n","$mol_link $mol_view\n\turi \\\n\tdom_name \\a\n\turi_off \\\n\turi_native null\n\texternal false\n\tattr *\n\t\t^\n\t\thref <= uri_toggle \\\n\t\ttitle <= hint_safe <= hint \\\n\t\ttarget <= target \\_self\n\t\tdownload <= file_name \\\n\t\tmol_link_current <= current false\n\t\trel <= relation \\\n\tsub /$mol_view_content\n\t\t<= title\n\targ *\n\tevent *\n\t\t^\n\t\tclick?event <=> click?event <=> event_click?event null\n","namespace $.$$ {\n\t\n\t/**\n\t * Dynamic hyperlink. It can add, change or remove parameters. A link that leads to the current page has [mol_link_current] attribute set to true.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_link_demo\n\t */\n\texport class $mol_link extends $.$mol_link {\n\t\t\n\t\t@ $mol_mem\n\t\turi_toggle() {\n\t\t\treturn this.current() ? this.uri_off() : this.uri()\n\t\t}\n\n\t\t@ $mol_mem\n\t\turi() {\n\t\t\treturn new this.$.$mol_state_arg( this.state_key() ).link( this.arg() )\n\t\t}\n\n\t\t@ $mol_mem\n\t\turi_off() {\n\t\t\tconst arg2: Record = {}\n\t\t\tfor( let i in this.arg() ) arg2[i] = null\n\t\t\t\n\t\t\treturn new this.$.$mol_state_arg( this.state_key() ).link( arg2 )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\turi_native() {\n\t\t\tconst base = this.$.$mol_state_arg.href()\n\t\t\treturn new URL( this.uri() , base )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tcurrent() {\n\n\t\t\tconst base = this.$.$mol_state_arg.href_normal()\n\t\t\tconst target = this.uri_native().toString()\n\n\t\t\tif( base === target ) return true\n\t\t\t\n\t\t\tconst args = this.arg() as Record\n\t\t\t\n\t\t\tconst keys = Object.keys( args ).filter( key => args[ key ] != null )\n\t\t\tif( keys.length === 0 ) return false\n\n\t\t\tfor( const key of keys ) {\n\t\t\t\tif( this.$.$mol_state_arg.value( key ) != args[ key ] ) return false\n\t\t\t}\n\n\t\t\treturn true\n\t\t}\n\n\t\tfile_name() {\n\t\t\treturn null as unknown as string\n\t\t}\n\n\t\tminimal_height() {\n\t\t\treturn Math.max( super.minimal_height(), 24 )\n\t\t}\n\t\t\n\t\texternal() {\n\t\t\treturn this.uri_native().origin !== $mol_dom_context.location.origin\n\t\t}\n\t\t\n\t\ttarget(): '_self' | '_blank' | '_top' | '_parent' | string {\n\t\t\treturn this.external() ? '_blank' : '_self'\n\t\t}\n\n\t\thint_safe() {\n\t\t\ttry {\n\t\t\t\treturn this.hint()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn ''\n\t\t\t}\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\tconst { rem } = $mol_style_unit\n\n\t$mol_style_define( $mol_link , {\n\t\t\n\t\ttextDecoration: 'none',\n\t\tcolor: $mol_theme.control,\n\t\tstroke: 'currentcolor',\n\t\tcursor: 'pointer',\n\t\tpadding: $mol_gap.text,\n\t\tboxSizing: 'border-box',\n\t\tposition: 'relative',\n\t\tminWidth: rem(2.5),\n\t\tgap: $mol_gap.space,\n\t\t\n\t\tborder: {\n\t\t\tradius: $mol_gap.round,\n\t\t},\n\n\t\t':hover': {\n\t\t\t\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.hover,\n\t\t\t},\n\t\t\t\n\t\t},\n\n\t\t':focus-visible': {\n\t\t\t\n\t\t\toutline: 'none',\n\t\t\t\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.hover,\n\t\t\t},\n\t\t\t\n\t\t},\n\n\t\t// ':has(:focus-visible)': {\n\t\t// \toutline: 'none',\n\t\t// \tbackground: {\n\t\t// \t\tcolor: $mol_theme.hover,\n\t\t// \t}\n\t\t// },\n\t\t\n\t\t':active': {\n\t\t\tcolor: $mol_theme.focus,\n\t\t},\n\n\t\t'@': {\n\t\t\tmol_link_current: {\n\t\t\t\t'true': {\n\t\t\t\t\tcolor: $mol_theme.current,\n\t\t\t\t\ttextShadow: '0 0',\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\n\t} )\n\n}\n","$mol_icon_script $mol_icon path \\M17.8,20C17.4,21.2 16.3,22 15,22H5C3.3,22 2,20.7 2,19V18H5L14.2,18C14.6,19.2 15.7,20 17,20H17.8M19,2H8C6.3,2 5,3.3 5,5V16H16V17C16,17.6 16.4,18 17,18H18V5C18,4.4 18.4,4 19,4C19.6,4 20,4.4 20,5V6H22V5C22,3.3 20.7,2 19,2Z\n","$mol_icon_script_text $mol_icon path \\M17.8,20C17.4,21.2 16.3,22 15,22H5C3.3,22 2,20.7 2,19V18H5L14.2,18C14.6,19.2 15.7,20 17,20H17.8M19,2C20.7,2 22,3.3 22,5V6H20V5C20,4.4 19.6,4 19,4C18.4,4 18,4.4 18,5V18H17C16.4,18 16,17.6 16,17V16H5V5C5,3.3 6.3,2 8,2H19M8,6V8H15V6H8M8,10V12H14V10H8Z\n","$mol_link_source $mol_link\n\thint @ \\Source code\n\tsub /\n\t\t<= Icon $mol_icon_script_text\n","$mol_button_major $mol_button_typed\n\tattr *\n\t\t^\n\t\tmol_theme \\$mol_theme_accent\n","namespace $ { $mol_style_attach( \"mol/button/major/major.view.css\",\n \"[mol_button_major][disabled] {\\n\\topacity: .5;\\n\\tfilter: grayscale();\\n}\\n\"\n) }","$mol_embed_native $mol_scroll\n\turi? \\\n\tdom_name \\object\n\twindow null\n\tattr *\n\t\t^\n\t\tdata <= uri\n\t\ttype <= mime \\\n\tsub /\n\t\t<= Fallback $mol_link\n\t\t\turi <= uri\n\t\t\tsub /\n\t\t\t\t<= title \\\n\tmessage *\n\t\thashchange? <=> uri_change? null\n","namespace $ {\n\n\texport function $mol_promise< Result = void >() {\n\t\t\n\t\tlet done!: ( res: Result | PromiseLike< Result > )=> void\n\t\tlet fail!: ( error?: any ) => void\n\t\t\n\t\tconst promise = new Promise< Result >( ( d, f ) => {\n\t\t\tdone = d\n\t\t\tfail = f\n\t\t} )\n\t\t\n\t\treturn Object.assign( promise, {\n\t\t\tdone,\n\t\t\tfail,\n\t\t} )\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_wait_timeout_async( this: $, timeout: number ) {\n\t\tconst promise = $mol_promise()\n\t\tconst task = new this.$mol_after_timeout( timeout , ()=> promise.done() )\n\t\treturn Object.assign( promise, {\n\t\t\tdestructor: ()=> task.destructor()\n\t\t} )\n\t}\n\t\n\texport function $mol_wait_timeout( this: $, timeout: number ) {\n\t\treturn this.$mol_wire_sync( this ).$mol_wait_timeout_async( timeout )\n\t}\n\t\n}\n","namespace $.$$ {\n\texport class $mol_embed_native extends $.$mol_embed_native {\n\n\t\t@ $mol_mem\n\t\twindow() {\n\t\t\t$mol_wire_solid()\n\t\t\treturn $mol_wire_sync( this as $mol_embed_native ).load( this.dom_node_actual() as HTMLIFrameElement )\n\t\t}\n\t\t\n\t\tload( frame: HTMLIFrameElement ) {\n\t\t\treturn new Promise< Window >( ( done, fail )=> {\n\t\t\t\t\n\t\t\t\tframe.onload = () => {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif( frame.contentWindow!.location.href === 'about:blank' ) {\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t}\n\t\t\t\t\t} catch { }\n\t\t\t\t\tdone( frame.contentWindow! )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tframe.onerror = ( event : Event | string ) => {\n\t\t\t\t\tfail( typeof event === 'string' ? new Error( event ) : ( event as ErrorEvent ).error || event )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\turi_resource() {\n\t\t\treturn this.uri().replace( /#.*/, '' )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tmessage_listener() {\n\t\t\treturn new $mol_dom_listener(\n\t\t\t\t$mol_dom_context,\n\t\t\t\t'message',\n\t\t\t\t$mol_wire_async( this ).message_receive\n\t\t\t)\n\t\t}\n\t\t\n\t\tmessage_receive( event?: MessageEvent<[ string, string ]> ) {\n\t\t\t\n\t\t\tif( !event ) return\n\t\t\tif( event.source !== this.window() ) return\n\t\t\tif( !Array.isArray( event.data ) ) return\n\t\t\t\n\t\t\t(this.message() as any)[ event.data[0] ]?.( event )\n\t\t}\n\n\t\turi_change( event: MessageEvent<[ string, string ]> ) {\n\t\t\tthis.$.$mol_wait_timeout( 1000 )\n\t\t\tthis.uri( event.data[1] )\n\t\t}\n\n\t\tauto() {\n\t\t\treturn [\n\t\t\t\tthis.message_listener(),\n\t\t\t\tthis.window(),\n\t\t\t]\n\t\t}\n\t\t\n\t}\n}\n","namespace $ { $mol_style_attach( \"mol/embed/native/native.view.css\",\n \"[mol_embed_native] {\\n\\tmax-width: 100%;\\n\\tmax-height: 100vh;\\n\\tobject-fit: cover;\\n\\tdisplay: flex;\\n\\tflex: 1 1 auto;\\n\\tobject-position: top left;\\n\\tborder-radius: var(--mol_gap_round);\\n\\taspect-ratio: 4/3;\\n}\\n\"\n) }","$mol_frame $mol_embed_native\n\tdom_name \\iframe\n\tattr *\n\t\t^\n\t\tdata null\n\t\ttype null\n\t\tsrc <= uri? \\about:config\n\t\tsrcdoc <= html null\n\t\tallow <= allow \\\n\t\t- allowfullscreen <=\n\tfullscreen true\n\taccelerometer true\n\tautoplay true\n\tencription true\n\tgyroscope true\n\tpip true\n\tclipboard_read true\n\tclipboard_write true\n","namespace $.$$ {\n\n\t/**\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_frame_demo\n\t */\n\texport class $mol_frame extends $.$mol_frame {\n\t\t\n\t\twindow() {\n\t\t\t// if( this.html() ) return ( this.dom_node() as HTMLIFrameElement ).contentWindow!\n\t\t\treturn super.window()\n\t\t}\n\n\t\tallow() {\n\t\t\treturn [\n\t\t\t\t... this.fullscreen() ? [ 'fullscreen' ] : [] ,\n\t\t\t\t... this.accelerometer() ? [ 'accelerometer' ] : [] ,\n\t\t\t\t... this.autoplay() ? [ 'autoplay' ] : [] ,\n\t\t\t\t... this.encription() ? [ 'encrypted-media' ] : [] ,\n\t\t\t\t... this.gyroscope() ? [ 'gyroscope' ] : [] ,\n\t\t\t\t... this.pip() ? [ 'picture-in-picture' ] : [] ,\n\t\t\t\t... this.clipboard_read() ? [ `clipboard-read ${ this.uri() }` ] : [],\n\t\t\t\t... this.clipboard_write() ? [ `clipboard-write ${ this.uri() }` ] : [],\n\t\t\t].join('; ')\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n\t$mol_style_define( $mol_frame , {\n\t\tborder: {\n\t\t\tstyle: 'none',\n\t\t},\n\t\tmaxHeight: $mol_style_unit.vh(100),\n\t} )\n}\n","$hyoo_showcase $mol_page\n\tplugins /\n\t\t<= Theme $mol_theme_auto\n\tattr * mol_theme \\$mol_theme_dark\n\ttitle @ \\$mol applications\n\ttools /\n\t\t<= Lights $mol_lights_toggle\n\t\t<= Source $mol_link_source uri \\https://github.com/hyoo-ru/showcase.hyoo.ru\n\t\t<= Offer_link $mol_link\n\t\t\turi \\https://offer.hyoo.ru\n\t\t\tsub /\n\t\t\t\t<= Offer_button $mol_button_major\n\t\t\t\t\ttitle <= offer_title @ \\Order\n\tbody / <= Scroll $mol_scroll sub <= apps /\n\t\t<= App_widgets $hyoo_showcase_app\n\t\t\ttitle <= app_widgets_title @ \\$mol components\n\t\t\tdetails \\https://mol.hyoo.ru/#!section=demos\n\t\t<= App_scout $hyoo_showcase_app\n\t\t\ttitle <= app_scout_title @ \\Scout games\n\t\t\tdetails \\https://scout.hyoo.ru/#gist=%D0%A1%D1%82%D0%B5%D0%BD%D0%BA%D0%B0%20%D0%BD%D0%B0%20%D1%81%D1%82%D0%B5%D0%BD%D0%BA%D1%83\n\t\t<= App_piterjs $hyoo_showcase_app\n\t\t\ttitle <= app_piterjs_title @ \\PiterJS\n\t\t\tdetails \\https://piterjs.org/\n\t\t<= App_shelter $hyoo_showcase_app\n\t\t\ttitle <= app_shelter_title @ \\Shelters ERP\n\t\t\tdetails \\https://shelter.hyoo.ru/#login=user\n\t\t<= App_fallacy $hyoo_showcase_app\n\t\t\ttitle <= app_fallacy_title @ \\Fallacies collection\n\t\t\tdetails \\https://fallacy.hyoo.ru/\n\t\t<= App_toys $hyoo_showcase_app\n\t\t\ttitle <= app_toys_title @ \\Online store\n\t\t\tdetails \\https://toys.hyoo.ru/#size=M/popular\n\t\t<= App_calc $hyoo_showcase_app\n\t\t\ttitle <= app_calc_title @ \\Spreadsheet\n\t\t\tdetails \\https://calc.hyoo.ru/#title=a*x**2%20%2B%20b*x%20%2B%20c%20%3D%200/A1=a/B2=6/A2=3/B1=b/C1=c/E1=D/E2=%3D%20B2**2%20-%204*A2*C2/G1=x1/G2=%3D%20%28%20-B2%20%2B%20sqrt%28E2%29%20%29%20%2F%202%20%2F%20A2/H1=x2/H2=%3D%20%28%20-B2%20-%20sqrt%28E2%29%20%29%20%2F%202%20%2F%20A2/C2=0\n\t\t<= App_notes $hyoo_showcase_app\n\t\t\ttitle <= app_notes_title @ \\Notes\n\t\t\tdetails \\https://notes.hyoo.ru/#\n\t\t<= App_invest $hyoo_showcase_app\n\t\t\ttitle <= app_invest_title @ \\Investments\n\t\t\tdetails \\https://invest.hyoo.ru/\n\t\t<= App_todomvc $hyoo_showcase_app\n\t\t\ttitle <= app_todomvc_title @ \\ToDoMVC\n\t\t\tdetails \\https://todomvc.hyoo.ru/\n\t\t<= App_life $hyoo_showcase_app\n\t\t\ttitle <= app_life_title @ \\Life game\n\t\t\tdetails \\https://life.hyoo.ru/#snapshot=0~1fffe~2ffff~20000~20001~10002~30000~6ffff~7ffff~7fffe~6fffe~6fffd~7fffd~80000~8fffc~a0000~a0001~afffc~afffb~14fffe~15fffd~15fffe~14fffd~-3~-fffd~-10003~-1fffd~-20002~-2fffe~-3ffff~-40000~-30001~-d0000~-e0000~-d0001~-c0001\n\t\t<= App_habhub $hyoo_showcase_app\n\t\t\ttitle <= app_habhub_title @ \\Reader\n\t\t\tdetails \\https://habhub.hyoo.ru/#gist=https%3A%2F%2Fapi.github.com%2Frepos%2Fnin-jin%2FHabHub%2Fissues%2F3\n\t\t<= App_questions $hyoo_showcase_app\n\t\t\ttitle <= app_questions_title @ \\StackOverflow client\n\t\t\tdetails \\https://mol.js.org/app/questions/-/#question=2003505\n\t\t<= App_slides $hyoo_showcase_app\n\t\t\ttitle <= app_slides_title @ \\Slideshow\n\t\t\tdetails \\https://slides.hyoo.ru/#slides=https%3A%2F%2Fnin-jin.github.io%2Fslides%2Forp%2F/slide=2\n\t\t<= App_iq $hyoo_showcase_app\n\t\t\ttitle <= app_iq_title @ \\IQ tester\n\t\t\tdetails \\https://iq.hyoo.ru/\n\t\t<= App_rdf $hyoo_showcase_app\n\t\t\ttitle <= app_rdf_title @ \\RDF browser\n\t\t\tdetails \\http://rdf.hyoo.ru/#uri=http%3A%2F%2Fdbpedia.org%2Fontology%2Fhead\n\t\t<= App_lamps $hyoo_showcase_app\n\t\t\ttitle <= app_lamps_title @ \\Lamps database\n\t\t\tdetails \\https://lamps.hyoo.ru/#lamp=1\n\t\t<= App_bench $hyoo_showcase_app\n\t\t\ttitle <= app_bench_title @ \\Benchmark\n\t\t\tdetails \\https://bench.hyoo.ru/#bench=https%3A%2F%2Fhyoo-ru.github.io%2Ftodomvc%2Fbenchmark%2F/sort=fill\n\t\t<= App_request $hyoo_showcase_app\n\t\t\ttitle <= app_request_title @ \\HTTP Debug Tool\n\t\t\tdetails \\https://http.hyoo.ru/#uri=https%3A%2F%2Fapi.github.com%2Frepos%2Fhyoo-ru%2Fmam_mol\n\t\t<= App_jsperf $hyoo_showcase_app\n\t\t\ttitle <= app_jsperf_title @ \\JS Benchmarking Tool\n\t\t\tdetails \\https://perf.js.hyoo.ru/#sources=%5B%22window.location.href%3B%22%2C%22document.location.href%3B%22%5D/prefix/postfix/optimized=true\n\t\t<= App_issues $hyoo_showcase_app\n\t\t\ttitle <= app_issues_title @ \\GitHub projects comparison\n\t\t\tdetails \\https://compare.github.hyoo.ru/#projects=hyoo-ru%2Fmam_mol%2Cfacebook%2Freact%2Cvuejs%2Fvue\n\t\t<= App_tree $hyoo_showcase_app\n\t\t\ttitle <= app_tree_title @ \\Tree Sandbox\n\t\t\tdetails \\https://tree.hyoo.ru/#pipeline=%24mol_tree2_from_string~%24mol_jack_transform~%24mol_tree2_js_to_text~%24mol_tree2_text_to_string~%24mol_js_eval/source=hack%20%2Bpipe%0A%09hack%20%7C%3E%20var%0A%09%09pipe%0A%09%09from%0A%09hack%20%3C%7C%20pipe%0A%09from%0A%0Ahack%20%2Bmath%0A%09hack%20square%20%28**%29%0A%09%09%3C%7C%0A%09%092%0A%09hack%20next%20%28%2B%29%0A%09%09%3C%7C%0A%09%091%0A%09from%0A%0Ahack%20%2Bdebug%0A%09hack%20log%20%28%29%0A%09%09console%0A%09%09%5B%5D%20%5Clog%0A%09%09%28%2C%29%20from%0A%09from%0A%0A%2Bpipe%20%2Bmath%20%2Bdebug%20%7B%3B%7D%0A%09%7C%3E%203%0A%09%7C%3E%20square%0A%09%7C%3E%20next%0A%09log%20%3C%7C%0A%09return%20%3C%7C%0A\n\t\t<= App_icons $hyoo_showcase_app\n\t\t\ttitle <= app_icons_title @ \\Icons galery\n\t\t\tdetails \\https://nin-jin.github.io/mol_icon/\n\t\t<= App_portal $hyoo_showcase_app\n\t\t\ttitle <= app_portal_title @ \\Portal\n\t\t\tdetails \\https://mol.hyoo.ru/#app=components\n\n$hyoo_showcase_app $mol_link\n\ttarget \\_blank\n\turi <= details \\\n\tpreview \\\n\tsub /\n\t\t<= Title $mol_view sub / <= title \\\n\t\t<= Container $mol_view sub /\n\t\t\t<= Demo $mol_frame\n\t\t\t\tstyle * background-image <= background \\\n\t\t\t\turi <= details \\\n","namespace $.$$ {\n\n\texport class $hyoo_showcase_app extends $.$hyoo_showcase_app {\n\n\t\tbackground() {\n\t\t\treturn this.preview() ? `url(${ JSON.stringify( this.preview() ) })` : ''\n\t\t}\n\n\t}\n\n}\n","namespace $ { $mol_style_attach( \"hyoo/showcase/showcase.view.css\",\n \"[hyoo_showcase] {\\n\\tdisplay: flex;\\n}\\n\\n[hyoo_showcase_scroll] {\\n\\tdisplay: flex;\\n\\tflex-direction: row;\\n\\tflex-wrap: wrap;\\n\\tpadding: .5rem;\\n}\\n\\n[hyoo_showcase_app] {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tflex: 1 1 26rem;\\n\\tmargin: 0;\\n\\theight: 16rem;\\n\\tcursor: pointer;\\n}\\n\\n[hyoo_showcase_app]:hover {\\n\\t/* opacity: .9; */\\n}\\n\\n[hyoo_showcase_app_title] {\\n\\tflex: none;\\n}\\n\\n[hyoo_showcase_app_container] {\\n position: relative;\\n width: 100%;\\n max-width: 100%;\\n height: 13rem;\\n max-height: 100%;\\n}\\n\\n[hyoo_showcase_app_demo] {\\n\\tpointer-events: none;\\n\\tbox-shadow: 0 0 0 2px var(--mol_theme_line);\\n\\twidth: 200%;\\n max-width: 200%;\\n max-height: 200%;\\n transform: scale( .5 );\\n transform-origin: 0 0;\\n background-size: cover;\\n position: absolute;\\n}\\n\\n[hyoo_showcase_offer_link] {\\n\\tpadding: 0;\\n}\\n\"\n) }"]} \ No newline at end of file +{"version":3,"sources":["-","../../../mam.ts","../../../mol/ambient/ambient.ts","../../../mol/delegate/delegate.ts","../../../mol/owning/owning.ts","../../../mol/fail/fail.ts","../../../mol/fail/hidden/hidden.ts","../../../mol/func/name/name.ts","../../../mol/object2/object2.ts","../../../mol/object/object.ts","../../../mol/window/window.node.ts","../../../mol/wire/cursor/cursor.ts","../../../mol/wire/pub/pub.ts","../../../mol/wire/wire.ts","../../../mol/dev/format/format.ts","../../../mol/wire/pub/sub/sub.ts","../../../mol/after/timeout/timeout.ts","../../../mol/after/frame/frame.node.ts","../../../mol/promise/like/like.ts","../../../mol/wire/fiber/fiber.ts","../../../mol/guid/guid.ts","../../../mol/key/key.ts","../../../mol/compare/deep/deep.ts","../../../mol/log3/log3.ts","../../../mol/span/span.ts","../../../mol/tree2/to/string/string.ts","../../../mol/tree2/tree2.ts","../../../mol/error/syntax/syntax.ts","../../../mol/tree2/from/string/string.ts","../../../mol/tree2/from/json/json.ts","../../../mol/term/color/color.ts","../../../mol/log3/log3.node.ts","../../../mol/wire/task/task.ts","../../../mol/wire/method/method.ts","../../../mol/fail/catch/catch.ts","../../../mol/fail/log/log.ts","../../../mol/wire/atom/atom.ts","../../../mol/wire/solo/solo.ts","../../../mol/wire/plex/plex.ts","../../../mol/mem/mem.ts","../../../mol/dom/context/context.ts","../../../node/node.node.ts","../../../mol/env/env.ts","../../../mol/env/env.node.ts","../../../mol/exec/exec.node.ts","../../../mol/dom/context/context.node.ts","../../../mol/after/tick/tick.ts","../../../mol/view/selection/selection.ts","../../../mol/wrapper/wrapper.ts","../../../mol/memo/memo.ts","../../../mol/dom/qname/qname.ts","../../../mol/wire/probe/probe.ts","../../../mol/wire/watch/watch.ts","../../../mol/const/const.ts","../../../mol/wire/solid/solid.ts","../../../mol/dom/render/attributes/attributes.ts","../../../mol/dom/render/events/events.ts","../../../mol/dom/render/styles/styles.ts","../../../mol/dom/render/children/children.ts","../../../mol/dom/render/fields/fields.ts","../../../mol/wire/async/async.ts","../../../mol/style/attach/attach.ts","../../../mol/decor/decor.ts","../../../mol/style/unit/unit.ts","../../../mol/style/func/func.ts","../../../mol/style/prop/prop.ts","../../../mol/theme/theme.ts","../../../mol/theme/-css/theme.css.ts","../../../mol/gap/gap.ts","../../../mol/gap/-css/gap.css.ts","../../../mol/view/view/view.ts","../../../mol/view/view/-css/view.css.ts","../../../mol/scroll/scroll.view.tree","../../../mol/dom/listener/listener.ts","../../../mol/print/print.ts","../../../mol/style/sheet/sheet.ts","../../../mol/style/define/define.ts","../../../mol/scroll/scroll.view.ts","../../../mol/scroll/scroll.view.css.ts","../../../mol/page/page.view.tree","../../../mol/plugin/plugin.ts","../../../mol/page/page.view.css.ts","../../../mol/theme/auto/auto.view.tree","../../../mol/action/action.ts","../../../mol/state/arg/arg.node.ts","../../../mol/mem/persist/persist.ts","../../../mol/mem/cached/cached.ts","../../../mol/wire/sync/sync.ts","../../../mol/storage/storage.ts","../../../mol/state/local/local.ts","../../../mol/charset/decode/decode.ts","../../../mol/charset/encode/encode.ts","../../../mol/file/file.ts","../../../mol/compare/array/array.ts","../../../mol/file/file.node.ts","../../../mol/state/local/local.node.ts","../../../mol/lights/lights.ts","../../../mol/theme/auto/auto.view.ts","../../../mol/speck/speck.view.tree","../../../mol/layer/layer.ts","../../../mol/layer/-css/layer.css.ts","../../../mol/speck/-css/speck.view.css.ts","../../../mol/button/button.view.tree","../../../mol/keyboard/code/code.ts","../../../mol/button/button.view.ts","../../../mol/button/-css/button.view.css.ts","../../../mol/button/typed/typed.view.tree","../../../mol/button/typed/-css/typed.view.css.ts","../../../mol/button/minor/minor.view.tree","../../../mol/button/minor/-css/minor.view.css.ts","../../../mol/check/check.view.tree","../../../mol/maybe/maybe.ts","../../../mol/check/-css/check.css.ts","../../../mol/check/check.view.ts","../../../mol/check/icon/icon.view.tree","../../../mol/check/icon/-css/icon.view.css.ts","../../../mol/svg/svg.view.tree","../../../mol/state/time/time.ts","../../../mol/svg/svg.view.ts","../../../mol/svg/root/root.view.tree","../../../mol/svg/root/-css/root.view.css.ts","../../../mol/svg/path/path.view.tree","../../../mol/icon/icon.view.tree","../../../mol/icon/-css/icon.view.css.ts","../../../mol/icon/brightness/6/6.view.tree","../../../mol/locale/locale.ts","../../../mol/lights/toggle/toggle.view.tree","../../../localized_string","../../../mol/lights/toggle/toggle.view.ts","../../../mol/link/link.view.tree","../../../mol/link/link.view.ts","../../../mol/link/link.view.css.ts","../../../mol/icon/script/script.view.tree","../../../mol/icon/script/text/text.view.tree","../../../mol/link/source/source.view.tree","../../../mol/button/major/major.view.tree","../../../mol/button/major/-css/major.view.css.ts","../../../mol/embed/native/native.view.tree","../../../mol/promise/promise/promise.ts","../../../mol/wait/timeout/timeout.ts","../../../mol/embed/native/native.view.ts","../../../mol/embed/native/-css/native.view.css.ts","../../../mol/frame/frame.view.tree","../../../mol/frame/frame.view.ts","../../../mol/frame/frame.view.css.ts","../../../hyoo/showcase/showcase.view.tree","../../../hyoo/showcase/showcase.view.ts","../../../hyoo/showcase/-css/showcase.view.css.ts"],"names":[],"mappings":"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","sourcesContent":[null,"Error.stackTraceLimit = 50;\n\ndeclare let _$_: { new(): {} } & typeof globalThis\ndeclare class $ extends _$_ {}\n\nnamespace $ {\n\texport type $ = typeof $$\n\texport declare class $$ extends $ {}\n\tnamespace $$ {\n\t\texport type $$ = $\n\t}\n}\n\nmodule.exports = $\n","namespace $ {\n\n\texport const $mol_ambient_ref : unique symbol = Symbol( '$mol_ambient_ref' )\n\n\t/** @deprecated use $ instead */\n\texport type $mol_ambient_context = $\n\n\texport function $mol_ambient( this : $ | void , overrides : Partial< $ > ) : $ {\n\t\treturn Object.setPrototypeOf( overrides , this || $ )\n\t}\n\n}\n","namespace $ {\n\n\tconst instances = new WeakSet< any >()\n\n\t/**\n\t * Proxy that delegates all to lazy returned target.\n\t * \n\t * \t$mol_delegate( Array.prototype , ()=> fetch_array() )\n\t */\n export function $mol_delegate< Value extends object >(\n\t\tproto : Value ,\n\t\ttarget : ()=> Value ,\n\t) {\n\n\t\tconst proxy = new Proxy( proto , {\n\n\t\t\tget: ( _ , field )=> {\n\t\t\t\tconst obj = target()\n\t\t\t\tlet val = Reflect.get( obj , field )\n\t\t\t\tif( typeof val === 'function' ) {\n\t\t\t\t\tval = val.bind( obj )\n\t\t\t\t} \n\t\t\t\treturn val\n\t\t\t},\n\t\t\thas: ( _ , field )=> Reflect.has( target(), field ),\n\t\t\tset: ( _ , field , value )=> Reflect.set( target() , field , value ),\n\t\t\t\n\t\t\tgetOwnPropertyDescriptor: ( _ , field )=> Reflect.getOwnPropertyDescriptor( target() , field ),\n\t\t\townKeys: ()=> Reflect.ownKeys( target() ),\n\t\t\t\n\t\t\tgetPrototypeOf: ()=> Reflect.getPrototypeOf( target() ),\n\t\t\tsetPrototypeOf: ( _ , donor )=> Reflect.setPrototypeOf( target() , donor ),\n\t\t\t\n\t\t\tisExtensible: ()=> Reflect.isExtensible( target() ),\n\t\t\tpreventExtensions: ()=> Reflect.preventExtensions( target() ),\n\t\t\t\n\t\t\tapply: ( _ , self , args )=> Reflect.apply( target() as Function , self , args ),\n\t\t\tconstruct: ( _ , args , retarget )=> Reflect.construct( target() as Function , args , retarget ),\n\t\t\t\n\t\t\tdefineProperty: ( _ , field , descr )=> Reflect.defineProperty( target() , field , descr ),\n\t\t\tdeleteProperty: ( _ , field )=> Reflect.deleteProperty( target() , field ),\n\n\t\t} )\n\n\t\tinstances.add( proxy )\n\n\t\treturn proxy\n\n\t}\n\n\tReflect.defineProperty(\n\t\t$mol_delegate ,\n\t\tSymbol.hasInstance ,\n\t\t{\n\t\t\tvalue : ( obj : object )=> instances.has( obj ),\n\t\t},\n\t)\n\n}\n","namespace $ {\n\n\texport const $mol_owning_map = new WeakMap< any , any >()\n\n\texport function $mol_owning_allow< Having >(\n\t\thaving : Having ,\n\t) : having is Having & {\n\t\tdestructor() : void\n\t} {\n\t\ttry {\n\t\t\tif( !having ) return false\n\t\t\tif( typeof having !== 'object' && typeof having !== 'function' ) return false\n\t\t\tif( having instanceof $mol_delegate ) return false\n\t\t\tif( typeof (having as any)['destructor'] !== 'function' ) return false\n\t\t\treturn true\n\t\t} catch {\n\t\t\treturn false\n\t\t}\n\t}\n\n\texport function $mol_owning_get< Having , Owner extends object >( having : Having , Owner? : { new() : Owner } ) : Owner | null {\n\t\n\t\tif( !$mol_owning_allow( having ) ) return null\n\n\t\twhile( true ) {\n\n\t\t\tconst owner = $mol_owning_map.get( having )\n\t\t\tif( !owner ) return owner\n\t\t\tif( !Owner ) return owner\n\t\t\t\n\t\t\tif( owner instanceof Owner ) return owner\n\n\t\t\thaving = owner\n\t\t}\n\n\t}\n\t\n\texport function $mol_owning_check< Owner , Having >(\n\t\towner : Owner ,\n\t\thaving : Having ,\n\t) : having is Having & { destructor() : void } {\n\t\tif( !$mol_owning_allow( having ) ) return false\n\t\tif( $mol_owning_map.get( having ) !== owner ) return false\n\t\treturn true\n\t}\n\t\n\texport function $mol_owning_catch< Owner , Having >(\n\t\towner : Owner ,\n\t\thaving : Having ,\n\t) {\n\t\tif( !$mol_owning_allow( having ) ) return false\n\t\tif( $mol_owning_map.get( having ) ) return false\n\n\t\t$mol_owning_map.set( having , owner )\n\t\treturn true\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_fail( error : any ) : never {\n\t\tthrow error\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_fail_hidden( error : any ) : never {\n\t\tthrow error /// Use 'Never Pause Here' breakpoint in DevTools or simply blackbox this script\n\t}\n\n}\n","namespace $ {\n\t\n\tconst named = new WeakSet< Function >()\n\t\n\texport function $mol_func_name( this : $ , func : Function ) : string {\n\t\t\n\t\tlet name = func.name\n\t\tif( name?.length > 1 ) return name\n\t\tif( named.has( func ) ) return name\n\n\t\tfor( let key in this ) {\n\t\t\ttry {\n\t\t\t\tif( (this as any)[ key ] !== func ) continue\n\t\t\t\tname = key\n\t\t\t\tObject.defineProperty( func , 'name' , { value : name } )\n\t\t\t\tbreak\n\t\t\t} catch {}\n\t\t}\n\n\t\tnamed.add( func )\n\t\treturn name\n\t\t\n\t}\n\n\texport function $mol_func_name_from< Target extends Function >( target : Target , source : Function ) {\n\t\tObject.defineProperty( target , 'name' , { value : source.name } )\n\t\treturn target\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_object2 {\n\t\t\n\t\tstatic $ = $ as any as $\n\t\t\n\t\t[Symbol.toStringTag]!: string\n\n\t\t[ $mol_ambient_ref ] = null as any as $\n\t\tget $() {\n\t\t\tif( this[ $mol_ambient_ref ] ) return this[ $mol_ambient_ref ]\n\t\t\tconst owner = $mol_owning_get( this ) as any\n\t\t\treturn this[ $mol_ambient_ref ] = owner?.$ || $mol_object2.$ as $\n\t\t}\n\t\tset $( next : $ ) {\n\t\t\tif( this[ $mol_ambient_ref ] ) $mol_fail_hidden( new Error( 'Context already defined' ) )\n\t\t\tthis[ $mol_ambient_ref ] = next\n\t\t}\n\n\t\tpublic static create< Instance >(\n\t\t\tthis : new( init? : ( instance : any )=> void )=> Instance ,\n\t\t\tinit? : ( instance : $mol_type_writable )=> void\n\t\t) : Instance {\n\t\t\tconst obj = new this\n\t\t\tif( init ) init( obj )\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\tstatic [ Symbol.toPrimitive ]() {\n\t\t\treturn this.toString()\n\t\t}\n\t\t\n\t\tstatic toString() {\n\t\t\treturn ( this as any )[ Symbol.toStringTag ] || this.$.$mol_func_name( this )\n\t\t}\n\t\t\n\t\tstatic toJSON() {\n\t\t\treturn this.toString()\n\t\t}\n\t\t\n\t\tdestructor() { }\n\t\tstatic destructor() { }\n\t\t\n\t\t//[ Symbol.toPrimitive ]( hint: string ) {\n\t\t//\treturn hint === 'number' ? this.valueOf() : this.toString()\n\t\t//}\n\t\t\n\t\ttoString(): string {\n\t\t\treturn this[ Symbol.toStringTag ] || this.constructor.name + '<>'\n\t\t}\n\t\t\n\t\t// toJSON(): any {\n\t\t// \treturn this.toString()\n\t\t// }\n\n\t}\n}\n","namespace $ {\n\n\texport namespace $$ { let $ }\n\n\texport const $mol_object_field = Symbol( '$mol_object_field' )\n\t\n\texport class $mol_object extends $mol_object2 {\n\t\t\n\t\tpublic static make< This extends typeof $mol_object >(\n\t\t\tthis: This,\n\t\t\tconfig: Partial< InstanceType< This > >,\n\t\t) {\n\t\t\treturn super.create( obj => {\n\t\t\t\tfor( let key in config ) ( obj as any )[ key ] = config[ key ]!\n\t\t\t} ) as InstanceType< This >\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\t\n\texport class $mol_window extends $mol_object {\n\t\t\n\t\tstatic size() {\n\t\t\treturn {\n\t\t\t\twidth: 1024,\n\t\t\t\theight: 768,\n\t\t\t}\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\t/** Special status statuses. */\n\texport enum $mol_wire_cursor {\n\t\t\n\t\t/** Update required. */\n\t\tstale = -1,\n\t\t\n\t\t/** Some of (transitive) pub update required. */\n\t\tdoubt = -2,\n\t\t\n\t\t/** Actual state but may be dropped. */\n\t\tfresh = -3,\n\t\t\n\t\t/** State will never be changed. */\n\t\tfinal = -4,\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\t/**\n\t * Collects subscribers in compact array. 28B\n\t */\n\texport class $mol_wire_pub extends Object {\n\t\t\n\t\tdata = [] as unknown[]\n\t\t\n\t\t// Derived objects should be Arrays.\n\t\tstatic get [ Symbol.species ]() {\n\t\t\treturn Array\n\t\t}\n\t\t\n\t\t/**\n\t\t * Index of first subscriber.\n\t\t */\n\t\tprotected sub_from = 0 // 4B\n\t\t\n\t\t/**\n\t\t * All current subscribers.\n\t\t */\n\t\tget sub_list() {\n\t\t\tconst res = [] as $mol_wire_sub[]\n\t\t\tfor( let i = this.sub_from; i < this.data.length; i += 2 ) {\n\t\t\t\tres.push( this.data[i] as $mol_wire_sub )\n\t\t\t}\n\t\t\treturn res as readonly $mol_wire_sub[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * Has any subscribers or not.\n\t\t */\n\t\tget sub_empty() {\n\t\t\treturn this.sub_from === this.data.length\n\t\t}\n\t\t\n\t\t/**\n\t\t * Subscribe subscriber to this publisher events and return position of subscriber that required to unsubscribe.\n\t\t */\n\t\tsub_on( sub: $mol_wire_pub, pub_pos: number ) {\n\t\t\tconst pos = this.data.length\n\t\t\tthis.data.push( sub, pub_pos )\n\t\t\treturn pos\n\t\t}\n\t\t\n\t\t/**\n\t\t * Unsubscribe subscriber from this publisher events by subscriber position provided by `on(pub)`.\n\t\t */\n\t\tsub_off( sub_pos: number ) {\n\t\t\t\n\t\t\tif(!( sub_pos < this.data.length )) {\n\t\t\t\t$mol_fail( new Error( `Wrong pos ${ sub_pos }` ) )\n\t\t\t}\n\t\t\t\n\t\t\tconst end = this.data.length - 2\n\t\t\tif( sub_pos !== end ) {\n\t\t\t\tthis.peer_move( end, sub_pos )\n\t\t\t}\n\t\t\t\n\t\t\tthis.data.pop()\n\t\t\tthis.data.pop()\n\t\t\t\n\t\t\tif( this.data.length === this.sub_from ) this.reap()\n\t\t\t\n\t\t}\n\t\t\n\t\t/**\n\t\t * Called when last sub was unsubscribed.\n\t\t **/\n\t\treap() { }\n\t\t\n\t\t/**\n\t\t * Autowire this publisher with current subscriber.\n\t\t **/\n\t\tpromote() {\n\t\t\t$mol_wire_auto()?.track_next( this )\n\t\t}\n\t\t\n\t\t/**\n\t\t * Enforce actualization. Should not throw errors.\n\t\t */\n\t\tfresh() {}\n\t\t\n\t\t/**\n\t\t * Allow to put data to caches in the subtree.\n\t\t */\n\t\tcomplete() {}\n\t\t\n\t\tget incompleted() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * Notify subscribers about self changes.\n\t\t */\n\t\temit( quant = $mol_wire_cursor.stale ) {\n\t\t\tfor( let i = this.sub_from; i < this.data.length; i += 2 ) {\n\t\t\t\t;( this.data[i] as $mol_wire_sub ).absorb( quant )\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * Moves peer from one position to another. Doesn't clear data at old position!\n\t\t */\n\t\tpeer_move( from_pos: number, to_pos: number ) {\n\t\t\t\n\t\t\tconst peer = this.data[ from_pos ] as $mol_wire_pub\n\t\t\tconst self_pos = this.data[ from_pos + 1 ] as number\n\t\t\t\n\t\t\tthis.data[ to_pos ] = peer\n\t\t\tthis.data[ to_pos + 1 ] = self_pos\n\t\t\t\n\t\t\tpeer.peer_repos( self_pos, to_pos )\n\t\t}\n\t\t\n\t\t/**\n\t\t * Updates self position in the peer.\n\t\t */\n\t\tpeer_repos( peer_pos: number, self_pos: number ) {\n\t\t\tthis.data[ peer_pos + 1 ] = self_pos\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport let $mol_wire_auto_sub: $mol_wire_sub | null = null\n\t\n\t/**\n\t * When fulfilled, all publishers are promoted to this subscriber on access to its.\n\t */\n\texport function $mol_wire_auto( next = $mol_wire_auto_sub ) {\n\t\treturn $mol_wire_auto_sub = next\n\t}\n\t\n\t/**\n\t * Affection queue. Used to prevent accidental stack overflow on emit.\n\t */\n\texport const $mol_wire_affected = [] as ( $mol_wire_sub | number )[]\n\t\n}\n","namespace $ {\n\n\t// https://docs.google.com/document/d/1FTascZXT9cxfetuPRT2eXPQKXui4nWFivUnS_335T3U/preview#\n\t($ as any)['devtoolsFormatters'] ||= []\n\n\texport function $mol_dev_format_register( config : {\n\t\theader : ( val : any , config : any )=> any\n\t\thasBody : ( val : any , config : any )=> false\n\t} | {\n\t\theader : ( val : any , config : any )=> any\n\t\thasBody : ( val : any , config : any )=> boolean\n\t\tbody : ( val : any , config : any )=> any\n\t} ) {\n\t\t($ as any)['devtoolsFormatters'].push( config )\n\t}\n\n\texport let $mol_dev_format_head = Symbol( '$mol_dev_format_head' )\n\texport let $mol_dev_format_body = Symbol( '$mol_dev_format_body' )\n\n\t$mol_dev_format_register({\n\n\t\theader : ( val : any , config = false ) => {\n\t\t\t\n\t\t\tif( config ) return null\n\n\t\t\tif( !val ) return null\n\t\t\t\n\t\t\tif( $mol_dev_format_head in val ) {\n\t\t\t\ttry {\n\t\t\t\t\treturn val[ $mol_dev_format_head ]()\n\t\t\t\t} catch( error ) {\n\t\t\t\t\treturn $mol_dev_format_accent( $mol_dev_format_native( val ), '💨', $mol_dev_format_native( error ), '' )\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tif( typeof val === 'function' ) {\n\t\t\t\treturn $mol_dev_format_native( val )\n\t\t\t}\n\t\t\t\n\t\t\tif( Symbol.toStringTag in val ) {\n\t\t\t\treturn $mol_dev_format_native( val )\n\t\t\t}\n\t\t\t\n\t\t\treturn null\n\t\t\t\n\t\t} ,\n\t\t\n\t\thasBody : val => val[ $mol_dev_format_body ] ,\n\n\t\tbody : val => val[ $mol_dev_format_body ]() ,\n\n\t})\n\n\texport function $mol_dev_format_native( obj : any ) {\n\t\t\n\t\tif( typeof obj === 'undefined' ) return $mol_dev_format_shade( 'undefined' )\n\t\t\n\t\t// if( ![ 'object', 'function', 'symbol' ].includes( typeof obj ) ) return obj\n\n\t\treturn [\n\t\t\t'object' ,\n\t\t\t{\n\t\t\t\tobject : obj ,\n\t\t\t\tconfig : true ,\n\t\t\t} ,\n\t\t]\n\n\t}\n\n\texport function $mol_dev_format_auto( obj : any ) {\n\t\t\n\t\tif( obj == null ) return $mol_dev_format_shade( String( obj ) )\n\n\t\treturn [\n\t\t\t'object' ,\n\t\t\t{\n\t\t\t\tobject : obj ,\n\t\t\t\tconfig : false ,\n\t\t\t} ,\n\t\t]\n\n\t}\n\n\texport function $mol_dev_format_element( element : string , style : object , ...content : any[] ) {\n\t\t\t\n\t\tconst styles = [] as string[]\n\t\t\n\t\tfor( let key in style ) styles.push( `${ key } : ${ (style as any)[key] }` )\n\t\t\n\t\treturn [\n\t\t\telement ,\n\t\t\t{\n\t\t\t\tstyle : styles.join( ' ; ' ) ,\n\t\t\t} ,\n\t\t\t... content ,\n\t\t]\n\n\t}\n\n\texport function $mol_dev_format_span( style : object , ...content : any[] ) {\n\t\treturn $mol_dev_format_element(\n\t\t\t'span' ,\n\t\t\t{\n\t\t\t\t// 'vertical-align' : '8%',\n\t\t\t\t... style ,\n\t\t\t} ,\n\t\t\t... content ,\n\t\t)\n\t}\n\n\texport let $mol_dev_format_div = $mol_dev_format_element.bind( null , 'div' )\n\texport let $mol_dev_format_ol = $mol_dev_format_element.bind( null , 'ol' )\n\texport let $mol_dev_format_li = $mol_dev_format_element.bind( null , 'li' )\n\texport let $mol_dev_format_table = $mol_dev_format_element.bind( null , 'table' )\n\texport let $mol_dev_format_tr = $mol_dev_format_element.bind( null , 'tr' )\n\texport let $mol_dev_format_td = $mol_dev_format_element.bind( null , 'td' )\n\n\texport let $mol_dev_format_accent = $mol_dev_format_span.bind( null , {\n\t\t'color' : 'magenta' ,\n\t} )\n\n\texport let $mol_dev_format_strong = $mol_dev_format_span.bind( null , {\n\t\t'font-weight' : 'bold' ,\n\t} )\n\n\texport let $mol_dev_format_string = $mol_dev_format_span.bind( null , {\n\t\t'color' : 'green',\n\t} )\n\n\texport let $mol_dev_format_shade = $mol_dev_format_span.bind( null , {\n\t\t'color' : 'gray',\n\t} )\n\n\texport let $mol_dev_format_indent = $mol_dev_format_div.bind( null , {\n\t\t'margin-left': '13px'\n\t} )\n\n}\n","namespace $ {\n\t\n\t/**\n\t * Publisher that can auto collect other publishers. 32B\n\t * \n\t * \tP1 P2 P3 P4 S1 S2 S3\n\t * \t^ ^\n\t * \tpubs_from subs_from\n\t */\n\texport class $mol_wire_pub_sub extends $mol_wire_pub implements $mol_wire_sub {\n\t\t\n\t\tprotected pub_from = 0 // 4B\n\t\tprotected cursor = $mol_wire_cursor.stale // 4B\n\t\t\n\t\tget temp() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\tget pub_list() {\n\t\t\tconst res = [] as $mol_wire_pub[]\n\t\t\tconst max = this.cursor >=0 ? this.cursor : this.sub_from\n\t\t\tfor( let i = this.pub_from; i < max; i += 2 ) {\n\t\t\t\tif( this.data[i] ) res.push( this.data[i] as $mol_wire_pub )\n\t\t\t}\n\t\t\treturn res\n\t\t}\n\t\t\n\t\ttrack_on() {\n\t\t\tthis.cursor = this.pub_from\n\t\t\tconst sub = $mol_wire_auto()\n\t\t\t$mol_wire_auto( this )\n\t\t\treturn sub\n\t\t}\n\t\t\n\t\tpromote() {\n\t\t\t\n\t\t\tif( this.cursor >= this.pub_from ) {\n\t\t\t\t$mol_fail( new Error( 'Circular subscription' ) )\n\t\t\t}\n\t\t\t\n\t\t\tsuper.promote()\n\t\t}\n\t\t\n\t\ttrack_next( pub?: $mol_wire_pub ): $mol_wire_pub | null {\n\t\t\t\n\t\t\tif( this.cursor < 0 ) $mol_fail( new Error( 'Promo to non begun sub' ) )\n\t\t\t\n\t\t\tif( this.cursor < this.sub_from ) {\n\t\t\t\n \t\t\t\tconst next = this.data[ this.cursor ] as $mol_wire_pub | undefined\n\t\t\t\tif( pub === undefined ) return next ?? null\n\t\t\t\t\n\t\t\t\tif( next === pub ) {\n\t\t\t\t\tthis.cursor += 2\n\t\t\t\t\treturn next\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( next ) {\n\t\t\t\t\t\n\t\t\t\t\tif( this.sub_from < this.data.length ) {\n\t\t\t\t\t\tthis.peer_move( this.sub_from, this.data.length )\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tthis.peer_move( this.cursor, this.sub_from )\n\t\t\t\t\tthis.sub_from += 2\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} else {\n\t\t\t\t\n\t\t\t\tif( pub === undefined ) return null\n\t\t\t\t\n\t\t\t\tif( this.sub_from < this.data.length ) {\n\t\t\t\t\tthis.peer_move( this.sub_from, this.data.length )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tthis.sub_from += 2\n\t\t\t\t\n\t\t\t}\t\t\t\n\t\t\t\n\t\t\tthis.data[ this.cursor ] = pub\n\t\t\tthis.data[ this.cursor + 1 ] = pub.sub_on( this, this.cursor )\n\t\t\t\n\t\t\tthis.cursor += 2\n\t\t\t\n\t\t\treturn pub\n\t\t}\n\t\t\n\t\ttrack_off( sub: $mol_wire_sub | null ) {\n\t\t\t\n\t\t\t$mol_wire_auto( sub )\n\t\t\t\n\t\t\tif( this.cursor < 0 ) {\n\t\t\t\t$mol_fail( new Error( 'End of non begun sub' ) )\n\t\t\t}\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.pub_from;\n\t\t\t\tcursor < this.cursor;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub\n\t\t\t\tpub.fresh()\n\t\t\t}\n\t\t\t\n\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\n\t\t}\n\t\t\n\t\tpub_off( sub_pos: number ) {\n\t\t\tthis.data[ sub_pos ] = undefined as any\n\t\t\tthis.data[ sub_pos + 1 ] = undefined as any \n\t\t}\n\t\t\n\t\tdestructor() {\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.data.length - 2;\n\t\t\t\tcursor >= this.sub_from;\n\t\t\t\tcursor -= 2\n\t\t\t) {\n\t\t\t\tconst sub = this.data[ cursor ] as $mol_wire_sub\n\t\t\t\tconst pos = this.data[ cursor + 1 ] as number\n\t\t\t\tsub.pub_off( pos )\n\t\t\t\tthis.data.pop()\n\t\t\t\tthis.data.pop()\n\t\t\t}\n\t\t\t\n\t\t\tthis.cursor = this.pub_from\n\t\t\tthis.track_cut()\n\t\t\tthis.cursor = $mol_wire_cursor.final\n\t\t\t\n\t\t}\n\t\t\n\t\ttrack_cut() {\n\t\t\t\n\t\t\tif( this.cursor < this.pub_from ) {\n\t\t\t\t$mol_fail( new Error( 'Cut of non begun sub' ) )\n\t\t\t}\n\t\t\t\n\t\t\tlet tail = 0\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.cursor;\n\t\t\t\tcursor < this.sub_from;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\t\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub | undefined\n\t\t\t\tpub?.sub_off( this.data[ cursor + 1 ] as number )\n\t\t\t\t\n\t\t\t\tif( this.sub_from < this.data.length ) {\n\t\t\t\t\tthis.peer_move( this.data.length - 2, cursor )\n\t\t\t\t\tthis.data.pop()\n\t\t\t\t\tthis.data.pop()\n\t\t\t\t} else {\n\t\t\t\t\t++ tail\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tfor(; tail; -- tail ) {\n\t\t\t\tthis.data.pop()\n\t\t\t\tthis.data.pop()\n\t\t\t}\n\t\t\t\n\t\t\tthis.sub_from = this.cursor\n\t\t\t\n\t\t}\n\t\t\n\t\tcomplete() { }\n\t\t\n\t\tcomplete_pubs() {\n\t\t\t\n\t\t\tconst limit = this.cursor < 0 ? this.sub_from : this.cursor \n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.pub_from;\n\t\t\t\tcursor < limit;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub\n\t\t\t\tif( pub?.incompleted ) return \n\t\t\t}\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.pub_from;\n\t\t\t\tcursor < limit;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub\n\t\t\t\tpub?.complete()\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tabsorb( quant = $mol_wire_cursor.stale ) {\n\t\t\t\n\t\t\tif( this.cursor === $mol_wire_cursor.final ) return\n\t\t\tif( this.cursor >= quant ) return\n\t\t\t\n\t\t\tthis.cursor = quant\n\t\t\tthis.emit( $mol_wire_cursor.doubt )\n\t\t\t\n\t\t}\n\t\t\n\t\t[ $mol_dev_format_head ]() {\n\t\t\treturn $mol_dev_format_native( this )\n\t\t}\n\t\t\n\t\t/**\n\t\t * Is subscribed to any publisher or not.\n\t\t */\n\t\tget pub_empty() {\n\t\t\treturn this.sub_from === this.pub_from\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\texport class $mol_after_timeout extends $mol_object2 {\n\n\t\tid : any\n\n\t\tconstructor(\n\t\t\tpublic delay : number ,\n\t\t\tpublic task : ()=> void ,\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis.id = setTimeout( task , delay )\n\t\t}\n\n\t\tdestructor() {\n\t\t\tclearTimeout( this.id )\n\t\t}\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport class $mol_after_frame extends $mol_after_timeout {\n\n\t\tconstructor(\n\t\t\tpublic task : ()=> void ,\n\t\t) {\n\t\t\tsuper( 16 , task )\n\t\t}\n\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_promise_like( val: any ): val is Promise {\n\t\treturn val && typeof val === 'object' && 'then' in val && typeof val.then === 'function'\n\t}\n\n}\n","namespace $ {\n\t\n\tconst handled = new WeakSet< Promise< unknown > >()\n\t\n\t/**\n\t * Suspendable task with support both sync/async api.\n\t * \n\t * \tA1 A2 A3 A4 P1 P2 P3 P4 S1 S2 S3\n\t * \t^ ^ ^\n\t * \targs_from pubs_from subs_from\n\t **/\n\texport abstract class $mol_wire_fiber<\n\t\tHost,\n\t\tArgs extends readonly unknown[],\n\t\tResult,\n\t> extends $mol_wire_pub_sub {\n\t\n\t\tstatic warm = true\n\t\t\n\t\tstatic planning = new Set< $mol_wire_fiber< any, any, any > >()\n\t\tstatic reaping = new Set< $mol_wire_fiber< any, any, any > >()\n\t\t\n\t\tstatic plan_task: $mol_after_frame | null = null\n\t\tstatic plan() {\n\t\t\t\n\t\t\tif( this.plan_task ) return\n\t\t\t\n\t\t\tthis.plan_task = new $mol_after_frame( ()=> {\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\tthis.sync()\n\t\t\t\t} finally {\n\t\t\t\t\t$mol_wire_fiber.plan_task = null\n\t\t\t\t}\n\n\t\t\t} )\n\t\t\t\n\t\t}\n\t\t\n\t\tstatic sync() {\n\t\t\t\n\t\t\t// Sync whole fiber graph\n\t\t\twhile( this.planning.size ) {\n\t\t\t\tfor( const fiber of this.planning ) {\n\t\t\t\t\tthis.planning.delete( fiber )\n\t\t\t\t\tif( fiber.cursor >= 0 ) continue\n\t\t\t\t\tif( fiber.cursor === $mol_wire_cursor.final ) continue\n\t\t\t\t\tfiber.fresh()\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\t// Collect garbage\n\t\t\twhile( this.reaping.size ) {\n\t\t\t\t\n\t\t\t\tconst fibers = this.reaping\n\t\t\t\tthis.reaping = new Set\n\t\t\t\t\n\t\t\t\tfor( const fiber of fibers ) {\n\t\t\t\t\tif( !fiber.sub_empty ) continue\n\t\t\t\t\tfiber.destructor()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\t[Symbol.toStringTag]!: string\n\n\t\tpublic cache: Result | Error | Promise< Result | Error > = undefined as any\n\t\t\n\t\tget args() {\n\t\t\treturn this.data.slice( 0 , this.pub_from ) as any as Args\n\t\t}\n\t\t\n\t\tresult() {\n\t\t\tif( $mol_promise_like( this.cache ) ) return\n\t\t\tif( this.cache instanceof Error ) return\n\t\t\treturn this.cache\n\t\t}\n\t\t\n\t\tget incompleted() {\n\t\t\treturn $mol_promise_like( this.cache )\n\t\t}\n\t\t\n\t\tfield() {\n\t\t\treturn this.task.name + '<>'\n\t\t}\n\t\t\n\t\tconstructor(\n\t\t\tid: string,\n\t\t\treadonly task: ( this : Host , ... args : Args )=> Result,\n\t\t\treadonly host?: Host,\n\t\t\targs?: Args\n\t\t) {\n\t\t\t\n\t\t\tsuper()\n\t\t\tif( args ) this.data.push( ... args )\n\t\t\tthis.pub_from = this.sub_from = args?.length ?? 0\n\t\t\tthis[ Symbol.toStringTag ] = id\n\t\t\t\n\t\t}\n\t\t\n\t\tplan() {\n\t\t\t$mol_wire_fiber.planning.add( this )\n\t\t\t$mol_wire_fiber.plan()\n\t\t}\n\t\t\n\t\treap() {\n\t\t\t$mol_wire_fiber.reaping.add( this )\n\t\t\t$mol_wire_fiber.plan()\n\t\t}\n\t\t\n\t\ttoString() {\n\t\t\treturn this[ Symbol.toStringTag ]\n\t\t}\n\t\t\n\t\ttoJSON() {\n\t\t\treturn this[ Symbol.toStringTag ]\n\t\t}\n\n\t\t[ $mol_dev_format_head ]() {\n\t\t\t\n\t\t\tconst cursor = {\n\t\t\t\t[ $mol_wire_cursor.stale ]: '🔴',\n\t\t\t\t[ $mol_wire_cursor.doubt ]: '🟡',\n\t\t\t\t[ $mol_wire_cursor.fresh ]: '🟢',\n\t\t\t\t[ $mol_wire_cursor.final ]: '🔵',\n\t\t\t}[ this.cursor ] ?? this.cursor.toString()\n\t\t\t\n\t\t\treturn $mol_dev_format_div( {},\n\t\t\t\t$mol_owning_check( this, this.cache )\n\t\t\t\t\t? $mol_dev_format_auto({\n\t\t\t\t\t\t[ $mol_dev_format_head ]: ()=> $mol_dev_format_shade( cursor ),\n\t\t\t\t\t\t[ $mol_dev_format_body ]: ()=> $mol_dev_format_native( this ),\n\t\t\t\t\t})\n\t\t\t\t\t: $mol_dev_format_shade( $mol_dev_format_native( this ), cursor ),\n\t\t\t\t$mol_dev_format_auto( this.cache ),\n\t\t\t)\n\t\t\t\n\t\t}\n\t\t\n\t\tget $() {\n\t\t\treturn ( this.host ?? this.task as any )['$']\n\t\t}\n\t\t\n\t\temit( quant = $mol_wire_cursor.stale ) {\n\t\t\tif( this.sub_empty ) this.plan()\n\t\t\telse super.emit( quant )\n\t\t}\n\t\t\n\t\tfresh() {\n\n\t\t\ttype Result = typeof this.cache\n\t\t\t\n\t\t\tif( this.cursor === $mol_wire_cursor.fresh ) return\n\t\t\tif( this.cursor === $mol_wire_cursor.final ) return\n\t\t\t\n\t\t\tcheck: if( this.cursor === $mol_wire_cursor.doubt ) {\n\t\t\t\t\n\t\t\t\tfor( let i = this.pub_from ; i < this.sub_from; i += 2 ) {\n\t\t\t\t\t;( this.data[i] as $mol_wire_pub )?.fresh()\n\t\t\t\t\tif( this.cursor !== $mol_wire_cursor.doubt ) break check\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\treturn\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tconst bu = this.track_on()\n\t\t\tlet result: typeof this.cache\n\n\t\t\ttry {\n\n\t\t\t\tswitch( this.pub_from ) {\n\t\t\t\t\tcase 0: result = (this.task as any).call( this.host! ); break\n\t\t\t\t\tcase 1: result = (this.task as any).call( this.host!, this.data[0] ); break\n\t\t\t\t\tdefault: result = (this.task as any).call( this.host!, ... this.args ); break\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_promise_like( result ) ) {\n\t\t\t\t\t\n\t\t\t\t\tconst put = ( res: Result )=> {\n\t\t\t\t\t\tif( this.cache === result ) this.put( res )\n\t\t\t\t\t\treturn res\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tresult = Object.assign( result.then( put, put ), {\n\t\t\t\t\t\tdestructor: (result as any)['destructor'] ?? (()=> {})\n\t\t\t\t\t} )\n\t\t\t\t\t\n\t\t\t\t\thandled.add( result )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t\n\t\t\t\tif( error instanceof Error || $mol_promise_like( error ) ) {\n\t\t\t\t\tresult = error\n\t\t\t\t} else {\n\t\t\t\t\tresult = new Error( String( error ), { cause: error } )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_promise_like( result ) && !handled.has( result ) ) {\n\t\t\t\t\t\n\t\t\t\t\tresult = Object.assign( result.finally( ()=> {\n\t\t\t\t\t\tif( this.cache === result ) this.absorb()\n\t\t\t\t\t} ), {\n\t\t\t\t\t\tdestructor: (result as any)['destructor'] ?? (()=> {})\n\t\t\t\t\t} )\n\t\t\t\t\t\n\t\t\t\t\thandled.add( result )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tif( ! $mol_promise_like( result ) ) {\n\t\t\t\tthis.track_cut()\n\t\t\t}\n\t\t\t\n\t\t\tthis.track_off( bu )\n\t\t\tthis.put( result )\n\n\t\t}\n\t\t\n\t\trefresh() {\n\t\t\tthis.cursor = $mol_wire_cursor.stale\n\t\t\tthis.fresh()\n\t\t}\n\t\t\n\t\tabstract put( next: Result | Error | Promise< Result | Error > ): Result | Error | Promise< Result | Error >\n\t\t\n\t\t/**\n\t\t * Synchronous execution. Throws Promise when waits async task (SuspenseAPI provider).\n\t\t * Should be called inside SuspenseAPI consumer (ie fiber).\n\t\t */\n\t\tsync() {\n\t\t\t\n\t\t\tif( !$mol_wire_fiber.warm ) {\n\t\t\t\treturn this.result() as Awaited< Result >\n\t\t\t}\n\t\t\t\n\t\t\tthis.promote()\n\t\t\tthis.fresh()\n\t\t\t\n\t\t\tif( this.cache instanceof Error ) {\n\t\t\t\treturn $mol_fail_hidden( this.cache )\n\t\t\t}\n\t\t\t\n\t\t\tif( $mol_promise_like( this.cache ) ) {\n\t\t\t\treturn $mol_fail_hidden( this.cache )\n\t\t\t}\n\t\t\t\n\t\t\treturn this.cache as Awaited< Result >\n\t\t}\n\n\t\t/**\n\t\t * Asynchronous execution.\n\t\t * It's SuspenseAPI consumer. So SuspenseAPI providers can be called inside.\n\t\t */\n\t\tasync async() {\n\t\t\t\n\t\t\twhile( true ) {\n\t\t\t\t\n\t\t\t\tthis.fresh()\n\t\t\t\t\n\t\t\t\tif( this.cache instanceof Error ) {\n\t\t\t\t\t$mol_fail_hidden( this.cache )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( ! $mol_promise_like( this.cache ) ) return this.cache\n\t\t\t\t\t\n\t\t\t\tawait Promise.race([ this.cache, this.step() ])\n\t\t\t\tif( ! $mol_promise_like( this.cache ) ) return this.cache\n\t\t\t\t\t\n\t\t\t\tif( this.cursor === $mol_wire_cursor.final ) {\n\t\t\t\t\t// never ends on destructed fiber\n\t\t\t\t\tawait new Promise( ()=> {} )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\tstep() {\n\t\t\treturn new Promise< null >( done => {\n\t\t\t\tconst sub = new $mol_wire_pub_sub\n\t\t\t\tconst prev = sub.track_on()\n\t\t\t\tsub.track_next( this )\n\t\t\t\tsub.track_off( prev )\n\t\t\t\tsub.absorb = ()=> {\n\t\t\t\t\tdone( null )\n\t\t\t\t\tsub.destructor()\n\t\t\t\t}\n\t\t\t} )\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\t/** Generates unique identifier. */\n\texport function $mol_guid(\n\t\tlength = 8,\n\t\texists: ( id: string )=> boolean = ()=> false,\n\t) {\n\n\t\tfor(;;) {\n\n\t\t\tlet id = Math.random().toString( 36 ).substring( 2, length + 2 ).toUpperCase()\n\t\t\tif( exists( id ) ) continue\n\t\t\t\n\t\t\treturn id\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\t\n\texport const $mol_key_store = new WeakMap< object, string >()\n\n\t/** Returns string key for any value. */\n\texport function $mol_key< Value >( value : Value ) : string {\n\t\t\n\t\tif( typeof value === 'bigint' ) return value.toString() + 'n'\n\t\tif( typeof value === 'symbol' ) return value.description!\n\t\tif( !value ) return JSON.stringify( value )\n\t\tif( typeof value !== 'object' && typeof value !== 'function' ) return JSON.stringify( value )\n\t\t\n\t\treturn JSON.stringify( value, ( field, value )=> {\n\t\t\t\n\t\t\tif( typeof value === 'bigint' ) return value.toString() + 'n'\n\t\t\tif( typeof value === 'symbol' ) return value.description\n\t\t\tif( !value ) return value\n\t\t\tif( typeof value !== 'object' && typeof value !== 'function' ) return value\n\t\t\tif( Array.isArray( value ) ) return value\n\t\t\t\n\t\t\tconst proto = Reflect.getPrototypeOf( value )\n\t\t\tif( !proto ) return value\n\t\t\tif( Reflect.getPrototypeOf( proto ) === null ) return value\n\t\t\t\n\t\t\tif( 'toJSON' in value ) return value\n\t\t\tif( value instanceof RegExp ) return value.toString()\n\t\t\tif( value instanceof Uint8Array ) return [ ... value ]\n\t\t\t\n\t\t\tlet key = $mol_key_store.get( value )\n\t\t\tif( key ) return key\n\t\t\t\n\t\t\tkey = $mol_guid()\n\t\t\t$mol_key_store.set( value, key )\n\t\t\t\n\t\t\treturn key\n\t\t} )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport let $mol_compare_deep_cache = new WeakMap< any , WeakMap< any , boolean > >()\n\t\n\t/**\n\t * Deeply compares two values. Returns true if equal.\n\t * Define `Symbol.toPrimitive` to customize.\n\t */\n\texport function $mol_compare_deep< Value >( left: Value, right: Value ): boolean {\n\n\t\tif( Object.is( left , right ) ) return true\n\n\t\tif( left === null ) return false\n\t\tif( right === null ) return false\n\n\t\tif( typeof left !== 'object' ) return false\n\t\tif( typeof right !== 'object' ) return false\n\n\t\tconst left_proto = Reflect.getPrototypeOf( left as any )\n\t\tconst right_proto = Reflect.getPrototypeOf( right as any )\n\t\t\n\t\tif( left_proto !== right_proto ) return false\n\n\t\tif( left instanceof Boolean ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof Number ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof String ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof Date ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof RegExp ) return left.source === (right as any).source && left.flags === (right as any).flags\n\t\tif( left instanceof Error ) return left.message === (right as any).message && left.stack === (right as any).stack\n\n\t\tlet left_cache = $mol_compare_deep_cache.get( left )\n\t\tif( left_cache ) {\n\n\t\t\tconst right_cache = left_cache.get( right )\n\t\t\tif( typeof right_cache === 'boolean' ) return right_cache\n\n\t\t} else {\n\t\t\t\n\t\t\tleft_cache = new WeakMap< any , boolean >([[ right, true ]])\n\t\t\t$mol_compare_deep_cache.set( left , left_cache )\n\n\t\t}\n\n\t\tlet result!: boolean\n\n\t\ttry {\n\t\t\t\n\t\t\tif( !left_proto ) result = compare_pojo( left, right as any )\n\t\t\telse if( !Reflect.getPrototypeOf( left_proto ) ) result = compare_pojo( left, right as any )\n\t\t\telse if( Symbol.toPrimitive in left ) result = compare_primitive( left, right )\n\t\t\telse if( Array.isArray( left ) ) result = compare_array( left, right as any )\n\t\t\telse if( left instanceof Set ) result = compare_set( left, right as any )\n\t\t\telse if( left instanceof Map ) result = compare_map( left, right as any )\n\t\t\telse if( ArrayBuffer.isView( left ) ) result = compare_buffer( left, right as any )\n\t\t\telse if( Symbol.iterator in left ) result = compare_iterator( ( left as any )[ Symbol.iterator ](), ( right as any )[ Symbol.iterator ]() )\n\t\t\telse result = false\n\n\t\t} finally {\n\t\t\tleft_cache.set( right , result )\n\t\t}\n\t\t\n\t\treturn result\n\t}\n\n\tfunction compare_array< Value extends any[] >( left: Value, right: Value ): boolean {\n\t\t\n\t\tconst len = left.length\n\t\tif( len !== right.length ) return false\n\t\t\n\t\tfor( let i = 0; i < len; ++i ) {\n\t\t\tif( !$mol_compare_deep( left[i] , right[i] ) ) return false\n\t\t}\n\t\t\n\t\treturn true\n\t}\n\t\n\tfunction compare_buffer( left: ArrayBufferView, right: ArrayBufferView ): boolean {\n\t\t\n\t\tconst len = left.byteLength\n\t\tif( len !== right.byteLength ) return false\n\t\t\n\t\tif( left instanceof DataView ) return compare_buffer(\n\t\t\tnew Uint8Array( left.buffer, left.byteOffset, left.byteLength ),\n\t\t\tnew Uint8Array( right.buffer, left.byteOffset, left.byteLength ),\n\t\t)\n\t\t\n\t\tfor( let i = 0; i < len; ++i ) {\n\t\t\tif( (left as any)[i] !== (right as any)[i] ) return false\n\t\t}\n\t\t\n\t\treturn true\n\t}\n\t\n\tfunction compare_iterator< Value extends IterableIterator >(\n\t\tleft: Value,\n\t\tright: Value,\n\t): boolean {\n\t\t\n\t\twhile( true ) {\n\n\t\t\tconst left_next = left.next()\n\t\t\tconst right_next = right.next()\n\n\t\t\tif( left_next.done !== right_next.done ) return false\n\t\t\tif( left_next.done ) break\n\n\t\t\tif( !$mol_compare_deep( left_next.value , right_next.value ) ) return false\n\n\t\t}\n\n\t\treturn true\n\n\t}\n\t\n\tfunction compare_set< Value extends Set >( left: Value, right: Value ): boolean {\n\t\tif( left.size !== right.size ) return false\n\t\treturn compare_iterator( left.values(), right.values() )\n\t}\n\t\n\tfunction compare_map< Key, Value >( left: Map< Key, Value > , right: Map< Key, Value > ): boolean {\n\t\tif( left.size !== right.size ) return false\n\t\treturn compare_iterator( left.keys(), right.keys() )\n\t\t\t&& compare_iterator( left.values(), right.values() )\n\t}\n\t\n\tfunction compare_pojo( left: {}, right: {} ): boolean {\n\t\t\n\t\tconst left_keys = Object.getOwnPropertyNames( left )\n\t\tconst right_keys = Object.getOwnPropertyNames( right )\n\t\t\n\t\tif( !compare_array( left_keys, right_keys ) ) return false\n\n\t\tfor( let key of left_keys ) {\n\t\t\tif( !$mol_compare_deep( ( left as any )[ key ], ( right as any )[ key ] ) ) return false\n\t\t}\n\n\t\tconst left_syms = Object.getOwnPropertySymbols( left )\n\t\tconst right_syms = Object.getOwnPropertySymbols( right )\n\t\t\n\t\tif( !compare_array( left_syms, right_syms ) ) return false\n\n\t\tfor( let key of left_syms ) {\n\t\t\tif( !$mol_compare_deep( ( left as any )[ key ], ( right as any )[ key ] ) ) return false\n\t\t}\n\n\t\treturn true\n\t}\n\t\n\tfunction compare_primitive( left: {}, right: {} ): boolean {\n\t\treturn Object.is(\n\t\t\t(left as any)[ Symbol.toPrimitive ]( 'default' ),\n\t\t\t(right as any)[ Symbol.toPrimitive ]( 'default' ),\n\t\t)\n\t}\n\t\n}\n","namespace $ {\n\n\t/** Logger event data */\n\texport type $mol_log3_event< Fields > = {\n\t\t[ key in string ] : unknown\n\t} & {\n\t\t\n\t\t/** Time of event creation */\n\t\ttime? : string\n\n\t\t/** Place of event creation */\n\t\tplace : unknown\n\n\t\t/** Short description of event */\n\t\tmessage : string\n\n\t} & Fields\n\n\t/** Logger function */\n\texport type $mol_log3_logger< Fields , Res = void > = (\n\t\tthis : $ ,\n\t\tevent : $mol_log3_event< Fields > ,\n\t)=> Res\n\n\t/** Log begin of some task */\n\texport declare let $mol_log3_come : $mol_log3_logger<{}>\n\t\n\t/** Log end of some task */\n\texport declare let $mol_log3_done : $mol_log3_logger<{}>\n\t\n\t/** Log error */\n\texport declare let $mol_log3_fail : $mol_log3_logger<{}>\n\t\n\t/** Log warning message */\n\texport declare let $mol_log3_warn : $mol_log3_logger<{ hint : string }>\n\t\n\t/** Log some generic event */\n\texport declare let $mol_log3_rise : $mol_log3_logger<{}>\n\n\t/** Log begin of log group, returns func to close group */\n\texport declare let $mol_log3_area : $mol_log3_logger< {} , ()=> void >\n\n\t/** Log begin of collapsed group only when some logged inside, returns func to close group */\n\texport function $mol_log3_area_lazy(\n\t\tthis : $ ,\n\t\tevent : $mol_log3_event<{}> ,\n\t) {\n\n\t\tconst self = this\n\t\tconst stack = self.$mol_log3_stack\n\n\t\tconst deep = stack.length\n\t\tlet logged = false\n\n\t\tstack.push( ()=> {\n\t\t\tlogged = true\n\t\t\tself.$mol_log3_area.call( self , event )\n\t\t} )\n\n\t\treturn ()=> {\n\t\t\tif( logged ) self.console.groupEnd()\n\t\t\tif( stack.length > deep ) stack.length = deep\n\t\t}\n\n\t}\n\n\texport let $mol_log3_stack = [] as ( ()=> void )[]\n\n}\n","namespace $ {\n\n\t/** Position in any resource. */\n\texport class $mol_span extends $mol_object2 {\n\n\t\tconstructor(\n\t\t\treadonly uri: string ,\n\t\t\treadonly source: string ,\n\t\t\treadonly row: number ,\n\t\t\treadonly col: number ,\n\t\t\treadonly length: number ,\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis[ Symbol.toStringTag ] = `${ this.uri }#${ this.row }:${ this.col }/${ this.length }`\n\t\t}\n\n\t\t/** Span for begin of unknown resource */\n\t\tstatic unknown = $mol_span.begin('?')\n\n\t\t/** Makes new span for begin of resource. */\n\t\tstatic begin( uri: string, source = '' ) {\n\t\t\treturn new $mol_span( uri , source, 1 , 1 , 0 )\n\t\t}\n\n\t\t/** Makes new span for end of resource. */\n\t\tstatic end( uri: string , source: string ) {\n\t\t\treturn new $mol_span( uri , source, 1 , source.length + 1 , 0 )\n\t\t}\n\n\t\t/** Makes new span for entire resource. */\n\t\tstatic entire( uri: string , source: string ) {\n\t\t\treturn new $mol_span( uri , source, 1 , 1 , source.length )\n\t\t}\n\n\t\ttoString() {\n\t\t\treturn this[ Symbol.toStringTag ]\n\t\t}\n\n\t\ttoJSON() {\n\t\t\treturn {\n\t\t\t\turi: this.uri,\n\t\t\t\trow: this.row,\n\t\t\t\tcol: this.col,\n\t\t\t\tlength: this.length\n\t\t\t}\n\t\t}\n\n\t\t/** Makes new error for this span. */\n\t\terror( message : string , Class = Error ) {\n\t\t\treturn new Class( `${message} (${this})` )\n\t\t}\n\n\t\t/** Makes new span for same uri. */\n\t\tspan( row : number , col : number , length : number ) {\n\t\t\treturn new $mol_span( this.uri , this.source, row , col , length )\n\t\t}\n\n\t\t/** Makes new span after end of this. */\n\t\tafter( length = 0 ) {\n\t\t\treturn new $mol_span( this.uri , this.source, this.row , this.col + this.length , length )\n\t\t}\n\n\t\t/** Makes new span between begin and end. */\n\t\tslice( begin: number, end = -1 ) {\n\t\t\tlet len = this.length\n\t\t\t\n\t\t\tif( begin < 0 ) begin += len\n\t\t\tif( end < 0 ) end += len\n\n\t\t\tif (begin < 0 || begin > len) this.$.$mol_fail( this.error( `Begin value '${begin}' out of range`, RangeError ) )\n\t\t\tif (end < 0 || end > len) this.$.$mol_fail( this.error( `End value '${end}' out of range`, RangeError ) )\n\t\t\tif (end < begin) this.$.$mol_fail( this.error( `End value '${end}' can't be less than begin value`, RangeError ) )\n\n\t\t\treturn this.span( this.row , this.col + begin , end - begin )\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\t/** Serializes tree to string in tree format. */\n\texport function $mol_tree2_to_string(\n\t\tthis: $,\n\t\ttree: $mol_tree2,\n\t) : string {\n\n\t\tlet output = [] as string[]\n\t\t\n\t\tfunction dump(\n\t\t\ttree: $mol_tree2,\n\t\t\tprefix = '',\n\t\t) {\n\n\t\t\tif( tree.type.length ) {\n\t\t\t\t\n\t\t\t\tif( !prefix.length ) {\n\t\t\t\t\tprefix = \"\\t\";\n\t\t\t\t}\n\n\t\t\t\toutput.push( tree.type )\n\n\t\t\t\tif( tree.kids.length == 1 ) {\n\t\t\t\t\toutput.push( ' ' )\n\t\t\t\t\tdump( tree.kids[ 0 ], prefix )\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\toutput.push( \"\\n\" )\n\n\t\t\t} else if( tree.value.length || prefix.length ) {\n\n\t\t\t\toutput.push( \"\\\\\" + tree.value + \"\\n\" )\n\n\t\t\t}\n\n\t\t\tfor( const kid of tree.kids ) {\n\t\t\t\toutput.push( prefix )\n\t\t\t\tdump( kid, prefix + \"\\t\" )\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tdump( tree )\n\n\t\treturn output.join('')\n\t}\n\t\t\n}\n","namespace $ {\n\n\t/** Path by types in tree. */\n\texport type $mol_tree2_path =\n\t\tArray< string | number | null >\n\t\n\t/** Hask tool for processing node. */\n\texport type $mol_tree2_hack< Context > =\n\t\t(\n\t\t\tinput : $mol_tree2 ,\n\t\t\tbelt : $mol_tree2_belt< Context > ,\n\t\t\tcontext : Context ,\n\t\t)=> readonly $mol_tree2[]\n\n\t/** Collection of hask tools for processing tree. */\n\texport type $mol_tree2_belt< Context > =\n\t\tRecord< string , $mol_tree2_hack< Context > >\n\n\t/**\n\t * Abstract Syntax Tree with human readable serialization.\n\t * Avoid direct instantiation. Use static factories instead.\n\t * @see https://github.com/nin-jin/tree.d\n\t */\n\texport class $mol_tree2 extends Object {\n\t\t\n\t\tconstructor(\n\n\t\t\t/** Type of structural node, `value` should be empty */\n\t\t\treadonly type : string,\n\t\t\t\n\t\t\t/** Content of data node, `type` should be empty */\n\t\t\treadonly value : string,\n\n\t\t\t/** Child nodes */\n\t\t\treadonly kids : readonly $mol_tree2[],\n\t\t\t\n\t\t\t/** Position in most far source resource */\n\t\t\treadonly span : $mol_span,\n\n\t\t) {\n\t\t\tsuper()\n\t\t\t;(this as any)[ Symbol.toStringTag ] = type || '\\\\' + value\n\t\t}\n\n\t\t/** Makes collection node. */\n\t\tstatic list(\n\t\t\tkids : readonly $mol_tree2[] ,\n\t\t\tspan = $mol_span.unknown ,\n\t\t) {\n\t\t\treturn new $mol_tree2( '' , '' , kids , span )\n\t\t}\n\t\t\n\t\t/** Makes new derived collection node. */\n\t\tlist(\n\t\t\tkids : readonly $mol_tree2[] ,\n\t\t) {\n\t\t\treturn $mol_tree2.list( kids , this.span )\n\t\t}\n\n\t\t/** Makes data node for any string. */\n\t\tstatic data(\n\t\t\tvalue : string ,\n\t\t\tkids = [] as readonly $mol_tree2[] ,\n\t\t\tspan = $mol_span.unknown ,\n\t\t) {\n\n\t\t\tconst chunks = value.split( '\\n' )\n\n\t\t\tif( chunks.length > 1 ) {\n\t\t\t\n\t\t\t\tlet kid_span = span.span( span.row , span.col , 0 )\n\n\t\t\t\tconst data = chunks.map( chunk => {\n\t\t\t\t\tkid_span = kid_span.after( chunk.length )\n\t\t\t\t\treturn new $mol_tree2( '' , chunk , [] , kid_span )\n\t\t\t\t} )\n\n\t\t\t\tkids = [ ... data , ... kids ]\n\n\t\t\t\tvalue = ''\n\n\t\t\t}\n\n\t\t\treturn new $mol_tree2( '' , value , kids , span )\n\n\t\t}\n\t\t\n\t\t/** Makes new derived data node. */\n\t\tdata(\n\t\t\tvalue : string ,\n\t\t\tkids = [] as readonly $mol_tree2[] ,\n\t\t) {\n\t\t\treturn $mol_tree2.data( value , kids , this.span )\n\t\t}\n\t\t\n\t\t/** Makes struct node. */\n\t\tstatic struct(\n\t\t\ttype : string ,\n\t\t\tkids = [] as readonly $mol_tree2[] ,\n\t\t\tspan = $mol_span.unknown ,\n\t\t) {\n\n\t\t\tif( /[ \\n\\t\\\\]/.test( type ) ) {\n\t\t\t\t$$.$mol_fail( span.error( `Wrong type ${ JSON.stringify( type ) }` ) )\n\t\t\t}\n\n\t\t\treturn new $mol_tree2( type , '' , kids , span )\n\n\t\t}\n\t\t\n\t\t/** Makes new derived structural node. */\n\t\tstruct(\n\t\t\ttype : string ,\n\t\t\tkids = [] as readonly $mol_tree2[] ,\n\t\t) {\n\t\t\treturn $mol_tree2.struct( type , kids , this.span )\n\t\t}\n\n\t\t/** Makes new derived node with different kids id defined. */\n\t\tclone( kids : readonly $mol_tree2[], span = this.span ) {\n\t\t\treturn new $mol_tree2( this.type , this.value , kids , span )\n\t\t}\n\n\t\t/** Returns multiline text content. */\n\t\ttext() {\n\n\t\t\tvar values : string[] = []\n\t\t\t\n\t\t\tfor( var kid of this.kids ) {\n\t\t\t\tif( kid.type ) continue\n\t\t\t\tvalues.push( kid.value )\n\t\t\t}\n\t\t\t\n\t\t\treturn this.value + values.join( '\\n' )\n\n\t\t}\n\t\t\n\t\t/** Parses tree format. */\n\t\t/** @deprecated Use $mol_tree2_from_string */\n\t\tstatic fromString( str : string , uri = 'unknown' ) {\n\t\t\treturn $$.$mol_tree2_from_string( str, uri )\n\t\t}\n\n\t\t/** Serializes to tree format. */\n\t\ttoString() : string {\n\t\t\treturn $$.$mol_tree2_to_string( this )\n\t\t}\n\t\t\n\t\t/** Makes new tree with node overrided by path. */\n\t\tinsert( value : $mol_tree2 | null , ...path : $mol_tree2_path ) : $mol_tree2 {\n\n\t\t\tif( path.length === 0 ) return value!\n\t\t\t\n\t\t\tconst type = path[0]\n\t\t\tif( typeof type === 'string' ) {\n\n\t\t\t\tlet replaced = false\n\t\t\t\tconst sub = this.kids.map( ( item , index )=> {\n\t\t\t\t\tif( item.type !== type ) return item\n\t\t\t\t\treplaced = true\n\t\t\t\t\treturn item.insert( value , ... path.slice( 1 ) )\n\t\t\t\t} ).filter( Boolean )\n\t\t\t\t\n\t\t\t\tif( !replaced && value ) {\n\t\t\t\t\tsub.push( this.struct( type , [] ).insert( value , ... path.slice( 1 ) ) )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn this.clone( sub )\n\n\t\t\t} else if( typeof type === 'number' ) {\n\t\t\t\t\n\t\t\t\tconst sub = this.kids.slice()\n\t\t\t\tsub[ type ] = ( sub[ type ] || this.list([]) )\n\t\t\t\t\t.insert( value , ... path.slice( 1 ) )\n\t\t\t\t\n\t\t\t\treturn this.clone( sub.filter( Boolean ) )\n\n\t\t\t} else {\n\t\t\t\t\n\t\t\t\tconst kids = ( ( this.kids.length === 0 ) ? [ this.list([]) ] : this.kids )\n\t\t\t\t.map( item => item.insert( value , ... path.slice( 1 ) ) )\n\t\t\t\t.filter( Boolean )\n\n\t\t\t\treturn this.clone( kids )\n\n\t\t\t}\n\n\t\t}\n\n\t\t/** Query nodes by path. */\n\t\tselect( ...path : $mol_tree2_path ) {\n\n\t\t\tlet next = [ this as $mol_tree2 ]\n\n\t\t\tfor( const type of path ) {\n\n\t\t\t\tif( !next.length ) break\n\t\t\t\t\n\t\t\t\tconst prev = next\n\t\t\t\tnext = []\n\n\t\t\t\tfor( var item of prev ) {\n\n\t\t\t\t\tswitch( typeof( type ) ) {\n\n\t\t\t\t\t\tcase 'string' :\n\n\t\t\t\t\t\t\tfor( var child of item.kids ) {\n\t\t\t\t\t\t\t\tif( child.type == type ) {\n\t\t\t\t\t\t\t\t\tnext.push( child )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\n\t\t\t\t\t\tcase 'number' :\n\n\t\t\t\t\t\t\tif( type < item.kids.length ) next.push( item.kids[ type ] )\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\n\t\t\t\t\t\tdefault : next.push( ... item.kids )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn this.list( next )\n\t\t\t\n\t\t}\n\t\t\n\t\t/** Filter kids by path or value. */\n\t\tfilter( path : string[] , value? : string ) {\n\n\t\t\tconst sub = this.kids.filter( item => {\n\t\t\t\t\t\n\t\t\t\tvar found = item.select( ...path )\n\t\t\t\t\n\t\t\t\tif( value === undefined ) {\n\t\t\t\t\treturn Boolean( found.kids.length )\n\t\t\t\t} else {\n\t\t\t\t\treturn found.kids.some( child => child.value == value )\n\t\t\t\t}\n\t\t\t\n\t\t\t} )\n\t\t\t\n\t\t\treturn this.clone( sub )\n\n\t\t}\n\n\t\thack_self< Context extends { span?: $mol_span; [ key: string ]: unknown } = {} >(\n\t\t\tbelt: $mol_tree2_belt< Context >,\n\t\t\tcontext = {} as Context,\n\t\t) {\n\t\t\tlet handle = belt[ this.type ] || belt[ '' ]\n\t\t\t\t\n\t\t\tif( !handle || handle === Object.prototype[ this.type as keyof Object ] ) {\n\t\t\t\thandle = ( input, belt, context )=> [\n\t\t\t\t\tinput.clone( input.hack( belt, context ), context.span )\n\t\t\t\t]\n\t\t\t}\n\t\t\t\n\t\t\ttry {\n\t\t\t\treturn handle( this , belt , context! )\n\t\t\t} catch( error: any ) {\n\t\t\t\terror.message += `\\n${ this.clone([]) }${ this.span }`\n\t\t\t\t$mol_fail_hidden( error )\n\t\t\t}\n\t\t}\n\n\t\t/** Transform tree through context with transformers */\n\t\thack< Context extends { span?: $mol_span; [ key: string ]: unknown } = {} >(\n\t\t\tbelt: $mol_tree2_belt< Context >,\n\t\t\tcontext = {} as Context,\n\t\t) {\n\t\t\treturn ( [] as readonly $mol_tree2[] ).concat(\n\t\t\t\t... this.kids.map( child => child.hack_self(belt, context) )\n\t\t\t)\n\n\t\t}\n\n\t\t/** Makes Error with node coordinates. */\n\t\terror( message : string , Class = Error ) {\n\t\t\treturn this.span.error( `${ message }\\n${ this.clone([]) }` , Class )\n\t\t}\n\n\t}\n\n\texport class $mol_tree2_empty extends $mol_tree2 {\n\t\tconstructor() {\n\t\t\tsuper( '' , '' , [] , $mol_span.unknown )\n\t\t}\n\t}\n\t\n}\n","namespace $ {\n\n\t/** Syntax error with cordinates and source line snippet. */\n\texport class $mol_error_syntax extends SyntaxError {\n\t\tconstructor (\n\t\t\tpublic reason: string,\n\t\t\tpublic line: string,\n\t\t\tpublic span: $mol_span,\n\t\t) {\n\t\t\tsuper(`${ reason }\\n${ span }\\n${ line.substring( 0 , span.col - 1 ).replace( /\\S/g, ' ' ) }${ ''.padEnd( span.length, '!' ) }\\n${ line }`)\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\t/** Parses tree format from string. */\n\texport function $mol_tree2_from_string(\n\t\tthis: $,\n\t\tstr: string,\n\t\turi = '?',\n\t) : $mol_tree2 {\n\n\t\tconst span = $mol_span.entire( uri, str )\n\n\t\tvar root = $mol_tree2.list( [], span )\n\t\tvar stack = [ root ]\n\n\t\tvar pos = 0, row = 0, min_indent = 0\n\t\t\n\t\twhile( str.length > pos ) {\n\n\t\t\tvar indent = 0\n\t\t\tvar line_start = pos\n\n\t\t\trow++\n\n\t\t\t// read indent\n\t\t\twhile( str.length > pos && str[ pos ] == '\\t' ) {\n\t\t\t\tindent++\n\t\t\t\tpos++\n\t\t\t}\n\n\t\t\tif( ! root.kids.length ) {\n\t\t\t\tmin_indent = indent\n\t\t\t}\n\n\t\t\tindent -= min_indent\n\n\t\t\t// invalid tab size\n\t\t\tif( indent < 0 || indent >= stack.length ) {\n\n\t\t\t\tconst sp = span.span( row, 1, pos - line_start )\n\n\t\t\t\t// skip error line\n\t\t\t\twhile( str.length > pos && str[ pos ] != '\\n' ) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\n\t\t\t\tif( indent < 0 ) {\n\t\t\t\t\tif( str.length > pos ) {\n\t\t\t\t\t\tthis.$mol_fail( new this.$mol_error_syntax(\n\t\t\t\t\t\t\t`Too few tabs`,\n\t\t\t\t\t\t\tstr.substring( line_start, pos ),\n\t\t\t\t\t\t\tsp,\n\t\t\t\t\t\t) )\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.$mol_fail( new this.$mol_error_syntax(\n\t\t\t\t\t\t`Too many tabs`,\n\t\t\t\t\t\tstr.substring( line_start, pos ),\n\t\t\t\t\t\tsp,\n\t\t\t\t\t) )\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t\tstack.length = indent + 1\n\t\t\tvar parent = stack[ indent ]\n\n\t\t\t// parse types\n\t\t\twhile( str.length > pos && str[ pos ] != '\\\\' && str[ pos ] != '\\n' ) {\n\n\t\t\t\t// type can not contain space and tab\n\t\t\t\tvar error_start = pos\n\t\t\t\twhile( str.length > pos && ( str[ pos ] == ' ' || str[ pos ] == '\\t' ) ) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\n\t\t\t\tif( pos > error_start ) {\n\t\t\t\t\tlet line_end = str.indexOf( '\\n' , pos )\n\t\t\t\t\tif( line_end === -1 ) line_end = str.length\n\t\t\t\t\tconst sp = span.span( row, error_start - line_start + 1, pos - error_start )\n\t\t\t\t\tthis.$mol_fail( new this.$mol_error_syntax(\n\t\t\t\t\t\t`Wrong nodes separator`,\n\t\t\t\t\t\tstr.substring( line_start, line_end ),\n\t\t\t\t\t\tsp,\n\t\t\t\t\t) )\n\t\t\t\t}\n\n\t\t\t\t// read type\n\t\t\t\tvar type_start = pos\n\t\t\t\twhile( \n\t\t\t\t\tstr.length > pos && \n\t\t\t\t\tstr[ pos ] != '\\\\' && \n\t\t\t\t\tstr[ pos ] != ' ' && \n\t\t\t\t\tstr[ pos ] != '\\t' && \n\t\t\t\t\tstr[ pos ] != '\\n'\n\t\t\t\t) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\t\t\t\tif( pos > type_start ) {\n\t\t\t\t\tlet next = new $mol_tree2(\n\t\t\t\t\t\tstr.slice( type_start , pos ),\n\t\t\t\t\t\t'',\n\t\t\t\t\t\t[],\n\t\t\t\t\t\tspan.span( row, type_start - line_start + 1, pos - type_start ),\n\t\t\t\t\t)\n\t\t\t\t\tconst parent_kids = parent.kids as $mol_tree2[]\n\t\t\t\t\tparent_kids.push( next )\n\t\t\t\t\tparent = next\n\t\t\t\t}\n\n\t\t\t\t// read one space if exists\n\t\t\t\tif( str.length > pos && str[ pos ] == ' ' ) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// read data\n\t\t\tif( str.length > pos && str[ pos ] == '\\\\' ) {\n\t\t\t\tvar data_start = pos\n\t\t\t\twhile( str.length > pos && str[ pos ] != '\\n' ) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\t\t\t\tlet next = new $mol_tree2(\n\t\t\t\t\t'',\n\t\t\t\t\tstr.slice( data_start + 1 , pos ),\n\t\t\t\t\t[],\n\t\t\t\t\tspan.span( row, data_start - line_start + 2, pos - data_start - 1 ),\n\t\t\t\t)\n\t\t\t\tconst parent_kids = parent.kids as $mol_tree2[]\n\t\t\t\tparent_kids.push( next )\n\t\t\t\tparent = next\n\t\t\t}\n\n\t\t\t// now must be end of text\n\t\t\tif( str.length === pos && stack.length > 0 ) {\n\t\t\t\tconst sp = span.span( row, pos - line_start + 1, 1 )\n\t\t\t\tthis.$mol_fail( new this.$mol_error_syntax(\n\t\t\t\t\t`Unexpected EOF, LF required`,\n\t\t\t\t\tstr.substring( line_start, str.length ),\n\t\t\t\t\tsp,\n\t\t\t\t) )\n\t\t\t}\n\n\t\t\tstack.push( parent )\n\t\t\tpos++\n\t\t}\n\n\t\treturn root\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_tree2_from_json( json: any, span = $mol_span.unknown ): $mol_tree2 {\n\n\t\tif( typeof json === 'boolean' || typeof json === 'number' || json === null ) {\n\t\t\treturn new $mol_tree2( String( json ) , '' , [] , span )\n\t\t}\n\t\t\n\t\tif( typeof json === 'string' ) {\n\t\t\treturn $mol_tree2.data( json , [], span )\n\t\t}\n\n\t\tif( Array.isArray( json ) ) {\n\t\t\tconst sub = json.map( json => $mol_tree2_from_json( json , span ) )\n\t\t\treturn new $mol_tree2( '/' , '', sub, span )\n\t\t}\n\t\t\n\t\tif( ArrayBuffer.isView( json ) ) {\n\t\t\tconst buf = new Uint8Array( json.buffer, json.byteOffset, json.byteLength )\n\t\t\treturn $mol_tree2.data( String.fromCharCode( ... buf ) , [], span )\n\t\t}\n\t\t\t\n\t\tif( json instanceof Date ) {\n\t\t\treturn new $mol_tree2( '', json.toISOString() , [] , span )\n\t\t}\n\n\t\tif( typeof json.toJSON === 'function' ) {\n\t\t\treturn $mol_tree2_from_json( json.toJSON() )\n\t\t}\n\n\t\tif( json.toString !== Object.prototype.toString ) {\n\t\t\treturn $mol_tree2.data( json.toString() , [], span )\n\t\t}\n\n\t\tif( json instanceof Error ) {\n\t\t\tconst { name , message , stack } = json\n\t\t\tjson = { ... json, name, message, stack }\n\t\t}\n\n\t\tconst sub = [] as $mol_tree2[]\n\t\t\n\t\tfor( var key in json ) {\n\n\t\t\tconst val = json[ key ]\n\n\t\t\tif( val === undefined ) continue\n\n\t\t\tconst subsub = $mol_tree2_from_json( val, span )\n\t\t\t\n\t\t\tif( /^[^\\n\\t\\\\ ]+$/.test( key ) ) {\n\t\t\t\tsub.push( new $mol_tree2( key, '', [ subsub ], span ) )\n\t\t\t} else {\n\t\t\t\tsub.push( $mol_tree2.data( key, [ subsub ], span ) )\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\treturn new $mol_tree2( '*' , '', sub , span )\n\t\t\t\n\t}\n\n}\n","namespace $ {\n\t\n\t/** Module for working with terminal. Text coloring when output in terminal */\n\texport class $mol_term_color {\n\t\t\n\t\tstatic reset = this.ansi( 0, 0 )\n\t\tstatic bold = this.ansi( 1, 22 )\n\t\tstatic italic = this.ansi( 3, 23 )\n\t\tstatic underline = this.ansi( 4, 24 )\n\t\tstatic inverse = this.ansi( 7, 27 )\n\t\tstatic hidden = this.ansi( 8, 28 )\n\t\tstatic strike = this.ansi( 9, 29 )\n\t\t\n\t\tstatic gray = this.ansi( 90, 39 )\n\t\tstatic red = this.ansi( 91, 39 )\n\t\tstatic green = this.ansi( 92, 39 )\n\t\tstatic yellow = this.ansi( 93, 39 )\n\t\tstatic blue = this.ansi( 94, 39 )\n\t\tstatic magenta = this.ansi( 95, 39 )\n\t\tstatic cyan = this.ansi( 96, 39 )\n\t\t\n\t\tstatic Gray = ( str: string )=> this.inverse( this.gray( str ) )\n\t\tstatic Red = ( str: string )=> this.inverse( this.red( str ) )\n\t\tstatic Green = ( str: string )=> this.inverse( this.green( str ) )\n\t\tstatic Yellow = ( str: string )=> this.inverse( this.yellow( str ) )\n\t\tstatic Blue = ( str: string )=> this.inverse( this.blue( str ) )\n\t\tstatic Magenta = ( str: string )=> this.inverse( this.magenta( str ) )\n\t\tstatic Cyan = ( str: string )=> this.inverse( this.cyan( str ) )\n\t\t\n\t\tstatic ansi( open: number, close: number ) {\n\t\n\t\t\tif( typeof process === 'undefined' ) return String\n\t\t\tif( !process.stdout.isTTY ) return String\n\t\t\n\t\t\tconst prefix = `\\x1b[${open}m`\n\t\t\tconst postfix = `\\x1b[${close}m`\n\t\t\t\n\t\t\tconst suffix_regexp = new RegExp( postfix.replace( '[', '\\\\[' ), 'g' )\n\t\t\n\t\t\treturn function colorer( str: string ) {\n\t\t\n\t\t\t\tstr = String( str )\n\t\t\t\tif( str === '' ) return str\n\t\t\n\t\t\t\tconst suffix = str.replace( suffix_regexp, prefix )\n\t\t\t\treturn prefix + suffix + postfix\n\t\t\n\t\t\t}\n\t\t\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_log3_node_make(\n\t\tlevel : keyof Console ,\n\t\toutput : 'stdout' | 'stderr',\n\t\ttype : string ,\n\t\tcolor: ( str: string )=> string ,\n\t) {\n\n\t\treturn function $mol_log3_logger(\n\t\t\tthis : $ ,\n\t\t\tevent : $mol_log3_event<{}> ,\n\t\t) {\n\n\t\t\tif( !event.time ) event = { time : new Date().toISOString() , ... event }\n\n\t\t\tlet tree = this.$mol_tree2_from_json( event )\n\t\t\ttree = tree.struct( type, tree.kids )\n\t\t\t\n\t\t\tlet str = color( tree.toString() )\n\t\t\t;( this.console[ level ] as any )( str )\n\t\n\t\t\tconst self = this\n\t\t\treturn ()=> self.console.groupEnd()\n\n\t\t}\n\n\t}\n\n\t$.$mol_log3_come = $mol_log3_node_make( 'info' , 'stdout' , 'come' , $mol_term_color.blue )\n\t$.$mol_log3_done = $mol_log3_node_make( 'info' , 'stdout' , 'done' , $mol_term_color.green )\n\t$.$mol_log3_fail = $mol_log3_node_make( 'error' , 'stderr' , 'fail' , $mol_term_color.red )\n\t$.$mol_log3_warn = $mol_log3_node_make( 'warn' , 'stderr' , 'warn' , $mol_term_color.yellow )\n\t$.$mol_log3_rise = $mol_log3_node_make( 'log' , 'stdout' , 'rise' , $mol_term_color.magenta )\n\t$.$mol_log3_area = $mol_log3_node_make( 'log' , 'stdout' , 'area' , $mol_term_color.cyan )\n\n}\n","namespace $ {\n\t\n\t/** One-shot fiber */\n\texport class $mol_wire_task<\n\t\tHost,\n\t\tArgs extends readonly unknown[],\n\t\tResult,\n\t> extends $mol_wire_fiber< Host, Args, Result > {\n\t\t\n\t\tstatic getter<\n\t\t\tHost,\n\t\t\tArgs extends readonly unknown[],\n\t\t\tResult,\n\t\t>(\n\t\t\ttask: ( this : Host , ... args : Args )=> Result,\n\t\t): ( host: Host, args: Args )=> $mol_wire_task< Host, Args, Result > {\n\t\t\t\n\t\t\treturn function $mol_wire_task_get( host: Host, args: Args ) {\n\t\t\t\t\n\t\t\t\tconst sub = $mol_wire_auto()\n\t\t\t\tconst existen = sub?.track_next() as $mol_wire_task< Host, Args, Result > | undefined\n\t\t\t\t\n\t\t\t\treuse: if( existen ) {\n\t\t\t\t\t\n\t\t\t\t\tif( !existen.temp ) break reuse\n\t\t\t\t\t\n\t\t\t\t\tif( existen.host !== host ) break reuse\n\t\t\t\t\tif( existen.task !== task ) break reuse\n\t\t\t\t\tif( !$mol_compare_deep( existen.args, args ) ) break reuse\n\t\t\t\t\t\n\t\t\t\t\treturn existen\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tconst next = new $mol_wire_task( `${ (host as any)?.[ Symbol.toStringTag ] ?? host }.${ task.name }<#>`, task, host, args )\n\t\t\t\t\n\t\t\t\t// Disabled because non-idempotency is required for try-catch\n\t\t\t\tif( existen?.temp ) {\n\t\t\t\t\t$$.$mol_log3_warn({\n\t\t\t\t\t\tplace: '$mol_wire_task',\n\t\t\t\t\t\tmessage: `Non idempotency`,\n\t\t\t\t\t\texisten,\n\t\t\t\t\t\tnext,\n\t\t\t\t\t\thint: 'Ignore it',\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn next\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tget temp() {\n\t\t\treturn true\n\t\t}\n\t\t\n\t\tcomplete() {\n\t\t\tif( $mol_promise_like( this.cache ) ) return\n\t\t\tthis.destructor()\n\t\t}\n\t\t\n\t\tput( next: Result | Error | Promise< Result | Error > ) {\n\t\t\t\n\t\t\tconst prev = this.cache\n\t\t\tthis.cache = next\n\t\t\t\n\t\t\tif( $mol_promise_like( next ) ) {\n\t\t\t\t\n\t\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\tif( next !== prev ) this.emit()\n\t\t\t\t\n\t\t\t\treturn next\n\t\t\t}\n\t\t\t\n\t\t\tthis.cursor = $mol_wire_cursor.final\n\t\t\t\n\t\t\tif( this.sub_empty ) this.destructor()\n\t\t\telse if( next !== prev ) this.emit()\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\t\n\t/**\n\t * Decorates method to fiber to ensure it is executed only once inside other fiber.\n\t */\n\texport function $mol_wire_method<\n\t\tHost extends object,\n\t\tArgs extends readonly any[],\n\t>(\n\t\thost : Host,\n\t\tfield : PropertyKey,\n\t\tdescr? : TypedPropertyDescriptor< ( ... args: Args )=> any >,\n\t) {\n\t\t\n\t\tif( !descr ) descr = Reflect.getOwnPropertyDescriptor( host , field ) as any\n\t\tconst orig = descr?.value! ?? (host as any)[ field ]\n\t\t\n\t\tconst sup = Reflect.getPrototypeOf( host )!\t\n\t\tif( typeof (sup as any)[ field ] === 'function' ) {\n\t\t\tObject.defineProperty( orig , 'name' , { value : (sup as any)[ field ].name } )\n\t\t}\n\t\t\n\t\tconst temp = $mol_wire_task.getter( orig )\n\t\tconst value = function( this: Host, ... args: Args ) {\n\t\t\tconst fiber = temp( this ?? null as any, args )\n\t\t\treturn fiber.sync()\n\t\t}\n\t\t\n\t\tObject.defineProperty( value , 'name' , { value : orig.name + ' ' } )\n\t\t\n\t\tObject.assign( value, { orig } )\n\t\tconst descr2 = { ... descr, value }\n\t\tReflect.defineProperty( host, field, descr2 )\n\t\t\n\t\treturn descr2\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\tconst catched = new WeakMap< any , boolean >()\n\n\texport function $mol_fail_catch( error: unknown ) {\n\t\t\n\t\tif( typeof error !== 'object' ) return false\n\t\tif( $mol_promise_like( error ) ) $mol_fail_hidden( error )\n\t\tif( catched.get( error ) ) return false\n\t\t\n\t\tcatched.set( error , true )\n\t\treturn true\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_fail_log( error: unknown ) {\n\t\t\n\t\tif( $mol_promise_like( error ) ) return false\n\t\tif( !$mol_fail_catch( error ) ) return false\n\t\t\n\t\tconsole.error( error )\n\t\t\n\t\treturn true\n\t\t\n\t}\n\n}\n","namespace $ {\n\n\t/** Long-living fiber. */\n\texport class $mol_wire_atom<\n\t\tHost,\n\t\tArgs extends readonly unknown[],\n\t\tResult,\n\t> extends $mol_wire_fiber< Host, Args, Result > {\n\n\t\tstatic solo<\n\t\t\tHost,\n\t\t\tArgs extends readonly unknown[],\n\t\t\tResult,\n\t\t>(\n\t\t\thost: Host,\n\t\t\ttask: ( this: Host, ... args: Args )=> Result,\n\t\t): $mol_wire_atom< Host, Args, Result > {\n\t\t\t\n\t\t\tconst field = task.name + '<>'\n\t\t\t\n\t\t\tconst existen = Object.getOwnPropertyDescriptor( host ?? task, field )?.value\n\t\t\tif( existen ) return existen\n\t\t\t\n\t\t\tconst prefix = (host as any)?.[ Symbol.toStringTag ] ?? ( host instanceof Function ? $$.$mol_func_name( host ) : host )\n\t\t\tconst key = `${ prefix }.${ field }`\n\t\t\t\n\t\t\tconst fiber = new $mol_wire_atom( key, task, host, [] as any as Args )\n\t\t\t;( host as any ?? task )[ field ] = fiber\n\t\t\t\n\t\t\treturn fiber\n\t\t}\n\t\t\n\t\tstatic plex<\n\t\t\tHost,\n\t\t\tArgs extends readonly unknown[],\n\t\t\tResult,\n\t\t>(\n\t\t\thost: Host,\n\t\t\ttask: ( this: Host , ... args: Args )=> Result,\n\t\t\tkey: Args[0],\n\t\t): $mol_wire_atom< Host, Args, Result > {\n\t\t\t\n\t\t\tconst field = task.name + '<>'\n\t\t\tlet dict = Object.getOwnPropertyDescriptor( host ?? task, field )?.value\n\t\t\tconst prefix = (host as any)?.[ Symbol.toStringTag ] ?? ( host instanceof Function ? $$.$mol_func_name( host ) : host )\n\t\t\tconst key_str = $mol_key( key )\n\t\t\t\n\t\t\tif( dict ) {\n\t\t\t\tconst existen = dict.get( key_str )\n\t\t\t\tif( existen ) return existen\n\t\t\t} else {\n\t\t\t\tdict = ( host as any ?? task )[ field ] = new Map()\n\t\t\t}\n\t\t\t\n\t\t\tconst id = `${ prefix }.${ task.name }<${ key_str.replace( /^\"|\"$/g, \"'\" ) }>`\n\t\t\tconst fiber = new $mol_wire_atom( id, task, host, [ key ] as any as Args )\n\t\t\tdict.set( key_str, fiber )\n\t\t\t\n\t\t\treturn fiber\n\t\t}\n\t\t\n\t\tstatic watching = new Set< $mol_wire_atom< any, any, any > >()\n\t\tstatic watcher = null as $mol_after_frame | null\n\t\t\n\t\tstatic watch() {\n\t\t\n\t\t\t$mol_wire_atom.watcher = new $mol_after_frame( $mol_wire_atom.watch )\n\t\t\t\n\t\t\tfor( const atom of $mol_wire_atom.watching ) {\n\t\t\t\t\n\t\t\t\tif( atom.cursor === $mol_wire_cursor.final ) {\n\t\t\t\t\t$mol_wire_atom.watching.delete( atom )\n\t\t\t\t} else {\n\t\t\t\t\tatom.cursor = $mol_wire_cursor.stale\n\t\t\t\t\tatom.fresh()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\twatch() {\n\t\t\t\n\t\t\tif( !$mol_wire_atom.watcher ) {\n\t\t\t\t$mol_wire_atom.watcher = new $mol_after_frame( $mol_wire_atom.watch )\n\t\t\t}\n\t\t\t\n\t\t\t$mol_wire_atom.watching.add( this )\n\t\t\t\n\t\t}\n\t\t\n\t\t/**\n\t\t * Update fiber value through another temp fiber.\n\t\t */\n\t\t@ $mol_wire_method\n\t\tresync( args: Args ) {\n\t\t\treturn this.put( this.task.call( this.host!, ... args ) )\n\t\t}\n\t\t\n\t\t@ $mol_wire_method\n\t\tonce() {\n\t\t\treturn this.sync()\n\t\t}\n\t\t\n\t\tchannel() {\n\t\t\treturn Object.assign( ( next?: $mol_type_foot< Args > )=> {\n\t\t\t\t\t\n\t\t\t\tif( next !== undefined ) return this.resync( [ ... this.args, next ] as any ) as never\n\t\t\t\tif( !$mol_wire_fiber.warm ) return this.result() as never\n\t\t\t\t\n\t\t\t\tif( $mol_wire_auto()?.temp ) {\n\t\t\t\t\treturn this.once()\n\t\t\t\t} else {\n\t\t\t\t\treturn this.sync()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}, { atom: this as $mol_wire_atom< Host, Args, Result > } )\n\t\t}\n\t\t\n\t\tdestructor() {\n\t\t\t\n\t\t\tsuper.destructor()\n\t\t\t\n\t\t\tconst prev = this.cache\n\t\t\tif( $mol_owning_check( this, prev ) ) {\n\t\t\t\tprev.destructor()\n\t\t\t}\n\t\t\t\n\t\t\tif( this.pub_from === 0 ) {\n\t\t\t\t;( this.host as any ?? this.task )[ this.field() ] = null\n\t\t\t} else {\n\t\t\t\t;( this.host as any ?? this.task )[ this.field() ].delete( $mol_key( this.args[0] ) )\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\tput( next: Result | Error | Promise< Result | Error > ) {\n\t\t\t\n\t\t\tconst prev = this.cache\n\t\t\t\n\t\t\tupdate: if( next !== prev ) {\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\tif( $mol_compare_deep( prev, next ) ) break update\n\t\t\t\t} catch( error: any ) {\n\t\t\t\t\t$mol_fail_log( error )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_owning_check( this, prev ) ) {\n\t\t\t\t\tprev.destructor()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_owning_catch( this, next ) ) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\t(next as any)[ Symbol.toStringTag ] = (this as any)[ Symbol.toStringTag ]\n\t\t\t\t\t} catch { // Promises throw in strict mode\n\t\t\t\t\t\tObject.defineProperty( next, Symbol.toStringTag, { value: (this as any)[ Symbol.toStringTag ] } )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( !this.sub_empty ) this.emit()\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tthis.cache = next\n\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\n\t\t\tif( $mol_promise_like( next ) ) return next\n\t\t\t\n\t\t\tthis.complete_pubs()\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n\t\n\t/** Decorates solo object channel to [mol_wire_atom](../atom/atom.ts). */\n\texport function $mol_wire_solo< Args extends any[] >(\n\t\thost: object,\n\t\tfield: string,\n\t\tdescr?: TypedPropertyDescriptor< ( ... args: Args )=> any >\n\t) {\n\n\t\tif( !descr ) descr = Reflect.getOwnPropertyDescriptor( host , field )\n\t\tconst orig = descr?.value! ?? (host as any)[ field ]\n\t\t\n\t\tconst sup = Reflect.getPrototypeOf( host )!\n\t\tif( typeof (sup as any)[ field ] === 'function' ) {\n\t\t\tObject.defineProperty( orig , 'name' , { value : (sup as any)[ field ].name } )\n\t\t}\n\t\t\n\t\tconst descr2 = {\n\t\t\t... descr,\n\t\t\tvalue: function( this: typeof host, ... args: Args ){\n\t\t\t\n\t\t\t\tlet atom = $mol_wire_atom.solo( this, orig )\n\t\t\t\t\n\t\t\t\tif(( args.length === 0 )||( args[0] === undefined )) {\n\t\t\t\t\t\n\t\t\t\t\tif( !$mol_wire_fiber.warm ) return atom.result()\n\t\t\t\t\t\n\t\t\t\t\tif( $mol_wire_auto()?.temp ) {\n\t\t\t\t\t\treturn atom.once()\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn atom.sync()\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn atom.resync( args )\t\n\t\t\t}\n\t\t}\n\t\t\n\t\tReflect.defineProperty( descr2.value , 'name' , { value : orig.name + ' ' } )\n\t\tReflect.defineProperty( descr2.value , 'length' , { value : orig.length } )\n\t\tObject.assign( descr2.value, { orig } )\n\t\t\n\t\tReflect.defineProperty( host, field, descr2 )\n\t\t\n\t\treturn descr2 as any as TypedPropertyDescriptor< ( ... args: First_optional< Args > )=> any >\n\t}\n\n\ttype First_optional< Args extends any[] > = Args extends []\n\t\t? []\n\t\t: [ Args[0] | undefined, ... $mol_type_tail< Args > ]\n\n}\n","namespace $ {\n\t\n\t/** Reactive memoizing multiplexed property decorator. */\n\texport function $mol_wire_plex< Args extends [ any, ... any[] ] >(\n\t\thost: object,\n\t\tfield: string,\n\t\tdescr?: TypedPropertyDescriptor< ( ... args: Args )=> any >\n\t) {\n\n\t\tif( !descr ) descr = Reflect.getOwnPropertyDescriptor( host , field )\n\t\tconst orig = descr?.value! ?? (host as any)[ field ]\n\t\t\n\t\tconst sup = Reflect.getPrototypeOf( host )!\n\t\tif( typeof (sup as any)[ field ] === 'function' ) {\n\t\t\tObject.defineProperty( orig , 'name' , { value : (sup as any)[ field ].name } )\n\t\t}\n\t\t\n\t\tconst descr2 = {\n\t\t\t... descr,\n\t\t\tvalue: function( this: typeof host, ... args: Args ) {\n\t\t\t\n\t\t\t\tlet atom = $mol_wire_atom.plex( this, orig, args[0] )\n\t\t\t\t\n\t\t\t\tif(( args.length === 1 )||( args[1] === undefined )) {\n\t\t\t\t\t\n\t\t\t\t\tif( !$mol_wire_fiber.warm ) return atom.result()\n\t\t\t\t\t\n\t\t\t\t\tif( $mol_wire_auto()?.temp ) {\n\t\t\t\t\t\treturn atom.once()\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn atom.sync()\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn atom.resync( args )\t\n\t\t\t}\n\t\t}\n\t\t\n\t\tReflect.defineProperty( descr2.value , 'name' , { value : orig.name + ' ' } )\n\t\tReflect.defineProperty( descr2.value , 'length' , { value : orig.length } )\n\t\tObject.assign( descr2.value, { orig } )\n\t\t\n\t\tReflect.defineProperty( host, field, descr2 )\n\t\t\n\t\treturn descr2\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Reactive memoizing solo property decorator from [mol_wire](../wire/README.md)\n\t * @example\n\t * '@' $mol_mem\n\t * name(next?: string) {\n\t * \treturn next ?? 'default'\n\t * }\n\t * @see https://mol.hyoo.ru/#!section=docs/=qxmh6t_sinbmb\n\t */\n\texport let $mol_mem = $mol_wire_solo\n\n\t/**\n\t * Reactive memoizing multiplexed property decorator [mol_wire](../wire/README.md)\n\t * @example\n\t * '@' $mol_mem_key\n\t * name(id: number, next?: string) {\n\t * return next ?? 'default'\n\t * }\n\t * @see https://mol.hyoo.ru/#!section=docs/=qxmh6t_sinbmb\n\t */\n\texport let $mol_mem_key = $mol_wire_plex\n}\n","namespace $ {\n\t\n\texport var $mol_dom_context : typeof globalThis\n\t\n}\n","interface $node {\n\t[key:string]: any\n}\n\nvar $node = new Proxy( { require } as any , {\n\t\n\tget( target , name : string , wrapper ) {\n\n\t\tif( target[ name ] ) return target[ name ]\n\n\t\tconst mod = target.require( 'module' ) as typeof import( 'module' )\n\t\t\n\t\tif( mod.builtinModules.indexOf( name ) >= 0 ) return target.require( name )\n\t\tif( name[0] === '.' ) return target.require( name )\n\t\t\n\t\tconst path = target.require( 'path' ) as typeof import( 'path' )\n\t\tconst fs = target.require( 'fs' ) as typeof import( 'fs' )\n\n\t\tlet dir = path.resolve( '.' )\n\t\tconst suffix = `./node_modules/${ name }`\n\n\t\tconst $$ = ( $ as any )\n\t\t\n\t\twhile( !fs.existsSync( path.join( dir , suffix ) ) ) {\n\n\t\t\tconst parent = path.resolve( dir , '..' )\n\n\t\t\tif( parent === dir ) {\n\n\t\t\t\t$$.$mol_exec( '.' , 'npm' , 'install' , '--omit=dev', name )\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\t$$.$mol_exec( '.' , 'npm' , 'install' , '--omit=dev', '@types/' + name )\n\t\t\t\t} catch {}\n\n\t\t\t\tbreak\n\n\t\t\t} else {\n\n\t\t\t\tdir = parent\n\n\t\t\t}\n\n\t\t}\n\t\t\n\t\ttry {\n\t\t\treturn target.require( name )\n\t\t} catch( error ) {\n\t\t\t$.$mol_fail_log( error )\n\t\t\treturn null\n\t\t}\n\n\t},\n\n\tset( target , name : string , value ) {\n\t\ttarget[ name ] = value\n\t\treturn true\n\t},\n\n} ) as $node\n\nrequire = ( req =>\n\tObject.assign( function require( name : string ) {\n\t\treturn $node[ name ]\n\t} , req )\n)( require )\n\n","namespace $ {\n\texport function $mol_env() {\n\t\treturn {} as Record< string, string | undefined >\n\t}\n}\n","namespace $ {\n\t$.$mol_env = function $mol_env() {\n\t\treturn this.process.env\n\t}\n}\n","namespace $ {\n\texport function $mol_exec(\n\t\tthis : $ ,\n\t\tdir : string ,\n\t\tcommand : string ,\n\t\t...args : string[]\n\t) {\n\n\t\tlet [ app , ... args0 ] = command.split( ' ' )\n\t\targs = [ ... args0 , ... args ]\n\n\t\tthis.$mol_log3_come({\n\t\t\tplace: '$mol_exec' ,\n\t\t\tdir: $node.path.relative( '' , dir ) ,\n\t\t\tmessage: 'Run',\n\t\t\tcommand: `${app} ${ args.join(' ') }` ,\n\t\t})\n\n\t\tvar res = $node['child_process'].spawnSync(\n\t\t\tapp ,\n\t\t\targs,\n\t\t\t{\n\t\t\t\tcwd : $node.path.resolve( dir ) ,\n\t\t\t\tshell : true ,\n\t\t\t\tenv: this.$mol_env(),\n\t\t\t}\n\t\t)\n\t\t\n\t\tif( res.status || res.error ) {\n\t\t\treturn $mol_fail( res.error || new Error( res.stderr.toString(), { cause: res.stdout } ) )\n\t\t}\n\t\t\n\t\tif( !res.stdout ) res.stdout = Buffer.from([])\n\n\t\treturn res\n\t}\n}\n","namespace $ {\n\t\n\t$.$mol_dom_context = new $node.jsdom.JSDOM( '' , { url : 'https://localhost/' } ).window as any\n\t\n}\n","namespace $ {\n\n\texport class $mol_after_tick extends $mol_object2 {\n\n\t\tpromise : any\n\t\tcancelled = false\n\n\t\tconstructor(\n\t\t\tpublic task : ()=> void ,\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis.promise = Promise.resolve().then( ()=> {\n\t\t\t\tif( this.cancelled ) return\n\t\t\t\ttask()\n\t\t\t} )\n\t\t}\n\n\t\tdestructor() {\n\t\t\tthis.cancelled = true\n\t\t}\n\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport class $mol_view_selection extends $mol_object {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic focused( next? : Element[], notify?: 'notify' ) : Element[] {\n\t\t\t\n\t\t\tconst parents : Element[] = []\n\t\t\tlet element = next?.[0] ?? $mol_dom_context.document.activeElement\n\t\t\t\n\t\t\twhile( element ) {\n\t\t\t\tparents.push( element )\n\t\t\t\telement = element.parentNode as HTMLElement\n\t\t\t}\n\t\t\t\n\t\t\tif( !next || notify ) return parents\n\t\t\t\n\t\t\tnew $mol_after_tick( ()=> {\n\t\t\t\t\n\t\t\t\tconst element = this.focused()![0] as HTMLElement\n\t\t\t\t\n\t\t\t\tif( element ) element.focus()\n\t\t\t\telse $mol_dom_context.blur()\n\t\t\t\t\n\t\t\t} )\n\n\t\t\treturn parents\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\texport class $mol_wrapper extends $mol_object2 {\n\n\t\tstatic wrap : ( task : ( ... ags : any[] )=> any )=> ( ... ags : any[] )=> any\n\t\t\n\t\tstatic run< Result >( task : ()=> Result ) : Result {\n\t\t\treturn this.func( task )()\n\t\t}\n\t\n\t\tstatic func< Args extends any[] , Result , Host = void >(\n\t\t\tfunc : ( this : Host , ... args : Args )=> Result\n\t\t) : ( this : Host , ... args : Args )=> Result {\n\t\t\treturn this.wrap( func )\n\t\t}\n\n\t\tstatic get class() {\n\n\t\t\treturn < Class extends new ( ... args : any[] )=> any >(\n\t\t\t\tClass : Class\n\t\t\t) => {\n\n\t\t\t\ttype Args = ConstructorParameters< Class >\n\t\t\t\ttype Result = InstanceType< Class >\n\n\t\t\t\tconst construct = ( target : Class , args : Args )=> new Class( ... args )\n\n\t\t\t\tconst handler: ProxyHandler = {\n\t\t\t\t\tconstruct : this.func( construct )\n\t\t\t\t} \n\n\t\t\t\t;(handler as any)[ Symbol.toStringTag ] = Class.name + '#'\n\n\t\t\t\treturn new Proxy( Class , handler )\n\t\t\t\t\n\t\t\t}\n\n\t\t}\n\n\t\tstatic get method() {\n\t\t\t\n\t\t\treturn (\n\t\t\t\tobj : object,\n\t\t\t\tname : PropertyKey,\n\t\t\t\tdescr : PropertyDescriptor,\n\t\t\t) => {\n\t\t\t\tdescr.value = this.func( descr.value! )\n\t\t\t\treturn descr\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tstatic get field() {\n\t\t\t\n\t\t\treturn <\n\t\t\t\tHost ,\n\t\t\t\tField extends keyof Host ,\n\t\t\t\tArgs extends any[] ,\n\t\t\t\tResult ,\n\t\t\t>(\n\t\t\t\tobj : Host ,\n\t\t\t\tname : Field ,\n\t\t\t\tdescr : TypedPropertyDescriptor< Result >\n\t\t\t) => {\n\t\t\t\tdescr.get = descr.set = this.func( descr.get! )\n\t\t\t\treturn descr\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_memo extends $mol_wrapper {\n\t\t\n\t\tstatic wrap< This extends object , Value >( task : ( this : This , next? : Value )=> Value ) {\n\n\t\t\tconst store = new WeakMap< This , Value >()\n\n\t\t\treturn function( this : This , next? : Value ) {\n\n\t\t\t\tif( next === undefined && store.has( this ) ) return store.get( this )\n\t\t\t\t\n\t\t\t\tconst val = task.call( this , next ) ?? next\n\t\t\t\t\n\t\t\t\tstore.set( this , val! )\n\t\t\t\t\n\t\t\t\treturn val\n\n\t\t\t}\n\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_dom_qname( name : string ) {\n\t\treturn name.replace( /\\W/g , '' ).replace( /^(?=\\d+)/ , '_' )\n\t}\n\n}\n","namespace $ {\n\t\n\t/** Run code without state changes */\n\texport function $mol_wire_probe< Value >(\n\t\ttask : ()=> Value, def?: Value\n\t) : Value | undefined {\n\t\t\n\t\tconst warm = $mol_wire_fiber.warm\n\t\t\n\t\ttry {\n\t\t\t$mol_wire_fiber.warm = false\n\t\t\tconst res = task()\n\t\t\tif( res === undefined ) return def\n\t\t\treturn res\n\t\t} finally {\n\t\t\t$mol_wire_fiber.warm = warm\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\t/**\n\t * Real-time refresh current atom.\n\t * Don't use if possible. May reduce performance.\n\t */\n\texport function $mol_wire_watch() {\n\t\tconst atom = $mol_wire_auto()\n\t\tif( atom instanceof $mol_wire_atom ) {\n\t\t\tatom.watch()\n\t\t} else {\n\t\t\t$mol_fail( new Error( 'Atom is required for watching' ) )\n\t\t}\n\t}\n\t\n}\n","namespace $ { \n\t/**\n\t * Returns closure that returns constant value.\n\t * @example\n\t * const rnd = $mol_const( Math.random() )\n\t */\n\texport function $mol_const< Value >( value : Value ) {\n\t\tconst getter = <{ () : Value , '()' : Value }> ( () => value )\n\t\tgetter['()'] = value\n\t\t;(getter as any)[ Symbol.toStringTag ] = value\n\t\t;(getter as any )[ $mol_dev_format_head ] = ()=> $mol_dev_format_span( {} , '()=> ', $mol_dev_format_auto( value ) )\n\t\treturn getter\n\t}\n}\n","namespace $ {\n\t\n\t/**\n\t * Disable reaping of current subscriber\n\t */\n\texport function $mol_wire_solid() {\n\t\tlet current = $mol_wire_auto() as $mol_wire_fiber< any, any, any >\n\t\tif( current!.temp ) current = current!.host\n\t\tif( current!.reap !== nothing ) {\n\t\t\tcurrent?.sub_on( sub, sub.data.length )\n\t\t}\n\t\tcurrent!.reap = nothing\n\t}\n\t\n\tconst nothing = ()=> {}\n\tconst sub = new $mol_wire_pub_sub\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_attributes (\n\t\tel : Element ,\n\t\tattrs : { [ key : string ] : string|number|boolean|null }\n\t) {\n\n\t\tfor( let name in attrs ) {\n\n\t\t\tlet val = attrs[ name ] as any\n\n\t\t\tif( val === undefined ) {\n\t\t\t\t\n\t\t\t\tcontinue\n\t\t\t\t\n\t\t\t} if( val === null || val === false ) {\n\n\t\t\t\tif( !el.hasAttribute( name ) ) continue\n\t\t\t\t\n\t\t\t\tel.removeAttribute( name )\n\n\t\t\t} else {\n\t\t\t\t\n\t\t\t\tconst str = String( val )\n\t\t\t\tif( el.getAttribute( name ) === str ) continue\n\t\t\t\t\n\t\t\t\tel.setAttribute( name , str )\n\n\t\t\t}\n\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_events (\n\t\tel : Element ,\n\t\tevents : { [ key : string ] : ( event : Event )=> any },\n\t\tpassive = false\n\t) {\n\t\tfor( let name in events ) {\n\t\t\tel.addEventListener( name , events[ name ] , { passive } )\n\t\t}\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_styles (\n\t\tel : Element ,\n\t\tstyles : { [ key : string ] : string|number }\n\t) {\n\t\tfor( let name in styles ) {\n\t\t\tlet val = styles[ name ]\n\t\t\t\n\t\t\tconst style = ( el as HTMLElement ).style as any\n\t\t\tconst kebab = ( name : string )=> name.replace( /[A-Z]/g , letter => '-' + letter.toLowerCase() )\n\t\t\t\n\t\t\tif( typeof val === 'number' ) {\n\t\t\t\tstyle.setProperty(kebab(name), `${ val }px`);\n\t\t\t} else {\n\t\t\t\tstyle.setProperty(kebab(name), val);\n\t\t\t}\n\t\t\t\n\t\t}\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_dom_render_children (\n\t\tel : Element | DocumentFragment ,\n\t\tchildNodes : NodeList | Array< Node | string | null >\n\t) {\n\t\tconst node_set = new Set< Node | string | null >( childNodes )\n\t\t\n\t\tlet nextNode : Node | null = el.firstChild\n\t\tfor( let view of childNodes ) {\n\n\t\t\tif( view == null ) continue\n\n\t\t\tif( view instanceof $mol_dom_context.Node ) {\n\t\t\t\t\n\t\t\t\twhile( true ) {\n\t\t\t\t\tif( !nextNode ) {\n\t\t\t\t\t\tel.appendChild( view )\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t\tif( nextNode == view ) {\n\t\t\t\t\t\tnextNode = nextNode.nextSibling\n\t\t\t\t\t\tbreak\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif( node_set.has( nextNode ) ) {\n\t\t\t\t\t\t\tel.insertBefore( view , nextNode )\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst nn = nextNode.nextSibling\n\t\t\t\t\t\t\tel.removeChild( nextNode )\n\t\t\t\t\t\t\tnextNode = nn\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} else {\n\t\t\t\tif( nextNode && nextNode.nodeName === '#text' ) {\n\t\t\t\t\tconst str = String( view )\n\t\t\t\t\tif( nextNode.nodeValue !== str ) nextNode.nodeValue = str\n\t\t\t\t\tnextNode = nextNode.nextSibling\n\t\t\t\t} else {\n\t\t\t\t\tconst textNode = $mol_dom_context.document.createTextNode( String( view ) )\n\t\t\t\t\tel.insertBefore( textNode , nextNode )\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\twhile( nextNode ) {\n\t\t\tconst currNode = nextNode\n\t\t\tnextNode = currNode.nextSibling\n\t\t\tel.removeChild( currNode )\n\t\t}\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_fields (\n\t\tel : Element ,\n\t\tfields : { [ key : string ] : any }\n\t) {\n\t\tfor( let key in fields ) {\n\t\t\t\n\t\t\tconst val : any = fields[ key ]\n\t\t\t\n\t\t\tif( val === undefined ) continue\n\t\t\t\n\t\t\t(el as any)[ key ] = val\n\t\t}\n\t}\n\n}\n","namespace $ {\n\t\n\t/** Convert a pseudo-synchronous (Suspense API) API to an explicit asynchronous one (for integrating with external systems). */\n\texport function $mol_wire_async< Host extends object >( obj: Host ) {\n\t\t\n\t\tlet fiber: $mol_wire_fiber< any, any, any >\n\t\tconst temp = $mol_wire_task.getter( obj as ( ... args: any[] )=> any )\n\t\t\n\t\treturn new Proxy( obj, {\n\t\t\t\n\t\t\tget( obj, field ) {\n\t\t\t\t\n\t\t\t\tconst val = (obj as any)[ field ]\n\t\t\t\tif( typeof val !== 'function' ) return val\n\t\t\t\t\n\t\t\t\tlet fiber: $mol_wire_fiber< any, any, any >\n\t\t\t\tconst temp = $mol_wire_task.getter( val ) \n\t\t\t\t\n\t\t\t\treturn function $mol_wire_async( this: Host, ... args: any[] ) {\n\t\t\t\t\tfiber?.destructor()\n\t\t\t\t\tfiber = temp( obj, args )\n\t\t\t\t\treturn fiber.async()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t},\n\t\t\t\n\t\t\tapply( obj, self, args ) {\n\t\t\t\tfiber?.destructor()\n\t\t\t\tfiber = temp( self, args )\n\t\t\t\treturn fiber.async()\n\t\t\t},\n\t\t\t\n\t\t} ) as unknown as ObjectOrFunctionResultPromisify\n\t\t\n\t}\n\n\ttype FunctionResultPromisify = Some extends (...args: infer Args) => infer Res\n\t\t? Res extends PromiseLike ? Some : (...args: Args) => Promise\n\t\t: Some\n\n\ttype MethodsResultPromisify = {\n\t\t[K in keyof Host]: FunctionResultPromisify\n\t}\n\n\ttype ObjectOrFunctionResultPromisify = (\n\t\tSome extends (...args: any) => unknown ? FunctionResultPromisify : {}\n\t) & ( Some extends Object ? MethodsResultPromisify : Some )\n\n}\n","namespace $ {\n\n\tlet all = [] as string[]\n\tlet el : HTMLStyleElement | null = null\n\tlet timer : $mol_after_tick | null = null\n\n\texport function $mol_style_attach_force() {\n\t\tif( all.length ) {\n\t\t\tel!.innerHTML += '\\n' + all.join( '\\n\\n' )\n\t\t\tall = []\n\t\t}\n\t\ttimer = null\n\t\treturn el!\n\t}\n\t\n\texport function $mol_style_attach(\n\t\tid : string ,\n\t\ttext : string ,\n\t) {\n\n\t\tall.push( `/* ${ id } */\\n\\n${ text }`)\n\n\t\tif( timer ) return el!\n\t\t\n\t\tconst doc = $mol_dom_context.document\n\t\tif( !doc ) return null\n\n\t\tel = doc.createElement('style')\n\t\tel.id = `$mol_style_attach`\n\t\tdoc.head.appendChild( el )\n\n\t\ttimer = new $mol_after_tick( $mol_style_attach_force )\n\n\t\treturn el\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_decor< Value > {\n\t\t\n\t\tconstructor(\n\t\t\treadonly value : Value\n\t\t) {}\n\n\t\tprefix() { return '' }\n\t\tvalueOf() { return this.value }\n\t\tpostfix() { return '' }\n\n\t\ttoString(){\n\t\t\treturn `${ this.prefix() }${ this.valueOf() }${ this.postfix() }`\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\t\n\texport type $mol_style_unit_length =\n\t| '%'\n\t| 'px' | 'cm' | 'mm' | 'Q' | 'in' | 'pc' | 'pt'\n\t| 'cap' | 'ch' | 'em' | 'rem' | 'ex' | 'ic' | 'lh' | 'rlh'\n\t| 'vh' | 'vw' | 'vi' | 'vb' | 'vmin' | 'vmax'\n\t\n\texport type $mol_style_unit_angle = 'deg' | 'rad' | 'grad' | 'turn'\n\t\n\texport type $mol_style_unit_time = 's' | 'ms'\n\n\texport type $mol_style_unit_any = $mol_style_unit_length | $mol_style_unit_angle | $mol_style_unit_time\n\n\texport type $mol_style_unit_str< Quanity extends $mol_style_unit_any = $mol_style_unit_any> = `${number}${Quanity}`\n\n\t/**\n\t * CSS Units\n\t * @see https://mol.hyoo.ru/#!section=docs/=xwq9q5_f966fg\n\t */\n\texport class $mol_style_unit<\n\t\tLiteral extends $mol_style_unit_any\n\t> extends $mol_decor< number > {\n\n\t\tconstructor(\n\t\t\tvalue : number,\n\t\t\treadonly literal : Literal,\n\t\t) {\n\t\t\tsuper( value )\n\t\t}\n\n\t\tpostfix() {\n\t\t\treturn this.literal\n\t\t}\n\n\t\tstatic per( value : number ) { return `${value}%` as const }\n\t\tstatic px( value : number ) { return `${ value }px` as const }\n\t\tstatic mm( value : number ) { return `${value}mm` as const }\n\t\tstatic cm( value : number ) { return `${value}cm` as const }\n\t\tstatic Q( value : number ) { return `${value}Q` as const }\n\t\tstatic in( value : number ) { return `${value}in` as const }\n\t\tstatic pc( value : number ) { return `${value}pc` as const }\n\t\tstatic pt( value : number ) { return `${value}pt` as const }\n\t\tstatic cap( value : number ) { return `${value}cap` as const }\n\t\tstatic ch( value : number ) { return `${value}ch` as const }\n\t\tstatic em( value : number ) { return `${value}em` as const }\n\t\tstatic rem( value : number ) { return `${value}rem` as const }\n\t\tstatic ex( value : number ) { return `${value}ex` as const }\n\t\tstatic ic( value : number ) { return `${value}ic` as const }\n\t\tstatic lh( value : number ) { return `${value}lh` as const }\n\t\tstatic rlh( value : number ) { return `${value}rlh` as const }\n\t\tstatic vh( value : number ) { return `${value}vh` as const }\n\t\tstatic vw( value : number ) { return `${value}vw` as const }\n\t\tstatic vi( value : number ) { return `${value}vi` as const }\n\t\tstatic vb( value : number ) { return `${value}vb` as const }\n\t\tstatic vmin( value : number ) { return `${value}vmin` as const }\n\t\tstatic vmax( value : number ) { return `${value}vmax` as const }\n\t\t\n\t\tstatic deg( value : number ) { return `${value}deg` as const }\n\t\tstatic rad( value : number ) { return `${value}rad` as const }\n\t\tstatic grad( value : number ) { return `${value}grad` as const }\n\t\tstatic turn( value : number ) { return `${value}turn` as const }\n\n\t\tstatic s( value : number ) { return `${value}s` as const }\n\t\tstatic ms( value : number ) { return `${value}ms` as const }\n\t\n\t}\n\n}\n","namespace $ {\n\n\texport type $mol_style_func_name =\n\t| 'calc'\n\t| 'hsla'\n\t| 'rgba'\n\t| 'var'\n\t| 'clamp'\n\t| 'scale'\n\t| 'cubic-bezier'\n\t| 'linear'\n\t| 'steps'\n\t| $mol_style_func_image\n\t| $mol_style_func_filter\n\t\n\texport type $mol_style_func_image =\n\t| 'url'\n\t| 'linear-gradient'\n\t| 'radial-gradient'\n\t| 'conic-gradient'\n\t\n\texport type $mol_style_func_filter =\n\t| 'blur'\n\t| 'brightness'\n\t| 'contrast'\n\t| 'drop-shadow'\n\t| 'grayscale'\n\t| 'hue-rotate'\n\t| 'invert'\n\t| 'opacity'\n\t| 'sepia'\n\t| 'saturate'\n\n\tconst { per } = $mol_style_unit\n\t\n\t/**\n\t * CSS Functions\n\t * @see https://mol.hyoo.ru/#!section=docs/=xwq9q5_f966fg\n\t */\n\texport class $mol_style_func<\n\t\tName extends $mol_style_func_name ,\n\t\tValue = unknown,\n\t> extends $mol_decor< Value > {\n\n\t\tconstructor(\n\t\t\treadonly name : Name,\n\t\t\tvalue : Value,\n\t\t) {\n\t\t\tsuper( value )\n\t\t}\n\n\t\tprefix() { return this.name + '(' }\n\t\tpostfix() { return ')' }\n\n\t\tstatic linear_gradient< Value >( value : Value ) {\n\t\t\treturn new $mol_style_func( 'linear-gradient' , value )\n\t\t}\n\n\t\tstatic calc< Value >( value : Value ) {\n\t\t\treturn new $mol_style_func( 'calc' , value )\n\t\t}\n\n\t\tstatic vary< Name extends string, Value extends string >( name : Name, defaultValue? : Value ) {\n\t\t\treturn new $mol_style_func( 'var' , defaultValue ? [name, defaultValue] : name )\n\t\t}\n\n\t\tstatic url< Href extends string >( href : Href ) {\n\t\t\treturn new $mol_style_func( 'url' , JSON.stringify( href ) )\n\t\t}\n\n\t\tstatic hsla(\n\t\t\thue: number,\n\t\t\tsaturation: number,\n\t\t\tlightness: number,\n\t\t\talpha: number,\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t'hsla',\n\t\t\t\t[ hue , per( saturation ) , per( lightness ) , alpha ],\n\t\t\t)\n\t\t}\n\t\n\t\tstatic clamp(\n\t\t\tmin: $mol_style_unit_str< any >,\n\t\t\tmid: $mol_style_unit_str< any >,\n\t\t\tmax: $mol_style_unit_str< any >,\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t'clamp',\n\t\t\t\t[ min, mid, max ],\n\t\t\t)\n\t\t}\n\t\n\t\tstatic rgba(\n\t\t\tred: number,\n\t\t\tgreen: number,\n\t\t\tblue: number,\n\t\t\talpha: number,\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t'rgba',\n\t\t\t\t[ red , green , blue , alpha ],\n\t\t\t)\n\t\t}\n\t\n\t\tstatic scale(\n\t\t\tzoom: number,\n\t\t) {\n\t\t\treturn new $mol_style_func( 'scale', [ zoom ] )\n\t\t}\n\t\t\n\t\tstatic linear(\n\t\t\t...breakpoints : Array]>\n\t\t){\n\t\t\treturn new $mol_style_func(\n\t\t\t\t\"linear\",\n\t\t\t\tbreakpoints.map((e) =>\n\t\t\t\t\tArray.isArray(e)\n\t\t\t\t\t\t? String(e[0]) +\n\t\t\t\t\t\t \" \" +\n\t\t\t\t\t\t (typeof e[1] === \"number\" ? e[1] + \"%\" : e[1].toString())\n\t\t\t\t\t\t: String(e)\n\t\t\t\t)\n\t\t\t);\n\t\t}\n\t\t\n\t\tstatic cubic_bezier(\n\t\t\tx1: number,\n\t\t\ty1: number,\n\t\t\tx2: number,\n\t\t\ty2: number\n\t\t){\n\t\t\treturn new $mol_style_func( 'cubic-bezier', [ x1, y1, x2, y2 ]);\n\t\t}\n\t\t\n\t\tstatic steps(value: number, step_position: 'jump-start' | 'jump-end' | 'jump-none' | 'jump-both' | 'start' | 'end'){\n\t\t\treturn new $mol_style_func( 'steps', [ value, step_position ] )\n\t\t}\n\t\t\n\t\tstatic blur(value?: $mol_style_unit_str<$mol_style_unit_length>){\n\t\t\treturn new $mol_style_func( 'blur', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic brightness(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'brightness', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic contrast(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'contrast', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic drop_shadow(\n\t\t\tcolor: $mol_style_properties_color,\n\t\t\tx_offset: $mol_style_unit_str<$mol_style_unit_length>,\n\t\t\ty_offset: $mol_style_unit_str<$mol_style_unit_length>,\n\t\t\tblur_radius?: $mol_style_unit_str<$mol_style_unit_length>\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t\"drop-shadow\",\n\t\t\t\tblur_radius\n\t\t\t\t\t? [color, x_offset, y_offset, blur_radius]\n\t\t\t\t\t: [color, x_offset, y_offset]\n\t\t\t);\n\t\t}\n\t\t\n\t\tstatic grayscale(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'grayscale', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic hue_rotate(value?: 0 | $mol_style_unit_str<$mol_style_unit_angle>){\n\t\t\treturn new $mol_style_func( 'hue-rotate', value ?? \"\")\n\t\t}\n\t\t\n\t\tstatic invert(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'invert', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic opacity(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'opacity', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic sepia(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'sepia', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic saturate(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'saturate', value ?? \"\" );\n\t\t}\n\t\n\t}\n\n}\n","namespace $ {\n\t\n\texport type $mol_style_prop_result =\n\t\tRecord<\n\t\t\tstring ,\n\t\t\t$mol_style_func< 'var' >\n\t\t>\n\t\n\t/** Create record of CSS variables. */\n\texport function $mol_style_prop(\n\t\tprefix : string ,\n\t\tpostfixes : Array< string >\n\t) {\n\t\t\n\t\tconst record = postfixes.reduce( ( record_obj , postfix )=> {\n\t\t\t\n\t\t\trecord_obj[ postfix ] = $mol_style_func.vary( `--${ prefix }_${ postfix }` )\n\t\t\treturn record_obj\n\t\t\t\n\t\t}, {} as $mol_style_prop_result )\n\t\t\n\t\treturn record\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Theme css variables\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_textarea_demo\n\t */\t\n\texport const $mol_theme = $mol_style_prop(\n\t\t'mol_theme',\n\t\t[\n\t\t\t'back',\n\t\t\t'hover',\n\t\t\t'card',\n\t\t\t'current',\n\t\t\t'special',\n\t\t\t'text',\n\t\t\t'control',\n\t\t\t'shade',\n\t\t\t'line',\n\t\t\t'focus',\n\t\t\t'field',\n\t\t\t'image',\n\t\t]\n\t)\n\n}\n","namespace $ { $mol_style_attach( \"mol/theme/theme.css\",\n \":root {\\n\\t--mol_theme_hue: 210deg;\\n\\t--mol_theme_hue_spread: 90deg;\\n}\\n\\n:where([mol_theme]) {\\n\\tcolor: var(--mol_theme_text);\\n\\tfill: var(--mol_theme_text);\\n\\tbackground-color: var(--mol_theme_back);\\n}\\n\\t\\n:root, [mol_theme=\\\"$mol_theme_dark\\\"], :where([mol_theme=\\\"$mol_theme_dark\\\"]) [mol_theme] {\\n\\n\\t--mol_theme_luma: -1;\\n\\t--mol_theme_image: invert(1) hue-rotate( 180deg );\\n\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 20%, 10% );\\n\\t--mol_theme_card: hsl( var(--mol_theme_hue), 50%, 20%, .25 );\\n\\t--mol_theme_field: hsl( var(--mol_theme_hue), 50%, 8%, .25 );\\n\\t--mol_theme_hover: hsl( var(--mol_theme_hue), 0%, 50%, .1 );\\n\\t\\n\\t--mol_theme_text: hsl( var(--mol_theme_hue), 0%, 80% );\\n\\t--mol_theme_shade: hsl( var(--mol_theme_hue), 0%, 60%, 1 );\\n\\t--mol_theme_line: hsl( var(--mol_theme_hue), 0%, 50%, .2 );\\n\\t--mol_theme_focus: hsl( calc( var(--mol_theme_hue) + 180deg ), 100%, 65% );\\n\\t\\n\\t--mol_theme_control: hsl( var(--mol_theme_hue), 60%, 65% );\\n\\t--mol_theme_current: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 60%, 65% );\\n\\t--mol_theme_special: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 60%, 65% );\\n\\n\\t/* --mol_theme_back: oklch( 20% .03 var(--mol_theme_hue) );\\n\\t--mol_theme_card: oklch( 35% .05 var(--mol_theme_hue) / .25 );\\n\\t--mol_theme_field: oklch( 0% 0 var(--mol_theme_hue) / .25 );\\n\\t--mol_theme_hover: oklch( 70% 0 var(--mol_theme_hue) / .1 );\\n\\t\\n\\t--mol_theme_text: oklch( 80% 0 var(--mol_theme_hue) );\\n\\t--mol_theme_shade: oklch( 60% 0 var(--mol_theme_hue) );\\n\\t--mol_theme_line: oklch( 50% 0 var(--mol_theme_hue) / .2 );\\n\\t--mol_theme_focus: oklch( 80% .2 calc( var(--mol_theme_hue) + 120deg ) );\\n\\t\\n\\t--mol_theme_control: oklch( 70% .1 var(--mol_theme_hue) );\\n\\t--mol_theme_current: oklch( 80% .2 calc( var(--mol_theme_hue) - 60deg ) );\\n\\t--mol_theme_special: oklch( 80% .3 calc( var(--mol_theme_hue) + 60deg ) ); */\\n\\n}\\n\\n[mol_theme=\\\"$mol_theme_light\\\"], :where([mol_theme=\\\"$mol_theme_light\\\"]) [mol_theme] {\\n\\t\\n\\t--mol_theme_luma: 1;\\n\\t--mol_theme_image: none;\\n\\t\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 20%, 92% );\\n\\t--mol_theme_card: hsl( var(--mol_theme_hue), 50%, 100%, .5 );\\n\\t--mol_theme_field: hsl( var(--mol_theme_hue), 50%, 100%, .75 );\\n\\t--mol_theme_hover: hsl( var(--mol_theme_hue), 0%, 50%, .1 );\\n\\t\\n\\t--mol_theme_text: hsl( var(--mol_theme_hue), 0%, 0% );\\n\\t--mol_theme_shade: hsl( var(--mol_theme_hue), 0%, 40%, 1 );\\n\\t--mol_theme_line: hsl( var(--mol_theme_hue), 0%, 50%, .2 );\\n\\t--mol_theme_focus: hsl( calc( var(--mol_theme_hue) + 180deg ), 100%, 40% );\\n\\t\\n\\t--mol_theme_control: hsl( var(--mol_theme_hue), 80%, 30% );\\n\\t--mol_theme_current: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 80%, 30% );\\n\\t--mol_theme_special: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 80%, 30% );\\n\\t\\n\\t/* --mol_theme_back: oklch( 93% .01 var(--mol_theme_hue) );\\n\\t--mol_theme_card: oklch( 100% .02 var(--mol_theme_hue) / .25 );\\n\\t--mol_theme_field: oklch( 100% 0 var(--mol_theme_hue) / .5 );\\n\\t--mol_theme_hover: oklch( 70% 0 var(--mol_theme_hue) / .1 );\\n\\t\\n\\t--mol_theme_text: oklch( 20% 0 var(--mol_theme_hue) );\\n\\t--mol_theme_shade: oklch( 60% 0 var(--mol_theme_hue) );\\n\\t--mol_theme_line: oklch( 70% 0 var(--mol_theme_hue) / .2 );\\n\\t--mol_theme_focus: oklch( 20% .8 calc( var(--mol_theme_hue) + 120deg ) );\\n\\t\\n\\t--mol_theme_control: oklch( 45% .25 var(--mol_theme_hue) );\\n\\t--mol_theme_current: oklch( 45% .5 calc( var(--mol_theme_hue) - 60deg ) );\\n\\t--mol_theme_special: oklch( 45% .5 calc( var(--mol_theme_hue) + 60deg ) ); */\\n\\n}\\n\\n:where( :root, [mol_theme=\\\"$mol_theme_dark\\\"] ) [mol_theme=\\\"$mol_theme_base\\\"] {\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 50%, 30% );\\n\\t--mol_theme_card: hsl( var(--mol_theme_hue), 40%, 20%, .25 );\\n\\t/* --mol_theme_back: oklch( 25% .05 var(--mol_theme_hue) );\\n\\t--mol_theme_card: oklch( 35% .1 var(--mol_theme_hue) / .25 ); */\\n}\\n:where( [mol_theme=\\\"$mol_theme_light\\\"] ) [mol_theme=\\\"$mol_theme_base\\\"] {\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 50%, 80% );\\n\\t--mol_theme_card: hsl( var(--mol_theme_hue), 80%, 95%, .25 );\\n\\t/* --mol_theme_back: oklch( 95% .02 var(--mol_theme_hue) );\\n\\t--mol_theme_card: oklch( 80% .05 var(--mol_theme_hue) / .25 ); */\\n}\\n\\n:where( :root, [mol_theme=\\\"$mol_theme_dark\\\"] ) [mol_theme=\\\"$mol_theme_accent\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) + 180deg ), 90%, 30% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) + 180deg ), 80%, 20%, .25 );\\n\\t/* --mol_theme_back: oklch( 40% .2 calc( var(--mol_theme_hue) + 120deg ) );\\n\\t--mol_theme_card: oklch( 50% .3 calc( var(--mol_theme_hue) + 120deg ) / .25 ); */\\n}\\n:where( [mol_theme=\\\"$mol_theme_light\\\"] ) [mol_theme=\\\"$mol_theme_accent\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) + 180deg ), 90%, 75% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) + 180deg ), 80%, 90%, .25 );\\n\\t/* --mol_theme_back: oklch( 90% .03 calc( var(--mol_theme_hue) + 120deg ) );\\n\\t--mol_theme_card: oklch( 80% .05 calc( var(--mol_theme_hue) + 120deg ) / .25 ); */\\n}\\n\\n:where( :root, [mol_theme=\\\"$mol_theme_dark\\\"] ) [mol_theme=\\\"$mol_theme_current\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 50%, 30% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 40%, 20%, .25 );\\n\\t/* --mol_theme_back: oklch( 25% .05 calc( var(--mol_theme_hue) - 60deg ) );\\n\\t--mol_theme_card: oklch( 35% .1 calc( var(--mol_theme_hue) - 60deg ) / .25 ); */\\n}\\n:where( [mol_theme=\\\"$mol_theme_light\\\"] ) [mol_theme=\\\"$mol_theme_current\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 50%, 92% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 80%, 100%, .5 );\\n\\t/* --mol_theme_back: oklch( 95% .02 calc( var(--mol_theme_hue) - 60deg ) );\\n\\t--mol_theme_card: oklch( 80% .05 calc( var(--mol_theme_hue) - 60deg ) / .25 ); */\\n}\\n\\n:where( :root, [mol_theme=\\\"$mol_theme_dark\\\"] ) [mol_theme=\\\"$mol_theme_special\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 50%, 30% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 40%, 20%, .25 );\\n\\t/* --mol_theme_back: oklch( 25% .05 calc( var(--mol_theme_hue) + 60deg ) );\\n\\t--mol_theme_card: oklch( 35% .1 calc( var(--mol_theme_hue) + 60deg ) / .25 ); */\\n}\\n:where( [mol_theme=\\\"$mol_theme_light\\\"] ) [mol_theme=\\\"$mol_theme_special\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 50%, 92% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 80%, 100%, .5 );\\n\\t/* --mol_theme_back: oklch( 95% .02 calc( var(--mol_theme_hue) + 60deg ) );\\n\\t--mol_theme_card: oklch( 80% .05 calc( var(--mol_theme_hue) + 60deg ) / .25 ); */\\n}\\n\"\n) }","namespace $ {\n\n\t/**\n\t * Gap in CSS\n\t * @see https://page.hyoo.ru/#!=msdb74_bm7nsq\n\t */\n\texport let $mol_gap = $mol_style_prop(\n\t\t'mol_gap',\n\t\t[\n\t\t\t'block',\n\t\t\t'text',\n\t\t\t'round',\n\t\t\t'space',\n\t\t\t'blur',\n\t\t]\n\t)\n\n}\n","namespace $ { $mol_style_attach( \"mol/gap/gap.css\",\n \":root {\\n\\t--mol_gap_block: .75rem;\\n\\t--mol_gap_text: .5rem .75rem;\\n\\t--mol_gap_round: .25rem;\\n\\t--mol_gap_space: .25rem;\\n\\t--mol_gap_blur: .5rem;\\n}\\n\"\n) }","namespace $ {\n\n\texport type $mol_view_content = $mol_view|Node|string|number|boolean\n\t\n\texport function $mol_view_visible_width() {\n\t\treturn $mol_window.size().width\n\t}\n\t\n\texport function $mol_view_visible_height() {\n\t\treturn $mol_window.size().height\n\t}\n\t\n\texport function $mol_view_state_key( suffix : string ) {\n\t\treturn suffix\n\t}\n\t\n\tconst error_showed = new WeakMap< Error, $mol_view >()\n\n\t/**\n\t * The base class for all visual components. It provides the infrastructure for reactive lazy rendering, handling exceptions.\n\t * @see https://mol.hyoo.ru/#!section=docs/=vv2nig_s5zr0f\n\t */\n\t/// Reactive statefull lazy ViewModel\n\texport class $mol_view extends $mol_object {\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic Root< This extends typeof $mol_view >( this : This , id: number ) {\n\t\t\treturn new this as InstanceType< This >\n\t\t}\n\n\t\t@ $mol_mem\n\t\tautorun() {\n\t\t\ttry {\n\t\t\t\tthis.dom_tree()\n\t\t\t\tdocument.title = this.title()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t}\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic autobind() {\n\t\t\t\n\t\t\tconst nodes = $mol_dom_context.document.querySelectorAll( '[mol_view_root]:not([mol_view_root=\"\"])' )\n\t\t\t\n\t\t\tfor( let i = nodes.length - 1 ; i >= 0 ; --i ) {\n\n\t\t\t\tconst name = nodes.item( i ).getAttribute( 'mol_view_root' )!\n\t\t\t\t\n\t\t\t\tconst View = ($ as any)[ name ] as typeof $mol_view\n\t\t\t\tif( !View ) {\n\t\t\t\t\tconsole.error( `Can not attach view. Class not found: ${ name }` )\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tconst view = View.Root( i )\n\t\t\t\tview.dom_node( nodes.item( i ) )\n\t\t\t\tview.autorun()\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\ttitle() {\n\t\t\treturn this.toString().match( /.*\\.(\\w+)/ )?.[1] ?? this.toString()\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tfocused( next?: boolean ) {\n\t\t\tlet node = this.dom_node()\n\t\t\tconst value = $mol_view_selection.focused( next === undefined ? undefined : ( next ? [ node ] : [] ) )\n\t\t\treturn value.indexOf( node ) !== -1\n\t\t}\n\t\t\n\t\tstate_key( suffix = '' ) {\n\t\t\treturn this.$.$mol_view_state_key( suffix )\n\t\t}\n\t\t\n\t\t/// Name of element that created when element not found in DOM\n\t\t@ $mol_memo.method\n\t\tdom_name() {\n\t\t\treturn $mol_dom_qname( this.constructor.toString() ) || 'div'\n\t\t}\n\t\t\n\t\t/// NameSpace of element that created when element not found in DOM\n\t\tdom_name_space() { return 'http://www.w3.org/1999/xhtml' }\n\t\t\n\t\t/// Raw child views\n\t\tsub() {\n\t\t\treturn [] as readonly ($mol_view|Node|string|number|boolean)[]\n\t\t}\n\t\t\n\t\t/// Visible sub views with defined ambient context\n\t\t/// Render all by default\n\t\tsub_visible() {\n\t\t\treturn this.sub()\n\t\t}\n\t\t\n\t\t/// Minimal width that used for lazy rendering\n\t\t@ $mol_mem\n\t\tminimal_width() {\n\t\t\t\n\t\t\tlet min = 0\n\t\t\ttry {\n\t\t\t\t\n\t\t\t\tconst sub = this.sub()\n\t\t\t\tif( !sub ) return 0\n\t\t\t\t\n\t\t\t\tsub.forEach( view => {\n\t\t\t\t\tif( view instanceof $mol_view ) {\n\t\t\t\t\t\tmin = Math.max( min , view.minimal_width() )\n\t\t\t\t\t}\n\t\t\t\t} )\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn 24\n\t\t\t}\n\t\t\n\t\t\treturn min\n\t\t}\n\t\t\n\t\tmaximal_width() {\n\t\t\treturn this.minimal_width()\n\t\t}\n\t\t\n\t\t/// Minimal height that used for lazy rendering\n\t\t@ $mol_mem\n\t\tminimal_height() {\n\t\t\t\n\t\t\tlet min = 0\n\t\t\ttry {\n\t\t\t\t\n\t\t\t\tfor( const view of this.sub() ?? [] ) {\n\n\t\t\t\t\tif( view instanceof $mol_view ) {\n\t\t\t\t\t\tmin = Math.max( min , view.minimal_height() )\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t \n\t\t\t} catch( error: any ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn 24\n\t\t\t}\n\n\t\t\treturn min\n\t\t}\n\n\t\tstatic watchers = new Set< $mol_view >()\n\n\t\t@ $mol_mem\n\t\tview_rect() {\n\t\t\tif( $mol_wire_probe( ()=> this.view_rect() ) === undefined ) {\n\t\t\t\t$mol_wire_watch()\n\t\t\t\treturn null // don't touch DOM to prevent instant reflow\n\t\t\t} else {\n\t\t\t\tconst { width, height, left, right, top, bottom } = this.dom_node().getBoundingClientRect()\n\t\t\t\treturn { width, height, left, right, top, bottom } // pick to optimize compare\n\t\t\t}\n\t\t}\n\n\t\t@ $mol_memo.method\n\t\tdom_id() {\n\t\t\treturn this.toString().replace( //g, ')' ).replaceAll( /\"/g, \"'\" )\n\t\t}\n\t\n\t\tdom_node_external( next?: Element) {\n\t\t\tconst node = next ?? $mol_dom_context.document.createElementNS( this.dom_name_space() , this.dom_name() )\n\n\t\t\tconst id = this.dom_id()\n\t\t\tnode.setAttribute( 'id' , id )\n\t\t\tnode.toString = $mol_const( '<#' + id + '>' )\n\n\t\t\treturn node\n\t\t}\n\n\t\t@ $mol_mem\n\t\tdom_node( next? : Element ) {\n\t\t\t$mol_wire_solid()\n\t\t\tconst node = this.dom_node_external( next )\n\t\t\t$mol_dom_render_attributes( node , this.attr_static() )\n\t\t\t\n\t\t\tconst events = this.event_async()\n\t\t\t$mol_dom_render_events(node, events)\n\n\t\t\treturn node\n\t\t}\n\n\t\t@ $mol_mem\n\t\tdom_final() {\n\t\t\t\n\t\t\tthis.render()\n\t\t\t\n\t\t\tconst sub = this.sub_visible()\n\t\t\tif( !sub ) return\n\t\t\t\n\t\t\tfor( const el of sub ) {\n\t\t\t\tif( el && typeof el === 'object' && 'dom_final' in el ) {\n\t\t\t\t\tel['dom_final']()\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn this.dom_node()\n\t\t\t\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tdom_tree( next? : Element ) : Element {\n\t\t\tconst node = this.dom_node( next )\n\t\t\t\n\t\t\trender: try {\n\n\t\t\t\t$mol_dom_render_attributes( node , { mol_view_error : null } )\n\n\t\t\t\ttry {\n\t\t\t\t\n\t\t\t\t\tthis.render()\n\t\t\t\t\t\n\t\t\t\t} finally {\n\t\t\t\t\t\n\t\t\t\t\tfor( let plugin of this.plugins() ) {\n\t\t\t\t\t\tif( plugin instanceof $mol_plugin ) {\n\t\t\t\t\t\t\tplugin.dom_tree()\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\tconst mol_view_error = $mol_promise_like(error) ? 'Promise' : error.name || error.constructor.name\n\t\t\t\t$mol_dom_render_attributes( node , { mol_view_error } )\n\t\t\t\t\n\t\t\t\tif( $mol_promise_like( error ) ) break render\n\t\t\t\tif( ( error_showed.get( error ) ?? this ) !== this ) break render\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\tconst message = error.message || error\n\t\t\t\t\t;( node as HTMLElement ).innerText = message.replace( /^|$/mg, '\\xA0\\xA0' )\n\t\t\t\t} catch {}\n\t\t\t\t\n\t\t\t\terror_showed.set( error, this )\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\ttry {\n\t\t\t\tthis.auto()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t}\n\t\t\t\t\n\t\t\treturn node\n\t\t}\n\n\t\t@ $mol_mem\n\t\tdom_node_actual() {\n\t\t\tconst node = this.dom_node()\n\n\t\t\t$mol_dom_render_styles( node, this.style_size() )\n\n\t\t\tconst attr = this.attr()\n\t\t\tconst style = this.style()\n\n\t\t\t$mol_dom_render_attributes( node , attr )\n\t\t\t$mol_dom_render_styles( node , style )\n\n\t\t\treturn node\n\t\t}\n\t\t\n\t\tauto() {\n\t\t\treturn null as any\n\t\t}\n\n\t\t@ $mol_mem\n\t\trender() {\n\n\t\t\tconst node = this.dom_node_actual()\n\n\t\t\tconst sub = this.sub_visible()\n\t\t\tif( !sub ) return\n\t\t\t\n\t\t\tconst nodes = sub.map( child => {\n\t\t\t\tif( child == null ) return null\n\t\t\t\treturn ( child instanceof $mol_view )\n\t\t\t\t\t? child.dom_node()\n\t\t\t\t\t: child instanceof $mol_dom_context.Node\n\t\t\t\t\t? child\n\t\t\t\t\t: String( child )\n\t\t\t})\n\t\t\t\n\t\t\t$mol_dom_render_children( node , nodes )\n\n\t\t\tfor( const el of sub ) if( el && typeof el === 'object' && 'dom_tree' in el ) el['dom_tree']()\n\n\t\t\t$mol_dom_render_fields( node , this.field() )\n\t\t\t\n\t\t}\n\n\t\t@ $mol_memo.method\n\t\tstatic view_classes() {\n\t\t\tconst proto = this.prototype\n\t\t\t\n\t\t\tlet current = proto\n\t\t\tconst classes = [] as ( typeof $mol_view )[]\n\t\t\t\n\t\t\twhile( current ) {\n\t\t\t\tif( current.constructor.name !== classes.at(-1)?.name ) {\n\t\t\t\t\tclasses.push( current.constructor as typeof $mol_view )\n\t\t\t\t}\n\t\t\t\tif(!( current instanceof $mol_view )) break\n\t\t\t\tcurrent = Object.getPrototypeOf( current )\n\t\t\t}\n\t\t\t\n\t\t\treturn classes\n\t\t}\n\t\t\n\t\tstatic _view_names?: Map< string, string[] >\n\t\tstatic view_names( suffix: string ) {\n\t\t\t\n\t\t\tlet cache = Reflect.getOwnPropertyDescriptor( this, '_view_names' )?.value\n\t\t\tif( !cache ) cache = this._view_names = new Map\n\t\t\t\n\t\t\tconst cached = cache.get( suffix )\n\t\t\tif( cached ) return cached\n\t\t\t\n\t\t\tconst names = [] as string[]\n\t\t\tconst suffix2 = '_' + suffix[0].toLowerCase() + suffix.substring(1)\n\t\t\t\n\t\t\tfor( const Class of this.view_classes() ) {\n\t\t\t\tif( suffix in Class.prototype ) names.push( this.$.$mol_func_name( Class ) + suffix2 )\n\t\t\t\telse break\n\t\t\t}\n\t\t\t\n\t\t\tcache.set( suffix, names )\n\t\t\treturn names\n\t\t}\n\t\t\n\t\t@ $mol_memo.method\n\t\tview_names_owned() {\n\t\t\tconst names = [] as string[]\n\t\t\tlet owner = $mol_owning_get( this ) as $mol_wire_fiber< any, any[], any >\n\n\t\t\tif(!( owner?.host instanceof $mol_view )) return names\n\n\t\t\tconst suffix = owner.task.name.trim()\n\t\t\tconst suffix2 = '_' + suffix[0].toLowerCase() + suffix.substring(1)\n\t\t\t\n\t\t\tnames.push( ... ( owner.host.constructor as typeof $mol_view ).view_names( suffix ) )\n\t\t\t\n\t\t\tfor( let prefix of owner.host.view_names_owned() ) {\n\t\t\t\tnames.push( prefix + suffix2 )\n\t\t\t}\n\t\t\t\n\t\t\treturn names\n\t\t}\n\n\t\t@ $mol_memo.method\n\t\tview_names() {\n\t\t\tconst names = new Set< string >()\n\t\t\t\n\t\t\tfor( let name of this.view_names_owned() ) names.add( name )\n\n\t\t\tfor( let Class of ( this.constructor as typeof $mol_view ).view_classes() ) {\n\t\t\t\tconst name = this.$.$mol_func_name( Class )\n\t\t\t\tif( name ) names.add( name )\n\t\t\t}\n\n\t\t\treturn names\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\ttheme( next = null as null | string ) {\n\t\t\treturn next\n\t\t}\n\t\t\n\t\tattr_static() : { [ key : string ] : string|number|boolean|null } {\n\t\t\tlet attrs : any = {}\n\t\t\t\n\t\t\tfor( let name of this.view_names() ) attrs[ name.replace( /\\$/g , '' ).replace( /^(?=\\d)/ , '_' ).toLowerCase() ] = ''\n\t\t\t\n\t\t\treturn attrs\n\t\t}\n\t\t\n\t\tattr() {\n\t\t\treturn {\n\t\t\t\tmol_theme: this.theme() ?? undefined,\n\t\t\t} as {}\n\t\t}\n\t\t\n\t\tstyle_size() {\n\t\t\treturn {\n\t\t\t\tminHeight: this.minimal_height(),\n\t\t\t\tminWidth: this.minimal_width(),\n\t\t\t} as {\n\t\t\t\t[key: string]: string | number;\n\t\t\t}\n\t\t}\n\t\t\n\t\tstyle() : { [ key : string ] : string|number } {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\tfield() : { [ key : string ] : any } {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\tevent() : { [ key : string ] : ( event : Event )=> void } {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tevent_async() {\n\t\t\treturn { ... $mol_wire_async(this.event()) }\n\t\t}\n\n\t\tplugins() {\n\t\t\treturn [] as readonly $mol_view[]\n\t\t}\n\t\t\n\t\t[ $mol_dev_format_head ]() {\n\t\t\treturn $mol_dev_format_span( {} ,\n\t\t\t\t$mol_dev_format_native( this ) ,\n\t\t\t\t// $mol_dev_format_shade( '/' ) ,\n\t\t\t\t// $mol_dev_format_auto( $mol_wire_cache( this ).sub().cache ) ,\n\t\t\t)\n\t\t}\n\n\t\t/** Deep search view by predicate. */\n\t\t*view_find(\n\t\t\tcheck: ( path : $mol_view, text?: string )=> boolean,\n\t\t\tpath = [] as $mol_view[],\n\t\t): Generator< $mol_view[] > {\n\n\t\t\tif( check( this ) ) return yield [ ... path, this ]\n\t\t\t\n\t\t\ttry {\n\t\t\t\tfor( const item of this.sub() ) {\n\t\t\t\t\tif( item instanceof $mol_view ) {\n\t\t\t\t\t\tyield* item.view_find( check, [ ... path, this ] )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} catch( error: unknown ) {\n\t\t\t\tif( $mol_promise_like( error ) ) $mol_fail_hidden( error )\n\t\t\t\t$mol_fail_log( error )\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\t/** Renders path of views to DOM. */\n\t\tforce_render(\n\t\t\tpath : Set< $mol_view >,\n\t\t) {\n\n\t\t\tconst kids = this.sub()\n\n\t\t\tconst index = kids.findIndex( item => {\n\t\t\t\tif( item instanceof $mol_view ) {\n\t\t\t\t\treturn path.has( item )\n\t\t\t\t} else {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tif( index >= 0 ) {\n\t\t\t\t( kids[ index ] as $mol_view ).force_render( path )\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\t/** Renders view to DOM and scroll to it. */\n\t\tensure_visible( view: $mol_view, align: ScrollLogicalPosition = \"start\" ) {\n\t\t\t\n\t\t\tconst path = this.view_find( v => v === view ).next().value\n\t\t\tthis.force_render( new Set( path ) )\n\t\t\t\n\t\t\ttry {\n\t\t\t\tthis.dom_final()\n\t\t\t} catch(err) {\n\t\t\t\t$mol_fail_log(err)\n\t\t\t}\n\n\t\t\tview.dom_node().scrollIntoView({ block: align })\n\n\t\t}\n\t\t\n\t\tbring() {\n\t\t\t\n\t\t\tconst win = this.$.$mol_dom_context\n\t\t\tif( win.parent !== win.self && !win.document.hasFocus() ) return\n\t\t\t\n\t\t\tnew this.$.$mol_after_frame( ()=> {\n\t\t\t\t\n\t\t\t\tthis.dom_node().scrollIntoView({ block: 'start', inline: 'nearest' })\n\t\t\t\tthis.focused( true )\n\t\t\t\t\n\t\t\t} )\n\t\t\t\n\t\t}\n\n\t\toverride destructor() {\n\t\t\tconst node = $mol_wire_probe(() => this.dom_node())\n\t\t\tif (! node) return\n\n\t\t\tconst events = $mol_wire_probe(() => this.event_async())\n\t\t\tif (! events) return\n\n\t\t\tfor( let event_name in events ) {\n\t\t\t\tnode.removeEventListener(\n\t\t\t\t\tevent_name ,\n\t\t\t\t\tevents[ event_name ]\n\t\t\t\t)\n\t\t\t}\n\t\t}\n\t}\n\n\texport type $mol_view_all = $mol_type_pick< $ , typeof $mol_view >\n\n}\n","namespace $ { $mol_style_attach( \"mol/view/view/view.css\",\n \"[mol_view] {\\n\\ttransition-property: height, width, min-height, min-width, max-width, max-height, transform;\\n\\ttransition-duration: .2s;\\n\\ttransition-timing-function: ease-out;\\n\\t-webkit-appearance: none;\\n\\tbox-sizing: border-box;\\n\\tdisplay: flex;\\n\\tflex-shrink: 0;\\n\\tcontain: style;\\n\\tscrollbar-color: var(--mol_theme_line) transparent;\\n\\tscrollbar-width: thin;\\n}\\t\\n\\n[mol_view]::selection {\\n\\tbackground: var(--mol_theme_line);\\n}\\t\\n\\n[mol_view]::-webkit-scrollbar {\\n\\twidth: .25rem;\\n\\theight: .25rem;\\n}\\n\\n[mol_view]::-webkit-scrollbar-corner {\\n\\tbackground-color: var(--mol_theme_line);\\n}\\n\\n[mol_view]::-webkit-scrollbar-track {\\n\\tbackground-color: transparent;\\n}\\n\\n[mol_view]::-webkit-scrollbar-thumb {\\n\\tbackground-color: var(--mol_theme_line);\\n\\tborder-radius: var(--mol_gap_round);\\n}\\n\\n[mol_view] > * {\\n\\tword-break: inherit;\\n}\\n\\n[mol_view_root] {\\n\\tmargin: 0;\\n\\tpadding: 0;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tbox-sizing: border-box;\\n\\tfont-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\\n\\tfont-size: 1rem;\\n\\tline-height: 1.5rem;\\n\\tbackground: var(--mol_theme_back);\\n\\tcolor: var(--mol_theme_text);\\n\\tcontain: unset; /** Fixes bg ignoring when applied to body on Chrome */\\n\\ttab-size: 4;\\n\\toverscroll-behavior: contain; /** Disable navigation gestures **/\\n}\\n\\n@media print {\\n\\t[mol_view_root] {\\n\\t\\theight: auto;\\n\\t}\\n}\\n\\n[mol_view][mol_view_error]:not([mol_view_error=\\\"Promise\\\"]) {\\n\\tbackground-image: repeating-linear-gradient(\\n\\t\\t-45deg,\\n\\t\\t#f92323,\\n\\t\\t#f92323 .5rem,\\n\\t\\t#ff3d3d .5rem,\\n\\t\\t#ff3d3d 1.5rem\\n\\t);\\n\\tcolor: black;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\\n@keyframes mol_view_wait {\\n\\tfrom {\\n\\t\\topacity: .25;\\n\\t}\\n\\t20% {\\n\\t\\topacity: .75;\\n\\t}\\n\\tto {\\n\\t\\topacity: .25;\\n\\t}\\n}\\n\\n:where([mol_view][mol_view_error=\\\"Promise\\\"]) {\\n\\tbackground: var(--mol_theme_hover);\\n}\\n\\n[mol_view][mol_view_error=\\\"Promise\\\"] {\\n\\tanimation: mol_view_wait 1s steps( 20, end ) infinite;\\n}\\n\"\n) }","$mol_scroll $mol_view\n\tscroll_top? 0\n\tscroll_left? 0\n\tfield *\n\t\t^\n\t\ttabIndex <= tabindex -1\n\tevent *\n\t\t^\n\t\tscroll?event <=> event_scroll?event null\n","namespace $ {\n\n\texport class $mol_dom_listener extends $mol_object {\n\n\t\tconstructor(\n\t\t\tpublic _node : any ,\n\t\t\tpublic _event : string ,\n\t\t\tpublic _handler : ( event : any )=> any ,\n\t\t\tpublic _config : boolean|{ passive : boolean } = { passive : true }\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis._node.addEventListener( this._event , this._handler , this._config )\n\t\t}\n\n\t\tdestructor() {\n\t\t\tthis._node.removeEventListener( this._event , this._handler , this._config )\n\t\t\tsuper.destructor()\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_print extends $mol_object {\n\n\t\t@ $mol_mem\n\t\tstatic before() {\n\t\t\treturn new $mol_dom_listener( this.$.$mol_dom_context , 'beforeprint' , ()=> {\n\t\t\t\tthis.active( true )\n\t\t\t} )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tstatic after() {\n\t\t\treturn new $mol_dom_listener( this.$.$mol_dom_context , 'afterprint' , ()=> {\n\t\t\t\tthis.active( false )\n\t\t\t} )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tstatic active( next? : boolean ) {\n\t\t\tthis.before()\n\t\t\tthis.after()\n\t\t\treturn next || false\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_style_sheet<\n\t\tComponent extends $mol_view,\n\t\tConfig extends $mol_style_guard< Component , Config >,\n\t>(\n\t\tComponent : new()=> Component,\n\t\tconfig0 : Config ,\n\t) {\n\n\t\tlet rules = [] as string[]\n\n\t\tconst block = $mol_dom_qname( $mol_ambient({}).$mol_func_name( Component ) )\n\t\tconst kebab = ( name : string )=> name.replace( /[A-Z]/g , letter => '-' + letter.toLowerCase() )\n\n\t\tconst make_class = ( prefix : string , path : string[] , config : typeof config0 )=> {\n\n\t\t\tconst props = [] as string[]\n\n\t\t\tconst selector = ( prefix : string , path : string[] )=> {\n\t\t\t\tif( path.length === 0 ) return prefix || `[${ block }]`\n\t\t\t\tlet res = `[${ block }_${ path.join('_') }]`\n\t\t\t\tif( prefix ) res = prefix + ' :where(' + res + ')'\n\t\t\t\treturn res\n\t\t\t}\n\t\t\t\n\t\t\tfor( const key of Object.keys( config ).reverse() ) {\n\n\t\t\t\tif( /^(--)?[a-z]/.test(key) ) {\n\t\t\t\t\t\n\t\t\t\t\tconst addProp = ( keys : string[] , val : any )=> {\n\n\t\t\t\t\t\tif( Array.isArray( val ) ) {\n\n\t\t\t\t\t\t\tif( val[0] && [ Array , Object ].includes( val[0].constructor ) ) {\n\t\t\t\t\t\t\t\tval = val.map( v => {\n\t\t\t\t\t\t\t\t\treturn Object.entries( v ).map( ([ n , a ])=> {\n\t\t\t\t\t\t\t\t\t\tif( a === true ) return kebab( n )\n\t\t\t\t\t\t\t\t\t\tif( a === false ) return null\n\t\t\t\t\t\t\t\t\t\treturn String( a )\n\t\t\t\t\t\t\t\t\t} ).filter( Boolean ).join(' ')\n\t\t\t\t\t\t\t\t}).join( ',' )\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tval = val.join(' ')\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tprops.push(`\\t${ keys.join('-') }: ${ val };\\n`)\n\n\t\t\t\t\t\t} else if( val.constructor === Object ) {\n\n\t\t\t\t\t\t\tfor( let suffix in val ) {\n\t\t\t\t\t\t\t\taddProp( [ ... keys , kebab( suffix ) ] , val[ suffix ] )\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\tprops.push(`\\t${ keys.join('-') }: ${ val };\\n`)\n\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\n\t\t\t\t\taddProp( [ kebab(key) ] , (config as any)[key] )\n\n\t\t\t\t} else if( /^[A-Z]/.test(key) ) {\n\n\t\t\t\t\tmake_class( prefix , [ ... path , key.toLowerCase() ] , (config as any)[key] )\n\n\t\t\t\t} else if( key[0] === '$' ) {\n\n\t\t\t\t\tmake_class( selector( prefix , path ) + ' :where([' + $mol_dom_qname( key ) + '])' , [] , (config as any)[key] )\n\n\t\t\t\t} else if( key === '>' ) {\n\n\t\t\t\t\tconst types = config[key] as any\n\n\t\t\t\t\tfor( let type in types ) {\n\t\t\t\t\t\tmake_class( selector( prefix , path ) + ' > :where([' + $mol_dom_qname( type ) + '])' , [] , types[type] )\n\t\t\t\t\t}\n\n\t\t\t\t} else if( key === '@' ) {\n\n\t\t\t\t\tconst attrs = config[key] as any\n\n\t\t\t\t\tfor( let name in attrs ) {\n\t\t\t\t\t\tfor( let val in attrs[name] ) {\n\t\t\t\t\t\t\tmake_class( selector( prefix , path ) + ':where([' + name + '=' + JSON.stringify( val ) + '])' , [] , attrs[name][val] )\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t} else if( key === '@media' ) {\n\n\t\t\t\t\tconst media = (config as any)[key] as any\n\n\t\t\t\t\tfor( let query in media ) {\n\n\t\t\t\t\t\trules.push('}\\n')\n\t\t\t\t\t\t\n\t\t\t\t\t\tmake_class( prefix , path , media[query] )\n\t\t\t\t\t\t\n\t\t\t\t\t\trules.push( `${ key } ${ query } {\\n` )\n\n\t\t\t\t\t}\n\n\t\t\t\t} else if( key[0] === '[' && key[key.length-1] === ']' ) {\n\n\t\t\t\t\tconst attr = key.slice( 1, -1 )\n\t\t\t\t\tconst vals = config[ key as any ] as any as Record< string, any >\n\t\t\t\t\t\n\t\t\t\t\tfor( let val in vals ) {\n\t\t\t\t\t\tmake_class( selector( prefix , path ) + ':where([' + attr + '=' + JSON.stringify( val ) + '])' , [] , vals[val] )\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\t} else {\n\n\t\t\t\t\tmake_class( selector( prefix , path ) + key , [] , (config as any)[key] )\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\tif( props.length ) {\n\t\t\t\trules.push( `${ selector( prefix , path ) } {\\n${ props.reverse().join('') }}\\n` )\n\t\t\t}\n\n\t\t}\n\n\t\tmake_class( '' , [] , config0 )\n\n\t\treturn rules.reverse().join('')\n\n\t}\n\n}\n","namespace $ {\n\n\t/**\n\t * CSS in TS.\n\t * Statically typed CSS style sheets. Following samples show which CSS code are generated from TS code.\n\t * @see https://mol.hyoo.ru/#!section=docs/=xwq9q5_f966fg\n\t */\n\texport function $mol_style_define<\n\t\tComponent extends $mol_view,\n\t\tConfig extends $mol_style_guard< Component , Config >,\n\t>(\n\t\tComponent : new()=> Component,\n\t\tconfig : Config ,\n\t) {\n\n\t\treturn $mol_style_attach(\n\t\t\tComponent.name,\n\t\t\t$mol_style_sheet( Component , config ),\n\t\t)\n\n\t}\n\n}\n","namespace $.$$ {\n\t\n\t/**\n\t * Scrolling pane.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_scroll_demo\n\t */\n\texport class $mol_scroll extends $.$mol_scroll {\n\n\t\t@ $mol_mem\n\t\tscroll_top( next? : number, cache?: 'cache' ): number {\n\t\t\t\n\t\t\tconst el = this.dom_node()\n\t\t\tif( next !== undefined && !cache ) el.scrollTop = next\n\t\t\t\n\t\t\treturn el.scrollTop\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tscroll_left( next? : number, cache?: 'cache' ): number {\n\t\t\t\n\t\t\tconst el = this.dom_node()\n\t\t\tif( next !== undefined && !cache ) el.scrollLeft = next\n\t\t\t\n\t\t\treturn el.scrollLeft\n\t\t}\n\t\t\n\t\tevent_scroll( next? : Event ) {\n\t\t\t\n\t\t\tconst el = this.dom_node() as HTMLElement\n\t\t\t\n\t\t\tthis.scroll_left( el.scrollLeft, 'cache' )\n\t\t\tthis.scroll_top( el.scrollTop, 'cache' )\n\t\t\t\n\t\t}\n\n\t\tminimal_height() {\n\t\t\treturn this.$.$mol_print.active() ? null! : 0\n\t\t}\n\t\t\n\t\tminimal_width() {\n\t\t\treturn this.$.$mol_print.active() ? null! : 0\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $.$$ {\n\n\tconst { per , rem , px } = $mol_style_unit\n\n\t$mol_style_define( $mol_scroll , {\n\n\t\tdisplay: 'grid',\n\t\toverflow: 'auto',\n\t\tflex: {\n\t\t\tdirection: 'column',\n\t\t\tgrow: 1,\n\t\t\tshrink: 1,\n\t\t\t// basis: 0,\n\t\t},\n\t\toutline: 'none',\n\t\talignSelf: 'stretch',\n\t\tboxSizing: 'border-box',\n\t\twillChange: 'scroll-position',\n\t\tscroll: {\n\t\t\tpadding: [ rem(.75), 0 ],\n\t\t},\n\t\tmaxHeight: per(100),\n\t\tmaxWidth: per(100),\n\t\twebkitOverflowScrolling: 'touch',\n\t\tcontain: 'content',\n\n\t\t'>': {\n\t\t\t$mol_view: {\n\t\t\t\ttransform: 'translateZ(0)', // enforce gpu scroll in all agents\n\t\t\t\tgridArea: '1/1',\n\t\t\t},\n\t\t},\n\n\t\t'::before': {\n\t\t\tdisplay: 'none',\n\t\t},\n\t\t'::after': {\n\t\t\tdisplay: 'none',\n\t\t},\n\t\t\n\t\t'::-webkit-scrollbar': {\n\t\t\twidth: rem(.25),\n\t\t\theight: rem(.25),\n\t\t},\n\t\t\n\t\t'@media' : {\n\t\t\t'print' : {\n\t\t\t\toverflow: 'visible',\n\t\t\t\tcontain: 'none',\n\t\t\t\tmaxHeight: 'unset',\n\t\t\t},\n\t\t},\n\n\t})\n\n}\n","$mol_page $mol_view\n\tdom_name \\article\n\tfield *\n\t\t^\n\t\ttabIndex <= tabindex -1\n\tsub /\n\t\t<= Head $mol_view\n\t\t\tminimal_height 64\n\t\t\tdom_name \\header\n\t\t\tsub <= head /\n\t\t\t\t<= Title $mol_view\n\t\t\t\t\tdom_name \\h1\n\t\t\t\t\tsub <= title_content /\n\t\t\t\t\t\t<= Logo null\n\t\t\t\t\t\t<= title\n\t\t\t\t<= Tools $mol_view\n\t\t\t\t\tsub <= tools /$mol_view_content\n\t\t<= Body $mol_scroll\n\t\t\tscroll_top? => body_scroll_top?\n\t\t\tsub <= body_content /\n\t\t\t\t<= Body_content $mol_view\n\t\t\t\t\tsub <= body /$mol_view\n\t\t<= Foot $mol_view\n\t\t\tdom_name \\footer\n\t\t\tsub <= foot /$mol_view\n","namespace $ {\n\t/** Plugin is component without its own DOM element, but instead uses the owner DOM element */\n\texport class $mol_plugin extends $mol_view {\n\n\t\toverride dom_node_external( next? : Element ) {\n\t\t\treturn next ?? $mol_owning_get>( this )!.host!.dom_node()\n\t\t}\n\n\t\toverride render() {\n\t\t\tthis.dom_node_actual()\n\t\t}\n\n\t}\n\n}\n","namespace $.$$ {\n\n\tconst { per , rem } = $mol_style_unit\n\tconst { calc } = $mol_style_func\n\n\t$mol_style_define( $mol_page , {\n\n\t\tdisplay: 'flex' ,\n\t\tflex: {\n\t\t\tbasis: 'auto' ,\n\t\t\tdirection: 'column' ,\n\t\t},\n\t\tposition: 'relative' ,\n\t\talignSelf: 'stretch' ,\n\t\tmaxWidth: per(100) ,\n\t\tmaxHeight: per(100) ,\n\t\tboxSizing: 'border-box' ,\n\t\tcolor: $mol_theme.text ,\n\t\t// zIndex: 0 ,\n\t\t\n\t\t':focus': {\n\t\t\toutline: 'none',\n\t\t} ,\n\n\t\tHead: {\n\t\t\tdisplay: 'flex' ,\n\t\t\tflexWrap: 'wrap' ,\n\t\t\tjustifyContent: 'flex-end' ,\n\t\t\tflex: 'none',\n\t\t\tposition: 'relative' ,\n\t\t\tmargin: 0 ,\n\t\t\tminHeight: rem(4),\n\t\t\tpadding: $mol_gap.block ,\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.card ,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tradius: $mol_gap.round,\n\t\t\t},\n\t\t\tboxShadow: `0 0.5rem 0.5rem -0.5rem hsla(0,0%,0%,.25)` ,\n\t\t\tzIndex: 2,\n\t\t},\n\n\t\tTitle: {\n\n\t\t\tminHeight: rem(2),\n\t\t\tmargin: 0,\n\t\t\tpadding: $mol_gap.text,\n\t\t\tgap: $mol_gap.text,\n\t\t\twordBreak: 'normal',\n\t\t\ttextShadow: '0 0',\n\n\t\t\tfont: {\n\t\t\t\tsize: 'inherit',\n\t\t\t\tweight: 'normal',\n\t\t\t},\n\t\n\t\t\tflex: {\n\t\t\t\tgrow: 1,\n\t\t\t\tshrink: 1,\n\t\t\t\tbasis: 'auto',\n\t\t\t},\n\n\t\t},\n\n\t\tTools: {\n\t\t\t\n\t\t\tflex: {\n\t\t\t\tbasis: 'auto',\n\t\t\t\tgrow: 1000,\n\t\t\t\tshrink: 1,\n\t\t\t},\n\t\t\tdisplay: 'flex',\n\t\t\tjustifyContent: 'flex-end',\n\t\t\talignItems: 'flex-start',\n\t\t\tflexWrap: 'wrap',\n\n\t\t},\n\n\t\tBody: {\n\t\t\tflex: {\n\t\t\t\tgrow: 1000,\n\t\t\t\tshrink: 1,\n\t\t\t\tbasis: per(100),\n\t\t\t},\n\t\t},\n\t\t\n\t\tBody_content: {\n\t\t\tpadding: $mol_gap.block ,\n\t\t\tflex: {\n\t\t\t\tdirection: 'column',\n\t\t\t\tshrink: 1,\n\t\t\t\tgrow: 1,\n\t\t\t},\n\t\t\tjustify: {\n\t\t\t\tself: 'stretch',\n\t\t\t},\n\t\t},\n\t\t\n\t\tFoot: {\n\t\t\tdisplay: 'flex',\n\t\t\tjustifyContent: 'space-between',\n\t\t\tflex: 'none',\n\t\t\tmargin: 0,\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.card ,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tradius: $mol_gap.round,\n\t\t\t},\n\t\t\tboxShadow: `0 -0.5rem 0.5rem -0.5rem hsla(0,0%,0%,.25)` ,\n\t\t\tzIndex: 1,\n\t\t\tpadding: $mol_gap.block ,\n\t\t\t':empty': {\n\t\t\t\tdisplay: 'none',\n\t\t\t},\n\t\t},\t\n\n\t} )\n\t\n}\n","$mol_theme_auto $mol_plugin\n\tattr * mol_theme <= theme \\\n","namespace $ {\n\t/**\n\t * Decorates method to fiber to ensure it is executed only once inside other fiber from [mol_wire](../wire/README.md)\n\t * @see https://mol.hyoo.ru/#!section=docs/=1fcpsq_1wh0h2\n\t */\n\texport let $mol_action = $mol_wire_method\n}\n","namespace $ {\n\n\t/** State of arguments like `foo=bar xxx` */\n\texport class $mol_state_arg extends $mol_object {\n\t\t\n\t\tstatic prolog = ''\n\t\tstatic separator = ' '\n\t\t\n\t\t@ $mol_mem\n\t\tstatic href( next? : string ) {\n\t\t\treturn next || process.argv.slice( 2 ).join( ' ' )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic href_normal() {\n\t\t\treturn this.link({})\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic dict( next? : { [ key : string ] : string | null } ) {\n\t\t\tif( next !== void 0 ) this.href( this.make_link( next ) )\n\t\t\t\n\t\t\tvar href = this.href()\n\t\t\tvar chunks = href.split( ' ' )\n\t\t\t\n\t\t\tvar params : { [ key : string ] : string } = {}\n\t\t\tchunks.forEach(\n\t\t\t\tchunk => {\n\t\t\t\t\tif( !chunk ) return\n\t\t\t\t\tvar vals = chunk.split( '=' ).map( decodeURIComponent )\n\t\t\t\t\tparams[ vals.shift()! ] = vals.join('=')\n\t\t\t\t}\n\t\t\t)\n\t\t\t\n\t\t\treturn params as Readonly< typeof params >\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic value( key : string , next? : string | null ) {\n\t\t\tif( next === void 0 ) return this.dict()[ key ] ?? null\n\t\t\tthis.href( this.link( { [ key ] : next } ) )\n\t\t\treturn next\n\t\t}\n\t\t\n\t\tstatic link( next : Record ) {\n\t\t\tconst params : Record = {}\n\t\t\t\n\t\t\tvar prev = this.dict()\n\t\t\tfor( var key in prev ) {\n\t\t\t\tparams[ key ] = prev[ key ]\n\t\t\t}\n\t\t\t\n\t\t\tfor( var key in next ) {\n\t\t\t\tparams[ key ] = next[ key ]\n\t\t\t}\n\t\t\t\n\t\t\treturn this.make_link( params )\n\t\t}\n\t\t\n\t\tstatic make_link( next : Record) {\n\t\t\tconst chunks : string[] = []\n\t\t\tfor( const key in next ) {\n\t\t\t\tif( next[ key ] !== null ) {\n\t\t\t\t\tchunks.push([key, next[key]!].map(encodeURIComponent).join('='))\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn chunks.join( ' ' )\n\t\t}\n\t\t\n\t\t@ $mol_action\n\t\tstatic go( next : { [ key : string ] : string | null } ) {\n\t\t\tthis.href( this.make_link( next ) )\n\t\t}\n\t\t\n\t\tconstructor( public prefix = '' ) {\n\t\t\tsuper()\n\t\t}\n\t\t\n\t\tvalue( key : string , next? : string ) {\n\t\t\treturn ( this.constructor as typeof $mol_state_arg ).value( this.prefix + key , next )\n\t\t}\n\t\t\n\t\tsub( postfix : string ) {\n\t\t\treturn new ( this.constructor as typeof $mol_state_arg )( this.prefix + postfix + '.' )\n\t\t}\n\t\t\n\t\tlink( next : Record ) {\n\t\t\tconst prefix = this.prefix\n\t\t\tconst dict : Record = {}\n\t\t\tfor( var key in next ) {\n\t\t\t\tdict[ prefix + key ] = next[ key ]\n\t\t\t}\n\t\t\treturn ( this.constructor as typeof $mol_state_arg ).link( dict )\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\texport let $mol_mem_persist = $mol_wire_solid\n}\n","namespace $ {\n\texport let $mol_mem_cached = $mol_wire_probe\n}\n","namespace $ {\n\t\n\t/**\n\t * Convert asynchronous (promise-based) API to synchronous by wrapping function and method calls in a fiber.\n\t * @see https://mol.hyoo.ru/#!section=docs/=1fcpsq_1wh0h2\n\t */\n\texport function $mol_wire_sync< Host extends object >( obj: Host ) {\n\t\treturn new Proxy( obj, {\n\t\t\t\n\t\t\tget( obj, field ) {\n\t\t\t\t\n\t\t\t\tconst val = (obj as any)[ field ]\n\t\t\t\tif( typeof val !== 'function' ) return val\n\t\t\t\t\n\t\t\t\tconst temp = $mol_wire_task.getter( val )\n\t\t\t\treturn function $mol_wire_sync( this: Host, ... args: any[] ) {\n\t\t\t\t\tconst fiber = temp( obj, args )\n\t\t\t\t\treturn fiber.sync()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t},\n\t\t\t\n\t\t\tapply( obj, self, args ) {\n\t\t\t\tconst temp = $mol_wire_task.getter( obj as ( ... args: any[] )=> any )\n\t\t\t\tconst fiber = temp( self, args )\n\t\t\t\treturn fiber.sync()\n\t\t\t},\n\t\t\t\n\t\t} ) as unknown as ObjectOrFunctionResultAwaited\n\t}\n\n\ttype FunctionResultAwaited = Some extends (...args: infer Args) => infer Res\n\t\t? (...args: Args) => Awaited\n\t\t: Some\n\n\ttype MethodsResultAwaited = {\n\t\t[K in keyof Host]: FunctionResultAwaited\n\t}\n\n\ttype ObjectOrFunctionResultAwaited = (\n\t\tSome extends (...args: any) => unknown ? FunctionResultAwaited : {}\n\t) & ( Some extends Object ? MethodsResultAwaited : Some )\n\n}\n","namespace $ {\n\texport class $mol_storage extends $mol_object2 {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic native() {\n\t\t\treturn this.$.$mol_dom_context.navigator.storage ?? { // exists only in secure context\n\t\t\t\tpersisted: async ()=> false,\n\t\t\t\tpersist: async ()=> false,\n\t\t\t\testimate: async ()=> ({}),\n\t\t\t\tgetDirectory: async ()=> null! as FileSystemHandle,\n\t\t\t} as StorageManager\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic persisted( next?: boolean, cache?: 'cache' ): boolean {\n\t\t\t\n\t\t\t$mol_mem_persist()\n\t\t\t\n\t\t\tif( cache ) return Boolean( next )\n\t\t\t\n\t\t\tconst native = this.native()\n\t\t\tif( next && !$mol_mem_cached( ()=> this.persisted() ) ) {\n\t\t\t\tnative.persist().then( actual => {\n\t\t\t\t\t\n\t\t\t\t\tsetTimeout( ()=> this.persisted( actual, 'cache' ), 5000 )\n\t\t\t\t\t\n\t\t\t\t\tif( actual ) this.$.$mol_log3_done({ place: `$mol_storage`, message: `Persist: Yes` })\n\t\t\t\t\telse this.$.$mol_log3_fail({ place: `$mol_storage`, message: `Persist: No` })\n\t\t\t\t\t\n\t\t\t\t} )\n\t\t\t}\n\t\t\t\n\t\t\treturn next ?? $mol_wire_sync( native ).persisted()\n\t\t}\n\t\t\n\t\tstatic estimate() {\n\t\t\treturn $mol_wire_sync( this.native() ?? {} ).estimate()\n\t\t}\n\t\t\n\t\tstatic dir() {\n\t\t\treturn $mol_wire_sync( this.native() ).getDirectory()\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n\t\n\texport class $mol_state_local< Value > extends $mol_object {\n\t\t\n\t\tstatic 'native()' : Pick< Storage , 'getItem'|'setItem'|'removeItem' >\n\t\tstatic native() {\n\t\t\tif( this['native()'] ) return this['native()']\n\n\t\t\tcheck : try {\n\t\t\t\tconst native = $mol_dom_context.localStorage\n\t\t\t\tif( !native ) break check\n\t\t\t\t\n\t\t\t\tnative.setItem( '' , '' )\n\t\t\t\tnative.removeItem( '' )\n\t\t\t\treturn this['native()'] = native\n\t\t\t} catch( error: any ) {\n\t\t\t\tconsole.warn( error )\n\t\t\t}\n\n\t\t\treturn this['native()'] = {\n\t\t\t\tgetItem( key : string ) {\n\t\t\t\t\treturn (this as any)[ ':' + key ]\n\t\t\t\t} ,\n\t\t\t\tsetItem( key : string , value : string ) {\n\t\t\t\t\t(this as any)[ ':' + key ] = value\n\t\t\t\t} ,\n\t\t\t\tremoveItem( key : string ) {\n\t\t\t\t\t(this as any)[ ':' + key ] = void 0\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic changes( next?: StorageEvent ) { return next }\n\n\t\t@ $mol_mem_key\n\t\tstatic value< Value >(\n\t\t\tkey : string ,\n\t\t\tnext? : Value | null ,\n\t\t) : Value | null {\n\t\t\t\n\t\t\tthis.changes()\n\t\t\t\n\t\t\tif( next === void 0 ) return JSON.parse( this.native().getItem( key ) || 'null' )\n\t\t\t\n\t\t\tif( next === null ) {\n\t\t\t\tthis.native().removeItem( key )\n\t\t\t} else {\n\t\t\t\tthis.native().setItem( key , JSON.stringify( next ) )\n\t\t\t\tthis.$.$mol_storage.persisted( true )\n\t\t\t}\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t\tprefix() { return '' }\n\t\t\n\t\tvalue( key : string , next? : Value ) {\n\t\t\treturn $mol_state_local.value( this.prefix() + '.' + key , next )\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\tconst decoders = {} as { [ key in $mol_charset_encoding ]?: TextDecoder }\n\n\texport function $mol_charset_decode(\n\t\tbuffer: BufferSource,\n\t\tencoding: $mol_charset_encoding = 'utf8',\n\t) {\n\t\t\n\t\tlet decoder = decoders[ encoding ]\n\t\tif( !decoder ) decoder = decoders[ encoding ] = new TextDecoder( encoding )\n\t\t\n\t\treturn decoder.decode( buffer )\n\t}\n\n}\n","namespace $ {\n\tconst TextEncoder = globalThis.TextEncoder ?? $node.util.TextEncoder\n\n\tconst encoder = new TextEncoder()\n\n\texport function $mol_charset_encode(value: string) {\n\t\treturn encoder.encode(value)\n\t}\n\n}\n","namespace $ {\n\n\texport type $mol_file_type = 'file' | 'dir' | 'link'\n\n\texport interface $mol_file_stat {\n\t\ttype: $mol_file_type\n\t\tsize: number\n\t\tatime: Date\n\t\tmtime: Date\n\t\tctime: Date\n\t}\n\n\texport class $mol_file_not_found extends Error {}\n\n\texport abstract class $mol_file extends $mol_object {\n\t\t\t\n\t\t@ $mol_mem_key\n\t\tstatic absolute( path : string ): $mol_file {\n\t\t\tthrow new Error( 'Not implemented yet' )\n\t\t}\n\n\t\tstatic relative( path : string ) : $mol_file {\n\t\t\tthrow new Error( 'Not implemented yet' )\n\t\t}\n\t\t\n\t\tstatic base = ''\n\t\t\n\t\tpath() {\n\t\t\treturn '.'\n\t\t}\n\t\t\n\t\tparent() {\n\t\t\treturn this.resolve( '..' )\n\t\t}\n\n\t\tabstract stat( next? : $mol_file_stat | null, virt?: 'virt' ): $mol_file_stat | null\n\n\t\treset(): void {\n\t\t\ttry {\n\t\t\t\tthis.stat( null )\n\t\t\t} catch( error: any ) {\n\t\t\t\tif (error instanceof $mol_file_not_found) return\n\t\t\t\treturn $mol_fail_hidden(error)\n\t\t\t}\n\t\t}\n\t\t\n\t\tversion() {\n\t\t\treturn this.stat()?.mtime.getTime().toString( 36 ).toUpperCase() ?? ''\n\t\t}\n\n\t\tabstract ensure(): void\n\t\tabstract drop(): void\n\n\t\twatcher() {\n\t\t\tconsole.warn('$mol_file_web.watcher() not implemented')\n\n\t\t\treturn {\n\t\t\t\tdestructor() {}\n\t\t\t}\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\texists( next? : boolean ) {\n\t\t\t\n\t\t\tlet exists = Boolean( this.stat() )\n\n\t\t\tif( next === undefined ) return exists\n\t\t\tif( next === exists ) return exists\n\n\t\t\tif( next ) {\n\t\t\t\tthis.parent().exists( true )\n\t\t\t\tthis.ensure()\n\t\t\t} else {\n\t\t\t\tthis.drop()\n\t\t\t}\n\t\t\tthis.reset()\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t\ttype() {\n\t\t\treturn this.stat()?.type ?? ''\n\t\t}\n\t\t\n\t\tname() {\n\t\t\treturn this.path().replace( /^.*\\//, '' )\n\t\t}\n\t\t\n\t\text() {\n\t\t\tconst match = /((?:\\.\\w+)+)$/.exec( this.path() )\n\t\t\treturn match ? match[ 1 ].substring( 1 ) : ''\n\t\t}\n\n\t\tabstract buffer( next? : Uint8Array ): Uint8Array\n\n\t\t@ $mol_mem\n\t\ttext(next?: string, virt?: 'virt') {\n\t\t\tif( virt ) {\n\t\t\t\tconst now = new Date\n\t\t\t\tthis.stat( {\n\t\t\t\t\ttype: 'file',\n\t\t\t\t\tsize: 0,\n\t\t\t\t\tatime: now,\n\t\t\t\t\tmtime: now,\n\t\t\t\t\tctime: now,\t\t\t\n\t\t\t\t}, 'virt' )\n\t\t\t\treturn next!\n\t\t\t}\n\t\t\tif( next === undefined ) {\n\t\t\t\treturn $mol_charset_decode( this.buffer( undefined ) )\t\n\t\t\t} else {\n\t\t\t\tconst buffer = next === undefined ? undefined : $mol_charset_encode( next )\n\t\t\t\tthis.buffer( buffer )\n\t\t\t\treturn next\n\t\t\t}\n\t\t}\n\n\t\tabstract sub(): $mol_file[]\n\n\t\tabstract resolve(path: string): $mol_file\n\n\t\tabstract relate( base?: $mol_file ): string\n\t\t\n\t\tabstract append( next : Uint8Array | string ): void\n\t\t\n\t\tfind(\n\t\t\tinclude? : RegExp ,\n\t\t\texclude? : RegExp\n\t\t) {\n\t\t\tconst found = [] as $mol_file[]\n\t\t\tconst sub = this.sub()\n\n\t\t\tfor (const child of sub) {\n\t\t\t\tconst child_path = child.path()\n\n\t\t\t\tif( exclude && child_path.match( exclude ) ) continue\n\n\t\t\t\tif( !include || child_path.match( include ) ) found.push( child )\n\n\t\t\t\tif( child.type() === 'dir' ) {\n\t\t\t\t\tconst sub_child = child.find( include , exclude )\n\t\t\t\t\tfor (const child of sub_child) found.push(child)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn found\n\t\t}\n\n\t\tsize() {\n\t\t\tswitch( this.type() ) {\n\t\t\t\tcase 'file': return this.stat()?.size ?? 0\n\t\t\t\tdefault: return 0\n\t\t\t}\n\t\t}\n\t\t\n\t\topen( ... modes: readonly ( 'create' | 'exists_truncate' | 'exists_fail' | 'read_only' | 'write_only' | 'read_write' | 'append' )[] ) {\n\t\t\treturn 0\n\t\t}\n\t\t\n\t\ttoJSON() {\n\t\t\treturn this.path()\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n export function $mol_compare_array>(a: Value, b: Value): boolean {\n\t\tif (a === b) return true\n\t\tif (Object.getPrototypeOf(a) !== Object.getPrototypeOf(b)) return false\n\t\tif (a.length !== b.length) return false\n\n\t\tfor (let i = 0; i < a.length; i++)\n\t\t\tif (a[i] !== b[i]) return false\n\n\t\treturn true\n\t}\n}\n","namespace $ {\n\n\tfunction stat_convert(stat: ReturnType): null | $mol_file_stat {\n\t\t\n\t\tif( !stat ) return null\n\t\t\n\t\tlet type: $mol_file_type | undefined\n\t\tif (stat.isDirectory()) type = 'dir'\n\t\tif (stat.isFile()) type = 'file'\n\t\tif (stat.isSymbolicLink()) type = 'link'\n\n\t\tif (! type) return $mol_fail( new Error(`Unsupported file type`) )\n\n\t\treturn {\n\t\t\ttype, \n\t\t\tsize: Number(stat.size),\n\t\t\tatime: stat.atime,\n\t\t\tmtime: stat.mtime,\n\t\t\tctime: stat.ctime\n\t\t}\n\t}\n\n\tfunction buffer_normalize(buf: Buffer): Uint8Array {\n\t\treturn new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength)\n\t}\n\t\n\texport enum $mol_file_mode_open {\n\t\t/** create if it doesn't already exist */\n\t\tcreate = $node.fs.constants.O_CREAT,\n\t\t/** truncate to zero size if it already exists */\n\t\texists_truncate = $node.fs.constants.O_TRUNC,\n\t\t/** throw exception if it already exists */\n\t\texists_fail = $node.fs.constants.O_EXCL,\n\t\tread_only = $node.fs.constants.O_RDONLY,\n\t\twrite_only = $node.fs.constants.O_WRONLY,\n\t\tread_write = $node.fs.constants.O_RDWR,\n\t\t/** data will be appended to the end */\n\t\tappend = $node.fs.constants.O_APPEND,\n\t}\n\n\texport class $mol_file_node extends $mol_file {\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic absolute( path : string ) {\n\t\t\treturn this.make({\n\t\t\t\tpath : $mol_const( path )\n\t\t\t})\n\t\t}\n\n\t\tstatic relative( path : string ) {\n\t\t\treturn this.absolute( $node.path.resolve( this.base, path ).replace( /\\\\/g , '/' ) )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\twatcher() {\n\n\t\t\tconst watcher = $node.chokidar.watch( this.path() , {\n\t\t\t\tpersistent : true ,\n\t\t\t\tignored : /(^\\.|___$)/ ,\n\t\t\t\tdepth : 0 ,\n\t\t\t\tignoreInitial : true ,\n\t\t\t\tawaitWriteFinish: {\n\t\t\t\t\tstabilityThreshold: 100,\n\t\t\t\t},\n\t\t\t} )\n\n\t\t\twatcher\n\t\t\t.on( 'all' , ( type , path )=> {\n\t\t\t\t\n\t\t\t\tconst file = $mol_file.relative( path.replace( /\\\\/g , '/' ) )\n\n\t\t\t\tfile.reset()\n\t\t\t\t\n\t\t\t\tif( type === 'change' ) {\n\t\t\t\t\tthis.stat( null )\n\t\t\t\t} else {\n\t\t\t\t\tfile.parent().reset()\n\t\t\t\t}\n\n\t\t\t} )\n\t\t\t.on( 'error' , $mol_fail_log )\n\t\t\t\n\t\t\treturn {\n\t\t\t\tdestructor() {\n\t\t\t\t\twatcher.close()\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\n\t\t@ $mol_mem\n\t\tstat( next? : $mol_file_stat | null, virt?: 'virt' ) {\n\t\t\t\n\t\t\tlet stat = next\n\t\t\tconst path = this.path()\n\n\t\t\tthis.parent().watcher()\n\t\t\t\n\t\t\tif( virt ) return next!\n\t\t\t\n\t\t\ttry {\n\t\t\t\tstat = next ?? stat_convert($node.fs.statSync( path, { throwIfNoEntry: false } ))\n\t\t\t} catch( error: any ) {\n\t\t\t\tif (error.code === 'ENOENT') error = new $mol_file_not_found(`File not found`)\n\t\t\t\terror.message += '\\n' + path\n\t\t\t\treturn this.$.$mol_fail_hidden(error)\n\t\t\t}\n\n\t\t\treturn stat\n\t\t}\n\n\t\t@ $mol_mem\n\t\tensure() {\n\t\t\tconst path = this.path()\n\n\t\t\ttry {\n\t\t\t\t$node.fs.mkdirSync( path )\n\t\t\t} catch( e: any ) {\n\t\t\t\te.message += '\\n' + path\n\t\t\t\tthis.$.$mol_fail_hidden(e)\n\t\t\t}\n\n\t\t}\n\t\t\n\t\t@ $mol_action\n\t\tdrop() {\n\t\t\t$node.fs.unlinkSync( this.path() )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tbuffer( next? : Uint8Array ) {\n\n\t\t\tconst path = this.path()\n\t\t\tif( next === undefined ) {\n\n\t\t\t\tif( !this.stat() ) return new Uint8Array\n\t\t\t\t\n\t\t\t\ttry {\n\n\t\t\t\t\tconst prev = $mol_mem_cached( ()=> this.buffer() )\n\t\t\t\t\t\n\t\t\t\t\tnext = buffer_normalize( $node.fs.readFileSync( path ) )\n\n\t\t\t\t\tif( prev !== undefined && !$mol_compare_array( prev, next ) ) {\n\t\t\t\t\t\tthis.$.$mol_log3_rise({\n\t\t\t\t\t\t\tplace: `$mol_file_node..buffer()`,\n\t\t\t\t\t\t\tmessage: 'Changed' ,\n\t\t\t\t\t\t\tpath: this.relate() ,\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\n\t\t\t\t\treturn next\n\n\t\t\t\t} catch( error: any ) {\n\n\t\t\t\t\terror.message += '\\n' + path\n\t\t\t\t\treturn this.$.$mol_fail_hidden( error )\n\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tthis.parent().exists( true )\n\t\t\t\n\t\t\tconst now = new Date\n\t\t\tthis.stat( {\n\t\t\t\ttype: 'file',\n\t\t\t\tsize: next.length,\n\t\t\t\tatime: now,\n\t\t\t\tmtime: now,\n\t\t\t\tctime: now,\n\t\t\t}, 'virt' )\n\n\t\t\ttry {\n\n\t\t\t\t$node.fs.writeFileSync( path, next )\n\n\t\t\t} catch( error: any ) {\n\n\t\t\t\terror.message += '\\n' + path\n\t\t\t\treturn this.$.$mol_fail_hidden( error )\n\n\t\t\t}\n\t\t\t\n\t\t\treturn next\n\n\t\t}\n\t\t@ $mol_mem\n\t\tsub() : $mol_file[] {\n\t\t\tif (! this.exists() ) return []\n\t\t\tif ( this.type() !== 'dir') return []\n\n\t\t\tconst path = this.path()\n\t\t\tthis.stat()\n\n\t\t\ttry {\n\t\t\t\treturn $node.fs.readdirSync( path )\n\t\t\t\t\t.filter( name => !/^\\.+$/.test( name ) )\n\t\t\t\t\t.map( name => this.resolve( name ) )\n\t\t\t} catch( e: any ) {\n\t\t\t\te.message += '\\n' + path\n\t\t\t\treturn this.$.$mol_fail_hidden(e)\n\t\t\t}\n\t\t}\n\t\t\n\t\tresolve( path : string ) {\n\t\t\treturn ( this.constructor as typeof $mol_file ).relative( $node.path.join( this.path() , path ) )\n\t\t}\n\t\t\n\t\trelate( base = ( this.constructor as typeof $mol_file ).relative( '.' )) {\n\t\t\treturn $node.path.relative( base.path() , this.path() ).replace( /\\\\/g , '/' )\n\t\t}\n\t\t\n\t\tappend( next : Uint8Array | string ) {\n\t\t\tconst path = this.path()\n\t\t\ttry {\n\t\t\t\t$node.fs.appendFileSync( path , next )\n\t\t\t} catch( e: any ) {\n\t\t\t\te.message += '\\n' + path\n\t\t\t\treturn this.$.$mol_fail_hidden(e)\n\t\t\t}\n\t\t}\n\t\t\n\t\topen( ... modes: readonly ( keyof typeof $mol_file_mode_open )[] ) {\n\t\t\treturn $node.fs.openSync(\n\t\t\t\tthis.path(),\n\t\t\t\tmodes.reduce( ( res, mode )=> res | $mol_file_mode_open[ mode ], 0 ),\n\t\t\t)\n\t\t}\n\n\t}\n\n\t$.$mol_file = $mol_file_node\n}\n","namespace $ {\n\texport class $mol_state_local_node< Value > extends $mol_state_local< Value > {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic dir() {\n\t\t\tconst base = process.env.XDG_DATA_HOME || ( $node.os.homedir() + '/.local/share' )\n\t\t\treturn $mol_file.absolute( base ).resolve( './hyoo_state_local' )\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic value< Value >(\n\t\t\tkey : string ,\n\t\t\tnext? : Value | null ,\n\t\t) : Value | null {\n\t\t\t\n\t\t\tconst file = this.dir().resolve( encodeURIComponent( key ) + '.json' )\n\t\t\t\n\t\t\tif( next === null ) {\n\t\t\t\tfile.exists( false )\n\t\t\t\treturn null\n\t\t\t}\n\t\t\t\n\t\t\tconst arg = next === undefined ? undefined : JSON.stringify( next )\n\t\t\treturn JSON.parse( file.text( arg ) || 'null' )\n\t\t\t\n\t\t}\n\t\t\n\t}\n\t$.$mol_state_local = $mol_state_local_node\n}\n","namespace $ {\n\t\n\tfunction parse( theme: string | null ) {\n\t\tif( theme === 'true' ) return true\n\t\tif( theme === 'false' ) return false\n\t\treturn null\n\t}\n\t\n\t/**\n\t * Switcher between light/dark themes (usually for `mol_theme_auto` plugin).\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_lights_demo\n\t */\n\texport function $mol_lights( this : $ , next? : boolean ) {\n\t\t\n\t\tconst arg = parse( this.$mol_state_arg.value( 'mol_lights' ) )\n\t\t\n\t\tconst base = false //this.$mol_media.match( '(prefers-color-scheme: light)' )\n\t\t\n\t\tif( next === undefined ) {\n\t\t\treturn arg ?? this.$mol_state_local.value< boolean >( '$mol_lights' ) ?? base\n\t\t} else {\n\t\t\tif( arg === null ) {\n\t\t\t\tthis.$mol_state_local.value( '$mol_lights' , next === base ? null : next )\n\t\t\t} else {\n\t\t\t\tthis.$mol_state_arg.value( 'mol_lights' , String( next ) )\n\t\t\t}\n\t\t\treturn next\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $.$$ {\n\n\t/**\n\t * The [plugin](../../plugin/readme.md) which defines theme based on [mol_lights](../../lights/readme.md).\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_lights_demo\n\t */\n\texport class $mol_theme_auto extends $.$mol_theme_auto {\n\n\t\ttheme() {\n\t\t\treturn this.$.$mol_lights() ? '$mol_theme_light' : '$mol_theme_dark'\n\t\t}\n\n\t}\n}\n","$mol_speck $mol_view\n\tattr *\n\t\t^\n\t\tmol_theme <= theme \\$mol_theme_accent\n\tstyle *\n\t\t^\n\t\tminHeight \\1em\n\tsub /\n\t\t<= value null\n","namespace $ {\n\n\t/**\n\t * Z-index values for layers\n\t * https://page.hyoo.ru/#!=xthcpx_wqmiba\n\t */\n\texport let $mol_layer = $mol_style_prop(\n\t\t'mol_layer',\n\t\t[\n\t\t\t'hover',\n\t\t\t'focus',\n\t\t\t'speck',\n\t\t\t'float',\n\t\t\t'popup',\n\t\t]\n\t)\n\n}\n","namespace $ { $mol_style_attach( \"mol/layer/layer.css\",\n \":root {\\n\\t--mol_layer_hover: 1;\\n\\t--mol_layer_focus: 2;\\n\\t--mol_layer_speck: 3;\\n\\t--mol_layer_float: 4;\\n\\t--mol_layer_popup: 5;\\n}\\n\"\n) }","namespace $ { $mol_style_attach( \"mol/speck/speck.view.css\",\n \"[mol_speck] {\\n\\tfont-size: .625rem;\\n\\tborder-radius: 1rem;\\n\\tmargin: -0.5rem -0.25rem;\\n\\talign-self: flex-start;\\n\\tmin-height: 1em;\\n\\tmin-width: .5em;\\n\\tvertical-align: sub;\\n\\tpadding: .25em .5em;\\n\\tposition: absolute;\\n\\tz-index: var(--mol_layer_speck);\\n\\ttext-align: center;\\n\\tline-height: 1;\\n\\tdisplay: inline-block;\\n\\twhite-space: nowrap;\\n\\ttext-overflow: ellipsis;\\n\\tuser-select: none;\\n}\\n\"\n) }","$mol_button $mol_view\n\tenabled true\n\tclick?event null\n\tevent_click?event null\n\tevent *\n\t\t^\n\t\tclick?event <=> event_activate?event null\n\t\tdblclick?event <=> clicks?event null\n\t\tkeydown?event <=> event_key_press?event null \n\tattr *\n\t\t^\n\t\tdisabled <= disabled false\n\t\trole \\button\n\t\ttabindex <= tab_index 0\n\t\ttitle <= hint_safe <= hint \\\n\tsub /$mol_view_content\n\t\t<= title\n\tSpeck $mol_speck\n\t\tvalue <= error \\\n","namespace $ {\n\t/**\n\t* Key names code for hotkey\n\t* @see [mol_hotkey](../../hotkey/hotkey.view.ts)\n\t*/\n\texport enum $mol_keyboard_code {\n\t\tbackspace = 8,\n\t\ttab = 9,\n\t\tenter = 13,\n\t\tshift = 16,\n\t\tctrl = 17,\n\t\talt = 18,\n\t\tpause = 19,\n\t\tcapsLock = 20,\n\t\tescape = 27,\n\t\tspace = 32,\n\t\tpageUp = 33,\n\t\tpageDown = 34,\n\t\tend = 35,\n\t\thome = 36,\n\t\tleft = 37,\n\t\tup = 38,\n\t\tright = 39,\n\t\tdown = 40,\n\t\tinsert = 45,\n\t\tdelete = 46,\n\t\tkey0 = 48,\n\t\tkey1 = 49,\n\t\tkey2 = 50,\n\t\tkey3 = 51,\n\t\tkey4 = 52,\n\t\tkey5 = 53,\n\t\tkey6 = 54,\n\t\tkey7 = 55,\n\t\tkey8 = 56,\n\t\tkey9 = 57,\n\t\tA = 65,\n\t\tB = 66,\n\t\tC = 67,\n\t\tD = 68,\n\t\tE = 69,\n\t\tF = 70,\n\t\tG = 71,\n\t\tH = 72,\n\t\tI = 73,\n\t\tJ = 74,\n\t\tK = 75,\n\t\tL = 76,\n\t\tM = 77,\n\t\tN = 78,\n\t\tO = 79,\n\t\tP = 80,\n\t\tQ = 81,\n\t\tR = 82,\n\t\tS = 83,\n\t\tT = 84,\n\t\tU = 85,\n\t\tV = 86,\n\t\tW = 87,\n\t\tX = 88,\n\t\tY = 89,\n\t\tZ = 90,\n\t\tmetaLeft = 91,\n\t\tmetaRight = 92,\n\t\tselect = 93,\n\t\tnumpad0 = 96,\n\t\tnumpad1 = 97,\n\t\tnumpad2 = 98,\n\t\tnumpad3 = 99,\n\t\tnumpad4 = 100,\n\t\tnumpad5 = 101,\n\t\tnumpad6 = 102,\n\t\tnumpad7 = 103,\n\t\tnumpad8 = 104,\n\t\tnumpad9 = 105,\n\t\tmultiply = 106,\n\t\tadd = 107,\n\t\tsubtract = 109,\n\t\tdecimal = 110,\n\t\tdivide = 111,\n\t\tF1 = 112,\n\t\tF2 = 113,\n\t\tF3 = 114,\n\t\tF4 = 115,\n\t\tF5 = 116,\n\t\tF6 = 117,\n\t\tF7 = 118,\n\t\tF8 = 119,\n\t\tF9 = 120,\n\t\tF10 = 121,\n\t\tF11 = 122,\n\t\tF12 = 123,\n\t\tnumLock = 144,\n\t\tscrollLock = 145,\n\t\tsemicolon = 186,\n\t\tequals = 187,\n\t\tcomma = 188,\n\t\tdash = 189,\n\t\tperiod = 190,\n\t\tforwardSlash = 191,\n\t\tgraveAccent = 192,\n\t\tbracketOpen = 219,\n\t\tslashBack = 220,\n\t\tslashBackLeft = 226,\n\t\tbracketClose = 221,\n\t\tquoteSingle = 222\n\t}\n}\n","namespace $.$$ {\n\t\n\t/**\n\t * Simple button.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_button_demo\n\t */\n\texport class $mol_button extends $.$mol_button {\n\n\t\t@ $mol_mem\n\t\tstatus( next = [ null as any ] ) { return next }\n\t\t\n\t\tdisabled() {\n\t\t\treturn !this.enabled()\n\t\t}\n\t\t\n\t\tevent_activate( next : Event ) {\n\t\t\t\n\t\t\tif( !next ) return\n\t\t\tif( !this.enabled() ) return\n\n\t\t\ttry {\n\t\t\t\t\n\t\t\t\tthis.event_click( next )\n\t\t\t\tthis.click( next )\n\t\t\t\tthis.status([ null ])\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t\n\t\t\t\tPromise.resolve().then( ()=> this.status([ error ]) )\n\t\t\t\t$mol_fail_hidden( error )\n\t\t\t\t\n\t\t\t}\n\n\t\t}\n\t\t\n\t\tevent_key_press ( event: KeyboardEvent ) { \n\t\t\tif( event.keyCode === $mol_keyboard_code.enter ) {\n\t\t\t\treturn this.event_activate( event )\n\t\t\t}\n\t\t} \n\t\t\n\t\ttab_index() {\n\t\t\treturn this.enabled() ? super.tab_index() : -1\n\t\t}\n\n\t\terror() {\n\n\t\t\tconst [ error ] = this.status()\n\t\t\tif( !error ) return ''\n\n\t\t\tif( error instanceof Promise ) {\n\t\t\t\treturn $mol_fail_hidden( error )\n\t\t\t}\n\t\t\t\n\t\t\treturn String( error.message ?? error )\n\n\t\t}\n\t\t\n\t\thint_safe() {\n\t\t\ttry {\n\t\t\t\treturn this.hint()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn ''\n\t\t\t}\n\t\t}\n\n\t\tsub_visible() {\n\t\t\treturn [\n\t\t\t\t... this.error() ? [ this.Speck() ] : [] ,\n\t\t\t\t... this.sub() ,\n\t\t\t]\n\t\t}\n\t\t\n\t}\n}\n","namespace $ { $mol_style_attach( \"mol/button/button.view.css\",\n \"[mol_button] {\\n\\tborder: none;\\n\\tfont: inherit;\\n\\tdisplay: inline-flex;\\n\\tflex-shrink: 0;\\n\\ttext-decoration: inherit;\\n\\tcursor: inherit;\\n\\tposition: relative;\\n\\tbox-sizing: border-box;\\n\\tword-break: normal;\\n\\tcursor: default;\\n\\tuser-select: none;\\n\\tborder-radius: var(--mol_gap_round);\\n}\\n\\n[mol_button]:where(:not(:disabled)):hover {\\n\\tz-index: var(--mol_layer_hover);\\n}\\n\\n[mol_button]:focus-visible {\\n\\toutline: none;\\n\\tz-index: var(--mol_layer_focus);\\n}\\n\"\n) }","$mol_button_typed $mol_button\n\tminimal_height 40\n\tminimal_width 40\n","namespace $ { $mol_style_attach( \"mol/button/typed/typed.view.css\",\n \"[mol_button_typed] {\\n\\talign-content: center;\\n\\talign-items: center;\\n\\tpadding: var(--mol_gap_text);\\n\\tborder-radius: var(--mol_gap_round);\\n\\tgap: var(--mol_gap_space);\\n\\tuser-select: none;\\n\\tcursor: pointer;\\n}\\n\\n[mol_button_typed][disabled] {\\n\\tpointer-events: none;\\n}\\n\\n[mol_button_typed]:hover ,\\n[mol_button_typed]:focus-visible {\\n\\tbackground-color: var(--mol_theme_hover);\\n}\\n\\n[mol_button_typed]:active {\\n\\tcolor: var(--mol_theme_focus);\\n}\\n\\n\"\n) }","$mol_button_minor $mol_button_typed\n","namespace $ { $mol_style_attach( \"mol/button/minor/minor.view.css\",\n \"[mol_button_minor] {\\n\\tcolor: var(--mol_theme_control);\\n}\\n\\n[mol_button_minor][disabled] {\\n\\tcolor: var(--mol_theme_shade);\\n}\\n\"\n) }","$mol_check $mol_button_minor\n\tattr *\n\t\t^\n\t\tmol_check_checked <= checked? false\n\t\taria-checked <= aria_checked \\false\n\t\trole <= aria_role \\checkbox\n\tsub /$mol_view_content\n\t\t<= Icon null\n\t\t<= label /\n\t\t\t<= Title $mol_view\n\t\t\t\tsub /\n\t\t\t\t\t<= title \\\n","namespace $ {\n\t\n\texport function $mol_maybe< Value >( value : Value | null | undefined ) : Value[] {\n\t\treturn ( value == null ) ? [] : [ value ]\n\t}\n\t\n}\n","namespace $ { $mol_style_attach( \"mol/check/check.css\",\n \"[mol_check] {\\n\\tflex: 0 0 auto;\\n\\tjustify-content: flex-start;\\n\\talign-content: center;\\n\\t/* align-items: flex-start; */\\n\\tborder: none;\\n\\tfont-weight: inherit;\\n\\tbox-shadow: none;\\n\\ttext-align: left;\\n\\tdisplay: inline-flex;\\n\\tflex-wrap: nowrap;\\n}\\n\\n[mol_check_title] {\\n\\tflex-shrink: 1;\\n}\\n\"\n) }","namespace $.$$ {\n\n\t/**\n\t * Checkbox UI component. See Variants for more concrete implementations.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_check_box_demo\n\t */\n\texport class $mol_check extends $.$mol_check {\n\n\t\tclick( next? : Event ) {\n\t\t\tif( next?.defaultPrevented ) return\n\t\t\tthis.checked( !this.checked() )\n\t\t\tif( next ) next.preventDefault()\n\t\t}\n\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\t... $mol_maybe( this.Icon() ) ,\n\t\t\t\t... this.label() ,\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\n\t\tlabel() {\n\t\t\treturn this.title() ? super.label() : []\n\t\t}\n\t\t\n\t\taria_checked() {\n\t\t\treturn String( this.checked() )\n\t\t}\n\n\t}\n}\n","$mol_check_icon $mol_check\n","namespace $ { $mol_style_attach( \"mol/check/icon/icon.view.css\",\n \"[mol_check_icon]:where([mol_check_checked]) {\\n\\tcolor: var(--mol_theme_current);\\n}\\n\"\n) }","$mol_svg $mol_view\n\tdom_name \\svg\n\tdom_name_space \\http://www.w3.org/2000/svg\n\tfont_size 16\n\tfont_family \\\n\tstyle_size *\n","namespace $ {\n\t\n\t/** State of time moment */\n\texport class $mol_state_time extends $mol_object {\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic task( precision: number, reset?: null ): $mol_after_timeout | $mol_after_frame {\n\t\t\t\n\t\t\tif( precision ) {\n\t\t\t\treturn new $mol_after_timeout( precision, ()=> this.task( precision, null ) )\n\t\t\t} else {\n\t\t\t\treturn new $mol_after_frame( ()=> this.task( precision, null ) )\n\t\t\t}\n\t\t\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic now( precision: number ) {\n\t\t\tthis.task( precision )\n\t\t\treturn Date.now()\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $.$$ {\n\t/** Base SVG component to display SVG images or icons. */\n\texport class $mol_svg extends $.$mol_svg {\n\t\t@$mol_mem\n\t\tcomputed_style() {\n\t\t\tconst win = this.$.$mol_dom_context\n\t\t\tconst style = win.getComputedStyle(this.dom_node()) as Record\n\n\t\t\tif(!style['font-size']) $mol_state_time.now( 0 )\n\n\t\t\treturn style\n\t\t}\n\n\t\t@$mol_mem\n\t\tfont_size(): number {\n\t\t\treturn parseInt(this.computed_style()['font-size']) || 16\n\t\t}\n\n\t\t@$mol_mem\n\t\tfont_family() {\n\t\t\treturn this.computed_style()['font-family']\n\t\t}\n\n\t}\n}\n","$mol_svg_root $mol_svg\n\tdom_name \\svg\n\tattr *\n\t\t^\n\t\tviewBox <= view_box \\0 0 100 100\n\t\tpreserveAspectRatio <= aspect \\xMidYMid\n","namespace $ { $mol_style_attach( \"mol/svg/root/root.view.css\",\n \"[mol_svg_root] {\\n\\toverflow: hidden;\\n}\\n\"\n) }","$mol_svg_path $mol_svg\n\tdom_name \\path\n\tattr *\n\t\t^\n\t\td <= geometry \\\n\n","$mol_icon $mol_svg_root\n\tview_box \\0 0 24 24\n\tminimal_width 16\n\tminimal_height 16\n\tsub /\n\t\t<= Path $mol_svg_path\n\t\t\tgeometry <= path \\\n","namespace $ { $mol_style_attach( \"mol/icon/icon.view.css\",\n \"[mol_icon] {\\n\\tfill: currentColor;\\n\\tstroke: none;\\n\\twidth: 1em;\\n\\theight: 1.5em;\\n\\tflex: 0 0 auto;\\n\\tvertical-align: top;\\n\\tdisplay: inline-block;\\n\\tfilter: drop-shadow(0px 1px 1px var(--mol_theme_back));\\n\\ttransform-origin: center;\\n}\\n\\n[mol_icon_path] {\\n\\ttransform-origin: center;\\n}\\n\"\n) }","$mol_icon_brightness_6 $mol_icon path \\M12,18V6C15.31,6 18,8.69 18,12C18,15.31 15.31,18 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z\n","namespace $ {\n\t\n\texport interface $mol_locale_dict {\n\t\t[ key : string ] : string\n\t}\n\t\n\t/**\n\t * Localisation in $mol framework\n\t * @see https://mol.hyoo.ru/#!section=docs/=s5aqnb_odub8l\n\t */\n\texport class $mol_locale extends $mol_object {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic lang_default() {\n\t\t\treturn 'en'\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic lang( next? : string ) {\n\t\t\treturn this.$.$mol_state_local.value( 'locale' , next ) || $mol_dom_context.navigator.language.replace( /-.*/ , '' ) || this.lang_default()\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic source( lang : string ) {\n\t\t\treturn JSON.parse( this.$.$mol_file.relative( `web.locale=${ lang }.json` ).text().toString() )\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic texts( lang : string , next? : $mol_locale_dict ) : $mol_locale_dict {\n\t\t\tif( next ) return next\n\t\t\t\n\t\t\ttry {\n\t\t\t\treturn this.source( lang ).valueOf()\n\t\t\t} catch( error: any ) {\n\t\t\t\tif( $mol_fail_catch( error ) ) {\n\t\t\t\t\tconst def = this.lang_default()\n\t\t\t\t\tif( lang === def ) throw error\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic text( key : string ): string {\n\t\t\t\n\t\t\tconst lang = this.lang()\n\n\t\t\tconst target = this.texts( lang )[ key ]\n\t\t\tif( target ) return target\n\t\t\t\n\t\t\tthis.warn( key )\n\t\t\t\n\t\t\tconst en = this.texts( 'en' )[ key ]\n\t\t\tif( !en ) return key\n\t\t\t\n\t\t\t// try {\n\t\t\t// \treturn $mol_wire_sync( $hyoo_lingua_translate ).call( this.$, lang, en )\n\t\t\t// } catch( error ) {\n\t\t\t// \t$mol_fail_log( error )\n\t\t\t// }\n\t\t\t\n\t\t\treturn en\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic warn( key : string ) {\n\t\t\tconsole.warn( `Not translated to \"${ this.lang() }\": ${ key }` )\n\t\t\treturn null\n\t\t}\n\t\t\n\t}\n\t\n}\n","$mol_lights_toggle $mol_check_icon\n\tIcon <= Lights_icon $mol_icon_brightness_6\n\thint @ \\Toggle lights\n\tchecked? <=> lights? false\n","\n\t\t()\n\t\t\tthis\n\t\t\t[] \\$\n\t\t\t[] \\$mol_locale\n\t\t\t[] \\text\n\t\t\t(,) #key\n\t","namespace $.$$ {\n\t/**\n\t * Toggle for Switcher between light/dark themes (usually for `mol_theme_auto` plugin).\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_lights_demo\n\t */\n\texport class $mol_lights_toggle extends $.$mol_lights_toggle {\n\t\tlights( next? : boolean ) {\n\t\t\treturn this.$.$mol_lights( next )\n\t\t}\n\t}\n}\n","$mol_link $mol_view\n\turi \\\n\tdom_name \\a\n\turi_off \\\n\turi_native null\n\texternal false\n\tattr *\n\t\t^\n\t\thref <= uri_toggle \\\n\t\ttitle <= hint_safe <= hint \\\n\t\ttarget <= target \\_self\n\t\tdownload <= file_name \\\n\t\tmol_link_current <= current false\n\t\trel <= relation \\\n\tsub /$mol_view_content\n\t\t<= title\n\targ *\n\tevent *\n\t\t^\n\t\tclick?event <=> click?event <=> event_click?event null\n","namespace $.$$ {\n\t\n\t/**\n\t * Dynamic hyperlink. It can add, change or remove parameters. A link that leads to the current page has [mol_link_current] attribute set to true.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_link_demo\n\t */\n\texport class $mol_link extends $.$mol_link {\n\t\t\n\t\t@ $mol_mem\n\t\turi_toggle() {\n\t\t\treturn this.current() ? this.uri_off() : this.uri()\n\t\t}\n\n\t\t@ $mol_mem\n\t\turi() {\n\t\t\treturn new this.$.$mol_state_arg( this.state_key() ).link( this.arg() )\n\t\t}\n\n\t\t@ $mol_mem\n\t\turi_off() {\n\t\t\tconst arg2: Record = {}\n\t\t\tfor( let i in this.arg() ) arg2[i] = null\n\t\t\t\n\t\t\treturn new this.$.$mol_state_arg( this.state_key() ).link( arg2 )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\turi_native() {\n\t\t\tconst base = this.$.$mol_state_arg.href()\n\t\t\treturn new URL( this.uri() , base )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tcurrent() {\n\n\t\t\tconst base = this.$.$mol_state_arg.href_normal()\n\t\t\tconst target = this.uri_native().toString()\n\n\t\t\tif( base === target ) return true\n\t\t\t\n\t\t\tconst args = this.arg() as Record\n\t\t\t\n\t\t\tconst keys = Object.keys( args ).filter( key => args[ key ] != null )\n\t\t\tif( keys.length === 0 ) return false\n\n\t\t\tfor( const key of keys ) {\n\t\t\t\tif( this.$.$mol_state_arg.value( key ) != args[ key ] ) return false\n\t\t\t}\n\n\t\t\treturn true\n\t\t}\n\n\t\tfile_name() {\n\t\t\treturn null as unknown as string\n\t\t}\n\n\t\tminimal_height() {\n\t\t\treturn Math.max( super.minimal_height(), 24 )\n\t\t}\n\t\t\n\t\texternal() {\n\t\t\treturn this.uri_native().origin !== $mol_dom_context.location.origin\n\t\t}\n\t\t\n\t\ttarget(): '_self' | '_blank' | '_top' | '_parent' | string {\n\t\t\treturn this.external() ? '_blank' : '_self'\n\t\t}\n\n\t\thint_safe() {\n\t\t\ttry {\n\t\t\t\treturn this.hint()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn ''\n\t\t\t}\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\tconst { rem } = $mol_style_unit\n\n\t$mol_style_define( $mol_link , {\n\t\t\n\t\ttextDecoration: 'none',\n\t\tcolor: $mol_theme.control,\n\t\tstroke: 'currentcolor',\n\t\tcursor: 'pointer',\n\t\tpadding: $mol_gap.text,\n\t\tboxSizing: 'border-box',\n\t\tposition: 'relative',\n\t\tminWidth: rem(2.5),\n\t\tgap: $mol_gap.space,\n\t\t\n\t\tborder: {\n\t\t\tradius: $mol_gap.round,\n\t\t},\n\n\t\t':hover': {\n\t\t\t\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.hover,\n\t\t\t},\n\t\t\t\n\t\t},\n\n\t\t':focus-visible': {\n\t\t\t\n\t\t\toutline: 'none',\n\t\t\t\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.hover,\n\t\t\t},\n\t\t\t\n\t\t},\n\n\t\t// ':has(:focus-visible)': {\n\t\t// \toutline: 'none',\n\t\t// \tbackground: {\n\t\t// \t\tcolor: $mol_theme.hover,\n\t\t// \t}\n\t\t// },\n\t\t\n\t\t':active': {\n\t\t\tcolor: $mol_theme.focus,\n\t\t},\n\n\t\t'@': {\n\t\t\tmol_link_current: {\n\t\t\t\t'true': {\n\t\t\t\t\tcolor: $mol_theme.current,\n\t\t\t\t\ttextShadow: '0 0',\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\n\t} )\n\n}\n","$mol_icon_script $mol_icon path \\M17.8,20C17.4,21.2 16.3,22 15,22H5C3.3,22 2,20.7 2,19V18H5L14.2,18C14.6,19.2 15.7,20 17,20H17.8M19,2H8C6.3,2 5,3.3 5,5V16H16V17C16,17.6 16.4,18 17,18H18V5C18,4.4 18.4,4 19,4C19.6,4 20,4.4 20,5V6H22V5C22,3.3 20.7,2 19,2Z\n","$mol_icon_script_text $mol_icon path \\M17.8,20C17.4,21.2 16.3,22 15,22H5C3.3,22 2,20.7 2,19V18H5L14.2,18C14.6,19.2 15.7,20 17,20H17.8M19,2C20.7,2 22,3.3 22,5V6H20V5C20,4.4 19.6,4 19,4C18.4,4 18,4.4 18,5V18H17C16.4,18 16,17.6 16,17V16H5V5C5,3.3 6.3,2 8,2H19M8,6V8H15V6H8M8,10V12H14V10H8Z\n","$mol_link_source $mol_link\n\thint @ \\Source code\n\tsub /\n\t\t<= Icon $mol_icon_script_text\n","$mol_button_major $mol_button_typed\n\tattr *\n\t\t^\n\t\tmol_theme \\$mol_theme_accent\n","namespace $ { $mol_style_attach( \"mol/button/major/major.view.css\",\n \"[mol_button_major][disabled] {\\n\\topacity: .5;\\n\\tfilter: grayscale();\\n}\\n\"\n) }","$mol_embed_native $mol_scroll\n\turi? \\\n\tdom_name \\object\n\twindow null\n\tattr *\n\t\t^\n\t\tdata <= uri\n\t\ttype <= mime \\\n\tsub /\n\t\t<= Fallback $mol_link\n\t\t\turi <= uri\n\t\t\tsub /\n\t\t\t\t<= title \\\n\tmessage *\n\t\thashchange? <=> uri_change? null\n","namespace $ {\n\n\texport function $mol_promise< Result = void >() {\n\t\t\n\t\tlet done!: ( res: Result | PromiseLike< Result > )=> void\n\t\tlet fail!: ( error?: any ) => void\n\t\t\n\t\tconst promise = new Promise< Result >( ( d, f ) => {\n\t\t\tdone = d\n\t\t\tfail = f\n\t\t} )\n\t\t\n\t\treturn Object.assign( promise, {\n\t\t\tdone,\n\t\t\tfail,\n\t\t} )\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_wait_timeout_async( this: $, timeout: number ) {\n\t\tconst promise = $mol_promise()\n\t\tconst task = new this.$mol_after_timeout( timeout , ()=> promise.done() )\n\t\treturn Object.assign( promise, {\n\t\t\tdestructor: ()=> task.destructor()\n\t\t} )\n\t}\n\t\n\texport function $mol_wait_timeout( this: $, timeout: number ) {\n\t\treturn this.$mol_wire_sync( this ).$mol_wait_timeout_async( timeout )\n\t}\n\t\n}\n","namespace $.$$ {\n\texport class $mol_embed_native extends $.$mol_embed_native {\n\n\t\t@ $mol_mem\n\t\twindow() {\n\t\t\t$mol_wire_solid()\n\t\t\treturn $mol_wire_sync( this as $mol_embed_native ).load( this.dom_node_actual() as HTMLIFrameElement )\n\t\t}\n\t\t\n\t\tload( frame: HTMLIFrameElement ) {\n\t\t\treturn new Promise< Window >( ( done, fail )=> {\n\t\t\t\t\n\t\t\t\tframe.onload = () => {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif( frame.contentWindow!.location.href === 'about:blank' ) {\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t}\n\t\t\t\t\t} catch { }\n\t\t\t\t\tdone( frame.contentWindow! )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tframe.onerror = ( event : Event | string ) => {\n\t\t\t\t\tfail( typeof event === 'string' ? new Error( event ) : ( event as ErrorEvent ).error || event )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\turi_resource() {\n\t\t\treturn this.uri().replace( /#.*/, '' )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tmessage_listener() {\n\t\t\treturn new $mol_dom_listener(\n\t\t\t\t$mol_dom_context,\n\t\t\t\t'message',\n\t\t\t\t$mol_wire_async( this ).message_receive\n\t\t\t)\n\t\t}\n\t\t\n\t\tmessage_receive( event?: MessageEvent<[ string, string ]> ) {\n\t\t\t\n\t\t\tif( !event ) return\n\t\t\tif( event.source !== this.window() ) return\n\t\t\tif( !Array.isArray( event.data ) ) return\n\t\t\t\n\t\t\t(this.message() as any)[ event.data[0] ]?.( event )\n\t\t}\n\n\t\turi_change( event: MessageEvent<[ string, string ]> ) {\n\t\t\tthis.$.$mol_wait_timeout( 1000 )\n\t\t\tthis.uri( event.data[1] )\n\t\t}\n\n\t\tauto() {\n\t\t\treturn [\n\t\t\t\tthis.message_listener(),\n\t\t\t\tthis.window(),\n\t\t\t]\n\t\t}\n\t\t\n\t}\n}\n","namespace $ { $mol_style_attach( \"mol/embed/native/native.view.css\",\n \"[mol_embed_native] {\\n\\tmax-width: 100%;\\n\\tmax-height: 100vh;\\n\\tobject-fit: cover;\\n\\tdisplay: flex;\\n\\tflex: 1 1 auto;\\n\\tobject-position: top left;\\n\\tborder-radius: var(--mol_gap_round);\\n\\taspect-ratio: 4/3;\\n}\\n\"\n) }","$mol_frame $mol_embed_native\n\tdom_name \\iframe\n\tattr *\n\t\t^\n\t\tdata null\n\t\ttype null\n\t\tsrc <= uri? \\about:config\n\t\tsrcdoc <= html null\n\t\tallow <= allow \\\n\t\t- allowfullscreen <=\n\tfullscreen true\n\taccelerometer true\n\tautoplay true\n\tencription true\n\tgyroscope true\n\tpip true\n\tclipboard_read true\n\tclipboard_write true\n","namespace $.$$ {\n\n\t/**\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_frame_demo\n\t */\n\texport class $mol_frame extends $.$mol_frame {\n\t\t\n\t\twindow() {\n\t\t\t// if( this.html() ) return ( this.dom_node() as HTMLIFrameElement ).contentWindow!\n\t\t\treturn super.window()\n\t\t}\n\n\t\tallow() {\n\t\t\treturn [\n\t\t\t\t... this.fullscreen() ? [ 'fullscreen' ] : [] ,\n\t\t\t\t... this.accelerometer() ? [ 'accelerometer' ] : [] ,\n\t\t\t\t... this.autoplay() ? [ 'autoplay' ] : [] ,\n\t\t\t\t... this.encription() ? [ 'encrypted-media' ] : [] ,\n\t\t\t\t... this.gyroscope() ? [ 'gyroscope' ] : [] ,\n\t\t\t\t... this.pip() ? [ 'picture-in-picture' ] : [] ,\n\t\t\t\t... this.clipboard_read() ? [ `clipboard-read ${ this.uri() }` ] : [],\n\t\t\t\t... this.clipboard_write() ? [ `clipboard-write ${ this.uri() }` ] : [],\n\t\t\t].join('; ')\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n\t$mol_style_define( $mol_frame , {\n\t\tborder: {\n\t\t\tstyle: 'none',\n\t\t},\n\t\tmaxHeight: $mol_style_unit.vh(100),\n\t} )\n}\n","$hyoo_showcase $mol_page\n\tplugins /\n\t\t<= Theme $mol_theme_auto\n\tattr * mol_theme \\$mol_theme_dark\n\ttitle @ \\$mol applications\n\ttools /\n\t\t<= Lights $mol_lights_toggle\n\t\t<= Source $mol_link_source uri \\https://github.com/hyoo-ru/showcase.hyoo.ru\n\t\t<= Offer_link $mol_link\n\t\t\turi \\https://offer.hyoo.ru\n\t\t\tsub /\n\t\t\t\t<= Offer_button $mol_button_major\n\t\t\t\t\ttitle <= offer_title @ \\Order\n\tbody / <= Scroll $mol_scroll sub <= apps /\n\t\t<= App_widgets $hyoo_showcase_app\n\t\t\ttitle <= app_widgets_title @ \\$mol components\n\t\t\tdetails \\https://mol.hyoo.ru/#!section=demos\n\t\t<= App_scout $hyoo_showcase_app\n\t\t\ttitle <= app_scout_title @ \\Scout games\n\t\t\tdetails \\https://scout.hyoo.ru/#gist=%D0%A1%D1%82%D0%B5%D0%BD%D0%BA%D0%B0%20%D0%BD%D0%B0%20%D1%81%D1%82%D0%B5%D0%BD%D0%BA%D1%83\n\t\t<= App_piterjs $hyoo_showcase_app\n\t\t\ttitle <= app_piterjs_title @ \\PiterJS\n\t\t\tdetails \\https://piterjs.org/\n\t\t<= App_shelter $hyoo_showcase_app\n\t\t\ttitle <= app_shelter_title @ \\Shelters ERP\n\t\t\tdetails \\https://shelter.hyoo.ru/#login=user\n\t\t<= App_fallacy $hyoo_showcase_app\n\t\t\ttitle <= app_fallacy_title @ \\Fallacies collection\n\t\t\tdetails \\https://fallacy.hyoo.ru/\n\t\t<= App_toys $hyoo_showcase_app\n\t\t\ttitle <= app_toys_title @ \\Online store\n\t\t\tdetails \\https://toys.hyoo.ru/#size=M/popular\n\t\t<= App_calc $hyoo_showcase_app\n\t\t\ttitle <= app_calc_title @ \\Spreadsheet\n\t\t\tdetails \\https://calc.hyoo.ru/#title=a*x**2%20%2B%20b*x%20%2B%20c%20%3D%200/A1=a/B2=6/A2=3/B1=b/C1=c/E1=D/E2=%3D%20B2**2%20-%204*A2*C2/G1=x1/G2=%3D%20%28%20-B2%20%2B%20sqrt%28E2%29%20%29%20%2F%202%20%2F%20A2/H1=x2/H2=%3D%20%28%20-B2%20-%20sqrt%28E2%29%20%29%20%2F%202%20%2F%20A2/C2=0\n\t\t<= App_notes $hyoo_showcase_app\n\t\t\ttitle <= app_notes_title @ \\Notes\n\t\t\tdetails \\https://notes.hyoo.ru/#\n\t\t<= App_invest $hyoo_showcase_app\n\t\t\ttitle <= app_invest_title @ \\Investments\n\t\t\tdetails \\https://invest.hyoo.ru/\n\t\t<= App_todomvc $hyoo_showcase_app\n\t\t\ttitle <= app_todomvc_title @ \\ToDoMVC\n\t\t\tdetails \\https://todomvc.hyoo.ru/\n\t\t<= App_life $hyoo_showcase_app\n\t\t\ttitle <= app_life_title @ \\Life game\n\t\t\tdetails \\https://life.hyoo.ru/#snapshot=0~1fffe~2ffff~20000~20001~10002~30000~6ffff~7ffff~7fffe~6fffe~6fffd~7fffd~80000~8fffc~a0000~a0001~afffc~afffb~14fffe~15fffd~15fffe~14fffd~-3~-fffd~-10003~-1fffd~-20002~-2fffe~-3ffff~-40000~-30001~-d0000~-e0000~-d0001~-c0001\n\t\t<= App_habhub $hyoo_showcase_app\n\t\t\ttitle <= app_habhub_title @ \\Reader\n\t\t\tdetails \\https://habhub.hyoo.ru/#gist=https%3A%2F%2Fapi.github.com%2Frepos%2Fnin-jin%2FHabHub%2Fissues%2F3\n\t\t<= App_questions $hyoo_showcase_app\n\t\t\ttitle <= app_questions_title @ \\StackOverflow client\n\t\t\tdetails \\https://mol.js.org/app/questions/-/#question=2003505\n\t\t<= App_slides $hyoo_showcase_app\n\t\t\ttitle <= app_slides_title @ \\Slideshow\n\t\t\tdetails \\https://slides.hyoo.ru/#slides=https%3A%2F%2Fnin-jin.github.io%2Fslides%2Forp%2F/slide=2\n\t\t<= App_iq $hyoo_showcase_app\n\t\t\ttitle <= app_iq_title @ \\IQ tester\n\t\t\tdetails \\https://iq.hyoo.ru/\n\t\t<= App_rdf $hyoo_showcase_app\n\t\t\ttitle <= app_rdf_title @ \\RDF browser\n\t\t\tdetails \\http://rdf.hyoo.ru/#uri=http%3A%2F%2Fdbpedia.org%2Fontology%2Fhead\n\t\t<= App_lamps $hyoo_showcase_app\n\t\t\ttitle <= app_lamps_title @ \\Lamps database\n\t\t\tdetails \\https://lamps.hyoo.ru/#lamp=1\n\t\t<= App_bench $hyoo_showcase_app\n\t\t\ttitle <= app_bench_title @ \\Benchmark\n\t\t\tdetails \\https://bench.hyoo.ru/#bench=https%3A%2F%2Fhyoo-ru.github.io%2Ftodomvc%2Fbenchmark%2F/sort=fill\n\t\t<= App_request $hyoo_showcase_app\n\t\t\ttitle <= app_request_title @ \\HTTP Debug Tool\n\t\t\tdetails \\https://http.hyoo.ru/#uri=https%3A%2F%2Fapi.github.com%2Frepos%2Fhyoo-ru%2Fmam_mol\n\t\t<= App_jsperf $hyoo_showcase_app\n\t\t\ttitle <= app_jsperf_title @ \\JS Benchmarking Tool\n\t\t\tdetails \\https://perf.js.hyoo.ru/#sources=%5B%22window.location.href%3B%22%2C%22document.location.href%3B%22%5D/prefix/postfix/optimized=true\n\t\t<= App_issues $hyoo_showcase_app\n\t\t\ttitle <= app_issues_title @ \\GitHub projects comparison\n\t\t\tdetails \\https://compare.github.hyoo.ru/#projects=hyoo-ru%2Fmam_mol%2Cfacebook%2Freact%2Cvuejs%2Fvue\n\t\t<= App_tree $hyoo_showcase_app\n\t\t\ttitle <= app_tree_title @ \\Tree Sandbox\n\t\t\tdetails \\https://tree.hyoo.ru/#pipeline=%24mol_tree2_from_string~%24mol_jack_transform~%24mol_tree2_js_to_text~%24mol_tree2_text_to_string~%24mol_js_eval/source=hack%20%2Bpipe%0A%09hack%20%7C%3E%20var%0A%09%09pipe%0A%09%09from%0A%09hack%20%3C%7C%20pipe%0A%09from%0A%0Ahack%20%2Bmath%0A%09hack%20square%20%28**%29%0A%09%09%3C%7C%0A%09%092%0A%09hack%20next%20%28%2B%29%0A%09%09%3C%7C%0A%09%091%0A%09from%0A%0Ahack%20%2Bdebug%0A%09hack%20log%20%28%29%0A%09%09console%0A%09%09%5B%5D%20%5Clog%0A%09%09%28%2C%29%20from%0A%09from%0A%0A%2Bpipe%20%2Bmath%20%2Bdebug%20%7B%3B%7D%0A%09%7C%3E%203%0A%09%7C%3E%20square%0A%09%7C%3E%20next%0A%09log%20%3C%7C%0A%09return%20%3C%7C%0A\n\t\t<= App_icons $hyoo_showcase_app\n\t\t\ttitle <= app_icons_title @ \\Icons galery\n\t\t\tdetails \\https://nin-jin.github.io/mol_icon/\n\t\t<= App_portal $hyoo_showcase_app\n\t\t\ttitle <= app_portal_title @ \\Portal\n\t\t\tdetails \\https://mol.hyoo.ru/#app=components\n\n$hyoo_showcase_app $mol_link\n\ttarget \\_blank\n\turi <= details \\\n\tpreview \\\n\tsub /\n\t\t<= Title $mol_view sub / <= title \\\n\t\t<= Container $mol_view sub /\n\t\t\t<= Demo $mol_frame\n\t\t\t\tstyle * background-image <= background \\\n\t\t\t\turi <= details \\\n","namespace $.$$ {\n\n\texport class $hyoo_showcase_app extends $.$hyoo_showcase_app {\n\n\t\tbackground() {\n\t\t\treturn this.preview() ? `url(${ JSON.stringify( this.preview() ) })` : ''\n\t\t}\n\n\t}\n\n}\n","namespace $ { $mol_style_attach( \"hyoo/showcase/showcase.view.css\",\n \"[hyoo_showcase] {\\n\\tdisplay: flex;\\n}\\n\\n[hyoo_showcase_scroll] {\\n\\tdisplay: flex;\\n\\tflex-direction: row;\\n\\tflex-wrap: wrap;\\n\\tpadding: .5rem;\\n}\\n\\n[hyoo_showcase_app] {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tflex: 1 1 26rem;\\n\\tmargin: 0;\\n\\theight: 16rem;\\n\\tcursor: pointer;\\n}\\n\\n[hyoo_showcase_app]:hover {\\n\\t/* opacity: .9; */\\n}\\n\\n[hyoo_showcase_app_title] {\\n\\tflex: none;\\n}\\n\\n[hyoo_showcase_app_container] {\\n position: relative;\\n width: 100%;\\n max-width: 100%;\\n height: 13rem;\\n max-height: 100%;\\n}\\n\\n[hyoo_showcase_app_demo] {\\n\\tpointer-events: none;\\n\\tbox-shadow: 0 0 0 2px var(--mol_theme_line);\\n\\twidth: 200%;\\n max-width: 200%;\\n max-height: 200%;\\n transform: scale( .5 );\\n transform-origin: 0 0;\\n background-size: cover;\\n position: absolute;\\n}\\n\\n[hyoo_showcase_offer_link] {\\n\\tpadding: 0;\\n}\\n\"\n) }"]} \ No newline at end of file diff --git a/node.mjs b/node.mjs index 1dbd4ec..565bb57 100644 --- a/node.mjs +++ b/node.mjs @@ -3865,36 +3865,6 @@ var $; $.$mol_state_local = $mol_state_local; })($ || ($ = {})); -; -"use strict"; -var $; -(function ($) { - function parse(theme) { - if (theme === 'true') - return true; - if (theme === 'false') - return false; - return null; - } - function $mol_lights(next) { - const arg = parse(this.$mol_state_arg.value('mol_lights')); - const base = false; - if (next === undefined) { - return arg ?? this.$mol_state_local.value('$mol_lights') ?? base; - } - else { - if (arg === null) { - this.$mol_state_local.value('$mol_lights', next === base ? null : next); - } - else { - this.$mol_state_arg.value('mol_lights', String(next)); - } - return next; - } - } - $.$mol_lights = $mol_lights; -})($ || ($ = {})); - ; "use strict"; @@ -3902,513 +3872,439 @@ var $; "use strict"; var $; (function ($) { - var $$; - (function ($$) { - class $mol_theme_auto extends $.$mol_theme_auto { - theme() { - return this.$.$mol_lights() ? '$mol_theme_light' : '$mol_theme_dark'; - } - } - $$.$mol_theme_auto = $mol_theme_auto; - })($$ = $.$$ || ($.$$ = {})); + const decoders = {}; + function $mol_charset_decode(buffer, encoding = 'utf8') { + let decoder = decoders[encoding]; + if (!decoder) + decoder = decoders[encoding] = new TextDecoder(encoding); + return decoder.decode(buffer); + } + $.$mol_charset_decode = $mol_charset_decode; })($ || ($ = {})); -; - ($.$mol_speck) = class $mol_speck extends ($.$mol_view) { - theme(){ - return "$mol_theme_accent"; - } - value(){ - return null; - } - attr(){ - return {...(super.attr()), "mol_theme": (this.theme())}; - } - style(){ - return {...(super.style()), "minHeight": "1em"}; - } - sub(){ - return [(this.value())]; - } - }; - - ; "use strict"; var $; (function ($) { - $.$mol_layer = $mol_style_prop('mol_layer', [ - 'hover', - 'focus', - 'speck', - 'float', - 'popup', - ]); + const TextEncoder = globalThis.TextEncoder ?? $node.util.TextEncoder; + const encoder = new TextEncoder(); + function $mol_charset_encode(value) { + return encoder.encode(value); + } + $.$mol_charset_encode = $mol_charset_encode; })($ || ($ = {})); ; "use strict"; var $; (function ($) { - $mol_style_attach("mol/layer/layer.css", ":root {\n\t--mol_layer_hover: 1;\n\t--mol_layer_focus: 2;\n\t--mol_layer_speck: 3;\n\t--mol_layer_float: 4;\n\t--mol_layer_popup: 5;\n}\n"); + class $mol_file_not_found extends Error { + } + $.$mol_file_not_found = $mol_file_not_found; + class $mol_file extends $mol_object { + static absolute(path) { + throw new Error('Not implemented yet'); + } + static relative(path) { + throw new Error('Not implemented yet'); + } + static base = ''; + path() { + return '.'; + } + parent() { + return this.resolve('..'); + } + reset() { + try { + this.stat(null); + } + catch (error) { + if (error instanceof $mol_file_not_found) + return; + return $mol_fail_hidden(error); + } + } + version() { + return this.stat()?.mtime.getTime().toString(36).toUpperCase() ?? ''; + } + watcher() { + console.warn('$mol_file_web.watcher() not implemented'); + return { + destructor() { } + }; + } + exists(next) { + let exists = Boolean(this.stat()); + if (next === undefined) + return exists; + if (next === exists) + return exists; + if (next) { + this.parent().exists(true); + this.ensure(); + } + else { + this.drop(); + } + this.reset(); + return next; + } + type() { + return this.stat()?.type ?? ''; + } + name() { + return this.path().replace(/^.*\//, ''); + } + ext() { + const match = /((?:\.\w+)+)$/.exec(this.path()); + return match ? match[1].substring(1) : ''; + } + text(next, virt) { + if (virt) { + const now = new Date; + this.stat({ + type: 'file', + size: 0, + atime: now, + mtime: now, + ctime: now, + }, 'virt'); + return next; + } + if (next === undefined) { + return $mol_charset_decode(this.buffer(undefined)); + } + else { + const buffer = next === undefined ? undefined : $mol_charset_encode(next); + this.buffer(buffer); + return next; + } + } + find(include, exclude) { + const found = []; + const sub = this.sub(); + for (const child of sub) { + const child_path = child.path(); + if (exclude && child_path.match(exclude)) + continue; + if (!include || child_path.match(include)) + found.push(child); + if (child.type() === 'dir') { + const sub_child = child.find(include, exclude); + for (const child of sub_child) + found.push(child); + } + } + return found; + } + size() { + switch (this.type()) { + case 'file': return this.stat()?.size ?? 0; + default: return 0; + } + } + open(...modes) { + return 0; + } + toJSON() { + return this.path(); + } + } + __decorate([ + $mol_mem + ], $mol_file.prototype, "exists", null); + __decorate([ + $mol_mem + ], $mol_file.prototype, "text", null); + __decorate([ + $mol_mem_key + ], $mol_file, "absolute", null); + $.$mol_file = $mol_file; })($ || ($ = {})); ; "use strict"; var $; (function ($) { - $mol_style_attach("mol/speck/speck.view.css", "[mol_speck] {\n\tfont-size: .625rem;\n\tborder-radius: 1rem;\n\tmargin: -0.5rem -0.25rem;\n\talign-self: flex-start;\n\tmin-height: 1em;\n\tmin-width: .5em;\n\tvertical-align: sub;\n\tpadding: .25em .5em;\n\tposition: absolute;\n\tz-index: var(--mol_layer_speck);\n\ttext-align: center;\n\tline-height: 1;\n\tdisplay: inline-block;\n\twhite-space: nowrap;\n\ttext-overflow: ellipsis;\n\tuser-select: none;\n}\n"); + function $mol_compare_array(a, b) { + if (a === b) + return true; + if (Object.getPrototypeOf(a) !== Object.getPrototypeOf(b)) + return false; + if (a.length !== b.length) + return false; + for (let i = 0; i < a.length; i++) + if (a[i] !== b[i]) + return false; + return true; + } + $.$mol_compare_array = $mol_compare_array; })($ || ($ = {})); -; -"use strict"; - -; - ($.$mol_button) = class $mol_button extends ($.$mol_view) { - event_activate(next){ - if(next !== undefined) return next; - return null; - } - clicks(next){ - if(next !== undefined) return next; - return null; - } - event_key_press(next){ - if(next !== undefined) return next; - return null; - } - disabled(){ - return false; - } - tab_index(){ - return 0; - } - hint(){ - return ""; - } - hint_safe(){ - return (this.hint()); - } - error(){ - return ""; - } - enabled(){ - return true; - } - click(next){ - if(next !== undefined) return next; - return null; - } - event_click(next){ - if(next !== undefined) return next; - return null; - } - event(){ - return { - ...(super.event()), - "click": (next) => (this.event_activate(next)), - "dblclick": (next) => (this.clicks(next)), - "keydown": (next) => (this.event_key_press(next)) - }; - } - attr(){ - return { - ...(super.attr()), - "disabled": (this.disabled()), - "role": "button", - "tabindex": (this.tab_index()), - "title": (this.hint_safe()) - }; - } - sub(){ - return [(this.title())]; - } - Speck(){ - const obj = new this.$.$mol_speck(); - (obj.value) = () => ((this.error())); - return obj; - } - }; - ($mol_mem(($.$mol_button.prototype), "event_activate")); - ($mol_mem(($.$mol_button.prototype), "clicks")); - ($mol_mem(($.$mol_button.prototype), "event_key_press")); - ($mol_mem(($.$mol_button.prototype), "click")); - ($mol_mem(($.$mol_button.prototype), "event_click")); - ($mol_mem(($.$mol_button.prototype), "Speck")); - - -; -"use strict"; -var $; -(function ($) { - let $mol_keyboard_code; - (function ($mol_keyboard_code) { - $mol_keyboard_code[$mol_keyboard_code["backspace"] = 8] = "backspace"; - $mol_keyboard_code[$mol_keyboard_code["tab"] = 9] = "tab"; - $mol_keyboard_code[$mol_keyboard_code["enter"] = 13] = "enter"; - $mol_keyboard_code[$mol_keyboard_code["shift"] = 16] = "shift"; - $mol_keyboard_code[$mol_keyboard_code["ctrl"] = 17] = "ctrl"; - $mol_keyboard_code[$mol_keyboard_code["alt"] = 18] = "alt"; - $mol_keyboard_code[$mol_keyboard_code["pause"] = 19] = "pause"; - $mol_keyboard_code[$mol_keyboard_code["capsLock"] = 20] = "capsLock"; - $mol_keyboard_code[$mol_keyboard_code["escape"] = 27] = "escape"; - $mol_keyboard_code[$mol_keyboard_code["space"] = 32] = "space"; - $mol_keyboard_code[$mol_keyboard_code["pageUp"] = 33] = "pageUp"; - $mol_keyboard_code[$mol_keyboard_code["pageDown"] = 34] = "pageDown"; - $mol_keyboard_code[$mol_keyboard_code["end"] = 35] = "end"; - $mol_keyboard_code[$mol_keyboard_code["home"] = 36] = "home"; - $mol_keyboard_code[$mol_keyboard_code["left"] = 37] = "left"; - $mol_keyboard_code[$mol_keyboard_code["up"] = 38] = "up"; - $mol_keyboard_code[$mol_keyboard_code["right"] = 39] = "right"; - $mol_keyboard_code[$mol_keyboard_code["down"] = 40] = "down"; - $mol_keyboard_code[$mol_keyboard_code["insert"] = 45] = "insert"; - $mol_keyboard_code[$mol_keyboard_code["delete"] = 46] = "delete"; - $mol_keyboard_code[$mol_keyboard_code["key0"] = 48] = "key0"; - $mol_keyboard_code[$mol_keyboard_code["key1"] = 49] = "key1"; - $mol_keyboard_code[$mol_keyboard_code["key2"] = 50] = "key2"; - $mol_keyboard_code[$mol_keyboard_code["key3"] = 51] = "key3"; - $mol_keyboard_code[$mol_keyboard_code["key4"] = 52] = "key4"; - $mol_keyboard_code[$mol_keyboard_code["key5"] = 53] = "key5"; - $mol_keyboard_code[$mol_keyboard_code["key6"] = 54] = "key6"; - $mol_keyboard_code[$mol_keyboard_code["key7"] = 55] = "key7"; - $mol_keyboard_code[$mol_keyboard_code["key8"] = 56] = "key8"; - $mol_keyboard_code[$mol_keyboard_code["key9"] = 57] = "key9"; - $mol_keyboard_code[$mol_keyboard_code["A"] = 65] = "A"; - $mol_keyboard_code[$mol_keyboard_code["B"] = 66] = "B"; - $mol_keyboard_code[$mol_keyboard_code["C"] = 67] = "C"; - $mol_keyboard_code[$mol_keyboard_code["D"] = 68] = "D"; - $mol_keyboard_code[$mol_keyboard_code["E"] = 69] = "E"; - $mol_keyboard_code[$mol_keyboard_code["F"] = 70] = "F"; - $mol_keyboard_code[$mol_keyboard_code["G"] = 71] = "G"; - $mol_keyboard_code[$mol_keyboard_code["H"] = 72] = "H"; - $mol_keyboard_code[$mol_keyboard_code["I"] = 73] = "I"; - $mol_keyboard_code[$mol_keyboard_code["J"] = 74] = "J"; - $mol_keyboard_code[$mol_keyboard_code["K"] = 75] = "K"; - $mol_keyboard_code[$mol_keyboard_code["L"] = 76] = "L"; - $mol_keyboard_code[$mol_keyboard_code["M"] = 77] = "M"; - $mol_keyboard_code[$mol_keyboard_code["N"] = 78] = "N"; - $mol_keyboard_code[$mol_keyboard_code["O"] = 79] = "O"; - $mol_keyboard_code[$mol_keyboard_code["P"] = 80] = "P"; - $mol_keyboard_code[$mol_keyboard_code["Q"] = 81] = "Q"; - $mol_keyboard_code[$mol_keyboard_code["R"] = 82] = "R"; - $mol_keyboard_code[$mol_keyboard_code["S"] = 83] = "S"; - $mol_keyboard_code[$mol_keyboard_code["T"] = 84] = "T"; - $mol_keyboard_code[$mol_keyboard_code["U"] = 85] = "U"; - $mol_keyboard_code[$mol_keyboard_code["V"] = 86] = "V"; - $mol_keyboard_code[$mol_keyboard_code["W"] = 87] = "W"; - $mol_keyboard_code[$mol_keyboard_code["X"] = 88] = "X"; - $mol_keyboard_code[$mol_keyboard_code["Y"] = 89] = "Y"; - $mol_keyboard_code[$mol_keyboard_code["Z"] = 90] = "Z"; - $mol_keyboard_code[$mol_keyboard_code["metaLeft"] = 91] = "metaLeft"; - $mol_keyboard_code[$mol_keyboard_code["metaRight"] = 92] = "metaRight"; - $mol_keyboard_code[$mol_keyboard_code["select"] = 93] = "select"; - $mol_keyboard_code[$mol_keyboard_code["numpad0"] = 96] = "numpad0"; - $mol_keyboard_code[$mol_keyboard_code["numpad1"] = 97] = "numpad1"; - $mol_keyboard_code[$mol_keyboard_code["numpad2"] = 98] = "numpad2"; - $mol_keyboard_code[$mol_keyboard_code["numpad3"] = 99] = "numpad3"; - $mol_keyboard_code[$mol_keyboard_code["numpad4"] = 100] = "numpad4"; - $mol_keyboard_code[$mol_keyboard_code["numpad5"] = 101] = "numpad5"; - $mol_keyboard_code[$mol_keyboard_code["numpad6"] = 102] = "numpad6"; - $mol_keyboard_code[$mol_keyboard_code["numpad7"] = 103] = "numpad7"; - $mol_keyboard_code[$mol_keyboard_code["numpad8"] = 104] = "numpad8"; - $mol_keyboard_code[$mol_keyboard_code["numpad9"] = 105] = "numpad9"; - $mol_keyboard_code[$mol_keyboard_code["multiply"] = 106] = "multiply"; - $mol_keyboard_code[$mol_keyboard_code["add"] = 107] = "add"; - $mol_keyboard_code[$mol_keyboard_code["subtract"] = 109] = "subtract"; - $mol_keyboard_code[$mol_keyboard_code["decimal"] = 110] = "decimal"; - $mol_keyboard_code[$mol_keyboard_code["divide"] = 111] = "divide"; - $mol_keyboard_code[$mol_keyboard_code["F1"] = 112] = "F1"; - $mol_keyboard_code[$mol_keyboard_code["F2"] = 113] = "F2"; - $mol_keyboard_code[$mol_keyboard_code["F3"] = 114] = "F3"; - $mol_keyboard_code[$mol_keyboard_code["F4"] = 115] = "F4"; - $mol_keyboard_code[$mol_keyboard_code["F5"] = 116] = "F5"; - $mol_keyboard_code[$mol_keyboard_code["F6"] = 117] = "F6"; - $mol_keyboard_code[$mol_keyboard_code["F7"] = 118] = "F7"; - $mol_keyboard_code[$mol_keyboard_code["F8"] = 119] = "F8"; - $mol_keyboard_code[$mol_keyboard_code["F9"] = 120] = "F9"; - $mol_keyboard_code[$mol_keyboard_code["F10"] = 121] = "F10"; - $mol_keyboard_code[$mol_keyboard_code["F11"] = 122] = "F11"; - $mol_keyboard_code[$mol_keyboard_code["F12"] = 123] = "F12"; - $mol_keyboard_code[$mol_keyboard_code["numLock"] = 144] = "numLock"; - $mol_keyboard_code[$mol_keyboard_code["scrollLock"] = 145] = "scrollLock"; - $mol_keyboard_code[$mol_keyboard_code["semicolon"] = 186] = "semicolon"; - $mol_keyboard_code[$mol_keyboard_code["equals"] = 187] = "equals"; - $mol_keyboard_code[$mol_keyboard_code["comma"] = 188] = "comma"; - $mol_keyboard_code[$mol_keyboard_code["dash"] = 189] = "dash"; - $mol_keyboard_code[$mol_keyboard_code["period"] = 190] = "period"; - $mol_keyboard_code[$mol_keyboard_code["forwardSlash"] = 191] = "forwardSlash"; - $mol_keyboard_code[$mol_keyboard_code["graveAccent"] = 192] = "graveAccent"; - $mol_keyboard_code[$mol_keyboard_code["bracketOpen"] = 219] = "bracketOpen"; - $mol_keyboard_code[$mol_keyboard_code["slashBack"] = 220] = "slashBack"; - $mol_keyboard_code[$mol_keyboard_code["slashBackLeft"] = 226] = "slashBackLeft"; - $mol_keyboard_code[$mol_keyboard_code["bracketClose"] = 221] = "bracketClose"; - $mol_keyboard_code[$mol_keyboard_code["quoteSingle"] = 222] = "quoteSingle"; - })($mol_keyboard_code = $.$mol_keyboard_code || ($.$mol_keyboard_code = {})); -})($ || ($ = {})); - -; -"use strict"; - ; "use strict"; var $; (function ($) { - var $$; - (function ($$) { - class $mol_button extends $.$mol_button { - status(next = [null]) { return next; } - disabled() { - return !this.enabled(); - } - event_activate(next) { - if (!next) - return; - if (!this.enabled()) - return; - try { - this.event_click(next); - this.click(next); - this.status([null]); + function stat_convert(stat) { + if (!stat) + return null; + let type; + if (stat.isDirectory()) + type = 'dir'; + if (stat.isFile()) + type = 'file'; + if (stat.isSymbolicLink()) + type = 'link'; + if (!type) + return $mol_fail(new Error(`Unsupported file type`)); + return { + type, + size: Number(stat.size), + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime + }; + } + function buffer_normalize(buf) { + return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength); + } + let $mol_file_mode_open; + (function ($mol_file_mode_open) { + $mol_file_mode_open[$mol_file_mode_open["create"] = $node.fs.constants.O_CREAT] = "create"; + $mol_file_mode_open[$mol_file_mode_open["exists_truncate"] = $node.fs.constants.O_TRUNC] = "exists_truncate"; + $mol_file_mode_open[$mol_file_mode_open["exists_fail"] = $node.fs.constants.O_EXCL] = "exists_fail"; + $mol_file_mode_open[$mol_file_mode_open["read_only"] = $node.fs.constants.O_RDONLY] = "read_only"; + $mol_file_mode_open[$mol_file_mode_open["write_only"] = $node.fs.constants.O_WRONLY] = "write_only"; + $mol_file_mode_open[$mol_file_mode_open["read_write"] = $node.fs.constants.O_RDWR] = "read_write"; + $mol_file_mode_open[$mol_file_mode_open["append"] = $node.fs.constants.O_APPEND] = "append"; + })($mol_file_mode_open = $.$mol_file_mode_open || ($.$mol_file_mode_open = {})); + class $mol_file_node extends $mol_file { + static absolute(path) { + return this.make({ + path: $mol_const(path) + }); + } + static relative(path) { + return this.absolute($node.path.resolve(this.base, path).replace(/\\/g, '/')); + } + watcher() { + const watcher = $node.chokidar.watch(this.path(), { + persistent: true, + ignored: /(^\.|___$)/, + depth: 0, + ignoreInitial: true, + awaitWriteFinish: { + stabilityThreshold: 100, + }, + }); + watcher + .on('all', (type, path) => { + const file = $mol_file.relative(path.replace(/\\/g, '/')); + file.reset(); + if (type === 'change') { + this.stat(null); } - catch (error) { - Promise.resolve().then(() => this.status([error])); - $mol_fail_hidden(error); + else { + file.parent().reset(); } - } - event_key_press(event) { - if (event.keyCode === $mol_keyboard_code.enter) { - return this.event_activate(event); + }) + .on('error', $mol_fail_log); + return { + destructor() { + watcher.close(); } + }; + } + stat(next, virt) { + let stat = next; + const path = this.path(); + this.parent().watcher(); + if (virt) + return next; + try { + stat = next ?? stat_convert($node.fs.statSync(path, { throwIfNoEntry: false })); } - tab_index() { - return this.enabled() ? super.tab_index() : -1; + catch (error) { + if (error.code === 'ENOENT') + error = new $mol_file_not_found(`File not found`); + error.message += '\n' + path; + return this.$.$mol_fail_hidden(error); } - error() { - const [error] = this.status(); - if (!error) - return ''; - if (error instanceof Promise) { - return $mol_fail_hidden(error); - } - return String(error.message ?? error); + return stat; + } + ensure() { + const path = this.path(); + try { + $node.fs.mkdirSync(path); } - hint_safe() { + catch (e) { + e.message += '\n' + path; + this.$.$mol_fail_hidden(e); + } + } + drop() { + $node.fs.unlinkSync(this.path()); + } + buffer(next) { + const path = this.path(); + if (next === undefined) { + if (!this.stat()) + return new Uint8Array; try { - return this.hint(); + const prev = $mol_mem_cached(() => this.buffer()); + next = buffer_normalize($node.fs.readFileSync(path)); + if (prev !== undefined && !$mol_compare_array(prev, next)) { + this.$.$mol_log3_rise({ + place: `$mol_file_node..buffer()`, + message: 'Changed', + path: this.relate(), + }); + } + return next; } catch (error) { - $mol_fail_log(error); - return ''; + error.message += '\n' + path; + return this.$.$mol_fail_hidden(error); } } - sub_visible() { - return [ - ...this.error() ? [this.Speck()] : [], - ...this.sub(), - ]; + this.parent().exists(true); + const now = new Date; + this.stat({ + type: 'file', + size: next.length, + atime: now, + mtime: now, + ctime: now, + }, 'virt'); + try { + $node.fs.writeFileSync(path, next); + } + catch (error) { + error.message += '\n' + path; + return this.$.$mol_fail_hidden(error); } + return next; } - __decorate([ - $mol_mem - ], $mol_button.prototype, "status", null); - $$.$mol_button = $mol_button; - })($$ = $.$$ || ($.$$ = {})); -})($ || ($ = {})); - -; -"use strict"; -var $; -(function ($) { - $mol_style_attach("mol/button/button.view.css", "[mol_button] {\n\tborder: none;\n\tfont: inherit;\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\ttext-decoration: inherit;\n\tcursor: inherit;\n\tposition: relative;\n\tbox-sizing: border-box;\n\tword-break: normal;\n\tcursor: default;\n\tuser-select: none;\n\tborder-radius: var(--mol_gap_round);\n}\n\n[mol_button]:where(:not(:disabled)):hover {\n\tz-index: var(--mol_layer_hover);\n}\n\n[mol_button]:focus-visible {\n\toutline: none;\n\tz-index: var(--mol_layer_focus);\n}\n"); -})($ || ($ = {})); - -; - ($.$mol_button_typed) = class $mol_button_typed extends ($.$mol_button) { - minimal_height(){ - return 40; - } - minimal_width(){ - return 40; - } - }; - - -; -"use strict"; -var $; -(function ($) { - $mol_style_attach("mol/button/typed/typed.view.css", "[mol_button_typed] {\n\talign-content: center;\n\talign-items: center;\n\tpadding: var(--mol_gap_text);\n\tborder-radius: var(--mol_gap_round);\n\tgap: var(--mol_gap_space);\n\tuser-select: none;\n\tcursor: pointer;\n}\n\n[mol_button_typed][disabled] {\n\tpointer-events: none;\n}\n\n[mol_button_typed]:hover ,\n[mol_button_typed]:focus-visible {\n\tbackground-color: var(--mol_theme_hover);\n}\n\n[mol_button_typed]:active {\n\tcolor: var(--mol_theme_focus);\n}\n\n"); -})($ || ($ = {})); - -; -"use strict"; - -; - ($.$mol_button_minor) = class $mol_button_minor extends ($.$mol_button_typed) {}; - - -; -"use strict"; -var $; -(function ($) { - $mol_style_attach("mol/button/minor/minor.view.css", "[mol_button_minor] {\n\tcolor: var(--mol_theme_control);\n}\n\n[mol_button_minor][disabled] {\n\tcolor: var(--mol_theme_shade);\n}\n"); -})($ || ($ = {})); - -; -"use strict"; - -; - ($.$mol_check) = class $mol_check extends ($.$mol_button_minor) { - checked(next){ - if(next !== undefined) return next; - return false; - } - aria_checked(){ - return "false"; - } - aria_role(){ - return "checkbox"; - } - Icon(){ - return null; - } - title(){ - return ""; - } - Title(){ - const obj = new this.$.$mol_view(); - (obj.sub) = () => ([(this.title())]); - return obj; - } - label(){ - return [(this.Title())]; - } - attr(){ - return { - ...(super.attr()), - "mol_check_checked": (this.checked()), - "aria-checked": (this.aria_checked()), - "role": (this.aria_role()) - }; - } - sub(){ - return [(this.Icon()), (this.label())]; - } - }; - ($mol_mem(($.$mol_check.prototype), "checked")); - ($mol_mem(($.$mol_check.prototype), "Title")); - - -; -"use strict"; -var $; -(function ($) { - function $mol_maybe(value) { - return (value == null) ? [] : [value]; - } - $.$mol_maybe = $mol_maybe; -})($ || ($ = {})); - -; -"use strict"; -var $; -(function ($) { - $mol_style_attach("mol/check/check.css", "[mol_check] {\n\tflex: 0 0 auto;\n\tjustify-content: flex-start;\n\talign-content: center;\n\t/* align-items: flex-start; */\n\tborder: none;\n\tfont-weight: inherit;\n\tbox-shadow: none;\n\ttext-align: left;\n\tdisplay: inline-flex;\n\tflex-wrap: nowrap;\n}\n\n[mol_check_title] {\n\tflex-shrink: 1;\n}\n"); -})($ || ($ = {})); - -; -"use strict"; - -; -"use strict"; -var $; -(function ($) { - var $$; - (function ($$) { - class $mol_check extends $.$mol_check { - click(next) { - if (next?.defaultPrevented) - return; - this.checked(!this.checked()); - if (next) - next.preventDefault(); + sub() { + if (!this.exists()) + return []; + if (this.type() !== 'dir') + return []; + const path = this.path(); + this.stat(); + try { + return $node.fs.readdirSync(path) + .filter(name => !/^\.+$/.test(name)) + .map(name => this.resolve(name)); } - sub() { - return [ - ...$mol_maybe(this.Icon()), - ...this.label(), - ]; + catch (e) { + e.message += '\n' + path; + return this.$.$mol_fail_hidden(e); } - label() { - return this.title() ? super.label() : []; + } + resolve(path) { + return this.constructor.relative($node.path.join(this.path(), path)); + } + relate(base = this.constructor.relative('.')) { + return $node.path.relative(base.path(), this.path()).replace(/\\/g, '/'); + } + append(next) { + const path = this.path(); + try { + $node.fs.appendFileSync(path, next); } - aria_checked() { - return String(this.checked()); + catch (e) { + e.message += '\n' + path; + return this.$.$mol_fail_hidden(e); } } - $$.$mol_check = $mol_check; - })($$ = $.$$ || ($.$$ = {})); -})($ || ($ = {})); - -; - ($.$mol_check_icon) = class $mol_check_icon extends ($.$mol_check) {}; - - -; -"use strict"; -var $; -(function ($) { - $mol_style_attach("mol/check/icon/icon.view.css", "[mol_check_icon]:where([mol_check_checked]) {\n\tcolor: var(--mol_theme_current);\n}\n"); -})($ || ($ = {})); - -; -"use strict"; - -; - ($.$mol_svg) = class $mol_svg extends ($.$mol_view) { - dom_name(){ - return "svg"; - } - dom_name_space(){ - return "http://www.w3.org/2000/svg"; - } - font_size(){ - return 16; - } - font_family(){ - return ""; - } - style_size(){ - return {}; - } - }; - + open(...modes) { + return $node.fs.openSync(this.path(), modes.reduce((res, mode) => res | $mol_file_mode_open[mode], 0)); + } + } + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "watcher", null); + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "stat", null); + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "ensure", null); + __decorate([ + $mol_action + ], $mol_file_node.prototype, "drop", null); + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "buffer", null); + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "sub", null); + __decorate([ + $mol_mem_key + ], $mol_file_node, "absolute", null); + $.$mol_file_node = $mol_file_node; + $.$mol_file = $mol_file_node; +})($ || ($ = {})); ; "use strict"; var $; (function ($) { - class $mol_state_time extends $mol_object { - static task(precision, reset) { - if (precision) { - return new $mol_after_timeout(precision, () => this.task(precision, null)); - } - else { - return new $mol_after_frame(() => this.task(precision, null)); - } + class $mol_state_local_node extends $mol_state_local { + static dir() { + const base = process.env.XDG_DATA_HOME || ($node.os.homedir() + '/.local/share'); + return $mol_file.absolute(base).resolve('./hyoo_state_local'); } - static now(precision) { - this.task(precision); - return Date.now(); + static value(key, next) { + const file = this.dir().resolve(encodeURIComponent(key) + '.json'); + if (next === null) { + file.exists(false); + return null; + } + const arg = next === undefined ? undefined : JSON.stringify(next); + return JSON.parse(file.text(arg) || 'null'); } } __decorate([ - $mol_mem_key - ], $mol_state_time, "task", null); + $mol_mem + ], $mol_state_local_node, "dir", null); __decorate([ $mol_mem_key - ], $mol_state_time, "now", null); - $.$mol_state_time = $mol_state_time; + ], $mol_state_local_node, "value", null); + $.$mol_state_local_node = $mol_state_local_node; + $.$mol_state_local = $mol_state_local_node; +})($ || ($ = {})); + +; +"use strict"; +var $; +(function ($) { + function parse(theme) { + if (theme === 'true') + return true; + if (theme === 'false') + return false; + return null; + } + function $mol_lights(next) { + const arg = parse(this.$mol_state_arg.value('mol_lights')); + const base = false; + if (next === undefined) { + return arg ?? this.$mol_state_local.value('$mol_lights') ?? base; + } + else { + if (arg === null) { + this.$mol_state_local.value('$mol_lights', next === base ? null : next); + } + else { + this.$mol_state_arg.value('mol_lights', String(next)); + } + return next; + } + } + $.$mol_lights = $mol_lights; })($ || ($ = {})); ; @@ -4420,51 +4316,31 @@ var $; (function ($) { var $$; (function ($$) { - class $mol_svg extends $.$mol_svg { - computed_style() { - const win = this.$.$mol_dom_context; - const style = win.getComputedStyle(this.dom_node()); - if (!style['font-size']) - $mol_state_time.now(0); - return style; - } - font_size() { - return parseInt(this.computed_style()['font-size']) || 16; - } - font_family() { - return this.computed_style()['font-family']; + class $mol_theme_auto extends $.$mol_theme_auto { + theme() { + return this.$.$mol_lights() ? '$mol_theme_light' : '$mol_theme_dark'; } } - __decorate([ - $mol_mem - ], $mol_svg.prototype, "computed_style", null); - __decorate([ - $mol_mem - ], $mol_svg.prototype, "font_size", null); - __decorate([ - $mol_mem - ], $mol_svg.prototype, "font_family", null); - $$.$mol_svg = $mol_svg; + $$.$mol_theme_auto = $mol_theme_auto; })($$ = $.$$ || ($.$$ = {})); })($ || ($ = {})); ; - ($.$mol_svg_root) = class $mol_svg_root extends ($.$mol_svg) { - view_box(){ - return "0 0 100 100"; - } - aspect(){ - return "xMidYMid"; + ($.$mol_speck) = class $mol_speck extends ($.$mol_view) { + theme(){ + return "$mol_theme_accent"; } - dom_name(){ - return "svg"; + value(){ + return null; } attr(){ - return { - ...(super.attr()), - "viewBox": (this.view_box()), - "preserveAspectRatio": (this.aspect()) - }; + return {...(super.attr()), "mol_theme": (this.theme())}; + } + style(){ + return {...(super.style()), "minHeight": "1em"}; + } + sub(){ + return [(this.value())]; } }; @@ -4473,456 +4349,612 @@ var $; "use strict"; var $; (function ($) { - $mol_style_attach("mol/svg/root/root.view.css", "[mol_svg_root] {\n\toverflow: hidden;\n}\n"); + $.$mol_layer = $mol_style_prop('mol_layer', [ + 'hover', + 'focus', + 'speck', + 'float', + 'popup', + ]); })($ || ($ = {})); ; "use strict"; +var $; +(function ($) { + $mol_style_attach("mol/layer/layer.css", ":root {\n\t--mol_layer_hover: 1;\n\t--mol_layer_focus: 2;\n\t--mol_layer_speck: 3;\n\t--mol_layer_float: 4;\n\t--mol_layer_popup: 5;\n}\n"); +})($ || ($ = {})); ; - ($.$mol_svg_path) = class $mol_svg_path extends ($.$mol_svg) { - geometry(){ - return ""; - } - dom_name(){ - return "path"; - } - attr(){ - return {...(super.attr()), "d": (this.geometry())}; - } - }; - +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/speck/speck.view.css", "[mol_speck] {\n\tfont-size: .625rem;\n\tborder-radius: 1rem;\n\tmargin: -0.5rem -0.25rem;\n\talign-self: flex-start;\n\tmin-height: 1em;\n\tmin-width: .5em;\n\tvertical-align: sub;\n\tpadding: .25em .5em;\n\tposition: absolute;\n\tz-index: var(--mol_layer_speck);\n\ttext-align: center;\n\tline-height: 1;\n\tdisplay: inline-block;\n\twhite-space: nowrap;\n\ttext-overflow: ellipsis;\n\tuser-select: none;\n}\n"); +})($ || ($ = {})); ; "use strict"; ; - ($.$mol_icon) = class $mol_icon extends ($.$mol_svg_root) { - path(){ + ($.$mol_button) = class $mol_button extends ($.$mol_view) { + event_activate(next){ + if(next !== undefined) return next; + return null; + } + clicks(next){ + if(next !== undefined) return next; + return null; + } + event_key_press(next){ + if(next !== undefined) return next; + return null; + } + disabled(){ + return false; + } + tab_index(){ + return 0; + } + hint(){ return ""; } - Path(){ - const obj = new this.$.$mol_svg_path(); - (obj.geometry) = () => ((this.path())); - return obj; + hint_safe(){ + return (this.hint()); } - view_box(){ - return "0 0 24 24"; + error(){ + return ""; } - minimal_width(){ - return 16; + enabled(){ + return true; } - minimal_height(){ - return 16; + click(next){ + if(next !== undefined) return next; + return null; + } + event_click(next){ + if(next !== undefined) return next; + return null; + } + event(){ + return { + ...(super.event()), + "click": (next) => (this.event_activate(next)), + "dblclick": (next) => (this.clicks(next)), + "keydown": (next) => (this.event_key_press(next)) + }; + } + attr(){ + return { + ...(super.attr()), + "disabled": (this.disabled()), + "role": "button", + "tabindex": (this.tab_index()), + "title": (this.hint_safe()) + }; } sub(){ - return [(this.Path())]; + return [(this.title())]; } - }; - ($mol_mem(($.$mol_icon.prototype), "Path")); - - -; -"use strict"; -var $; -(function ($) { - $mol_style_attach("mol/icon/icon.view.css", "[mol_icon] {\n\tfill: currentColor;\n\tstroke: none;\n\twidth: 1em;\n\theight: 1.5em;\n\tflex: 0 0 auto;\n\tvertical-align: top;\n\tdisplay: inline-block;\n\tfilter: drop-shadow(0px 1px 1px var(--mol_theme_back));\n\ttransform-origin: center;\n}\n\n[mol_icon_path] {\n\ttransform-origin: center;\n}\n"); -})($ || ($ = {})); - -; -"use strict"; - -; - ($.$mol_icon_brightness_6) = class $mol_icon_brightness_6 extends ($.$mol_icon) { - path(){ - return "M12,18V6C15.31,6 18,8.69 18,12C18,15.31 15.31,18 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z"; + Speck(){ + const obj = new this.$.$mol_speck(); + (obj.value) = () => ((this.error())); + return obj; } }; + ($mol_mem(($.$mol_button.prototype), "event_activate")); + ($mol_mem(($.$mol_button.prototype), "clicks")); + ($mol_mem(($.$mol_button.prototype), "event_key_press")); + ($mol_mem(($.$mol_button.prototype), "click")); + ($mol_mem(($.$mol_button.prototype), "event_click")); + ($mol_mem(($.$mol_button.prototype), "Speck")); -; -"use strict"; - -; -"use strict"; - ; "use strict"; var $; (function ($) { - const decoders = {}; - function $mol_charset_decode(buffer, encoding = 'utf8') { - let decoder = decoders[encoding]; - if (!decoder) - decoder = decoders[encoding] = new TextDecoder(encoding); - return decoder.decode(buffer); - } - $.$mol_charset_decode = $mol_charset_decode; + let $mol_keyboard_code; + (function ($mol_keyboard_code) { + $mol_keyboard_code[$mol_keyboard_code["backspace"] = 8] = "backspace"; + $mol_keyboard_code[$mol_keyboard_code["tab"] = 9] = "tab"; + $mol_keyboard_code[$mol_keyboard_code["enter"] = 13] = "enter"; + $mol_keyboard_code[$mol_keyboard_code["shift"] = 16] = "shift"; + $mol_keyboard_code[$mol_keyboard_code["ctrl"] = 17] = "ctrl"; + $mol_keyboard_code[$mol_keyboard_code["alt"] = 18] = "alt"; + $mol_keyboard_code[$mol_keyboard_code["pause"] = 19] = "pause"; + $mol_keyboard_code[$mol_keyboard_code["capsLock"] = 20] = "capsLock"; + $mol_keyboard_code[$mol_keyboard_code["escape"] = 27] = "escape"; + $mol_keyboard_code[$mol_keyboard_code["space"] = 32] = "space"; + $mol_keyboard_code[$mol_keyboard_code["pageUp"] = 33] = "pageUp"; + $mol_keyboard_code[$mol_keyboard_code["pageDown"] = 34] = "pageDown"; + $mol_keyboard_code[$mol_keyboard_code["end"] = 35] = "end"; + $mol_keyboard_code[$mol_keyboard_code["home"] = 36] = "home"; + $mol_keyboard_code[$mol_keyboard_code["left"] = 37] = "left"; + $mol_keyboard_code[$mol_keyboard_code["up"] = 38] = "up"; + $mol_keyboard_code[$mol_keyboard_code["right"] = 39] = "right"; + $mol_keyboard_code[$mol_keyboard_code["down"] = 40] = "down"; + $mol_keyboard_code[$mol_keyboard_code["insert"] = 45] = "insert"; + $mol_keyboard_code[$mol_keyboard_code["delete"] = 46] = "delete"; + $mol_keyboard_code[$mol_keyboard_code["key0"] = 48] = "key0"; + $mol_keyboard_code[$mol_keyboard_code["key1"] = 49] = "key1"; + $mol_keyboard_code[$mol_keyboard_code["key2"] = 50] = "key2"; + $mol_keyboard_code[$mol_keyboard_code["key3"] = 51] = "key3"; + $mol_keyboard_code[$mol_keyboard_code["key4"] = 52] = "key4"; + $mol_keyboard_code[$mol_keyboard_code["key5"] = 53] = "key5"; + $mol_keyboard_code[$mol_keyboard_code["key6"] = 54] = "key6"; + $mol_keyboard_code[$mol_keyboard_code["key7"] = 55] = "key7"; + $mol_keyboard_code[$mol_keyboard_code["key8"] = 56] = "key8"; + $mol_keyboard_code[$mol_keyboard_code["key9"] = 57] = "key9"; + $mol_keyboard_code[$mol_keyboard_code["A"] = 65] = "A"; + $mol_keyboard_code[$mol_keyboard_code["B"] = 66] = "B"; + $mol_keyboard_code[$mol_keyboard_code["C"] = 67] = "C"; + $mol_keyboard_code[$mol_keyboard_code["D"] = 68] = "D"; + $mol_keyboard_code[$mol_keyboard_code["E"] = 69] = "E"; + $mol_keyboard_code[$mol_keyboard_code["F"] = 70] = "F"; + $mol_keyboard_code[$mol_keyboard_code["G"] = 71] = "G"; + $mol_keyboard_code[$mol_keyboard_code["H"] = 72] = "H"; + $mol_keyboard_code[$mol_keyboard_code["I"] = 73] = "I"; + $mol_keyboard_code[$mol_keyboard_code["J"] = 74] = "J"; + $mol_keyboard_code[$mol_keyboard_code["K"] = 75] = "K"; + $mol_keyboard_code[$mol_keyboard_code["L"] = 76] = "L"; + $mol_keyboard_code[$mol_keyboard_code["M"] = 77] = "M"; + $mol_keyboard_code[$mol_keyboard_code["N"] = 78] = "N"; + $mol_keyboard_code[$mol_keyboard_code["O"] = 79] = "O"; + $mol_keyboard_code[$mol_keyboard_code["P"] = 80] = "P"; + $mol_keyboard_code[$mol_keyboard_code["Q"] = 81] = "Q"; + $mol_keyboard_code[$mol_keyboard_code["R"] = 82] = "R"; + $mol_keyboard_code[$mol_keyboard_code["S"] = 83] = "S"; + $mol_keyboard_code[$mol_keyboard_code["T"] = 84] = "T"; + $mol_keyboard_code[$mol_keyboard_code["U"] = 85] = "U"; + $mol_keyboard_code[$mol_keyboard_code["V"] = 86] = "V"; + $mol_keyboard_code[$mol_keyboard_code["W"] = 87] = "W"; + $mol_keyboard_code[$mol_keyboard_code["X"] = 88] = "X"; + $mol_keyboard_code[$mol_keyboard_code["Y"] = 89] = "Y"; + $mol_keyboard_code[$mol_keyboard_code["Z"] = 90] = "Z"; + $mol_keyboard_code[$mol_keyboard_code["metaLeft"] = 91] = "metaLeft"; + $mol_keyboard_code[$mol_keyboard_code["metaRight"] = 92] = "metaRight"; + $mol_keyboard_code[$mol_keyboard_code["select"] = 93] = "select"; + $mol_keyboard_code[$mol_keyboard_code["numpad0"] = 96] = "numpad0"; + $mol_keyboard_code[$mol_keyboard_code["numpad1"] = 97] = "numpad1"; + $mol_keyboard_code[$mol_keyboard_code["numpad2"] = 98] = "numpad2"; + $mol_keyboard_code[$mol_keyboard_code["numpad3"] = 99] = "numpad3"; + $mol_keyboard_code[$mol_keyboard_code["numpad4"] = 100] = "numpad4"; + $mol_keyboard_code[$mol_keyboard_code["numpad5"] = 101] = "numpad5"; + $mol_keyboard_code[$mol_keyboard_code["numpad6"] = 102] = "numpad6"; + $mol_keyboard_code[$mol_keyboard_code["numpad7"] = 103] = "numpad7"; + $mol_keyboard_code[$mol_keyboard_code["numpad8"] = 104] = "numpad8"; + $mol_keyboard_code[$mol_keyboard_code["numpad9"] = 105] = "numpad9"; + $mol_keyboard_code[$mol_keyboard_code["multiply"] = 106] = "multiply"; + $mol_keyboard_code[$mol_keyboard_code["add"] = 107] = "add"; + $mol_keyboard_code[$mol_keyboard_code["subtract"] = 109] = "subtract"; + $mol_keyboard_code[$mol_keyboard_code["decimal"] = 110] = "decimal"; + $mol_keyboard_code[$mol_keyboard_code["divide"] = 111] = "divide"; + $mol_keyboard_code[$mol_keyboard_code["F1"] = 112] = "F1"; + $mol_keyboard_code[$mol_keyboard_code["F2"] = 113] = "F2"; + $mol_keyboard_code[$mol_keyboard_code["F3"] = 114] = "F3"; + $mol_keyboard_code[$mol_keyboard_code["F4"] = 115] = "F4"; + $mol_keyboard_code[$mol_keyboard_code["F5"] = 116] = "F5"; + $mol_keyboard_code[$mol_keyboard_code["F6"] = 117] = "F6"; + $mol_keyboard_code[$mol_keyboard_code["F7"] = 118] = "F7"; + $mol_keyboard_code[$mol_keyboard_code["F8"] = 119] = "F8"; + $mol_keyboard_code[$mol_keyboard_code["F9"] = 120] = "F9"; + $mol_keyboard_code[$mol_keyboard_code["F10"] = 121] = "F10"; + $mol_keyboard_code[$mol_keyboard_code["F11"] = 122] = "F11"; + $mol_keyboard_code[$mol_keyboard_code["F12"] = 123] = "F12"; + $mol_keyboard_code[$mol_keyboard_code["numLock"] = 144] = "numLock"; + $mol_keyboard_code[$mol_keyboard_code["scrollLock"] = 145] = "scrollLock"; + $mol_keyboard_code[$mol_keyboard_code["semicolon"] = 186] = "semicolon"; + $mol_keyboard_code[$mol_keyboard_code["equals"] = 187] = "equals"; + $mol_keyboard_code[$mol_keyboard_code["comma"] = 188] = "comma"; + $mol_keyboard_code[$mol_keyboard_code["dash"] = 189] = "dash"; + $mol_keyboard_code[$mol_keyboard_code["period"] = 190] = "period"; + $mol_keyboard_code[$mol_keyboard_code["forwardSlash"] = 191] = "forwardSlash"; + $mol_keyboard_code[$mol_keyboard_code["graveAccent"] = 192] = "graveAccent"; + $mol_keyboard_code[$mol_keyboard_code["bracketOpen"] = 219] = "bracketOpen"; + $mol_keyboard_code[$mol_keyboard_code["slashBack"] = 220] = "slashBack"; + $mol_keyboard_code[$mol_keyboard_code["slashBackLeft"] = 226] = "slashBackLeft"; + $mol_keyboard_code[$mol_keyboard_code["bracketClose"] = 221] = "bracketClose"; + $mol_keyboard_code[$mol_keyboard_code["quoteSingle"] = 222] = "quoteSingle"; + })($mol_keyboard_code = $.$mol_keyboard_code || ($.$mol_keyboard_code = {})); })($ || ($ = {})); ; "use strict"; -var $; -(function ($) { - const TextEncoder = globalThis.TextEncoder ?? $node.util.TextEncoder; - const encoder = new TextEncoder(); - function $mol_charset_encode(value) { - return encoder.encode(value); - } - $.$mol_charset_encode = $mol_charset_encode; -})($ || ($ = {})); ; "use strict"; var $; (function ($) { - class $mol_file_not_found extends Error { - } - $.$mol_file_not_found = $mol_file_not_found; - class $mol_file extends $mol_object { - static absolute(path) { - throw new Error('Not implemented yet'); - } - static relative(path) { - throw new Error('Not implemented yet'); - } - static base = ''; - path() { - return '.'; - } - parent() { - return this.resolve('..'); - } - reset() { - try { - this.stat(null); + var $$; + (function ($$) { + class $mol_button extends $.$mol_button { + status(next = [null]) { return next; } + disabled() { + return !this.enabled(); } - catch (error) { - if (error instanceof $mol_file_not_found) + event_activate(next) { + if (!next) return; - return $mol_fail_hidden(error); - } - } - version() { - return this.stat()?.mtime.getTime().toString(36).toUpperCase() ?? ''; - } - watcher() { - console.warn('$mol_file_web.watcher() not implemented'); - return { - destructor() { } - }; - } - exists(next) { - let exists = Boolean(this.stat()); - if (next === undefined) - return exists; - if (next === exists) - return exists; - if (next) { - this.parent().exists(true); - this.ensure(); - } - else { - this.drop(); - } - this.reset(); - return next; - } - type() { - return this.stat()?.type ?? ''; - } - name() { - return this.path().replace(/^.*\//, ''); - } - ext() { - const match = /((?:\.\w+)+)$/.exec(this.path()); - return match ? match[1].substring(1) : ''; - } - text(next, virt) { - if (virt) { - const now = new Date; - this.stat({ - type: 'file', - size: 0, - atime: now, - mtime: now, - ctime: now, - }, 'virt'); - return next; + if (!this.enabled()) + return; + try { + this.event_click(next); + this.click(next); + this.status([null]); + } + catch (error) { + Promise.resolve().then(() => this.status([error])); + $mol_fail_hidden(error); + } } - if (next === undefined) { - return $mol_charset_decode(this.buffer(undefined)); + event_key_press(event) { + if (event.keyCode === $mol_keyboard_code.enter) { + return this.event_activate(event); + } } - else { - const buffer = next === undefined ? undefined : $mol_charset_encode(next); - this.buffer(buffer); - return next; + tab_index() { + return this.enabled() ? super.tab_index() : -1; } - } - find(include, exclude) { - const found = []; - const sub = this.sub(); - for (const child of sub) { - const child_path = child.path(); - if (exclude && child_path.match(exclude)) - continue; - if (!include || child_path.match(include)) - found.push(child); - if (child.type() === 'dir') { - const sub_child = child.find(include, exclude); - for (const child of sub_child) - found.push(child); + error() { + const [error] = this.status(); + if (!error) + return ''; + if (error instanceof Promise) { + return $mol_fail_hidden(error); } + return String(error.message ?? error); } - return found; - } - size() { - switch (this.type()) { - case 'file': return this.stat()?.size ?? 0; - default: return 0; + hint_safe() { + try { + return this.hint(); + } + catch (error) { + $mol_fail_log(error); + return ''; + } } - } - open(...modes) { - return 0; - } - } - __decorate([ - $mol_mem - ], $mol_file.prototype, "exists", null); - __decorate([ - $mol_mem - ], $mol_file.prototype, "text", null); - __decorate([ - $mol_mem_key - ], $mol_file, "absolute", null); - $.$mol_file = $mol_file; + sub_visible() { + return [ + ...this.error() ? [this.Speck()] : [], + ...this.sub(), + ]; + } + } + __decorate([ + $mol_mem + ], $mol_button.prototype, "status", null); + $$.$mol_button = $mol_button; + })($$ = $.$$ || ($.$$ = {})); })($ || ($ = {})); ; "use strict"; var $; (function ($) { - function $mol_compare_array(a, b) { - if (a === b) - return true; - if (Object.getPrototypeOf(a) !== Object.getPrototypeOf(b)) - return false; - if (a.length !== b.length) - return false; - for (let i = 0; i < a.length; i++) - if (a[i] !== b[i]) - return false; - return true; - } - $.$mol_compare_array = $mol_compare_array; + $mol_style_attach("mol/button/button.view.css", "[mol_button] {\n\tborder: none;\n\tfont: inherit;\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\ttext-decoration: inherit;\n\tcursor: inherit;\n\tposition: relative;\n\tbox-sizing: border-box;\n\tword-break: normal;\n\tcursor: default;\n\tuser-select: none;\n\tborder-radius: var(--mol_gap_round);\n}\n\n[mol_button]:where(:not(:disabled)):hover {\n\tz-index: var(--mol_layer_hover);\n}\n\n[mol_button]:focus-visible {\n\toutline: none;\n\tz-index: var(--mol_layer_focus);\n}\n"); })($ || ($ = {})); +; + ($.$mol_button_typed) = class $mol_button_typed extends ($.$mol_button) { + minimal_height(){ + return 40; + } + minimal_width(){ + return 40; + } + }; + + ; "use strict"; var $; (function ($) { - function stat_convert(stat) { - if (!stat) - return null; - let type; - if (stat.isDirectory()) - type = 'dir'; - if (stat.isFile()) - type = 'file'; - if (stat.isSymbolicLink()) - type = 'link'; - if (!type) - return $mol_fail(new Error(`Unsupported file type`)); - return { - type, - size: Number(stat.size), - atime: stat.atime, - mtime: stat.mtime, - ctime: stat.ctime - }; - } - function buffer_normalize(buf) { - return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength); + $mol_style_attach("mol/button/typed/typed.view.css", "[mol_button_typed] {\n\talign-content: center;\n\talign-items: center;\n\tpadding: var(--mol_gap_text);\n\tborder-radius: var(--mol_gap_round);\n\tgap: var(--mol_gap_space);\n\tuser-select: none;\n\tcursor: pointer;\n}\n\n[mol_button_typed][disabled] {\n\tpointer-events: none;\n}\n\n[mol_button_typed]:hover ,\n[mol_button_typed]:focus-visible {\n\tbackground-color: var(--mol_theme_hover);\n}\n\n[mol_button_typed]:active {\n\tcolor: var(--mol_theme_focus);\n}\n\n"); +})($ || ($ = {})); + +; +"use strict"; + +; + ($.$mol_button_minor) = class $mol_button_minor extends ($.$mol_button_typed) {}; + + +; +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/button/minor/minor.view.css", "[mol_button_minor] {\n\tcolor: var(--mol_theme_control);\n}\n\n[mol_button_minor][disabled] {\n\tcolor: var(--mol_theme_shade);\n}\n"); +})($ || ($ = {})); + +; +"use strict"; + +; + ($.$mol_check) = class $mol_check extends ($.$mol_button_minor) { + checked(next){ + if(next !== undefined) return next; + return false; + } + aria_checked(){ + return "false"; + } + aria_role(){ + return "checkbox"; + } + Icon(){ + return null; + } + title(){ + return ""; + } + Title(){ + const obj = new this.$.$mol_view(); + (obj.sub) = () => ([(this.title())]); + return obj; + } + label(){ + return [(this.Title())]; + } + attr(){ + return { + ...(super.attr()), + "mol_check_checked": (this.checked()), + "aria-checked": (this.aria_checked()), + "role": (this.aria_role()) + }; + } + sub(){ + return [(this.Icon()), (this.label())]; + } + }; + ($mol_mem(($.$mol_check.prototype), "checked")); + ($mol_mem(($.$mol_check.prototype), "Title")); + + +; +"use strict"; +var $; +(function ($) { + function $mol_maybe(value) { + return (value == null) ? [] : [value]; } - let $mol_file_mode_open; - (function ($mol_file_mode_open) { - $mol_file_mode_open[$mol_file_mode_open["create"] = $node.fs.constants.O_CREAT] = "create"; - $mol_file_mode_open[$mol_file_mode_open["exists_truncate"] = $node.fs.constants.O_TRUNC] = "exists_truncate"; - $mol_file_mode_open[$mol_file_mode_open["exists_fail"] = $node.fs.constants.O_EXCL] = "exists_fail"; - $mol_file_mode_open[$mol_file_mode_open["read_only"] = $node.fs.constants.O_RDONLY] = "read_only"; - $mol_file_mode_open[$mol_file_mode_open["write_only"] = $node.fs.constants.O_WRONLY] = "write_only"; - $mol_file_mode_open[$mol_file_mode_open["read_write"] = $node.fs.constants.O_RDWR] = "read_write"; - $mol_file_mode_open[$mol_file_mode_open["append"] = $node.fs.constants.O_APPEND] = "append"; - })($mol_file_mode_open = $.$mol_file_mode_open || ($.$mol_file_mode_open = {})); - class $mol_file_node extends $mol_file { - static absolute(path) { - return this.make({ - path: $mol_const(path) - }); - } - static relative(path) { - return this.absolute($node.path.resolve(this.base, path).replace(/\\/g, '/')); - } - watcher() { - const watcher = $node.chokidar.watch(this.path(), { - persistent: true, - ignored: /(^\.|___$)/, - depth: 0, - ignoreInitial: true, - awaitWriteFinish: { - stabilityThreshold: 100, - }, - }); - watcher - .on('all', (type, path) => { - const file = $mol_file.relative(path.replace(/\\/g, '/')); - file.reset(); - if (type === 'change') { - this.stat(null); - } - else { - file.parent().reset(); - } - }) - .on('error', $mol_fail_log); - return { - destructor() { - watcher.close(); - } - }; - } - stat(next, virt) { - let stat = next; - const path = this.path(); - this.parent().watcher(); - if (virt) - return next; - try { - stat = next ?? stat_convert($node.fs.statSync(path, { throwIfNoEntry: false })); - } - catch (error) { - if (error.code === 'ENOENT') - error = new $mol_file_not_found(`File not found`); - error.message += '\n' + path; - return this.$.$mol_fail_hidden(error); - } - return stat; - } - ensure() { - const path = this.path(); - try { - $node.fs.mkdirSync(path); - } - catch (e) { - e.message += '\n' + path; - this.$.$mol_fail_hidden(e); - } - } - drop() { - $node.fs.unlinkSync(this.path()); - } - buffer(next) { - const path = this.path(); - if (next === undefined) { - if (!this.stat()) - return new Uint8Array; - try { - const prev = $mol_mem_cached(() => this.buffer()); - next = buffer_normalize($node.fs.readFileSync(path)); - if (prev !== undefined && !$mol_compare_array(prev, next)) { - this.$.$mol_log3_rise({ - place: `$mol_file_node..buffer()`, - message: 'Changed', - path: this.relate(), - }); - } - return next; - } - catch (error) { - error.message += '\n' + path; - return this.$.$mol_fail_hidden(error); - } - } - this.parent().exists(true); - const now = new Date; - this.stat({ - type: 'file', - size: next.length, - atime: now, - mtime: now, - ctime: now, - }, 'virt'); - try { - $node.fs.writeFileSync(path, next); + $.$mol_maybe = $mol_maybe; +})($ || ($ = {})); + +; +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/check/check.css", "[mol_check] {\n\tflex: 0 0 auto;\n\tjustify-content: flex-start;\n\talign-content: center;\n\t/* align-items: flex-start; */\n\tborder: none;\n\tfont-weight: inherit;\n\tbox-shadow: none;\n\ttext-align: left;\n\tdisplay: inline-flex;\n\tflex-wrap: nowrap;\n}\n\n[mol_check_title] {\n\tflex-shrink: 1;\n}\n"); +})($ || ($ = {})); + +; +"use strict"; + +; +"use strict"; +var $; +(function ($) { + var $$; + (function ($$) { + class $mol_check extends $.$mol_check { + click(next) { + if (next?.defaultPrevented) + return; + this.checked(!this.checked()); + if (next) + next.preventDefault(); } - catch (error) { - error.message += '\n' + path; - return this.$.$mol_fail_hidden(error); + sub() { + return [ + ...$mol_maybe(this.Icon()), + ...this.label(), + ]; } - return next; - } - sub() { - if (!this.exists()) - return []; - if (this.type() !== 'dir') - return []; - const path = this.path(); - this.stat(); - try { - return $node.fs.readdirSync(path) - .filter(name => !/^\.+$/.test(name)) - .map(name => this.resolve(name)); + label() { + return this.title() ? super.label() : []; } - catch (e) { - e.message += '\n' + path; - return this.$.$mol_fail_hidden(e); + aria_checked() { + return String(this.checked()); } } - resolve(path) { - return this.constructor.relative($node.path.join(this.path(), path)); - } - relate(base = this.constructor.relative('.')) { - return $node.path.relative(base.path(), this.path()).replace(/\\/g, '/'); - } - append(next) { - const path = this.path(); - try { - $node.fs.appendFileSync(path, next); + $$.$mol_check = $mol_check; + })($$ = $.$$ || ($.$$ = {})); +})($ || ($ = {})); + +; + ($.$mol_check_icon) = class $mol_check_icon extends ($.$mol_check) {}; + + +; +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/check/icon/icon.view.css", "[mol_check_icon]:where([mol_check_checked]) {\n\tcolor: var(--mol_theme_current);\n}\n"); +})($ || ($ = {})); + +; +"use strict"; + +; + ($.$mol_svg) = class $mol_svg extends ($.$mol_view) { + dom_name(){ + return "svg"; + } + dom_name_space(){ + return "http://www.w3.org/2000/svg"; + } + font_size(){ + return 16; + } + font_family(){ + return ""; + } + style_size(){ + return {}; + } + }; + + +; +"use strict"; +var $; +(function ($) { + class $mol_state_time extends $mol_object { + static task(precision, reset) { + if (precision) { + return new $mol_after_timeout(precision, () => this.task(precision, null)); } - catch (e) { - e.message += '\n' + path; - return this.$.$mol_fail_hidden(e); + else { + return new $mol_after_frame(() => this.task(precision, null)); } } - open(...modes) { - return $node.fs.openSync(this.path(), modes.reduce((res, mode) => res | $mol_file_mode_open[mode], 0)); + static now(precision) { + this.task(precision); + return Date.now(); } } __decorate([ - $mol_mem - ], $mol_file_node.prototype, "watcher", null); - __decorate([ - $mol_mem - ], $mol_file_node.prototype, "stat", null); - __decorate([ - $mol_mem - ], $mol_file_node.prototype, "ensure", null); - __decorate([ - $mol_action - ], $mol_file_node.prototype, "drop", null); - __decorate([ - $mol_mem - ], $mol_file_node.prototype, "buffer", null); - __decorate([ - $mol_mem - ], $mol_file_node.prototype, "sub", null); + $mol_mem_key + ], $mol_state_time, "task", null); __decorate([ $mol_mem_key - ], $mol_file_node, "absolute", null); - $.$mol_file_node = $mol_file_node; - $.$mol_file = $mol_file_node; + ], $mol_state_time, "now", null); + $.$mol_state_time = $mol_state_time; +})($ || ($ = {})); + +; +"use strict"; + +; +"use strict"; +var $; +(function ($) { + var $$; + (function ($$) { + class $mol_svg extends $.$mol_svg { + computed_style() { + const win = this.$.$mol_dom_context; + const style = win.getComputedStyle(this.dom_node()); + if (!style['font-size']) + $mol_state_time.now(0); + return style; + } + font_size() { + return parseInt(this.computed_style()['font-size']) || 16; + } + font_family() { + return this.computed_style()['font-family']; + } + } + __decorate([ + $mol_mem + ], $mol_svg.prototype, "computed_style", null); + __decorate([ + $mol_mem + ], $mol_svg.prototype, "font_size", null); + __decorate([ + $mol_mem + ], $mol_svg.prototype, "font_family", null); + $$.$mol_svg = $mol_svg; + })($$ = $.$$ || ($.$$ = {})); +})($ || ($ = {})); + +; + ($.$mol_svg_root) = class $mol_svg_root extends ($.$mol_svg) { + view_box(){ + return "0 0 100 100"; + } + aspect(){ + return "xMidYMid"; + } + dom_name(){ + return "svg"; + } + attr(){ + return { + ...(super.attr()), + "viewBox": (this.view_box()), + "preserveAspectRatio": (this.aspect()) + }; + } + }; + + +; +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/svg/root/root.view.css", "[mol_svg_root] {\n\toverflow: hidden;\n}\n"); +})($ || ($ = {})); + +; +"use strict"; + +; + ($.$mol_svg_path) = class $mol_svg_path extends ($.$mol_svg) { + geometry(){ + return ""; + } + dom_name(){ + return "path"; + } + attr(){ + return {...(super.attr()), "d": (this.geometry())}; + } + }; + + +; +"use strict"; + +; + ($.$mol_icon) = class $mol_icon extends ($.$mol_svg_root) { + path(){ + return ""; + } + Path(){ + const obj = new this.$.$mol_svg_path(); + (obj.geometry) = () => ((this.path())); + return obj; + } + view_box(){ + return "0 0 24 24"; + } + minimal_width(){ + return 16; + } + minimal_height(){ + return 16; + } + sub(){ + return [(this.Path())]; + } + }; + ($mol_mem(($.$mol_icon.prototype), "Path")); + + +; +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/icon/icon.view.css", "[mol_icon] {\n\tfill: currentColor;\n\tstroke: none;\n\twidth: 1em;\n\theight: 1.5em;\n\tflex: 0 0 auto;\n\tvertical-align: top;\n\tdisplay: inline-block;\n\tfilter: drop-shadow(0px 1px 1px var(--mol_theme_back));\n\ttransform-origin: center;\n}\n\n[mol_icon_path] {\n\ttransform-origin: center;\n}\n"); })($ || ($ = {})); +; +"use strict"; + +; + ($.$mol_icon_brightness_6) = class $mol_icon_brightness_6 extends ($.$mol_icon) { + path(){ + return "M12,18V6C15.31,6 18,8.69 18,12C18,15.31 15.31,18 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z"; + } + }; + + +; +"use strict"; + ; "use strict"; var $; diff --git a/node.test.js b/node.test.js index 3c79faa..6098f36 100644 --- a/node.test.js +++ b/node.test.js @@ -3856,36 +3856,6 @@ var $; $.$mol_state_local = $mol_state_local; })($ || ($ = {})); -; -"use strict"; -var $; -(function ($) { - function parse(theme) { - if (theme === 'true') - return true; - if (theme === 'false') - return false; - return null; - } - function $mol_lights(next) { - const arg = parse(this.$mol_state_arg.value('mol_lights')); - const base = false; - if (next === undefined) { - return arg ?? this.$mol_state_local.value('$mol_lights') ?? base; - } - else { - if (arg === null) { - this.$mol_state_local.value('$mol_lights', next === base ? null : next); - } - else { - this.$mol_state_arg.value('mol_lights', String(next)); - } - return next; - } - } - $.$mol_lights = $mol_lights; -})($ || ($ = {})); - ; "use strict"; @@ -3893,513 +3863,690 @@ var $; "use strict"; var $; (function ($) { - var $$; - (function ($$) { - class $mol_theme_auto extends $.$mol_theme_auto { - theme() { - return this.$.$mol_lights() ? '$mol_theme_light' : '$mol_theme_dark'; - } - } - $$.$mol_theme_auto = $mol_theme_auto; - })($$ = $.$$ || ($.$$ = {})); + const decoders = {}; + function $mol_charset_decode(buffer, encoding = 'utf8') { + let decoder = decoders[encoding]; + if (!decoder) + decoder = decoders[encoding] = new TextDecoder(encoding); + return decoder.decode(buffer); + } + $.$mol_charset_decode = $mol_charset_decode; })($ || ($ = {})); -; - ($.$mol_speck) = class $mol_speck extends ($.$mol_view) { - theme(){ - return "$mol_theme_accent"; - } - value(){ - return null; - } - attr(){ - return {...(super.attr()), "mol_theme": (this.theme())}; - } - style(){ - return {...(super.style()), "minHeight": "1em"}; - } - sub(){ - return [(this.value())]; - } - }; - - ; "use strict"; var $; (function ($) { - $.$mol_layer = $mol_style_prop('mol_layer', [ - 'hover', - 'focus', - 'speck', - 'float', - 'popup', - ]); + const TextEncoder = globalThis.TextEncoder ?? $node.util.TextEncoder; + const encoder = new TextEncoder(); + function $mol_charset_encode(value) { + return encoder.encode(value); + } + $.$mol_charset_encode = $mol_charset_encode; })($ || ($ = {})); ; "use strict"; var $; (function ($) { - $mol_style_attach("mol/layer/layer.css", ":root {\n\t--mol_layer_hover: 1;\n\t--mol_layer_focus: 2;\n\t--mol_layer_speck: 3;\n\t--mol_layer_float: 4;\n\t--mol_layer_popup: 5;\n}\n"); + class $mol_file_not_found extends Error { + } + $.$mol_file_not_found = $mol_file_not_found; + class $mol_file extends $mol_object { + static absolute(path) { + throw new Error('Not implemented yet'); + } + static relative(path) { + throw new Error('Not implemented yet'); + } + static base = ''; + path() { + return '.'; + } + parent() { + return this.resolve('..'); + } + reset() { + try { + this.stat(null); + } + catch (error) { + if (error instanceof $mol_file_not_found) + return; + return $mol_fail_hidden(error); + } + } + version() { + return this.stat()?.mtime.getTime().toString(36).toUpperCase() ?? ''; + } + watcher() { + console.warn('$mol_file_web.watcher() not implemented'); + return { + destructor() { } + }; + } + exists(next) { + let exists = Boolean(this.stat()); + if (next === undefined) + return exists; + if (next === exists) + return exists; + if (next) { + this.parent().exists(true); + this.ensure(); + } + else { + this.drop(); + } + this.reset(); + return next; + } + type() { + return this.stat()?.type ?? ''; + } + name() { + return this.path().replace(/^.*\//, ''); + } + ext() { + const match = /((?:\.\w+)+)$/.exec(this.path()); + return match ? match[1].substring(1) : ''; + } + text(next, virt) { + if (virt) { + const now = new Date; + this.stat({ + type: 'file', + size: 0, + atime: now, + mtime: now, + ctime: now, + }, 'virt'); + return next; + } + if (next === undefined) { + return $mol_charset_decode(this.buffer(undefined)); + } + else { + const buffer = next === undefined ? undefined : $mol_charset_encode(next); + this.buffer(buffer); + return next; + } + } + find(include, exclude) { + const found = []; + const sub = this.sub(); + for (const child of sub) { + const child_path = child.path(); + if (exclude && child_path.match(exclude)) + continue; + if (!include || child_path.match(include)) + found.push(child); + if (child.type() === 'dir') { + const sub_child = child.find(include, exclude); + for (const child of sub_child) + found.push(child); + } + } + return found; + } + size() { + switch (this.type()) { + case 'file': return this.stat()?.size ?? 0; + default: return 0; + } + } + open(...modes) { + return 0; + } + toJSON() { + return this.path(); + } + } + __decorate([ + $mol_mem + ], $mol_file.prototype, "exists", null); + __decorate([ + $mol_mem + ], $mol_file.prototype, "text", null); + __decorate([ + $mol_mem_key + ], $mol_file, "absolute", null); + $.$mol_file = $mol_file; })($ || ($ = {})); ; "use strict"; var $; (function ($) { - $mol_style_attach("mol/speck/speck.view.css", "[mol_speck] {\n\tfont-size: .625rem;\n\tborder-radius: 1rem;\n\tmargin: -0.5rem -0.25rem;\n\talign-self: flex-start;\n\tmin-height: 1em;\n\tmin-width: .5em;\n\tvertical-align: sub;\n\tpadding: .25em .5em;\n\tposition: absolute;\n\tz-index: var(--mol_layer_speck);\n\ttext-align: center;\n\tline-height: 1;\n\tdisplay: inline-block;\n\twhite-space: nowrap;\n\ttext-overflow: ellipsis;\n\tuser-select: none;\n}\n"); + function $mol_compare_array(a, b) { + if (a === b) + return true; + if (Object.getPrototypeOf(a) !== Object.getPrototypeOf(b)) + return false; + if (a.length !== b.length) + return false; + for (let i = 0; i < a.length; i++) + if (a[i] !== b[i]) + return false; + return true; + } + $.$mol_compare_array = $mol_compare_array; })($ || ($ = {})); -; -"use strict"; - -; - ($.$mol_button) = class $mol_button extends ($.$mol_view) { - event_activate(next){ - if(next !== undefined) return next; - return null; - } - clicks(next){ - if(next !== undefined) return next; - return null; - } - event_key_press(next){ - if(next !== undefined) return next; - return null; - } - disabled(){ - return false; - } - tab_index(){ - return 0; - } - hint(){ - return ""; - } - hint_safe(){ - return (this.hint()); - } - error(){ - return ""; - } - enabled(){ - return true; - } - click(next){ - if(next !== undefined) return next; - return null; - } - event_click(next){ - if(next !== undefined) return next; - return null; - } - event(){ - return { - ...(super.event()), - "click": (next) => (this.event_activate(next)), - "dblclick": (next) => (this.clicks(next)), - "keydown": (next) => (this.event_key_press(next)) - }; - } - attr(){ - return { - ...(super.attr()), - "disabled": (this.disabled()), - "role": "button", - "tabindex": (this.tab_index()), - "title": (this.hint_safe()) - }; - } - sub(){ - return [(this.title())]; - } - Speck(){ - const obj = new this.$.$mol_speck(); - (obj.value) = () => ((this.error())); - return obj; - } - }; - ($mol_mem(($.$mol_button.prototype), "event_activate")); - ($mol_mem(($.$mol_button.prototype), "clicks")); - ($mol_mem(($.$mol_button.prototype), "event_key_press")); - ($mol_mem(($.$mol_button.prototype), "click")); - ($mol_mem(($.$mol_button.prototype), "event_click")); - ($mol_mem(($.$mol_button.prototype), "Speck")); - - ; "use strict"; var $; (function ($) { - let $mol_keyboard_code; - (function ($mol_keyboard_code) { - $mol_keyboard_code[$mol_keyboard_code["backspace"] = 8] = "backspace"; - $mol_keyboard_code[$mol_keyboard_code["tab"] = 9] = "tab"; - $mol_keyboard_code[$mol_keyboard_code["enter"] = 13] = "enter"; - $mol_keyboard_code[$mol_keyboard_code["shift"] = 16] = "shift"; - $mol_keyboard_code[$mol_keyboard_code["ctrl"] = 17] = "ctrl"; - $mol_keyboard_code[$mol_keyboard_code["alt"] = 18] = "alt"; - $mol_keyboard_code[$mol_keyboard_code["pause"] = 19] = "pause"; - $mol_keyboard_code[$mol_keyboard_code["capsLock"] = 20] = "capsLock"; - $mol_keyboard_code[$mol_keyboard_code["escape"] = 27] = "escape"; - $mol_keyboard_code[$mol_keyboard_code["space"] = 32] = "space"; - $mol_keyboard_code[$mol_keyboard_code["pageUp"] = 33] = "pageUp"; - $mol_keyboard_code[$mol_keyboard_code["pageDown"] = 34] = "pageDown"; - $mol_keyboard_code[$mol_keyboard_code["end"] = 35] = "end"; - $mol_keyboard_code[$mol_keyboard_code["home"] = 36] = "home"; - $mol_keyboard_code[$mol_keyboard_code["left"] = 37] = "left"; - $mol_keyboard_code[$mol_keyboard_code["up"] = 38] = "up"; - $mol_keyboard_code[$mol_keyboard_code["right"] = 39] = "right"; - $mol_keyboard_code[$mol_keyboard_code["down"] = 40] = "down"; - $mol_keyboard_code[$mol_keyboard_code["insert"] = 45] = "insert"; - $mol_keyboard_code[$mol_keyboard_code["delete"] = 46] = "delete"; - $mol_keyboard_code[$mol_keyboard_code["key0"] = 48] = "key0"; - $mol_keyboard_code[$mol_keyboard_code["key1"] = 49] = "key1"; - $mol_keyboard_code[$mol_keyboard_code["key2"] = 50] = "key2"; - $mol_keyboard_code[$mol_keyboard_code["key3"] = 51] = "key3"; - $mol_keyboard_code[$mol_keyboard_code["key4"] = 52] = "key4"; - $mol_keyboard_code[$mol_keyboard_code["key5"] = 53] = "key5"; - $mol_keyboard_code[$mol_keyboard_code["key6"] = 54] = "key6"; - $mol_keyboard_code[$mol_keyboard_code["key7"] = 55] = "key7"; - $mol_keyboard_code[$mol_keyboard_code["key8"] = 56] = "key8"; - $mol_keyboard_code[$mol_keyboard_code["key9"] = 57] = "key9"; - $mol_keyboard_code[$mol_keyboard_code["A"] = 65] = "A"; - $mol_keyboard_code[$mol_keyboard_code["B"] = 66] = "B"; - $mol_keyboard_code[$mol_keyboard_code["C"] = 67] = "C"; - $mol_keyboard_code[$mol_keyboard_code["D"] = 68] = "D"; - $mol_keyboard_code[$mol_keyboard_code["E"] = 69] = "E"; - $mol_keyboard_code[$mol_keyboard_code["F"] = 70] = "F"; - $mol_keyboard_code[$mol_keyboard_code["G"] = 71] = "G"; - $mol_keyboard_code[$mol_keyboard_code["H"] = 72] = "H"; - $mol_keyboard_code[$mol_keyboard_code["I"] = 73] = "I"; - $mol_keyboard_code[$mol_keyboard_code["J"] = 74] = "J"; - $mol_keyboard_code[$mol_keyboard_code["K"] = 75] = "K"; - $mol_keyboard_code[$mol_keyboard_code["L"] = 76] = "L"; - $mol_keyboard_code[$mol_keyboard_code["M"] = 77] = "M"; - $mol_keyboard_code[$mol_keyboard_code["N"] = 78] = "N"; - $mol_keyboard_code[$mol_keyboard_code["O"] = 79] = "O"; - $mol_keyboard_code[$mol_keyboard_code["P"] = 80] = "P"; - $mol_keyboard_code[$mol_keyboard_code["Q"] = 81] = "Q"; - $mol_keyboard_code[$mol_keyboard_code["R"] = 82] = "R"; - $mol_keyboard_code[$mol_keyboard_code["S"] = 83] = "S"; - $mol_keyboard_code[$mol_keyboard_code["T"] = 84] = "T"; - $mol_keyboard_code[$mol_keyboard_code["U"] = 85] = "U"; - $mol_keyboard_code[$mol_keyboard_code["V"] = 86] = "V"; - $mol_keyboard_code[$mol_keyboard_code["W"] = 87] = "W"; - $mol_keyboard_code[$mol_keyboard_code["X"] = 88] = "X"; - $mol_keyboard_code[$mol_keyboard_code["Y"] = 89] = "Y"; - $mol_keyboard_code[$mol_keyboard_code["Z"] = 90] = "Z"; - $mol_keyboard_code[$mol_keyboard_code["metaLeft"] = 91] = "metaLeft"; - $mol_keyboard_code[$mol_keyboard_code["metaRight"] = 92] = "metaRight"; - $mol_keyboard_code[$mol_keyboard_code["select"] = 93] = "select"; - $mol_keyboard_code[$mol_keyboard_code["numpad0"] = 96] = "numpad0"; - $mol_keyboard_code[$mol_keyboard_code["numpad1"] = 97] = "numpad1"; - $mol_keyboard_code[$mol_keyboard_code["numpad2"] = 98] = "numpad2"; - $mol_keyboard_code[$mol_keyboard_code["numpad3"] = 99] = "numpad3"; - $mol_keyboard_code[$mol_keyboard_code["numpad4"] = 100] = "numpad4"; - $mol_keyboard_code[$mol_keyboard_code["numpad5"] = 101] = "numpad5"; - $mol_keyboard_code[$mol_keyboard_code["numpad6"] = 102] = "numpad6"; - $mol_keyboard_code[$mol_keyboard_code["numpad7"] = 103] = "numpad7"; - $mol_keyboard_code[$mol_keyboard_code["numpad8"] = 104] = "numpad8"; - $mol_keyboard_code[$mol_keyboard_code["numpad9"] = 105] = "numpad9"; - $mol_keyboard_code[$mol_keyboard_code["multiply"] = 106] = "multiply"; - $mol_keyboard_code[$mol_keyboard_code["add"] = 107] = "add"; - $mol_keyboard_code[$mol_keyboard_code["subtract"] = 109] = "subtract"; - $mol_keyboard_code[$mol_keyboard_code["decimal"] = 110] = "decimal"; - $mol_keyboard_code[$mol_keyboard_code["divide"] = 111] = "divide"; - $mol_keyboard_code[$mol_keyboard_code["F1"] = 112] = "F1"; - $mol_keyboard_code[$mol_keyboard_code["F2"] = 113] = "F2"; - $mol_keyboard_code[$mol_keyboard_code["F3"] = 114] = "F3"; - $mol_keyboard_code[$mol_keyboard_code["F4"] = 115] = "F4"; - $mol_keyboard_code[$mol_keyboard_code["F5"] = 116] = "F5"; - $mol_keyboard_code[$mol_keyboard_code["F6"] = 117] = "F6"; - $mol_keyboard_code[$mol_keyboard_code["F7"] = 118] = "F7"; - $mol_keyboard_code[$mol_keyboard_code["F8"] = 119] = "F8"; - $mol_keyboard_code[$mol_keyboard_code["F9"] = 120] = "F9"; - $mol_keyboard_code[$mol_keyboard_code["F10"] = 121] = "F10"; - $mol_keyboard_code[$mol_keyboard_code["F11"] = 122] = "F11"; - $mol_keyboard_code[$mol_keyboard_code["F12"] = 123] = "F12"; - $mol_keyboard_code[$mol_keyboard_code["numLock"] = 144] = "numLock"; - $mol_keyboard_code[$mol_keyboard_code["scrollLock"] = 145] = "scrollLock"; - $mol_keyboard_code[$mol_keyboard_code["semicolon"] = 186] = "semicolon"; - $mol_keyboard_code[$mol_keyboard_code["equals"] = 187] = "equals"; - $mol_keyboard_code[$mol_keyboard_code["comma"] = 188] = "comma"; - $mol_keyboard_code[$mol_keyboard_code["dash"] = 189] = "dash"; - $mol_keyboard_code[$mol_keyboard_code["period"] = 190] = "period"; - $mol_keyboard_code[$mol_keyboard_code["forwardSlash"] = 191] = "forwardSlash"; - $mol_keyboard_code[$mol_keyboard_code["graveAccent"] = 192] = "graveAccent"; - $mol_keyboard_code[$mol_keyboard_code["bracketOpen"] = 219] = "bracketOpen"; - $mol_keyboard_code[$mol_keyboard_code["slashBack"] = 220] = "slashBack"; - $mol_keyboard_code[$mol_keyboard_code["slashBackLeft"] = 226] = "slashBackLeft"; - $mol_keyboard_code[$mol_keyboard_code["bracketClose"] = 221] = "bracketClose"; - $mol_keyboard_code[$mol_keyboard_code["quoteSingle"] = 222] = "quoteSingle"; - })($mol_keyboard_code = $.$mol_keyboard_code || ($.$mol_keyboard_code = {})); -})($ || ($ = {})); - -; -"use strict"; - -; -"use strict"; -var $; -(function ($) { - var $$; - (function ($$) { - class $mol_button extends $.$mol_button { - status(next = [null]) { return next; } - disabled() { - return !this.enabled(); + function stat_convert(stat) { + if (!stat) + return null; + let type; + if (stat.isDirectory()) + type = 'dir'; + if (stat.isFile()) + type = 'file'; + if (stat.isSymbolicLink()) + type = 'link'; + if (!type) + return $mol_fail(new Error(`Unsupported file type`)); + return { + type, + size: Number(stat.size), + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime + }; + } + function buffer_normalize(buf) { + return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength); + } + let $mol_file_mode_open; + (function ($mol_file_mode_open) { + $mol_file_mode_open[$mol_file_mode_open["create"] = $node.fs.constants.O_CREAT] = "create"; + $mol_file_mode_open[$mol_file_mode_open["exists_truncate"] = $node.fs.constants.O_TRUNC] = "exists_truncate"; + $mol_file_mode_open[$mol_file_mode_open["exists_fail"] = $node.fs.constants.O_EXCL] = "exists_fail"; + $mol_file_mode_open[$mol_file_mode_open["read_only"] = $node.fs.constants.O_RDONLY] = "read_only"; + $mol_file_mode_open[$mol_file_mode_open["write_only"] = $node.fs.constants.O_WRONLY] = "write_only"; + $mol_file_mode_open[$mol_file_mode_open["read_write"] = $node.fs.constants.O_RDWR] = "read_write"; + $mol_file_mode_open[$mol_file_mode_open["append"] = $node.fs.constants.O_APPEND] = "append"; + })($mol_file_mode_open = $.$mol_file_mode_open || ($.$mol_file_mode_open = {})); + class $mol_file_node extends $mol_file { + static absolute(path) { + return this.make({ + path: $mol_const(path) + }); + } + static relative(path) { + return this.absolute($node.path.resolve(this.base, path).replace(/\\/g, '/')); + } + watcher() { + const watcher = $node.chokidar.watch(this.path(), { + persistent: true, + ignored: /(^\.|___$)/, + depth: 0, + ignoreInitial: true, + awaitWriteFinish: { + stabilityThreshold: 100, + }, + }); + watcher + .on('all', (type, path) => { + const file = $mol_file.relative(path.replace(/\\/g, '/')); + file.reset(); + if (type === 'change') { + this.stat(null); + } + else { + file.parent().reset(); + } + }) + .on('error', $mol_fail_log); + return { + destructor() { + watcher.close(); + } + }; + } + stat(next, virt) { + let stat = next; + const path = this.path(); + this.parent().watcher(); + if (virt) + return next; + try { + stat = next ?? stat_convert($node.fs.statSync(path, { throwIfNoEntry: false })); } - event_activate(next) { - if (!next) - return; - if (!this.enabled()) - return; + catch (error) { + if (error.code === 'ENOENT') + error = new $mol_file_not_found(`File not found`); + error.message += '\n' + path; + return this.$.$mol_fail_hidden(error); + } + return stat; + } + ensure() { + const path = this.path(); + try { + $node.fs.mkdirSync(path); + } + catch (e) { + e.message += '\n' + path; + this.$.$mol_fail_hidden(e); + } + } + drop() { + $node.fs.unlinkSync(this.path()); + } + buffer(next) { + const path = this.path(); + if (next === undefined) { + if (!this.stat()) + return new Uint8Array; try { - this.event_click(next); - this.click(next); - this.status([null]); + const prev = $mol_mem_cached(() => this.buffer()); + next = buffer_normalize($node.fs.readFileSync(path)); + if (prev !== undefined && !$mol_compare_array(prev, next)) { + this.$.$mol_log3_rise({ + place: `$mol_file_node..buffer()`, + message: 'Changed', + path: this.relate(), + }); + } + return next; } catch (error) { - Promise.resolve().then(() => this.status([error])); - $mol_fail_hidden(error); + error.message += '\n' + path; + return this.$.$mol_fail_hidden(error); } } - event_key_press(event) { - if (event.keyCode === $mol_keyboard_code.enter) { - return this.event_activate(event); - } + this.parent().exists(true); + const now = new Date; + this.stat({ + type: 'file', + size: next.length, + atime: now, + mtime: now, + ctime: now, + }, 'virt'); + try { + $node.fs.writeFileSync(path, next); } - tab_index() { - return this.enabled() ? super.tab_index() : -1; + catch (error) { + error.message += '\n' + path; + return this.$.$mol_fail_hidden(error); } - error() { - const [error] = this.status(); - if (!error) - return ''; - if (error instanceof Promise) { - return $mol_fail_hidden(error); - } - return String(error.message ?? error); + return next; + } + sub() { + if (!this.exists()) + return []; + if (this.type() !== 'dir') + return []; + const path = this.path(); + this.stat(); + try { + return $node.fs.readdirSync(path) + .filter(name => !/^\.+$/.test(name)) + .map(name => this.resolve(name)); } - hint_safe() { - try { - return this.hint(); - } - catch (error) { - $mol_fail_log(error); - return ''; - } + catch (e) { + e.message += '\n' + path; + return this.$.$mol_fail_hidden(e); } - sub_visible() { - return [ - ...this.error() ? [this.Speck()] : [], - ...this.sub(), - ]; + } + resolve(path) { + return this.constructor.relative($node.path.join(this.path(), path)); + } + relate(base = this.constructor.relative('.')) { + return $node.path.relative(base.path(), this.path()).replace(/\\/g, '/'); + } + append(next) { + const path = this.path(); + try { + $node.fs.appendFileSync(path, next); + } + catch (e) { + e.message += '\n' + path; + return this.$.$mol_fail_hidden(e); } } - __decorate([ - $mol_mem - ], $mol_button.prototype, "status", null); - $$.$mol_button = $mol_button; - })($$ = $.$$ || ($.$$ = {})); + open(...modes) { + return $node.fs.openSync(this.path(), modes.reduce((res, mode) => res | $mol_file_mode_open[mode], 0)); + } + } + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "watcher", null); + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "stat", null); + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "ensure", null); + __decorate([ + $mol_action + ], $mol_file_node.prototype, "drop", null); + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "buffer", null); + __decorate([ + $mol_mem + ], $mol_file_node.prototype, "sub", null); + __decorate([ + $mol_mem_key + ], $mol_file_node, "absolute", null); + $.$mol_file_node = $mol_file_node; + $.$mol_file = $mol_file_node; })($ || ($ = {})); ; "use strict"; var $; (function ($) { - $mol_style_attach("mol/button/button.view.css", "[mol_button] {\n\tborder: none;\n\tfont: inherit;\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\ttext-decoration: inherit;\n\tcursor: inherit;\n\tposition: relative;\n\tbox-sizing: border-box;\n\tword-break: normal;\n\tcursor: default;\n\tuser-select: none;\n\tborder-radius: var(--mol_gap_round);\n}\n\n[mol_button]:where(:not(:disabled)):hover {\n\tz-index: var(--mol_layer_hover);\n}\n\n[mol_button]:focus-visible {\n\toutline: none;\n\tz-index: var(--mol_layer_focus);\n}\n"); + class $mol_state_local_node extends $mol_state_local { + static dir() { + const base = process.env.XDG_DATA_HOME || ($node.os.homedir() + '/.local/share'); + return $mol_file.absolute(base).resolve('./hyoo_state_local'); + } + static value(key, next) { + const file = this.dir().resolve(encodeURIComponent(key) + '.json'); + if (next === null) { + file.exists(false); + return null; + } + const arg = next === undefined ? undefined : JSON.stringify(next); + return JSON.parse(file.text(arg) || 'null'); + } + } + __decorate([ + $mol_mem + ], $mol_state_local_node, "dir", null); + __decorate([ + $mol_mem_key + ], $mol_state_local_node, "value", null); + $.$mol_state_local_node = $mol_state_local_node; + $.$mol_state_local = $mol_state_local_node; })($ || ($ = {})); -; - ($.$mol_button_typed) = class $mol_button_typed extends ($.$mol_button) { - minimal_height(){ - return 40; - } - minimal_width(){ - return 40; - } - }; - - ; "use strict"; var $; (function ($) { - $mol_style_attach("mol/button/typed/typed.view.css", "[mol_button_typed] {\n\talign-content: center;\n\talign-items: center;\n\tpadding: var(--mol_gap_text);\n\tborder-radius: var(--mol_gap_round);\n\tgap: var(--mol_gap_space);\n\tuser-select: none;\n\tcursor: pointer;\n}\n\n[mol_button_typed][disabled] {\n\tpointer-events: none;\n}\n\n[mol_button_typed]:hover ,\n[mol_button_typed]:focus-visible {\n\tbackground-color: var(--mol_theme_hover);\n}\n\n[mol_button_typed]:active {\n\tcolor: var(--mol_theme_focus);\n}\n\n"); + function parse(theme) { + if (theme === 'true') + return true; + if (theme === 'false') + return false; + return null; + } + function $mol_lights(next) { + const arg = parse(this.$mol_state_arg.value('mol_lights')); + const base = false; + if (next === undefined) { + return arg ?? this.$mol_state_local.value('$mol_lights') ?? base; + } + else { + if (arg === null) { + this.$mol_state_local.value('$mol_lights', next === base ? null : next); + } + else { + this.$mol_state_arg.value('mol_lights', String(next)); + } + return next; + } + } + $.$mol_lights = $mol_lights; })($ || ($ = {})); ; "use strict"; -; - ($.$mol_button_minor) = class $mol_button_minor extends ($.$mol_button_typed) {}; - - ; "use strict"; var $; (function ($) { - $mol_style_attach("mol/button/minor/minor.view.css", "[mol_button_minor] {\n\tcolor: var(--mol_theme_control);\n}\n\n[mol_button_minor][disabled] {\n\tcolor: var(--mol_theme_shade);\n}\n"); + var $$; + (function ($$) { + class $mol_theme_auto extends $.$mol_theme_auto { + theme() { + return this.$.$mol_lights() ? '$mol_theme_light' : '$mol_theme_dark'; + } + } + $$.$mol_theme_auto = $mol_theme_auto; + })($$ = $.$$ || ($.$$ = {})); })($ || ($ = {})); ; -"use strict"; - -; - ($.$mol_check) = class $mol_check extends ($.$mol_button_minor) { - checked(next){ - if(next !== undefined) return next; - return false; - } - aria_checked(){ - return "false"; - } - aria_role(){ - return "checkbox"; + ($.$mol_speck) = class $mol_speck extends ($.$mol_view) { + theme(){ + return "$mol_theme_accent"; } - Icon(){ + value(){ return null; } - title(){ - return ""; - } - Title(){ - const obj = new this.$.$mol_view(); - (obj.sub) = () => ([(this.title())]); - return obj; - } - label(){ - return [(this.Title())]; - } attr(){ - return { - ...(super.attr()), - "mol_check_checked": (this.checked()), - "aria-checked": (this.aria_checked()), - "role": (this.aria_role()) - }; + return {...(super.attr()), "mol_theme": (this.theme())}; + } + style(){ + return {...(super.style()), "minHeight": "1em"}; } sub(){ - return [(this.Icon()), (this.label())]; + return [(this.value())]; } }; - ($mol_mem(($.$mol_check.prototype), "checked")); - ($mol_mem(($.$mol_check.prototype), "Title")); ; "use strict"; var $; (function ($) { - function $mol_maybe(value) { - return (value == null) ? [] : [value]; - } - $.$mol_maybe = $mol_maybe; -})($ || ($ = {})); - -; -"use strict"; -var $; -(function ($) { - $mol_style_attach("mol/check/check.css", "[mol_check] {\n\tflex: 0 0 auto;\n\tjustify-content: flex-start;\n\talign-content: center;\n\t/* align-items: flex-start; */\n\tborder: none;\n\tfont-weight: inherit;\n\tbox-shadow: none;\n\ttext-align: left;\n\tdisplay: inline-flex;\n\tflex-wrap: nowrap;\n}\n\n[mol_check_title] {\n\tflex-shrink: 1;\n}\n"); + $.$mol_layer = $mol_style_prop('mol_layer', [ + 'hover', + 'focus', + 'speck', + 'float', + 'popup', + ]); })($ || ($ = {})); -; -"use strict"; - ; "use strict"; var $; (function ($) { - var $$; - (function ($$) { - class $mol_check extends $.$mol_check { - click(next) { - if (next?.defaultPrevented) - return; - this.checked(!this.checked()); - if (next) - next.preventDefault(); - } - sub() { - return [ - ...$mol_maybe(this.Icon()), - ...this.label(), - ]; - } - label() { - return this.title() ? super.label() : []; - } - aria_checked() { - return String(this.checked()); - } - } - $$.$mol_check = $mol_check; - })($$ = $.$$ || ($.$$ = {})); + $mol_style_attach("mol/layer/layer.css", ":root {\n\t--mol_layer_hover: 1;\n\t--mol_layer_focus: 2;\n\t--mol_layer_speck: 3;\n\t--mol_layer_float: 4;\n\t--mol_layer_popup: 5;\n}\n"); })($ || ($ = {})); -; - ($.$mol_check_icon) = class $mol_check_icon extends ($.$mol_check) {}; - - ; "use strict"; var $; (function ($) { - $mol_style_attach("mol/check/icon/icon.view.css", "[mol_check_icon]:where([mol_check_checked]) {\n\tcolor: var(--mol_theme_current);\n}\n"); + $mol_style_attach("mol/speck/speck.view.css", "[mol_speck] {\n\tfont-size: .625rem;\n\tborder-radius: 1rem;\n\tmargin: -0.5rem -0.25rem;\n\talign-self: flex-start;\n\tmin-height: 1em;\n\tmin-width: .5em;\n\tvertical-align: sub;\n\tpadding: .25em .5em;\n\tposition: absolute;\n\tz-index: var(--mol_layer_speck);\n\ttext-align: center;\n\tline-height: 1;\n\tdisplay: inline-block;\n\twhite-space: nowrap;\n\ttext-overflow: ellipsis;\n\tuser-select: none;\n}\n"); })($ || ($ = {})); ; "use strict"; ; - ($.$mol_svg) = class $mol_svg extends ($.$mol_view) { - dom_name(){ - return "svg"; + ($.$mol_button) = class $mol_button extends ($.$mol_view) { + event_activate(next){ + if(next !== undefined) return next; + return null; + } + clicks(next){ + if(next !== undefined) return next; + return null; + } + event_key_press(next){ + if(next !== undefined) return next; + return null; + } + disabled(){ + return false; + } + tab_index(){ + return 0; + } + hint(){ + return ""; + } + hint_safe(){ + return (this.hint()); + } + error(){ + return ""; } - dom_name_space(){ - return "http://www.w3.org/2000/svg"; + enabled(){ + return true; } - font_size(){ - return 16; + click(next){ + if(next !== undefined) return next; + return null; } - font_family(){ - return ""; + event_click(next){ + if(next !== undefined) return next; + return null; } - style_size(){ - return {}; + event(){ + return { + ...(super.event()), + "click": (next) => (this.event_activate(next)), + "dblclick": (next) => (this.clicks(next)), + "keydown": (next) => (this.event_key_press(next)) + }; + } + attr(){ + return { + ...(super.attr()), + "disabled": (this.disabled()), + "role": "button", + "tabindex": (this.tab_index()), + "title": (this.hint_safe()) + }; + } + sub(){ + return [(this.title())]; + } + Speck(){ + const obj = new this.$.$mol_speck(); + (obj.value) = () => ((this.error())); + return obj; } }; + ($mol_mem(($.$mol_button.prototype), "event_activate")); + ($mol_mem(($.$mol_button.prototype), "clicks")); + ($mol_mem(($.$mol_button.prototype), "event_key_press")); + ($mol_mem(($.$mol_button.prototype), "click")); + ($mol_mem(($.$mol_button.prototype), "event_click")); + ($mol_mem(($.$mol_button.prototype), "Speck")); ; "use strict"; var $; (function ($) { - class $mol_state_time extends $mol_object { - static task(precision, reset) { - if (precision) { - return new $mol_after_timeout(precision, () => this.task(precision, null)); - } - else { - return new $mol_after_frame(() => this.task(precision, null)); - } - } - static now(precision) { - this.task(precision); - return Date.now(); - } - } - __decorate([ - $mol_mem_key - ], $mol_state_time, "task", null); - __decorate([ - $mol_mem_key - ], $mol_state_time, "now", null); - $.$mol_state_time = $mol_state_time; + let $mol_keyboard_code; + (function ($mol_keyboard_code) { + $mol_keyboard_code[$mol_keyboard_code["backspace"] = 8] = "backspace"; + $mol_keyboard_code[$mol_keyboard_code["tab"] = 9] = "tab"; + $mol_keyboard_code[$mol_keyboard_code["enter"] = 13] = "enter"; + $mol_keyboard_code[$mol_keyboard_code["shift"] = 16] = "shift"; + $mol_keyboard_code[$mol_keyboard_code["ctrl"] = 17] = "ctrl"; + $mol_keyboard_code[$mol_keyboard_code["alt"] = 18] = "alt"; + $mol_keyboard_code[$mol_keyboard_code["pause"] = 19] = "pause"; + $mol_keyboard_code[$mol_keyboard_code["capsLock"] = 20] = "capsLock"; + $mol_keyboard_code[$mol_keyboard_code["escape"] = 27] = "escape"; + $mol_keyboard_code[$mol_keyboard_code["space"] = 32] = "space"; + $mol_keyboard_code[$mol_keyboard_code["pageUp"] = 33] = "pageUp"; + $mol_keyboard_code[$mol_keyboard_code["pageDown"] = 34] = "pageDown"; + $mol_keyboard_code[$mol_keyboard_code["end"] = 35] = "end"; + $mol_keyboard_code[$mol_keyboard_code["home"] = 36] = "home"; + $mol_keyboard_code[$mol_keyboard_code["left"] = 37] = "left"; + $mol_keyboard_code[$mol_keyboard_code["up"] = 38] = "up"; + $mol_keyboard_code[$mol_keyboard_code["right"] = 39] = "right"; + $mol_keyboard_code[$mol_keyboard_code["down"] = 40] = "down"; + $mol_keyboard_code[$mol_keyboard_code["insert"] = 45] = "insert"; + $mol_keyboard_code[$mol_keyboard_code["delete"] = 46] = "delete"; + $mol_keyboard_code[$mol_keyboard_code["key0"] = 48] = "key0"; + $mol_keyboard_code[$mol_keyboard_code["key1"] = 49] = "key1"; + $mol_keyboard_code[$mol_keyboard_code["key2"] = 50] = "key2"; + $mol_keyboard_code[$mol_keyboard_code["key3"] = 51] = "key3"; + $mol_keyboard_code[$mol_keyboard_code["key4"] = 52] = "key4"; + $mol_keyboard_code[$mol_keyboard_code["key5"] = 53] = "key5"; + $mol_keyboard_code[$mol_keyboard_code["key6"] = 54] = "key6"; + $mol_keyboard_code[$mol_keyboard_code["key7"] = 55] = "key7"; + $mol_keyboard_code[$mol_keyboard_code["key8"] = 56] = "key8"; + $mol_keyboard_code[$mol_keyboard_code["key9"] = 57] = "key9"; + $mol_keyboard_code[$mol_keyboard_code["A"] = 65] = "A"; + $mol_keyboard_code[$mol_keyboard_code["B"] = 66] = "B"; + $mol_keyboard_code[$mol_keyboard_code["C"] = 67] = "C"; + $mol_keyboard_code[$mol_keyboard_code["D"] = 68] = "D"; + $mol_keyboard_code[$mol_keyboard_code["E"] = 69] = "E"; + $mol_keyboard_code[$mol_keyboard_code["F"] = 70] = "F"; + $mol_keyboard_code[$mol_keyboard_code["G"] = 71] = "G"; + $mol_keyboard_code[$mol_keyboard_code["H"] = 72] = "H"; + $mol_keyboard_code[$mol_keyboard_code["I"] = 73] = "I"; + $mol_keyboard_code[$mol_keyboard_code["J"] = 74] = "J"; + $mol_keyboard_code[$mol_keyboard_code["K"] = 75] = "K"; + $mol_keyboard_code[$mol_keyboard_code["L"] = 76] = "L"; + $mol_keyboard_code[$mol_keyboard_code["M"] = 77] = "M"; + $mol_keyboard_code[$mol_keyboard_code["N"] = 78] = "N"; + $mol_keyboard_code[$mol_keyboard_code["O"] = 79] = "O"; + $mol_keyboard_code[$mol_keyboard_code["P"] = 80] = "P"; + $mol_keyboard_code[$mol_keyboard_code["Q"] = 81] = "Q"; + $mol_keyboard_code[$mol_keyboard_code["R"] = 82] = "R"; + $mol_keyboard_code[$mol_keyboard_code["S"] = 83] = "S"; + $mol_keyboard_code[$mol_keyboard_code["T"] = 84] = "T"; + $mol_keyboard_code[$mol_keyboard_code["U"] = 85] = "U"; + $mol_keyboard_code[$mol_keyboard_code["V"] = 86] = "V"; + $mol_keyboard_code[$mol_keyboard_code["W"] = 87] = "W"; + $mol_keyboard_code[$mol_keyboard_code["X"] = 88] = "X"; + $mol_keyboard_code[$mol_keyboard_code["Y"] = 89] = "Y"; + $mol_keyboard_code[$mol_keyboard_code["Z"] = 90] = "Z"; + $mol_keyboard_code[$mol_keyboard_code["metaLeft"] = 91] = "metaLeft"; + $mol_keyboard_code[$mol_keyboard_code["metaRight"] = 92] = "metaRight"; + $mol_keyboard_code[$mol_keyboard_code["select"] = 93] = "select"; + $mol_keyboard_code[$mol_keyboard_code["numpad0"] = 96] = "numpad0"; + $mol_keyboard_code[$mol_keyboard_code["numpad1"] = 97] = "numpad1"; + $mol_keyboard_code[$mol_keyboard_code["numpad2"] = 98] = "numpad2"; + $mol_keyboard_code[$mol_keyboard_code["numpad3"] = 99] = "numpad3"; + $mol_keyboard_code[$mol_keyboard_code["numpad4"] = 100] = "numpad4"; + $mol_keyboard_code[$mol_keyboard_code["numpad5"] = 101] = "numpad5"; + $mol_keyboard_code[$mol_keyboard_code["numpad6"] = 102] = "numpad6"; + $mol_keyboard_code[$mol_keyboard_code["numpad7"] = 103] = "numpad7"; + $mol_keyboard_code[$mol_keyboard_code["numpad8"] = 104] = "numpad8"; + $mol_keyboard_code[$mol_keyboard_code["numpad9"] = 105] = "numpad9"; + $mol_keyboard_code[$mol_keyboard_code["multiply"] = 106] = "multiply"; + $mol_keyboard_code[$mol_keyboard_code["add"] = 107] = "add"; + $mol_keyboard_code[$mol_keyboard_code["subtract"] = 109] = "subtract"; + $mol_keyboard_code[$mol_keyboard_code["decimal"] = 110] = "decimal"; + $mol_keyboard_code[$mol_keyboard_code["divide"] = 111] = "divide"; + $mol_keyboard_code[$mol_keyboard_code["F1"] = 112] = "F1"; + $mol_keyboard_code[$mol_keyboard_code["F2"] = 113] = "F2"; + $mol_keyboard_code[$mol_keyboard_code["F3"] = 114] = "F3"; + $mol_keyboard_code[$mol_keyboard_code["F4"] = 115] = "F4"; + $mol_keyboard_code[$mol_keyboard_code["F5"] = 116] = "F5"; + $mol_keyboard_code[$mol_keyboard_code["F6"] = 117] = "F6"; + $mol_keyboard_code[$mol_keyboard_code["F7"] = 118] = "F7"; + $mol_keyboard_code[$mol_keyboard_code["F8"] = 119] = "F8"; + $mol_keyboard_code[$mol_keyboard_code["F9"] = 120] = "F9"; + $mol_keyboard_code[$mol_keyboard_code["F10"] = 121] = "F10"; + $mol_keyboard_code[$mol_keyboard_code["F11"] = 122] = "F11"; + $mol_keyboard_code[$mol_keyboard_code["F12"] = 123] = "F12"; + $mol_keyboard_code[$mol_keyboard_code["numLock"] = 144] = "numLock"; + $mol_keyboard_code[$mol_keyboard_code["scrollLock"] = 145] = "scrollLock"; + $mol_keyboard_code[$mol_keyboard_code["semicolon"] = 186] = "semicolon"; + $mol_keyboard_code[$mol_keyboard_code["equals"] = 187] = "equals"; + $mol_keyboard_code[$mol_keyboard_code["comma"] = 188] = "comma"; + $mol_keyboard_code[$mol_keyboard_code["dash"] = 189] = "dash"; + $mol_keyboard_code[$mol_keyboard_code["period"] = 190] = "period"; + $mol_keyboard_code[$mol_keyboard_code["forwardSlash"] = 191] = "forwardSlash"; + $mol_keyboard_code[$mol_keyboard_code["graveAccent"] = 192] = "graveAccent"; + $mol_keyboard_code[$mol_keyboard_code["bracketOpen"] = 219] = "bracketOpen"; + $mol_keyboard_code[$mol_keyboard_code["slashBack"] = 220] = "slashBack"; + $mol_keyboard_code[$mol_keyboard_code["slashBackLeft"] = 226] = "slashBackLeft"; + $mol_keyboard_code[$mol_keyboard_code["bracketClose"] = 221] = "bracketClose"; + $mol_keyboard_code[$mol_keyboard_code["quoteSingle"] = 222] = "quoteSingle"; + })($mol_keyboard_code = $.$mol_keyboard_code || ($.$mol_keyboard_code = {})); })($ || ($ = {})); ; @@ -4411,509 +4558,394 @@ var $; (function ($) { var $$; (function ($$) { - class $mol_svg extends $.$mol_svg { - computed_style() { - const win = this.$.$mol_dom_context; - const style = win.getComputedStyle(this.dom_node()); - if (!style['font-size']) - $mol_state_time.now(0); - return style; + class $mol_button extends $.$mol_button { + status(next = [null]) { return next; } + disabled() { + return !this.enabled(); } - font_size() { - return parseInt(this.computed_style()['font-size']) || 16; + event_activate(next) { + if (!next) + return; + if (!this.enabled()) + return; + try { + this.event_click(next); + this.click(next); + this.status([null]); + } + catch (error) { + Promise.resolve().then(() => this.status([error])); + $mol_fail_hidden(error); + } } - font_family() { - return this.computed_style()['font-family']; + event_key_press(event) { + if (event.keyCode === $mol_keyboard_code.enter) { + return this.event_activate(event); + } } - } - __decorate([ - $mol_mem - ], $mol_svg.prototype, "computed_style", null); - __decorate([ - $mol_mem - ], $mol_svg.prototype, "font_size", null); - __decorate([ - $mol_mem - ], $mol_svg.prototype, "font_family", null); - $$.$mol_svg = $mol_svg; - })($$ = $.$$ || ($.$$ = {})); -})($ || ($ = {})); - -; - ($.$mol_svg_root) = class $mol_svg_root extends ($.$mol_svg) { - view_box(){ - return "0 0 100 100"; - } - aspect(){ - return "xMidYMid"; - } - dom_name(){ - return "svg"; - } - attr(){ - return { - ...(super.attr()), - "viewBox": (this.view_box()), - "preserveAspectRatio": (this.aspect()) - }; - } - }; - + tab_index() { + return this.enabled() ? super.tab_index() : -1; + } + error() { + const [error] = this.status(); + if (!error) + return ''; + if (error instanceof Promise) { + return $mol_fail_hidden(error); + } + return String(error.message ?? error); + } + hint_safe() { + try { + return this.hint(); + } + catch (error) { + $mol_fail_log(error); + return ''; + } + } + sub_visible() { + return [ + ...this.error() ? [this.Speck()] : [], + ...this.sub(), + ]; + } + } + __decorate([ + $mol_mem + ], $mol_button.prototype, "status", null); + $$.$mol_button = $mol_button; + })($$ = $.$$ || ($.$$ = {})); +})($ || ($ = {})); ; "use strict"; var $; (function ($) { - $mol_style_attach("mol/svg/root/root.view.css", "[mol_svg_root] {\n\toverflow: hidden;\n}\n"); + $mol_style_attach("mol/button/button.view.css", "[mol_button] {\n\tborder: none;\n\tfont: inherit;\n\tdisplay: inline-flex;\n\tflex-shrink: 0;\n\ttext-decoration: inherit;\n\tcursor: inherit;\n\tposition: relative;\n\tbox-sizing: border-box;\n\tword-break: normal;\n\tcursor: default;\n\tuser-select: none;\n\tborder-radius: var(--mol_gap_round);\n}\n\n[mol_button]:where(:not(:disabled)):hover {\n\tz-index: var(--mol_layer_hover);\n}\n\n[mol_button]:focus-visible {\n\toutline: none;\n\tz-index: var(--mol_layer_focus);\n}\n"); })($ || ($ = {})); ; -"use strict"; - -; - ($.$mol_svg_path) = class $mol_svg_path extends ($.$mol_svg) { - geometry(){ - return ""; - } - dom_name(){ - return "path"; - } - attr(){ - return {...(super.attr()), "d": (this.geometry())}; - } - }; - - -; -"use strict"; - -; - ($.$mol_icon) = class $mol_icon extends ($.$mol_svg_root) { - path(){ - return ""; - } - Path(){ - const obj = new this.$.$mol_svg_path(); - (obj.geometry) = () => ((this.path())); - return obj; - } - view_box(){ - return "0 0 24 24"; - } - minimal_width(){ - return 16; - } + ($.$mol_button_typed) = class $mol_button_typed extends ($.$mol_button) { minimal_height(){ - return 16; + return 40; } - sub(){ - return [(this.Path())]; + minimal_width(){ + return 40; } }; - ($mol_mem(($.$mol_icon.prototype), "Path")); ; "use strict"; var $; (function ($) { - $mol_style_attach("mol/icon/icon.view.css", "[mol_icon] {\n\tfill: currentColor;\n\tstroke: none;\n\twidth: 1em;\n\theight: 1.5em;\n\tflex: 0 0 auto;\n\tvertical-align: top;\n\tdisplay: inline-block;\n\tfilter: drop-shadow(0px 1px 1px var(--mol_theme_back));\n\ttransform-origin: center;\n}\n\n[mol_icon_path] {\n\ttransform-origin: center;\n}\n"); + $mol_style_attach("mol/button/typed/typed.view.css", "[mol_button_typed] {\n\talign-content: center;\n\talign-items: center;\n\tpadding: var(--mol_gap_text);\n\tborder-radius: var(--mol_gap_round);\n\tgap: var(--mol_gap_space);\n\tuser-select: none;\n\tcursor: pointer;\n}\n\n[mol_button_typed][disabled] {\n\tpointer-events: none;\n}\n\n[mol_button_typed]:hover ,\n[mol_button_typed]:focus-visible {\n\tbackground-color: var(--mol_theme_hover);\n}\n\n[mol_button_typed]:active {\n\tcolor: var(--mol_theme_focus);\n}\n\n"); })($ || ($ = {})); ; "use strict"; ; - ($.$mol_icon_brightness_6) = class $mol_icon_brightness_6 extends ($.$mol_icon) { - path(){ - return "M12,18V6C15.31,6 18,8.69 18,12C18,15.31 15.31,18 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z"; - } - }; - - -; -"use strict"; + ($.$mol_button_minor) = class $mol_button_minor extends ($.$mol_button_typed) {}; -; -"use strict"; ; "use strict"; var $; (function ($) { - const decoders = {}; - function $mol_charset_decode(buffer, encoding = 'utf8') { - let decoder = decoders[encoding]; - if (!decoder) - decoder = decoders[encoding] = new TextDecoder(encoding); - return decoder.decode(buffer); - } - $.$mol_charset_decode = $mol_charset_decode; + $mol_style_attach("mol/button/minor/minor.view.css", "[mol_button_minor] {\n\tcolor: var(--mol_theme_control);\n}\n\n[mol_button_minor][disabled] {\n\tcolor: var(--mol_theme_shade);\n}\n"); })($ || ($ = {})); ; "use strict"; -var $; -(function ($) { - const TextEncoder = globalThis.TextEncoder ?? $node.util.TextEncoder; - const encoder = new TextEncoder(); - function $mol_charset_encode(value) { - return encoder.encode(value); - } - $.$mol_charset_encode = $mol_charset_encode; -})($ || ($ = {})); + +; + ($.$mol_check) = class $mol_check extends ($.$mol_button_minor) { + checked(next){ + if(next !== undefined) return next; + return false; + } + aria_checked(){ + return "false"; + } + aria_role(){ + return "checkbox"; + } + Icon(){ + return null; + } + title(){ + return ""; + } + Title(){ + const obj = new this.$.$mol_view(); + (obj.sub) = () => ([(this.title())]); + return obj; + } + label(){ + return [(this.Title())]; + } + attr(){ + return { + ...(super.attr()), + "mol_check_checked": (this.checked()), + "aria-checked": (this.aria_checked()), + "role": (this.aria_role()) + }; + } + sub(){ + return [(this.Icon()), (this.label())]; + } + }; + ($mol_mem(($.$mol_check.prototype), "checked")); + ($mol_mem(($.$mol_check.prototype), "Title")); + ; "use strict"; var $; -(function ($) { - class $mol_file_not_found extends Error { - } - $.$mol_file_not_found = $mol_file_not_found; - class $mol_file extends $mol_object { - static absolute(path) { - throw new Error('Not implemented yet'); - } - static relative(path) { - throw new Error('Not implemented yet'); - } - static base = ''; - path() { - return '.'; - } - parent() { - return this.resolve('..'); - } - reset() { - try { - this.stat(null); - } - catch (error) { - if (error instanceof $mol_file_not_found) - return; - return $mol_fail_hidden(error); - } - } - version() { - return this.stat()?.mtime.getTime().toString(36).toUpperCase() ?? ''; - } - watcher() { - console.warn('$mol_file_web.watcher() not implemented'); - return { - destructor() { } - }; - } - exists(next) { - let exists = Boolean(this.stat()); - if (next === undefined) - return exists; - if (next === exists) - return exists; - if (next) { - this.parent().exists(true); - this.ensure(); - } - else { - this.drop(); - } - this.reset(); - return next; - } - type() { - return this.stat()?.type ?? ''; - } - name() { - return this.path().replace(/^.*\//, ''); - } - ext() { - const match = /((?:\.\w+)+)$/.exec(this.path()); - return match ? match[1].substring(1) : ''; - } - text(next, virt) { - if (virt) { - const now = new Date; - this.stat({ - type: 'file', - size: 0, - atime: now, - mtime: now, - ctime: now, - }, 'virt'); - return next; - } - if (next === undefined) { - return $mol_charset_decode(this.buffer(undefined)); - } - else { - const buffer = next === undefined ? undefined : $mol_charset_encode(next); - this.buffer(buffer); - return next; - } - } - find(include, exclude) { - const found = []; - const sub = this.sub(); - for (const child of sub) { - const child_path = child.path(); - if (exclude && child_path.match(exclude)) - continue; - if (!include || child_path.match(include)) - found.push(child); - if (child.type() === 'dir') { - const sub_child = child.find(include, exclude); - for (const child of sub_child) - found.push(child); - } - } - return found; - } - size() { - switch (this.type()) { - case 'file': return this.stat()?.size ?? 0; - default: return 0; - } - } - open(...modes) { - return 0; - } - } - __decorate([ - $mol_mem - ], $mol_file.prototype, "exists", null); - __decorate([ - $mol_mem - ], $mol_file.prototype, "text", null); - __decorate([ - $mol_mem_key - ], $mol_file, "absolute", null); - $.$mol_file = $mol_file; +(function ($) { + function $mol_maybe(value) { + return (value == null) ? [] : [value]; + } + $.$mol_maybe = $mol_maybe; })($ || ($ = {})); ; "use strict"; var $; (function ($) { - function $mol_compare_array(a, b) { - if (a === b) - return true; - if (Object.getPrototypeOf(a) !== Object.getPrototypeOf(b)) - return false; - if (a.length !== b.length) - return false; - for (let i = 0; i < a.length; i++) - if (a[i] !== b[i]) - return false; - return true; - } - $.$mol_compare_array = $mol_compare_array; + $mol_style_attach("mol/check/check.css", "[mol_check] {\n\tflex: 0 0 auto;\n\tjustify-content: flex-start;\n\talign-content: center;\n\t/* align-items: flex-start; */\n\tborder: none;\n\tfont-weight: inherit;\n\tbox-shadow: none;\n\ttext-align: left;\n\tdisplay: inline-flex;\n\tflex-wrap: nowrap;\n}\n\n[mol_check_title] {\n\tflex-shrink: 1;\n}\n"); })($ || ($ = {})); +; +"use strict"; + ; "use strict"; var $; (function ($) { - function stat_convert(stat) { - if (!stat) - return null; - let type; - if (stat.isDirectory()) - type = 'dir'; - if (stat.isFile()) - type = 'file'; - if (stat.isSymbolicLink()) - type = 'link'; - if (!type) - return $mol_fail(new Error(`Unsupported file type`)); - return { - type, - size: Number(stat.size), - atime: stat.atime, - mtime: stat.mtime, - ctime: stat.ctime - }; - } - function buffer_normalize(buf) { - return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength); - } - let $mol_file_mode_open; - (function ($mol_file_mode_open) { - $mol_file_mode_open[$mol_file_mode_open["create"] = $node.fs.constants.O_CREAT] = "create"; - $mol_file_mode_open[$mol_file_mode_open["exists_truncate"] = $node.fs.constants.O_TRUNC] = "exists_truncate"; - $mol_file_mode_open[$mol_file_mode_open["exists_fail"] = $node.fs.constants.O_EXCL] = "exists_fail"; - $mol_file_mode_open[$mol_file_mode_open["read_only"] = $node.fs.constants.O_RDONLY] = "read_only"; - $mol_file_mode_open[$mol_file_mode_open["write_only"] = $node.fs.constants.O_WRONLY] = "write_only"; - $mol_file_mode_open[$mol_file_mode_open["read_write"] = $node.fs.constants.O_RDWR] = "read_write"; - $mol_file_mode_open[$mol_file_mode_open["append"] = $node.fs.constants.O_APPEND] = "append"; - })($mol_file_mode_open = $.$mol_file_mode_open || ($.$mol_file_mode_open = {})); - class $mol_file_node extends $mol_file { - static absolute(path) { - return this.make({ - path: $mol_const(path) - }); - } - static relative(path) { - return this.absolute($node.path.resolve(this.base, path).replace(/\\/g, '/')); - } - watcher() { - const watcher = $node.chokidar.watch(this.path(), { - persistent: true, - ignored: /(^\.|___$)/, - depth: 0, - ignoreInitial: true, - awaitWriteFinish: { - stabilityThreshold: 100, - }, - }); - watcher - .on('all', (type, path) => { - const file = $mol_file.relative(path.replace(/\\/g, '/')); - file.reset(); - if (type === 'change') { - this.stat(null); - } - else { - file.parent().reset(); - } - }) - .on('error', $mol_fail_log); - return { - destructor() { - watcher.close(); - } - }; - } - stat(next, virt) { - let stat = next; - const path = this.path(); - this.parent().watcher(); - if (virt) - return next; - try { - stat = next ?? stat_convert($node.fs.statSync(path, { throwIfNoEntry: false })); - } - catch (error) { - if (error.code === 'ENOENT') - error = new $mol_file_not_found(`File not found`); - error.message += '\n' + path; - return this.$.$mol_fail_hidden(error); - } - return stat; - } - ensure() { - const path = this.path(); - try { - $node.fs.mkdirSync(path); - } - catch (e) { - e.message += '\n' + path; - this.$.$mol_fail_hidden(e); - } - } - drop() { - $node.fs.unlinkSync(this.path()); - } - buffer(next) { - const path = this.path(); - if (next === undefined) { - if (!this.stat()) - return new Uint8Array; - try { - const prev = $mol_mem_cached(() => this.buffer()); - next = buffer_normalize($node.fs.readFileSync(path)); - if (prev !== undefined && !$mol_compare_array(prev, next)) { - this.$.$mol_log3_rise({ - place: `$mol_file_node..buffer()`, - message: 'Changed', - path: this.relate(), - }); - } - return next; - } - catch (error) { - error.message += '\n' + path; - return this.$.$mol_fail_hidden(error); - } - } - this.parent().exists(true); - const now = new Date; - this.stat({ - type: 'file', - size: next.length, - atime: now, - mtime: now, - ctime: now, - }, 'virt'); - try { - $node.fs.writeFileSync(path, next); + var $$; + (function ($$) { + class $mol_check extends $.$mol_check { + click(next) { + if (next?.defaultPrevented) + return; + this.checked(!this.checked()); + if (next) + next.preventDefault(); } - catch (error) { - error.message += '\n' + path; - return this.$.$mol_fail_hidden(error); + sub() { + return [ + ...$mol_maybe(this.Icon()), + ...this.label(), + ]; } - return next; - } - sub() { - if (!this.exists()) - return []; - if (this.type() !== 'dir') - return []; - const path = this.path(); - this.stat(); - try { - return $node.fs.readdirSync(path) - .filter(name => !/^\.+$/.test(name)) - .map(name => this.resolve(name)); + label() { + return this.title() ? super.label() : []; } - catch (e) { - e.message += '\n' + path; - return this.$.$mol_fail_hidden(e); + aria_checked() { + return String(this.checked()); } } - resolve(path) { - return this.constructor.relative($node.path.join(this.path(), path)); - } - relate(base = this.constructor.relative('.')) { - return $node.path.relative(base.path(), this.path()).replace(/\\/g, '/'); - } - append(next) { - const path = this.path(); - try { - $node.fs.appendFileSync(path, next); + $$.$mol_check = $mol_check; + })($$ = $.$$ || ($.$$ = {})); +})($ || ($ = {})); + +; + ($.$mol_check_icon) = class $mol_check_icon extends ($.$mol_check) {}; + + +; +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/check/icon/icon.view.css", "[mol_check_icon]:where([mol_check_checked]) {\n\tcolor: var(--mol_theme_current);\n}\n"); +})($ || ($ = {})); + +; +"use strict"; + +; + ($.$mol_svg) = class $mol_svg extends ($.$mol_view) { + dom_name(){ + return "svg"; + } + dom_name_space(){ + return "http://www.w3.org/2000/svg"; + } + font_size(){ + return 16; + } + font_family(){ + return ""; + } + style_size(){ + return {}; + } + }; + + +; +"use strict"; +var $; +(function ($) { + class $mol_state_time extends $mol_object { + static task(precision, reset) { + if (precision) { + return new $mol_after_timeout(precision, () => this.task(precision, null)); } - catch (e) { - e.message += '\n' + path; - return this.$.$mol_fail_hidden(e); + else { + return new $mol_after_frame(() => this.task(precision, null)); } } - open(...modes) { - return $node.fs.openSync(this.path(), modes.reduce((res, mode) => res | $mol_file_mode_open[mode], 0)); + static now(precision) { + this.task(precision); + return Date.now(); } } __decorate([ - $mol_mem - ], $mol_file_node.prototype, "watcher", null); - __decorate([ - $mol_mem - ], $mol_file_node.prototype, "stat", null); - __decorate([ - $mol_mem - ], $mol_file_node.prototype, "ensure", null); - __decorate([ - $mol_action - ], $mol_file_node.prototype, "drop", null); - __decorate([ - $mol_mem - ], $mol_file_node.prototype, "buffer", null); - __decorate([ - $mol_mem - ], $mol_file_node.prototype, "sub", null); + $mol_mem_key + ], $mol_state_time, "task", null); __decorate([ $mol_mem_key - ], $mol_file_node, "absolute", null); - $.$mol_file_node = $mol_file_node; - $.$mol_file = $mol_file_node; + ], $mol_state_time, "now", null); + $.$mol_state_time = $mol_state_time; +})($ || ($ = {})); + +; +"use strict"; + +; +"use strict"; +var $; +(function ($) { + var $$; + (function ($$) { + class $mol_svg extends $.$mol_svg { + computed_style() { + const win = this.$.$mol_dom_context; + const style = win.getComputedStyle(this.dom_node()); + if (!style['font-size']) + $mol_state_time.now(0); + return style; + } + font_size() { + return parseInt(this.computed_style()['font-size']) || 16; + } + font_family() { + return this.computed_style()['font-family']; + } + } + __decorate([ + $mol_mem + ], $mol_svg.prototype, "computed_style", null); + __decorate([ + $mol_mem + ], $mol_svg.prototype, "font_size", null); + __decorate([ + $mol_mem + ], $mol_svg.prototype, "font_family", null); + $$.$mol_svg = $mol_svg; + })($$ = $.$$ || ($.$$ = {})); +})($ || ($ = {})); + +; + ($.$mol_svg_root) = class $mol_svg_root extends ($.$mol_svg) { + view_box(){ + return "0 0 100 100"; + } + aspect(){ + return "xMidYMid"; + } + dom_name(){ + return "svg"; + } + attr(){ + return { + ...(super.attr()), + "viewBox": (this.view_box()), + "preserveAspectRatio": (this.aspect()) + }; + } + }; + + +; +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/svg/root/root.view.css", "[mol_svg_root] {\n\toverflow: hidden;\n}\n"); +})($ || ($ = {})); + +; +"use strict"; + +; + ($.$mol_svg_path) = class $mol_svg_path extends ($.$mol_svg) { + geometry(){ + return ""; + } + dom_name(){ + return "path"; + } + attr(){ + return {...(super.attr()), "d": (this.geometry())}; + } + }; + + +; +"use strict"; + +; + ($.$mol_icon) = class $mol_icon extends ($.$mol_svg_root) { + path(){ + return ""; + } + Path(){ + const obj = new this.$.$mol_svg_path(); + (obj.geometry) = () => ((this.path())); + return obj; + } + view_box(){ + return "0 0 24 24"; + } + minimal_width(){ + return 16; + } + minimal_height(){ + return 16; + } + sub(){ + return [(this.Path())]; + } + }; + ($mol_mem(($.$mol_icon.prototype), "Path")); + + +; +"use strict"; +var $; +(function ($) { + $mol_style_attach("mol/icon/icon.view.css", "[mol_icon] {\n\tfill: currentColor;\n\tstroke: none;\n\twidth: 1em;\n\theight: 1.5em;\n\tflex: 0 0 auto;\n\tvertical-align: top;\n\tdisplay: inline-block;\n\tfilter: drop-shadow(0px 1px 1px var(--mol_theme_back));\n\ttransform-origin: center;\n}\n\n[mol_icon_path] {\n\ttransform-origin: center;\n}\n"); })($ || ($ = {})); +; +"use strict"; + +; + ($.$mol_icon_brightness_6) = class $mol_icon_brightness_6 extends ($.$mol_icon) { + path(){ + return "M12,18V6C15.31,6 18,8.69 18,12C18,15.31 15.31,18 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z"; + } + }; + + +; +"use strict"; + ; "use strict"; var $; @@ -8620,6 +8652,55 @@ var $; ; "use strict"; +; +"use strict"; +var $; +(function ($) { + $mol_test({ + 'decode utf8 string'() { + const str = 'Hello, ΧΨΩЫ'; + const encoded = new Uint8Array([72, 101, 108, 108, 111, 44, 32, 206, 167, 206, 168, 206, 169, 208, 171]); + $mol_assert_equal($mol_charset_decode(encoded), str); + $mol_assert_equal($mol_charset_decode(encoded, 'utf8'), str); + }, + 'decode empty string'() { + const encoded = new Uint8Array([]); + $mol_assert_equal($mol_charset_decode(encoded), ''); + }, + }); +})($ || ($ = {})); + +; +"use strict"; +var $; +(function ($) { + $mol_test({ + 'encode utf8 string'() { + const str = 'Hello, ΧΨΩЫ'; + const encoded = new Uint8Array([72, 101, 108, 108, 111, 44, 32, 206, 167, 206, 168, 206, 169, 208, 171]); + $mol_assert_like($mol_charset_encode(str), encoded); + }, + }); +})($ || ($ = {})); + +; +"use strict"; +var $; +(function ($) { + class TestClass extends Uint8Array { + } + $mol_test({ + 'Uint8Array vs itself'() { + $mol_assert_ok($mol_compare_array(new Uint8Array, new Uint8Array)); + $mol_assert_ok($mol_compare_array(new Uint8Array([0]), new Uint8Array([0]))); + $mol_assert_not($mol_compare_array(new Uint8Array([0]), new Uint8Array([1]))); + }, + 'Uint8Array vs subclassed array'() { + $mol_assert_not($mol_compare_array(new Uint8Array, new TestClass)); + }, + }); +})($ || ($ = {})); + ; "use strict"; var $; @@ -8716,55 +8797,6 @@ var $; }); })($ || ($ = {})); -; -"use strict"; -var $; -(function ($) { - $mol_test({ - 'decode utf8 string'() { - const str = 'Hello, ΧΨΩЫ'; - const encoded = new Uint8Array([72, 101, 108, 108, 111, 44, 32, 206, 167, 206, 168, 206, 169, 208, 171]); - $mol_assert_equal($mol_charset_decode(encoded), str); - $mol_assert_equal($mol_charset_decode(encoded, 'utf8'), str); - }, - 'decode empty string'() { - const encoded = new Uint8Array([]); - $mol_assert_equal($mol_charset_decode(encoded), ''); - }, - }); -})($ || ($ = {})); - -; -"use strict"; -var $; -(function ($) { - $mol_test({ - 'encode utf8 string'() { - const str = 'Hello, ΧΨΩЫ'; - const encoded = new Uint8Array([72, 101, 108, 108, 111, 44, 32, 206, 167, 206, 168, 206, 169, 208, 171]); - $mol_assert_like($mol_charset_encode(str), encoded); - }, - }); -})($ || ($ = {})); - -; -"use strict"; -var $; -(function ($) { - class TestClass extends Uint8Array { - } - $mol_test({ - 'Uint8Array vs itself'() { - $mol_assert_ok($mol_compare_array(new Uint8Array, new Uint8Array)); - $mol_assert_ok($mol_compare_array(new Uint8Array([0]), new Uint8Array([0]))); - $mol_assert_not($mol_compare_array(new Uint8Array([0]), new Uint8Array([1]))); - }, - 'Uint8Array vs subclassed array'() { - $mol_assert_not($mol_compare_array(new Uint8Array, new TestClass)); - }, - }); -})($ || ($ = {})); - ; "use strict"; var $; diff --git a/node.test.js.map b/node.test.js.map index f4e5e76..94b5c8c 100644 --- a/node.test.js.map +++ b/node.test.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../../mam.ts","../../../mol/ambient/ambient.ts","../../../mol/delegate/delegate.ts","../../../mol/owning/owning.ts","../../../mol/fail/fail.ts","../../../mol/fail/hidden/hidden.ts","../../../mol/func/name/name.ts","../../../mol/object2/object2.ts","../../../mol/object/object.ts","../../../mol/window/window.node.ts","../../../mol/wire/cursor/cursor.ts","../../../mol/wire/pub/pub.ts","../../../mol/wire/wire.ts","../../../mol/dev/format/format.ts","../../../mol/wire/pub/sub/sub.ts","../../../mol/after/timeout/timeout.ts","../../../mol/after/frame/frame.node.ts","../../../mol/promise/like/like.ts","../../../mol/wire/fiber/fiber.ts","../../../mol/guid/guid.ts","../../../mol/key/key.ts","../../../mol/compare/deep/deep.ts","../../../mol/log3/log3.ts","../../../mol/span/span.ts","../../../mol/tree2/to/string/string.ts","../../../mol/tree2/tree2.ts","../../../mol/error/syntax/syntax.ts","../../../mol/tree2/from/string/string.ts","../../../mol/tree2/from/json/json.ts","../../../mol/term/color/color.ts","../../../mol/log3/log3.node.ts","../../../mol/wire/task/task.ts","../../../mol/wire/method/method.ts","../../../mol/fail/catch/catch.ts","../../../mol/fail/log/log.ts","../../../mol/wire/atom/atom.ts","../../../mol/wire/solo/solo.ts","../../../mol/wire/plex/plex.ts","../../../mol/mem/mem.ts","../../../mol/dom/context/context.ts","../../../node/node.node.ts","../../../mol/env/env.ts","../../../mol/env/env.node.ts","../../../mol/exec/exec.node.ts","../../../mol/dom/context/context.node.ts","../../../mol/after/tick/tick.ts","../../../mol/view/selection/selection.ts","../../../mol/wrapper/wrapper.ts","../../../mol/memo/memo.ts","../../../mol/dom/qname/qname.ts","../../../mol/wire/probe/probe.ts","../../../mol/wire/watch/watch.ts","../../../mol/const/const.ts","../../../mol/wire/solid/solid.ts","../../../mol/dom/render/attributes/attributes.ts","../../../mol/dom/render/events/events.ts","../../../mol/dom/render/styles/styles.ts","../../../mol/dom/render/children/children.ts","../../../mol/dom/render/fields/fields.ts","../../../mol/wire/async/async.ts","../../../mol/style/attach/attach.ts","../../../mol/decor/decor.ts","../../../mol/style/unit/unit.ts","../../../mol/style/func/func.ts","../../../mol/style/prop/prop.ts","../../../mol/theme/theme.ts","../../../mol/theme/-css/theme.css.ts","../../../mol/gap/gap.ts","../../../mol/gap/-css/gap.css.ts","../../../mol/view/view/view.ts","../../../mol/view/view/-css/view.css.ts","../../../mol/scroll/scroll.view.tree","../../../mol/dom/listener/listener.ts","../../../mol/print/print.ts","../../../mol/style/sheet/sheet.ts","../../../mol/style/define/define.ts","../../../mol/scroll/scroll.view.ts","../../../mol/scroll/scroll.view.css.ts","../../../mol/page/page.view.tree","../../../mol/plugin/plugin.ts","../../../mol/page/page.view.css.ts","../../../mol/theme/auto/auto.view.tree","../../../mol/action/action.ts","../../../mol/state/arg/arg.node.ts","../../../mol/mem/persist/persist.ts","../../../mol/mem/cached/cached.ts","../../../mol/wire/sync/sync.ts","../../../mol/storage/storage.ts","../../../mol/state/local/local.ts","../../../mol/lights/lights.ts","../../../mol/theme/auto/auto.view.ts","../../../mol/speck/speck.view.tree","../../../mol/layer/layer.ts","../../../mol/layer/-css/layer.css.ts","../../../mol/speck/-css/speck.view.css.ts","../../../mol/button/button.view.tree","../../../mol/keyboard/code/code.ts","../../../mol/button/button.view.ts","../../../mol/button/-css/button.view.css.ts","../../../mol/button/typed/typed.view.tree","../../../mol/button/typed/-css/typed.view.css.ts","../../../mol/button/minor/minor.view.tree","../../../mol/button/minor/-css/minor.view.css.ts","../../../mol/check/check.view.tree","../../../mol/maybe/maybe.ts","../../../mol/check/-css/check.css.ts","../../../mol/check/check.view.ts","../../../mol/check/icon/icon.view.tree","../../../mol/check/icon/-css/icon.view.css.ts","../../../mol/svg/svg.view.tree","../../../mol/state/time/time.ts","../../../mol/svg/svg.view.ts","../../../mol/svg/root/root.view.tree","../../../mol/svg/root/-css/root.view.css.ts","../../../mol/svg/path/path.view.tree","../../../mol/icon/icon.view.tree","../../../mol/icon/-css/icon.view.css.ts","../../../mol/icon/brightness/6/6.view.tree","../../../mol/charset/decode/decode.ts","../../../mol/charset/encode/encode.ts","../../../mol/file/file.ts","../../../mol/compare/array/array.ts","../../../mol/file/file.node.ts","../../../mol/locale/locale.ts","../../../mol/lights/toggle/toggle.view.tree","../../../localized_string","../../../mol/lights/toggle/toggle.view.ts","../../../mol/link/link.view.tree","../../../mol/link/link.view.ts","../../../mol/link/link.view.css.ts","../../../mol/icon/script/script.view.tree","../../../mol/icon/script/text/text.view.tree","../../../mol/link/source/source.view.tree","../../../mol/button/major/major.view.tree","../../../mol/button/major/-css/major.view.css.ts","../../../mol/embed/native/native.view.tree","../../../mol/promise/promise/promise.ts","../../../mol/wait/timeout/timeout.ts","../../../mol/embed/native/native.view.ts","../../../mol/embed/native/-css/native.view.css.ts","../../../mol/frame/frame.view.tree","../../../mol/frame/frame.view.ts","../../../mol/frame/frame.view.css.ts","../../../hyoo/showcase/showcase.view.tree","../../../hyoo/showcase/showcase.view.ts","../../../hyoo/showcase/-css/showcase.view.css.ts","../../../mol/test/test.test.ts","../../../mol/test/test.node.test.ts","../../../mol/fail/log/log.test.ts","../../../mol/log3/log3.test.ts","../../../mol/jsx/jsx.ts","../../../mol/jsx/jsx.test.tsx","../../../mol/range2/range2.ts","../../../mol/range2/range2.test.ts","../../../mol/compare/deep/deep.test.tsx","../../../mol/assert/assert.ts","../../../mol/assert/assert.test.ts","../../../mol/func/name/name.test.ts","../../../mol/delegate/delegate.test.ts","../../../mol/span/span.test.ts","../../../mol/tree2/tree2.test.ts","../../../mol/tree2/from/string/string.test.ts","../../../mol/tree2/from/json/json.test.ts","../../../mol/object/object.test.ts","../../../mol/wire/pub/sub/sub.test.ts","../../../mol/after/mock/mock.test.ts","../../../mol/after/timeout/timeout.test.ts","../../../mol/after/frame/frame.test.ts","../../../mol/wire/fiber/fiber.test.ts","../../../mol/wire/sync/sync.test.ts","../../../mol/wire/async/async.test.ts","../../../mol/wire/solo/solo.test.ts","../../../mol/wire/plex/plex.test.ts","../../../mol/wire/probe/probe.test.ts","../../../mol/after/tick/tick.test.ts","../../../mol/wrapper/wrapper.test.ts","../../../mol/memo/memo.test.ts","../../../mol/key/key.test.tsx","../../../mol/wire/log/log.ts","../../../mol/wire/atom/atom.test.ts","../../../mol/const/const.test.ts","../../../mol/view/view/view.test.ts","../../../mol/style/sheet/sheet.test.ts","../../../mol/state/local/local.test.ts","../../../mol/state/local/local.mock.test.ts","../../../mol/button/button.test.ts","../../../mol/maybe/maybe.test.ts","../../../mol/charset/decode/decode.test.ts","../../../mol/charset/encode/encode.test.ts","../../../mol/compare/array/array.test.ts","../../../mol/locale/locale.test.ts"],"names":[],"mappings":"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","sourcesContent":["Error.stackTraceLimit = 50;\n\ndeclare let _$_: { new(): {} } & typeof globalThis\ndeclare class $ extends _$_ {}\n\nnamespace $ {\n\texport type $ = typeof $$\n\texport declare class $$ extends $ {}\n\tnamespace $$ {\n\t\texport type $$ = $\n\t}\n}\n\nmodule.exports = $\n","namespace $ {\n\n\texport const $mol_ambient_ref : unique symbol = Symbol( '$mol_ambient_ref' )\n\n\t/** @deprecated use $ instead */\n\texport type $mol_ambient_context = $\n\n\texport function $mol_ambient( this : $ | void , overrides : Partial< $ > ) : $ {\n\t\treturn Object.setPrototypeOf( overrides , this || $ )\n\t}\n\n}\n","namespace $ {\n\n\tconst instances = new WeakSet< any >()\n\n\t/**\n\t * Proxy that delegates all to lazy returned target.\n\t * \n\t * \t$mol_delegate( Array.prototype , ()=> fetch_array() )\n\t */\n export function $mol_delegate< Value extends object >(\n\t\tproto : Value ,\n\t\ttarget : ()=> Value ,\n\t) {\n\n\t\tconst proxy = new Proxy( proto , {\n\n\t\t\tget: ( _ , field )=> {\n\t\t\t\tconst obj = target()\n\t\t\t\tlet val = Reflect.get( obj , field )\n\t\t\t\tif( typeof val === 'function' ) {\n\t\t\t\t\tval = val.bind( obj )\n\t\t\t\t} \n\t\t\t\treturn val\n\t\t\t},\n\t\t\thas: ( _ , field )=> Reflect.has( target(), field ),\n\t\t\tset: ( _ , field , value )=> Reflect.set( target() , field , value ),\n\t\t\t\n\t\t\tgetOwnPropertyDescriptor: ( _ , field )=> Reflect.getOwnPropertyDescriptor( target() , field ),\n\t\t\townKeys: ()=> Reflect.ownKeys( target() ),\n\t\t\t\n\t\t\tgetPrototypeOf: ()=> Reflect.getPrototypeOf( target() ),\n\t\t\tsetPrototypeOf: ( _ , donor )=> Reflect.setPrototypeOf( target() , donor ),\n\t\t\t\n\t\t\tisExtensible: ()=> Reflect.isExtensible( target() ),\n\t\t\tpreventExtensions: ()=> Reflect.preventExtensions( target() ),\n\t\t\t\n\t\t\tapply: ( _ , self , args )=> Reflect.apply( target() as Function , self , args ),\n\t\t\tconstruct: ( _ , args , retarget )=> Reflect.construct( target() as Function , args , retarget ),\n\t\t\t\n\t\t\tdefineProperty: ( _ , field , descr )=> Reflect.defineProperty( target() , field , descr ),\n\t\t\tdeleteProperty: ( _ , field )=> Reflect.deleteProperty( target() , field ),\n\n\t\t} )\n\n\t\tinstances.add( proxy )\n\n\t\treturn proxy\n\n\t}\n\n\tReflect.defineProperty(\n\t\t$mol_delegate ,\n\t\tSymbol.hasInstance ,\n\t\t{\n\t\t\tvalue : ( obj : object )=> instances.has( obj ),\n\t\t},\n\t)\n\n}\n","namespace $ {\n\n\texport const $mol_owning_map = new WeakMap< any , any >()\n\n\texport function $mol_owning_allow< Having >(\n\t\thaving : Having ,\n\t) : having is Having & {\n\t\tdestructor() : void\n\t} {\n\t\ttry {\n\t\t\tif( !having ) return false\n\t\t\tif( typeof having !== 'object' && typeof having !== 'function' ) return false\n\t\t\tif( having instanceof $mol_delegate ) return false\n\t\t\tif( typeof (having as any)['destructor'] !== 'function' ) return false\n\t\t\treturn true\n\t\t} catch {\n\t\t\treturn false\n\t\t}\n\t}\n\n\texport function $mol_owning_get< Having , Owner extends object >( having : Having , Owner? : { new() : Owner } ) : Owner | null {\n\t\n\t\tif( !$mol_owning_allow( having ) ) return null\n\n\t\twhile( true ) {\n\n\t\t\tconst owner = $mol_owning_map.get( having )\n\t\t\tif( !owner ) return owner\n\t\t\tif( !Owner ) return owner\n\t\t\t\n\t\t\tif( owner instanceof Owner ) return owner\n\n\t\t\thaving = owner\n\t\t}\n\n\t}\n\t\n\texport function $mol_owning_check< Owner , Having >(\n\t\towner : Owner ,\n\t\thaving : Having ,\n\t) : having is Having & { destructor() : void } {\n\t\tif( !$mol_owning_allow( having ) ) return false\n\t\tif( $mol_owning_map.get( having ) !== owner ) return false\n\t\treturn true\n\t}\n\t\n\texport function $mol_owning_catch< Owner , Having >(\n\t\towner : Owner ,\n\t\thaving : Having ,\n\t) {\n\t\tif( !$mol_owning_allow( having ) ) return false\n\t\tif( $mol_owning_map.get( having ) ) return false\n\n\t\t$mol_owning_map.set( having , owner )\n\t\treturn true\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_fail( error : any ) : never {\n\t\tthrow error\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_fail_hidden( error : any ) : never {\n\t\tthrow error /// Use 'Never Pause Here' breakpoint in DevTools or simply blackbox this script\n\t}\n\n}\n","namespace $ {\n\t\n\tconst named = new WeakSet< Function >()\n\t\n\texport function $mol_func_name( this : $ , func : Function ) : string {\n\t\t\n\t\tlet name = func.name\n\t\tif( name?.length > 1 ) return name\n\t\tif( named.has( func ) ) return name\n\n\t\tfor( let key in this ) {\n\t\t\ttry {\n\t\t\t\tif( (this as any)[ key ] !== func ) continue\n\t\t\t\tname = key\n\t\t\t\tObject.defineProperty( func , 'name' , { value : name } )\n\t\t\t\tbreak\n\t\t\t} catch {}\n\t\t}\n\n\t\tnamed.add( func )\n\t\treturn name\n\t\t\n\t}\n\n\texport function $mol_func_name_from< Target extends Function >( target : Target , source : Function ) {\n\t\tObject.defineProperty( target , 'name' , { value : source.name } )\n\t\treturn target\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_object2 {\n\t\t\n\t\tstatic $ = $ as any as $\n\t\t\n\t\t[Symbol.toStringTag]!: string\n\n\t\t[ $mol_ambient_ref ] = null as any as $\n\t\tget $() {\n\t\t\tif( this[ $mol_ambient_ref ] ) return this[ $mol_ambient_ref ]\n\t\t\tconst owner = $mol_owning_get( this ) as any\n\t\t\treturn this[ $mol_ambient_ref ] = owner?.$ || $mol_object2.$ as $\n\t\t}\n\t\tset $( next : $ ) {\n\t\t\tif( this[ $mol_ambient_ref ] ) $mol_fail_hidden( new Error( 'Context already defined' ) )\n\t\t\tthis[ $mol_ambient_ref ] = next\n\t\t}\n\n\t\tpublic static create< Instance >(\n\t\t\tthis : new( init? : ( instance : any )=> void )=> Instance ,\n\t\t\tinit? : ( instance : $mol_type_writable )=> void\n\t\t) : Instance {\n\t\t\tconst obj = new this\n\t\t\tif( init ) init( obj )\n\t\t\treturn obj\n\t\t}\n\t\t\n\t\tstatic [ Symbol.toPrimitive ]() {\n\t\t\treturn this.toString()\n\t\t}\n\t\t\n\t\tstatic toString() {\n\t\t\treturn ( this as any )[ Symbol.toStringTag ] || this.$.$mol_func_name( this )\n\t\t}\n\t\t\n\t\tstatic toJSON() {\n\t\t\treturn this.toString()\n\t\t}\n\t\t\n\t\tdestructor() { }\n\t\tstatic destructor() { }\n\t\t\n\t\t//[ Symbol.toPrimitive ]( hint: string ) {\n\t\t//\treturn hint === 'number' ? this.valueOf() : this.toString()\n\t\t//}\n\t\t\n\t\ttoString(): string {\n\t\t\treturn this[ Symbol.toStringTag ] || this.constructor.name + '<>'\n\t\t}\n\t\t\n\t\t// toJSON(): any {\n\t\t// \treturn this.toString()\n\t\t// }\n\n\t}\n}\n","namespace $ {\n\n\texport namespace $$ { let $ }\n\n\texport const $mol_object_field = Symbol( '$mol_object_field' )\n\t\n\texport class $mol_object extends $mol_object2 {\n\t\t\n\t\tpublic static make< This extends typeof $mol_object >(\n\t\t\tthis: This,\n\t\t\tconfig: Partial< InstanceType< This > >,\n\t\t) {\n\t\t\treturn super.create( obj => {\n\t\t\t\tfor( let key in config ) ( obj as any )[ key ] = config[ key ]!\n\t\t\t} ) as InstanceType< This >\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\t\n\texport class $mol_window extends $mol_object {\n\t\t\n\t\tstatic size() {\n\t\t\treturn {\n\t\t\t\twidth: 1024,\n\t\t\t\theight: 768,\n\t\t\t}\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\t/** Special status statuses. */\n\texport enum $mol_wire_cursor {\n\t\t\n\t\t/** Update required. */\n\t\tstale = -1,\n\t\t\n\t\t/** Some of (transitive) pub update required. */\n\t\tdoubt = -2,\n\t\t\n\t\t/** Actual state but may be dropped. */\n\t\tfresh = -3,\n\t\t\n\t\t/** State will never be changed. */\n\t\tfinal = -4,\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\t/**\n\t * Collects subscribers in compact array. 28B\n\t */\n\texport class $mol_wire_pub extends Object {\n\t\t\n\t\tdata = [] as unknown[]\n\t\t\n\t\t// Derived objects should be Arrays.\n\t\tstatic get [ Symbol.species ]() {\n\t\t\treturn Array\n\t\t}\n\t\t\n\t\t/**\n\t\t * Index of first subscriber.\n\t\t */\n\t\tprotected sub_from = 0 // 4B\n\t\t\n\t\t/**\n\t\t * All current subscribers.\n\t\t */\n\t\tget sub_list() {\n\t\t\tconst res = [] as $mol_wire_sub[]\n\t\t\tfor( let i = this.sub_from; i < this.data.length; i += 2 ) {\n\t\t\t\tres.push( this.data[i] as $mol_wire_sub )\n\t\t\t}\n\t\t\treturn res as readonly $mol_wire_sub[]\n\t\t}\n\t\t\n\t\t/**\n\t\t * Has any subscribers or not.\n\t\t */\n\t\tget sub_empty() {\n\t\t\treturn this.sub_from === this.data.length\n\t\t}\n\t\t\n\t\t/**\n\t\t * Subscribe subscriber to this publisher events and return position of subscriber that required to unsubscribe.\n\t\t */\n\t\tsub_on( sub: $mol_wire_pub, pub_pos: number ) {\n\t\t\tconst pos = this.data.length\n\t\t\tthis.data.push( sub, pub_pos )\n\t\t\treturn pos\n\t\t}\n\t\t\n\t\t/**\n\t\t * Unsubscribe subscriber from this publisher events by subscriber position provided by `on(pub)`.\n\t\t */\n\t\tsub_off( sub_pos: number ) {\n\t\t\t\n\t\t\tif(!( sub_pos < this.data.length )) {\n\t\t\t\t$mol_fail( new Error( `Wrong pos ${ sub_pos }` ) )\n\t\t\t}\n\t\t\t\n\t\t\tconst end = this.data.length - 2\n\t\t\tif( sub_pos !== end ) {\n\t\t\t\tthis.peer_move( end, sub_pos )\n\t\t\t}\n\t\t\t\n\t\t\tthis.data.pop()\n\t\t\tthis.data.pop()\n\t\t\t\n\t\t\tif( this.data.length === this.sub_from ) this.reap()\n\t\t\t\n\t\t}\n\t\t\n\t\t/**\n\t\t * Called when last sub was unsubscribed.\n\t\t **/\n\t\treap() { }\n\t\t\n\t\t/**\n\t\t * Autowire this publisher with current subscriber.\n\t\t **/\n\t\tpromote() {\n\t\t\t$mol_wire_auto()?.track_next( this )\n\t\t}\n\t\t\n\t\t/**\n\t\t * Enforce actualization. Should not throw errors.\n\t\t */\n\t\tfresh() {}\n\t\t\n\t\t/**\n\t\t * Allow to put data to caches in the subtree.\n\t\t */\n\t\tcomplete() {}\n\t\t\n\t\tget incompleted() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\t/**\n\t\t * Notify subscribers about self changes.\n\t\t */\n\t\temit( quant = $mol_wire_cursor.stale ) {\n\t\t\tfor( let i = this.sub_from; i < this.data.length; i += 2 ) {\n\t\t\t\t;( this.data[i] as $mol_wire_sub ).absorb( quant )\n\t\t\t}\n\t\t}\n\t\t\n\t\t/**\n\t\t * Moves peer from one position to another. Doesn't clear data at old position!\n\t\t */\n\t\tpeer_move( from_pos: number, to_pos: number ) {\n\t\t\t\n\t\t\tconst peer = this.data[ from_pos ] as $mol_wire_pub\n\t\t\tconst self_pos = this.data[ from_pos + 1 ] as number\n\t\t\t\n\t\t\tthis.data[ to_pos ] = peer\n\t\t\tthis.data[ to_pos + 1 ] = self_pos\n\t\t\t\n\t\t\tpeer.peer_repos( self_pos, to_pos )\n\t\t}\n\t\t\n\t\t/**\n\t\t * Updates self position in the peer.\n\t\t */\n\t\tpeer_repos( peer_pos: number, self_pos: number ) {\n\t\t\tthis.data[ peer_pos + 1 ] = self_pos\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport let $mol_wire_auto_sub: $mol_wire_sub | null = null\n\t\n\t/**\n\t * When fulfilled, all publishers are promoted to this subscriber on access to its.\n\t */\n\texport function $mol_wire_auto( next = $mol_wire_auto_sub ) {\n\t\treturn $mol_wire_auto_sub = next\n\t}\n\t\n\t/**\n\t * Affection queue. Used to prevent accidental stack overflow on emit.\n\t */\n\texport const $mol_wire_affected = [] as ( $mol_wire_sub | number )[]\n\t\n}\n","namespace $ {\n\n\t// https://docs.google.com/document/d/1FTascZXT9cxfetuPRT2eXPQKXui4nWFivUnS_335T3U/preview#\n\t($ as any)['devtoolsFormatters'] ||= []\n\n\texport function $mol_dev_format_register( config : {\n\t\theader : ( val : any , config : any )=> any\n\t\thasBody : ( val : any , config : any )=> false\n\t} | {\n\t\theader : ( val : any , config : any )=> any\n\t\thasBody : ( val : any , config : any )=> boolean\n\t\tbody : ( val : any , config : any )=> any\n\t} ) {\n\t\t($ as any)['devtoolsFormatters'].push( config )\n\t}\n\n\texport let $mol_dev_format_head = Symbol( '$mol_dev_format_head' )\n\texport let $mol_dev_format_body = Symbol( '$mol_dev_format_body' )\n\n\t$mol_dev_format_register({\n\n\t\theader : ( val : any , config = false ) => {\n\t\t\t\n\t\t\tif( config ) return null\n\n\t\t\tif( !val ) return null\n\t\t\t\n\t\t\tif( $mol_dev_format_head in val ) {\n\t\t\t\ttry {\n\t\t\t\t\treturn val[ $mol_dev_format_head ]()\n\t\t\t\t} catch( error ) {\n\t\t\t\t\treturn $mol_dev_format_accent( $mol_dev_format_native( val ), '💨', $mol_dev_format_native( error ), '' )\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tif( typeof val === 'function' ) {\n\t\t\t\treturn $mol_dev_format_native( val )\n\t\t\t}\n\t\t\t\n\t\t\tif( Symbol.toStringTag in val ) {\n\t\t\t\treturn $mol_dev_format_native( val )\n\t\t\t}\n\t\t\t\n\t\t\treturn null\n\t\t\t\n\t\t} ,\n\t\t\n\t\thasBody : val => val[ $mol_dev_format_body ] ,\n\n\t\tbody : val => val[ $mol_dev_format_body ]() ,\n\n\t})\n\n\texport function $mol_dev_format_native( obj : any ) {\n\t\t\n\t\tif( typeof obj === 'undefined' ) return $mol_dev_format_shade( 'undefined' )\n\t\t\n\t\t// if( ![ 'object', 'function', 'symbol' ].includes( typeof obj ) ) return obj\n\n\t\treturn [\n\t\t\t'object' ,\n\t\t\t{\n\t\t\t\tobject : obj ,\n\t\t\t\tconfig : true ,\n\t\t\t} ,\n\t\t]\n\n\t}\n\n\texport function $mol_dev_format_auto( obj : any ) {\n\t\t\n\t\tif( obj == null ) return $mol_dev_format_shade( String( obj ) )\n\n\t\treturn [\n\t\t\t'object' ,\n\t\t\t{\n\t\t\t\tobject : obj ,\n\t\t\t\tconfig : false ,\n\t\t\t} ,\n\t\t]\n\n\t}\n\n\texport function $mol_dev_format_element( element : string , style : object , ...content : any[] ) {\n\t\t\t\n\t\tconst styles = [] as string[]\n\t\t\n\t\tfor( let key in style ) styles.push( `${ key } : ${ (style as any)[key] }` )\n\t\t\n\t\treturn [\n\t\t\telement ,\n\t\t\t{\n\t\t\t\tstyle : styles.join( ' ; ' ) ,\n\t\t\t} ,\n\t\t\t... content ,\n\t\t]\n\n\t}\n\n\texport function $mol_dev_format_span( style : object , ...content : any[] ) {\n\t\treturn $mol_dev_format_element(\n\t\t\t'span' ,\n\t\t\t{\n\t\t\t\t// 'vertical-align' : '8%',\n\t\t\t\t... style ,\n\t\t\t} ,\n\t\t\t... content ,\n\t\t)\n\t}\n\n\texport let $mol_dev_format_div = $mol_dev_format_element.bind( null , 'div' )\n\texport let $mol_dev_format_ol = $mol_dev_format_element.bind( null , 'ol' )\n\texport let $mol_dev_format_li = $mol_dev_format_element.bind( null , 'li' )\n\texport let $mol_dev_format_table = $mol_dev_format_element.bind( null , 'table' )\n\texport let $mol_dev_format_tr = $mol_dev_format_element.bind( null , 'tr' )\n\texport let $mol_dev_format_td = $mol_dev_format_element.bind( null , 'td' )\n\n\texport let $mol_dev_format_accent = $mol_dev_format_span.bind( null , {\n\t\t'color' : 'magenta' ,\n\t} )\n\n\texport let $mol_dev_format_strong = $mol_dev_format_span.bind( null , {\n\t\t'font-weight' : 'bold' ,\n\t} )\n\n\texport let $mol_dev_format_string = $mol_dev_format_span.bind( null , {\n\t\t'color' : 'green',\n\t} )\n\n\texport let $mol_dev_format_shade = $mol_dev_format_span.bind( null , {\n\t\t'color' : 'gray',\n\t} )\n\n\texport let $mol_dev_format_indent = $mol_dev_format_div.bind( null , {\n\t\t'margin-left': '13px'\n\t} )\n\n}\n","namespace $ {\n\t\n\t/**\n\t * Publisher that can auto collect other publishers. 32B\n\t * \n\t * \tP1 P2 P3 P4 S1 S2 S3\n\t * \t^ ^\n\t * \tpubs_from subs_from\n\t */\n\texport class $mol_wire_pub_sub extends $mol_wire_pub implements $mol_wire_sub {\n\t\t\n\t\tprotected pub_from = 0 // 4B\n\t\tprotected cursor = $mol_wire_cursor.stale // 4B\n\t\t\n\t\tget temp() {\n\t\t\treturn false\n\t\t}\n\t\t\n\t\tget pub_list() {\n\t\t\tconst res = [] as $mol_wire_pub[]\n\t\t\tconst max = this.cursor >=0 ? this.cursor : this.sub_from\n\t\t\tfor( let i = this.pub_from; i < max; i += 2 ) {\n\t\t\t\tif( this.data[i] ) res.push( this.data[i] as $mol_wire_pub )\n\t\t\t}\n\t\t\treturn res\n\t\t}\n\t\t\n\t\ttrack_on() {\n\t\t\tthis.cursor = this.pub_from\n\t\t\tconst sub = $mol_wire_auto()\n\t\t\t$mol_wire_auto( this )\n\t\t\treturn sub\n\t\t}\n\t\t\n\t\tpromote() {\n\t\t\t\n\t\t\tif( this.cursor >= this.pub_from ) {\n\t\t\t\t$mol_fail( new Error( 'Circular subscription' ) )\n\t\t\t}\n\t\t\t\n\t\t\tsuper.promote()\n\t\t}\n\t\t\n\t\ttrack_next( pub?: $mol_wire_pub ): $mol_wire_pub | null {\n\t\t\t\n\t\t\tif( this.cursor < 0 ) $mol_fail( new Error( 'Promo to non begun sub' ) )\n\t\t\t\n\t\t\tif( this.cursor < this.sub_from ) {\n\t\t\t\n \t\t\t\tconst next = this.data[ this.cursor ] as $mol_wire_pub | undefined\n\t\t\t\tif( pub === undefined ) return next ?? null\n\t\t\t\t\n\t\t\t\tif( next === pub ) {\n\t\t\t\t\tthis.cursor += 2\n\t\t\t\t\treturn next\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( next ) {\n\t\t\t\t\t\n\t\t\t\t\tif( this.sub_from < this.data.length ) {\n\t\t\t\t\t\tthis.peer_move( this.sub_from, this.data.length )\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tthis.peer_move( this.cursor, this.sub_from )\n\t\t\t\t\tthis.sub_from += 2\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} else {\n\t\t\t\t\n\t\t\t\tif( pub === undefined ) return null\n\t\t\t\t\n\t\t\t\tif( this.sub_from < this.data.length ) {\n\t\t\t\t\tthis.peer_move( this.sub_from, this.data.length )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tthis.sub_from += 2\n\t\t\t\t\n\t\t\t}\t\t\t\n\t\t\t\n\t\t\tthis.data[ this.cursor ] = pub\n\t\t\tthis.data[ this.cursor + 1 ] = pub.sub_on( this, this.cursor )\n\t\t\t\n\t\t\tthis.cursor += 2\n\t\t\t\n\t\t\treturn pub\n\t\t}\n\t\t\n\t\ttrack_off( sub: $mol_wire_sub | null ) {\n\t\t\t\n\t\t\t$mol_wire_auto( sub )\n\t\t\t\n\t\t\tif( this.cursor < 0 ) {\n\t\t\t\t$mol_fail( new Error( 'End of non begun sub' ) )\n\t\t\t}\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.pub_from;\n\t\t\t\tcursor < this.cursor;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub\n\t\t\t\tpub.fresh()\n\t\t\t}\n\t\t\t\n\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\n\t\t}\n\t\t\n\t\tpub_off( sub_pos: number ) {\n\t\t\tthis.data[ sub_pos ] = undefined as any\n\t\t\tthis.data[ sub_pos + 1 ] = undefined as any \n\t\t}\n\t\t\n\t\tdestructor() {\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.data.length - 2;\n\t\t\t\tcursor >= this.sub_from;\n\t\t\t\tcursor -= 2\n\t\t\t) {\n\t\t\t\tconst sub = this.data[ cursor ] as $mol_wire_sub\n\t\t\t\tconst pos = this.data[ cursor + 1 ] as number\n\t\t\t\tsub.pub_off( pos )\n\t\t\t\tthis.data.pop()\n\t\t\t\tthis.data.pop()\n\t\t\t}\n\t\t\t\n\t\t\tthis.cursor = this.pub_from\n\t\t\tthis.track_cut()\n\t\t\tthis.cursor = $mol_wire_cursor.final\n\t\t\t\n\t\t}\n\t\t\n\t\ttrack_cut() {\n\t\t\t\n\t\t\tif( this.cursor < this.pub_from ) {\n\t\t\t\t$mol_fail( new Error( 'Cut of non begun sub' ) )\n\t\t\t}\n\t\t\t\n\t\t\tlet tail = 0\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.cursor;\n\t\t\t\tcursor < this.sub_from;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\t\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub | undefined\n\t\t\t\tpub?.sub_off( this.data[ cursor + 1 ] as number )\n\t\t\t\t\n\t\t\t\tif( this.sub_from < this.data.length ) {\n\t\t\t\t\tthis.peer_move( this.data.length - 2, cursor )\n\t\t\t\t\tthis.data.pop()\n\t\t\t\t\tthis.data.pop()\n\t\t\t\t} else {\n\t\t\t\t\t++ tail\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tfor(; tail; -- tail ) {\n\t\t\t\tthis.data.pop()\n\t\t\t\tthis.data.pop()\n\t\t\t}\n\t\t\t\n\t\t\tthis.sub_from = this.cursor\n\t\t\t\n\t\t}\n\t\t\n\t\tcomplete() { }\n\t\t\n\t\tcomplete_pubs() {\n\t\t\t\n\t\t\tconst limit = this.cursor < 0 ? this.sub_from : this.cursor \n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.pub_from;\n\t\t\t\tcursor < limit;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub\n\t\t\t\tif( pub?.incompleted ) return \n\t\t\t}\n\t\t\t\n\t\t\tfor(\n\t\t\t\tlet cursor = this.pub_from;\n\t\t\t\tcursor < limit;\n\t\t\t\tcursor += 2\n\t\t\t) {\n\t\t\t\tconst pub = this.data[ cursor ] as $mol_wire_pub\n\t\t\t\tpub?.complete()\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tabsorb( quant = $mol_wire_cursor.stale ) {\n\t\t\t\n\t\t\tif( this.cursor === $mol_wire_cursor.final ) return\n\t\t\tif( this.cursor >= quant ) return\n\t\t\t\n\t\t\tthis.cursor = quant\n\t\t\tthis.emit( $mol_wire_cursor.doubt )\n\t\t\t\n\t\t}\n\t\t\n\t\t[ $mol_dev_format_head ]() {\n\t\t\treturn $mol_dev_format_native( this )\n\t\t}\n\t\t\n\t\t/**\n\t\t * Is subscribed to any publisher or not.\n\t\t */\n\t\tget pub_empty() {\n\t\t\treturn this.sub_from === this.pub_from\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\texport class $mol_after_timeout extends $mol_object2 {\n\n\t\tid : any\n\n\t\tconstructor(\n\t\t\tpublic delay : number ,\n\t\t\tpublic task : ()=> void ,\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis.id = setTimeout( task , delay )\n\t\t}\n\n\t\tdestructor() {\n\t\t\tclearTimeout( this.id )\n\t\t}\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport class $mol_after_frame extends $mol_after_timeout {\n\n\t\tconstructor(\n\t\t\tpublic task : ()=> void ,\n\t\t) {\n\t\t\tsuper( 16 , task )\n\t\t}\n\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_promise_like( val: any ): val is Promise {\n\t\treturn val && typeof val === 'object' && 'then' in val && typeof val.then === 'function'\n\t}\n\n}\n","namespace $ {\n\t\n\tconst handled = new WeakSet< Promise< unknown > >()\n\t\n\t/**\n\t * Suspendable task with support both sync/async api.\n\t * \n\t * \tA1 A2 A3 A4 P1 P2 P3 P4 S1 S2 S3\n\t * \t^ ^ ^\n\t * \targs_from pubs_from subs_from\n\t **/\n\texport abstract class $mol_wire_fiber<\n\t\tHost,\n\t\tArgs extends readonly unknown[],\n\t\tResult,\n\t> extends $mol_wire_pub_sub {\n\t\n\t\tstatic warm = true\n\t\t\n\t\tstatic planning = new Set< $mol_wire_fiber< any, any, any > >()\n\t\tstatic reaping = new Set< $mol_wire_fiber< any, any, any > >()\n\t\t\n\t\tstatic plan_task: $mol_after_frame | null = null\n\t\tstatic plan() {\n\t\t\t\n\t\t\tif( this.plan_task ) return\n\t\t\t\n\t\t\tthis.plan_task = new $mol_after_frame( ()=> {\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\tthis.sync()\n\t\t\t\t} finally {\n\t\t\t\t\t$mol_wire_fiber.plan_task = null\n\t\t\t\t}\n\n\t\t\t} )\n\t\t\t\n\t\t}\n\t\t\n\t\tstatic sync() {\n\t\t\t\n\t\t\t// Sync whole fiber graph\n\t\t\twhile( this.planning.size ) {\n\t\t\t\tfor( const fiber of this.planning ) {\n\t\t\t\t\tthis.planning.delete( fiber )\n\t\t\t\t\tif( fiber.cursor >= 0 ) continue\n\t\t\t\t\tif( fiber.cursor === $mol_wire_cursor.final ) continue\n\t\t\t\t\tfiber.fresh()\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\t// Collect garbage\n\t\t\twhile( this.reaping.size ) {\n\t\t\t\t\n\t\t\t\tconst fibers = this.reaping\n\t\t\t\tthis.reaping = new Set\n\t\t\t\t\n\t\t\t\tfor( const fiber of fibers ) {\n\t\t\t\t\tif( !fiber.sub_empty ) continue\n\t\t\t\t\tfiber.destructor()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\t[Symbol.toStringTag]!: string\n\n\t\tpublic cache: Result | Error | Promise< Result | Error > = undefined as any\n\t\t\n\t\tget args() {\n\t\t\treturn this.data.slice( 0 , this.pub_from ) as any as Args\n\t\t}\n\t\t\n\t\tresult() {\n\t\t\tif( $mol_promise_like( this.cache ) ) return\n\t\t\tif( this.cache instanceof Error ) return\n\t\t\treturn this.cache\n\t\t}\n\t\t\n\t\tget incompleted() {\n\t\t\treturn $mol_promise_like( this.cache )\n\t\t}\n\t\t\n\t\tfield() {\n\t\t\treturn this.task.name + '<>'\n\t\t}\n\t\t\n\t\tconstructor(\n\t\t\tid: string,\n\t\t\treadonly task: ( this : Host , ... args : Args )=> Result,\n\t\t\treadonly host?: Host,\n\t\t\targs?: Args\n\t\t) {\n\t\t\t\n\t\t\tsuper()\n\t\t\tif( args ) this.data.push( ... args )\n\t\t\tthis.pub_from = this.sub_from = args?.length ?? 0\n\t\t\tthis[ Symbol.toStringTag ] = id\n\t\t\t\n\t\t}\n\t\t\n\t\tplan() {\n\t\t\t$mol_wire_fiber.planning.add( this )\n\t\t\t$mol_wire_fiber.plan()\n\t\t}\n\t\t\n\t\treap() {\n\t\t\t$mol_wire_fiber.reaping.add( this )\n\t\t\t$mol_wire_fiber.plan()\n\t\t}\n\t\t\n\t\ttoString() {\n\t\t\treturn this[ Symbol.toStringTag ]\n\t\t}\n\t\t\n\t\ttoJSON() {\n\t\t\treturn this[ Symbol.toStringTag ]\n\t\t}\n\n\t\t[ $mol_dev_format_head ]() {\n\t\t\t\n\t\t\tconst cursor = {\n\t\t\t\t[ $mol_wire_cursor.stale ]: '🔴',\n\t\t\t\t[ $mol_wire_cursor.doubt ]: '🟡',\n\t\t\t\t[ $mol_wire_cursor.fresh ]: '🟢',\n\t\t\t\t[ $mol_wire_cursor.final ]: '🔵',\n\t\t\t}[ this.cursor ] ?? this.cursor.toString()\n\t\t\t\n\t\t\treturn $mol_dev_format_div( {},\n\t\t\t\t$mol_owning_check( this, this.cache )\n\t\t\t\t\t? $mol_dev_format_auto({\n\t\t\t\t\t\t[ $mol_dev_format_head ]: ()=> $mol_dev_format_shade( cursor ),\n\t\t\t\t\t\t[ $mol_dev_format_body ]: ()=> $mol_dev_format_native( this ),\n\t\t\t\t\t})\n\t\t\t\t\t: $mol_dev_format_shade( $mol_dev_format_native( this ), cursor ),\n\t\t\t\t$mol_dev_format_auto( this.cache ),\n\t\t\t)\n\t\t\t\n\t\t}\n\t\t\n\t\tget $() {\n\t\t\treturn ( this.host ?? this.task as any )['$']\n\t\t}\n\t\t\n\t\temit( quant = $mol_wire_cursor.stale ) {\n\t\t\tif( this.sub_empty ) this.plan()\n\t\t\telse super.emit( quant )\n\t\t}\n\t\t\n\t\tfresh() {\n\n\t\t\ttype Result = typeof this.cache\n\t\t\t\n\t\t\tif( this.cursor === $mol_wire_cursor.fresh ) return\n\t\t\tif( this.cursor === $mol_wire_cursor.final ) return\n\t\t\t\n\t\t\tcheck: if( this.cursor === $mol_wire_cursor.doubt ) {\n\t\t\t\t\n\t\t\t\tfor( let i = this.pub_from ; i < this.sub_from; i += 2 ) {\n\t\t\t\t\t;( this.data[i] as $mol_wire_pub )?.fresh()\n\t\t\t\t\tif( this.cursor !== $mol_wire_cursor.doubt ) break check\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\treturn\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tconst bu = this.track_on()\n\t\t\tlet result: typeof this.cache\n\n\t\t\ttry {\n\n\t\t\t\tswitch( this.pub_from ) {\n\t\t\t\t\tcase 0: result = (this.task as any).call( this.host! ); break\n\t\t\t\t\tcase 1: result = (this.task as any).call( this.host!, this.data[0] ); break\n\t\t\t\t\tdefault: result = (this.task as any).call( this.host!, ... this.args ); break\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_promise_like( result ) ) {\n\t\t\t\t\t\n\t\t\t\t\tconst put = ( res: Result )=> {\n\t\t\t\t\t\tif( this.cache === result ) this.put( res )\n\t\t\t\t\t\treturn res\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tresult = Object.assign( result.then( put, put ), {\n\t\t\t\t\t\tdestructor: (result as any)['destructor'] ?? (()=> {})\n\t\t\t\t\t} )\n\t\t\t\t\t\n\t\t\t\t\thandled.add( result )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t\n\t\t\t\tif( error instanceof Error || $mol_promise_like( error ) ) {\n\t\t\t\t\tresult = error\n\t\t\t\t} else {\n\t\t\t\t\tresult = new Error( String( error ), { cause: error } )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_promise_like( result ) && !handled.has( result ) ) {\n\t\t\t\t\t\n\t\t\t\t\tresult = Object.assign( result.finally( ()=> {\n\t\t\t\t\t\tif( this.cache === result ) this.absorb()\n\t\t\t\t\t} ), {\n\t\t\t\t\t\tdestructor: (result as any)['destructor'] ?? (()=> {})\n\t\t\t\t\t} )\n\t\t\t\t\t\n\t\t\t\t\thandled.add( result )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tif( ! $mol_promise_like( result ) ) {\n\t\t\t\tthis.track_cut()\n\t\t\t}\n\t\t\t\n\t\t\tthis.track_off( bu )\n\t\t\tthis.put( result )\n\n\t\t}\n\t\t\n\t\trefresh() {\n\t\t\tthis.cursor = $mol_wire_cursor.stale\n\t\t\tthis.fresh()\n\t\t}\n\t\t\n\t\tabstract put( next: Result | Error | Promise< Result | Error > ): Result | Error | Promise< Result | Error >\n\t\t\n\t\t/**\n\t\t * Synchronous execution. Throws Promise when waits async task (SuspenseAPI provider).\n\t\t * Should be called inside SuspenseAPI consumer (ie fiber).\n\t\t */\n\t\tsync() {\n\t\t\t\n\t\t\tif( !$mol_wire_fiber.warm ) {\n\t\t\t\treturn this.result() as Awaited< Result >\n\t\t\t}\n\t\t\t\n\t\t\tthis.promote()\n\t\t\tthis.fresh()\n\t\t\t\n\t\t\tif( this.cache instanceof Error ) {\n\t\t\t\treturn $mol_fail_hidden( this.cache )\n\t\t\t}\n\t\t\t\n\t\t\tif( $mol_promise_like( this.cache ) ) {\n\t\t\t\treturn $mol_fail_hidden( this.cache )\n\t\t\t}\n\t\t\t\n\t\t\treturn this.cache as Awaited< Result >\n\t\t}\n\n\t\t/**\n\t\t * Asynchronous execution.\n\t\t * It's SuspenseAPI consumer. So SuspenseAPI providers can be called inside.\n\t\t */\n\t\tasync async() {\n\t\t\t\n\t\t\twhile( true ) {\n\t\t\t\t\n\t\t\t\tthis.fresh()\n\t\t\t\t\n\t\t\t\tif( this.cache instanceof Error ) {\n\t\t\t\t\t$mol_fail_hidden( this.cache )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( ! $mol_promise_like( this.cache ) ) return this.cache\n\t\t\t\t\t\n\t\t\t\tawait Promise.race([ this.cache, this.step() ])\n\t\t\t\tif( ! $mol_promise_like( this.cache ) ) return this.cache\n\t\t\t\t\t\n\t\t\t\tif( this.cursor === $mol_wire_cursor.final ) {\n\t\t\t\t\t// never ends on destructed fiber\n\t\t\t\t\tawait new Promise( ()=> {} )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\tstep() {\n\t\t\treturn new Promise< null >( done => {\n\t\t\t\tconst sub = new $mol_wire_pub_sub\n\t\t\t\tconst prev = sub.track_on()\n\t\t\t\tsub.track_next( this )\n\t\t\t\tsub.track_off( prev )\n\t\t\t\tsub.absorb = ()=> {\n\t\t\t\t\tdone( null )\n\t\t\t\t\tsub.destructor()\n\t\t\t\t}\n\t\t\t} )\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\t/** Generates unique identifier. */\n\texport function $mol_guid(\n\t\tlength = 8,\n\t\texists: ( id: string )=> boolean = ()=> false,\n\t) {\n\n\t\tfor(;;) {\n\n\t\t\tlet id = Math.random().toString( 36 ).substring( 2, length + 2 ).toUpperCase()\n\t\t\tif( exists( id ) ) continue\n\t\t\t\n\t\t\treturn id\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\t\n\texport const $mol_key_store = new WeakMap< object, string >()\n\n\t/** Returns string key for any value. */\n\texport function $mol_key< Value >( value : Value ) : string {\n\t\t\n\t\tif( typeof value === 'bigint' ) return value.toString() + 'n'\n\t\tif( typeof value === 'symbol' ) return value.description!\n\t\tif( !value ) return JSON.stringify( value )\n\t\tif( typeof value !== 'object' && typeof value !== 'function' ) return JSON.stringify( value )\n\t\t\n\t\treturn JSON.stringify( value, ( field, value )=> {\n\t\t\t\n\t\t\tif( typeof value === 'bigint' ) return value.toString() + 'n'\n\t\t\tif( typeof value === 'symbol' ) return value.description\n\t\t\tif( !value ) return value\n\t\t\tif( typeof value !== 'object' && typeof value !== 'function' ) return value\n\t\t\tif( Array.isArray( value ) ) return value\n\t\t\t\n\t\t\tconst proto = Reflect.getPrototypeOf( value )\n\t\t\tif( !proto ) return value\n\t\t\tif( Reflect.getPrototypeOf( proto ) === null ) return value\n\t\t\t\n\t\t\tif( 'toJSON' in value ) return value\n\t\t\tif( value instanceof RegExp ) return value.toString()\n\t\t\tif( value instanceof Uint8Array ) return [ ... value ]\n\t\t\t\n\t\t\tlet key = $mol_key_store.get( value )\n\t\t\tif( key ) return key\n\t\t\t\n\t\t\tkey = $mol_guid()\n\t\t\t$mol_key_store.set( value, key )\n\t\t\t\n\t\t\treturn key\n\t\t} )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport let $mol_compare_deep_cache = new WeakMap< any , WeakMap< any , boolean > >()\n\t\n\t/**\n\t * Deeply compares two values. Returns true if equal.\n\t * Define `Symbol.toPrimitive` to customize.\n\t */\n\texport function $mol_compare_deep< Value >( left: Value, right: Value ): boolean {\n\n\t\tif( Object.is( left , right ) ) return true\n\n\t\tif( left === null ) return false\n\t\tif( right === null ) return false\n\n\t\tif( typeof left !== 'object' ) return false\n\t\tif( typeof right !== 'object' ) return false\n\n\t\tconst left_proto = Reflect.getPrototypeOf( left as any )\n\t\tconst right_proto = Reflect.getPrototypeOf( right as any )\n\t\t\n\t\tif( left_proto !== right_proto ) return false\n\n\t\tif( left instanceof Boolean ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof Number ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof String ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof Date ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof RegExp ) return left.source === (right as any).source && left.flags === (right as any).flags\n\t\tif( left instanceof Error ) return left.message === (right as any).message && left.stack === (right as any).stack\n\n\t\tlet left_cache = $mol_compare_deep_cache.get( left )\n\t\tif( left_cache ) {\n\n\t\t\tconst right_cache = left_cache.get( right )\n\t\t\tif( typeof right_cache === 'boolean' ) return right_cache\n\n\t\t} else {\n\t\t\t\n\t\t\tleft_cache = new WeakMap< any , boolean >([[ right, true ]])\n\t\t\t$mol_compare_deep_cache.set( left , left_cache )\n\n\t\t}\n\n\t\tlet result!: boolean\n\n\t\ttry {\n\t\t\t\n\t\t\tif( !left_proto ) result = compare_pojo( left, right as any )\n\t\t\telse if( !Reflect.getPrototypeOf( left_proto ) ) result = compare_pojo( left, right as any )\n\t\t\telse if( Symbol.toPrimitive in left ) result = compare_primitive( left, right )\n\t\t\telse if( Array.isArray( left ) ) result = compare_array( left, right as any )\n\t\t\telse if( left instanceof Set ) result = compare_set( left, right as any )\n\t\t\telse if( left instanceof Map ) result = compare_map( left, right as any )\n\t\t\telse if( ArrayBuffer.isView( left ) ) result = compare_buffer( left, right as any )\n\t\t\telse if( Symbol.iterator in left ) result = compare_iterator( ( left as any )[ Symbol.iterator ](), ( right as any )[ Symbol.iterator ]() )\n\t\t\telse result = false\n\n\t\t} finally {\n\t\t\tleft_cache.set( right , result )\n\t\t}\n\t\t\n\t\treturn result\n\t}\n\n\tfunction compare_array< Value extends any[] >( left: Value, right: Value ): boolean {\n\t\t\n\t\tconst len = left.length\n\t\tif( len !== right.length ) return false\n\t\t\n\t\tfor( let i = 0; i < len; ++i ) {\n\t\t\tif( !$mol_compare_deep( left[i] , right[i] ) ) return false\n\t\t}\n\t\t\n\t\treturn true\n\t}\n\t\n\tfunction compare_buffer( left: ArrayBufferView, right: ArrayBufferView ): boolean {\n\t\t\n\t\tconst len = left.byteLength\n\t\tif( len !== right.byteLength ) return false\n\t\t\n\t\tif( left instanceof DataView ) return compare_buffer(\n\t\t\tnew Uint8Array( left.buffer, left.byteOffset, left.byteLength ),\n\t\t\tnew Uint8Array( right.buffer, left.byteOffset, left.byteLength ),\n\t\t)\n\t\t\n\t\tfor( let i = 0; i < len; ++i ) {\n\t\t\tif( (left as any)[i] !== (right as any)[i] ) return false\n\t\t}\n\t\t\n\t\treturn true\n\t}\n\t\n\tfunction compare_iterator< Value extends IterableIterator >(\n\t\tleft: Value,\n\t\tright: Value,\n\t): boolean {\n\t\t\n\t\twhile( true ) {\n\n\t\t\tconst left_next = left.next()\n\t\t\tconst right_next = right.next()\n\n\t\t\tif( left_next.done !== right_next.done ) return false\n\t\t\tif( left_next.done ) break\n\n\t\t\tif( !$mol_compare_deep( left_next.value , right_next.value ) ) return false\n\n\t\t}\n\n\t\treturn true\n\n\t}\n\t\n\tfunction compare_set< Value extends Set >( left: Value, right: Value ): boolean {\n\t\tif( left.size !== right.size ) return false\n\t\treturn compare_iterator( left.values(), right.values() )\n\t}\n\t\n\tfunction compare_map< Key, Value >( left: Map< Key, Value > , right: Map< Key, Value > ): boolean {\n\t\tif( left.size !== right.size ) return false\n\t\treturn compare_iterator( left.keys(), right.keys() )\n\t\t\t&& compare_iterator( left.values(), right.values() )\n\t}\n\t\n\tfunction compare_pojo( left: {}, right: {} ): boolean {\n\t\t\n\t\tconst left_keys = Object.getOwnPropertyNames( left )\n\t\tconst right_keys = Object.getOwnPropertyNames( right )\n\t\t\n\t\tif( !compare_array( left_keys, right_keys ) ) return false\n\n\t\tfor( let key of left_keys ) {\n\t\t\tif( !$mol_compare_deep( ( left as any )[ key ], ( right as any )[ key ] ) ) return false\n\t\t}\n\n\t\tconst left_syms = Object.getOwnPropertySymbols( left )\n\t\tconst right_syms = Object.getOwnPropertySymbols( right )\n\t\t\n\t\tif( !compare_array( left_syms, right_syms ) ) return false\n\n\t\tfor( let key of left_syms ) {\n\t\t\tif( !$mol_compare_deep( ( left as any )[ key ], ( right as any )[ key ] ) ) return false\n\t\t}\n\n\t\treturn true\n\t}\n\t\n\tfunction compare_primitive( left: {}, right: {} ): boolean {\n\t\treturn Object.is(\n\t\t\t(left as any)[ Symbol.toPrimitive ]( 'default' ),\n\t\t\t(right as any)[ Symbol.toPrimitive ]( 'default' ),\n\t\t)\n\t}\n\t\n}\n","namespace $ {\n\n\t/** Logger event data */\n\texport type $mol_log3_event< Fields > = {\n\t\t[ key in string ] : unknown\n\t} & {\n\t\t\n\t\t/** Time of event creation */\n\t\ttime? : string\n\n\t\t/** Place of event creation */\n\t\tplace : unknown\n\n\t\t/** Short description of event */\n\t\tmessage : string\n\n\t} & Fields\n\n\t/** Logger function */\n\texport type $mol_log3_logger< Fields , Res = void > = (\n\t\tthis : $ ,\n\t\tevent : $mol_log3_event< Fields > ,\n\t)=> Res\n\n\t/** Log begin of some task */\n\texport declare let $mol_log3_come : $mol_log3_logger<{}>\n\t\n\t/** Log end of some task */\n\texport declare let $mol_log3_done : $mol_log3_logger<{}>\n\t\n\t/** Log error */\n\texport declare let $mol_log3_fail : $mol_log3_logger<{}>\n\t\n\t/** Log warning message */\n\texport declare let $mol_log3_warn : $mol_log3_logger<{ hint : string }>\n\t\n\t/** Log some generic event */\n\texport declare let $mol_log3_rise : $mol_log3_logger<{}>\n\n\t/** Log begin of log group, returns func to close group */\n\texport declare let $mol_log3_area : $mol_log3_logger< {} , ()=> void >\n\n\t/** Log begin of collapsed group only when some logged inside, returns func to close group */\n\texport function $mol_log3_area_lazy(\n\t\tthis : $ ,\n\t\tevent : $mol_log3_event<{}> ,\n\t) {\n\n\t\tconst self = this\n\t\tconst stack = self.$mol_log3_stack\n\n\t\tconst deep = stack.length\n\t\tlet logged = false\n\n\t\tstack.push( ()=> {\n\t\t\tlogged = true\n\t\t\tself.$mol_log3_area.call( self , event )\n\t\t} )\n\n\t\treturn ()=> {\n\t\t\tif( logged ) self.console.groupEnd()\n\t\t\tif( stack.length > deep ) stack.length = deep\n\t\t}\n\n\t}\n\n\texport let $mol_log3_stack = [] as ( ()=> void )[]\n\n}\n","namespace $ {\n\n\t/** Position in any resource. */\n\texport class $mol_span extends $mol_object2 {\n\n\t\tconstructor(\n\t\t\treadonly uri: string ,\n\t\t\treadonly source: string ,\n\t\t\treadonly row: number ,\n\t\t\treadonly col: number ,\n\t\t\treadonly length: number ,\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis[ Symbol.toStringTag ] = `${ this.uri }#${ this.row }:${ this.col }/${ this.length }`\n\t\t}\n\n\t\t/** Span for begin of unknown resource */\n\t\tstatic unknown = $mol_span.begin('?')\n\n\t\t/** Makes new span for begin of resource. */\n\t\tstatic begin( uri: string, source = '' ) {\n\t\t\treturn new $mol_span( uri , source, 1 , 1 , 0 )\n\t\t}\n\n\t\t/** Makes new span for end of resource. */\n\t\tstatic end( uri: string , source: string ) {\n\t\t\treturn new $mol_span( uri , source, 1 , source.length + 1 , 0 )\n\t\t}\n\n\t\t/** Makes new span for entire resource. */\n\t\tstatic entire( uri: string , source: string ) {\n\t\t\treturn new $mol_span( uri , source, 1 , 1 , source.length )\n\t\t}\n\n\t\ttoString() {\n\t\t\treturn this[ Symbol.toStringTag ]\n\t\t}\n\n\t\ttoJSON() {\n\t\t\treturn {\n\t\t\t\turi: this.uri,\n\t\t\t\trow: this.row,\n\t\t\t\tcol: this.col,\n\t\t\t\tlength: this.length\n\t\t\t}\n\t\t}\n\n\t\t/** Makes new error for this span. */\n\t\terror( message : string , Class = Error ) {\n\t\t\treturn new Class( `${message} (${this})` )\n\t\t}\n\n\t\t/** Makes new span for same uri. */\n\t\tspan( row : number , col : number , length : number ) {\n\t\t\treturn new $mol_span( this.uri , this.source, row , col , length )\n\t\t}\n\n\t\t/** Makes new span after end of this. */\n\t\tafter( length = 0 ) {\n\t\t\treturn new $mol_span( this.uri , this.source, this.row , this.col + this.length , length )\n\t\t}\n\n\t\t/** Makes new span between begin and end. */\n\t\tslice( begin: number, end = -1 ) {\n\t\t\tlet len = this.length\n\t\t\t\n\t\t\tif( begin < 0 ) begin += len\n\t\t\tif( end < 0 ) end += len\n\n\t\t\tif (begin < 0 || begin > len) this.$.$mol_fail( this.error( `Begin value '${begin}' out of range`, RangeError ) )\n\t\t\tif (end < 0 || end > len) this.$.$mol_fail( this.error( `End value '${end}' out of range`, RangeError ) )\n\t\t\tif (end < begin) this.$.$mol_fail( this.error( `End value '${end}' can't be less than begin value`, RangeError ) )\n\n\t\t\treturn this.span( this.row , this.col + begin , end - begin )\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\t/** Serializes tree to string in tree format. */\n\texport function $mol_tree2_to_string(\n\t\tthis: $,\n\t\ttree: $mol_tree2,\n\t) : string {\n\n\t\tlet output = [] as string[]\n\t\t\n\t\tfunction dump(\n\t\t\ttree: $mol_tree2,\n\t\t\tprefix = '',\n\t\t) {\n\n\t\t\tif( tree.type.length ) {\n\t\t\t\t\n\t\t\t\tif( !prefix.length ) {\n\t\t\t\t\tprefix = \"\\t\";\n\t\t\t\t}\n\n\t\t\t\toutput.push( tree.type )\n\n\t\t\t\tif( tree.kids.length == 1 ) {\n\t\t\t\t\toutput.push( ' ' )\n\t\t\t\t\tdump( tree.kids[ 0 ], prefix )\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\toutput.push( \"\\n\" )\n\n\t\t\t} else if( tree.value.length || prefix.length ) {\n\n\t\t\t\toutput.push( \"\\\\\" + tree.value + \"\\n\" )\n\n\t\t\t}\n\n\t\t\tfor( const kid of tree.kids ) {\n\t\t\t\toutput.push( prefix )\n\t\t\t\tdump( kid, prefix + \"\\t\" )\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tdump( tree )\n\n\t\treturn output.join('')\n\t}\n\t\t\n}\n","namespace $ {\n\n\t/** Path by types in tree. */\n\texport type $mol_tree2_path =\n\t\tArray< string | number | null >\n\t\n\t/** Hask tool for processing node. */\n\texport type $mol_tree2_hack< Context > =\n\t\t(\n\t\t\tinput : $mol_tree2 ,\n\t\t\tbelt : $mol_tree2_belt< Context > ,\n\t\t\tcontext : Context ,\n\t\t)=> readonly $mol_tree2[]\n\n\t/** Collection of hask tools for processing tree. */\n\texport type $mol_tree2_belt< Context > =\n\t\tRecord< string , $mol_tree2_hack< Context > >\n\n\t/**\n\t * Abstract Syntax Tree with human readable serialization.\n\t * Avoid direct instantiation. Use static factories instead.\n\t * @see https://github.com/nin-jin/tree.d\n\t */\n\texport class $mol_tree2 extends Object {\n\t\t\n\t\tconstructor(\n\n\t\t\t/** Type of structural node, `value` should be empty */\n\t\t\treadonly type : string,\n\t\t\t\n\t\t\t/** Content of data node, `type` should be empty */\n\t\t\treadonly value : string,\n\n\t\t\t/** Child nodes */\n\t\t\treadonly kids : readonly $mol_tree2[],\n\t\t\t\n\t\t\t/** Position in most far source resource */\n\t\t\treadonly span : $mol_span,\n\n\t\t) {\n\t\t\tsuper()\n\t\t\t;(this as any)[ Symbol.toStringTag ] = type || '\\\\' + value\n\t\t}\n\n\t\t/** Makes collection node. */\n\t\tstatic list(\n\t\t\tkids : readonly $mol_tree2[] ,\n\t\t\tspan = $mol_span.unknown ,\n\t\t) {\n\t\t\treturn new $mol_tree2( '' , '' , kids , span )\n\t\t}\n\t\t\n\t\t/** Makes new derived collection node. */\n\t\tlist(\n\t\t\tkids : readonly $mol_tree2[] ,\n\t\t) {\n\t\t\treturn $mol_tree2.list( kids , this.span )\n\t\t}\n\n\t\t/** Makes data node for any string. */\n\t\tstatic data(\n\t\t\tvalue : string ,\n\t\t\tkids = [] as readonly $mol_tree2[] ,\n\t\t\tspan = $mol_span.unknown ,\n\t\t) {\n\n\t\t\tconst chunks = value.split( '\\n' )\n\n\t\t\tif( chunks.length > 1 ) {\n\t\t\t\n\t\t\t\tlet kid_span = span.span( span.row , span.col , 0 )\n\n\t\t\t\tconst data = chunks.map( chunk => {\n\t\t\t\t\tkid_span = kid_span.after( chunk.length )\n\t\t\t\t\treturn new $mol_tree2( '' , chunk , [] , kid_span )\n\t\t\t\t} )\n\n\t\t\t\tkids = [ ... data , ... kids ]\n\n\t\t\t\tvalue = ''\n\n\t\t\t}\n\n\t\t\treturn new $mol_tree2( '' , value , kids , span )\n\n\t\t}\n\t\t\n\t\t/** Makes new derived data node. */\n\t\tdata(\n\t\t\tvalue : string ,\n\t\t\tkids = [] as readonly $mol_tree2[] ,\n\t\t) {\n\t\t\treturn $mol_tree2.data( value , kids , this.span )\n\t\t}\n\t\t\n\t\t/** Makes struct node. */\n\t\tstatic struct(\n\t\t\ttype : string ,\n\t\t\tkids = [] as readonly $mol_tree2[] ,\n\t\t\tspan = $mol_span.unknown ,\n\t\t) {\n\n\t\t\tif( /[ \\n\\t\\\\]/.test( type ) ) {\n\t\t\t\t$$.$mol_fail( span.error( `Wrong type ${ JSON.stringify( type ) }` ) )\n\t\t\t}\n\n\t\t\treturn new $mol_tree2( type , '' , kids , span )\n\n\t\t}\n\t\t\n\t\t/** Makes new derived structural node. */\n\t\tstruct(\n\t\t\ttype : string ,\n\t\t\tkids = [] as readonly $mol_tree2[] ,\n\t\t) {\n\t\t\treturn $mol_tree2.struct( type , kids , this.span )\n\t\t}\n\n\t\t/** Makes new derived node with different kids id defined. */\n\t\tclone( kids : readonly $mol_tree2[], span = this.span ) {\n\t\t\treturn new $mol_tree2( this.type , this.value , kids , span )\n\t\t}\n\n\t\t/** Returns multiline text content. */\n\t\ttext() {\n\n\t\t\tvar values : string[] = []\n\t\t\t\n\t\t\tfor( var kid of this.kids ) {\n\t\t\t\tif( kid.type ) continue\n\t\t\t\tvalues.push( kid.value )\n\t\t\t}\n\t\t\t\n\t\t\treturn this.value + values.join( '\\n' )\n\n\t\t}\n\t\t\n\t\t/** Parses tree format. */\n\t\t/** @deprecated Use $mol_tree2_from_string */\n\t\tstatic fromString( str : string , uri = 'unknown' ) {\n\t\t\treturn $$.$mol_tree2_from_string( str, uri )\n\t\t}\n\n\t\t/** Serializes to tree format. */\n\t\ttoString() : string {\n\t\t\treturn $$.$mol_tree2_to_string( this )\n\t\t}\n\t\t\n\t\t/** Makes new tree with node overrided by path. */\n\t\tinsert( value : $mol_tree2 | null , ...path : $mol_tree2_path ) : $mol_tree2 {\n\n\t\t\tif( path.length === 0 ) return value!\n\t\t\t\n\t\t\tconst type = path[0]\n\t\t\tif( typeof type === 'string' ) {\n\n\t\t\t\tlet replaced = false\n\t\t\t\tconst sub = this.kids.map( ( item , index )=> {\n\t\t\t\t\tif( item.type !== type ) return item\n\t\t\t\t\treplaced = true\n\t\t\t\t\treturn item.insert( value , ... path.slice( 1 ) )\n\t\t\t\t} ).filter( Boolean )\n\t\t\t\t\n\t\t\t\tif( !replaced && value ) {\n\t\t\t\t\tsub.push( this.struct( type , [] ).insert( value , ... path.slice( 1 ) ) )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn this.clone( sub )\n\n\t\t\t} else if( typeof type === 'number' ) {\n\t\t\t\t\n\t\t\t\tconst sub = this.kids.slice()\n\t\t\t\tsub[ type ] = ( sub[ type ] || this.list([]) )\n\t\t\t\t\t.insert( value , ... path.slice( 1 ) )\n\t\t\t\t\n\t\t\t\treturn this.clone( sub.filter( Boolean ) )\n\n\t\t\t} else {\n\t\t\t\t\n\t\t\t\tconst kids = ( ( this.kids.length === 0 ) ? [ this.list([]) ] : this.kids )\n\t\t\t\t.map( item => item.insert( value , ... path.slice( 1 ) ) )\n\t\t\t\t.filter( Boolean )\n\n\t\t\t\treturn this.clone( kids )\n\n\t\t\t}\n\n\t\t}\n\n\t\t/** Query nodes by path. */\n\t\tselect( ...path : $mol_tree2_path ) {\n\n\t\t\tlet next = [ this as $mol_tree2 ]\n\n\t\t\tfor( const type of path ) {\n\n\t\t\t\tif( !next.length ) break\n\t\t\t\t\n\t\t\t\tconst prev = next\n\t\t\t\tnext = []\n\n\t\t\t\tfor( var item of prev ) {\n\n\t\t\t\t\tswitch( typeof( type ) ) {\n\n\t\t\t\t\t\tcase 'string' :\n\n\t\t\t\t\t\t\tfor( var child of item.kids ) {\n\t\t\t\t\t\t\t\tif( child.type == type ) {\n\t\t\t\t\t\t\t\t\tnext.push( child )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\n\t\t\t\t\t\tcase 'number' :\n\n\t\t\t\t\t\t\tif( type < item.kids.length ) next.push( item.kids[ type ] )\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\n\t\t\t\t\t\tdefault : next.push( ... item.kids )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn this.list( next )\n\t\t\t\n\t\t}\n\t\t\n\t\t/** Filter kids by path or value. */\n\t\tfilter( path : string[] , value? : string ) {\n\n\t\t\tconst sub = this.kids.filter( item => {\n\t\t\t\t\t\n\t\t\t\tvar found = item.select( ...path )\n\t\t\t\t\n\t\t\t\tif( value === undefined ) {\n\t\t\t\t\treturn Boolean( found.kids.length )\n\t\t\t\t} else {\n\t\t\t\t\treturn found.kids.some( child => child.value == value )\n\t\t\t\t}\n\t\t\t\n\t\t\t} )\n\t\t\t\n\t\t\treturn this.clone( sub )\n\n\t\t}\n\n\t\thack_self< Context extends { span?: $mol_span; [ key: string ]: unknown } = {} >(\n\t\t\tbelt: $mol_tree2_belt< Context >,\n\t\t\tcontext = {} as Context,\n\t\t) {\n\t\t\tlet handle = belt[ this.type ] || belt[ '' ]\n\t\t\t\t\n\t\t\tif( !handle || handle === Object.prototype[ this.type as keyof Object ] ) {\n\t\t\t\thandle = ( input, belt, context )=> [\n\t\t\t\t\tinput.clone( input.hack( belt, context ), context.span )\n\t\t\t\t]\n\t\t\t}\n\t\t\t\n\t\t\ttry {\n\t\t\t\treturn handle( this , belt , context! )\n\t\t\t} catch( error: any ) {\n\t\t\t\terror.message += `\\n${ this.clone([]) }${ this.span }`\n\t\t\t\t$mol_fail_hidden( error )\n\t\t\t}\n\t\t}\n\n\t\t/** Transform tree through context with transformers */\n\t\thack< Context extends { span?: $mol_span; [ key: string ]: unknown } = {} >(\n\t\t\tbelt: $mol_tree2_belt< Context >,\n\t\t\tcontext = {} as Context,\n\t\t) {\n\t\t\treturn ( [] as readonly $mol_tree2[] ).concat(\n\t\t\t\t... this.kids.map( child => child.hack_self(belt, context) )\n\t\t\t)\n\n\t\t}\n\n\t\t/** Makes Error with node coordinates. */\n\t\terror( message : string , Class = Error ) {\n\t\t\treturn this.span.error( `${ message }\\n${ this.clone([]) }` , Class )\n\t\t}\n\n\t}\n\n\texport class $mol_tree2_empty extends $mol_tree2 {\n\t\tconstructor() {\n\t\t\tsuper( '' , '' , [] , $mol_span.unknown )\n\t\t}\n\t}\n\t\n}\n","namespace $ {\n\n\t/** Syntax error with cordinates and source line snippet. */\n\texport class $mol_error_syntax extends SyntaxError {\n\t\tconstructor (\n\t\t\tpublic reason: string,\n\t\t\tpublic line: string,\n\t\t\tpublic span: $mol_span,\n\t\t) {\n\t\t\tsuper(`${ reason }\\n${ span }\\n${ line.substring( 0 , span.col - 1 ).replace( /\\S/g, ' ' ) }${ ''.padEnd( span.length, '!' ) }\\n${ line }`)\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\t/** Parses tree format from string. */\n\texport function $mol_tree2_from_string(\n\t\tthis: $,\n\t\tstr: string,\n\t\turi = '?',\n\t) : $mol_tree2 {\n\n\t\tconst span = $mol_span.entire( uri, str )\n\n\t\tvar root = $mol_tree2.list( [], span )\n\t\tvar stack = [ root ]\n\n\t\tvar pos = 0, row = 0, min_indent = 0\n\t\t\n\t\twhile( str.length > pos ) {\n\n\t\t\tvar indent = 0\n\t\t\tvar line_start = pos\n\n\t\t\trow++\n\n\t\t\t// read indent\n\t\t\twhile( str.length > pos && str[ pos ] == '\\t' ) {\n\t\t\t\tindent++\n\t\t\t\tpos++\n\t\t\t}\n\n\t\t\tif( ! root.kids.length ) {\n\t\t\t\tmin_indent = indent\n\t\t\t}\n\n\t\t\tindent -= min_indent\n\n\t\t\t// invalid tab size\n\t\t\tif( indent < 0 || indent >= stack.length ) {\n\n\t\t\t\tconst sp = span.span( row, 1, pos - line_start )\n\n\t\t\t\t// skip error line\n\t\t\t\twhile( str.length > pos && str[ pos ] != '\\n' ) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\n\t\t\t\tif( indent < 0 ) {\n\t\t\t\t\tif( str.length > pos ) {\n\t\t\t\t\t\tthis.$mol_fail( new this.$mol_error_syntax(\n\t\t\t\t\t\t\t`Too few tabs`,\n\t\t\t\t\t\t\tstr.substring( line_start, pos ),\n\t\t\t\t\t\t\tsp,\n\t\t\t\t\t\t) )\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.$mol_fail( new this.$mol_error_syntax(\n\t\t\t\t\t\t`Too many tabs`,\n\t\t\t\t\t\tstr.substring( line_start, pos ),\n\t\t\t\t\t\tsp,\n\t\t\t\t\t) )\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t\tstack.length = indent + 1\n\t\t\tvar parent = stack[ indent ]\n\n\t\t\t// parse types\n\t\t\twhile( str.length > pos && str[ pos ] != '\\\\' && str[ pos ] != '\\n' ) {\n\n\t\t\t\t// type can not contain space and tab\n\t\t\t\tvar error_start = pos\n\t\t\t\twhile( str.length > pos && ( str[ pos ] == ' ' || str[ pos ] == '\\t' ) ) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\n\t\t\t\tif( pos > error_start ) {\n\t\t\t\t\tlet line_end = str.indexOf( '\\n' , pos )\n\t\t\t\t\tif( line_end === -1 ) line_end = str.length\n\t\t\t\t\tconst sp = span.span( row, error_start - line_start + 1, pos - error_start )\n\t\t\t\t\tthis.$mol_fail( new this.$mol_error_syntax(\n\t\t\t\t\t\t`Wrong nodes separator`,\n\t\t\t\t\t\tstr.substring( line_start, line_end ),\n\t\t\t\t\t\tsp,\n\t\t\t\t\t) )\n\t\t\t\t}\n\n\t\t\t\t// read type\n\t\t\t\tvar type_start = pos\n\t\t\t\twhile( \n\t\t\t\t\tstr.length > pos && \n\t\t\t\t\tstr[ pos ] != '\\\\' && \n\t\t\t\t\tstr[ pos ] != ' ' && \n\t\t\t\t\tstr[ pos ] != '\\t' && \n\t\t\t\t\tstr[ pos ] != '\\n'\n\t\t\t\t) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\t\t\t\tif( pos > type_start ) {\n\t\t\t\t\tlet next = new $mol_tree2(\n\t\t\t\t\t\tstr.slice( type_start , pos ),\n\t\t\t\t\t\t'',\n\t\t\t\t\t\t[],\n\t\t\t\t\t\tspan.span( row, type_start - line_start + 1, pos - type_start ),\n\t\t\t\t\t)\n\t\t\t\t\tconst parent_kids = parent.kids as $mol_tree2[]\n\t\t\t\t\tparent_kids.push( next )\n\t\t\t\t\tparent = next\n\t\t\t\t}\n\n\t\t\t\t// read one space if exists\n\t\t\t\tif( str.length > pos && str[ pos ] == ' ' ) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// read data\n\t\t\tif( str.length > pos && str[ pos ] == '\\\\' ) {\n\t\t\t\tvar data_start = pos\n\t\t\t\twhile( str.length > pos && str[ pos ] != '\\n' ) {\n\t\t\t\t\tpos++\n\t\t\t\t}\n\t\t\t\tlet next = new $mol_tree2(\n\t\t\t\t\t'',\n\t\t\t\t\tstr.slice( data_start + 1 , pos ),\n\t\t\t\t\t[],\n\t\t\t\t\tspan.span( row, data_start - line_start + 2, pos - data_start - 1 ),\n\t\t\t\t)\n\t\t\t\tconst parent_kids = parent.kids as $mol_tree2[]\n\t\t\t\tparent_kids.push( next )\n\t\t\t\tparent = next\n\t\t\t}\n\n\t\t\t// now must be end of text\n\t\t\tif( str.length === pos && stack.length > 0 ) {\n\t\t\t\tconst sp = span.span( row, pos - line_start + 1, 1 )\n\t\t\t\tthis.$mol_fail( new this.$mol_error_syntax(\n\t\t\t\t\t`Unexpected EOF, LF required`,\n\t\t\t\t\tstr.substring( line_start, str.length ),\n\t\t\t\t\tsp,\n\t\t\t\t) )\n\t\t\t}\n\n\t\t\tstack.push( parent )\n\t\t\tpos++\n\t\t}\n\n\t\treturn root\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_tree2_from_json( json: any, span = $mol_span.unknown ): $mol_tree2 {\n\n\t\tif( typeof json === 'boolean' || typeof json === 'number' || json === null ) {\n\t\t\treturn new $mol_tree2( String( json ) , '' , [] , span )\n\t\t}\n\t\t\n\t\tif( typeof json === 'string' ) {\n\t\t\treturn $mol_tree2.data( json , [], span )\n\t\t}\n\n\t\tif( Array.isArray( json ) ) {\n\t\t\tconst sub = json.map( json => $mol_tree2_from_json( json , span ) )\n\t\t\treturn new $mol_tree2( '/' , '', sub, span )\n\t\t}\n\t\t\n\t\tif( ArrayBuffer.isView( json ) ) {\n\t\t\tconst buf = new Uint8Array( json.buffer, json.byteOffset, json.byteLength )\n\t\t\treturn $mol_tree2.data( String.fromCharCode( ... buf ) , [], span )\n\t\t}\n\t\t\t\n\t\tif( json instanceof Date ) {\n\t\t\treturn new $mol_tree2( '', json.toISOString() , [] , span )\n\t\t}\n\n\t\tif( typeof json.toJSON === 'function' ) {\n\t\t\treturn $mol_tree2_from_json( json.toJSON() )\n\t\t}\n\n\t\tif( json.toString !== Object.prototype.toString ) {\n\t\t\treturn $mol_tree2.data( json.toString() , [], span )\n\t\t}\n\n\t\tif( json instanceof Error ) {\n\t\t\tconst { name , message , stack } = json\n\t\t\tjson = { ... json, name, message, stack }\n\t\t}\n\n\t\tconst sub = [] as $mol_tree2[]\n\t\t\n\t\tfor( var key in json ) {\n\n\t\t\tconst val = json[ key ]\n\n\t\t\tif( val === undefined ) continue\n\n\t\t\tconst subsub = $mol_tree2_from_json( val, span )\n\t\t\t\n\t\t\tif( /^[^\\n\\t\\\\ ]+$/.test( key ) ) {\n\t\t\t\tsub.push( new $mol_tree2( key, '', [ subsub ], span ) )\n\t\t\t} else {\n\t\t\t\tsub.push( $mol_tree2.data( key, [ subsub ], span ) )\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\treturn new $mol_tree2( '*' , '', sub , span )\n\t\t\t\n\t}\n\n}\n","namespace $ {\n\t\n\t/** Module for working with terminal. Text coloring when output in terminal */\n\texport class $mol_term_color {\n\t\t\n\t\tstatic reset = this.ansi( 0, 0 )\n\t\tstatic bold = this.ansi( 1, 22 )\n\t\tstatic italic = this.ansi( 3, 23 )\n\t\tstatic underline = this.ansi( 4, 24 )\n\t\tstatic inverse = this.ansi( 7, 27 )\n\t\tstatic hidden = this.ansi( 8, 28 )\n\t\tstatic strike = this.ansi( 9, 29 )\n\t\t\n\t\tstatic gray = this.ansi( 90, 39 )\n\t\tstatic red = this.ansi( 91, 39 )\n\t\tstatic green = this.ansi( 92, 39 )\n\t\tstatic yellow = this.ansi( 93, 39 )\n\t\tstatic blue = this.ansi( 94, 39 )\n\t\tstatic magenta = this.ansi( 95, 39 )\n\t\tstatic cyan = this.ansi( 96, 39 )\n\t\t\n\t\tstatic Gray = ( str: string )=> this.inverse( this.gray( str ) )\n\t\tstatic Red = ( str: string )=> this.inverse( this.red( str ) )\n\t\tstatic Green = ( str: string )=> this.inverse( this.green( str ) )\n\t\tstatic Yellow = ( str: string )=> this.inverse( this.yellow( str ) )\n\t\tstatic Blue = ( str: string )=> this.inverse( this.blue( str ) )\n\t\tstatic Magenta = ( str: string )=> this.inverse( this.magenta( str ) )\n\t\tstatic Cyan = ( str: string )=> this.inverse( this.cyan( str ) )\n\t\t\n\t\tstatic ansi( open: number, close: number ) {\n\t\n\t\t\tif( typeof process === 'undefined' ) return String\n\t\t\tif( !process.stdout.isTTY ) return String\n\t\t\n\t\t\tconst prefix = `\\x1b[${open}m`\n\t\t\tconst postfix = `\\x1b[${close}m`\n\t\t\t\n\t\t\tconst suffix_regexp = new RegExp( postfix.replace( '[', '\\\\[' ), 'g' )\n\t\t\n\t\t\treturn function colorer( str: string ) {\n\t\t\n\t\t\t\tstr = String( str )\n\t\t\t\tif( str === '' ) return str\n\t\t\n\t\t\t\tconst suffix = str.replace( suffix_regexp, prefix )\n\t\t\t\treturn prefix + suffix + postfix\n\t\t\n\t\t\t}\n\t\t\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_log3_node_make(\n\t\tlevel : keyof Console ,\n\t\toutput : 'stdout' | 'stderr',\n\t\ttype : string ,\n\t\tcolor: ( str: string )=> string ,\n\t) {\n\n\t\treturn function $mol_log3_logger(\n\t\t\tthis : $ ,\n\t\t\tevent : $mol_log3_event<{}> ,\n\t\t) {\n\n\t\t\tif( !event.time ) event = { time : new Date().toISOString() , ... event }\n\n\t\t\tlet tree = this.$mol_tree2_from_json( event )\n\t\t\ttree = tree.struct( type, tree.kids )\n\t\t\t\n\t\t\tlet str = color( tree.toString() )\n\t\t\t;( this.console[ level ] as any )( str )\n\t\n\t\t\tconst self = this\n\t\t\treturn ()=> self.console.groupEnd()\n\n\t\t}\n\n\t}\n\n\t$.$mol_log3_come = $mol_log3_node_make( 'info' , 'stdout' , 'come' , $mol_term_color.blue )\n\t$.$mol_log3_done = $mol_log3_node_make( 'info' , 'stdout' , 'done' , $mol_term_color.green )\n\t$.$mol_log3_fail = $mol_log3_node_make( 'error' , 'stderr' , 'fail' , $mol_term_color.red )\n\t$.$mol_log3_warn = $mol_log3_node_make( 'warn' , 'stderr' , 'warn' , $mol_term_color.yellow )\n\t$.$mol_log3_rise = $mol_log3_node_make( 'log' , 'stdout' , 'rise' , $mol_term_color.magenta )\n\t$.$mol_log3_area = $mol_log3_node_make( 'log' , 'stdout' , 'area' , $mol_term_color.cyan )\n\n}\n","namespace $ {\n\t\n\t/** One-shot fiber */\n\texport class $mol_wire_task<\n\t\tHost,\n\t\tArgs extends readonly unknown[],\n\t\tResult,\n\t> extends $mol_wire_fiber< Host, Args, Result > {\n\t\t\n\t\tstatic getter<\n\t\t\tHost,\n\t\t\tArgs extends readonly unknown[],\n\t\t\tResult,\n\t\t>(\n\t\t\ttask: ( this : Host , ... args : Args )=> Result,\n\t\t): ( host: Host, args: Args )=> $mol_wire_task< Host, Args, Result > {\n\t\t\t\n\t\t\treturn function $mol_wire_task_get( host: Host, args: Args ) {\n\t\t\t\t\n\t\t\t\tconst sub = $mol_wire_auto()\n\t\t\t\tconst existen = sub?.track_next() as $mol_wire_task< Host, Args, Result > | undefined\n\t\t\t\t\n\t\t\t\treuse: if( existen ) {\n\t\t\t\t\t\n\t\t\t\t\tif( !existen.temp ) break reuse\n\t\t\t\t\t\n\t\t\t\t\tif( existen.host !== host ) break reuse\n\t\t\t\t\tif( existen.task !== task ) break reuse\n\t\t\t\t\tif( !$mol_compare_deep( existen.args, args ) ) break reuse\n\t\t\t\t\t\n\t\t\t\t\treturn existen\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tconst next = new $mol_wire_task( `${ (host as any)?.[ Symbol.toStringTag ] ?? host }.${ task.name }<#>`, task, host, args )\n\t\t\t\t\n\t\t\t\t// Disabled because non-idempotency is required for try-catch\n\t\t\t\tif( existen?.temp ) {\n\t\t\t\t\t$$.$mol_log3_warn({\n\t\t\t\t\t\tplace: '$mol_wire_task',\n\t\t\t\t\t\tmessage: `Non idempotency`,\n\t\t\t\t\t\texisten,\n\t\t\t\t\t\tnext,\n\t\t\t\t\t\thint: 'Ignore it',\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn next\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tget temp() {\n\t\t\treturn true\n\t\t}\n\t\t\n\t\tcomplete() {\n\t\t\tif( $mol_promise_like( this.cache ) ) return\n\t\t\tthis.destructor()\n\t\t}\n\t\t\n\t\tput( next: Result | Error | Promise< Result | Error > ) {\n\t\t\t\n\t\t\tconst prev = this.cache\n\t\t\tthis.cache = next\n\t\t\t\n\t\t\tif( $mol_promise_like( next ) ) {\n\t\t\t\t\n\t\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\tif( next !== prev ) this.emit()\n\t\t\t\t\n\t\t\t\treturn next\n\t\t\t}\n\t\t\t\n\t\t\tthis.cursor = $mol_wire_cursor.final\n\t\t\t\n\t\t\tif( this.sub_empty ) this.destructor()\n\t\t\telse if( next !== prev ) this.emit()\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\t\n\t/**\n\t * Decorates method to fiber to ensure it is executed only once inside other fiber.\n\t */\n\texport function $mol_wire_method<\n\t\tHost extends object,\n\t\tArgs extends readonly any[],\n\t>(\n\t\thost : Host,\n\t\tfield : PropertyKey,\n\t\tdescr? : TypedPropertyDescriptor< ( ... args: Args )=> any >,\n\t) {\n\t\t\n\t\tif( !descr ) descr = Reflect.getOwnPropertyDescriptor( host , field ) as any\n\t\tconst orig = descr?.value! ?? (host as any)[ field ]\n\t\t\n\t\tconst sup = Reflect.getPrototypeOf( host )!\t\n\t\tif( typeof (sup as any)[ field ] === 'function' ) {\n\t\t\tObject.defineProperty( orig , 'name' , { value : (sup as any)[ field ].name } )\n\t\t}\n\t\t\n\t\tconst temp = $mol_wire_task.getter( orig )\n\t\tconst value = function( this: Host, ... args: Args ) {\n\t\t\tconst fiber = temp( this ?? null as any, args )\n\t\t\treturn fiber.sync()\n\t\t}\n\t\t\n\t\tObject.defineProperty( value , 'name' , { value : orig.name + ' ' } )\n\t\t\n\t\tObject.assign( value, { orig } )\n\t\tconst descr2 = { ... descr, value }\n\t\tReflect.defineProperty( host, field, descr2 )\n\t\t\n\t\treturn descr2\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\tconst catched = new WeakMap< any , boolean >()\n\n\texport function $mol_fail_catch( error: unknown ) {\n\t\t\n\t\tif( typeof error !== 'object' ) return false\n\t\tif( $mol_promise_like( error ) ) $mol_fail_hidden( error )\n\t\tif( catched.get( error ) ) return false\n\t\t\n\t\tcatched.set( error , true )\n\t\treturn true\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_fail_log( error: unknown ) {\n\t\t\n\t\tif( $mol_promise_like( error ) ) return false\n\t\tif( !$mol_fail_catch( error ) ) return false\n\t\t\n\t\tconsole.error( error )\n\t\t\n\t\treturn true\n\t\t\n\t}\n\n}\n","namespace $ {\n\n\t/** Long-living fiber. */\n\texport class $mol_wire_atom<\n\t\tHost,\n\t\tArgs extends readonly unknown[],\n\t\tResult,\n\t> extends $mol_wire_fiber< Host, Args, Result > {\n\n\t\tstatic solo<\n\t\t\tHost,\n\t\t\tArgs extends readonly unknown[],\n\t\t\tResult,\n\t\t>(\n\t\t\thost: Host,\n\t\t\ttask: ( this: Host, ... args: Args )=> Result,\n\t\t): $mol_wire_atom< Host, Args, Result > {\n\t\t\t\n\t\t\tconst field = task.name + '<>'\n\t\t\t\n\t\t\tconst existen = Object.getOwnPropertyDescriptor( host ?? task, field )?.value\n\t\t\tif( existen ) return existen\n\t\t\t\n\t\t\tconst prefix = (host as any)?.[ Symbol.toStringTag ] ?? ( host instanceof Function ? $$.$mol_func_name( host ) : host )\n\t\t\tconst key = `${ prefix }.${ field }`\n\t\t\t\n\t\t\tconst fiber = new $mol_wire_atom( key, task, host, [] as any as Args )\n\t\t\t;( host as any ?? task )[ field ] = fiber\n\t\t\t\n\t\t\treturn fiber\n\t\t}\n\t\t\n\t\tstatic plex<\n\t\t\tHost,\n\t\t\tArgs extends readonly unknown[],\n\t\t\tResult,\n\t\t>(\n\t\t\thost: Host,\n\t\t\ttask: ( this: Host , ... args: Args )=> Result,\n\t\t\tkey: Args[0],\n\t\t): $mol_wire_atom< Host, Args, Result > {\n\t\t\t\n\t\t\tconst field = task.name + '<>'\n\t\t\tlet dict = Object.getOwnPropertyDescriptor( host ?? task, field )?.value\n\t\t\tconst prefix = (host as any)?.[ Symbol.toStringTag ] ?? ( host instanceof Function ? $$.$mol_func_name( host ) : host )\n\t\t\tconst key_str = $mol_key( key )\n\t\t\t\n\t\t\tif( dict ) {\n\t\t\t\tconst existen = dict.get( key_str )\n\t\t\t\tif( existen ) return existen\n\t\t\t} else {\n\t\t\t\tdict = ( host as any ?? task )[ field ] = new Map()\n\t\t\t}\n\t\t\t\n\t\t\tconst id = `${ prefix }.${ task.name }<${ key_str.replace( /^\"|\"$/g, \"'\" ) }>`\n\t\t\tconst fiber = new $mol_wire_atom( id, task, host, [ key ] as any as Args )\n\t\t\tdict.set( key_str, fiber )\n\t\t\t\n\t\t\treturn fiber\n\t\t}\n\t\t\n\t\tstatic watching = new Set< $mol_wire_atom< any, any, any > >()\n\t\tstatic watcher = null as $mol_after_frame | null\n\t\t\n\t\tstatic watch() {\n\t\t\n\t\t\t$mol_wire_atom.watcher = new $mol_after_frame( $mol_wire_atom.watch )\n\t\t\t\n\t\t\tfor( const atom of $mol_wire_atom.watching ) {\n\t\t\t\t\n\t\t\t\tif( atom.cursor === $mol_wire_cursor.final ) {\n\t\t\t\t\t$mol_wire_atom.watching.delete( atom )\n\t\t\t\t} else {\n\t\t\t\t\tatom.cursor = $mol_wire_cursor.stale\n\t\t\t\t\tatom.fresh()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\twatch() {\n\t\t\t\n\t\t\tif( !$mol_wire_atom.watcher ) {\n\t\t\t\t$mol_wire_atom.watcher = new $mol_after_frame( $mol_wire_atom.watch )\n\t\t\t}\n\t\t\t\n\t\t\t$mol_wire_atom.watching.add( this )\n\t\t\t\n\t\t}\n\t\t\n\t\t/**\n\t\t * Update fiber value through another temp fiber.\n\t\t */\n\t\t@ $mol_wire_method\n\t\tresync( args: Args ) {\n\t\t\treturn this.put( this.task.call( this.host!, ... args ) )\n\t\t}\n\t\t\n\t\t@ $mol_wire_method\n\t\tonce() {\n\t\t\treturn this.sync()\n\t\t}\n\t\t\n\t\tchannel() {\n\t\t\treturn Object.assign( ( next?: $mol_type_foot< Args > )=> {\n\t\t\t\t\t\n\t\t\t\tif( next !== undefined ) return this.resync( [ ... this.args, next ] as any ) as never\n\t\t\t\tif( !$mol_wire_fiber.warm ) return this.result() as never\n\t\t\t\t\n\t\t\t\tif( $mol_wire_auto()?.temp ) {\n\t\t\t\t\treturn this.once()\n\t\t\t\t} else {\n\t\t\t\t\treturn this.sync()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}, { atom: this as $mol_wire_atom< Host, Args, Result > } )\n\t\t}\n\t\t\n\t\tdestructor() {\n\t\t\t\n\t\t\tsuper.destructor()\n\t\t\t\n\t\t\tconst prev = this.cache\n\t\t\tif( $mol_owning_check( this, prev ) ) {\n\t\t\t\tprev.destructor()\n\t\t\t}\n\t\t\t\n\t\t\tif( this.pub_from === 0 ) {\n\t\t\t\t;( this.host as any ?? this.task )[ this.field() ] = null\n\t\t\t} else {\n\t\t\t\t;( this.host as any ?? this.task )[ this.field() ].delete( $mol_key( this.args[0] ) )\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\tput( next: Result | Error | Promise< Result | Error > ) {\n\t\t\t\n\t\t\tconst prev = this.cache\n\t\t\t\n\t\t\tupdate: if( next !== prev ) {\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\tif( $mol_compare_deep( prev, next ) ) break update\n\t\t\t\t} catch( error: any ) {\n\t\t\t\t\t$mol_fail_log( error )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_owning_check( this, prev ) ) {\n\t\t\t\t\tprev.destructor()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( $mol_owning_catch( this, next ) ) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\t(next as any)[ Symbol.toStringTag ] = (this as any)[ Symbol.toStringTag ]\n\t\t\t\t\t} catch { // Promises throw in strict mode\n\t\t\t\t\t\tObject.defineProperty( next, Symbol.toStringTag, { value: (this as any)[ Symbol.toStringTag ] } )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif( !this.sub_empty ) this.emit()\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tthis.cache = next\n\t\t\tthis.cursor = $mol_wire_cursor.fresh\n\t\t\t\n\t\t\tif( $mol_promise_like( next ) ) return next\n\t\t\t\n\t\t\tthis.complete_pubs()\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n\t\n\t/** Decorates solo object channel to [mol_wire_atom](../atom/atom.ts). */\n\texport function $mol_wire_solo< Args extends any[] >(\n\t\thost: object,\n\t\tfield: string,\n\t\tdescr?: TypedPropertyDescriptor< ( ... args: Args )=> any >\n\t) {\n\n\t\tif( !descr ) descr = Reflect.getOwnPropertyDescriptor( host , field )\n\t\tconst orig = descr?.value! ?? (host as any)[ field ]\n\t\t\n\t\tconst sup = Reflect.getPrototypeOf( host )!\n\t\tif( typeof (sup as any)[ field ] === 'function' ) {\n\t\t\tObject.defineProperty( orig , 'name' , { value : (sup as any)[ field ].name } )\n\t\t}\n\t\t\n\t\tconst descr2 = {\n\t\t\t... descr,\n\t\t\tvalue: function( this: typeof host, ... args: Args ){\n\t\t\t\n\t\t\t\tlet atom = $mol_wire_atom.solo( this, orig )\n\t\t\t\t\n\t\t\t\tif(( args.length === 0 )||( args[0] === undefined )) {\n\t\t\t\t\t\n\t\t\t\t\tif( !$mol_wire_fiber.warm ) return atom.result()\n\t\t\t\t\t\n\t\t\t\t\tif( $mol_wire_auto()?.temp ) {\n\t\t\t\t\t\treturn atom.once()\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn atom.sync()\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn atom.resync( args )\t\n\t\t\t}\n\t\t}\n\t\t\n\t\tReflect.defineProperty( descr2.value , 'name' , { value : orig.name + ' ' } )\n\t\tReflect.defineProperty( descr2.value , 'length' , { value : orig.length } )\n\t\tObject.assign( descr2.value, { orig } )\n\t\t\n\t\tReflect.defineProperty( host, field, descr2 )\n\t\t\n\t\treturn descr2 as any as TypedPropertyDescriptor< ( ... args: First_optional< Args > )=> any >\n\t}\n\n\ttype First_optional< Args extends any[] > = Args extends []\n\t\t? []\n\t\t: [ Args[0] | undefined, ... $mol_type_tail< Args > ]\n\n}\n","namespace $ {\n\t\n\t/** Reactive memoizing multiplexed property decorator. */\n\texport function $mol_wire_plex< Args extends [ any, ... any[] ] >(\n\t\thost: object,\n\t\tfield: string,\n\t\tdescr?: TypedPropertyDescriptor< ( ... args: Args )=> any >\n\t) {\n\n\t\tif( !descr ) descr = Reflect.getOwnPropertyDescriptor( host , field )\n\t\tconst orig = descr?.value! ?? (host as any)[ field ]\n\t\t\n\t\tconst sup = Reflect.getPrototypeOf( host )!\n\t\tif( typeof (sup as any)[ field ] === 'function' ) {\n\t\t\tObject.defineProperty( orig , 'name' , { value : (sup as any)[ field ].name } )\n\t\t}\n\t\t\n\t\tconst descr2 = {\n\t\t\t... descr,\n\t\t\tvalue: function( this: typeof host, ... args: Args ) {\n\t\t\t\n\t\t\t\tlet atom = $mol_wire_atom.plex( this, orig, args[0] )\n\t\t\t\t\n\t\t\t\tif(( args.length === 1 )||( args[1] === undefined )) {\n\t\t\t\t\t\n\t\t\t\t\tif( !$mol_wire_fiber.warm ) return atom.result()\n\t\t\t\t\t\n\t\t\t\t\tif( $mol_wire_auto()?.temp ) {\n\t\t\t\t\t\treturn atom.once()\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn atom.sync()\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn atom.resync( args )\t\n\t\t\t}\n\t\t}\n\t\t\n\t\tReflect.defineProperty( descr2.value , 'name' , { value : orig.name + ' ' } )\n\t\tReflect.defineProperty( descr2.value , 'length' , { value : orig.length } )\n\t\tObject.assign( descr2.value, { orig } )\n\t\t\n\t\tReflect.defineProperty( host, field, descr2 )\n\t\t\n\t\treturn descr2\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Reactive memoizing solo property decorator from [mol_wire](../wire/README.md)\n\t * @example\n\t * '@' $mol_mem\n\t * name(next?: string) {\n\t * \treturn next ?? 'default'\n\t * }\n\t * @see https://mol.hyoo.ru/#!section=docs/=qxmh6t_sinbmb\n\t */\n\texport let $mol_mem = $mol_wire_solo\n\n\t/**\n\t * Reactive memoizing multiplexed property decorator [mol_wire](../wire/README.md)\n\t * @example\n\t * '@' $mol_mem_key\n\t * name(id: number, next?: string) {\n\t * return next ?? 'default'\n\t * }\n\t * @see https://mol.hyoo.ru/#!section=docs/=qxmh6t_sinbmb\n\t */\n\texport let $mol_mem_key = $mol_wire_plex\n}\n","namespace $ {\n\t\n\texport var $mol_dom_context : typeof globalThis\n\t\n}\n","interface $node {\n\t[key:string]: any\n}\n\nvar $node = new Proxy( { require } as any , {\n\t\n\tget( target , name : string , wrapper ) {\n\n\t\tif( target[ name ] ) return target[ name ]\n\n\t\tconst mod = target.require( 'module' ) as typeof import( 'module' )\n\t\t\n\t\tif( mod.builtinModules.indexOf( name ) >= 0 ) return target.require( name )\n\t\tif( name[0] === '.' ) return target.require( name )\n\t\t\n\t\tconst path = target.require( 'path' ) as typeof import( 'path' )\n\t\tconst fs = target.require( 'fs' ) as typeof import( 'fs' )\n\n\t\tlet dir = path.resolve( '.' )\n\t\tconst suffix = `./node_modules/${ name }`\n\n\t\tconst $$ = ( $ as any )\n\t\t\n\t\twhile( !fs.existsSync( path.join( dir , suffix ) ) ) {\n\n\t\t\tconst parent = path.resolve( dir , '..' )\n\n\t\t\tif( parent === dir ) {\n\n\t\t\t\t$$.$mol_exec( '.' , 'npm' , 'install' , '--omit=dev', name )\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\t$$.$mol_exec( '.' , 'npm' , 'install' , '--omit=dev', '@types/' + name )\n\t\t\t\t} catch {}\n\n\t\t\t\tbreak\n\n\t\t\t} else {\n\n\t\t\t\tdir = parent\n\n\t\t\t}\n\n\t\t}\n\t\t\n\t\ttry {\n\t\t\treturn target.require( name )\n\t\t} catch( error ) {\n\t\t\t$.$mol_fail_log( error )\n\t\t\treturn null\n\t\t}\n\n\t},\n\n\tset( target , name : string , value ) {\n\t\ttarget[ name ] = value\n\t\treturn true\n\t},\n\n} ) as $node\n\nrequire = ( req =>\n\tObject.assign( function require( name : string ) {\n\t\treturn $node[ name ]\n\t} , req )\n)( require )\n\n","namespace $ {\n\texport function $mol_env() {\n\t\treturn {} as Record< string, string | undefined >\n\t}\n}\n","namespace $ {\n\t$.$mol_env = function $mol_env() {\n\t\treturn this.process.env\n\t}\n}\n","namespace $ {\n\texport function $mol_exec(\n\t\tthis : $ ,\n\t\tdir : string ,\n\t\tcommand : string ,\n\t\t...args : string[]\n\t) {\n\n\t\tlet [ app , ... args0 ] = command.split( ' ' )\n\t\targs = [ ... args0 , ... args ]\n\n\t\tthis.$mol_log3_come({\n\t\t\tplace: '$mol_exec' ,\n\t\t\tdir: $node.path.relative( '' , dir ) ,\n\t\t\tmessage: 'Run',\n\t\t\tcommand: `${app} ${ args.join(' ') }` ,\n\t\t})\n\n\t\tvar res = $node['child_process'].spawnSync(\n\t\t\tapp ,\n\t\t\targs,\n\t\t\t{\n\t\t\t\tcwd : $node.path.resolve( dir ) ,\n\t\t\t\tshell : true ,\n\t\t\t\tenv: this.$mol_env(),\n\t\t\t}\n\t\t)\n\t\t\n\t\tif( res.status || res.error ) {\n\t\t\treturn $mol_fail( res.error || new Error( res.stderr.toString(), { cause: res.stdout } ) )\n\t\t}\n\t\t\n\t\tif( !res.stdout ) res.stdout = Buffer.from([])\n\n\t\treturn res\n\t}\n}\n","namespace $ {\n\t\n\t$.$mol_dom_context = new $node.jsdom.JSDOM( '' , { url : 'https://localhost/' } ).window as any\n\t\n}\n","namespace $ {\n\n\texport class $mol_after_tick extends $mol_object2 {\n\n\t\tpromise : any\n\t\tcancelled = false\n\n\t\tconstructor(\n\t\t\tpublic task : ()=> void ,\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis.promise = Promise.resolve().then( ()=> {\n\t\t\t\tif( this.cancelled ) return\n\t\t\t\ttask()\n\t\t\t} )\n\t\t}\n\n\t\tdestructor() {\n\t\t\tthis.cancelled = true\n\t\t}\n\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport class $mol_view_selection extends $mol_object {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic focused( next? : Element[], notify?: 'notify' ) : Element[] {\n\t\t\t\n\t\t\tconst parents : Element[] = []\n\t\t\tlet element = next?.[0] ?? $mol_dom_context.document.activeElement\n\t\t\t\n\t\t\twhile( element ) {\n\t\t\t\tparents.push( element )\n\t\t\t\telement = element.parentNode as HTMLElement\n\t\t\t}\n\t\t\t\n\t\t\tif( !next || notify ) return parents\n\t\t\t\n\t\t\tnew $mol_after_tick( ()=> {\n\t\t\t\t\n\t\t\t\tconst element = this.focused()![0] as HTMLElement\n\t\t\t\t\n\t\t\t\tif( element ) element.focus()\n\t\t\t\telse $mol_dom_context.blur()\n\t\t\t\t\n\t\t\t} )\n\n\t\t\treturn parents\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\texport class $mol_wrapper extends $mol_object2 {\n\n\t\tstatic wrap : ( task : ( ... ags : any[] )=> any )=> ( ... ags : any[] )=> any\n\t\t\n\t\tstatic run< Result >( task : ()=> Result ) : Result {\n\t\t\treturn this.func( task )()\n\t\t}\n\t\n\t\tstatic func< Args extends any[] , Result , Host = void >(\n\t\t\tfunc : ( this : Host , ... args : Args )=> Result\n\t\t) : ( this : Host , ... args : Args )=> Result {\n\t\t\treturn this.wrap( func )\n\t\t}\n\n\t\tstatic get class() {\n\n\t\t\treturn < Class extends new ( ... args : any[] )=> any >(\n\t\t\t\tClass : Class\n\t\t\t) => {\n\n\t\t\t\ttype Args = ConstructorParameters< Class >\n\t\t\t\ttype Result = InstanceType< Class >\n\n\t\t\t\tconst construct = ( target : Class , args : Args )=> new Class( ... args )\n\n\t\t\t\tconst handler: ProxyHandler = {\n\t\t\t\t\tconstruct : this.func( construct )\n\t\t\t\t} \n\n\t\t\t\t;(handler as any)[ Symbol.toStringTag ] = Class.name + '#'\n\n\t\t\t\treturn new Proxy( Class , handler )\n\t\t\t\t\n\t\t\t}\n\n\t\t}\n\n\t\tstatic get method() {\n\t\t\t\n\t\t\treturn (\n\t\t\t\tobj : object,\n\t\t\t\tname : PropertyKey,\n\t\t\t\tdescr : PropertyDescriptor,\n\t\t\t) => {\n\t\t\t\tdescr.value = this.func( descr.value! )\n\t\t\t\treturn descr\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tstatic get field() {\n\t\t\t\n\t\t\treturn <\n\t\t\t\tHost ,\n\t\t\t\tField extends keyof Host ,\n\t\t\t\tArgs extends any[] ,\n\t\t\t\tResult ,\n\t\t\t>(\n\t\t\t\tobj : Host ,\n\t\t\t\tname : Field ,\n\t\t\t\tdescr : TypedPropertyDescriptor< Result >\n\t\t\t) => {\n\t\t\t\tdescr.get = descr.set = this.func( descr.get! )\n\t\t\t\treturn descr\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_memo extends $mol_wrapper {\n\t\t\n\t\tstatic wrap< This extends object , Value >( task : ( this : This , next? : Value )=> Value ) {\n\n\t\t\tconst store = new WeakMap< This , Value >()\n\n\t\t\treturn function( this : This , next? : Value ) {\n\n\t\t\t\tif( next === undefined && store.has( this ) ) return store.get( this )\n\t\t\t\t\n\t\t\t\tconst val = task.call( this , next ) ?? next\n\t\t\t\t\n\t\t\t\tstore.set( this , val! )\n\t\t\t\t\n\t\t\t\treturn val\n\n\t\t\t}\n\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_dom_qname( name : string ) {\n\t\treturn name.replace( /\\W/g , '' ).replace( /^(?=\\d+)/ , '_' )\n\t}\n\n}\n","namespace $ {\n\t\n\t/** Run code without state changes */\n\texport function $mol_wire_probe< Value >(\n\t\ttask : ()=> Value, def?: Value\n\t) : Value | undefined {\n\t\t\n\t\tconst warm = $mol_wire_fiber.warm\n\t\t\n\t\ttry {\n\t\t\t$mol_wire_fiber.warm = false\n\t\t\tconst res = task()\n\t\t\tif( res === undefined ) return def\n\t\t\treturn res\n\t\t} finally {\n\t\t\t$mol_wire_fiber.warm = warm\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\t/**\n\t * Real-time refresh current atom.\n\t * Don't use if possible. May reduce performance.\n\t */\n\texport function $mol_wire_watch() {\n\t\tconst atom = $mol_wire_auto()\n\t\tif( atom instanceof $mol_wire_atom ) {\n\t\t\tatom.watch()\n\t\t} else {\n\t\t\t$mol_fail( new Error( 'Atom is required for watching' ) )\n\t\t}\n\t}\n\t\n}\n","namespace $ { \n\t/**\n\t * Returns closure that returns constant value.\n\t * @example\n\t * const rnd = $mol_const( Math.random() )\n\t */\n\texport function $mol_const< Value >( value : Value ) {\n\t\tconst getter = <{ () : Value , '()' : Value }> ( () => value )\n\t\tgetter['()'] = value\n\t\t;(getter as any)[ Symbol.toStringTag ] = value\n\t\t;(getter as any )[ $mol_dev_format_head ] = ()=> $mol_dev_format_span( {} , '()=> ', $mol_dev_format_auto( value ) )\n\t\treturn getter\n\t}\n}\n","namespace $ {\n\t\n\t/**\n\t * Disable reaping of current subscriber\n\t */\n\texport function $mol_wire_solid() {\n\t\tlet current = $mol_wire_auto() as $mol_wire_fiber< any, any, any >\n\t\tif( current!.temp ) current = current!.host\n\t\tif( current!.reap !== nothing ) {\n\t\t\tcurrent?.sub_on( sub, sub.data.length )\n\t\t}\n\t\tcurrent!.reap = nothing\n\t}\n\t\n\tconst nothing = ()=> {}\n\tconst sub = new $mol_wire_pub_sub\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_attributes (\n\t\tel : Element ,\n\t\tattrs : { [ key : string ] : string|number|boolean|null }\n\t) {\n\n\t\tfor( let name in attrs ) {\n\n\t\t\tlet val = attrs[ name ] as any\n\n\t\t\tif( val === undefined ) {\n\t\t\t\t\n\t\t\t\tcontinue\n\t\t\t\t\n\t\t\t} if( val === null || val === false ) {\n\n\t\t\t\tif( !el.hasAttribute( name ) ) continue\n\t\t\t\t\n\t\t\t\tel.removeAttribute( name )\n\n\t\t\t} else {\n\t\t\t\t\n\t\t\t\tconst str = String( val )\n\t\t\t\tif( el.getAttribute( name ) === str ) continue\n\t\t\t\t\n\t\t\t\tel.setAttribute( name , str )\n\n\t\t\t}\n\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_events (\n\t\tel : Element ,\n\t\tevents : { [ key : string ] : ( event : Event )=> any },\n\t\tpassive = false\n\t) {\n\t\tfor( let name in events ) {\n\t\t\tel.addEventListener( name , events[ name ] , { passive } )\n\t\t}\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_styles (\n\t\tel : Element ,\n\t\tstyles : { [ key : string ] : string|number }\n\t) {\n\t\tfor( let name in styles ) {\n\t\t\tlet val = styles[ name ]\n\t\t\t\n\t\t\tconst style = ( el as HTMLElement ).style as any\n\t\t\tconst kebab = ( name : string )=> name.replace( /[A-Z]/g , letter => '-' + letter.toLowerCase() )\n\t\t\t\n\t\t\tif( typeof val === 'number' ) {\n\t\t\t\tstyle.setProperty(kebab(name), `${ val }px`);\n\t\t\t} else {\n\t\t\t\tstyle.setProperty(kebab(name), val);\n\t\t\t}\n\t\t\t\n\t\t}\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_dom_render_children (\n\t\tel : Element | DocumentFragment ,\n\t\tchildNodes : NodeList | Array< Node | string | null >\n\t) {\n\t\tconst node_set = new Set< Node | string | null >( childNodes )\n\t\t\n\t\tlet nextNode : Node | null = el.firstChild\n\t\tfor( let view of childNodes ) {\n\n\t\t\tif( view == null ) continue\n\n\t\t\tif( view instanceof $mol_dom_context.Node ) {\n\t\t\t\t\n\t\t\t\twhile( true ) {\n\t\t\t\t\tif( !nextNode ) {\n\t\t\t\t\t\tel.appendChild( view )\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t\tif( nextNode == view ) {\n\t\t\t\t\t\tnextNode = nextNode.nextSibling\n\t\t\t\t\t\tbreak\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif( node_set.has( nextNode ) ) {\n\t\t\t\t\t\t\tel.insertBefore( view , nextNode )\n\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst nn = nextNode.nextSibling\n\t\t\t\t\t\t\tel.removeChild( nextNode )\n\t\t\t\t\t\t\tnextNode = nn\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} else {\n\t\t\t\tif( nextNode && nextNode.nodeName === '#text' ) {\n\t\t\t\t\tconst str = String( view )\n\t\t\t\t\tif( nextNode.nodeValue !== str ) nextNode.nodeValue = str\n\t\t\t\t\tnextNode = nextNode.nextSibling\n\t\t\t\t} else {\n\t\t\t\t\tconst textNode = $mol_dom_context.document.createTextNode( String( view ) )\n\t\t\t\t\tel.insertBefore( textNode , nextNode )\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\twhile( nextNode ) {\n\t\t\tconst currNode = nextNode\n\t\t\tnextNode = currNode.nextSibling\n\t\t\tel.removeChild( currNode )\n\t\t}\n\t}\n\n}\n","namespace $ {\n\t\n\texport function $mol_dom_render_fields (\n\t\tel : Element ,\n\t\tfields : { [ key : string ] : any }\n\t) {\n\t\tfor( let key in fields ) {\n\t\t\t\n\t\t\tconst val : any = fields[ key ]\n\t\t\t\n\t\t\tif( val === undefined ) continue\n\t\t\t\n\t\t\t(el as any)[ key ] = val\n\t\t}\n\t}\n\n}\n","namespace $ {\n\t\n\t/** Convert a pseudo-synchronous (Suspense API) API to an explicit asynchronous one (for integrating with external systems). */\n\texport function $mol_wire_async< Host extends object >( obj: Host ) {\n\t\t\n\t\tlet fiber: $mol_wire_fiber< any, any, any >\n\t\tconst temp = $mol_wire_task.getter( obj as ( ... args: any[] )=> any )\n\t\t\n\t\treturn new Proxy( obj, {\n\t\t\t\n\t\t\tget( obj, field ) {\n\t\t\t\t\n\t\t\t\tconst val = (obj as any)[ field ]\n\t\t\t\tif( typeof val !== 'function' ) return val\n\t\t\t\t\n\t\t\t\tlet fiber: $mol_wire_fiber< any, any, any >\n\t\t\t\tconst temp = $mol_wire_task.getter( val ) \n\t\t\t\t\n\t\t\t\treturn function $mol_wire_async( this: Host, ... args: any[] ) {\n\t\t\t\t\tfiber?.destructor()\n\t\t\t\t\tfiber = temp( obj, args )\n\t\t\t\t\treturn fiber.async()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t},\n\t\t\t\n\t\t\tapply( obj, self, args ) {\n\t\t\t\tfiber?.destructor()\n\t\t\t\tfiber = temp( self, args )\n\t\t\t\treturn fiber.async()\n\t\t\t},\n\t\t\t\n\t\t} ) as unknown as ObjectOrFunctionResultPromisify\n\t\t\n\t}\n\n\ttype FunctionResultPromisify = Some extends (...args: infer Args) => infer Res\n\t\t? Res extends PromiseLike ? Some : (...args: Args) => Promise\n\t\t: Some\n\n\ttype MethodsResultPromisify = {\n\t\t[K in keyof Host]: FunctionResultPromisify\n\t}\n\n\ttype ObjectOrFunctionResultPromisify = (\n\t\tSome extends (...args: any) => unknown ? FunctionResultPromisify : {}\n\t) & ( Some extends Object ? MethodsResultPromisify : Some )\n\n}\n","namespace $ {\n\n\tlet all = [] as string[]\n\tlet el : HTMLStyleElement | null = null\n\tlet timer : $mol_after_tick | null = null\n\n\texport function $mol_style_attach_force() {\n\t\tif( all.length ) {\n\t\t\tel!.innerHTML += '\\n' + all.join( '\\n\\n' )\n\t\t\tall = []\n\t\t}\n\t\ttimer = null\n\t\treturn el!\n\t}\n\t\n\texport function $mol_style_attach(\n\t\tid : string ,\n\t\ttext : string ,\n\t) {\n\n\t\tall.push( `/* ${ id } */\\n\\n${ text }`)\n\n\t\tif( timer ) return el!\n\t\t\n\t\tconst doc = $mol_dom_context.document\n\t\tif( !doc ) return null\n\n\t\tel = doc.createElement('style')\n\t\tel.id = `$mol_style_attach`\n\t\tdoc.head.appendChild( el )\n\n\t\ttimer = new $mol_after_tick( $mol_style_attach_force )\n\n\t\treturn el\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_decor< Value > {\n\t\t\n\t\tconstructor(\n\t\t\treadonly value : Value\n\t\t) {}\n\n\t\tprefix() { return '' }\n\t\tvalueOf() { return this.value }\n\t\tpostfix() { return '' }\n\n\t\ttoString(){\n\t\t\treturn `${ this.prefix() }${ this.valueOf() }${ this.postfix() }`\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\t\n\texport type $mol_style_unit_length =\n\t| '%'\n\t| 'px' | 'cm' | 'mm' | 'Q' | 'in' | 'pc' | 'pt'\n\t| 'cap' | 'ch' | 'em' | 'rem' | 'ex' | 'ic' | 'lh' | 'rlh'\n\t| 'vh' | 'vw' | 'vi' | 'vb' | 'vmin' | 'vmax'\n\t\n\texport type $mol_style_unit_angle = 'deg' | 'rad' | 'grad' | 'turn'\n\t\n\texport type $mol_style_unit_time = 's' | 'ms'\n\n\texport type $mol_style_unit_any = $mol_style_unit_length | $mol_style_unit_angle | $mol_style_unit_time\n\n\texport type $mol_style_unit_str< Quanity extends $mol_style_unit_any = $mol_style_unit_any> = `${number}${Quanity}`\n\n\t/**\n\t * CSS Units\n\t * @see https://mol.hyoo.ru/#!section=docs/=xwq9q5_f966fg\n\t */\n\texport class $mol_style_unit<\n\t\tLiteral extends $mol_style_unit_any\n\t> extends $mol_decor< number > {\n\n\t\tconstructor(\n\t\t\tvalue : number,\n\t\t\treadonly literal : Literal,\n\t\t) {\n\t\t\tsuper( value )\n\t\t}\n\n\t\tpostfix() {\n\t\t\treturn this.literal\n\t\t}\n\n\t\tstatic per( value : number ) { return `${value}%` as const }\n\t\tstatic px( value : number ) { return `${ value }px` as const }\n\t\tstatic mm( value : number ) { return `${value}mm` as const }\n\t\tstatic cm( value : number ) { return `${value}cm` as const }\n\t\tstatic Q( value : number ) { return `${value}Q` as const }\n\t\tstatic in( value : number ) { return `${value}in` as const }\n\t\tstatic pc( value : number ) { return `${value}pc` as const }\n\t\tstatic pt( value : number ) { return `${value}pt` as const }\n\t\tstatic cap( value : number ) { return `${value}cap` as const }\n\t\tstatic ch( value : number ) { return `${value}ch` as const }\n\t\tstatic em( value : number ) { return `${value}em` as const }\n\t\tstatic rem( value : number ) { return `${value}rem` as const }\n\t\tstatic ex( value : number ) { return `${value}ex` as const }\n\t\tstatic ic( value : number ) { return `${value}ic` as const }\n\t\tstatic lh( value : number ) { return `${value}lh` as const }\n\t\tstatic rlh( value : number ) { return `${value}rlh` as const }\n\t\tstatic vh( value : number ) { return `${value}vh` as const }\n\t\tstatic vw( value : number ) { return `${value}vw` as const }\n\t\tstatic vi( value : number ) { return `${value}vi` as const }\n\t\tstatic vb( value : number ) { return `${value}vb` as const }\n\t\tstatic vmin( value : number ) { return `${value}vmin` as const }\n\t\tstatic vmax( value : number ) { return `${value}vmax` as const }\n\t\t\n\t\tstatic deg( value : number ) { return `${value}deg` as const }\n\t\tstatic rad( value : number ) { return `${value}rad` as const }\n\t\tstatic grad( value : number ) { return `${value}grad` as const }\n\t\tstatic turn( value : number ) { return `${value}turn` as const }\n\n\t\tstatic s( value : number ) { return `${value}s` as const }\n\t\tstatic ms( value : number ) { return `${value}ms` as const }\n\t\n\t}\n\n}\n","namespace $ {\n\n\texport type $mol_style_func_name =\n\t| 'calc'\n\t| 'hsla'\n\t| 'rgba'\n\t| 'var'\n\t| 'clamp'\n\t| 'scale'\n\t| 'cubic-bezier'\n\t| 'linear'\n\t| 'steps'\n\t| $mol_style_func_image\n\t| $mol_style_func_filter\n\t\n\texport type $mol_style_func_image =\n\t| 'url'\n\t| 'linear-gradient'\n\t| 'radial-gradient'\n\t| 'conic-gradient'\n\t\n\texport type $mol_style_func_filter =\n\t| 'blur'\n\t| 'brightness'\n\t| 'contrast'\n\t| 'drop-shadow'\n\t| 'grayscale'\n\t| 'hue-rotate'\n\t| 'invert'\n\t| 'opacity'\n\t| 'sepia'\n\t| 'saturate'\n\n\tconst { per } = $mol_style_unit\n\t\n\t/**\n\t * CSS Functions\n\t * @see https://mol.hyoo.ru/#!section=docs/=xwq9q5_f966fg\n\t */\n\texport class $mol_style_func<\n\t\tName extends $mol_style_func_name ,\n\t\tValue = unknown,\n\t> extends $mol_decor< Value > {\n\n\t\tconstructor(\n\t\t\treadonly name : Name,\n\t\t\tvalue : Value,\n\t\t) {\n\t\t\tsuper( value )\n\t\t}\n\n\t\tprefix() { return this.name + '(' }\n\t\tpostfix() { return ')' }\n\n\t\tstatic linear_gradient< Value >( value : Value ) {\n\t\t\treturn new $mol_style_func( 'linear-gradient' , value )\n\t\t}\n\n\t\tstatic calc< Value >( value : Value ) {\n\t\t\treturn new $mol_style_func( 'calc' , value )\n\t\t}\n\n\t\tstatic vary< Name extends string, Value extends string >( name : Name, defaultValue? : Value ) {\n\t\t\treturn new $mol_style_func( 'var' , defaultValue ? [name, defaultValue] : name )\n\t\t}\n\n\t\tstatic url< Href extends string >( href : Href ) {\n\t\t\treturn new $mol_style_func( 'url' , JSON.stringify( href ) )\n\t\t}\n\n\t\tstatic hsla(\n\t\t\thue: number,\n\t\t\tsaturation: number,\n\t\t\tlightness: number,\n\t\t\talpha: number,\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t'hsla',\n\t\t\t\t[ hue , per( saturation ) , per( lightness ) , alpha ],\n\t\t\t)\n\t\t}\n\t\n\t\tstatic clamp(\n\t\t\tmin: $mol_style_unit_str< any >,\n\t\t\tmid: $mol_style_unit_str< any >,\n\t\t\tmax: $mol_style_unit_str< any >,\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t'clamp',\n\t\t\t\t[ min, mid, max ],\n\t\t\t)\n\t\t}\n\t\n\t\tstatic rgba(\n\t\t\tred: number,\n\t\t\tgreen: number,\n\t\t\tblue: number,\n\t\t\talpha: number,\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t'rgba',\n\t\t\t\t[ red , green , blue , alpha ],\n\t\t\t)\n\t\t}\n\t\n\t\tstatic scale(\n\t\t\tzoom: number,\n\t\t) {\n\t\t\treturn new $mol_style_func( 'scale', [ zoom ] )\n\t\t}\n\t\t\n\t\tstatic linear(\n\t\t\t...breakpoints : Array]>\n\t\t){\n\t\t\treturn new $mol_style_func(\n\t\t\t\t\"linear\",\n\t\t\t\tbreakpoints.map((e) =>\n\t\t\t\t\tArray.isArray(e)\n\t\t\t\t\t\t? String(e[0]) +\n\t\t\t\t\t\t \" \" +\n\t\t\t\t\t\t (typeof e[1] === \"number\" ? e[1] + \"%\" : e[1].toString())\n\t\t\t\t\t\t: String(e)\n\t\t\t\t)\n\t\t\t);\n\t\t}\n\t\t\n\t\tstatic cubic_bezier(\n\t\t\tx1: number,\n\t\t\ty1: number,\n\t\t\tx2: number,\n\t\t\ty2: number\n\t\t){\n\t\t\treturn new $mol_style_func( 'cubic-bezier', [ x1, y1, x2, y2 ]);\n\t\t}\n\t\t\n\t\tstatic steps(value: number, step_position: 'jump-start' | 'jump-end' | 'jump-none' | 'jump-both' | 'start' | 'end'){\n\t\t\treturn new $mol_style_func( 'steps', [ value, step_position ] )\n\t\t}\n\t\t\n\t\tstatic blur(value?: $mol_style_unit_str<$mol_style_unit_length>){\n\t\t\treturn new $mol_style_func( 'blur', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic brightness(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'brightness', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic contrast(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'contrast', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic drop_shadow(\n\t\t\tcolor: $mol_style_properties_color,\n\t\t\tx_offset: $mol_style_unit_str<$mol_style_unit_length>,\n\t\t\ty_offset: $mol_style_unit_str<$mol_style_unit_length>,\n\t\t\tblur_radius?: $mol_style_unit_str<$mol_style_unit_length>\n\t\t) {\n\t\t\treturn new $mol_style_func(\n\t\t\t\t\"drop-shadow\",\n\t\t\t\tblur_radius\n\t\t\t\t\t? [color, x_offset, y_offset, blur_radius]\n\t\t\t\t\t: [color, x_offset, y_offset]\n\t\t\t);\n\t\t}\n\t\t\n\t\tstatic grayscale(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'grayscale', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic hue_rotate(value?: 0 | $mol_style_unit_str<$mol_style_unit_angle>){\n\t\t\treturn new $mol_style_func( 'hue-rotate', value ?? \"\")\n\t\t}\n\t\t\n\t\tstatic invert(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'invert', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic opacity(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'opacity', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic sepia(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'sepia', value ?? \"\" );\n\t\t}\n\t\t\n\t\tstatic saturate(value?: number | $mol_style_unit_str<'%'>){\n\t\t\treturn new $mol_style_func( 'saturate', value ?? \"\" );\n\t\t}\n\t\n\t}\n\n}\n","namespace $ {\n\t\n\texport type $mol_style_prop_result =\n\t\tRecord<\n\t\t\tstring ,\n\t\t\t$mol_style_func< 'var' >\n\t\t>\n\t\n\t/** Create record of CSS variables. */\n\texport function $mol_style_prop(\n\t\tprefix : string ,\n\t\tpostfixes : Array< string >\n\t) {\n\t\t\n\t\tconst record = postfixes.reduce( ( record_obj , postfix )=> {\n\t\t\t\n\t\t\trecord_obj[ postfix ] = $mol_style_func.vary( `--${ prefix }_${ postfix }` )\n\t\t\treturn record_obj\n\t\t\t\n\t\t}, {} as $mol_style_prop_result )\n\t\t\n\t\treturn record\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Theme css variables\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_textarea_demo\n\t */\t\n\texport const $mol_theme = $mol_style_prop(\n\t\t'mol_theme',\n\t\t[\n\t\t\t'back',\n\t\t\t'hover',\n\t\t\t'card',\n\t\t\t'current',\n\t\t\t'special',\n\t\t\t'text',\n\t\t\t'control',\n\t\t\t'shade',\n\t\t\t'line',\n\t\t\t'focus',\n\t\t\t'field',\n\t\t\t'image',\n\t\t]\n\t)\n\n}\n","namespace $ { $mol_style_attach( \"mol/theme/theme.css\",\n \":root {\\n\\t--mol_theme_hue: 210deg;\\n\\t--mol_theme_hue_spread: 90deg;\\n}\\n\\n:where([mol_theme]) {\\n\\tcolor: var(--mol_theme_text);\\n\\tfill: var(--mol_theme_text);\\n\\tbackground-color: var(--mol_theme_back);\\n}\\n\\t\\n:root, [mol_theme=\\\"$mol_theme_dark\\\"], :where([mol_theme=\\\"$mol_theme_dark\\\"]) [mol_theme] {\\n\\n\\t--mol_theme_luma: -1;\\n\\t--mol_theme_image: invert(1) hue-rotate( 180deg );\\n\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 20%, 10% );\\n\\t--mol_theme_card: hsl( var(--mol_theme_hue), 50%, 20%, .25 );\\n\\t--mol_theme_field: hsl( var(--mol_theme_hue), 50%, 8%, .25 );\\n\\t--mol_theme_hover: hsl( var(--mol_theme_hue), 0%, 50%, .1 );\\n\\t\\n\\t--mol_theme_text: hsl( var(--mol_theme_hue), 0%, 80% );\\n\\t--mol_theme_shade: hsl( var(--mol_theme_hue), 0%, 60%, 1 );\\n\\t--mol_theme_line: hsl( var(--mol_theme_hue), 0%, 50%, .2 );\\n\\t--mol_theme_focus: hsl( calc( var(--mol_theme_hue) + 180deg ), 100%, 65% );\\n\\t\\n\\t--mol_theme_control: hsl( var(--mol_theme_hue), 60%, 65% );\\n\\t--mol_theme_current: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 60%, 65% );\\n\\t--mol_theme_special: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 60%, 65% );\\n\\n\\t/* --mol_theme_back: oklch( 20% .03 var(--mol_theme_hue) );\\n\\t--mol_theme_card: oklch( 35% .05 var(--mol_theme_hue) / .25 );\\n\\t--mol_theme_field: oklch( 0% 0 var(--mol_theme_hue) / .25 );\\n\\t--mol_theme_hover: oklch( 70% 0 var(--mol_theme_hue) / .1 );\\n\\t\\n\\t--mol_theme_text: oklch( 80% 0 var(--mol_theme_hue) );\\n\\t--mol_theme_shade: oklch( 60% 0 var(--mol_theme_hue) );\\n\\t--mol_theme_line: oklch( 50% 0 var(--mol_theme_hue) / .2 );\\n\\t--mol_theme_focus: oklch( 80% .2 calc( var(--mol_theme_hue) + 120deg ) );\\n\\t\\n\\t--mol_theme_control: oklch( 70% .1 var(--mol_theme_hue) );\\n\\t--mol_theme_current: oklch( 80% .2 calc( var(--mol_theme_hue) - 60deg ) );\\n\\t--mol_theme_special: oklch( 80% .3 calc( var(--mol_theme_hue) + 60deg ) ); */\\n\\n}\\n\\n[mol_theme=\\\"$mol_theme_light\\\"], :where([mol_theme=\\\"$mol_theme_light\\\"]) [mol_theme] {\\n\\t\\n\\t--mol_theme_luma: 1;\\n\\t--mol_theme_image: none;\\n\\t\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 20%, 92% );\\n\\t--mol_theme_card: hsl( var(--mol_theme_hue), 50%, 100%, .5 );\\n\\t--mol_theme_field: hsl( var(--mol_theme_hue), 50%, 100%, .75 );\\n\\t--mol_theme_hover: hsl( var(--mol_theme_hue), 0%, 50%, .1 );\\n\\t\\n\\t--mol_theme_text: hsl( var(--mol_theme_hue), 0%, 0% );\\n\\t--mol_theme_shade: hsl( var(--mol_theme_hue), 0%, 40%, 1 );\\n\\t--mol_theme_line: hsl( var(--mol_theme_hue), 0%, 50%, .2 );\\n\\t--mol_theme_focus: hsl( calc( var(--mol_theme_hue) + 180deg ), 100%, 40% );\\n\\t\\n\\t--mol_theme_control: hsl( var(--mol_theme_hue), 80%, 30% );\\n\\t--mol_theme_current: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 80%, 30% );\\n\\t--mol_theme_special: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 80%, 30% );\\n\\t\\n\\t/* --mol_theme_back: oklch( 93% .01 var(--mol_theme_hue) );\\n\\t--mol_theme_card: oklch( 100% .02 var(--mol_theme_hue) / .25 );\\n\\t--mol_theme_field: oklch( 100% 0 var(--mol_theme_hue) / .5 );\\n\\t--mol_theme_hover: oklch( 70% 0 var(--mol_theme_hue) / .1 );\\n\\t\\n\\t--mol_theme_text: oklch( 20% 0 var(--mol_theme_hue) );\\n\\t--mol_theme_shade: oklch( 60% 0 var(--mol_theme_hue) );\\n\\t--mol_theme_line: oklch( 70% 0 var(--mol_theme_hue) / .2 );\\n\\t--mol_theme_focus: oklch( 20% .8 calc( var(--mol_theme_hue) + 120deg ) );\\n\\t\\n\\t--mol_theme_control: oklch( 45% .25 var(--mol_theme_hue) );\\n\\t--mol_theme_current: oklch( 45% .5 calc( var(--mol_theme_hue) - 60deg ) );\\n\\t--mol_theme_special: oklch( 45% .5 calc( var(--mol_theme_hue) + 60deg ) ); */\\n\\n}\\n\\n:where( :root, [mol_theme=\\\"$mol_theme_dark\\\"] ) [mol_theme=\\\"$mol_theme_base\\\"] {\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 50%, 30% );\\n\\t--mol_theme_card: hsl( var(--mol_theme_hue), 40%, 20%, .25 );\\n\\t/* --mol_theme_back: oklch( 25% .05 var(--mol_theme_hue) );\\n\\t--mol_theme_card: oklch( 35% .1 var(--mol_theme_hue) / .25 ); */\\n}\\n:where( [mol_theme=\\\"$mol_theme_light\\\"] ) [mol_theme=\\\"$mol_theme_base\\\"] {\\n\\t--mol_theme_back: hsl( var(--mol_theme_hue), 50%, 80% );\\n\\t--mol_theme_card: hsl( var(--mol_theme_hue), 80%, 95%, .25 );\\n\\t/* --mol_theme_back: oklch( 95% .02 var(--mol_theme_hue) );\\n\\t--mol_theme_card: oklch( 80% .05 var(--mol_theme_hue) / .25 ); */\\n}\\n\\n:where( :root, [mol_theme=\\\"$mol_theme_dark\\\"] ) [mol_theme=\\\"$mol_theme_accent\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) + 180deg ), 90%, 30% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) + 180deg ), 80%, 20%, .25 );\\n\\t/* --mol_theme_back: oklch( 40% .2 calc( var(--mol_theme_hue) + 120deg ) );\\n\\t--mol_theme_card: oklch( 50% .3 calc( var(--mol_theme_hue) + 120deg ) / .25 ); */\\n}\\n:where( [mol_theme=\\\"$mol_theme_light\\\"] ) [mol_theme=\\\"$mol_theme_accent\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) + 180deg ), 90%, 75% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) + 180deg ), 80%, 90%, .25 );\\n\\t/* --mol_theme_back: oklch( 90% .03 calc( var(--mol_theme_hue) + 120deg ) );\\n\\t--mol_theme_card: oklch( 80% .05 calc( var(--mol_theme_hue) + 120deg ) / .25 ); */\\n}\\n\\n:where( :root, [mol_theme=\\\"$mol_theme_dark\\\"] ) [mol_theme=\\\"$mol_theme_current\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 50%, 30% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 40%, 20%, .25 );\\n\\t/* --mol_theme_back: oklch( 25% .05 calc( var(--mol_theme_hue) - 60deg ) );\\n\\t--mol_theme_card: oklch( 35% .1 calc( var(--mol_theme_hue) - 60deg ) / .25 ); */\\n}\\n:where( [mol_theme=\\\"$mol_theme_light\\\"] ) [mol_theme=\\\"$mol_theme_current\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 50%, 92% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) - var(--mol_theme_hue_spread) ), 80%, 100%, .5 );\\n\\t/* --mol_theme_back: oklch( 95% .02 calc( var(--mol_theme_hue) - 60deg ) );\\n\\t--mol_theme_card: oklch( 80% .05 calc( var(--mol_theme_hue) - 60deg ) / .25 ); */\\n}\\n\\n:where( :root, [mol_theme=\\\"$mol_theme_dark\\\"] ) [mol_theme=\\\"$mol_theme_special\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 50%, 30% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 40%, 20%, .25 );\\n\\t/* --mol_theme_back: oklch( 25% .05 calc( var(--mol_theme_hue) + 60deg ) );\\n\\t--mol_theme_card: oklch( 35% .1 calc( var(--mol_theme_hue) + 60deg ) / .25 ); */\\n}\\n:where( [mol_theme=\\\"$mol_theme_light\\\"] ) [mol_theme=\\\"$mol_theme_special\\\"] {\\n\\t--mol_theme_back: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 50%, 92% );\\n\\t--mol_theme_card: hsl( calc( var(--mol_theme_hue) + var(--mol_theme_hue_spread) ), 80%, 100%, .5 );\\n\\t/* --mol_theme_back: oklch( 95% .02 calc( var(--mol_theme_hue) + 60deg ) );\\n\\t--mol_theme_card: oklch( 80% .05 calc( var(--mol_theme_hue) + 60deg ) / .25 ); */\\n}\\n\"\n) }","namespace $ {\n\n\t/**\n\t * Gap in CSS\n\t * @see https://page.hyoo.ru/#!=msdb74_bm7nsq\n\t */\n\texport let $mol_gap = $mol_style_prop(\n\t\t'mol_gap',\n\t\t[\n\t\t\t'block',\n\t\t\t'text',\n\t\t\t'round',\n\t\t\t'space',\n\t\t\t'blur',\n\t\t]\n\t)\n\n}\n","namespace $ { $mol_style_attach( \"mol/gap/gap.css\",\n \":root {\\n\\t--mol_gap_block: .75rem;\\n\\t--mol_gap_text: .5rem .75rem;\\n\\t--mol_gap_round: .25rem;\\n\\t--mol_gap_space: .25rem;\\n\\t--mol_gap_blur: .5rem;\\n}\\n\"\n) }","namespace $ {\n\n\texport type $mol_view_content = $mol_view|Node|string|number|boolean\n\t\n\texport function $mol_view_visible_width() {\n\t\treturn $mol_window.size().width\n\t}\n\t\n\texport function $mol_view_visible_height() {\n\t\treturn $mol_window.size().height\n\t}\n\t\n\texport function $mol_view_state_key( suffix : string ) {\n\t\treturn suffix\n\t}\n\t\n\tconst error_showed = new WeakMap< Error, $mol_view >()\n\n\t/**\n\t * The base class for all visual components. It provides the infrastructure for reactive lazy rendering, handling exceptions.\n\t * @see https://mol.hyoo.ru/#!section=docs/=vv2nig_s5zr0f\n\t */\n\t/// Reactive statefull lazy ViewModel\n\texport class $mol_view extends $mol_object {\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic Root< This extends typeof $mol_view >( this : This , id: number ) {\n\t\t\treturn new this as InstanceType< This >\n\t\t}\n\n\t\t@ $mol_mem\n\t\tautorun() {\n\t\t\ttry {\n\t\t\t\tthis.dom_tree()\n\t\t\t\tdocument.title = this.title()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t}\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic autobind() {\n\t\t\t\n\t\t\tconst nodes = $mol_dom_context.document.querySelectorAll( '[mol_view_root]:not([mol_view_root=\"\"])' )\n\t\t\t\n\t\t\tfor( let i = nodes.length - 1 ; i >= 0 ; --i ) {\n\n\t\t\t\tconst name = nodes.item( i ).getAttribute( 'mol_view_root' )!\n\t\t\t\t\n\t\t\t\tconst View = ($ as any)[ name ] as typeof $mol_view\n\t\t\t\tif( !View ) {\n\t\t\t\t\tconsole.error( `Can not attach view. Class not found: ${ name }` )\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tconst view = View.Root( i )\n\t\t\t\tview.dom_node( nodes.item( i ) )\n\t\t\t\tview.autorun()\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\ttitle() {\n\t\t\treturn this.toString().match( /.*\\.(\\w+)/ )?.[1] ?? this.toString()\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tfocused( next?: boolean ) {\n\t\t\tlet node = this.dom_node()\n\t\t\tconst value = $mol_view_selection.focused( next === undefined ? undefined : ( next ? [ node ] : [] ) )\n\t\t\treturn value.indexOf( node ) !== -1\n\t\t}\n\t\t\n\t\tstate_key( suffix = '' ) {\n\t\t\treturn this.$.$mol_view_state_key( suffix )\n\t\t}\n\t\t\n\t\t/// Name of element that created when element not found in DOM\n\t\t@ $mol_memo.method\n\t\tdom_name() {\n\t\t\treturn $mol_dom_qname( this.constructor.toString() ) || 'div'\n\t\t}\n\t\t\n\t\t/// NameSpace of element that created when element not found in DOM\n\t\tdom_name_space() { return 'http://www.w3.org/1999/xhtml' }\n\t\t\n\t\t/// Raw child views\n\t\tsub() {\n\t\t\treturn [] as readonly ($mol_view|Node|string|number|boolean)[]\n\t\t}\n\t\t\n\t\t/// Visible sub views with defined ambient context\n\t\t/// Render all by default\n\t\tsub_visible() {\n\t\t\treturn this.sub()\n\t\t}\n\t\t\n\t\t/// Minimal width that used for lazy rendering\n\t\t@ $mol_mem\n\t\tminimal_width() {\n\t\t\t\n\t\t\tlet min = 0\n\t\t\ttry {\n\t\t\t\t\n\t\t\t\tconst sub = this.sub()\n\t\t\t\tif( !sub ) return 0\n\t\t\t\t\n\t\t\t\tsub.forEach( view => {\n\t\t\t\t\tif( view instanceof $mol_view ) {\n\t\t\t\t\t\tmin = Math.max( min , view.minimal_width() )\n\t\t\t\t\t}\n\t\t\t\t} )\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn 24\n\t\t\t}\n\t\t\n\t\t\treturn min\n\t\t}\n\t\t\n\t\tmaximal_width() {\n\t\t\treturn this.minimal_width()\n\t\t}\n\t\t\n\t\t/// Minimal height that used for lazy rendering\n\t\t@ $mol_mem\n\t\tminimal_height() {\n\t\t\t\n\t\t\tlet min = 0\n\t\t\ttry {\n\t\t\t\t\n\t\t\t\tfor( const view of this.sub() ?? [] ) {\n\n\t\t\t\t\tif( view instanceof $mol_view ) {\n\t\t\t\t\t\tmin = Math.max( min , view.minimal_height() )\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t \n\t\t\t} catch( error: any ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn 24\n\t\t\t}\n\n\t\t\treturn min\n\t\t}\n\n\t\tstatic watchers = new Set< $mol_view >()\n\n\t\t@ $mol_mem\n\t\tview_rect() {\n\t\t\tif( $mol_wire_probe( ()=> this.view_rect() ) === undefined ) {\n\t\t\t\t$mol_wire_watch()\n\t\t\t\treturn null // don't touch DOM to prevent instant reflow\n\t\t\t} else {\n\t\t\t\tconst { width, height, left, right, top, bottom } = this.dom_node().getBoundingClientRect()\n\t\t\t\treturn { width, height, left, right, top, bottom } // pick to optimize compare\n\t\t\t}\n\t\t}\n\n\t\t@ $mol_memo.method\n\t\tdom_id() {\n\t\t\treturn this.toString().replace( //g, ')' ).replaceAll( /\"/g, \"'\" )\n\t\t}\n\t\n\t\tdom_node_external( next?: Element) {\n\t\t\tconst node = next ?? $mol_dom_context.document.createElementNS( this.dom_name_space() , this.dom_name() )\n\n\t\t\tconst id = this.dom_id()\n\t\t\tnode.setAttribute( 'id' , id )\n\t\t\tnode.toString = $mol_const( '<#' + id + '>' )\n\n\t\t\treturn node\n\t\t}\n\n\t\t@ $mol_mem\n\t\tdom_node( next? : Element ) {\n\t\t\t$mol_wire_solid()\n\t\t\tconst node = this.dom_node_external( next )\n\t\t\t$mol_dom_render_attributes( node , this.attr_static() )\n\t\t\t\n\t\t\tconst events = this.event_async()\n\t\t\t$mol_dom_render_events(node, events)\n\n\t\t\treturn node\n\t\t}\n\n\t\t@ $mol_mem\n\t\tdom_final() {\n\t\t\t\n\t\t\tthis.render()\n\t\t\t\n\t\t\tconst sub = this.sub_visible()\n\t\t\tif( !sub ) return\n\t\t\t\n\t\t\tfor( const el of sub ) {\n\t\t\t\tif( el && typeof el === 'object' && 'dom_final' in el ) {\n\t\t\t\t\tel['dom_final']()\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn this.dom_node()\n\t\t\t\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tdom_tree( next? : Element ) : Element {\n\t\t\tconst node = this.dom_node( next )\n\t\t\t\n\t\t\trender: try {\n\n\t\t\t\t$mol_dom_render_attributes( node , { mol_view_error : null } )\n\n\t\t\t\ttry {\n\t\t\t\t\n\t\t\t\t\tthis.render()\n\t\t\t\t\t\n\t\t\t\t} finally {\n\t\t\t\t\t\n\t\t\t\t\tfor( let plugin of this.plugins() ) {\n\t\t\t\t\t\tif( plugin instanceof $mol_plugin ) {\n\t\t\t\t\t\t\tplugin.dom_tree()\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\tconst mol_view_error = $mol_promise_like(error) ? 'Promise' : error.name || error.constructor.name\n\t\t\t\t$mol_dom_render_attributes( node , { mol_view_error } )\n\t\t\t\t\n\t\t\t\tif( $mol_promise_like( error ) ) break render\n\t\t\t\tif( ( error_showed.get( error ) ?? this ) !== this ) break render\n\t\t\t\t\n\t\t\t\ttry {\n\t\t\t\t\tconst message = error.message || error\n\t\t\t\t\t;( node as HTMLElement ).innerText = message.replace( /^|$/mg, '\\xA0\\xA0' )\n\t\t\t\t} catch {}\n\t\t\t\t\n\t\t\t\terror_showed.set( error, this )\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\ttry {\n\t\t\t\tthis.auto()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t}\n\t\t\t\t\n\t\t\treturn node\n\t\t}\n\n\t\t@ $mol_mem\n\t\tdom_node_actual() {\n\t\t\tconst node = this.dom_node()\n\n\t\t\t$mol_dom_render_styles( node, this.style_size() )\n\n\t\t\tconst attr = this.attr()\n\t\t\tconst style = this.style()\n\n\t\t\t$mol_dom_render_attributes( node , attr )\n\t\t\t$mol_dom_render_styles( node , style )\n\n\t\t\treturn node\n\t\t}\n\t\t\n\t\tauto() {\n\t\t\treturn null as any\n\t\t}\n\n\t\t@ $mol_mem\n\t\trender() {\n\n\t\t\tconst node = this.dom_node_actual()\n\n\t\t\tconst sub = this.sub_visible()\n\t\t\tif( !sub ) return\n\t\t\t\n\t\t\tconst nodes = sub.map( child => {\n\t\t\t\tif( child == null ) return null\n\t\t\t\treturn ( child instanceof $mol_view )\n\t\t\t\t\t? child.dom_node()\n\t\t\t\t\t: child instanceof $mol_dom_context.Node\n\t\t\t\t\t? child\n\t\t\t\t\t: String( child )\n\t\t\t})\n\t\t\t\n\t\t\t$mol_dom_render_children( node , nodes )\n\n\t\t\tfor( const el of sub ) if( el && typeof el === 'object' && 'dom_tree' in el ) el['dom_tree']()\n\n\t\t\t$mol_dom_render_fields( node , this.field() )\n\t\t\t\n\t\t}\n\n\t\t@ $mol_memo.method\n\t\tstatic view_classes() {\n\t\t\tconst proto = this.prototype\n\t\t\t\n\t\t\tlet current = proto\n\t\t\tconst classes = [] as ( typeof $mol_view )[]\n\t\t\t\n\t\t\twhile( current ) {\n\t\t\t\tif( current.constructor.name !== classes.at(-1)?.name ) {\n\t\t\t\t\tclasses.push( current.constructor as typeof $mol_view )\n\t\t\t\t}\n\t\t\t\tif(!( current instanceof $mol_view )) break\n\t\t\t\tcurrent = Object.getPrototypeOf( current )\n\t\t\t}\n\t\t\t\n\t\t\treturn classes\n\t\t}\n\t\t\n\t\tstatic _view_names?: Map< string, string[] >\n\t\tstatic view_names( suffix: string ) {\n\t\t\t\n\t\t\tlet cache = Reflect.getOwnPropertyDescriptor( this, '_view_names' )?.value\n\t\t\tif( !cache ) cache = this._view_names = new Map\n\t\t\t\n\t\t\tconst cached = cache.get( suffix )\n\t\t\tif( cached ) return cached\n\t\t\t\n\t\t\tconst names = [] as string[]\n\t\t\tconst suffix2 = '_' + suffix[0].toLowerCase() + suffix.substring(1)\n\t\t\t\n\t\t\tfor( const Class of this.view_classes() ) {\n\t\t\t\tif( suffix in Class.prototype ) names.push( this.$.$mol_func_name( Class ) + suffix2 )\n\t\t\t\telse break\n\t\t\t}\n\t\t\t\n\t\t\tcache.set( suffix, names )\n\t\t\treturn names\n\t\t}\n\t\t\n\t\t@ $mol_memo.method\n\t\tview_names_owned() {\n\t\t\tconst names = [] as string[]\n\t\t\tlet owner = $mol_owning_get( this ) as $mol_wire_fiber< any, any[], any >\n\n\t\t\tif(!( owner?.host instanceof $mol_view )) return names\n\n\t\t\tconst suffix = owner.task.name.trim()\n\t\t\tconst suffix2 = '_' + suffix[0].toLowerCase() + suffix.substring(1)\n\t\t\t\n\t\t\tnames.push( ... ( owner.host.constructor as typeof $mol_view ).view_names( suffix ) )\n\t\t\t\n\t\t\tfor( let prefix of owner.host.view_names_owned() ) {\n\t\t\t\tnames.push( prefix + suffix2 )\n\t\t\t}\n\t\t\t\n\t\t\treturn names\n\t\t}\n\n\t\t@ $mol_memo.method\n\t\tview_names() {\n\t\t\tconst names = new Set< string >()\n\t\t\t\n\t\t\tfor( let name of this.view_names_owned() ) names.add( name )\n\n\t\t\tfor( let Class of ( this.constructor as typeof $mol_view ).view_classes() ) {\n\t\t\t\tconst name = this.$.$mol_func_name( Class )\n\t\t\t\tif( name ) names.add( name )\n\t\t\t}\n\n\t\t\treturn names\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\ttheme( next = null as null | string ) {\n\t\t\treturn next\n\t\t}\n\t\t\n\t\tattr_static() : { [ key : string ] : string|number|boolean|null } {\n\t\t\tlet attrs : any = {}\n\t\t\t\n\t\t\tfor( let name of this.view_names() ) attrs[ name.replace( /\\$/g , '' ).replace( /^(?=\\d)/ , '_' ).toLowerCase() ] = ''\n\t\t\t\n\t\t\treturn attrs\n\t\t}\n\t\t\n\t\tattr() {\n\t\t\treturn {\n\t\t\t\tmol_theme: this.theme() ?? undefined,\n\t\t\t} as {}\n\t\t}\n\t\t\n\t\tstyle_size() {\n\t\t\treturn {\n\t\t\t\tminHeight: this.minimal_height(),\n\t\t\t\tminWidth: this.minimal_width(),\n\t\t\t} as {\n\t\t\t\t[key: string]: string | number;\n\t\t\t}\n\t\t}\n\t\t\n\t\tstyle() : { [ key : string ] : string|number } {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\tfield() : { [ key : string ] : any } {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\tevent() : { [ key : string ] : ( event : Event )=> void } {\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tevent_async() {\n\t\t\treturn { ... $mol_wire_async(this.event()) }\n\t\t}\n\n\t\tplugins() {\n\t\t\treturn [] as readonly $mol_view[]\n\t\t}\n\t\t\n\t\t[ $mol_dev_format_head ]() {\n\t\t\treturn $mol_dev_format_span( {} ,\n\t\t\t\t$mol_dev_format_native( this ) ,\n\t\t\t\t// $mol_dev_format_shade( '/' ) ,\n\t\t\t\t// $mol_dev_format_auto( $mol_wire_cache( this ).sub().cache ) ,\n\t\t\t)\n\t\t}\n\n\t\t/** Deep search view by predicate. */\n\t\t*view_find(\n\t\t\tcheck: ( path : $mol_view, text?: string )=> boolean,\n\t\t\tpath = [] as $mol_view[],\n\t\t): Generator< $mol_view[] > {\n\n\t\t\tif( check( this ) ) return yield [ ... path, this ]\n\t\t\t\n\t\t\ttry {\n\t\t\t\tfor( const item of this.sub() ) {\n\t\t\t\t\tif( item instanceof $mol_view ) {\n\t\t\t\t\t\tyield* item.view_find( check, [ ... path, this ] )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} catch( error: unknown ) {\n\t\t\t\tif( $mol_promise_like( error ) ) $mol_fail_hidden( error )\n\t\t\t\t$mol_fail_log( error )\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\t/** Renders path of views to DOM. */\n\t\tforce_render(\n\t\t\tpath : Set< $mol_view >,\n\t\t) {\n\n\t\t\tconst kids = this.sub()\n\n\t\t\tconst index = kids.findIndex( item => {\n\t\t\t\tif( item instanceof $mol_view ) {\n\t\t\t\t\treturn path.has( item )\n\t\t\t\t} else {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tif( index >= 0 ) {\n\t\t\t\t( kids[ index ] as $mol_view ).force_render( path )\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\t/** Renders view to DOM and scroll to it. */\n\t\tensure_visible( view: $mol_view, align: ScrollLogicalPosition = \"start\" ) {\n\t\t\t\n\t\t\tconst path = this.view_find( v => v === view ).next().value\n\t\t\tthis.force_render( new Set( path ) )\n\t\t\t\n\t\t\ttry {\n\t\t\t\tthis.dom_final()\n\t\t\t} catch(err) {\n\t\t\t\t$mol_fail_log(err)\n\t\t\t}\n\n\t\t\tview.dom_node().scrollIntoView({ block: align })\n\n\t\t}\n\t\t\n\t\tbring() {\n\t\t\t\n\t\t\tconst win = this.$.$mol_dom_context\n\t\t\tif( win.parent !== win.self && !win.document.hasFocus() ) return\n\t\t\t\n\t\t\tnew this.$.$mol_after_frame( ()=> {\n\t\t\t\t\n\t\t\t\tthis.dom_node().scrollIntoView({ block: 'start', inline: 'nearest' })\n\t\t\t\tthis.focused( true )\n\t\t\t\t\n\t\t\t} )\n\t\t\t\n\t\t}\n\n\t\toverride destructor() {\n\t\t\tconst node = $mol_wire_probe(() => this.dom_node())\n\t\t\tif (! node) return\n\n\t\t\tconst events = $mol_wire_probe(() => this.event_async())\n\t\t\tif (! events) return\n\n\t\t\tfor( let event_name in events ) {\n\t\t\t\tnode.removeEventListener(\n\t\t\t\t\tevent_name ,\n\t\t\t\t\tevents[ event_name ]\n\t\t\t\t)\n\t\t\t}\n\t\t}\n\t}\n\n\texport type $mol_view_all = $mol_type_pick< $ , typeof $mol_view >\n\n}\n","namespace $ { $mol_style_attach( \"mol/view/view/view.css\",\n \"[mol_view] {\\n\\ttransition-property: height, width, min-height, min-width, max-width, max-height, transform;\\n\\ttransition-duration: .2s;\\n\\ttransition-timing-function: ease-out;\\n\\t-webkit-appearance: none;\\n\\tbox-sizing: border-box;\\n\\tdisplay: flex;\\n\\tflex-shrink: 0;\\n\\tcontain: style;\\n\\tscrollbar-color: var(--mol_theme_line) transparent;\\n\\tscrollbar-width: thin;\\n}\\t\\n\\n[mol_view]::selection {\\n\\tbackground: var(--mol_theme_line);\\n}\\t\\n\\n[mol_view]::-webkit-scrollbar {\\n\\twidth: .25rem;\\n\\theight: .25rem;\\n}\\n\\n[mol_view]::-webkit-scrollbar-corner {\\n\\tbackground-color: var(--mol_theme_line);\\n}\\n\\n[mol_view]::-webkit-scrollbar-track {\\n\\tbackground-color: transparent;\\n}\\n\\n[mol_view]::-webkit-scrollbar-thumb {\\n\\tbackground-color: var(--mol_theme_line);\\n\\tborder-radius: var(--mol_gap_round);\\n}\\n\\n[mol_view] > * {\\n\\tword-break: inherit;\\n}\\n\\n[mol_view_root] {\\n\\tmargin: 0;\\n\\tpadding: 0;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tbox-sizing: border-box;\\n\\tfont-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\\n\\tfont-size: 1rem;\\n\\tline-height: 1.5rem;\\n\\tbackground: var(--mol_theme_back);\\n\\tcolor: var(--mol_theme_text);\\n\\tcontain: unset; /** Fixes bg ignoring when applied to body on Chrome */\\n\\ttab-size: 4;\\n\\toverscroll-behavior: contain; /** Disable navigation gestures **/\\n}\\n\\n@media print {\\n\\t[mol_view_root] {\\n\\t\\theight: auto;\\n\\t}\\n}\\n\\n[mol_view][mol_view_error]:not([mol_view_error=\\\"Promise\\\"]) {\\n\\tbackground-image: repeating-linear-gradient(\\n\\t\\t-45deg,\\n\\t\\t#f92323,\\n\\t\\t#f92323 .5rem,\\n\\t\\t#ff3d3d .5rem,\\n\\t\\t#ff3d3d 1.5rem\\n\\t);\\n\\tcolor: black;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\\n@keyframes mol_view_wait {\\n\\tfrom {\\n\\t\\topacity: .25;\\n\\t}\\n\\t20% {\\n\\t\\topacity: .75;\\n\\t}\\n\\tto {\\n\\t\\topacity: .25;\\n\\t}\\n}\\n\\n:where([mol_view][mol_view_error=\\\"Promise\\\"]) {\\n\\tbackground: var(--mol_theme_hover);\\n}\\n\\n[mol_view][mol_view_error=\\\"Promise\\\"] {\\n\\tanimation: mol_view_wait 1s steps( 20, end ) infinite;\\n}\\n\"\n) }","$mol_scroll $mol_view\n\tscroll_top? 0\n\tscroll_left? 0\n\tfield *\n\t\t^\n\t\ttabIndex <= tabindex -1\n\tevent *\n\t\t^\n\t\tscroll?event <=> event_scroll?event null\n","namespace $ {\n\n\texport class $mol_dom_listener extends $mol_object {\n\n\t\tconstructor(\n\t\t\tpublic _node : any ,\n\t\t\tpublic _event : string ,\n\t\t\tpublic _handler : ( event : any )=> any ,\n\t\t\tpublic _config : boolean|{ passive : boolean } = { passive : true }\n\t\t) {\n\t\t\tsuper()\n\t\t\tthis._node.addEventListener( this._event , this._handler , this._config )\n\t\t}\n\n\t\tdestructor() {\n\t\t\tthis._node.removeEventListener( this._event , this._handler , this._config )\n\t\t\tsuper.destructor()\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_print extends $mol_object {\n\n\t\t@ $mol_mem\n\t\tstatic before() {\n\t\t\treturn new $mol_dom_listener( this.$.$mol_dom_context , 'beforeprint' , ()=> {\n\t\t\t\tthis.active( true )\n\t\t\t} )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tstatic after() {\n\t\t\treturn new $mol_dom_listener( this.$.$mol_dom_context , 'afterprint' , ()=> {\n\t\t\t\tthis.active( false )\n\t\t\t} )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tstatic active( next? : boolean ) {\n\t\t\tthis.before()\n\t\t\tthis.after()\n\t\t\treturn next || false\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_style_sheet<\n\t\tComponent extends $mol_view,\n\t\tConfig extends $mol_style_guard< Component , Config >,\n\t>(\n\t\tComponent : new()=> Component,\n\t\tconfig0 : Config ,\n\t) {\n\n\t\tlet rules = [] as string[]\n\n\t\tconst block = $mol_dom_qname( $mol_ambient({}).$mol_func_name( Component ) )\n\t\tconst kebab = ( name : string )=> name.replace( /[A-Z]/g , letter => '-' + letter.toLowerCase() )\n\n\t\tconst make_class = ( prefix : string , path : string[] , config : typeof config0 )=> {\n\n\t\t\tconst props = [] as string[]\n\n\t\t\tconst selector = ( prefix : string , path : string[] )=> {\n\t\t\t\tif( path.length === 0 ) return prefix || `[${ block }]`\n\t\t\t\tlet res = `[${ block }_${ path.join('_') }]`\n\t\t\t\tif( prefix ) res = prefix + ' :where(' + res + ')'\n\t\t\t\treturn res\n\t\t\t}\n\t\t\t\n\t\t\tfor( const key of Object.keys( config ).reverse() ) {\n\n\t\t\t\tif( /^(--)?[a-z]/.test(key) ) {\n\t\t\t\t\t\n\t\t\t\t\tconst addProp = ( keys : string[] , val : any )=> {\n\n\t\t\t\t\t\tif( Array.isArray( val ) ) {\n\n\t\t\t\t\t\t\tif( val[0] && [ Array , Object ].includes( val[0].constructor ) ) {\n\t\t\t\t\t\t\t\tval = val.map( v => {\n\t\t\t\t\t\t\t\t\treturn Object.entries( v ).map( ([ n , a ])=> {\n\t\t\t\t\t\t\t\t\t\tif( a === true ) return kebab( n )\n\t\t\t\t\t\t\t\t\t\tif( a === false ) return null\n\t\t\t\t\t\t\t\t\t\treturn String( a )\n\t\t\t\t\t\t\t\t\t} ).filter( Boolean ).join(' ')\n\t\t\t\t\t\t\t\t}).join( ',' )\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tval = val.join(' ')\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tprops.push(`\\t${ keys.join('-') }: ${ val };\\n`)\n\n\t\t\t\t\t\t} else if( val.constructor === Object ) {\n\n\t\t\t\t\t\t\tfor( let suffix in val ) {\n\t\t\t\t\t\t\t\taddProp( [ ... keys , kebab( suffix ) ] , val[ suffix ] )\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\tprops.push(`\\t${ keys.join('-') }: ${ val };\\n`)\n\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\n\t\t\t\t\taddProp( [ kebab(key) ] , (config as any)[key] )\n\n\t\t\t\t} else if( /^[A-Z]/.test(key) ) {\n\n\t\t\t\t\tmake_class( prefix , [ ... path , key.toLowerCase() ] , (config as any)[key] )\n\n\t\t\t\t} else if( key[0] === '$' ) {\n\n\t\t\t\t\tmake_class( selector( prefix , path ) + ' :where([' + $mol_dom_qname( key ) + '])' , [] , (config as any)[key] )\n\n\t\t\t\t} else if( key === '>' ) {\n\n\t\t\t\t\tconst types = config[key] as any\n\n\t\t\t\t\tfor( let type in types ) {\n\t\t\t\t\t\tmake_class( selector( prefix , path ) + ' > :where([' + $mol_dom_qname( type ) + '])' , [] , types[type] )\n\t\t\t\t\t}\n\n\t\t\t\t} else if( key === '@' ) {\n\n\t\t\t\t\tconst attrs = config[key] as any\n\n\t\t\t\t\tfor( let name in attrs ) {\n\t\t\t\t\t\tfor( let val in attrs[name] ) {\n\t\t\t\t\t\t\tmake_class( selector( prefix , path ) + ':where([' + name + '=' + JSON.stringify( val ) + '])' , [] , attrs[name][val] )\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t} else if( key === '@media' ) {\n\n\t\t\t\t\tconst media = (config as any)[key] as any\n\n\t\t\t\t\tfor( let query in media ) {\n\n\t\t\t\t\t\trules.push('}\\n')\n\t\t\t\t\t\t\n\t\t\t\t\t\tmake_class( prefix , path , media[query] )\n\t\t\t\t\t\t\n\t\t\t\t\t\trules.push( `${ key } ${ query } {\\n` )\n\n\t\t\t\t\t}\n\n\t\t\t\t} else if( key[0] === '[' && key[key.length-1] === ']' ) {\n\n\t\t\t\t\tconst attr = key.slice( 1, -1 )\n\t\t\t\t\tconst vals = config[ key as any ] as any as Record< string, any >\n\t\t\t\t\t\n\t\t\t\t\tfor( let val in vals ) {\n\t\t\t\t\t\tmake_class( selector( prefix , path ) + ':where([' + attr + '=' + JSON.stringify( val ) + '])' , [] , vals[val] )\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\t} else {\n\n\t\t\t\t\tmake_class( selector( prefix , path ) + key , [] , (config as any)[key] )\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\tif( props.length ) {\n\t\t\t\trules.push( `${ selector( prefix , path ) } {\\n${ props.reverse().join('') }}\\n` )\n\t\t\t}\n\n\t\t}\n\n\t\tmake_class( '' , [] , config0 )\n\n\t\treturn rules.reverse().join('')\n\n\t}\n\n}\n","namespace $ {\n\n\t/**\n\t * CSS in TS.\n\t * Statically typed CSS style sheets. Following samples show which CSS code are generated from TS code.\n\t * @see https://mol.hyoo.ru/#!section=docs/=xwq9q5_f966fg\n\t */\n\texport function $mol_style_define<\n\t\tComponent extends $mol_view,\n\t\tConfig extends $mol_style_guard< Component , Config >,\n\t>(\n\t\tComponent : new()=> Component,\n\t\tconfig : Config ,\n\t) {\n\n\t\treturn $mol_style_attach(\n\t\t\tComponent.name,\n\t\t\t$mol_style_sheet( Component , config ),\n\t\t)\n\n\t}\n\n}\n","namespace $.$$ {\n\t\n\t/**\n\t * Scrolling pane.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_scroll_demo\n\t */\n\texport class $mol_scroll extends $.$mol_scroll {\n\n\t\t@ $mol_mem\n\t\tscroll_top( next? : number, cache?: 'cache' ): number {\n\t\t\t\n\t\t\tconst el = this.dom_node()\n\t\t\tif( next !== undefined && !cache ) el.scrollTop = next\n\t\t\t\n\t\t\treturn el.scrollTop\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tscroll_left( next? : number, cache?: 'cache' ): number {\n\t\t\t\n\t\t\tconst el = this.dom_node()\n\t\t\tif( next !== undefined && !cache ) el.scrollLeft = next\n\t\t\t\n\t\t\treturn el.scrollLeft\n\t\t}\n\t\t\n\t\tevent_scroll( next? : Event ) {\n\t\t\t\n\t\t\tconst el = this.dom_node() as HTMLElement\n\t\t\t\n\t\t\tthis.scroll_left( el.scrollLeft, 'cache' )\n\t\t\tthis.scroll_top( el.scrollTop, 'cache' )\n\t\t\t\n\t\t}\n\n\t\tminimal_height() {\n\t\t\treturn this.$.$mol_print.active() ? null! : 0\n\t\t}\n\t\t\n\t\tminimal_width() {\n\t\t\treturn this.$.$mol_print.active() ? null! : 0\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $.$$ {\n\n\tconst { per , rem , px } = $mol_style_unit\n\n\t$mol_style_define( $mol_scroll , {\n\n\t\tdisplay: 'grid',\n\t\toverflow: 'auto',\n\t\tflex: {\n\t\t\tdirection: 'column',\n\t\t\tgrow: 1,\n\t\t\tshrink: 1,\n\t\t\t// basis: 0,\n\t\t},\n\t\toutline: 'none',\n\t\talignSelf: 'stretch',\n\t\tboxSizing: 'border-box',\n\t\twillChange: 'scroll-position',\n\t\tscroll: {\n\t\t\tpadding: [ rem(.75), 0 ],\n\t\t},\n\t\tmaxHeight: per(100),\n\t\tmaxWidth: per(100),\n\t\twebkitOverflowScrolling: 'touch',\n\t\tcontain: 'content',\n\n\t\t'>': {\n\t\t\t$mol_view: {\n\t\t\t\ttransform: 'translateZ(0)', // enforce gpu scroll in all agents\n\t\t\t\tgridArea: '1/1',\n\t\t\t},\n\t\t},\n\n\t\t'::before': {\n\t\t\tdisplay: 'none',\n\t\t},\n\t\t'::after': {\n\t\t\tdisplay: 'none',\n\t\t},\n\t\t\n\t\t'::-webkit-scrollbar': {\n\t\t\twidth: rem(.25),\n\t\t\theight: rem(.25),\n\t\t},\n\t\t\n\t\t'@media' : {\n\t\t\t'print' : {\n\t\t\t\toverflow: 'visible',\n\t\t\t\tcontain: 'none',\n\t\t\t\tmaxHeight: 'unset',\n\t\t\t},\n\t\t},\n\n\t})\n\n}\n","$mol_page $mol_view\n\tdom_name \\article\n\tfield *\n\t\t^\n\t\ttabIndex <= tabindex -1\n\tsub /\n\t\t<= Head $mol_view\n\t\t\tminimal_height 64\n\t\t\tdom_name \\header\n\t\t\tsub <= head /\n\t\t\t\t<= Title $mol_view\n\t\t\t\t\tdom_name \\h1\n\t\t\t\t\tsub <= title_content /\n\t\t\t\t\t\t<= Logo null\n\t\t\t\t\t\t<= title\n\t\t\t\t<= Tools $mol_view\n\t\t\t\t\tsub <= tools /$mol_view_content\n\t\t<= Body $mol_scroll\n\t\t\tscroll_top? => body_scroll_top?\n\t\t\tsub <= body_content /\n\t\t\t\t<= Body_content $mol_view\n\t\t\t\t\tsub <= body /$mol_view\n\t\t<= Foot $mol_view\n\t\t\tdom_name \\footer\n\t\t\tsub <= foot /$mol_view\n","namespace $ {\n\t/** Plugin is component without its own DOM element, but instead uses the owner DOM element */\n\texport class $mol_plugin extends $mol_view {\n\n\t\toverride dom_node_external( next? : Element ) {\n\t\t\treturn next ?? $mol_owning_get>( this )!.host!.dom_node()\n\t\t}\n\n\t\toverride render() {\n\t\t\tthis.dom_node_actual()\n\t\t}\n\n\t}\n\n}\n","namespace $.$$ {\n\n\tconst { per , rem } = $mol_style_unit\n\tconst { calc } = $mol_style_func\n\n\t$mol_style_define( $mol_page , {\n\n\t\tdisplay: 'flex' ,\n\t\tflex: {\n\t\t\tbasis: 'auto' ,\n\t\t\tdirection: 'column' ,\n\t\t},\n\t\tposition: 'relative' ,\n\t\talignSelf: 'stretch' ,\n\t\tmaxWidth: per(100) ,\n\t\tmaxHeight: per(100) ,\n\t\tboxSizing: 'border-box' ,\n\t\tcolor: $mol_theme.text ,\n\t\t// zIndex: 0 ,\n\t\t\n\t\t':focus': {\n\t\t\toutline: 'none',\n\t\t} ,\n\n\t\tHead: {\n\t\t\tdisplay: 'flex' ,\n\t\t\tflexWrap: 'wrap' ,\n\t\t\tjustifyContent: 'flex-end' ,\n\t\t\tflex: 'none',\n\t\t\tposition: 'relative' ,\n\t\t\tmargin: 0 ,\n\t\t\tminHeight: rem(4),\n\t\t\tpadding: $mol_gap.block ,\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.card ,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tradius: $mol_gap.round,\n\t\t\t},\n\t\t\tboxShadow: `0 0.5rem 0.5rem -0.5rem hsla(0,0%,0%,.25)` ,\n\t\t\tzIndex: 2,\n\t\t},\n\n\t\tTitle: {\n\n\t\t\tminHeight: rem(2),\n\t\t\tmargin: 0,\n\t\t\tpadding: $mol_gap.text,\n\t\t\tgap: $mol_gap.text,\n\t\t\twordBreak: 'normal',\n\t\t\ttextShadow: '0 0',\n\n\t\t\tfont: {\n\t\t\t\tsize: 'inherit',\n\t\t\t\tweight: 'normal',\n\t\t\t},\n\t\n\t\t\tflex: {\n\t\t\t\tgrow: 1,\n\t\t\t\tshrink: 1,\n\t\t\t\tbasis: 'auto',\n\t\t\t},\n\n\t\t},\n\n\t\tTools: {\n\t\t\t\n\t\t\tflex: {\n\t\t\t\tbasis: 'auto',\n\t\t\t\tgrow: 1000,\n\t\t\t\tshrink: 1,\n\t\t\t},\n\t\t\tdisplay: 'flex',\n\t\t\tjustifyContent: 'flex-end',\n\t\t\talignItems: 'flex-start',\n\t\t\tflexWrap: 'wrap',\n\n\t\t},\n\n\t\tBody: {\n\t\t\tflex: {\n\t\t\t\tgrow: 1000,\n\t\t\t\tshrink: 1,\n\t\t\t\tbasis: per(100),\n\t\t\t},\n\t\t},\n\t\t\n\t\tBody_content: {\n\t\t\tpadding: $mol_gap.block ,\n\t\t\tflex: {\n\t\t\t\tdirection: 'column',\n\t\t\t\tshrink: 1,\n\t\t\t\tgrow: 1,\n\t\t\t},\n\t\t\tjustify: {\n\t\t\t\tself: 'stretch',\n\t\t\t},\n\t\t},\n\t\t\n\t\tFoot: {\n\t\t\tdisplay: 'flex',\n\t\t\tjustifyContent: 'space-between',\n\t\t\tflex: 'none',\n\t\t\tmargin: 0,\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.card ,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tradius: $mol_gap.round,\n\t\t\t},\n\t\t\tboxShadow: `0 -0.5rem 0.5rem -0.5rem hsla(0,0%,0%,.25)` ,\n\t\t\tzIndex: 1,\n\t\t\tpadding: $mol_gap.block ,\n\t\t\t':empty': {\n\t\t\t\tdisplay: 'none',\n\t\t\t},\n\t\t},\t\n\n\t} )\n\t\n}\n","$mol_theme_auto $mol_plugin\n\tattr * mol_theme <= theme \\\n","namespace $ {\n\t/**\n\t * Decorates method to fiber to ensure it is executed only once inside other fiber from [mol_wire](../wire/README.md)\n\t * @see https://mol.hyoo.ru/#!section=docs/=1fcpsq_1wh0h2\n\t */\n\texport let $mol_action = $mol_wire_method\n}\n","namespace $ {\n\n\t/** State of arguments like `foo=bar xxx` */\n\texport class $mol_state_arg extends $mol_object {\n\t\t\n\t\tstatic prolog = ''\n\t\tstatic separator = ' '\n\t\t\n\t\t@ $mol_mem\n\t\tstatic href( next? : string ) {\n\t\t\treturn next || process.argv.slice( 2 ).join( ' ' )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic href_normal() {\n\t\t\treturn this.link({})\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic dict( next? : { [ key : string ] : string | null } ) {\n\t\t\tif( next !== void 0 ) this.href( this.make_link( next ) )\n\t\t\t\n\t\t\tvar href = this.href()\n\t\t\tvar chunks = href.split( ' ' )\n\t\t\t\n\t\t\tvar params : { [ key : string ] : string } = {}\n\t\t\tchunks.forEach(\n\t\t\t\tchunk => {\n\t\t\t\t\tif( !chunk ) return\n\t\t\t\t\tvar vals = chunk.split( '=' ).map( decodeURIComponent )\n\t\t\t\t\tparams[ vals.shift()! ] = vals.join('=')\n\t\t\t\t}\n\t\t\t)\n\t\t\t\n\t\t\treturn params as Readonly< typeof params >\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic value( key : string , next? : string | null ) {\n\t\t\tif( next === void 0 ) return this.dict()[ key ] ?? null\n\t\t\tthis.href( this.link( { [ key ] : next } ) )\n\t\t\treturn next\n\t\t}\n\t\t\n\t\tstatic link( next : Record ) {\n\t\t\tconst params : Record = {}\n\t\t\t\n\t\t\tvar prev = this.dict()\n\t\t\tfor( var key in prev ) {\n\t\t\t\tparams[ key ] = prev[ key ]\n\t\t\t}\n\t\t\t\n\t\t\tfor( var key in next ) {\n\t\t\t\tparams[ key ] = next[ key ]\n\t\t\t}\n\t\t\t\n\t\t\treturn this.make_link( params )\n\t\t}\n\t\t\n\t\tstatic make_link( next : Record) {\n\t\t\tconst chunks : string[] = []\n\t\t\tfor( const key in next ) {\n\t\t\t\tif( next[ key ] !== null ) {\n\t\t\t\t\tchunks.push([key, next[key]!].map(encodeURIComponent).join('='))\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn chunks.join( ' ' )\n\t\t}\n\t\t\n\t\t@ $mol_action\n\t\tstatic go( next : { [ key : string ] : string | null } ) {\n\t\t\tthis.href( this.make_link( next ) )\n\t\t}\n\t\t\n\t\tconstructor( public prefix = '' ) {\n\t\t\tsuper()\n\t\t}\n\t\t\n\t\tvalue( key : string , next? : string ) {\n\t\t\treturn ( this.constructor as typeof $mol_state_arg ).value( this.prefix + key , next )\n\t\t}\n\t\t\n\t\tsub( postfix : string ) {\n\t\t\treturn new ( this.constructor as typeof $mol_state_arg )( this.prefix + postfix + '.' )\n\t\t}\n\t\t\n\t\tlink( next : Record ) {\n\t\t\tconst prefix = this.prefix\n\t\t\tconst dict : Record = {}\n\t\t\tfor( var key in next ) {\n\t\t\t\tdict[ prefix + key ] = next[ key ]\n\t\t\t}\n\t\t\treturn ( this.constructor as typeof $mol_state_arg ).link( dict )\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\texport let $mol_mem_persist = $mol_wire_solid\n}\n","namespace $ {\n\texport let $mol_mem_cached = $mol_wire_probe\n}\n","namespace $ {\n\t\n\t/**\n\t * Convert asynchronous (promise-based) API to synchronous by wrapping function and method calls in a fiber.\n\t * @see https://mol.hyoo.ru/#!section=docs/=1fcpsq_1wh0h2\n\t */\n\texport function $mol_wire_sync< Host extends object >( obj: Host ) {\n\t\treturn new Proxy( obj, {\n\t\t\t\n\t\t\tget( obj, field ) {\n\t\t\t\t\n\t\t\t\tconst val = (obj as any)[ field ]\n\t\t\t\tif( typeof val !== 'function' ) return val\n\t\t\t\t\n\t\t\t\tconst temp = $mol_wire_task.getter( val )\n\t\t\t\treturn function $mol_wire_sync( this: Host, ... args: any[] ) {\n\t\t\t\t\tconst fiber = temp( obj, args )\n\t\t\t\t\treturn fiber.sync()\n\t\t\t\t}\n\t\t\t\t\n\t\t\t},\n\t\t\t\n\t\t\tapply( obj, self, args ) {\n\t\t\t\tconst temp = $mol_wire_task.getter( obj as ( ... args: any[] )=> any )\n\t\t\t\tconst fiber = temp( self, args )\n\t\t\t\treturn fiber.sync()\n\t\t\t},\n\t\t\t\n\t\t} ) as unknown as ObjectOrFunctionResultAwaited\n\t}\n\n\ttype FunctionResultAwaited = Some extends (...args: infer Args) => infer Res\n\t\t? (...args: Args) => Awaited\n\t\t: Some\n\n\ttype MethodsResultAwaited = {\n\t\t[K in keyof Host]: FunctionResultAwaited\n\t}\n\n\ttype ObjectOrFunctionResultAwaited = (\n\t\tSome extends (...args: any) => unknown ? FunctionResultAwaited : {}\n\t) & ( Some extends Object ? MethodsResultAwaited : Some )\n\n}\n","namespace $ {\n\texport class $mol_storage extends $mol_object2 {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic native() {\n\t\t\treturn this.$.$mol_dom_context.navigator.storage ?? { // exists only in secure context\n\t\t\t\tpersisted: async ()=> false,\n\t\t\t\tpersist: async ()=> false,\n\t\t\t\testimate: async ()=> ({}),\n\t\t\t\tgetDirectory: async ()=> null! as FileSystemHandle,\n\t\t\t} as StorageManager\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic persisted( next?: boolean, cache?: 'cache' ): boolean {\n\t\t\t\n\t\t\t$mol_mem_persist()\n\t\t\t\n\t\t\tif( cache ) return Boolean( next )\n\t\t\t\n\t\t\tconst native = this.native()\n\t\t\tif( next && !$mol_mem_cached( ()=> this.persisted() ) ) {\n\t\t\t\tnative.persist().then( actual => {\n\t\t\t\t\t\n\t\t\t\t\tsetTimeout( ()=> this.persisted( actual, 'cache' ), 5000 )\n\t\t\t\t\t\n\t\t\t\t\tif( actual ) this.$.$mol_log3_done({ place: `$mol_storage`, message: `Persist: Yes` })\n\t\t\t\t\telse this.$.$mol_log3_fail({ place: `$mol_storage`, message: `Persist: No` })\n\t\t\t\t\t\n\t\t\t\t} )\n\t\t\t}\n\t\t\t\n\t\t\treturn next ?? $mol_wire_sync( native ).persisted()\n\t\t}\n\t\t\n\t\tstatic estimate() {\n\t\t\treturn $mol_wire_sync( this.native() ?? {} ).estimate()\n\t\t}\n\t\t\n\t\tstatic dir() {\n\t\t\treturn $mol_wire_sync( this.native() ).getDirectory()\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n\t\n\texport class $mol_state_local< Value > extends $mol_object {\n\t\t\n\t\tstatic 'native()' : Pick< Storage , 'getItem'|'setItem'|'removeItem' >\n\t\tstatic native() {\n\t\t\tif( this['native()'] ) return this['native()']\n\n\t\t\tcheck : try {\n\t\t\t\tconst native = $mol_dom_context.localStorage\n\t\t\t\tif( !native ) break check\n\t\t\t\t\n\t\t\t\tnative.setItem( '' , '' )\n\t\t\t\tnative.removeItem( '' )\n\t\t\t\treturn this['native()'] = native\n\t\t\t} catch( error: any ) {\n\t\t\t\tconsole.warn( error )\n\t\t\t}\n\n\t\t\treturn this['native()'] = {\n\t\t\t\tgetItem( key : string ) {\n\t\t\t\t\treturn (this as any)[ ':' + key ]\n\t\t\t\t} ,\n\t\t\t\tsetItem( key : string , value : string ) {\n\t\t\t\t\t(this as any)[ ':' + key ] = value\n\t\t\t\t} ,\n\t\t\t\tremoveItem( key : string ) {\n\t\t\t\t\t(this as any)[ ':' + key ] = void 0\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic changes( next?: StorageEvent ) { return next }\n\n\t\t@ $mol_mem_key\n\t\tstatic value< Value >(\n\t\t\tkey : string ,\n\t\t\tnext? : Value | null ,\n\t\t) : Value | null {\n\t\t\t\n\t\t\tthis.changes()\n\t\t\t\n\t\t\tif( next === void 0 ) return JSON.parse( this.native().getItem( key ) || 'null' )\n\t\t\t\n\t\t\tif( next === null ) {\n\t\t\t\tthis.native().removeItem( key )\n\t\t\t} else {\n\t\t\t\tthis.native().setItem( key , JSON.stringify( next ) )\n\t\t\t\tthis.$.$mol_storage.persisted( true )\n\t\t\t}\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t\tprefix() { return '' }\n\t\t\n\t\tvalue( key : string , next? : Value ) {\n\t\t\treturn $mol_state_local.value( this.prefix() + '.' + key , next )\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\tfunction parse( theme: string | null ) {\n\t\tif( theme === 'true' ) return true\n\t\tif( theme === 'false' ) return false\n\t\treturn null\n\t}\n\t\n\t/**\n\t * Switcher between light/dark themes (usually for `mol_theme_auto` plugin).\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_lights_demo\n\t */\n\texport function $mol_lights( this : $ , next? : boolean ) {\n\t\t\n\t\tconst arg = parse( this.$mol_state_arg.value( 'mol_lights' ) )\n\t\t\n\t\tconst base = false //this.$mol_media.match( '(prefers-color-scheme: light)' )\n\t\t\n\t\tif( next === undefined ) {\n\t\t\treturn arg ?? this.$mol_state_local.value< boolean >( '$mol_lights' ) ?? base\n\t\t} else {\n\t\t\tif( arg === null ) {\n\t\t\t\tthis.$mol_state_local.value( '$mol_lights' , next === base ? null : next )\n\t\t\t} else {\n\t\t\t\tthis.$mol_state_arg.value( 'mol_lights' , String( next ) )\n\t\t\t}\n\t\t\treturn next\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $.$$ {\n\n\t/**\n\t * The [plugin](../../plugin/readme.md) which defines theme based on [mol_lights](../../lights/readme.md).\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_lights_demo\n\t */\n\texport class $mol_theme_auto extends $.$mol_theme_auto {\n\n\t\ttheme() {\n\t\t\treturn this.$.$mol_lights() ? '$mol_theme_light' : '$mol_theme_dark'\n\t\t}\n\n\t}\n}\n","$mol_speck $mol_view\n\tattr *\n\t\t^\n\t\tmol_theme <= theme \\$mol_theme_accent\n\tstyle *\n\t\t^\n\t\tminHeight \\1em\n\tsub /\n\t\t<= value null\n","namespace $ {\n\n\t/**\n\t * Z-index values for layers\n\t * https://page.hyoo.ru/#!=xthcpx_wqmiba\n\t */\n\texport let $mol_layer = $mol_style_prop(\n\t\t'mol_layer',\n\t\t[\n\t\t\t'hover',\n\t\t\t'focus',\n\t\t\t'speck',\n\t\t\t'float',\n\t\t\t'popup',\n\t\t]\n\t)\n\n}\n","namespace $ { $mol_style_attach( \"mol/layer/layer.css\",\n \":root {\\n\\t--mol_layer_hover: 1;\\n\\t--mol_layer_focus: 2;\\n\\t--mol_layer_speck: 3;\\n\\t--mol_layer_float: 4;\\n\\t--mol_layer_popup: 5;\\n}\\n\"\n) }","namespace $ { $mol_style_attach( \"mol/speck/speck.view.css\",\n \"[mol_speck] {\\n\\tfont-size: .625rem;\\n\\tborder-radius: 1rem;\\n\\tmargin: -0.5rem -0.25rem;\\n\\talign-self: flex-start;\\n\\tmin-height: 1em;\\n\\tmin-width: .5em;\\n\\tvertical-align: sub;\\n\\tpadding: .25em .5em;\\n\\tposition: absolute;\\n\\tz-index: var(--mol_layer_speck);\\n\\ttext-align: center;\\n\\tline-height: 1;\\n\\tdisplay: inline-block;\\n\\twhite-space: nowrap;\\n\\ttext-overflow: ellipsis;\\n\\tuser-select: none;\\n}\\n\"\n) }","$mol_button $mol_view\n\tenabled true\n\tclick?event null\n\tevent_click?event null\n\tevent *\n\t\t^\n\t\tclick?event <=> event_activate?event null\n\t\tdblclick?event <=> clicks?event null\n\t\tkeydown?event <=> event_key_press?event null \n\tattr *\n\t\t^\n\t\tdisabled <= disabled false\n\t\trole \\button\n\t\ttabindex <= tab_index 0\n\t\ttitle <= hint_safe <= hint \\\n\tsub /$mol_view_content\n\t\t<= title\n\tSpeck $mol_speck\n\t\tvalue <= error \\\n","namespace $ {\n\t/**\n\t* Key names code for hotkey\n\t* @see [mol_hotkey](../../hotkey/hotkey.view.ts)\n\t*/\n\texport enum $mol_keyboard_code {\n\t\tbackspace = 8,\n\t\ttab = 9,\n\t\tenter = 13,\n\t\tshift = 16,\n\t\tctrl = 17,\n\t\talt = 18,\n\t\tpause = 19,\n\t\tcapsLock = 20,\n\t\tescape = 27,\n\t\tspace = 32,\n\t\tpageUp = 33,\n\t\tpageDown = 34,\n\t\tend = 35,\n\t\thome = 36,\n\t\tleft = 37,\n\t\tup = 38,\n\t\tright = 39,\n\t\tdown = 40,\n\t\tinsert = 45,\n\t\tdelete = 46,\n\t\tkey0 = 48,\n\t\tkey1 = 49,\n\t\tkey2 = 50,\n\t\tkey3 = 51,\n\t\tkey4 = 52,\n\t\tkey5 = 53,\n\t\tkey6 = 54,\n\t\tkey7 = 55,\n\t\tkey8 = 56,\n\t\tkey9 = 57,\n\t\tA = 65,\n\t\tB = 66,\n\t\tC = 67,\n\t\tD = 68,\n\t\tE = 69,\n\t\tF = 70,\n\t\tG = 71,\n\t\tH = 72,\n\t\tI = 73,\n\t\tJ = 74,\n\t\tK = 75,\n\t\tL = 76,\n\t\tM = 77,\n\t\tN = 78,\n\t\tO = 79,\n\t\tP = 80,\n\t\tQ = 81,\n\t\tR = 82,\n\t\tS = 83,\n\t\tT = 84,\n\t\tU = 85,\n\t\tV = 86,\n\t\tW = 87,\n\t\tX = 88,\n\t\tY = 89,\n\t\tZ = 90,\n\t\tmetaLeft = 91,\n\t\tmetaRight = 92,\n\t\tselect = 93,\n\t\tnumpad0 = 96,\n\t\tnumpad1 = 97,\n\t\tnumpad2 = 98,\n\t\tnumpad3 = 99,\n\t\tnumpad4 = 100,\n\t\tnumpad5 = 101,\n\t\tnumpad6 = 102,\n\t\tnumpad7 = 103,\n\t\tnumpad8 = 104,\n\t\tnumpad9 = 105,\n\t\tmultiply = 106,\n\t\tadd = 107,\n\t\tsubtract = 109,\n\t\tdecimal = 110,\n\t\tdivide = 111,\n\t\tF1 = 112,\n\t\tF2 = 113,\n\t\tF3 = 114,\n\t\tF4 = 115,\n\t\tF5 = 116,\n\t\tF6 = 117,\n\t\tF7 = 118,\n\t\tF8 = 119,\n\t\tF9 = 120,\n\t\tF10 = 121,\n\t\tF11 = 122,\n\t\tF12 = 123,\n\t\tnumLock = 144,\n\t\tscrollLock = 145,\n\t\tsemicolon = 186,\n\t\tequals = 187,\n\t\tcomma = 188,\n\t\tdash = 189,\n\t\tperiod = 190,\n\t\tforwardSlash = 191,\n\t\tgraveAccent = 192,\n\t\tbracketOpen = 219,\n\t\tslashBack = 220,\n\t\tslashBackLeft = 226,\n\t\tbracketClose = 221,\n\t\tquoteSingle = 222\n\t}\n}\n","namespace $.$$ {\n\t\n\t/**\n\t * Simple button.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_button_demo\n\t */\n\texport class $mol_button extends $.$mol_button {\n\n\t\t@ $mol_mem\n\t\tstatus( next = [ null as any ] ) { return next }\n\t\t\n\t\tdisabled() {\n\t\t\treturn !this.enabled()\n\t\t}\n\t\t\n\t\tevent_activate( next : Event ) {\n\t\t\t\n\t\t\tif( !next ) return\n\t\t\tif( !this.enabled() ) return\n\n\t\t\ttry {\n\t\t\t\t\n\t\t\t\tthis.event_click( next )\n\t\t\t\tthis.click( next )\n\t\t\t\tthis.status([ null ])\n\t\t\t\t\n\t\t\t} catch( error: any ) {\n\t\t\t\t\n\t\t\t\tPromise.resolve().then( ()=> this.status([ error ]) )\n\t\t\t\t$mol_fail_hidden( error )\n\t\t\t\t\n\t\t\t}\n\n\t\t}\n\t\t\n\t\tevent_key_press ( event: KeyboardEvent ) { \n\t\t\tif( event.keyCode === $mol_keyboard_code.enter ) {\n\t\t\t\treturn this.event_activate( event )\n\t\t\t}\n\t\t} \n\t\t\n\t\ttab_index() {\n\t\t\treturn this.enabled() ? super.tab_index() : -1\n\t\t}\n\n\t\terror() {\n\n\t\t\tconst [ error ] = this.status()\n\t\t\tif( !error ) return ''\n\n\t\t\tif( error instanceof Promise ) {\n\t\t\t\treturn $mol_fail_hidden( error )\n\t\t\t}\n\t\t\t\n\t\t\treturn String( error.message ?? error )\n\n\t\t}\n\t\t\n\t\thint_safe() {\n\t\t\ttry {\n\t\t\t\treturn this.hint()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn ''\n\t\t\t}\n\t\t}\n\n\t\tsub_visible() {\n\t\t\treturn [\n\t\t\t\t... this.error() ? [ this.Speck() ] : [] ,\n\t\t\t\t... this.sub() ,\n\t\t\t]\n\t\t}\n\t\t\n\t}\n}\n","namespace $ { $mol_style_attach( \"mol/button/button.view.css\",\n \"[mol_button] {\\n\\tborder: none;\\n\\tfont: inherit;\\n\\tdisplay: inline-flex;\\n\\tflex-shrink: 0;\\n\\ttext-decoration: inherit;\\n\\tcursor: inherit;\\n\\tposition: relative;\\n\\tbox-sizing: border-box;\\n\\tword-break: normal;\\n\\tcursor: default;\\n\\tuser-select: none;\\n\\tborder-radius: var(--mol_gap_round);\\n}\\n\\n[mol_button]:where(:not(:disabled)):hover {\\n\\tz-index: var(--mol_layer_hover);\\n}\\n\\n[mol_button]:focus-visible {\\n\\toutline: none;\\n\\tz-index: var(--mol_layer_focus);\\n}\\n\"\n) }","$mol_button_typed $mol_button\n\tminimal_height 40\n\tminimal_width 40\n","namespace $ { $mol_style_attach( \"mol/button/typed/typed.view.css\",\n \"[mol_button_typed] {\\n\\talign-content: center;\\n\\talign-items: center;\\n\\tpadding: var(--mol_gap_text);\\n\\tborder-radius: var(--mol_gap_round);\\n\\tgap: var(--mol_gap_space);\\n\\tuser-select: none;\\n\\tcursor: pointer;\\n}\\n\\n[mol_button_typed][disabled] {\\n\\tpointer-events: none;\\n}\\n\\n[mol_button_typed]:hover ,\\n[mol_button_typed]:focus-visible {\\n\\tbackground-color: var(--mol_theme_hover);\\n}\\n\\n[mol_button_typed]:active {\\n\\tcolor: var(--mol_theme_focus);\\n}\\n\\n\"\n) }","$mol_button_minor $mol_button_typed\n","namespace $ { $mol_style_attach( \"mol/button/minor/minor.view.css\",\n \"[mol_button_minor] {\\n\\tcolor: var(--mol_theme_control);\\n}\\n\\n[mol_button_minor][disabled] {\\n\\tcolor: var(--mol_theme_shade);\\n}\\n\"\n) }","$mol_check $mol_button_minor\n\tattr *\n\t\t^\n\t\tmol_check_checked <= checked? false\n\t\taria-checked <= aria_checked \\false\n\t\trole <= aria_role \\checkbox\n\tsub /$mol_view_content\n\t\t<= Icon null\n\t\t<= label /\n\t\t\t<= Title $mol_view\n\t\t\t\tsub /\n\t\t\t\t\t<= title \\\n","namespace $ {\n\t\n\texport function $mol_maybe< Value >( value : Value | null | undefined ) : Value[] {\n\t\treturn ( value == null ) ? [] : [ value ]\n\t}\n\t\n}\n","namespace $ { $mol_style_attach( \"mol/check/check.css\",\n \"[mol_check] {\\n\\tflex: 0 0 auto;\\n\\tjustify-content: flex-start;\\n\\talign-content: center;\\n\\t/* align-items: flex-start; */\\n\\tborder: none;\\n\\tfont-weight: inherit;\\n\\tbox-shadow: none;\\n\\ttext-align: left;\\n\\tdisplay: inline-flex;\\n\\tflex-wrap: nowrap;\\n}\\n\\n[mol_check_title] {\\n\\tflex-shrink: 1;\\n}\\n\"\n) }","namespace $.$$ {\n\n\t/**\n\t * Checkbox UI component. See Variants for more concrete implementations.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_check_box_demo\n\t */\n\texport class $mol_check extends $.$mol_check {\n\n\t\tclick( next? : Event ) {\n\t\t\tif( next?.defaultPrevented ) return\n\t\t\tthis.checked( !this.checked() )\n\t\t\tif( next ) next.preventDefault()\n\t\t}\n\n\t\tsub() {\n\t\t\treturn [\n\t\t\t\t... $mol_maybe( this.Icon() ) ,\n\t\t\t\t... this.label() ,\n\t\t\t] as readonly $mol_view_content[]\n\t\t}\n\n\t\tlabel() {\n\t\t\treturn this.title() ? super.label() : []\n\t\t}\n\t\t\n\t\taria_checked() {\n\t\t\treturn String( this.checked() )\n\t\t}\n\n\t}\n}\n","$mol_check_icon $mol_check\n","namespace $ { $mol_style_attach( \"mol/check/icon/icon.view.css\",\n \"[mol_check_icon]:where([mol_check_checked]) {\\n\\tcolor: var(--mol_theme_current);\\n}\\n\"\n) }","$mol_svg $mol_view\n\tdom_name \\svg\n\tdom_name_space \\http://www.w3.org/2000/svg\n\tfont_size 16\n\tfont_family \\\n\tstyle_size *\n","namespace $ {\n\t\n\t/** State of time moment */\n\texport class $mol_state_time extends $mol_object {\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic task( precision: number, reset?: null ): $mol_after_timeout | $mol_after_frame {\n\t\t\t\n\t\t\tif( precision ) {\n\t\t\t\treturn new $mol_after_timeout( precision, ()=> this.task( precision, null ) )\n\t\t\t} else {\n\t\t\t\treturn new $mol_after_frame( ()=> this.task( precision, null ) )\n\t\t\t}\n\t\t\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic now( precision: number ) {\n\t\t\tthis.task( precision )\n\t\t\treturn Date.now()\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $.$$ {\n\t/** Base SVG component to display SVG images or icons. */\n\texport class $mol_svg extends $.$mol_svg {\n\t\t@$mol_mem\n\t\tcomputed_style() {\n\t\t\tconst win = this.$.$mol_dom_context\n\t\t\tconst style = win.getComputedStyle(this.dom_node()) as Record\n\n\t\t\tif(!style['font-size']) $mol_state_time.now( 0 )\n\n\t\t\treturn style\n\t\t}\n\n\t\t@$mol_mem\n\t\tfont_size(): number {\n\t\t\treturn parseInt(this.computed_style()['font-size']) || 16\n\t\t}\n\n\t\t@$mol_mem\n\t\tfont_family() {\n\t\t\treturn this.computed_style()['font-family']\n\t\t}\n\n\t}\n}\n","$mol_svg_root $mol_svg\n\tdom_name \\svg\n\tattr *\n\t\t^\n\t\tviewBox <= view_box \\0 0 100 100\n\t\tpreserveAspectRatio <= aspect \\xMidYMid\n","namespace $ { $mol_style_attach( \"mol/svg/root/root.view.css\",\n \"[mol_svg_root] {\\n\\toverflow: hidden;\\n}\\n\"\n) }","$mol_svg_path $mol_svg\n\tdom_name \\path\n\tattr *\n\t\t^\n\t\td <= geometry \\\n\n","$mol_icon $mol_svg_root\n\tview_box \\0 0 24 24\n\tminimal_width 16\n\tminimal_height 16\n\tsub /\n\t\t<= Path $mol_svg_path\n\t\t\tgeometry <= path \\\n","namespace $ { $mol_style_attach( \"mol/icon/icon.view.css\",\n \"[mol_icon] {\\n\\tfill: currentColor;\\n\\tstroke: none;\\n\\twidth: 1em;\\n\\theight: 1.5em;\\n\\tflex: 0 0 auto;\\n\\tvertical-align: top;\\n\\tdisplay: inline-block;\\n\\tfilter: drop-shadow(0px 1px 1px var(--mol_theme_back));\\n\\ttransform-origin: center;\\n}\\n\\n[mol_icon_path] {\\n\\ttransform-origin: center;\\n}\\n\"\n) }","$mol_icon_brightness_6 $mol_icon path \\M12,18V6C15.31,6 18,8.69 18,12C18,15.31 15.31,18 12,18M20,15.31L23.31,12L20,8.69V4H15.31L12,0.69L8.69,4H4V8.69L0.69,12L4,15.31V20H8.69L12,23.31L15.31,20H20V15.31Z\n","namespace $ {\n\n\tconst decoders = {} as { [ key in $mol_charset_encoding ]?: TextDecoder }\n\n\texport function $mol_charset_decode(\n\t\tbuffer: BufferSource,\n\t\tencoding: $mol_charset_encoding = 'utf8',\n\t) {\n\t\t\n\t\tlet decoder = decoders[ encoding ]\n\t\tif( !decoder ) decoder = decoders[ encoding ] = new TextDecoder( encoding )\n\t\t\n\t\treturn decoder.decode( buffer )\n\t}\n\n}\n","namespace $ {\n\tconst TextEncoder = globalThis.TextEncoder ?? $node.util.TextEncoder\n\n\tconst encoder = new TextEncoder()\n\n\texport function $mol_charset_encode(value: string) {\n\t\treturn encoder.encode(value)\n\t}\n\n}\n","namespace $ {\n\n\texport type $mol_file_type = 'file' | 'dir' | 'link'\n\n\texport interface $mol_file_stat {\n\t\ttype: $mol_file_type\n\t\tsize: number\n\t\tatime: Date\n\t\tmtime: Date\n\t\tctime: Date\n\t}\n\n\texport class $mol_file_not_found extends Error {}\n\n\texport abstract class $mol_file extends $mol_object {\n\t\t\t\n\t\t@ $mol_mem_key\n\t\tstatic absolute( path : string ): $mol_file {\n\t\t\tthrow new Error( 'Not implemented yet' )\n\t\t}\n\n\t\tstatic relative( path : string ) : $mol_file {\n\t\t\tthrow new Error( 'Not implemented yet' )\n\t\t}\n\t\t\n\t\tstatic base = ''\n\t\t\n\t\tpath() {\n\t\t\treturn '.'\n\t\t}\n\t\t\n\t\tparent() {\n\t\t\treturn this.resolve( '..' )\n\t\t}\n\n\t\tabstract stat( next? : $mol_file_stat | null, virt?: 'virt' ): $mol_file_stat | null\n\n\t\treset(): void {\n\t\t\ttry {\n\t\t\t\tthis.stat( null )\n\t\t\t} catch( error: any ) {\n\t\t\t\tif (error instanceof $mol_file_not_found) return\n\t\t\t\treturn $mol_fail_hidden(error)\n\t\t\t}\n\t\t}\n\t\t\n\t\tversion() {\n\t\t\treturn this.stat()?.mtime.getTime().toString( 36 ).toUpperCase() ?? ''\n\t\t}\n\n\t\tabstract ensure(): void\n\t\tabstract drop(): void\n\n\t\twatcher() {\n\t\t\tconsole.warn('$mol_file_web.watcher() not implemented')\n\n\t\t\treturn {\n\t\t\t\tdestructor() {}\n\t\t\t}\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\texists( next? : boolean ) {\n\t\t\t\n\t\t\tlet exists = Boolean( this.stat() )\n\n\t\t\tif( next === undefined ) return exists\n\t\t\tif( next === exists ) return exists\n\n\t\t\tif( next ) {\n\t\t\t\tthis.parent().exists( true )\n\t\t\t\tthis.ensure()\n\t\t\t} else {\n\t\t\t\tthis.drop()\n\t\t\t}\n\t\t\tthis.reset()\n\t\t\t\n\t\t\treturn next\n\t\t}\n\t\t\n\t\ttype() {\n\t\t\treturn this.stat()?.type ?? ''\n\t\t}\n\t\t\n\t\tname() {\n\t\t\treturn this.path().replace( /^.*\\//, '' )\n\t\t}\n\t\t\n\t\text() {\n\t\t\tconst match = /((?:\\.\\w+)+)$/.exec( this.path() )\n\t\t\treturn match ? match[ 1 ].substring( 1 ) : ''\n\t\t}\n\n\t\tabstract buffer( next? : Uint8Array ): Uint8Array\n\n\t\t@ $mol_mem\n\t\ttext(next?: string, virt?: 'virt') {\n\t\t\tif( virt ) {\n\t\t\t\tconst now = new Date\n\t\t\t\tthis.stat( {\n\t\t\t\t\ttype: 'file',\n\t\t\t\t\tsize: 0,\n\t\t\t\t\tatime: now,\n\t\t\t\t\tmtime: now,\n\t\t\t\t\tctime: now,\t\t\t\n\t\t\t\t}, 'virt' )\n\t\t\t\treturn next!\n\t\t\t}\n\t\t\tif( next === undefined ) {\n\t\t\t\treturn $mol_charset_decode( this.buffer( undefined ) )\t\n\t\t\t} else {\n\t\t\t\tconst buffer = next === undefined ? undefined : $mol_charset_encode( next )\n\t\t\t\tthis.buffer( buffer )\n\t\t\t\treturn next\n\t\t\t}\n\t\t}\n\n\t\tabstract sub(): $mol_file[]\n\n\t\tabstract resolve(path: string): $mol_file\n\n\t\tabstract relate( base?: $mol_file ): string\n\t\t\n\t\tabstract append( next : Uint8Array | string ): void\n\t\t\n\t\tfind(\n\t\t\tinclude? : RegExp ,\n\t\t\texclude? : RegExp\n\t\t) {\n\t\t\tconst found = [] as $mol_file[]\n\t\t\tconst sub = this.sub()\n\n\t\t\tfor (const child of sub) {\n\t\t\t\tconst child_path = child.path()\n\n\t\t\t\tif( exclude && child_path.match( exclude ) ) continue\n\n\t\t\t\tif( !include || child_path.match( include ) ) found.push( child )\n\n\t\t\t\tif( child.type() === 'dir' ) {\n\t\t\t\t\tconst sub_child = child.find( include , exclude )\n\t\t\t\t\tfor (const child of sub_child) found.push(child)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn found\n\t\t}\n\n\t\tsize() {\n\t\t\tswitch( this.type() ) {\n\t\t\t\tcase 'file': return this.stat()?.size ?? 0\n\t\t\t\tdefault: return 0\n\t\t\t}\n\t\t}\n\t\t\n\t\topen( ... modes: readonly ( 'create' | 'exists_truncate' | 'exists_fail' | 'read_only' | 'write_only' | 'read_write' | 'append' )[] ) {\n\t\t\treturn 0\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n export function $mol_compare_array>(a: Value, b: Value): boolean {\n\t\tif (a === b) return true\n\t\tif (Object.getPrototypeOf(a) !== Object.getPrototypeOf(b)) return false\n\t\tif (a.length !== b.length) return false\n\n\t\tfor (let i = 0; i < a.length; i++)\n\t\t\tif (a[i] !== b[i]) return false\n\n\t\treturn true\n\t}\n}\n","namespace $ {\n\n\tfunction stat_convert(stat: ReturnType): null | $mol_file_stat {\n\t\t\n\t\tif( !stat ) return null\n\t\t\n\t\tlet type: $mol_file_type | undefined\n\t\tif (stat.isDirectory()) type = 'dir'\n\t\tif (stat.isFile()) type = 'file'\n\t\tif (stat.isSymbolicLink()) type = 'link'\n\n\t\tif (! type) return $mol_fail( new Error(`Unsupported file type`) )\n\n\t\treturn {\n\t\t\ttype, \n\t\t\tsize: Number(stat.size),\n\t\t\tatime: stat.atime,\n\t\t\tmtime: stat.mtime,\n\t\t\tctime: stat.ctime\n\t\t}\n\t}\n\n\tfunction buffer_normalize(buf: Buffer): Uint8Array {\n\t\treturn new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength)\n\t}\n\t\n\texport enum $mol_file_mode_open {\n\t\t/** create if it doesn't already exist */\n\t\tcreate = $node.fs.constants.O_CREAT,\n\t\t/** truncate to zero size if it already exists */\n\t\texists_truncate = $node.fs.constants.O_TRUNC,\n\t\t/** throw exception if it already exists */\n\t\texists_fail = $node.fs.constants.O_EXCL,\n\t\tread_only = $node.fs.constants.O_RDONLY,\n\t\twrite_only = $node.fs.constants.O_WRONLY,\n\t\tread_write = $node.fs.constants.O_RDWR,\n\t\t/** data will be appended to the end */\n\t\tappend = $node.fs.constants.O_APPEND,\n\t}\n\n\texport class $mol_file_node extends $mol_file {\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic absolute( path : string ) {\n\t\t\treturn this.make({\n\t\t\t\tpath : $mol_const( path )\n\t\t\t})\n\t\t}\n\n\t\tstatic relative( path : string ) {\n\t\t\treturn this.absolute( $node.path.resolve( this.base, path ).replace( /\\\\/g , '/' ) )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\twatcher() {\n\n\t\t\tconst watcher = $node.chokidar.watch( this.path() , {\n\t\t\t\tpersistent : true ,\n\t\t\t\tignored : /(^\\.|___$)/ ,\n\t\t\t\tdepth : 0 ,\n\t\t\t\tignoreInitial : true ,\n\t\t\t\tawaitWriteFinish: {\n\t\t\t\t\tstabilityThreshold: 100,\n\t\t\t\t},\n\t\t\t} )\n\n\t\t\twatcher\n\t\t\t.on( 'all' , ( type , path )=> {\n\t\t\t\t\n\t\t\t\tconst file = $mol_file.relative( path.replace( /\\\\/g , '/' ) )\n\n\t\t\t\tfile.reset()\n\t\t\t\t\n\t\t\t\tif( type === 'change' ) {\n\t\t\t\t\tthis.stat( null )\n\t\t\t\t} else {\n\t\t\t\t\tfile.parent().reset()\n\t\t\t\t}\n\n\t\t\t} )\n\t\t\t.on( 'error' , $mol_fail_log )\n\t\t\t\n\t\t\treturn {\n\t\t\t\tdestructor() {\n\t\t\t\t\twatcher.close()\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\n\t\t@ $mol_mem\n\t\tstat( next? : $mol_file_stat | null, virt?: 'virt' ) {\n\t\t\t\n\t\t\tlet stat = next\n\t\t\tconst path = this.path()\n\n\t\t\tthis.parent().watcher()\n\t\t\t\n\t\t\tif( virt ) return next!\n\t\t\t\n\t\t\ttry {\n\t\t\t\tstat = next ?? stat_convert($node.fs.statSync( path, { throwIfNoEntry: false } ))\n\t\t\t} catch( error: any ) {\n\t\t\t\tif (error.code === 'ENOENT') error = new $mol_file_not_found(`File not found`)\n\t\t\t\terror.message += '\\n' + path\n\t\t\t\treturn this.$.$mol_fail_hidden(error)\n\t\t\t}\n\n\t\t\treturn stat\n\t\t}\n\n\t\t@ $mol_mem\n\t\tensure() {\n\t\t\tconst path = this.path()\n\n\t\t\ttry {\n\t\t\t\t$node.fs.mkdirSync( path )\n\t\t\t} catch( e: any ) {\n\t\t\t\te.message += '\\n' + path\n\t\t\t\tthis.$.$mol_fail_hidden(e)\n\t\t\t}\n\n\t\t}\n\t\t\n\t\t@ $mol_action\n\t\tdrop() {\n\t\t\t$node.fs.unlinkSync( this.path() )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tbuffer( next? : Uint8Array ) {\n\n\t\t\tconst path = this.path()\n\t\t\tif( next === undefined ) {\n\n\t\t\t\tif( !this.stat() ) return new Uint8Array\n\t\t\t\t\n\t\t\t\ttry {\n\n\t\t\t\t\tconst prev = $mol_mem_cached( ()=> this.buffer() )\n\t\t\t\t\t\n\t\t\t\t\tnext = buffer_normalize( $node.fs.readFileSync( path ) )\n\n\t\t\t\t\tif( prev !== undefined && !$mol_compare_array( prev, next ) ) {\n\t\t\t\t\t\tthis.$.$mol_log3_rise({\n\t\t\t\t\t\t\tplace: `$mol_file_node..buffer()`,\n\t\t\t\t\t\t\tmessage: 'Changed' ,\n\t\t\t\t\t\t\tpath: this.relate() ,\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\n\t\t\t\t\treturn next\n\n\t\t\t\t} catch( error: any ) {\n\n\t\t\t\t\terror.message += '\\n' + path\n\t\t\t\t\treturn this.$.$mol_fail_hidden( error )\n\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t\tthis.parent().exists( true )\n\t\t\t\n\t\t\tconst now = new Date\n\t\t\tthis.stat( {\n\t\t\t\ttype: 'file',\n\t\t\t\tsize: next.length,\n\t\t\t\tatime: now,\n\t\t\t\tmtime: now,\n\t\t\t\tctime: now,\n\t\t\t}, 'virt' )\n\n\t\t\ttry {\n\n\t\t\t\t$node.fs.writeFileSync( path, next )\n\n\t\t\t} catch( error: any ) {\n\n\t\t\t\terror.message += '\\n' + path\n\t\t\t\treturn this.$.$mol_fail_hidden( error )\n\n\t\t\t}\n\t\t\t\n\t\t\treturn next\n\n\t\t}\n\t\t@ $mol_mem\n\t\tsub() : $mol_file[] {\n\t\t\tif (! this.exists() ) return []\n\t\t\tif ( this.type() !== 'dir') return []\n\n\t\t\tconst path = this.path()\n\t\t\tthis.stat()\n\n\t\t\ttry {\n\t\t\t\treturn $node.fs.readdirSync( path )\n\t\t\t\t\t.filter( name => !/^\\.+$/.test( name ) )\n\t\t\t\t\t.map( name => this.resolve( name ) )\n\t\t\t} catch( e: any ) {\n\t\t\t\te.message += '\\n' + path\n\t\t\t\treturn this.$.$mol_fail_hidden(e)\n\t\t\t}\n\t\t}\n\t\t\n\t\tresolve( path : string ) {\n\t\t\treturn ( this.constructor as typeof $mol_file ).relative( $node.path.join( this.path() , path ) )\n\t\t}\n\t\t\n\t\trelate( base = ( this.constructor as typeof $mol_file ).relative( '.' )) {\n\t\t\treturn $node.path.relative( base.path() , this.path() ).replace( /\\\\/g , '/' )\n\t\t}\n\t\t\n\t\tappend( next : Uint8Array | string ) {\n\t\t\tconst path = this.path()\n\t\t\ttry {\n\t\t\t\t$node.fs.appendFileSync( path , next )\n\t\t\t} catch( e: any ) {\n\t\t\t\te.message += '\\n' + path\n\t\t\t\treturn this.$.$mol_fail_hidden(e)\n\t\t\t}\n\t\t}\n\t\t\n\t\topen( ... modes: readonly ( keyof typeof $mol_file_mode_open )[] ) {\n\t\t\treturn $node.fs.openSync(\n\t\t\t\tthis.path(),\n\t\t\t\tmodes.reduce( ( res, mode )=> res | $mol_file_mode_open[ mode ], 0 ),\n\t\t\t)\n\t\t}\n\n\t}\n\n\t$.$mol_file = $mol_file_node\n}\n","namespace $ {\n\t\n\texport interface $mol_locale_dict {\n\t\t[ key : string ] : string\n\t}\n\t\n\t/**\n\t * Localisation in $mol framework\n\t * @see https://mol.hyoo.ru/#!section=docs/=s5aqnb_odub8l\n\t */\n\texport class $mol_locale extends $mol_object {\n\t\t\n\t\t@ $mol_mem\n\t\tstatic lang_default() {\n\t\t\treturn 'en'\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tstatic lang( next? : string ) {\n\t\t\treturn this.$.$mol_state_local.value( 'locale' , next ) || $mol_dom_context.navigator.language.replace( /-.*/ , '' ) || this.lang_default()\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic source( lang : string ) {\n\t\t\treturn JSON.parse( this.$.$mol_file.relative( `web.locale=${ lang }.json` ).text().toString() )\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic texts( lang : string , next? : $mol_locale_dict ) : $mol_locale_dict {\n\t\t\tif( next ) return next\n\t\t\t\n\t\t\ttry {\n\t\t\t\treturn this.source( lang ).valueOf()\n\t\t\t} catch( error: any ) {\n\t\t\t\tif( $mol_fail_catch( error ) ) {\n\t\t\t\t\tconst def = this.lang_default()\n\t\t\t\t\tif( lang === def ) throw error\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn {}\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic text( key : string ): string {\n\t\t\t\n\t\t\tconst lang = this.lang()\n\n\t\t\tconst target = this.texts( lang )[ key ]\n\t\t\tif( target ) return target\n\t\t\t\n\t\t\tthis.warn( key )\n\t\t\t\n\t\t\tconst en = this.texts( 'en' )[ key ]\n\t\t\tif( !en ) return key\n\t\t\t\n\t\t\t// try {\n\t\t\t// \treturn $mol_wire_sync( $hyoo_lingua_translate ).call( this.$, lang, en )\n\t\t\t// } catch( error ) {\n\t\t\t// \t$mol_fail_log( error )\n\t\t\t// }\n\t\t\t\n\t\t\treturn en\n\t\t}\n\t\t\n\t\t@ $mol_mem_key\n\t\tstatic warn( key : string ) {\n\t\t\tconsole.warn( `Not translated to \"${ this.lang() }\": ${ key }` )\n\t\t\treturn null\n\t\t}\n\t\t\n\t}\n\t\n}\n","$mol_lights_toggle $mol_check_icon\n\tIcon <= Lights_icon $mol_icon_brightness_6\n\thint @ \\Toggle lights\n\tchecked? <=> lights? false\n","\n\t\t()\n\t\t\tthis\n\t\t\t[] \\$\n\t\t\t[] \\$mol_locale\n\t\t\t[] \\text\n\t\t\t(,) #key\n\t","namespace $.$$ {\n\t/**\n\t * Toggle for Switcher between light/dark themes (usually for `mol_theme_auto` plugin).\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_lights_demo\n\t */\n\texport class $mol_lights_toggle extends $.$mol_lights_toggle {\n\t\tlights( next? : boolean ) {\n\t\t\treturn this.$.$mol_lights( next )\n\t\t}\n\t}\n}\n","$mol_link $mol_view\n\turi \\\n\tdom_name \\a\n\turi_off \\\n\turi_native null\n\texternal false\n\tattr *\n\t\t^\n\t\thref <= uri_toggle \\\n\t\ttitle <= hint_safe <= hint \\\n\t\ttarget <= target \\_self\n\t\tdownload <= file_name \\\n\t\tmol_link_current <= current false\n\t\trel <= relation \\\n\tsub /$mol_view_content\n\t\t<= title\n\targ *\n\tevent *\n\t\t^\n\t\tclick?event <=> click?event <=> event_click?event null\n","namespace $.$$ {\n\t\n\t/**\n\t * Dynamic hyperlink. It can add, change or remove parameters. A link that leads to the current page has [mol_link_current] attribute set to true.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_link_demo\n\t */\n\texport class $mol_link extends $.$mol_link {\n\t\t\n\t\t@ $mol_mem\n\t\turi_toggle() {\n\t\t\treturn this.current() ? this.uri_off() : this.uri()\n\t\t}\n\n\t\t@ $mol_mem\n\t\turi() {\n\t\t\treturn new this.$.$mol_state_arg( this.state_key() ).link( this.arg() )\n\t\t}\n\n\t\t@ $mol_mem\n\t\turi_off() {\n\t\t\tconst arg2: Record = {}\n\t\t\tfor( let i in this.arg() ) arg2[i] = null\n\t\t\t\n\t\t\treturn new this.$.$mol_state_arg( this.state_key() ).link( arg2 )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\turi_native() {\n\t\t\tconst base = this.$.$mol_state_arg.href()\n\t\t\treturn new URL( this.uri() , base )\n\t\t}\n\n\t\t@ $mol_mem\n\t\tcurrent() {\n\n\t\t\tconst base = this.$.$mol_state_arg.href_normal()\n\t\t\tconst target = this.uri_native().toString()\n\n\t\t\tif( base === target ) return true\n\t\t\t\n\t\t\tconst args = this.arg() as Record\n\t\t\t\n\t\t\tconst keys = Object.keys( args ).filter( key => args[ key ] != null )\n\t\t\tif( keys.length === 0 ) return false\n\n\t\t\tfor( const key of keys ) {\n\t\t\t\tif( this.$.$mol_state_arg.value( key ) != args[ key ] ) return false\n\t\t\t}\n\n\t\t\treturn true\n\t\t}\n\n\t\tfile_name() {\n\t\t\treturn null as unknown as string\n\t\t}\n\n\t\tminimal_height() {\n\t\t\treturn Math.max( super.minimal_height(), 24 )\n\t\t}\n\t\t\n\t\texternal() {\n\t\t\treturn this.uri_native().origin !== $mol_dom_context.location.origin\n\t\t}\n\t\t\n\t\ttarget(): '_self' | '_blank' | '_top' | '_parent' | string {\n\t\t\treturn this.external() ? '_blank' : '_self'\n\t\t}\n\n\t\thint_safe() {\n\t\t\ttry {\n\t\t\t\treturn this.hint()\n\t\t\t} catch( error ) {\n\t\t\t\t$mol_fail_log( error )\n\t\t\t\treturn ''\n\t\t\t}\n\t\t}\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\tconst { rem } = $mol_style_unit\n\n\t$mol_style_define( $mol_link , {\n\t\t\n\t\ttextDecoration: 'none',\n\t\tcolor: $mol_theme.control,\n\t\tstroke: 'currentcolor',\n\t\tcursor: 'pointer',\n\t\tpadding: $mol_gap.text,\n\t\tboxSizing: 'border-box',\n\t\tposition: 'relative',\n\t\tminWidth: rem(2.5),\n\t\tgap: $mol_gap.space,\n\t\t\n\t\tborder: {\n\t\t\tradius: $mol_gap.round,\n\t\t},\n\n\t\t':hover': {\n\t\t\t\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.hover,\n\t\t\t},\n\t\t\t\n\t\t},\n\n\t\t':focus-visible': {\n\t\t\t\n\t\t\toutline: 'none',\n\t\t\t\n\t\t\tbackground: {\n\t\t\t\tcolor: $mol_theme.hover,\n\t\t\t},\n\t\t\t\n\t\t},\n\n\t\t// ':has(:focus-visible)': {\n\t\t// \toutline: 'none',\n\t\t// \tbackground: {\n\t\t// \t\tcolor: $mol_theme.hover,\n\t\t// \t}\n\t\t// },\n\t\t\n\t\t':active': {\n\t\t\tcolor: $mol_theme.focus,\n\t\t},\n\n\t\t'@': {\n\t\t\tmol_link_current: {\n\t\t\t\t'true': {\n\t\t\t\t\tcolor: $mol_theme.current,\n\t\t\t\t\ttextShadow: '0 0',\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\n\t} )\n\n}\n","$mol_icon_script $mol_icon path \\M17.8,20C17.4,21.2 16.3,22 15,22H5C3.3,22 2,20.7 2,19V18H5L14.2,18C14.6,19.2 15.7,20 17,20H17.8M19,2H8C6.3,2 5,3.3 5,5V16H16V17C16,17.6 16.4,18 17,18H18V5C18,4.4 18.4,4 19,4C19.6,4 20,4.4 20,5V6H22V5C22,3.3 20.7,2 19,2Z\n","$mol_icon_script_text $mol_icon path \\M17.8,20C17.4,21.2 16.3,22 15,22H5C3.3,22 2,20.7 2,19V18H5L14.2,18C14.6,19.2 15.7,20 17,20H17.8M19,2C20.7,2 22,3.3 22,5V6H20V5C20,4.4 19.6,4 19,4C18.4,4 18,4.4 18,5V18H17C16.4,18 16,17.6 16,17V16H5V5C5,3.3 6.3,2 8,2H19M8,6V8H15V6H8M8,10V12H14V10H8Z\n","$mol_link_source $mol_link\n\thint @ \\Source code\n\tsub /\n\t\t<= Icon $mol_icon_script_text\n","$mol_button_major $mol_button_typed\n\tattr *\n\t\t^\n\t\tmol_theme \\$mol_theme_accent\n","namespace $ { $mol_style_attach( \"mol/button/major/major.view.css\",\n \"[mol_button_major][disabled] {\\n\\topacity: .5;\\n\\tfilter: grayscale();\\n}\\n\"\n) }","$mol_embed_native $mol_scroll\n\turi? \\\n\tdom_name \\object\n\twindow null\n\tattr *\n\t\t^\n\t\tdata <= uri\n\t\ttype <= mime \\\n\tsub /\n\t\t<= Fallback $mol_link\n\t\t\turi <= uri\n\t\t\tsub /\n\t\t\t\t<= title \\\n\tmessage *\n\t\thashchange? <=> uri_change? null\n","namespace $ {\n\n\texport function $mol_promise< Result = void >() {\n\t\t\n\t\tlet done!: ( res: Result | PromiseLike< Result > )=> void\n\t\tlet fail!: ( error?: any ) => void\n\t\t\n\t\tconst promise = new Promise< Result >( ( d, f ) => {\n\t\t\tdone = d\n\t\t\tfail = f\n\t\t} )\n\t\t\n\t\treturn Object.assign( promise, {\n\t\t\tdone,\n\t\t\tfail,\n\t\t} )\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\t\n\texport function $mol_wait_timeout_async( this: $, timeout: number ) {\n\t\tconst promise = $mol_promise()\n\t\tconst task = new this.$mol_after_timeout( timeout , ()=> promise.done() )\n\t\treturn Object.assign( promise, {\n\t\t\tdestructor: ()=> task.destructor()\n\t\t} )\n\t}\n\t\n\texport function $mol_wait_timeout( this: $, timeout: number ) {\n\t\treturn this.$mol_wire_sync( this ).$mol_wait_timeout_async( timeout )\n\t}\n\t\n}\n","namespace $.$$ {\n\texport class $mol_embed_native extends $.$mol_embed_native {\n\n\t\t@ $mol_mem\n\t\twindow() {\n\t\t\t$mol_wire_solid()\n\t\t\treturn $mol_wire_sync( this as $mol_embed_native ).load( this.dom_node_actual() as HTMLIFrameElement )\n\t\t}\n\t\t\n\t\tload( frame: HTMLIFrameElement ) {\n\t\t\treturn new Promise< Window >( ( done, fail )=> {\n\t\t\t\t\n\t\t\t\tframe.onload = () => {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif( frame.contentWindow!.location.href === 'about:blank' ) {\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t}\n\t\t\t\t\t} catch { }\n\t\t\t\t\tdone( frame.contentWindow! )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tframe.onerror = ( event : Event | string ) => {\n\t\t\t\t\tfail( typeof event === 'string' ? new Error( event ) : ( event as ErrorEvent ).error || event )\n\t\t\t\t}\n\t\t\t\t\n\t\t\t} )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\turi_resource() {\n\t\t\treturn this.uri().replace( /#.*/, '' )\n\t\t}\n\t\t\n\t\t@ $mol_mem\n\t\tmessage_listener() {\n\t\t\treturn new $mol_dom_listener(\n\t\t\t\t$mol_dom_context,\n\t\t\t\t'message',\n\t\t\t\t$mol_wire_async( this ).message_receive\n\t\t\t)\n\t\t}\n\t\t\n\t\tmessage_receive( event?: MessageEvent<[ string, string ]> ) {\n\t\t\t\n\t\t\tif( !event ) return\n\t\t\tif( event.source !== this.window() ) return\n\t\t\tif( !Array.isArray( event.data ) ) return\n\t\t\t\n\t\t\t(this.message() as any)[ event.data[0] ]?.( event )\n\t\t}\n\n\t\turi_change( event: MessageEvent<[ string, string ]> ) {\n\t\t\tthis.$.$mol_wait_timeout( 1000 )\n\t\t\tthis.uri( event.data[1] )\n\t\t}\n\n\t\tauto() {\n\t\t\treturn [\n\t\t\t\tthis.message_listener(),\n\t\t\t\tthis.window(),\n\t\t\t]\n\t\t}\n\t\t\n\t}\n}\n","namespace $ { $mol_style_attach( \"mol/embed/native/native.view.css\",\n \"[mol_embed_native] {\\n\\tmax-width: 100%;\\n\\tmax-height: 100vh;\\n\\tobject-fit: cover;\\n\\tdisplay: flex;\\n\\tflex: 1 1 auto;\\n\\tobject-position: top left;\\n\\tborder-radius: var(--mol_gap_round);\\n\\taspect-ratio: 4/3;\\n}\\n\"\n) }","$mol_frame $mol_embed_native\n\tdom_name \\iframe\n\tattr *\n\t\t^\n\t\tdata null\n\t\ttype null\n\t\tsrc <= uri? \\about:config\n\t\tsrcdoc <= html null\n\t\tallow <= allow \\\n\t\t- allowfullscreen <=\n\tfullscreen true\n\taccelerometer true\n\tautoplay true\n\tencription true\n\tgyroscope true\n\tpip true\n\tclipboard_read true\n\tclipboard_write true\n","namespace $.$$ {\n\n\t/**\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_frame_demo\n\t */\n\texport class $mol_frame extends $.$mol_frame {\n\t\t\n\t\twindow() {\n\t\t\t// if( this.html() ) return ( this.dom_node() as HTMLIFrameElement ).contentWindow!\n\t\t\treturn super.window()\n\t\t}\n\n\t\tallow() {\n\t\t\treturn [\n\t\t\t\t... this.fullscreen() ? [ 'fullscreen' ] : [] ,\n\t\t\t\t... this.accelerometer() ? [ 'accelerometer' ] : [] ,\n\t\t\t\t... this.autoplay() ? [ 'autoplay' ] : [] ,\n\t\t\t\t... this.encription() ? [ 'encrypted-media' ] : [] ,\n\t\t\t\t... this.gyroscope() ? [ 'gyroscope' ] : [] ,\n\t\t\t\t... this.pip() ? [ 'picture-in-picture' ] : [] ,\n\t\t\t\t... this.clipboard_read() ? [ `clipboard-read ${ this.uri() }` ] : [],\n\t\t\t\t... this.clipboard_write() ? [ `clipboard-write ${ this.uri() }` ] : [],\n\t\t\t].join('; ')\n\t\t}\n\t\t\n\t}\n}\n","namespace $ {\n\t$mol_style_define( $mol_frame , {\n\t\tborder: {\n\t\t\tstyle: 'none',\n\t\t},\n\t\tmaxHeight: $mol_style_unit.vh(100),\n\t} )\n}\n","$hyoo_showcase $mol_page\n\tplugins /\n\t\t<= Theme $mol_theme_auto\n\tattr * mol_theme \\$mol_theme_dark\n\ttitle @ \\$mol applications\n\ttools /\n\t\t<= Lights $mol_lights_toggle\n\t\t<= Source $mol_link_source uri \\https://github.com/hyoo-ru/showcase.hyoo.ru\n\t\t<= Offer_link $mol_link\n\t\t\turi \\https://offer.hyoo.ru\n\t\t\tsub /\n\t\t\t\t<= Offer_button $mol_button_major\n\t\t\t\t\ttitle <= offer_title @ \\Order\n\tbody / <= Scroll $mol_scroll sub <= apps /\n\t\t<= App_widgets $hyoo_showcase_app\n\t\t\ttitle <= app_widgets_title @ \\$mol components\n\t\t\tdetails \\https://mol.hyoo.ru/#!section=demos\n\t\t<= App_scout $hyoo_showcase_app\n\t\t\ttitle <= app_scout_title @ \\Scout games\n\t\t\tdetails \\https://scout.hyoo.ru/#gist=%D0%A1%D1%82%D0%B5%D0%BD%D0%BA%D0%B0%20%D0%BD%D0%B0%20%D1%81%D1%82%D0%B5%D0%BD%D0%BA%D1%83\n\t\t<= App_piterjs $hyoo_showcase_app\n\t\t\ttitle <= app_piterjs_title @ \\PiterJS\n\t\t\tdetails \\https://piterjs.org/\n\t\t<= App_shelter $hyoo_showcase_app\n\t\t\ttitle <= app_shelter_title @ \\Shelters ERP\n\t\t\tdetails \\https://shelter.hyoo.ru/#login=user\n\t\t<= App_fallacy $hyoo_showcase_app\n\t\t\ttitle <= app_fallacy_title @ \\Fallacies collection\n\t\t\tdetails \\https://fallacy.hyoo.ru/\n\t\t<= App_toys $hyoo_showcase_app\n\t\t\ttitle <= app_toys_title @ \\Online store\n\t\t\tdetails \\https://toys.hyoo.ru/#size=M/popular\n\t\t<= App_calc $hyoo_showcase_app\n\t\t\ttitle <= app_calc_title @ \\Spreadsheet\n\t\t\tdetails \\https://calc.hyoo.ru/#title=a*x**2%20%2B%20b*x%20%2B%20c%20%3D%200/A1=a/B2=6/A2=3/B1=b/C1=c/E1=D/E2=%3D%20B2**2%20-%204*A2*C2/G1=x1/G2=%3D%20%28%20-B2%20%2B%20sqrt%28E2%29%20%29%20%2F%202%20%2F%20A2/H1=x2/H2=%3D%20%28%20-B2%20-%20sqrt%28E2%29%20%29%20%2F%202%20%2F%20A2/C2=0\n\t\t<= App_notes $hyoo_showcase_app\n\t\t\ttitle <= app_notes_title @ \\Notes\n\t\t\tdetails \\https://notes.hyoo.ru/#\n\t\t<= App_invest $hyoo_showcase_app\n\t\t\ttitle <= app_invest_title @ \\Investments\n\t\t\tdetails \\https://invest.hyoo.ru/\n\t\t<= App_todomvc $hyoo_showcase_app\n\t\t\ttitle <= app_todomvc_title @ \\ToDoMVC\n\t\t\tdetails \\https://todomvc.hyoo.ru/\n\t\t<= App_life $hyoo_showcase_app\n\t\t\ttitle <= app_life_title @ \\Life game\n\t\t\tdetails \\https://life.hyoo.ru/#snapshot=0~1fffe~2ffff~20000~20001~10002~30000~6ffff~7ffff~7fffe~6fffe~6fffd~7fffd~80000~8fffc~a0000~a0001~afffc~afffb~14fffe~15fffd~15fffe~14fffd~-3~-fffd~-10003~-1fffd~-20002~-2fffe~-3ffff~-40000~-30001~-d0000~-e0000~-d0001~-c0001\n\t\t<= App_habhub $hyoo_showcase_app\n\t\t\ttitle <= app_habhub_title @ \\Reader\n\t\t\tdetails \\https://habhub.hyoo.ru/#gist=https%3A%2F%2Fapi.github.com%2Frepos%2Fnin-jin%2FHabHub%2Fissues%2F3\n\t\t<= App_questions $hyoo_showcase_app\n\t\t\ttitle <= app_questions_title @ \\StackOverflow client\n\t\t\tdetails \\https://mol.js.org/app/questions/-/#question=2003505\n\t\t<= App_slides $hyoo_showcase_app\n\t\t\ttitle <= app_slides_title @ \\Slideshow\n\t\t\tdetails \\https://slides.hyoo.ru/#slides=https%3A%2F%2Fnin-jin.github.io%2Fslides%2Forp%2F/slide=2\n\t\t<= App_iq $hyoo_showcase_app\n\t\t\ttitle <= app_iq_title @ \\IQ tester\n\t\t\tdetails \\https://iq.hyoo.ru/\n\t\t<= App_rdf $hyoo_showcase_app\n\t\t\ttitle <= app_rdf_title @ \\RDF browser\n\t\t\tdetails \\http://rdf.hyoo.ru/#uri=http%3A%2F%2Fdbpedia.org%2Fontology%2Fhead\n\t\t<= App_lamps $hyoo_showcase_app\n\t\t\ttitle <= app_lamps_title @ \\Lamps database\n\t\t\tdetails \\https://lamps.hyoo.ru/#lamp=1\n\t\t<= App_bench $hyoo_showcase_app\n\t\t\ttitle <= app_bench_title @ \\Benchmark\n\t\t\tdetails \\https://bench.hyoo.ru/#bench=https%3A%2F%2Fhyoo-ru.github.io%2Ftodomvc%2Fbenchmark%2F/sort=fill\n\t\t<= App_request $hyoo_showcase_app\n\t\t\ttitle <= app_request_title @ \\HTTP Debug Tool\n\t\t\tdetails \\https://http.hyoo.ru/#uri=https%3A%2F%2Fapi.github.com%2Frepos%2Fhyoo-ru%2Fmam_mol\n\t\t<= App_jsperf $hyoo_showcase_app\n\t\t\ttitle <= app_jsperf_title @ \\JS Benchmarking Tool\n\t\t\tdetails \\https://perf.js.hyoo.ru/#sources=%5B%22window.location.href%3B%22%2C%22document.location.href%3B%22%5D/prefix/postfix/optimized=true\n\t\t<= App_issues $hyoo_showcase_app\n\t\t\ttitle <= app_issues_title @ \\GitHub projects comparison\n\t\t\tdetails \\https://compare.github.hyoo.ru/#projects=hyoo-ru%2Fmam_mol%2Cfacebook%2Freact%2Cvuejs%2Fvue\n\t\t<= App_tree $hyoo_showcase_app\n\t\t\ttitle <= app_tree_title @ \\Tree Sandbox\n\t\t\tdetails \\https://tree.hyoo.ru/#pipeline=%24mol_tree2_from_string~%24mol_jack_transform~%24mol_tree2_js_to_text~%24mol_tree2_text_to_string~%24mol_js_eval/source=hack%20%2Bpipe%0A%09hack%20%7C%3E%20var%0A%09%09pipe%0A%09%09from%0A%09hack%20%3C%7C%20pipe%0A%09from%0A%0Ahack%20%2Bmath%0A%09hack%20square%20%28**%29%0A%09%09%3C%7C%0A%09%092%0A%09hack%20next%20%28%2B%29%0A%09%09%3C%7C%0A%09%091%0A%09from%0A%0Ahack%20%2Bdebug%0A%09hack%20log%20%28%29%0A%09%09console%0A%09%09%5B%5D%20%5Clog%0A%09%09%28%2C%29%20from%0A%09from%0A%0A%2Bpipe%20%2Bmath%20%2Bdebug%20%7B%3B%7D%0A%09%7C%3E%203%0A%09%7C%3E%20square%0A%09%7C%3E%20next%0A%09log%20%3C%7C%0A%09return%20%3C%7C%0A\n\t\t<= App_icons $hyoo_showcase_app\n\t\t\ttitle <= app_icons_title @ \\Icons galery\n\t\t\tdetails \\https://nin-jin.github.io/mol_icon/\n\t\t<= App_portal $hyoo_showcase_app\n\t\t\ttitle <= app_portal_title @ \\Portal\n\t\t\tdetails \\https://mol.hyoo.ru/#app=components\n\n$hyoo_showcase_app $mol_link\n\ttarget \\_blank\n\turi <= details \\\n\tpreview \\\n\tsub /\n\t\t<= Title $mol_view sub / <= title \\\n\t\t<= Container $mol_view sub /\n\t\t\t<= Demo $mol_frame\n\t\t\t\tstyle * background-image <= background \\\n\t\t\t\turi <= details \\\n","namespace $.$$ {\n\n\texport class $hyoo_showcase_app extends $.$hyoo_showcase_app {\n\n\t\tbackground() {\n\t\t\treturn this.preview() ? `url(${ JSON.stringify( this.preview() ) })` : ''\n\t\t}\n\n\t}\n\n}\n","namespace $ { $mol_style_attach( \"hyoo/showcase/showcase.view.css\",\n \"[hyoo_showcase] {\\n\\tdisplay: flex;\\n}\\n\\n[hyoo_showcase_scroll] {\\n\\tdisplay: flex;\\n\\tflex-direction: row;\\n\\tflex-wrap: wrap;\\n\\tpadding: .5rem;\\n}\\n\\n[hyoo_showcase_app] {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tflex: 1 1 26rem;\\n\\tmargin: 0;\\n\\theight: 16rem;\\n\\tcursor: pointer;\\n}\\n\\n[hyoo_showcase_app]:hover {\\n\\t/* opacity: .9; */\\n}\\n\\n[hyoo_showcase_app_title] {\\n\\tflex: none;\\n}\\n\\n[hyoo_showcase_app_container] {\\n position: relative;\\n width: 100%;\\n max-width: 100%;\\n height: 13rem;\\n max-height: 100%;\\n}\\n\\n[hyoo_showcase_app_demo] {\\n\\tpointer-events: none;\\n\\tbox-shadow: 0 0 0 2px var(--mol_theme_line);\\n\\twidth: 200%;\\n max-width: 200%;\\n max-height: 200%;\\n transform: scale( .5 );\\n transform-origin: 0 0;\\n background-size: cover;\\n position: absolute;\\n}\\n\\n[hyoo_showcase_offer_link] {\\n\\tpadding: 0;\\n}\\n\"\n) }","namespace $ {\n\n\texport function $mol_test( set : { [ name : string ] : string | ( ( context : $ )=> void ) } ) {\n\t\t\n\t\tfor( let name in set ) {\n\n\t\t\tconst code = set[ name ]\n\t\t\tconst test = ( typeof code === 'string' ) ? new Function( '' , code ) as ()=> void : code\n\t\t\t\n\t\t\t$mol_test_all.push( test )\n\t\t}\n\n\t\t$mol_test_schedule()\n\t}\n\n\texport let $mol_test_mocks = [] as Array< ( context : $ )=> void >\n\n\texport const $mol_test_all = [] as Array< ( context : $ )=> any >\n\n\texport async function $mol_test_run() {\n\n\t\tfor( var test of $mol_test_all ) {\n\n\t\t\tlet context = Object.create( $$ )\n\t\t\tfor( let mock of $mol_test_mocks ) await mock( context )\n\t\t\t\n\t\t\tconst res = test( context )\n\t\t\tif( $mol_promise_like( res ) ) {\n\t\t\t\tawait new Promise( ( done, fail )=> {\n\t\t\t\t\tres.then( done, fail )\n\t\t\t\t\tsetTimeout( ()=> fail( new Error( 'Test timeout: ' + test.name ) ), 1000 )\n\t\t\t\t} )\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\t$$.$mol_log3_done({\n\t\t\tplace: '$mol_test',\n\t\t\tmessage: 'All tests passed',\n\t\t\tcount: $mol_test_all.length,\n\t\t})\n\t\t\n\t}\n\t\n\tlet scheduled = false\n\texport function $mol_test_schedule() {\n\n\t\tif( scheduled ) return\n\t\tscheduled = true\n\n\t\tsetTimeout( async ()=> {\n\t\t\t\n\t\t\tscheduled = false\n \t\t\t\n\t\t\tawait $mol_test_run()\n\t\t\t$$.$mol_test_complete()\n\t\t\t\n\t\t} , 1000 )\n\t\t\n\t}\n\n\t$mol_test_mocks.push( context => {\n\t\tlet seed = 0\n\n\t\tcontext.Math = Object.create( Math )\n\t\tcontext.Math.random = ()=> Math.sin( seed++ )\n\n\t\tconst forbidden = [ 'XMLHttpRequest' , 'fetch' ] as const\n\n\t\tfor( let api of forbidden ) {\n\t\t\tcontext[ api ] = new Proxy( function(){} as any , {\n\t\t\t\tget() {\n\t\t\t\t\t$mol_fail_hidden( new Error( `${ api } is forbidden in tests` ) )\n\t\t\t\t} ,\n\t\t\t\tapply() {\n\t\t\t\t\t$mol_fail_hidden( new Error( `${ api } is forbidden in tests` ) )\n\t\t\t\t} ,\n\t\t\t} )\n\t\t}\n\t\t\n\t} )\n\n\t$mol_test({\n\n\t\t'mocked Math.random'( $ ) {\n\t\t\tconsole.assert( $.Math.random() === 0 )\n\t\t\tconsole.assert( $.Math.random() === Math.sin(1) )\n\t\t} ,\n\n\t\t'forbidden XMLHttpRequest'( $ ) {\n\t\t\ttry {\n\t\t\t\tconsole.assert( void new $.XMLHttpRequest )\n\t\t\t} catch( error: any ) {\n\t\t\t\tconsole.assert( error.message === 'XMLHttpRequest is forbidden in tests' )\n\t\t\t}\n\t\t} ,\n\n\t\t'forbidden fetch'( $ ) {\n\t\t\ttry {\n\t\t\t\tconsole.assert( void $.fetch('') )\n\t\t\t} catch( error: any ) {\n\t\t\t\tconsole.assert( error.message === 'fetch is forbidden in tests' )\n\t\t\t}\n\t\t} ,\n\n\t})\n\n}\n","namespace $ {\n\t\n\texport function $mol_test_complete() {\n\t\tprocess.exit(0)\n\t}\n\t\n}\n","namespace $ {\n\t$mol_test_mocks.push( $=> $.$mol_fail_log = ()=> false )\n}\n\n","namespace $ {\n\n\t$mol_test_mocks.push( $ => {\n\t\t$.$mol_log3_come = ()=> {}\n\t\t$.$mol_log3_done = ()=> {}\n\t\t$.$mol_log3_fail = ()=> {}\n\t\t$.$mol_log3_warn = ()=> {}\n\t\t$.$mol_log3_rise = ()=> {}\n\t\t$.$mol_log3_area = ()=> ()=> {}\n\t} )\n\n}\n","namespace $ {\n\n\texport let $mol_jsx_prefix = ''\n\texport let $mol_jsx_crumbs = ''\n\n\texport let $mol_jsx_booked = null as null | Set< string >\n\t\n\texport let $mol_jsx_document : $mol_jsx.JSX.ElementClass['ownerDocument'] = {\n\t\tgetElementById : ()=> null ,\n\t\tcreateElementNS : ( space: string, name : string )=> $mol_dom_context.document.createElementNS( space, name ) as any,\n\t\tcreateDocumentFragment : ()=> $mol_dom_context.document.createDocumentFragment(),\n\t}\n\t\n\texport const $mol_jsx_frag = ''\n\n\t/**\n\t * JSX adapter that makes DOM tree.\n\t * Generates global unique ids for every DOM-element by components tree with ids.\n\t * Ensures all local ids are unique.\n\t * Can reuse an existing nodes by GUIDs when used inside [`mol_jsx_attach`](https://github.com/hyoo-ru/mam_mol/tree/master/jsx/attach).\n\t */\n\texport function $mol_jsx<\n\t\tProps extends $mol_jsx.JSX.IntrinsicAttributes,\n\t\tChildren extends Array< Node | string >\n\t>(\n\t\tElem : string\n\t\t\t| ( ( props : Props , ... children : Children ) => Element ) ,\n\t\tprops : Props ,\n\t\t... childNodes : Children\n\t) : Element | DocumentFragment {\n\n\t\tconst id = props && props.id || ''\n\t\tconst guid = id ? $mol_jsx_prefix ? $mol_jsx_prefix + '/'+ id : id : $mol_jsx_prefix\n\t\tconst crumbs_self = id ? $mol_jsx_crumbs.replace( /(\\S+)/g, `$1_${ id.replace( /\\/.*/i, '' ) }` ) : $mol_jsx_crumbs\n\t\t\n\t\tif( Elem && $mol_jsx_booked ) {\n\t\t\tif( $mol_jsx_booked.has( id ) ) {\n\t\t\t\t$mol_fail( new Error( `JSX already has tag with id ${ JSON.stringify( guid ) }` ) )\n\t\t\t} else {\n\t\t\t\t$mol_jsx_booked.add( id )\n\t\t\t}\n\t\t}\n\n\t\tlet node: Element | DocumentFragment | null = guid ? $mol_jsx_document.getElementById( guid ) : null\n\n\t\tif( $mol_jsx_prefix ) {\n\t\t\t\n\t\t\tconst prefix_ext = $mol_jsx_prefix\n\t\t\tconst booked_ext = $mol_jsx_booked\n\t\t\tconst crumbs_ext = $mol_jsx_crumbs\n\t\t\t\n\t\t\tfor( const field in props ) {\n\t\t\t\t\n\t\t\t\tconst func = props[ field ]\n\t\t\t\tif( typeof func !== 'function' ) continue\n\t\t\t\t\n\t\t\t\t\n\t\t\t\tconst wrapper = function( this: any, ... args: any[] ) {\n\t\t\t\t\t\n\t\t\t\t\tconst prefix = $mol_jsx_prefix\n\t\t\t\t\tconst booked = $mol_jsx_booked\n\t\t\t\t\tconst crumbs = $mol_jsx_crumbs\n\t\t\t\t\t\n\t\t\t\t\ttry {\n\t\t\n\t\t\t\t\t\t$mol_jsx_prefix = prefix_ext\n\t\t\t\t\t\t$mol_jsx_booked = booked_ext\n\t\t\t\t\t\t$mol_jsx_crumbs = crumbs_ext\n\t\t\t\t\t\t\n\t\t\t\t\t\treturn func.call( this, ... args )\n\t\t\t\t\t\t\n\t\t\t\t\t} finally {\n\t\t\t\t\t\t\n\t\t\t\t\t\t$mol_jsx_prefix = prefix\n\t\t\t\t\t\t$mol_jsx_booked = booked\n\t\t\t\t\t\t$mol_jsx_crumbs = crumbs\n\t\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t$mol_func_name_from( wrapper, func )\n\t\t\t\tprops[ field ] = wrapper as any\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\n\t\tif( typeof Elem !== 'string' ) {\n\n\t\t\tif( 'prototype' in Elem ) {\n\n\t\t\t\tconst view = node && (node as any)[ String(Elem) ] || new ( Elem as any )\n\t\t\t\t\n\t\t\t\tObject.assign( view , props )\n\t\t\t\tview[ Symbol.toStringTag ] = guid\n\t\t\t\t\n\t\t\t\tview.childNodes = childNodes\n\t\t\t\t\n\t\t\t\tif( !view.ownerDocument ) view.ownerDocument = $mol_jsx_document\n\t\t\t\tview.className = ( crumbs_self ? crumbs_self + ' ' : '' ) + ( Elem['name'] || Elem )\n\t\t\t\t\n\t\t\t\tnode = view.valueOf()\n\t\t\t\t\n\t\t\t\t;(node as any)![ String(Elem) ] = view\n\t\t\t\t\n\t\t\t\treturn node!\n\n\t\t\t} else {\n\n\t\t\t\tconst prefix = $mol_jsx_prefix\n\t\t\t\tconst booked = $mol_jsx_booked\n\t\t\t\tconst crumbs = $mol_jsx_crumbs\n\t\t\t\t\n\t\t\t\ttry {\n\t\n\t\t\t\t\t$mol_jsx_prefix = guid\n\t\t\t\t\t$mol_jsx_booked = new Set\n\t\t\t\t\t$mol_jsx_crumbs = ( crumbs_self ? crumbs_self + ' ' : '' ) + ( Elem['name'] || Elem )\n\t\n\t\t\t\t\treturn ( Elem as any )( props , ... childNodes )\n\t\t\t\t\t\n\t\t\t\t} finally {\n\n\t\t\t\t\t$mol_jsx_prefix = prefix\n\t\t\t\t\t$mol_jsx_booked = booked\n\t\t\t\t\t$mol_jsx_crumbs = crumbs\n\t\n\t\t\t\t}\n\t\t\t\t\n\t\t\t}\n\n\t\t}\n\n\t\tif( !node ) {\n\t\t\tnode = Elem\n\t\t\t\t? $mol_jsx_document.createElementNS( props?.xmlns ?? 'http://www.w3.org/1999/xhtml', Elem )\n\t\t\t\t: $mol_jsx_document.createDocumentFragment()\n\t\t}\n\n\t\t$mol_dom_render_children( node , ( [] as ( Node | string )[] ).concat( ... childNodes ) )\n\t\tif( !Elem ) return node\n\n\t\tif( guid ) ( node as Element ).id = guid\n\t\tfor( const key in props ) {\n\t\t\tif( key === 'id' ) continue\n\t\t\t\n\t\t\tif( typeof props[ key ] === 'string' ) {\n\t\t\t\t\n\t\t\t\tif( typeof (node as any)[ key ] === 'string' ) (node as any)[ key ] = props[ key ]\n\t\t\t\t;( node as Element ).setAttribute( key , (props as any)[ key ] )\n\t\t\t\t\n\t\t\t} else if(\n\t\t\t\tprops[ key ] &&\n\t\t\t\ttypeof props[ key ] === 'object' &&\n\t\t\t\tReflect.getPrototypeOf( props[ key ] as any ) === Reflect.getPrototypeOf({})\n\t\t\t) {\n\n\t\t\t\tif( typeof (node as any)[ key ] === 'object' ) {\n\t\t\t\t\tObject.assign( ( node as any )[ key ] , props[ key ] )\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\n\t\t\t} else {\n\n\t\t\t\t(node as any)[ key ] = props[ key ]\n\t\t\t\t\n\t\t\t}\n\n\t\t}\n\n\t\tif( $mol_jsx_crumbs ) ( node as Element ).className = ( (props as any)?.['class'] ? (props as any)['class'] + ' ' : '' ) + crumbs_self\n\n\t\treturn node\n\n\t}\n\n\texport declare namespace $mol_jsx.JSX {\n\n\t\texport interface Element extends HTMLElement {\n\t\t\tclass?: string\n\t\t}\n\t\t\n\t\texport interface ElementClass {\n\t\t\tattributes : {}\n\t\t\townerDocument : Pick< Document , 'getElementById' | 'createElementNS' | 'createDocumentFragment' >\n\t\t\tchildNodes : Array< Node | string >\n\t\t\tvalueOf() : Element\n\t\t}\n\t\t\n\t\ttype OrString< Dict > = {\n\t\t\t[ key in keyof Dict ]: Dict[ key ] | string\n\t\t}\n\t\t\n\t\t/** Props for html elements */\n\t\texport type IntrinsicElements = {\n\t\t\t[ key in keyof ElementTagNameMap ]? : $.$mol_type_partial_deep< OrString<\n\t\t\t\t& Element\n\t\t\t\t& IntrinsicAttributes\n\t\t\t\t& ElementTagNameMap[ key ]\n\t\t\t> >\n\t\t}\n\t\t\n\t\t/** Additional undeclared props */\n\t\texport interface IntrinsicAttributes {\n\t\t\tid? : string\n\t\t\txmlns? : string\n\t\t}\n\t\t\n\t\texport interface ElementAttributesProperty {\n\t\t\tattributes : {\n\t\t\t}\n\t\t}\n\t\t\n\t\t// export type IntrinsicClassAttributes< Class > = $.$mol_type_partial_deep< Omit< Class , 'valueOf' > >\n\t\t\n\t\tinterface ElementChildrenAttribute {\n\t\t}\n\t\n\t}\n\n}\n","/** @jsx $mol_jsx */\nnamespace $ {\n\t\n\t$mol_test({\n\t\t\n\t\t'Make empty div'() {\n\t\t\t$mol_assert_equal( (
).outerHTML , '
' )\n\t\t} ,\n\t\t\n\t\t'Define native field'() {\n\t\t\t\n\t\t\tconst dom = as HTMLInputElement\n\t\t\t\n\t\t\t$mol_assert_equal( dom.outerHTML, '' )\n\t\t\t$mol_assert_equal( dom.value, '123' )\n\n\t\t} ,\n\t\t\n\t\t'Define classes'() {\n\t\t\t\n\t\t\tconst dom =
\n\t\t\t\n\t\t\t$mol_assert_equal( dom.outerHTML, '
' )\n\n\t\t} ,\n\t\t\n\t\t'Define styles'() {\n\t\t\t\n\t\t\tconst dom =
\n\t\t\t\n\t\t\t$mol_assert_equal( dom.outerHTML, '
' )\n\n\t\t} ,\n\t\t\n\t\t'Define dataset'() {\n\t\t\t\n\t\t\tconst dom =
\n\t\t\t\n\t\t\t$mol_assert_equal( dom.outerHTML, '
' )\n\n\t\t} ,\n\t\t\n\t\t'Define attributes'() {\n\t\t\t\n\t\t\tconst dom =