From 9b41e131ded14e21f8b93ebce0754406133d0da9 Mon Sep 17 00:00:00 2001 From: Joe Wyrembelski Date: Fri, 7 Mar 2025 09:19:26 -0500 Subject: [PATCH 1/7] Updating dependencies to support Dart 3.7.0 --- floor/pubspec.lock | 382 ++++++++++++++++++++-------------- floor/pubspec.yaml | 20 +- floor_annotation/pubspec.lock | 6 +- floor_annotation/pubspec.yaml | 2 +- floor_common/pubspec.lock | 326 ++++++++++++++++------------- floor_common/pubspec.yaml | 20 +- floor_ffi/pubspec.lock | 74 ++++--- floor_ffi/pubspec.yaml | 6 +- floor_generator/pubspec.lock | 303 ++++++++++++++------------- floor_generator/pubspec.yaml | 31 ++- 10 files changed, 647 insertions(+), 523 deletions(-) diff --git a/floor/pubspec.lock b/floor/pubspec.lock index b8f2496b..822343b0 100644 --- a/floor/pubspec.lock +++ b/floor/pubspec.lock @@ -5,90 +5,98 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - sha256: "0b2f2bd91ba804e53a61d757b986f89f1f9eaed5b11e4b2f5a2468d86d6c9fc7" + sha256: dc27559385e905ad30838356c5f5d574014ba39872d732111cd07ac0beff4c57 url: "https://pub.dev" source: hosted - version: "67.0.0" + version: "80.0.0" analyzer: dependency: transitive description: name: analyzer - sha256: "37577842a27e4338429a1cbc32679d508836510b056f1eedf0c8d20e39c1383d" + sha256: "192d1c5b944e7e53b24b5586db760db934b177d4147c42fbca8c8c5f1eb8d11e" url: "https://pub.dev" source: hosted - version: "6.4.1" + version: "7.3.0" + archive: + dependency: transitive + description: + name: archive + sha256: "0c64e928dcbefddecd234205422bcfc2b5e6d31be0b86fef0d0dd48d7b4c9742" + url: "https://pub.dev" + source: hosted + version: "4.0.4" args: dependency: transitive description: name: args - sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 + sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6 url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.6.0" async: dependency: transitive description: name: async - sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63 url: "https://pub.dev" source: hosted - version: "2.11.0" + version: "2.12.0" boolean_selector: dependency: transitive description: name: boolean_selector - sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" build: dependency: transitive description: name: build - sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" + sha256: cef23f1eda9b57566c81e2133d196f8e3df48f244b317368d65c5943d91148f0 url: "https://pub.dev" source: hosted - version: "2.4.1" + version: "2.4.2" build_config: dependency: transitive description: name: build_config - sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 + sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33" url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" build_daemon: dependency: transitive description: name: build_daemon - sha256: "0343061a33da9c5810b2d6cee51945127d8f4c060b7fbdd9d54917f0a3feaaa1" + sha256: "8e928697a82be082206edb0b9c99c5a4ad6bc31c9e9b8b2f291ae65cd4a25daa" url: "https://pub.dev" source: hosted - version: "4.0.1" + version: "4.0.4" build_resolvers: dependency: transitive description: name: build_resolvers - sha256: "339086358431fa15d7eca8b6a36e5d783728cf025e559b834f4609a1fcfb7b0a" + sha256: b9e4fda21d846e192628e7a4f6deda6888c36b5b69ba02ff291a01fd529140f0 url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.4.4" build_runner: dependency: "direct dev" description: name: build_runner - sha256: "581bacf68f89ec8792f5e5a0b2c4decd1c948e97ce659dc783688c8a88fbec21" + sha256: "058fe9dce1de7d69c4b84fada934df3e0153dd000758c4d65964d0166779aa99" url: "https://pub.dev" source: hosted - version: "2.4.8" + version: "2.4.15" build_runner_core: dependency: transitive description: name: build_runner_core - sha256: "4ae8ffe5ac758da294ecf1802f2aff01558d8b1b00616aa7538ea9a8a5d50799" + sha256: "22e3aa1c80e0ada3722fe5b63fd43d9c8990759d0a2cf489c8c5d7b2bdebc021" url: "https://pub.dev" source: hosted - version: "7.3.0" + version: "8.0.0" built_collection: dependency: transitive description: @@ -101,26 +109,26 @@ packages: dependency: transitive description: name: built_value - sha256: fedde275e0a6b798c3296963c5cd224e3e1b55d0e478d5b7e65e6b540f363a0e + sha256: ea90e81dc4a25a043d9bee692d20ed6d1c4a1662a28c03a96417446c093ed6b4 url: "https://pub.dev" source: hosted - version: "8.9.1" + version: "8.9.5" characters: dependency: transitive description: name: characters - sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.4.0" charcode: dependency: transitive description: name: charcode - sha256: fb98c0f6d12c920a02ee2d998da788bca066ca5f148492b7085ee23372b12306 + sha256: fb0f1107cac15a5ea6ef0a6ef71a807b9e4267c713bb93e00e92d737cc8dbd8a url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.4.0" checked_yaml: dependency: transitive description: @@ -133,90 +141,90 @@ packages: dependency: transitive description: name: clock - sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" code_builder: dependency: transitive description: name: code_builder - sha256: f692079e25e7869c14132d39f223f8eec9830eb76131925143b2129c4bb01b37 + sha256: "0ec10bf4a89e4c613960bf1e8b42c64127021740fb21640c29c909826a5eea3e" url: "https://pub.dev" source: hosted - version: "4.10.0" + version: "4.10.1" collection: dependency: "direct main" description: name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" url: "https://pub.dev" source: hosted - version: "1.18.0" + version: "1.19.1" convert: dependency: transitive description: name: convert - sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.1.2" crypto: dependency: transitive description: name: crypto - sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab + sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855" url: "https://pub.dev" source: hosted - version: "3.0.3" + version: "3.0.6" dart_style: dependency: transitive description: name: dart_style - sha256: "99e066ce75c89d6b29903d788a7bb9369cf754f7b24bf70bf4b6d6d6b26853b9" + sha256: "27eb0ae77836989a3bc541ce55595e8ceee0992807f14511552a898ddd0d88ac" url: "https://pub.dev" source: hosted - version: "2.3.6" + version: "3.0.1" dev_build: dependency: transitive description: name: dev_build - sha256: e5d575f3de4b0e5f004e065e1e2d98fa012d634b61b5855216b5698ed7f1e443 + sha256: "6e5251015d8fd2f5597615cef58c9f7e69035085520de97fd055c02ecfa5afa6" url: "https://pub.dev" source: hosted - version: "0.16.4+3" + version: "1.1.2+6" fake_async: dependency: transitive description: name: fake_async - sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc" url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.3.2" ffi: dependency: transitive description: name: ffi - sha256: "493f37e7df1804778ff3a53bd691d8692ddf69702cf4c1c1096a2e41b4779e21" + sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.4" file: dependency: transitive description: name: file - sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 url: "https://pub.dev" source: hosted - version: "7.0.0" + version: "7.0.1" fixnum: dependency: transitive description: name: fixnum - sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" floor_annotation: dependency: "direct main" description: @@ -252,170 +260,178 @@ packages: dependency: transitive description: name: frontend_server_client - sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" + sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 url: "https://pub.dev" source: hosted - version: "3.2.0" + version: "4.0.0" glob: dependency: transitive description: name: glob - sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" + sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.3" graphs: dependency: transitive description: name: graphs - sha256: aedc5a15e78fc65a6e23bcd927f24c64dd995062bcd1ca6eda65a3cff92a4d19 + sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" url: "https://pub.dev" source: hosted - version: "2.3.1" + version: "2.3.2" http: dependency: transitive description: name: http - sha256: "761a297c042deedc1ffbb156d6e2af13886bb305c2a343a4d972504cd67dd938" + sha256: fe7ab022b76f3034adc518fb6ea04a82387620e19977665ea18d30a1cf43442f url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.3.0" http_multi_server: dependency: transitive description: name: http_multi_server - sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" + sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 url: "https://pub.dev" source: hosted - version: "3.2.1" + version: "3.2.2" http_parser: dependency: transitive description: name: http_parser - sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" + sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" url: "https://pub.dev" source: hosted - version: "4.0.2" + version: "4.1.2" io: dependency: transitive description: name: io - sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" + sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b url: "https://pub.dev" source: hosted - version: "1.0.4" + version: "1.0.5" js: dependency: transitive description: name: js - sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 + sha256: "53385261521cc4a0c4658fd0ad07a7d14591cf8fc33abbceae306ddb974888dc" url: "https://pub.dev" source: hosted - version: "0.6.7" + version: "0.7.2" json_annotation: dependency: transitive description: name: json_annotation - sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467 + sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" url: "https://pub.dev" source: hosted - version: "4.8.1" + version: "4.9.0" leak_tracker: dependency: transitive description: name: leak_tracker - sha256: "78eb209deea09858f5269f5a5b02be4049535f568c07b275096836f01ea323fa" + sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec url: "https://pub.dev" source: hosted - version: "10.0.0" + version: "10.0.8" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: b46c5e37c19120a8a01918cfaf293547f47269f7cb4b0058f21531c2465d6ef0 + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "3.0.9" leak_tracker_testing: dependency: transitive description: name: leak_tracker_testing - sha256: a597f72a664dbd293f3bfc51f9ba69816f84dcd403cdac7066cb3f6003f3ab47 + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" url: "https://pub.dev" source: hosted - version: "2.0.1" - lists: - dependency: transitive - description: - name: lists - sha256: "4ca5c19ae4350de036a7e996cdd1ee39c93ac0a2b840f4915459b7d0a7d4ab27" - url: "https://pub.dev" - source: hosted - version: "1.0.1" + version: "3.0.1" logging: dependency: transitive description: name: logging - sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" + sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.3.0" matcher: dependency: "direct dev" description: name: matcher - sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 url: "https://pub.dev" source: hosted - version: "0.12.16+1" + version: "0.12.17" material_color_utilities: dependency: transitive description: name: material_color_utilities - sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a" + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec url: "https://pub.dev" source: hosted - version: "0.8.0" + version: "0.11.1" meta: dependency: "direct main" description: name: meta - sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04 + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c url: "https://pub.dev" source: hosted - version: "1.11.0" + version: "1.16.0" mime: dependency: transitive description: name: mime - sha256: "2e123074287cc9fd6c09de8336dae606d1ddb88d9ac47358826db698c176a1f2" + sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" url: "https://pub.dev" source: hosted - version: "1.0.5" + version: "2.0.0" mockito: dependency: "direct dev" description: name: mockito - sha256: "6841eed20a7befac0ce07df8116c8b8233ed1f4486a7647c7fc5a02ae6163917" + sha256: f99d8d072e249f719a5531735d146d8cf04c580d93920b04de75bef6dfb2daf6 url: "https://pub.dev" source: hosted - version: "5.4.4" + version: "5.4.5" package_config: dependency: transitive description: name: package_config - sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" + sha256: "92d4488434b520a62570293fbd33bb556c7d49230791c1b4bbd973baf6d2dc67" url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" path: dependency: "direct main" description: name: path - sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" url: "https://pub.dev" source: hosted - version: "1.9.0" + version: "1.9.1" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" pool: dependency: transitive description: @@ -424,203 +440,243 @@ packages: url: "https://pub.dev" source: hosted version: "1.5.1" + posix: + dependency: transitive + description: + name: posix + sha256: a0117dc2167805aa9125b82eee515cc891819bac2f538c83646d355b16f58b9a + url: "https://pub.dev" + source: hosted + version: "6.0.1" process_run: dependency: transitive description: name: process_run - sha256: "8d9c6198b98fbbfb511edd42e7364e24d85c163e47398919871b952dc86a423e" + sha256: "6ec839cdd3e6de4685318e7686cd4abb523c3d3a55af0e8d32a12ae19bc66622" url: "https://pub.dev" source: hosted - version: "0.14.2" + version: "1.2.4" pub_semver: dependency: transitive description: name: pub_semver - sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" + sha256: "7b3cfbf654f3edd0c6298ecd5be782ce997ddf0e00531b9464b55245185bbbbd" url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.1.5" pubspec_parse: dependency: transitive description: name: pubspec_parse - sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367 + sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082" url: "https://pub.dev" source: hosted - version: "1.2.3" + version: "1.5.0" shelf: dependency: transitive description: name: shelf - sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 + sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12 url: "https://pub.dev" source: hosted - version: "1.4.1" + version: "1.4.2" shelf_web_socket: dependency: transitive description: name: shelf_web_socket - sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" + sha256: "3632775c8e90d6c9712f883e633716432a27758216dfb61bd86a8321c0580925" url: "https://pub.dev" source: hosted - version: "1.0.4" + version: "3.0.0" + simple_sparse_list: + dependency: transitive + description: + name: simple_sparse_list + sha256: aa648fd240fa39b49dcd11c19c266990006006de6699a412de485695910fbc1f + url: "https://pub.dev" + source: hosted + version: "0.1.4" sky_engine: dependency: transitive description: flutter source: sdk - version: "0.0.99" + version: "0.0.0" source_gen: dependency: transitive description: name: source_gen - sha256: "14658ba5f669685cd3d63701d01b31ea748310f7ab854e471962670abcf57832" + sha256: "35c8150ece9e8c8d263337a265153c3329667640850b9304861faea59fc98f6b" url: "https://pub.dev" source: hosted - version: "1.5.0" + version: "2.0.0" source_span: dependency: transitive description: name: source_span - sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" url: "https://pub.dev" source: hosted - version: "1.10.0" + version: "1.10.1" sqflite: dependency: "direct main" description: name: sqflite - sha256: a9016f495c927cb90557c909ff26a6d92d9bd54fc42ba92e19d4e79d61e798c6 + sha256: e2297b1da52f127bc7a3da11439985d9b536f75070f3325e62ada69a5c585d03 url: "https://pub.dev" source: hosted - version: "2.3.2" + version: "2.4.2" + sqflite_android: + dependency: transitive + description: + name: sqflite_android + sha256: "2b3070c5fa881839f8b402ee4a39c1b4d561704d4ebbbcfb808a119bc2a1701b" + url: "https://pub.dev" + source: hosted + version: "2.4.1" sqflite_common: dependency: transitive description: name: sqflite_common - sha256: "3da423ce7baf868be70e2c0976c28a1bb2f73644268b7ffa7d2e08eab71f16a4" + sha256: "84731e8bfd8303a3389903e01fb2141b6e59b5973cacbb0929021df08dddbe8b" url: "https://pub.dev" source: hosted - version: "2.5.4" + version: "2.5.5" sqflite_common_ffi: dependency: "direct main" description: name: sqflite_common_ffi - sha256: "4d6137c29e930d6e4a8ff373989dd9de7bac12e3bc87bce950f6e844e8ad3bb5" + sha256: "1f3ef3888d3bfbb47785cc1dda0dc7dd7ebd8c1955d32a9e8e9dae1e38d1c4c1" url: "https://pub.dev" source: hosted - version: "2.3.3" + version: "2.3.5" sqflite_common_ffi_web: dependency: "direct main" description: name: sqflite_common_ffi_web - sha256: "323e6db355c9eac7d3d834e35be339cedbd04f43ef5bcef4e8158bd290c2a94e" + sha256: "983cf7b33b16e6bc086c8e09f6a1fae69d34cdb167d7acaf64cbd3515942d4e6" + url: "https://pub.dev" + source: hosted + version: "1.0.0" + sqflite_darwin: + dependency: transitive + description: + name: sqflite_darwin + sha256: "279832e5cde3fe99e8571879498c9211f3ca6391b0d818df4e17d9fff5c6ccb3" url: "https://pub.dev" source: hosted - version: "0.4.3" + version: "2.4.2" + sqflite_platform_interface: + dependency: transitive + description: + name: sqflite_platform_interface + sha256: "8dd4515c7bdcae0a785b0062859336de775e8c65db81ae33dd5445f35be61920" + url: "https://pub.dev" + source: hosted + version: "2.4.0" sqlite3: dependency: transitive description: name: sqlite3 - sha256: "072128763f1547e3e9b4735ce846bfd226d68019ccda54db4cd427b12dfdedc9" + sha256: "32b632dda27d664f85520093ed6f735ae5c49b5b75345afb8b19411bc59bb53d" url: "https://pub.dev" source: hosted - version: "2.4.0" + version: "2.7.4" sqlparser: dependency: "direct main" description: name: sqlparser - sha256: "7b20045d1ccfb7bc1df7e8f9fee5ae58673fce6ff62cefbb0e0fd7214e90e5a0" + sha256: "27dd0a9f0c02e22ac0eb42a23df9ea079ce69b52bb4a3b478d64e0ef34a263ee" url: "https://pub.dev" source: hosted - version: "0.34.1" + version: "0.41.0" stack_trace: dependency: transitive description: name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" url: "https://pub.dev" source: hosted - version: "1.11.1" + version: "1.12.1" stream_channel: dependency: transitive description: name: stream_channel - sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.4" stream_transform: dependency: transitive description: name: stream_transform - sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" + sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871 url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" string_scanner: dependency: transitive description: name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.4.1" strings: dependency: transitive description: name: strings - sha256: b33f40c4dd3e597bf6d9e7f4f4dc282dad0f19b07d9f320cb5c2183859cbccf5 + sha256: "482f1511d2cd8ab9f2c4cc148e6837be8a00c03b9a8eaedbc981a84d9c6305d8" url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.2.0" synchronized: dependency: transitive description: name: synchronized - sha256: "539ef412b170d65ecdafd780f924e5be3f60032a1128df156adad6c5b373d558" + sha256: "0669c70faae6270521ee4f05bffd2919892d42d1276e6c495be80174b6bc0ef6" url: "https://pub.dev" source: hosted - version: "3.1.0+1" + version: "3.3.1" term_glyph: dependency: transitive description: name: term_glyph - sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.2.2" test_api: dependency: transitive description: name: test_api - sha256: "5c2f730018264d276c20e4f1503fd1308dfbbae39ec8ee63c5236311ac06954b" + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd url: "https://pub.dev" source: hosted - version: "0.6.1" + version: "0.7.4" timing: dependency: transitive description: name: timing - sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" + sha256: "62ee18aca144e4a9f29d212f5a4c6a053be252b895ab14b5821996cff4ed90fe" url: "https://pub.dev" source: hosted - version: "1.0.1" + version: "1.0.2" typed_data: dependency: transitive description: name: typed_data - sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 url: "https://pub.dev" source: hosted - version: "1.3.2" + version: "1.4.0" unicode: dependency: transitive description: name: unicode - sha256: "0f69e46593d65245774d4f17125c6084d2c20b4e473a983f6e21b7d7762218f1" + sha256: "0d99edbd2e74726bed2e4989713c8bec02e5581628e334d8c88c0271593fb402" url: "https://pub.dev" source: hosted - version: "0.3.1" + version: "1.1.8" vector_math: dependency: transitive description: @@ -633,42 +689,50 @@ packages: dependency: transitive description: name: vm_service - sha256: b3d56ff4341b8f182b96aceb2fa20e3dcb336b9f867bc0eafc0de10f1048e957 + sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14" url: "https://pub.dev" source: hosted - version: "13.0.0" + version: "14.3.1" watcher: dependency: transitive description: name: watcher - sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" + sha256: "69da27e49efa56a15f8afe8f4438c4ec02eff0a117df1b22ea4aad194fe1c104" url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" web: dependency: transitive description: name: web - sha256: "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27" + sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" url: "https://pub.dev" source: hosted - version: "0.5.1" + version: "1.1.1" + web_socket: + dependency: transitive + description: + name: web_socket + sha256: "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83" + url: "https://pub.dev" + source: hosted + version: "0.1.6" web_socket_channel: dependency: transitive description: name: web_socket_channel - sha256: "1d8e795e2a8b3730c41b8a98a2dff2e0fb57ae6f0764a1c46ec5915387d257b2" + sha256: "0b8e2457400d8a859b7b2030786835a28a8e80836ef64402abef392ff4f1d0e5" url: "https://pub.dev" source: hosted - version: "2.4.4" + version: "3.0.2" yaml: dependency: transitive description: name: yaml - sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce url: "https://pub.dev" source: hosted - version: "3.1.2" + version: "3.1.3" sdks: - dart: ">=3.3.0 <4.0.0" - flutter: ">=3.7.0" + dart: ">=3.7.0 <4.0.0" + flutter: ">=3.24.0" diff --git a/floor/pubspec.yaml b/floor/pubspec.yaml index eaec378c..ae4c8e45 100644 --- a/floor/pubspec.yaml +++ b/floor/pubspec.yaml @@ -9,10 +9,10 @@ issue_tracker: https://github.com/pinchbv/floor/issues publish_to: none environment: - sdk: '>=3.2.6 <4.0.0' + sdk: '>=3.6.0 <4.0.0' dependencies: - collection: ^1.18.0 + collection: ^1.19.1 floor_annotation: path: ../floor_annotation/ floor_common: @@ -20,17 +20,17 @@ dependencies: flutter: sdk: flutter meta: - path: ^1.9.0 - sqflite: ^2.3.2 - sqflite_common_ffi: ^2.3.2+1 - sqflite_common_ffi_web: ^0.4.3 - sqlparser: ^0.34.1 + path: ^1.9.1 + sqflite: ^2.4.2 + sqflite_common_ffi: ^2.3.5 + sqflite_common_ffi_web: ^1.0.0 + sqlparser: ^0.41.0 dev_dependencies: - build_runner: ^2.4.8 + build_runner: ^2.4.15 floor_generator: path: ../floor_generator flutter_test: sdk: flutter - matcher: ^0.12.16+1 - mockito: ^5.4.4 \ No newline at end of file + matcher: ^0.12.17 + mockito: ^5.4.5 \ No newline at end of file diff --git a/floor_annotation/pubspec.lock b/floor_annotation/pubspec.lock index 646b6b43..f0767d58 100644 --- a/floor_annotation/pubspec.lock +++ b/floor_annotation/pubspec.lock @@ -5,9 +5,9 @@ packages: dependency: "direct main" description: name: meta - sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136" + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c url: "https://pub.dev" source: hosted - version: "1.12.0" + version: "1.16.0" sdks: - dart: ">=3.2.6 <4.0.0" + dart: ">=3.6.0 <4.0.0" diff --git a/floor_annotation/pubspec.yaml b/floor_annotation/pubspec.yaml index d97bdada..2d83eb59 100644 --- a/floor_annotation/pubspec.yaml +++ b/floor_annotation/pubspec.yaml @@ -8,7 +8,7 @@ repository: https://github.com/pinchbv/floor issue_tracker: https://github.com/pinchbv/floor/issues environment: - sdk: '>=3.2.6 <4.0.0' + sdk: '>=3.6.0 <4.0.0' dependencies: meta: diff --git a/floor_common/pubspec.lock b/floor_common/pubspec.lock index d772245d..e3dbb84d 100644 --- a/floor_common/pubspec.lock +++ b/floor_common/pubspec.lock @@ -5,90 +5,98 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - sha256: "0b2f2bd91ba804e53a61d757b986f89f1f9eaed5b11e4b2f5a2468d86d6c9fc7" + sha256: dc27559385e905ad30838356c5f5d574014ba39872d732111cd07ac0beff4c57 url: "https://pub.dev" source: hosted - version: "67.0.0" + version: "80.0.0" analyzer: dependency: transitive description: name: analyzer - sha256: "37577842a27e4338429a1cbc32679d508836510b056f1eedf0c8d20e39c1383d" + sha256: "192d1c5b944e7e53b24b5586db760db934b177d4147c42fbca8c8c5f1eb8d11e" url: "https://pub.dev" source: hosted - version: "6.4.1" + version: "7.3.0" + archive: + dependency: transitive + description: + name: archive + sha256: "0c64e928dcbefddecd234205422bcfc2b5e6d31be0b86fef0d0dd48d7b4c9742" + url: "https://pub.dev" + source: hosted + version: "4.0.4" args: dependency: transitive description: name: args - sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 + sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6 url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.6.0" async: dependency: transitive description: name: async - sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" url: "https://pub.dev" source: hosted - version: "2.11.0" + version: "2.13.0" boolean_selector: dependency: transitive description: name: boolean_selector - sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" build: dependency: transitive description: name: build - sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" + sha256: cef23f1eda9b57566c81e2133d196f8e3df48f244b317368d65c5943d91148f0 url: "https://pub.dev" source: hosted - version: "2.4.1" + version: "2.4.2" build_config: dependency: transitive description: name: build_config - sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 + sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33" url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" build_daemon: dependency: transitive description: name: build_daemon - sha256: "0343061a33da9c5810b2d6cee51945127d8f4c060b7fbdd9d54917f0a3feaaa1" + sha256: "8e928697a82be082206edb0b9c99c5a4ad6bc31c9e9b8b2f291ae65cd4a25daa" url: "https://pub.dev" source: hosted - version: "4.0.1" + version: "4.0.4" build_resolvers: dependency: transitive description: name: build_resolvers - sha256: "339086358431fa15d7eca8b6a36e5d783728cf025e559b834f4609a1fcfb7b0a" + sha256: b9e4fda21d846e192628e7a4f6deda6888c36b5b69ba02ff291a01fd529140f0 url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.4.4" build_runner: dependency: "direct dev" description: name: build_runner - sha256: "581bacf68f89ec8792f5e5a0b2c4decd1c948e97ce659dc783688c8a88fbec21" + sha256: "058fe9dce1de7d69c4b84fada934df3e0153dd000758c4d65964d0166779aa99" url: "https://pub.dev" source: hosted - version: "2.4.8" + version: "2.4.15" build_runner_core: dependency: transitive description: name: build_runner_core - sha256: "4ae8ffe5ac758da294ecf1802f2aff01558d8b1b00616aa7538ea9a8a5d50799" + sha256: "22e3aa1c80e0ada3722fe5b63fd43d9c8990759d0a2cf489c8c5d7b2bdebc021" url: "https://pub.dev" source: hosted - version: "7.3.0" + version: "8.0.0" built_collection: dependency: transitive description: @@ -101,26 +109,26 @@ packages: dependency: transitive description: name: built_value - sha256: fedde275e0a6b798c3296963c5cd224e3e1b55d0e478d5b7e65e6b540f363a0e + sha256: ea90e81dc4a25a043d9bee692d20ed6d1c4a1662a28c03a96417446c093ed6b4 url: "https://pub.dev" source: hosted - version: "8.9.1" + version: "8.9.5" characters: dependency: transitive description: name: characters - sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.4.0" charcode: dependency: transitive description: name: charcode - sha256: fb98c0f6d12c920a02ee2d998da788bca066ca5f148492b7085ee23372b12306 + sha256: fb0f1107cac15a5ea6ef0a6ef71a807b9e4267c713bb93e00e92d737cc8dbd8a url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.4.0" checked_yaml: dependency: transitive description: @@ -133,74 +141,74 @@ packages: dependency: transitive description: name: code_builder - sha256: f692079e25e7869c14132d39f223f8eec9830eb76131925143b2129c4bb01b37 + sha256: "0ec10bf4a89e4c613960bf1e8b42c64127021740fb21640c29c909826a5eea3e" url: "https://pub.dev" source: hosted - version: "4.10.0" + version: "4.10.1" collection: dependency: "direct dev" description: name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" url: "https://pub.dev" source: hosted - version: "1.18.0" + version: "1.19.1" convert: dependency: transitive description: name: convert - sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.1.2" coverage: dependency: transitive description: name: coverage - sha256: "8acabb8306b57a409bf4c83522065672ee13179297a6bb0cb9ead73948df7c76" + sha256: e3493833ea012784c740e341952298f1cc77f1f01b1bbc3eb4eecf6984fb7f43 url: "https://pub.dev" source: hosted - version: "1.7.2" + version: "1.11.1" crypto: dependency: transitive description: name: crypto - sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab + sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855" url: "https://pub.dev" source: hosted - version: "3.0.3" + version: "3.0.6" dart_style: dependency: transitive description: name: dart_style - sha256: "99e066ce75c89d6b29903d788a7bb9369cf754f7b24bf70bf4b6d6d6b26853b9" + sha256: "27eb0ae77836989a3bc541ce55595e8ceee0992807f14511552a898ddd0d88ac" url: "https://pub.dev" source: hosted - version: "2.3.6" + version: "3.0.1" ffi: dependency: transitive description: name: ffi - sha256: "493f37e7df1804778ff3a53bd691d8692ddf69702cf4c1c1096a2e41b4779e21" + sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.4" file: dependency: transitive description: name: file - sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 url: "https://pub.dev" source: hosted - version: "7.0.0" + version: "7.0.1" fixnum: dependency: transitive description: name: fixnum - sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" floor_annotation: dependency: "direct main" description: @@ -219,114 +227,114 @@ packages: dependency: transitive description: name: frontend_server_client - sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" + sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 url: "https://pub.dev" source: hosted - version: "3.2.0" + version: "4.0.0" glob: dependency: transitive description: name: glob - sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" + sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.3" graphs: dependency: transitive description: name: graphs - sha256: aedc5a15e78fc65a6e23bcd927f24c64dd995062bcd1ca6eda65a3cff92a4d19 + sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" + url: "https://pub.dev" + source: hosted + version: "2.3.2" + http: + dependency: transitive + description: + name: http + sha256: fe7ab022b76f3034adc518fb6ea04a82387620e19977665ea18d30a1cf43442f url: "https://pub.dev" source: hosted - version: "2.3.1" + version: "1.3.0" http_multi_server: dependency: transitive description: name: http_multi_server - sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" + sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 url: "https://pub.dev" source: hosted - version: "3.2.1" + version: "3.2.2" http_parser: dependency: transitive description: name: http_parser - sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" + sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" url: "https://pub.dev" source: hosted - version: "4.0.2" + version: "4.1.2" io: dependency: transitive description: name: io - sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" + sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b url: "https://pub.dev" source: hosted - version: "1.0.4" + version: "1.0.5" js: dependency: transitive description: name: js - sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 + sha256: "53385261521cc4a0c4658fd0ad07a7d14591cf8fc33abbceae306ddb974888dc" url: "https://pub.dev" source: hosted - version: "0.6.7" + version: "0.7.2" json_annotation: dependency: transitive description: name: json_annotation - sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467 - url: "https://pub.dev" - source: hosted - version: "4.8.1" - lists: - dependency: transitive - description: - name: lists - sha256: "4ca5c19ae4350de036a7e996cdd1ee39c93ac0a2b840f4915459b7d0a7d4ab27" + sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" url: "https://pub.dev" source: hosted - version: "1.0.1" + version: "4.9.0" logging: dependency: transitive description: name: logging - sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" + sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.3.0" matcher: dependency: "direct dev" description: name: matcher - sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 url: "https://pub.dev" source: hosted - version: "0.12.16+1" + version: "0.12.17" meta: dependency: "direct main" description: name: meta - sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04 + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c url: "https://pub.dev" source: hosted - version: "1.11.0" + version: "1.16.0" mime: dependency: transitive description: name: mime - sha256: "2e123074287cc9fd6c09de8336dae606d1ddb88d9ac47358826db698c176a1f2" + sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" url: "https://pub.dev" source: hosted - version: "1.0.5" + version: "2.0.0" mockito: dependency: "direct dev" description: name: mockito - sha256: "6841eed20a7befac0ce07df8116c8b8233ed1f4486a7647c7fc5a02ae6163917" + sha256: f99d8d072e249f719a5531735d146d8cf04c580d93920b04de75bef6dfb2daf6 url: "https://pub.dev" source: hosted - version: "5.4.4" + version: "5.4.5" node_preamble: dependency: transitive description: @@ -339,18 +347,18 @@ packages: dependency: transitive description: name: package_config - sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" + sha256: "92d4488434b520a62570293fbd33bb556c7d49230791c1b4bbd973baf6d2dc67" url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" path: dependency: "direct main" description: name: path - sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" url: "https://pub.dev" source: hosted - version: "1.9.0" + version: "1.9.1" pool: dependency: transitive description: @@ -359,30 +367,38 @@ packages: url: "https://pub.dev" source: hosted version: "1.5.1" + posix: + dependency: transitive + description: + name: posix + sha256: a0117dc2167805aa9125b82eee515cc891819bac2f538c83646d355b16f58b9a + url: "https://pub.dev" + source: hosted + version: "6.0.1" pub_semver: dependency: transitive description: name: pub_semver - sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" + sha256: "7b3cfbf654f3edd0c6298ecd5be782ce997ddf0e00531b9464b55245185bbbbd" url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.1.5" pubspec_parse: dependency: transitive description: name: pubspec_parse - sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367 + sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082" url: "https://pub.dev" source: hosted - version: "1.2.3" + version: "1.5.0" shelf: dependency: transitive description: name: shelf - sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 + sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12 url: "https://pub.dev" source: hosted - version: "1.4.1" + version: "1.4.2" shelf_packages_handler: dependency: transitive description: @@ -395,218 +411,234 @@ packages: dependency: transitive description: name: shelf_static - sha256: a41d3f53c4adf0f57480578c1d61d90342cd617de7fc8077b1304643c2d85c1e + sha256: c87c3875f91262785dade62d135760c2c69cb217ac759485334c5857ad89f6e3 url: "https://pub.dev" source: hosted - version: "1.1.2" + version: "1.1.3" shelf_web_socket: dependency: transitive description: name: shelf_web_socket - sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" + sha256: "3632775c8e90d6c9712f883e633716432a27758216dfb61bd86a8321c0580925" + url: "https://pub.dev" + source: hosted + version: "3.0.0" + simple_sparse_list: + dependency: transitive + description: + name: simple_sparse_list + sha256: aa648fd240fa39b49dcd11c19c266990006006de6699a412de485695910fbc1f url: "https://pub.dev" source: hosted - version: "1.0.4" + version: "0.1.4" source_gen: dependency: transitive description: name: source_gen - sha256: "14658ba5f669685cd3d63701d01b31ea748310f7ab854e471962670abcf57832" + sha256: "35c8150ece9e8c8d263337a265153c3329667640850b9304861faea59fc98f6b" url: "https://pub.dev" source: hosted - version: "1.5.0" + version: "2.0.0" source_map_stack_trace: dependency: transitive description: name: source_map_stack_trace - sha256: "84cf769ad83aa6bb61e0aa5a18e53aea683395f196a6f39c4c881fb90ed4f7ae" + sha256: c0713a43e323c3302c2abe2a1cc89aa057a387101ebd280371d6a6c9fa68516b url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" source_maps: dependency: transitive description: name: source_maps - sha256: "708b3f6b97248e5781f493b765c3337db11c5d2c81c3094f10904bfa8004c703" + sha256: "190222579a448b03896e0ca6eca5998fa810fda630c1d65e2f78b3f638f54812" url: "https://pub.dev" source: hosted - version: "0.10.12" + version: "0.10.13" source_span: dependency: transitive description: name: source_span - sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" url: "https://pub.dev" source: hosted - version: "1.10.0" + version: "1.10.1" sqflite_common: dependency: "direct main" description: name: sqflite_common - sha256: "3da423ce7baf868be70e2c0976c28a1bb2f73644268b7ffa7d2e08eab71f16a4" + sha256: "84731e8bfd8303a3389903e01fb2141b6e59b5973cacbb0929021df08dddbe8b" url: "https://pub.dev" source: hosted - version: "2.5.4" + version: "2.5.5" sqflite_common_ffi: dependency: "direct dev" description: name: sqflite_common_ffi - sha256: "4d6137c29e930d6e4a8ff373989dd9de7bac12e3bc87bce950f6e844e8ad3bb5" + sha256: "1f3ef3888d3bfbb47785cc1dda0dc7dd7ebd8c1955d32a9e8e9dae1e38d1c4c1" url: "https://pub.dev" source: hosted - version: "2.3.3" + version: "2.3.5" sqlite3: dependency: transitive description: name: sqlite3 - sha256: "072128763f1547e3e9b4735ce846bfd226d68019ccda54db4cd427b12dfdedc9" + sha256: "32b632dda27d664f85520093ed6f735ae5c49b5b75345afb8b19411bc59bb53d" url: "https://pub.dev" source: hosted - version: "2.4.0" + version: "2.7.4" sqlparser: dependency: "direct main" description: name: sqlparser - sha256: "7b20045d1ccfb7bc1df7e8f9fee5ae58673fce6ff62cefbb0e0fd7214e90e5a0" + sha256: "27dd0a9f0c02e22ac0eb42a23df9ea079ce69b52bb4a3b478d64e0ef34a263ee" url: "https://pub.dev" source: hosted - version: "0.34.1" + version: "0.41.0" stack_trace: dependency: transitive description: name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" url: "https://pub.dev" source: hosted - version: "1.11.1" + version: "1.12.1" stream_channel: dependency: transitive description: name: stream_channel - sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.4" stream_transform: dependency: transitive description: name: stream_transform - sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" + sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871 url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" string_scanner: dependency: transitive description: name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.4.1" strings: dependency: transitive description: name: strings - sha256: b33f40c4dd3e597bf6d9e7f4f4dc282dad0f19b07d9f320cb5c2183859cbccf5 + sha256: "482f1511d2cd8ab9f2c4cc148e6837be8a00c03b9a8eaedbc981a84d9c6305d8" url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.2.0" synchronized: dependency: transitive description: name: synchronized - sha256: "539ef412b170d65ecdafd780f924e5be3f60032a1128df156adad6c5b373d558" + sha256: "0669c70faae6270521ee4f05bffd2919892d42d1276e6c495be80174b6bc0ef6" url: "https://pub.dev" source: hosted - version: "3.1.0+1" + version: "3.3.1" term_glyph: dependency: transitive description: name: term_glyph - sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.2.2" test: dependency: "direct dev" description: name: test - sha256: "7ee446762c2c50b3bd4ea96fe13ffac69919352bd3b4b17bac3f3465edc58073" + sha256: "301b213cd241ca982e9ba50266bd3f5bd1ea33f1455554c5abb85d1be0e2d87e" url: "https://pub.dev" source: hosted - version: "1.25.2" + version: "1.25.15" test_api: dependency: transitive description: name: test_api - sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f" + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd url: "https://pub.dev" source: hosted - version: "0.7.0" + version: "0.7.4" test_core: dependency: transitive description: name: test_core - sha256: "2bc4b4ecddd75309300d8096f781c0e3280ca1ef85beda558d33fcbedc2eead4" + sha256: "84d17c3486c8dfdbe5e12a50c8ae176d15e2a771b96909a9442b40173649ccaa" url: "https://pub.dev" source: hosted - version: "0.6.0" + version: "0.6.8" timing: dependency: transitive description: name: timing - sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" + sha256: "62ee18aca144e4a9f29d212f5a4c6a053be252b895ab14b5821996cff4ed90fe" url: "https://pub.dev" source: hosted - version: "1.0.1" + version: "1.0.2" typed_data: dependency: transitive description: name: typed_data - sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 url: "https://pub.dev" source: hosted - version: "1.3.2" + version: "1.4.0" unicode: dependency: transitive description: name: unicode - sha256: "0f69e46593d65245774d4f17125c6084d2c20b4e473a983f6e21b7d7762218f1" + sha256: "0d99edbd2e74726bed2e4989713c8bec02e5581628e334d8c88c0271593fb402" url: "https://pub.dev" source: hosted - version: "0.3.1" + version: "1.1.8" vm_service: dependency: transitive description: name: vm_service - sha256: e7d5ecd604e499358c5fe35ee828c0298a320d54455e791e9dcf73486bc8d9f0 + sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 url: "https://pub.dev" source: hosted - version: "14.1.0" + version: "15.0.0" watcher: dependency: transitive description: name: watcher - sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" + sha256: "69da27e49efa56a15f8afe8f4438c4ec02eff0a117df1b22ea4aad194fe1c104" url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" web: dependency: transitive description: name: web - sha256: "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27" + sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" url: "https://pub.dev" source: hosted - version: "0.5.1" + version: "1.1.1" + web_socket: + dependency: transitive + description: + name: web_socket + sha256: "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83" + url: "https://pub.dev" + source: hosted + version: "0.1.6" web_socket_channel: dependency: transitive description: name: web_socket_channel - sha256: "1d8e795e2a8b3730c41b8a98a2dff2e0fb57ae6f0764a1c46ec5915387d257b2" + sha256: "0b8e2457400d8a859b7b2030786835a28a8e80836ef64402abef392ff4f1d0e5" url: "https://pub.dev" source: hosted - version: "2.4.4" + version: "3.0.2" webkit_inspection_protocol: dependency: transitive description: @@ -619,9 +651,9 @@ packages: dependency: transitive description: name: yaml - sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce url: "https://pub.dev" source: hosted - version: "3.1.2" + version: "3.1.3" sdks: - dart: ">=3.3.0 <4.0.0" + dart: ">=3.7.0 <4.0.0" diff --git a/floor_common/pubspec.yaml b/floor_common/pubspec.yaml index d4a78d8c..2efec512 100644 --- a/floor_common/pubspec.yaml +++ b/floor_common/pubspec.yaml @@ -7,22 +7,22 @@ homepage: https://floor.codes publish_to: none environment: - sdk: '>=3.2.6 <4.0.0' + sdk: '>=3.6.0 <4.0.0' dependencies: floor_annotation: path: ../floor_annotation/ meta: - path: ^1.9.0 - sqflite_common: ^2.5.3 - sqlparser: ^0.34.1 + path: ^1.9.1 + sqflite_common: ^2.5.5 + sqlparser: ^0.41.0 dev_dependencies: - build_runner: ^2.4.8 - collection: ^1.18.0 + build_runner: ^2.4.15 + collection: ^1.19.1 floor_generator: path: ../floor_generator/ - sqflite_common_ffi: ^2.3.2+1 - test: ^1.25.2 - matcher: ^0.12.16+1 - mockito: ^5.4.4 + sqflite_common_ffi: ^2.3.5 + test: ^1.25.15 + matcher: ^0.12.17 + mockito: ^5.4.5 diff --git a/floor_ffi/pubspec.lock b/floor_ffi/pubspec.lock index 2afe3734..f68cd89b 100644 --- a/floor_ffi/pubspec.lock +++ b/floor_ffi/pubspec.lock @@ -5,26 +5,26 @@ packages: dependency: transitive description: name: charcode - sha256: fb98c0f6d12c920a02ee2d998da788bca066ca5f148492b7085ee23372b12306 + sha256: fb0f1107cac15a5ea6ef0a6ef71a807b9e4267c713bb93e00e92d737cc8dbd8a url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.4.0" collection: dependency: transitive description: name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" url: "https://pub.dev" source: hosted - version: "1.18.0" + version: "1.19.1" ffi: dependency: transitive description: name: ffi - sha256: "493f37e7df1804778ff3a53bd691d8692ddf69702cf4c1c1096a2e41b4779e21" + sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.4" floor_annotation: dependency: "direct main" description: @@ -39,85 +39,93 @@ packages: relative: true source: path version: "1.2.0" - js: - dependency: transitive - description: - name: js - sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 - url: "https://pub.dev" - source: hosted - version: "0.6.7" meta: dependency: "direct main" description: name: meta - sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04 + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c url: "https://pub.dev" source: hosted - version: "1.11.0" + version: "1.16.0" path: dependency: "direct main" description: name: path - sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" url: "https://pub.dev" source: hosted - version: "1.9.0" + version: "1.9.1" source_span: dependency: transitive description: name: source_span - sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" url: "https://pub.dev" source: hosted - version: "1.10.0" + version: "1.10.1" sqflite_common: dependency: transitive description: name: sqflite_common - sha256: "28d8c66baee4968519fb8bd6cdbedad982d6e53359091f0b74544a9f32ec72d5" + sha256: "84731e8bfd8303a3389903e01fb2141b6e59b5973cacbb0929021df08dddbe8b" url: "https://pub.dev" source: hosted - version: "2.5.3" + version: "2.5.5" sqflite_common_ffi: dependency: "direct main" description: name: sqflite_common_ffi - sha256: "754927d82de369a6b9e760fb60640aa81da650f35ffd468d5a992814d6022908" + sha256: "1f3ef3888d3bfbb47785cc1dda0dc7dd7ebd8c1955d32a9e8e9dae1e38d1c4c1" url: "https://pub.dev" source: hosted - version: "2.3.2+1" + version: "2.3.5" sqlite3: dependency: transitive description: name: sqlite3 - sha256: "072128763f1547e3e9b4735ce846bfd226d68019ccda54db4cd427b12dfdedc9" + sha256: "32b632dda27d664f85520093ed6f735ae5c49b5b75345afb8b19411bc59bb53d" url: "https://pub.dev" source: hosted - version: "2.4.0" + version: "2.7.4" sqlparser: dependency: transitive description: name: sqlparser - sha256: "7b20045d1ccfb7bc1df7e8f9fee5ae58673fce6ff62cefbb0e0fd7214e90e5a0" + sha256: "27dd0a9f0c02e22ac0eb42a23df9ea079ce69b52bb4a3b478d64e0ef34a263ee" url: "https://pub.dev" source: hosted - version: "0.34.1" + version: "0.41.0" synchronized: dependency: transitive description: name: synchronized - sha256: "271977ff1e9e82ceefb4f08424b8839f577c1852e0726b5ce855311b46d3ef83" + sha256: "0669c70faae6270521ee4f05bffd2919892d42d1276e6c495be80174b6bc0ef6" url: "https://pub.dev" source: hosted - version: "3.0.0" + version: "3.3.1" term_glyph: dependency: transitive description: name: term_glyph - sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + web: + dependency: transitive + description: + name: web + sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.1.1" sdks: - dart: ">=3.3.0-279.1.beta <4.0.0" + dart: ">=3.7.0 <4.0.0" diff --git a/floor_ffi/pubspec.yaml b/floor_ffi/pubspec.yaml index 50d36991..72c5da82 100644 --- a/floor_ffi/pubspec.yaml +++ b/floor_ffi/pubspec.yaml @@ -7,7 +7,7 @@ homepage: https://floor.codes publish_to: none environment: - sdk: '>=3.2.6 <4.0.0' + sdk: '>=3.6.0 <4.0.0' dependencies: floor_annotation: @@ -15,5 +15,5 @@ dependencies: floor_common: path: ../floor_common/ meta: - path: ^1.9.0 - sqflite_common_ffi: ^2.3.2+1 + path: ^1.9.1 + sqflite_common_ffi: ^2.3.5 diff --git a/floor_generator/pubspec.lock b/floor_generator/pubspec.lock index 7628dc6c..a980e232 100644 --- a/floor_generator/pubspec.lock +++ b/floor_generator/pubspec.lock @@ -5,74 +5,82 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - sha256: "0b2f2bd91ba804e53a61d757b986f89f1f9eaed5b11e4b2f5a2468d86d6c9fc7" + sha256: dc27559385e905ad30838356c5f5d574014ba39872d732111cd07ac0beff4c57 url: "https://pub.dev" source: hosted - version: "67.0.0" + version: "80.0.0" analyzer: dependency: "direct main" description: name: analyzer - sha256: "37577842a27e4338429a1cbc32679d508836510b056f1eedf0c8d20e39c1383d" + sha256: "192d1c5b944e7e53b24b5586db760db934b177d4147c42fbca8c8c5f1eb8d11e" url: "https://pub.dev" source: hosted - version: "6.4.1" + version: "7.3.0" + archive: + dependency: transitive + description: + name: archive + sha256: "0c64e928dcbefddecd234205422bcfc2b5e6d31be0b86fef0d0dd48d7b4c9742" + url: "https://pub.dev" + source: hosted + version: "4.0.4" args: dependency: transitive description: name: args - sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 + sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6 url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.6.0" async: dependency: transitive description: name: async - sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" url: "https://pub.dev" source: hosted - version: "2.11.0" + version: "2.13.0" boolean_selector: dependency: transitive description: name: boolean_selector - sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" build: dependency: "direct main" description: name: build - sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" + sha256: cef23f1eda9b57566c81e2133d196f8e3df48f244b317368d65c5943d91148f0 url: "https://pub.dev" source: hosted - version: "2.4.1" + version: "2.4.2" build_config: dependency: "direct main" description: name: build_config - sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 + sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33" url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" build_resolvers: dependency: transitive description: name: build_resolvers - sha256: "339086358431fa15d7eca8b6a36e5d783728cf025e559b834f4609a1fcfb7b0a" + sha256: b9e4fda21d846e192628e7a4f6deda6888c36b5b69ba02ff291a01fd529140f0 url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.4.4" build_test: dependency: "direct dev" description: name: build_test - sha256: "260dbba934f41b0a42935e9cae1f5731b94f0c3e489dc97bcf8e281265aaa5ae" + sha256: a580c76c28440d0006b75c6746bbbb3c1648959ba9e1afae2c2b0f2c26acdf3d url: "https://pub.dev" source: hosted - version: "2.2.2" + version: "2.2.3" built_collection: dependency: transitive description: @@ -85,18 +93,18 @@ packages: dependency: transitive description: name: built_value - sha256: fedde275e0a6b798c3296963c5cd224e3e1b55d0e478d5b7e65e6b540f363a0e + sha256: ea90e81dc4a25a043d9bee692d20ed6d1c4a1662a28c03a96417446c093ed6b4 url: "https://pub.dev" source: hosted - version: "8.9.1" + version: "8.9.5" characters: dependency: transitive description: name: characters - sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.4.0" checked_yaml: dependency: transitive description: @@ -109,74 +117,82 @@ packages: dependency: "direct main" description: name: code_builder - sha256: f692079e25e7869c14132d39f223f8eec9830eb76131925143b2129c4bb01b37 + sha256: "0ec10bf4a89e4c613960bf1e8b42c64127021740fb21640c29c909826a5eea3e" url: "https://pub.dev" source: hosted - version: "4.10.0" + version: "4.10.1" collection: dependency: "direct main" description: name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" url: "https://pub.dev" source: hosted - version: "1.18.0" + version: "1.19.1" convert: dependency: transitive description: name: convert - sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.1.2" coverage: dependency: transitive description: name: coverage - sha256: "8acabb8306b57a409bf4c83522065672ee13179297a6bb0cb9ead73948df7c76" + sha256: e3493833ea012784c740e341952298f1cc77f1f01b1bbc3eb4eecf6984fb7f43 url: "https://pub.dev" source: hosted - version: "1.7.2" + version: "1.11.1" crypto: dependency: transitive description: name: crypto - sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab + sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855" url: "https://pub.dev" source: hosted - version: "3.0.3" + version: "3.0.6" csslib: dependency: transitive description: name: csslib - sha256: "706b5707578e0c1b4b7550f64078f0a0f19dec3f50a178ffae7006b0a9ca58fb" + sha256: "09bad715f418841f976c77db72d5398dc1253c21fb9c0c7f0b0b985860b2d58e" url: "https://pub.dev" source: hosted - version: "1.0.0" + version: "1.0.2" dart_style: dependency: "direct dev" description: name: dart_style - sha256: "99e066ce75c89d6b29903d788a7bb9369cf754f7b24bf70bf4b6d6d6b26853b9" + sha256: "27eb0ae77836989a3bc541ce55595e8ceee0992807f14511552a898ddd0d88ac" url: "https://pub.dev" source: hosted - version: "2.3.6" + version: "3.0.1" + ffi: + dependency: transitive + description: + name: ffi + sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418" + url: "https://pub.dev" + source: hosted + version: "2.1.4" file: dependency: transitive description: name: file - sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 url: "https://pub.dev" source: hosted - version: "7.0.0" + version: "7.0.1" fixnum: dependency: transitive description: name: fixnum - sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" floor_annotation: dependency: "direct main" description: @@ -188,122 +204,114 @@ packages: dependency: transitive description: name: frontend_server_client - sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" + sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 url: "https://pub.dev" source: hosted - version: "3.2.0" + version: "4.0.0" glob: dependency: transitive description: name: glob - sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" + sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.3" graphs: dependency: transitive description: name: graphs - sha256: aedc5a15e78fc65a6e23bcd927f24c64dd995062bcd1ca6eda65a3cff92a4d19 + sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" url: "https://pub.dev" source: hosted - version: "2.3.1" + version: "2.3.2" html: dependency: transitive description: name: html - sha256: "3a7812d5bcd2894edf53dfaf8cd640876cf6cef50a8f238745c8b8120ea74d3a" + sha256: "1fc58edeaec4307368c60d59b7e15b9d658b57d7f3125098b6294153c75337ec" url: "https://pub.dev" source: hosted - version: "0.15.4" + version: "0.15.5" http_multi_server: dependency: transitive description: name: http_multi_server - sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" + sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 url: "https://pub.dev" source: hosted - version: "3.2.1" + version: "3.2.2" http_parser: dependency: transitive description: name: http_parser - sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" + sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" url: "https://pub.dev" source: hosted - version: "4.0.2" + version: "4.1.2" io: dependency: transitive description: name: io - sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" + sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b url: "https://pub.dev" source: hosted - version: "1.0.4" + version: "1.0.5" js: dependency: transitive description: name: js - sha256: c1b2e9b5ea78c45e1a0788d29606ba27dc5f71f019f32ca5140f61ef071838cf + sha256: "53385261521cc4a0c4658fd0ad07a7d14591cf8fc33abbceae306ddb974888dc" url: "https://pub.dev" source: hosted - version: "0.7.1" + version: "0.7.2" json_annotation: dependency: transitive description: name: json_annotation - sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467 - url: "https://pub.dev" - source: hosted - version: "4.8.1" - lists: - dependency: transitive - description: - name: lists - sha256: "4ca5c19ae4350de036a7e996cdd1ee39c93ac0a2b840f4915459b7d0a7d4ab27" + sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" url: "https://pub.dev" source: hosted - version: "1.0.1" + version: "4.9.0" logging: dependency: transitive description: name: logging - sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" + sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.3.0" matcher: dependency: transitive description: name: matcher - sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 url: "https://pub.dev" source: hosted - version: "0.12.16+1" + version: "0.12.17" meta: dependency: "direct main" description: name: meta - sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136" + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c url: "https://pub.dev" source: hosted - version: "1.12.0" + version: "1.16.0" mime: dependency: transitive description: name: mime - sha256: "2e123074287cc9fd6c09de8336dae606d1ddb88d9ac47358826db698c176a1f2" + sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" url: "https://pub.dev" source: hosted - version: "1.0.5" + version: "2.0.0" mockito: dependency: "direct dev" description: name: mockito - sha256: "6841eed20a7befac0ce07df8116c8b8233ed1f4486a7647c7fc5a02ae6163917" + sha256: f99d8d072e249f719a5531735d146d8cf04c580d93920b04de75bef6dfb2daf6 url: "https://pub.dev" source: hosted - version: "5.4.4" + version: "5.4.5" node_preamble: dependency: transitive description: @@ -316,18 +324,18 @@ packages: dependency: transitive description: name: package_config - sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" + sha256: "92d4488434b520a62570293fbd33bb556c7d49230791c1b4bbd973baf6d2dc67" url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" path: dependency: "direct dev" description: name: path - sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" url: "https://pub.dev" source: hosted - version: "1.9.0" + version: "1.9.1" pool: dependency: transitive description: @@ -336,30 +344,38 @@ packages: url: "https://pub.dev" source: hosted version: "1.5.1" + posix: + dependency: transitive + description: + name: posix + sha256: a0117dc2167805aa9125b82eee515cc891819bac2f538c83646d355b16f58b9a + url: "https://pub.dev" + source: hosted + version: "6.0.1" pub_semver: dependency: "direct dev" description: name: pub_semver - sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" + sha256: "7b3cfbf654f3edd0c6298ecd5be782ce997ddf0e00531b9464b55245185bbbbd" url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.1.5" pubspec_parse: dependency: transitive description: name: pubspec_parse - sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367 + sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082" url: "https://pub.dev" source: hosted - version: "1.2.3" + version: "1.5.0" shelf: dependency: transitive description: name: shelf - sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 + sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12 url: "https://pub.dev" source: hosted - version: "1.4.1" + version: "1.4.2" shelf_packages_handler: dependency: transitive description: @@ -372,179 +388,186 @@ packages: dependency: transitive description: name: shelf_static - sha256: a41d3f53c4adf0f57480578c1d61d90342cd617de7fc8077b1304643c2d85c1e + sha256: c87c3875f91262785dade62d135760c2c69cb217ac759485334c5857ad89f6e3 url: "https://pub.dev" source: hosted - version: "1.1.2" + version: "1.1.3" shelf_web_socket: dependency: transitive description: name: shelf_web_socket - sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" + sha256: "3632775c8e90d6c9712f883e633716432a27758216dfb61bd86a8321c0580925" + url: "https://pub.dev" + source: hosted + version: "3.0.0" + simple_sparse_list: + dependency: transitive + description: + name: simple_sparse_list + sha256: aa648fd240fa39b49dcd11c19c266990006006de6699a412de485695910fbc1f url: "https://pub.dev" source: hosted - version: "1.0.4" + version: "0.1.4" source_gen: dependency: "direct main" description: name: source_gen - sha256: "14658ba5f669685cd3d63701d01b31ea748310f7ab854e471962670abcf57832" + sha256: "35c8150ece9e8c8d263337a265153c3329667640850b9304861faea59fc98f6b" url: "https://pub.dev" source: hosted - version: "1.5.0" + version: "2.0.0" source_map_stack_trace: dependency: transitive description: name: source_map_stack_trace - sha256: "84cf769ad83aa6bb61e0aa5a18e53aea683395f196a6f39c4c881fb90ed4f7ae" + sha256: c0713a43e323c3302c2abe2a1cc89aa057a387101ebd280371d6a6c9fa68516b url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" source_maps: dependency: transitive description: name: source_maps - sha256: "708b3f6b97248e5781f493b765c3337db11c5d2c81c3094f10904bfa8004c703" + sha256: "190222579a448b03896e0ca6eca5998fa810fda630c1d65e2f78b3f638f54812" url: "https://pub.dev" source: hosted - version: "0.10.12" + version: "0.10.13" source_span: dependency: transitive description: name: source_span - sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" url: "https://pub.dev" source: hosted - version: "1.10.0" + version: "1.10.1" stack_trace: dependency: transitive description: name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" url: "https://pub.dev" source: hosted - version: "1.11.1" + version: "1.12.1" stream_channel: dependency: transitive description: name: stream_channel - sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.4" stream_transform: dependency: transitive description: name: stream_transform - sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" + sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871 url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" string_scanner: dependency: transitive description: name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.4.1" strings: dependency: "direct main" description: name: strings - sha256: b33f40c4dd3e597bf6d9e7f4f4dc282dad0f19b07d9f320cb5c2183859cbccf5 + sha256: "482f1511d2cd8ab9f2c4cc148e6837be8a00c03b9a8eaedbc981a84d9c6305d8" url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.2.0" term_glyph: dependency: transitive description: name: term_glyph - sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.2.2" test: dependency: "direct dev" description: name: test - sha256: "7ee446762c2c50b3bd4ea96fe13ffac69919352bd3b4b17bac3f3465edc58073" + sha256: "301b213cd241ca982e9ba50266bd3f5bd1ea33f1455554c5abb85d1be0e2d87e" url: "https://pub.dev" source: hosted - version: "1.25.2" + version: "1.25.15" test_api: dependency: transitive description: name: test_api - sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f" + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd url: "https://pub.dev" source: hosted - version: "0.7.0" + version: "0.7.4" test_core: dependency: transitive description: name: test_core - sha256: "2bc4b4ecddd75309300d8096f781c0e3280ca1ef85beda558d33fcbedc2eead4" + sha256: "84d17c3486c8dfdbe5e12a50c8ae176d15e2a771b96909a9442b40173649ccaa" url: "https://pub.dev" source: hosted - version: "0.6.0" - test_cov: - dependency: "direct dev" - description: - path: "." - ref: HEAD - resolved-ref: e3bb980197a0b9388ab1fb8cd841b0e1d05c6356 - url: "https://github.com/dkaera/test_cov" - source: git - version: "1.0.4" + version: "0.6.8" typed_data: dependency: transitive description: name: typed_data - sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 url: "https://pub.dev" source: hosted - version: "1.3.2" + version: "1.4.0" unicode: dependency: transitive description: name: unicode - sha256: "0f69e46593d65245774d4f17125c6084d2c20b4e473a983f6e21b7d7762218f1" + sha256: "0d99edbd2e74726bed2e4989713c8bec02e5581628e334d8c88c0271593fb402" url: "https://pub.dev" source: hosted - version: "0.3.1" + version: "1.1.8" vm_service: dependency: transitive description: name: vm_service - sha256: e7d5ecd604e499358c5fe35ee828c0298a320d54455e791e9dcf73486bc8d9f0 + sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 url: "https://pub.dev" source: hosted - version: "14.1.0" + version: "15.0.0" watcher: dependency: transitive description: name: watcher - sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" + sha256: "69da27e49efa56a15f8afe8f4438c4ec02eff0a117df1b22ea4aad194fe1c104" url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" web: dependency: transitive description: name: web - sha256: "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27" + sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" url: "https://pub.dev" source: hosted - version: "0.5.1" + version: "1.1.1" + web_socket: + dependency: transitive + description: + name: web_socket + sha256: "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83" + url: "https://pub.dev" + source: hosted + version: "0.1.6" web_socket_channel: dependency: transitive description: name: web_socket_channel - sha256: "1d8e795e2a8b3730c41b8a98a2dff2e0fb57ae6f0764a1c46ec5915387d257b2" + sha256: "0b8e2457400d8a859b7b2030786835a28a8e80836ef64402abef392ff4f1d0e5" url: "https://pub.dev" source: hosted - version: "2.4.4" + version: "3.0.2" webkit_inspection_protocol: dependency: transitive description: @@ -557,9 +580,9 @@ packages: dependency: transitive description: name: yaml - sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce url: "https://pub.dev" source: hosted - version: "3.1.2" + version: "3.1.3" sdks: - dart: ">=3.3.0 <=3.3.8" + dart: ">=3.7.0 <4.0.0" diff --git a/floor_generator/pubspec.yaml b/floor_generator/pubspec.yaml index ba572593..21a17cd7 100644 --- a/floor_generator/pubspec.yaml +++ b/floor_generator/pubspec.yaml @@ -9,27 +9,24 @@ issue_tracker: https://github.com/pinchbv/floor/issues publish_to: none environment: - sdk: '>=3.2.6 <4.0.0' + sdk: '>=3.6.0 <4.0.0' dependencies: - analyzer: ^6.4.1 - build: ^2.4.1 - build_config: ^1.1.1 - code_builder: ^4.10.0 - collection: ^1.18.0 + analyzer: ^7.0.0 + build: ^2.4.2 + build_config: ^1.1.2 + code_builder: ^4.10.1 + collection: ^1.19.1 floor_annotation: path: ../floor_annotation meta: - source_gen: ^1.5.0 - strings: ^3.1.1 + source_gen: ^2.0.0 + strings: ^3.2.0 dev_dependencies: - build_test: ^2.2.2 - dart_style: ^2.3.4 - mockito: ^5.4.4 - path: ^1.9.0 - pub_semver: ^2.1.4 - test: ^1.25.2 - test_cov: - git: - url: https://github.com/dkaera/test_cov + build_test: ^2.2.3 + dart_style: ^3.0.1 + mockito: ^5.4.5 + path: ^1.9.1 + pub_semver: ^2.1.5 + test: ^1.25.15 From 0f03d81298ecbcb28bae056f5de24f266694b46d Mon Sep 17 00:00:00 2001 From: Joe Wyrembelski Date: Fri, 7 Mar 2025 09:22:55 -0500 Subject: [PATCH 2/7] DartFormatter requires languageVersion. Adding default of Version(3, 7, 0) for tests. --- floor_generator/test/test_utils.dart | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/floor_generator/test/test_utils.dart b/floor_generator/test/test_utils.dart index 0a5960ae..bf036723 100644 --- a/floor_generator/test/test_utils.dart +++ b/floor_generator/test/test_utils.dart @@ -15,9 +15,12 @@ import 'package:floor_generator/processor/view_processor.dart'; import 'package:floor_generator/value_object/dao.dart'; import 'package:floor_generator/value_object/entity.dart'; import 'package:path/path.dart' as path; +import 'package:pub_semver/pub_semver.dart'; import 'package:source_gen/source_gen.dart'; import 'package:test/test.dart'; +final targetLanguageVersion = Version(3, 7, 0); + /// Creates a [LibraryReader] of the [sourceFile]. Future resolveCompilationUnit(final String sourceFile) async { final files = [File(sourceFile)]; @@ -112,7 +115,7 @@ Future getDartTypeFromDeclaration(final String declaration) async { }); } -final _dartfmt = DartFormatter(); +final _dartfmt = DartFormatter(languageVersion: targetLanguageVersion); String _format(final String source) { try { From 687b663681561d4c6efd940c7901c5ed5264f83f Mon Sep 17 00:00:00 2001 From: Joe Wyrembelski Date: Fri, 7 Mar 2025 09:30:58 -0500 Subject: [PATCH 3/7] Updating signatures of fake objects for testing --- floor_generator/test/fakes.dart | 136 ++++++++++++++++++-------------- 1 file changed, 78 insertions(+), 58 deletions(-) diff --git a/floor_generator/test/fakes.dart b/floor_generator/test/fakes.dart index 8ecd1881..faec6e68 100644 --- a/floor_generator/test/fakes.dart +++ b/floor_generator/test/fakes.dart @@ -1,8 +1,10 @@ import 'package:analyzer/dart/analysis/session.dart'; import 'package:analyzer/dart/constant/value.dart'; import 'package:analyzer/dart/element/element.dart'; +import 'package:analyzer/dart/element/element2.dart'; import 'package:analyzer/dart/element/nullability_suffix.dart'; import 'package:analyzer/dart/element/type.dart'; +import 'package:analyzer/source/source.dart'; import 'package:analyzer/src/generated/engine.dart'; import 'package:analyzer/src/generated/source.dart'; import 'package:pub_semver/src/version.dart'; @@ -40,12 +42,6 @@ class FakeClassElement implements ClassElement { @override List get fields => throw UnimplementedError(); - @override - String getDisplayString( - {required bool withNullability, bool multiline = false}) { - throw UnimplementedError(); - } - @override String getExtendedDisplayName(String? shortName) { throw UnimplementedError(); @@ -181,9 +177,6 @@ class FakeClassElement implements ClassElement { @override LibraryElement get library => throw UnimplementedError(); - @override - Source get librarySource => throw UnimplementedError(); - @override ElementLocation? get location => throw UnimplementedError(); @@ -255,9 +248,6 @@ class FakeClassElement implements ClassElement { @override AnalysisSession? get session => throw UnimplementedError(); - @override - Source get source => throw UnimplementedError(); - @override InterfaceType? get supertype => throw UnimplementedError(); @@ -296,98 +286,106 @@ class FakeClassElement implements ClassElement { bool get isDartCoreEnum => throw UnimplementedError(); @override - // TODO: implement augmented AugmentedClassElement get augmented => throw UnimplementedError(); @override - // TODO: implement hasMustBeOverridden bool get hasMustBeOverridden => throw UnimplementedError(); @override - // TODO: implement children List get children => throw UnimplementedError(); @override - // TODO: implement hasReopen bool get hasReopen => throw UnimplementedError(); @override - // TODO: implement isBase bool get isBase => throw UnimplementedError(); @override - // TODO: implement isConstructable bool get isConstructable => throw UnimplementedError(); @override - // TODO: implement isExhaustive bool get isExhaustive => throw UnimplementedError(); @override bool isExtendableIn(LibraryElement library) { - // TODO: implement isExtendableIn throw UnimplementedError(); } @override - // TODO: implement isFinal bool get isFinal => throw UnimplementedError(); @override bool isImplementableIn(LibraryElement library) { - // TODO: implement isImplementableIn throw UnimplementedError(); } @override - // TODO: implement isInterface bool get isInterface => throw UnimplementedError(); @override bool isMixableIn(LibraryElement library) { - // TODO: implement isMixableIn throw UnimplementedError(); } @override - // TODO: implement isMixinClass bool get isMixinClass => throw UnimplementedError(); @override - // TODO: implement isSealed bool get isSealed => throw UnimplementedError(); @override - // TODO: implement sinceSdkVersion Version? get sinceSdkVersion => throw UnimplementedError(); @override - // TODO: implement augmentationTarget ClassElement? get augmentationTarget => throw UnimplementedError(); @override - // TODO: implement hasImmutable bool get hasImmutable => throw UnimplementedError(); @override - // TODO: implement hasRedeclare bool get hasRedeclare => throw UnimplementedError(); @override - // TODO: implement hasVisibleOutsideTemplate bool get hasVisibleOutsideTemplate => throw UnimplementedError(); @override - // TODO: implement isAugmentation bool get isAugmentation => throw UnimplementedError(); @override - // TODO: implement isInline bool get isInline => throw UnimplementedError(); @override - // TODO: implement augmentation ClassElement? get augmentation => throw UnimplementedError(); + + @override + CompilationUnitElement get enclosingElement3 => throw UnimplementedError(); + + @override + String getDisplayString({bool withNullability = true, bool multiline = false}) { + throw UnimplementedError(); + } + + @override + bool get hasDoNotSubmit => throw UnimplementedError(); + + @override + bool get hasMustBeConst => throw UnimplementedError(); + + @override + Source get librarySource => throw UnimplementedError(); + + @override + Source get source => throw UnimplementedError(); + + @override + E? thisOrAncestorMatching3(bool Function(Element p1) predicate) { + throw UnimplementedError(); + } + + @override + E? thisOrAncestorOfType3() { + throw UnimplementedError(); + } } class FakeFieldElement implements FieldElement { @@ -416,12 +414,6 @@ class FakeFieldElement implements FieldElement { @override Element get enclosingElement => throw UnimplementedError(); - @override - String getDisplayString( - {required bool withNullability, bool multiline = false}) { - throw UnimplementedError(); - } - @override String getExtendedDisplayName(String? shortName) { throw UnimplementedError(); @@ -540,9 +532,6 @@ class FakeFieldElement implements FieldElement { @override LibraryElement get library => throw UnimplementedError(); - @override - Source? get librarySource => throw UnimplementedError(); - @override ElementLocation? get location => throw UnimplementedError(); @@ -564,9 +553,6 @@ class FakeFieldElement implements FieldElement { @override PropertyAccessorElement? get setter => throw UnimplementedError(); - @override - Source? get source => throw UnimplementedError(); - @override E? thisOrAncestorMatching(predicate) { throw UnimplementedError(); @@ -593,48 +579,70 @@ class FakeFieldElement implements FieldElement { Element get nonSynthetic => throw UnimplementedError(); @override - // TODO: implement hasMustBeOverridden bool get hasMustBeOverridden => throw UnimplementedError(); @override - // TODO: implement children List get children => throw UnimplementedError(); @override - // TODO: implement hasReopen bool get hasReopen => throw UnimplementedError(); @override - // TODO: implement isPromotable bool get isPromotable => throw UnimplementedError(); @override - // TODO: implement sinceSdkVersion Version? get sinceSdkVersion => throw UnimplementedError(); @override - // TODO: implement augmentationTarget FieldElement? get augmentationTarget => throw UnimplementedError(); @override - // TODO: implement hasImmutable bool get hasImmutable => throw UnimplementedError(); @override - // TODO: implement hasRedeclare bool get hasRedeclare => throw UnimplementedError(); @override - // TODO: implement hasVisibleOutsideTemplate bool get hasVisibleOutsideTemplate => throw UnimplementedError(); @override - // TODO: implement isAugmentation bool get isAugmentation => throw UnimplementedError(); @override - // TODO: implement augmentation FieldElement? get augmentation => throw UnimplementedError(); + + @override + Element get enclosingElement3 => throw UnimplementedError(); + + @override + String getDisplayString({bool withNullability = true, bool multiline = false}) { + throw UnimplementedError(); + } + + @override + bool get hasDoNotSubmit => throw UnimplementedError(); + + @override + bool get hasMustBeConst => throw UnimplementedError(); + + @override + LibraryElement2? get library2 => throw UnimplementedError(); + + @override + Source? get librarySource => throw UnimplementedError(); + + @override + Source? get source => throw UnimplementedError(); + + @override + E? thisOrAncestorMatching3(bool Function(Element p1) predicate) { + throw UnimplementedError(); + } + + @override + E? thisOrAncestorOfType3() { + throw UnimplementedError(); + } } class FakeDartObject implements DartObject { @@ -706,6 +714,18 @@ class FakeDartObject implements DartObject { ParameterizedType? get type => throw UnimplementedError(); @override - // TODO: implement variable VariableElement? get variable => throw UnimplementedError(); + + @override + ExecutableElement2? toFunctionValue2() { + throw UnimplementedError(); + } + + @override + ({Map named, List positional})? toRecordValue() { + throw UnimplementedError(); + } + + @override + VariableElement2? get variable2 => throw UnimplementedError(); } From 0c3cb8cba75ddf0514dcfb677201f6fdf2f83fd3 Mon Sep 17 00:00:00 2001 From: Joe Wyrembelski Date: Fri, 7 Mar 2025 09:36:24 -0500 Subject: [PATCH 4/7] Actual object comparison failing though manual comparison shows them equal. Retreating to toString comparison in the short term. --- .../test/processor/query_method_processor_test.dart | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/floor_generator/test/processor/query_method_processor_test.dart b/floor_generator/test/processor/query_method_processor_test.dart index 5d1470b5..d50f74e6 100644 --- a/floor_generator/test/processor/query_method_processor_test.dart +++ b/floor_generator/test/processor/query_method_processor_test.dart @@ -36,7 +36,7 @@ void main() { .process(); expect( - actual, + actual.toString(), equals( QueryMethod( methodElement, @@ -47,7 +47,7 @@ void main() { [], entities.first, {}, - ), + ).toString(), ), ); }); @@ -63,7 +63,7 @@ void main() { .process(); expect( - actual, + actual.toString(), equals( QueryMethod( methodElement, @@ -74,7 +74,7 @@ void main() { [], views.first, {}, - ), + ).toString(), ), ); }); From 3c35f16881d7041321104a5a1be67b2c388c5fea Mon Sep 17 00:00:00 2001 From: Joe Wyrembelski Date: Fri, 7 Mar 2025 09:40:17 -0500 Subject: [PATCH 5/7] Updating example app .gitignore files --- example/.gitignore | 3 +++ example/android/.gitignore | 14 ++++++++++++++ example/ios/.gitignore | 34 ++++++++++++++++++++++++++++++++++ 3 files changed, 51 insertions(+) create mode 100644 example/android/.gitignore create mode 100644 example/ios/.gitignore diff --git a/example/.gitignore b/example/.gitignore index 29a3a501..3d3d8995 100644 --- a/example/.gitignore +++ b/example/.gitignore @@ -5,9 +5,11 @@ *.swp .DS_Store .atom/ +.build/ .buildlog/ .history .svn/ +.swiftpm/ migrate_working_dir/ # IntelliJ related @@ -30,6 +32,7 @@ migrate_working_dir/ .pub-cache/ .pub/ /build/ +pubspec.lock # Symbolication related app.*.symbols diff --git a/example/android/.gitignore b/example/android/.gitignore new file mode 100644 index 00000000..be3943c9 --- /dev/null +++ b/example/android/.gitignore @@ -0,0 +1,14 @@ +gradle-wrapper.jar +/.gradle +/captures/ +/gradlew +/gradlew.bat +/local.properties +GeneratedPluginRegistrant.java +.cxx/ + +# Remember to never publicly share your keystore. +# See https://flutter.dev/to/reference-keystore +key.properties +**/*.keystore +**/*.jks diff --git a/example/ios/.gitignore b/example/ios/.gitignore new file mode 100644 index 00000000..7a7f9873 --- /dev/null +++ b/example/ios/.gitignore @@ -0,0 +1,34 @@ +**/dgph +*.mode1v3 +*.mode2v3 +*.moved-aside +*.pbxuser +*.perspectivev3 +**/*sync/ +.sconsign.dblite +.tags* +**/.vagrant/ +**/DerivedData/ +Icon? +**/Pods/ +**/.symlinks/ +profile +xcuserdata +**/.generated/ +Flutter/App.framework +Flutter/Flutter.framework +Flutter/Flutter.podspec +Flutter/Generated.xcconfig +Flutter/ephemeral/ +Flutter/app.flx +Flutter/app.zip +Flutter/flutter_assets/ +Flutter/flutter_export_environment.sh +ServiceDefinitions.json +Runner/GeneratedPluginRegistrant.* + +# Exceptions to above rules. +!default.mode1v3 +!default.mode2v3 +!default.pbxuser +!default.perspectivev3 From de6cfc3653ae2f25ca0347d43a9921d5163f10b0 Mon Sep 17 00:00:00 2001 From: Joe Wyrembelski Date: Fri, 7 Mar 2025 09:49:30 -0500 Subject: [PATCH 6/7] Replacing the example app with freshly generated (Flutter 3.29.0) example app (to get updated ios and android build files). Sadly, needed to delete the web example. Will reinstate in the future. --- example/.metadata | 25 +- example/android/app/build.gradle | 58 - example/android/app/build.gradle.kts | 44 + .../android/app/src/debug/AndroidManifest.xml | 7 + .../android/app/src/main/AndroidManifest.xml | 45 +- .../java/io/vitus/example/MainActivity.java | 6 - .../example/updated_example/MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../app/src/main/res/values-night/styles.xml | 18 + .../app/src/main/res/values/styles.xml | 9 +- .../app/src/profile/AndroidManifest.xml | 7 + example/android/build.gradle | 29 - example/android/build.gradle.kts | 21 + example/android/gradle.properties | 2 +- .../gradle/wrapper/gradle-wrapper.properties | 3 +- example/android/settings.gradle | 15 - example/android/settings.gradle.kts | 25 + example/ios/Flutter/AppFrameworkInfo.plist | 2 +- example/ios/Flutter/Debug.xcconfig | 1 - example/ios/Flutter/Release.xcconfig | 1 - example/ios/Podfile | 66 +- example/ios/Runner.xcodeproj/project.pbxproj | 285 +- .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 24 +- .../contents.xcworkspacedata | 3 - .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + example/ios/Runner/AppDelegate.h | 6 - example/ios/Runner/AppDelegate.m | 13 - example/ios/Runner/AppDelegate.swift | 13 + .../Icon-App-1024x1024@1x.png | Bin 11112 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 564 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 1283 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 1588 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 1025 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 1716 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 1920 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 1283 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 1895 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 2665 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 2665 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 3831 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 1888 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 3294 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 3612 -> 1418 bytes example/ios/Runner/Info.plist | 12 +- example/ios/Runner/Runner-Bridging-Header.h | 1 + example/ios/Runner/main.m | 9 - example/ios/RunnerTests/RunnerTests.swift | 12 + example/lib/database.g.dart | 181 +- example/pubspec.lock | 689 - example/pubspec.yaml | 30 +- example/web/favicon.png | Bin 917 -> 0 bytes example/web/icons/Icon-192.png | Bin 5292 -> 0 bytes example/web/icons/Icon-512.png | Bin 8252 -> 0 bytes example/web/icons/Icon-maskable-192.png | Bin 5594 -> 0 bytes example/web/icons/Icon-maskable-512.png | Bin 20998 -> 0 bytes example/web/index.html | 59 - example/web/manifest.json | 35 - example/web/sqflite_sw.js | 11525 ---------------- example/web/sqlite3.wasm | Bin 700198 -> 0 bytes 62 files changed, 586 insertions(+), 12744 deletions(-) delete mode 100644 example/android/app/build.gradle create mode 100644 example/android/app/build.gradle.kts create mode 100644 example/android/app/src/debug/AndroidManifest.xml delete mode 100644 example/android/app/src/main/java/io/vitus/example/MainActivity.java create mode 100644 example/android/app/src/main/kotlin/com/example/updated_example/MainActivity.kt create mode 100644 example/android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 example/android/app/src/main/res/values-night/styles.xml create mode 100644 example/android/app/src/profile/AndroidManifest.xml delete mode 100644 example/android/build.gradle create mode 100644 example/android/build.gradle.kts delete mode 100644 example/android/settings.gradle create mode 100644 example/android/settings.gradle.kts create mode 100644 example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings delete mode 100644 example/ios/Runner/AppDelegate.h delete mode 100644 example/ios/Runner/AppDelegate.m create mode 100644 example/ios/Runner/AppDelegate.swift create mode 100644 example/ios/Runner/Runner-Bridging-Header.h delete mode 100644 example/ios/Runner/main.m create mode 100644 example/ios/RunnerTests/RunnerTests.swift delete mode 100644 example/pubspec.lock delete mode 100644 example/web/favicon.png delete mode 100644 example/web/icons/Icon-192.png delete mode 100644 example/web/icons/Icon-512.png delete mode 100644 example/web/icons/Icon-maskable-192.png delete mode 100644 example/web/icons/Icon-maskable-512.png delete mode 100644 example/web/index.html delete mode 100644 example/web/manifest.json delete mode 100644 example/web/sqflite_sw.js delete mode 100644 example/web/sqlite3.wasm diff --git a/example/.metadata b/example/.metadata index 357f8d93..9a674c61 100644 --- a/example/.metadata +++ b/example/.metadata @@ -4,7 +4,7 @@ # This file should be version controlled and should not be manually edited. version: - revision: "7482962148e8d758338d8a28f589f317e1e42ba4" + revision: "35c388afb57ef061d06a39b537336c87e0e3d1b1" channel: "stable" project_type: app @@ -13,11 +13,26 @@ project_type: app migration: platforms: - platform: root - create_revision: 7482962148e8d758338d8a28f589f317e1e42ba4 - base_revision: 7482962148e8d758338d8a28f589f317e1e42ba4 + create_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 + base_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 + - platform: android + create_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 + base_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 + - platform: ios + create_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 + base_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 + - platform: linux + create_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 + base_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 + - platform: macos + create_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 + base_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 - platform: web - create_revision: 7482962148e8d758338d8a28f589f317e1e42ba4 - base_revision: 7482962148e8d758338d8a28f589f317e1e42ba4 + create_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 + base_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 + - platform: windows + create_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 + base_revision: 35c388afb57ef061d06a39b537336c87e0e3d1b1 # User provided section diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle deleted file mode 100644 index 77d4110f..00000000 --- a/example/android/app/build.gradle +++ /dev/null @@ -1,58 +0,0 @@ -def localProperties = new Properties() -def localPropertiesFile = rootProject.file('local.properties') -if (localPropertiesFile.exists()) { - localPropertiesFile.withReader('UTF-8') { reader -> - localProperties.load(reader) - } -} - -def flutterRoot = localProperties.getProperty('flutter.sdk') -if (flutterRoot == null) { - throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") -} - -def flutterVersionCode = localProperties.getProperty('flutter.versionCode') -if (flutterVersionCode == null) { - flutterVersionCode = '1' -} - -def flutterVersionName = localProperties.getProperty('flutter.versionName') -if (flutterVersionName == null) { - flutterVersionName = '1.0' -} - -apply plugin: 'com.android.application' -apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" - -android { - compileSdkVersion flutter.compileSdkVersion - - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - - defaultConfig { - // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). - applicationId "io.vitus.example" - minSdkVersion flutter.minSdkVersion - targetSdkVersion flutter.targetSdkVersion - versionCode flutterVersionCode.toInteger() - versionName flutterVersionName - } - - buildTypes { - release { - // TODO: Add your own signing config for the release build. - // Signing with the debug keys for now, so `flutter run --release` works. - signingConfig signingConfigs.debug - } - } -} - -flutter { - source '../..' -} - -dependencies { -} diff --git a/example/android/app/build.gradle.kts b/example/android/app/build.gradle.kts new file mode 100644 index 00000000..e83ebbe1 --- /dev/null +++ b/example/android/app/build.gradle.kts @@ -0,0 +1,44 @@ +plugins { + id("com.android.application") + id("kotlin-android") + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id("dev.flutter.flutter-gradle-plugin") +} + +android { + namespace = "com.example.updated_example" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11.toString() + } + + defaultConfig { + // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). + applicationId = "com.example.updated_example" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = flutter.minSdkVersion + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig = signingConfigs.getByName("debug") + } + } +} + +flutter { + source = "../.." +} diff --git a/example/android/app/src/debug/AndroidManifest.xml b/example/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 00000000..399f6981 --- /dev/null +++ b/example/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml index 7ea2d316..1a97b5f4 100644 --- a/example/android/app/src/main/AndroidManifest.xml +++ b/example/android/app/src/main/AndroidManifest.xml @@ -1,34 +1,45 @@ - - - - + + android:icon="@mipmap/ic_launcher"> - + + android:name="io.flutter.embedding.android.NormalTheme" + android:resource="@style/NormalTheme" + /> - - + + + + + + + + + + diff --git a/example/android/app/src/main/java/io/vitus/example/MainActivity.java b/example/android/app/src/main/java/io/vitus/example/MainActivity.java deleted file mode 100644 index 2a6bbee6..00000000 --- a/example/android/app/src/main/java/io/vitus/example/MainActivity.java +++ /dev/null @@ -1,6 +0,0 @@ -package io.vitus.example; - -import io.flutter.embedding.android.FlutterActivity; - -public class MainActivity extends FlutterActivity { -} diff --git a/example/android/app/src/main/kotlin/com/example/updated_example/MainActivity.kt b/example/android/app/src/main/kotlin/com/example/updated_example/MainActivity.kt new file mode 100644 index 00000000..6450d35d --- /dev/null +++ b/example/android/app/src/main/kotlin/com/example/updated_example/MainActivity.kt @@ -0,0 +1,5 @@ +package com.example.updated_example + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity : FlutterActivity() diff --git a/example/android/app/src/main/res/drawable-v21/launch_background.xml b/example/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 00000000..f74085f3 --- /dev/null +++ b/example/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/example/android/app/src/main/res/values-night/styles.xml b/example/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 00000000..06952be7 --- /dev/null +++ b/example/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/example/android/app/src/main/res/values/styles.xml b/example/android/app/src/main/res/values/styles.xml index 8a7dbd02..cb1ef880 100644 --- a/example/android/app/src/main/res/values/styles.xml +++ b/example/android/app/src/main/res/values/styles.xml @@ -1,11 +1,10 @@ - - - diff --git a/example/android/app/src/profile/AndroidManifest.xml b/example/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 00000000..399f6981 --- /dev/null +++ b/example/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/example/android/build.gradle b/example/android/build.gradle deleted file mode 100644 index 68230ee9..00000000 --- a/example/android/build.gradle +++ /dev/null @@ -1,29 +0,0 @@ -buildscript { - repositories { - google() - mavenCentral() - } - - dependencies { - classpath 'com.android.tools.build:gradle:7.0.4' - } -} - -allprojects { - repositories { - google() - mavenCentral() - } -} - -rootProject.buildDir = '../build' -subprojects { - project.buildDir = "${rootProject.buildDir}/${project.name}" -} -subprojects { - project.evaluationDependsOn(':app') -} - -tasks.register("clean", Delete) { - delete rootProject.buildDir -} diff --git a/example/android/build.gradle.kts b/example/android/build.gradle.kts new file mode 100644 index 00000000..89176ef4 --- /dev/null +++ b/example/android/build.gradle.kts @@ -0,0 +1,21 @@ +allprojects { + repositories { + google() + mavenCentral() + } +} + +val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get() +rootProject.layout.buildDirectory.value(newBuildDir) + +subprojects { + val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name) + project.layout.buildDirectory.value(newSubprojectBuildDir) +} +subprojects { + project.evaluationDependsOn(":app") +} + +tasks.register("clean") { + delete(rootProject.layout.buildDirectory) +} diff --git a/example/android/gradle.properties b/example/android/gradle.properties index 94adc3a3..f018a618 100644 --- a/example/android/gradle.properties +++ b/example/android/gradle.properties @@ -1,3 +1,3 @@ -org.gradle.jvmargs=-Xmx1536M +org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError android.useAndroidX=true android.enableJetifier=true diff --git a/example/android/gradle/wrapper/gradle-wrapper.properties b/example/android/gradle/wrapper/gradle-wrapper.properties index 6b665338..afa1e8eb 100644 --- a/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/example/android/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,5 @@ -#Fri Jun 23 08:50:38 CEST 2017 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip diff --git a/example/android/settings.gradle b/example/android/settings.gradle deleted file mode 100644 index 5a2f14fb..00000000 --- a/example/android/settings.gradle +++ /dev/null @@ -1,15 +0,0 @@ -include ':app' - -def flutterProjectRoot = rootProject.projectDir.parentFile.toPath() - -def plugins = new Properties() -def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins') -if (pluginsFile.exists()) { - pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) } -} - -plugins.each { name, path -> - def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile() - include ":$name" - project(":$name").projectDir = pluginDirectory -} diff --git a/example/android/settings.gradle.kts b/example/android/settings.gradle.kts new file mode 100644 index 00000000..a439442c --- /dev/null +++ b/example/android/settings.gradle.kts @@ -0,0 +1,25 @@ +pluginManagement { + val flutterSdkPath = run { + val properties = java.util.Properties() + file("local.properties").inputStream().use { properties.load(it) } + val flutterSdkPath = properties.getProperty("flutter.sdk") + require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" } + flutterSdkPath + } + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id("dev.flutter.flutter-plugin-loader") version "1.0.0" + id("com.android.application") version "8.7.0" apply false + id("org.jetbrains.kotlin.android") version "1.8.22" apply false +} + +include(":app") diff --git a/example/ios/Flutter/AppFrameworkInfo.plist b/example/ios/Flutter/AppFrameworkInfo.plist index 9367d483..7c569640 100644 --- a/example/ios/Flutter/AppFrameworkInfo.plist +++ b/example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 8.0 + 12.0 diff --git a/example/ios/Flutter/Debug.xcconfig b/example/ios/Flutter/Debug.xcconfig index b2f5fae9..ec97fc6f 100644 --- a/example/ios/Flutter/Debug.xcconfig +++ b/example/ios/Flutter/Debug.xcconfig @@ -1,3 +1,2 @@ #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" -#include "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" #include "Generated.xcconfig" diff --git a/example/ios/Flutter/Release.xcconfig b/example/ios/Flutter/Release.xcconfig index 88c29144..c4855bfe 100644 --- a/example/ios/Flutter/Release.xcconfig +++ b/example/ios/Flutter/Release.xcconfig @@ -1,3 +1,2 @@ #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" -#include "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" #include "Generated.xcconfig" diff --git a/example/ios/Podfile b/example/ios/Podfile index d077b08b..e549ee22 100644 --- a/example/ios/Podfile +++ b/example/ios/Podfile @@ -1,5 +1,5 @@ # Uncomment this line to define a global platform for your project -# platform :ios, '9.0' +# platform :ios, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -10,60 +10,34 @@ project 'Runner', { 'Release' => :release, } -def parse_KV_file(file, separator='=') - file_abs_path = File.expand_path(file) - if !File.exists? file_abs_path - return []; +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" end - pods_ary = [] - skip_line_start_symbols = ["#", "/"] - File.foreach(file_abs_path) { |line| - next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ } - plugin = line.split(pattern=separator) - if plugin.length == 2 - podname = plugin[0].strip() - path = plugin[1].strip() - podpath = File.expand_path("#{path}", file_abs_path) - pods_ary.push({:name => podname, :path => podpath}); - else - puts "Invalid plugin specification: #{line}" - end - } - return pods_ary + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" end +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_ios_podfile_setup + target 'Runner' do - # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock - # referring to absolute paths on developers' machines. - system('rm -rf .symlinks') - system('mkdir -p .symlinks/plugins') + use_frameworks! - # Flutter Pods - generated_xcode_build_settings = parse_KV_file('./Flutter/Generated.xcconfig') - if generated_xcode_build_settings.empty? - puts "Generated.xcconfig must exist. If you're running pod install manually, make sure flutter packages get is executed first." + flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) + target 'RunnerTests' do + inherit! :search_paths end - generated_xcode_build_settings.map { |p| - if p[:name] == 'FLUTTER_FRAMEWORK_DIR' - symlink = File.join('.symlinks', 'flutter') - File.symlink(File.dirname(p[:path]), symlink) - pod 'Flutter', :path => File.join(symlink, File.basename(p[:path])) - end - } - - # Plugin Pods - plugin_pods = parse_KV_file('../.flutter-plugins') - plugin_pods.map { |p| - symlink = File.join('.symlinks', 'plugins', p[:name]) - File.symlink(p[:path], symlink) - pod p[:name], :path => File.join(symlink, 'ios') - } end post_install do |installer| installer.pods_project.targets.each do |target| - target.build_configurations.each do |config| - config.build_settings['ENABLE_BITCODE'] = 'NO' - end + flutter_additional_ios_build_settings(target) end end diff --git a/example/ios/Runner.xcodeproj/project.pbxproj b/example/ios/Runner.xcodeproj/project.pbxproj index d4fc6969..e6f52fec 100644 --- a/example/ios/Runner.xcodeproj/project.pbxproj +++ b/example/ios/Runner.xcodeproj/project.pbxproj @@ -3,21 +3,29 @@ archiveVersion = 1; classes = { }; - objectVersion = 46; + objectVersion = 54; objects = { /* Begin PBXBuildFile section */ - 0971C0EA5B81A2E96140B8BA /* libPods-Runner.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B7BCC0007C3DDEAA87CBF7AE /* libPods-Runner.a */; }; 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; - 9740EEB41CF90195004384FC /* Debug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 9740EEB21CF90195004384FC /* Debug.xcconfig */; }; - 978B8F6F1D3862AE00F588F7 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 7AFFD8EE1D35381100E5BB4D /* AppDelegate.m */; }; - 97C146F31CF9000F007C117D /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 97C146F21CF9000F007C117D /* main.m */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; /* End PBXBuildFile section */ +/* Begin PBXContainerItemProxy section */ + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 97C146E61CF9000F007C117D /* Project object */; + proxyType = 1; + remoteGlobalIDString = 97C146ED1CF9000F007C117D; + remoteInfo = Runner; + }; +/* End PBXContainerItemProxy section */ + /* Begin PBXCopyFilesBuildPhase section */ 9705A1C41CF9048500538489 /* Embed Frameworks */ = { isa = PBXCopyFilesBuildPhase; @@ -34,22 +42,19 @@ /* Begin PBXFileReference section */ 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; - 1E5AC63251E5084E18C704B8 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; - 7AFFD8ED1D35381100E5BB4D /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; - 7AFFD8EE1D35381100E5BB4D /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; - 87B0299D2F6253F586058FE7 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 97C146F21CF9000F007C117D /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - B7BCC0007C3DDEAA87CBF7AE /* libPods-Runner.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Runner.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - DABA83F17ED6239A7AC89CAE /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Pods/Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -57,29 +62,18 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 0971C0EA5B81A2E96140B8BA /* libPods-Runner.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 2B0303C777C2A7C36A797920 /* Frameworks */ = { + 331C8082294A63A400263BE5 /* RunnerTests */ = { isa = PBXGroup; children = ( - B7BCC0007C3DDEAA87CBF7AE /* libPods-Runner.a */, + 331C807B294A618700263BE5 /* RunnerTests.swift */, ); - name = Frameworks; - sourceTree = ""; - }; - 8848A5CBAC196E551DC9292D /* Pods */ = { - isa = PBXGroup; - children = ( - 1E5AC63251E5084E18C704B8 /* Pods-Runner.debug.xcconfig */, - 87B0299D2F6253F586058FE7 /* Pods-Runner.release.xcconfig */, - DABA83F17ED6239A7AC89CAE /* Pods-Runner.profile.xcconfig */, - ); - name = Pods; + path = RunnerTests; sourceTree = ""; }; 9740EEB11CF90186004384FC /* Flutter */ = { @@ -99,8 +93,7 @@ 9740EEB11CF90186004384FC /* Flutter */, 97C146F01CF9000F007C117D /* Runner */, 97C146EF1CF9000F007C117D /* Products */, - 8848A5CBAC196E551DC9292D /* Pods */, - 2B0303C777C2A7C36A797920 /* Frameworks */, + 331C8082294A63A400263BE5 /* RunnerTests */, ); sourceTree = ""; }; @@ -108,6 +101,7 @@ isa = PBXGroup; children = ( 97C146EE1CF9000F007C117D /* Runner.app */, + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, ); name = Products; sourceTree = ""; @@ -115,42 +109,48 @@ 97C146F01CF9000F007C117D /* Runner */ = { isa = PBXGroup; children = ( - 7AFFD8ED1D35381100E5BB4D /* AppDelegate.h */, - 7AFFD8EE1D35381100E5BB4D /* AppDelegate.m */, 97C146FA1CF9000F007C117D /* Main.storyboard */, 97C146FD1CF9000F007C117D /* Assets.xcassets */, 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, 97C147021CF9000F007C117D /* Info.plist */, - 97C146F11CF9000F007C117D /* Supporting Files */, 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, ); path = Runner; sourceTree = ""; }; - 97C146F11CF9000F007C117D /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 97C146F21CF9000F007C117D /* main.m */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ + 331C8080294A63A400263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C807D294A63A400263BE5 /* Sources */, + 331C807F294A63A400263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C8086294A63A400263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; 97C146ED1CF9000F007C117D /* Runner */ = { isa = PBXNativeTarget; buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( - 92EB0C67E72C7921967CBE14 /* [CP] Check Pods Manifest.lock */, 9740EEB61CF901F6004384FC /* Run Script */, 97C146EA1CF9000F007C117D /* Sources */, 97C146EB1CF9000F007C117D /* Frameworks */, 97C146EC1CF9000F007C117D /* Resources */, 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, - E62E850C06B92A582AAB7B05 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -167,17 +167,23 @@ 97C146E61CF9000F007C117D /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0910; - ORGANIZATIONNAME = "The Chromium Authors"; + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; TargetAttributes = { + 331C8080294A63A400263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 97C146ED1CF9000F007C117D; + }; 97C146ED1CF9000F007C117D = { CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; }; }; }; buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( en, @@ -189,18 +195,25 @@ projectRoot = ""; targets = ( 97C146ED1CF9000F007C117D /* Runner */, + 331C8080294A63A400263BE5 /* RunnerTests */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ + 331C807F294A63A400263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; 97C146EC1CF9000F007C117D /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, - 9740EEB41CF90195004384FC /* Debug.xcconfig in Resources */, 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, ); @@ -211,10 +224,12 @@ /* Begin PBXShellScriptBuildPhase section */ 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", ); name = "Thin Binary"; outputPaths = ( @@ -223,26 +238,9 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; }; - 92EB0C67E72C7921967CBE14 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); @@ -255,39 +253,36 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; }; - E62E850C06B92A582AAB7B05 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C807D294A63A400263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - ); - inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh", - "${PODS_ROOT}/../.symlinks/flutter/ios/Flutter.framework", - ); - name = "[CP] Embed Pods Frameworks"; - outputPaths = ( - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Flutter.framework", + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; - showEnvVarsInLog = 0; }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ 97C146EA1CF9000F007C117D /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 978B8F6F1D3862AE00F588F7 /* AppDelegate.m in Sources */, - 97C146F31CF9000F007C117D /* main.m in Sources */, + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ +/* Begin PBXTargetDependency section */ + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 97C146ED1CF9000F007C117D /* Runner */; + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + /* Begin PBXVariantGroup section */ 97C146FA1CF9000F007C117D /* Main.storyboard */ = { isa = PBXVariantGroup; @@ -312,6 +307,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; @@ -321,12 +317,14 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; @@ -339,6 +337,7 @@ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -347,9 +346,10 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; }; @@ -360,29 +360,75 @@ baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = S8QB4VV633; + DEVELOPMENT_TEAM = 4BT84R5QV6; ENABLE_BITCODE = NO; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - LIBRARY_SEARCH_PATHS = ( + LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", - "$(PROJECT_DIR)/Flutter", + "@executable_path/Frameworks", ); - PRODUCT_BUNDLE_IDENTIFIER = io.vitus.example; + PRODUCT_BUNDLE_IDENTIFIER = com.example.updatedExample; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; VERSIONING_SYSTEM = "apple-generic"; }; name = Profile; }; + 331C8088294A63A400263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.updatedExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Debug; + }; + 331C8089294A63A400263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.updatedExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Release; + }; + 331C808A294A63A400263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.updatedExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Profile; + }; 97C147031CF9000F007C117D /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; @@ -392,12 +438,14 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; @@ -410,6 +458,7 @@ DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -424,7 +473,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -436,6 +485,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; @@ -445,12 +495,14 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; @@ -463,6 +515,7 @@ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -471,9 +524,12 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; }; @@ -484,20 +540,20 @@ baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + DEVELOPMENT_TEAM = 4BT84R5QV6; ENABLE_BITCODE = NO; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - LIBRARY_SEARCH_PATHS = ( + LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", - "$(PROJECT_DIR)/Flutter", + "@executable_path/Frameworks", ); - PRODUCT_BUNDLE_IDENTIFIER = io.vitus.example; + PRODUCT_BUNDLE_IDENTIFIER = com.example.updatedExample; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; VERSIONING_SYSTEM = "apple-generic"; }; name = Debug; @@ -507,20 +563,19 @@ baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + DEVELOPMENT_TEAM = 4BT84R5QV6; ENABLE_BITCODE = NO; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - LIBRARY_SEARCH_PATHS = ( + LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", - "$(PROJECT_DIR)/Flutter", + "@executable_path/Frameworks", ); - PRODUCT_BUNDLE_IDENTIFIER = io.vitus.example; + PRODUCT_BUNDLE_IDENTIFIER = com.example.updatedExample; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; VERSIONING_SYSTEM = "apple-generic"; }; name = Release; @@ -528,6 +583,16 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C8088294A63A400263BE5 /* Debug */, + 331C8089294A63A400263BE5 /* Release */, + 331C808A294A63A400263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 00000000..f9b0d7c5 --- /dev/null +++ b/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index 786d6aad..15cada48 100644 --- a/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,6 +1,6 @@ - - - - + + + + + + @@ -63,8 +71,6 @@ ReferencedContainer = "container:Runner.xcodeproj"> - - - - diff --git a/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 00000000..f9b0d7c5 --- /dev/null +++ b/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/example/ios/Runner/AppDelegate.h b/example/ios/Runner/AppDelegate.h deleted file mode 100644 index 36e21bbf..00000000 --- a/example/ios/Runner/AppDelegate.h +++ /dev/null @@ -1,6 +0,0 @@ -#import -#import - -@interface AppDelegate : FlutterAppDelegate - -@end diff --git a/example/ios/Runner/AppDelegate.m b/example/ios/Runner/AppDelegate.m deleted file mode 100644 index 59a72e90..00000000 --- a/example/ios/Runner/AppDelegate.m +++ /dev/null @@ -1,13 +0,0 @@ -#include "AppDelegate.h" -#include "GeneratedPluginRegistrant.h" - -@implementation AppDelegate - -- (BOOL)application:(UIApplication *)application - didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { - [GeneratedPluginRegistrant registerWithRegistry:self]; - // Override point for customization after application launch. - return [super application:application didFinishLaunchingWithOptions:launchOptions]; -} - -@end diff --git a/example/ios/Runner/AppDelegate.swift b/example/ios/Runner/AppDelegate.swift new file mode 100644 index 00000000..62666446 --- /dev/null +++ b/example/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Flutter +import UIKit + +@main +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png index 3d43d11e66f4de3da27ed045ca4fe38ad8b48094..dc9ada4725e9b0ddb1deab583e5b5102493aa332 100644 GIT binary patch literal 10932 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 P-1+_A+?hGkL;m(J7kc&K diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png index 28c6bf03016f6c994b70f38d1b7346e5831b531f..7353c41ecf9ca08017312dc233d9830079b50717 100644 GIT binary patch delta 279 zcmV+y0qFj;1g8R!8Gi!+006pI?LPnj0Blf9R7L;)|5U~J`u_j-{Qm)0oAmqtj@kOz z^8J|I`-|B6ht~R5kG+%I`zf~eztraM`u^bc{`dO)zUlmg)%x%C`E}6wSI77~z4s`y z^XT{f(eM4n?EUff`e@AgO~UxV*5*r_%Uhbj5N)LaQj!wdIe!-b004GLL_t&-)18pX z4udcZ1u-#g(~z+5JN*AY5?>Gw7hsN~k)CYt4dQDFxbs5*_&e@Hj)wtt(&JE<3Eq*D z;_gQLvqXoKv=I*gWqM9C(Tvu0>=?hTbOp9!6k6AF;>f6|S5%jGEE}TA9h)e`Yuiu8 d7)l?o1NFcJg%EAfM$P~L002ovPDHLkV1g^Dnv?(l delta 550 zcmV+>0@?ki0<;8>8Gi-<0051N9Sr~g00DDSM?wIu&K&6g00HhvL_t(I5v`QFOB_)Y z#?QI;j_a;jjf#Z$YJ7mH(xecJU?W)A`9CN~KrBV85C}GDQ=|;GDFPNjtWty!L{u=? zh>8yo%^GE+J9o~_IZFoiamQVQXP7%LzTbT3F@uf+9x&7cvVV%GdjTaC;zf>@mq<=3 z!c<%*UT)@yJ|0BK6~d4Jx-*KV`ZQ(@VyUPupum=XhInNG#Z_k-X|hK{B}~9IfiWx} zLD5QY6Vm)p0NrWymdkrHPN5Vgwd>5>4HI1=@PA+e^rq~CEj|n2X`??)0mUI*D{KBn zjv{V=y5X9|X@3grkpcXC6oou4ML~ezCc2EtnsQTB4tWNg?4bkf;hG7IMfhgNI(FV5 zGs4|*GyMTIY0$B=_*mso9+>eB z?J{?+FLkYu+4_Uk`r_>LHF~flZm0oBf#vr8%vJ>#p~!KNvqGG3)|f1T_)ydeh8$vDceZ>oNbH^|*hJ*t?Yc*1`WB&W>VYVEzu) zq#7;;VjO)t*nbgf(!`OXJBr45rP>>AQr$6c7slJWvbpNW@KTwna6d?PP>hvXCcp=4 zF;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f<+$JJpcdz delta 1274 zcmV@pi1MCNO0zH7s z{8#}P0)7Ba8DqYf&QgSne>X__O83t$NZM4&R0{XJq|x}oAU?tcfC@|eNz$04T}34& z8DJf78R&>*Zz`k$q{`#gfGHnx7nlH^G{y`jfER)1<_fNi<9aM%_zrm1C`yPkKma(+ ztQ;y*CR2bbBYz>zG*SVsfpkGU(q>uHZf3iogk_%#9E|5SWeHrmAo>P;ejX7mwq#*} zW25m^ZI+{(Z8fI?4jM_fffY0nok=+88^|*_DwcW>mR#e+X$F_KMdb6sRz!~7K zkyN0G(3XQ+;z3X%PZ4gh;n-%62U<*VUKNv(D&IDi_4_D!s#MVXp|-XhH;H z#&@_;oApJVd}}5O@b=X_gJboD^-fM@6|#V@sA%X)Rlkd}3MLH0dGXGG&-HX|aD~|M zC)W#H7=H?AbtdaV#dGpubj_O^J-SlWpVNv-5(;wR%mvE9`Qaqo>03b&##eNNf=m#B z9@^lsd8tJ;BvI86kNV zc~0CY(7V{s+h%cWG|y=gt|q`z$l<(@qU=i?9q#uz`G?PgDMK!VMGidHZt*N+1L0ZI zFkH=mFtywc6rJ}C_?)=m)18V!ZQ`*-j(D`gCFK|nt#{bk*%%zuQ7o7kvJgA^=(^7b zzkm5GZ;jxRn{Wup8IOUx8D4uh&(=Ox-7$a;U><*5L^!% zxRlw)vAbh;sdlR||&e}8_8%)c2Fwy=F& zH|LM+p{pZB5DKTx>Y?F1N%BlZkXf!}Jb#viX>Oi;kBKp1x_fc0#UIbIeSJ^EkWFox zijdim{ojmn@#7EC*aY;fC0W*WN+DmQtE06pNK3SfZ^#@2K`6RgEuU_KwJTQ>E?Yar zc_9e#I$F8%>kuy-JI6ocSsYvQGbsxUCx04(w1z-pMRz9`kH5smmF@WHEG?dcYkv){ zV?kn3XB$_3zr*h1Uow)(<5)w5;3Wh1jHI)`ZlXp&!yEV{Y_~@;?CLwq;4eeaGOe6( zEsSSbwSGD0-`dUUGM-ShrilfUZt{^9lhT*&z4_x{-O{Rv#2V9EI}xb^~1iQe@7)8g(7UZ4B@ z|4zgB>+<*9=;^^)>d)H7pzGjuM>Jnezy3`@G2r z?{~a!Fj;`+8Gq^x2Jl;?IEV8)=fG217*|@)CCYgFze-x?IFODUIA>nWKpE+bn~n7; z-89sa>#DR>TSlqWk*!2hSN6D~Qb#VqbP~4Fk&m`@1$JGrXPIdeRE&b2Thd#{MtDK$ zpx*d3-Wx``>!oimf%|A-&-q*6KAH)e$3|6JV%HX{HY|nMnXd&JOovdH8X7V5?1^Y=vK~!ko-J4%*6h$1z_l{zTu}>N$Y77dN z(jrej`JjnWDIm3fj{j>}J%k>VpVM zMunJ?rSR(^OuXDgm2)PP%Lw)()f=TG1B~ScNUFa-({vjDk;dweRiFe?w-6Qho(O1_ zv!(2WV2ZhFC1SqPt}wig>|5C zrh^=oyX$BK<}M8eLU3e2hGT;=G|!_SP)7zNI6fqUMB=)yRAZ>eDe#*r`yDAVgB_R* zLB*MAc8_?!g7#WjJA zNf*S~m|;6j!A4w$ko3-C-D?f3QiNoOywjDS!K#57`tfjzaqOr$8SWAG-j-YxSgf$JEO3s=FUciZf^T1|d zdlv{cAz-VWC8|7CEV-;Wb6Vzrt)AkMWOkTe+ZBtZc)X@JVej7(9Qa3q{qv~yUkR%F zgV1zYf*?t3UMs{3OLcKP1Z6m=c&$AQlc=-2K7W6gDCe$axhg&7qBi(Mc=7aOu!`S0t-8gf#ZQK=m_VkJUaO-56fxM&#U}>8ioQPQ~9Xan>71|{&AvQNWKoV z(G*V$cD|NEzl(OC?HDr#Cqt&AdqP30PY2p48uOaogm_>#S_o_EvD7yf32g)`v6|+S zX@6g&FeQFxowa1(!J(;Jg*wrg!=6FdRX+t_<%z&d&?|Bn){>zmZQj(aA_HeBY&OC^ zjj*)N`8fa^ePOU72VpInJoI1?`ty#lvlNzs(&MZX+R%2xS~5KhX*|AU4QE#~SgPzO zXe9>tRj>hjU@c1k5Y_mW*Jp3fI;)1&f`88QO)34l90xUaIcrN!i^H~!$VzZpscObr z3PVpq)=3d6{*YiK7;ZBp6>?f?;EtO_0nMBTIICp>R=3LV88-e@FYC%|E0}pO*gziiBLfe{%Kc@qo)p8GVT7N0* z4M_Lw1tG5n(zZ5$P*4jGZTlL!ZFJhUpIRgx=rAmS%;sT8&)W?`?kC{()PbwS3u#;G z5xOo6ZIjcs{+JdGz5K@sSo14D=FzK={`?LQo~r_Pel@s?4}xpcmx|K19GZo;!D-un zE}eyzVa=&&Sk`n2mb~yf2+vl6yMJIGxIEq&SWRe)op$60@i246YB3>oE(3e2L-^}4_|K@$pmRb!NBBQzlNb;zJF zMc&w;%{On(HbQ| z@Dr$e;PBEz4(-2q1FF0}c;~B5sA}+Q>TOoP+t>wf)V9Iy=5ruQa;z)yI9C9*oUga6 z=hxw6QasLPnee@3^pcqGR@o#L@+8nuG5suzgA#ZC&s z|EF-4U3#nH>r^ME@~U|CYWRjZ`yN=c=Fr}#_Mgg|JQ_F~MDJ{2FSyz9PS&T@VVxu? zJm1Eneyq~b<9m$74O-iHG@!Fk->^qks+0-Tx2T+XVGXw8twMc3$0rG>+mL)4wdl~R g1N9*XHQJT-A9HGq3eLdY0ssI207*qoM6N<$f)O(SQ~&?~ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png index 4cde12118dda48d71e01fcb589a74d069c5d7cb5..4cd7b0099ca80c806f8fe495613e8d6c69460d76 100644 GIT binary patch delta 266 zcmV+l0rmcY2$}+r8Gi!+003c4mpuRg09{Z_R7L;)|5U~JDYo_jSDX9(|7FYh`2GLd z^Zv2r{H^2sT*&w!Y^SB+`<>qVZqE6)=lqo0`vF#&*75!I`TIh@_d&k*HoEtQyV-iD z%Xz2D9EQRbeYh5Nr~y=#0ZD;^+vz0$004MNL_t(2&&|%+4u6C&2tZM$Wf&dzefR%A z(^3-?6X>hnCz2Ba@RH&`m!pgy?n@#@AuLYB&}Q)FGY`?vcft0!vht0Z@M&ZeNCWXh75gzRTXR8EE3oN&6 Q00000NkvXXt^-0~g5kS`djJ3c delta 1014 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 Zxpx7IC@PekH?;r&002ovPDHLkV1i)CYaajr delta 1916 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 delta 1274 zcmV@pi1MCNO0zH7s z{8#}P0)7Ba8DqYf&QgSne>X__O83t$NZM4&R0{XJq|x}oAU?tcfC@|eNz$04T}34& z8DJf78R&>*Zz`k$q{`#gfGHnx7nlH^G{y`jfER)1<_fNi<9aM%_zrm1C`yPkKma(+ ztQ;y*CR2bbBYz>zG*SVsfpkGU(q>uHZf3iogk_%#9E|5SWeHrmAo>P;ejX7mwq#*} zW25m^ZI+{(Z8fI?4jM_fffY0nok=+88^|*_DwcW>mR#e+X$F_KMdb6sRz!~7K zkyN0G(3XQ+;z3X%PZ4gh;n-%62U<*VUKNv(D&IDi_4_D!s#MVXp|-XhH;H z#&@_;oApJVd}}5O@b=X_gJboD^-fM@6|#V@sA%X)Rlkd}3MLH0dGXGG&-HX|aD~|M zC)W#H7=H?AbtdaV#dGpubj_O^J-SlWpVNv-5(;wR%mvE9`Qaqo>03b&##eNNf=m#B z9@^lsd8tJ;BvI86kNV zc~0CY(7V{s+h%cWG|y=gt|q`z$l<(@qU=i?9q#uz`G?PgDMK!VMGidHZt*N+1L0ZI zFkH=mFtywc6rJ}C_?)=m)18V!ZQ`*-j(D`gCFK|nt#{bk*%%zuQ7o7kvJgA^=(^7b zzkm5GZ;jxRn{Wup8IOUx8D4uh&(=Ox-7$a;U><*5L^!% zxRlw)vAbh;sdlR||&e}8_8%)c2Fwy=F& zH|LM+p{pZB5DKTx>Y?F1N%BlZkXf!}Jb#viX>Oi;kBKp1x_fc0#UIbIeSJ^EkWFox zijdim{ojmn@#7EC*aY;fC0W*WN+DmQtE06pNK3SfZ^#@2K`6RgEuU_KwJTQ>E?Yar zc_9e#I$F8%>kuy-JI6ocSsYvQGbsxUCx04(w1z-pMRz9`kH5smmF@WHEG?dcYkv){ zV?kn3XB$_3zr*h1Uow)(<5)w5;3Wh1jHI)`ZlXp&!yEV{Y_~@;?CLwq;4eeaGOe6( zEsSSbwSGD0-`dUUl014$1_O8Gi!+006nq0-pc?0H{z*R7L;)|5U~JDYo_jSDXF*|5nEMy6F5^ z$M}8I`uzU?*Yf=uXr;5|{0m;6_Wb|A>ik^D_|)+I$?g3CSDK^3+eX0mD!2CP`2NN0 z{dLg!a?km&%iyTt`yiax0acdp`~T(l{$a`ZF1YpsRg(cvjDG_-U$Er-fz#Bw>2W$eUI#iU z)Wdgs8Y3U+A$Gd&{+j)d)BmGKx+43U_!tik_YlN)>$7G!hkE!s;%oku3;IwG3U^2k zw?z+HM)jB{@zFhK8P#KMSytSthr+4!c(5c%+^UBn_j%}l|2+O?a>_7qq7W zmx(qtA2nV^tZlLpy_#$U%ZNx5;$`0L&dZ!@e7rFXPGAOup%q`|03hpdtXsPP0000< KMNUMnLSTZ1N;Pr- delta 1891 zcmV-p2b}oI1m_Nr8Gi-<0052=@~r>>2QEoOK~#9!?VW3E6jc<*XLh$yKNt;)Mial3 z7z%<>zxaV5DhMs*(b6YIW1=KP6Jj(m21QYbiJ}su&;o5EN=$%gptMj6p|(7#AOTUJ zlt8fsX(iGq?ZQ50=XmbU+~w|cmz~|6$KBbz$-g^IcV>Hk`+q<8%-p?uMi3G-0B~!5 ze-yPCwFPw?HGmpMc~K)7BCq;C528+>zC*o^8h^XKC)IFgkv#xzm!ewK7j|kRa9dFo zC>MoDSR@P2#cWSU{i1oH5K2-Xb3jRz>|h7VOh0K` zhq^--L3H}A0r)nr z;Tr|-kPjB1s=ItpnS`oT%|U=a4oK-ZFIE^YBLH{u2#~@%%D^K)$`9*Tg(~9M-B+Zj z;~H?4LVsEt0eFtN4&>H(DZ@KpI6RhBKLL21CxC`J&m4Gc^9wwMZU#7SR1+KtuhSZM z+yLY}Vekzw6T_ApfEkuB_yU;e&a)L@rX~z70A_N+upOXN!qygmPDmKG0d%7CECcAI zgkd>ArzH$a0XjKsO$X@IgkcH5Y;m3`0G*yNOn(KK4GF_EfL4aB5i1j9o&Z{vFk~k> z&?@K2jQcJO%W!cddG(_DyfSoO55bUMHtbDF8DPkwF^~Ql#Eq4w15k{h%ML5Ar&pzi zl-D7v8kQXQ!&RRgKCW#5DZB$$6?mjWm50rRw*ukK>P-GkA|k69h{NARc>e}uLx+U4 z0DqE>7pa}9Fez+Vc-3jb`%i^uulglFoMzAVR|2%rf= zf#;74FXF^Ku_4+G&-4$KVy%YP>%2rxu2VG_cdm?XRjEhF&wPXJ># z_Q2+jGs=l~Fyx#MmGn+PZ0`@kBfGp|fO;Vov<$;z`(+sSZ7;Y=zXaF(8rb@CuQDV^ zq3i(2LfqO%AS!Ss>V%j7%>{6mtbYQrtQK5V4InPq0NZSaXv+f2U=&2}Z6OvkBfNHi z{LSaVJ!d5dC2K*ft_L^DRk;boQhOoVw!~Kt#0b2vd%!(&DF|~u1F@nG#LA5zR&7Fv z4GKgXooMSKb1g)6Obo-rgpuEP20T;W0Aa>55KC4gtQrKkAq-Hgs@FigV1GG8+rQ=z z6Jm=Bui-SfpDYLA=|vzGE(dYm=OC8XM&MDo7ux4UF1~0J1+i%aCUpRet3L_uNyQ*c zE(38Uy03H%I*)*Bh=Lb^Xj3?I^Hnbeq72(EOK^Y93CNp*uAA{5Lc=kyx=~RKa4{iT zm{_>_vSCm?$Ej=i6@=m%@PE9t1zZaoM}@2|h!#1K02~31S_I<0ZV=|K0}n!RRX6Ac zXmMf*5P-dLW}WPVsCKq)-x(0*txpZ2xrv3cxJ%l=7lpoNCyG< zK92ySAcmb-3m&}s@VwXv9(0#p<>B-5$bMxT;rk;OmENa6eM4D&LVo~01soUL39?R{ zyFLt3m|v?rCK7#KNu9E9Q4KV-pEUv^{rrClE&X&9I4-e7%pu_31#zGTOfC=ab%w20R*zBP+uT#l2{a~~~0wuG%6 zco*tVxK&e>%SJj*K!2tq*_h&ES5S9@TKb8WzpK;`&b9dNdxh4S)z%Q)o`aYWUh}9L z(`p!#WO5IxI|nf?yz{90R93Ed6@2qim*}Zjj$H&Esd`?JsFJUnDfiAgF_eYiWR3GC z>M9SHDylEWrA(%mfm~;u7OU9!Wz^!7Z%jZF zi@JR;>Mhi7S>V7wQ176|FdW2m?&`qa(ScO^CFPR80HucLHOTy%5s*HR0^8)i0WYBP d*#0Ks^FNSabJA*5${_#%002ovPDHLkV1gB0Vle;! diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png index a6d6b8609df07bf62e5100a53a01510388bd2b22..0ec303439225b78712f49115768196d8d76f6790 100644 GIT binary patch delta 850 zcmV-Y1Fih&6y64q8Gi!+000iU#^3+|0OwFlR7L;)|5U~J09TtSw)Xt~|5(QO`~Ck( z!T0|D|3<*~RmJ%E{r+;#`2ba!klFf7!uJMSo%Q?vP{jByxcAZE>;OrUCbaZYjJo^$ z{nGILmD~Da$@upC{`C6(Ey4dPw)Pyc^>5DkHoEo!QcuK-Jwl-l}t(fQKv z{dds$V#@dygS`PvhX6is7Z+@*x-d;$ zb=6f@U3Jw}_s+W3%*+b9H_vS)-R#9?zrXogeLVI2We2RFTTAL}&3C8PS~<5D&v@UI z+`s*$wqQ=yd$laNUY-|ovcS9~n_90tFUdl#qq0tEUXle|k{Op|DHpSrbxEeZ5~$>o%>OSe z^=41qvh3LlC2xXzu+-2eQoqs1^L>7ylB$bCP);(%(xYZL1 cY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f@rA97ytkO literal 2665 zcmV-v3YPVWP)oFh3q0MFesq&64WThn3$;G69TfjsAv=f2G9}p zgSx99+!YV6qME!>9MD13x)k(+XE7W?_O4LoLb5ND8 zaV{9+P@>42xDfRiYBMSgD$0!vssptcb;&?u9u(LLBKmkZ>RMD=kvD3h`sk6!QYtBa ztlZI#nu$8lJ^q2Z79UTgZe>BU73(Aospiq+?SdMt8lDZ;*?@tyWVZVS_Q7S&*tJaiRlJ z+aSMOmbg3@h5}v;A*c8SbqM3icg-`Cnwl;7Ts%A1RkNIp+Txl-Ckkvg4oxrqGA5ewEgYqwtECD<_3Egu)xGllKt&J8g&+=ac@Jq4-?w6M3b*>w5 z69N3O%=I^6&UL5gZ!}trC7bUj*12xLdkNs~Bz4QdJJ*UDZox2UGR}SNg@lmOvhCc~ z*f_UeXv(=#I#*7>VZx2ObEN~UoGUTl=-@)E;YtCRZ>SVp$p9yG5hEFZ!`wI!spd)n zSk+vK0Vin7FL{7f&6OB%f;SH22dtbcF<|9fi2Fp%q4kxL!b1#l^)8dUwJ zwEf{(wJj@8iYDVnKB`eSU+;ml-t2`@%_)0jDM`+a46xhDbBj2+&Ih>1A>6aky#(-SYyE{R3f#y57wfLs z6w1p~$bp;6!9DX$M+J~S@D6vJAaElETnsX4h9a5tvPhC3L@qB~bOzkL@^z0k_hS{T4PF*TDrgdXp+dzsE? z>V|VR035Pl9n5&-RePFdS{7KAr2vPOqR9=M$vXA1Yy5>w;EsF`;OK{2pkn-kpp9Pw z)r;5JfJKKaT$4qCb{TaXHjb$QA{y0EYy*+b1XI;6Ah- zw13P)xT`>~eFoJC!>{2XL(a_#upp3gaR1#5+L(Jmzp4TBnx{~WHedpJ1ch8JFk~Sw z>F+gN+i+VD?gMXwcIhn8rz`>e>J^TI3E-MW>f}6R-pL}>WMOa0k#jN+`RyUVUC;#D zg|~oS^$6%wpF{^Qr+}X>0PKcr3Fc&>Z>uv@C);pwDs@2bZWhYP!rvGx?_|q{d`t<*XEb#=aOb=N+L@CVBGqImZf&+a zCQEa3$~@#kC);pasdG=f6tuIi0PO-y&tvX%>Mv=oY3U$nD zJ#gMegnQ46pq+3r=;zmgcG+zRc9D~c>z+jo9&D+`E6$LmyFqlmCYw;-Zooma{sR@~ z)_^|YL1&&@|GXo*pivH7k!msl+$Sew3%XJnxajt0K%3M6Bd&YFNy9}tWG^aovK2eX z1aL1%7;KRDrA@eG-Wr6w+;*H_VD~qLiVI`{_;>o)k`{8xa3EJT1O_>#iy_?va0eR? zDV=N%;Zjb%Z2s$@O>w@iqt!I}tLjGk!=p`D23I}N4Be@$(|iSA zf3Ih7b<{zqpDB4WF_5X1(peKe+rASze%u8eKLn#KKXt;UZ+Adf$_TO+vTqshLLJ5c z52HucO=lrNVae5XWOLm!V@n-ObU11!b+DN<$RuU+YsrBq*lYT;?AwJpmNKniF0Q1< zJCo>Q$=v$@&y=sj6{r!Y&y&`0$-I}S!H_~pI&2H8Z1C|BX4VgZ^-! zje3-;x0PBD!M`v*J_)rL^+$<1VJhH*2Fi~aA7s&@_rUHYJ9zD=M%4AFQ`}k8OC$9s XsPq=LnkwKG00000NkvXXu0mjfhAk5^ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png index a6d6b8609df07bf62e5100a53a01510388bd2b22..0ec303439225b78712f49115768196d8d76f6790 100644 GIT binary patch delta 850 zcmV-Y1Fih&6y64q8Gi!+000iU#^3+|0OwFlR7L;)|5U~J09TtSw)Xt~|5(QO`~Ck( z!T0|D|3<*~RmJ%E{r+;#`2ba!klFf7!uJMSo%Q?vP{jByxcAZE>;OrUCbaZYjJo^$ z{nGILmD~Da$@upC{`C6(Ey4dPw)Pyc^>5DkHoEo!QcuK-Jwl-l}t(fQKv z{dds$V#@dygS`PvhX6is7Z+@*x-d;$ zb=6f@U3Jw}_s+W3%*+b9H_vS)-R#9?zrXogeLVI2We2RFTTAL}&3C8PS~<5D&v@UI z+`s*$wqQ=yd$laNUY-|ovcS9~n_90tFUdl#qq0tEUXle|k{Op|DHpSrbxEeZ5~$>o%>OSe z^=41qvh3LlC2xXzu+-2eQoqs1^L>7ylB$bCP);(%(xYZL1 cY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f@rA97ytkO literal 2665 zcmV-v3YPVWP)oFh3q0MFesq&64WThn3$;G69TfjsAv=f2G9}p zgSx99+!YV6qME!>9MD13x)k(+XE7W?_O4LoLb5ND8 zaV{9+P@>42xDfRiYBMSgD$0!vssptcb;&?u9u(LLBKmkZ>RMD=kvD3h`sk6!QYtBa ztlZI#nu$8lJ^q2Z79UTgZe>BU73(Aospiq+?SdMt8lDZ;*?@tyWVZVS_Q7S&*tJaiRlJ z+aSMOmbg3@h5}v;A*c8SbqM3icg-`Cnwl;7Ts%A1RkNIp+Txl-Ckkvg4oxrqGA5ewEgYqwtECD<_3Egu)xGllKt&J8g&+=ac@Jq4-?w6M3b*>w5 z69N3O%=I^6&UL5gZ!}trC7bUj*12xLdkNs~Bz4QdJJ*UDZox2UGR}SNg@lmOvhCc~ z*f_UeXv(=#I#*7>VZx2ObEN~UoGUTl=-@)E;YtCRZ>SVp$p9yG5hEFZ!`wI!spd)n zSk+vK0Vin7FL{7f&6OB%f;SH22dtbcF<|9fi2Fp%q4kxL!b1#l^)8dUwJ zwEf{(wJj@8iYDVnKB`eSU+;ml-t2`@%_)0jDM`+a46xhDbBj2+&Ih>1A>6aky#(-SYyE{R3f#y57wfLs z6w1p~$bp;6!9DX$M+J~S@D6vJAaElETnsX4h9a5tvPhC3L@qB~bOzkL@^z0k_hS{T4PF*TDrgdXp+dzsE? z>V|VR035Pl9n5&-RePFdS{7KAr2vPOqR9=M$vXA1Yy5>w;EsF`;OK{2pkn-kpp9Pw z)r;5JfJKKaT$4qCb{TaXHjb$QA{y0EYy*+b1XI;6Ah- zw13P)xT`>~eFoJC!>{2XL(a_#upp3gaR1#5+L(Jmzp4TBnx{~WHedpJ1ch8JFk~Sw z>F+gN+i+VD?gMXwcIhn8rz`>e>J^TI3E-MW>f}6R-pL}>WMOa0k#jN+`RyUVUC;#D zg|~oS^$6%wpF{^Qr+}X>0PKcr3Fc&>Z>uv@C);pwDs@2bZWhYP!rvGx?_|q{d`t<*XEb#=aOb=N+L@CVBGqImZf&+a zCQEa3$~@#kC);pasdG=f6tuIi0PO-y&tvX%>Mv=oY3U$nD zJ#gMegnQ46pq+3r=;zmgcG+zRc9D~c>z+jo9&D+`E6$LmyFqlmCYw;-Zooma{sR@~ z)_^|YL1&&@|GXo*pivH7k!msl+$Sew3%XJnxajt0K%3M6Bd&YFNy9}tWG^aovK2eX z1aL1%7;KRDrA@eG-Wr6w+;*H_VD~qLiVI`{_;>o)k`{8xa3EJT1O_>#iy_?va0eR? zDV=N%;Zjb%Z2s$@O>w@iqt!I}tLjGk!=p`D23I}N4Be@$(|iSA zf3Ih7b<{zqpDB4WF_5X1(peKe+rASze%u8eKLn#KKXt;UZ+Adf$_TO+vTqshLLJ5c z52HucO=lrNVae5XWOLm!V@n-ObU11!b+DN<$RuU+YsrBq*lYT;?AwJpmNKniF0Q1< zJCo>Q$=v$@&y=sj6{r!Y&y&`0$-I}S!H_~pI&2H8Z1C|BX4VgZ^-! zje3-;x0PBD!M`v*J_)rL^+$<1VJhH*2Fi~aA7s&@_rUHYJ9zD=M%4AFQ`}k8OC$9s XsPq=LnkwKG00000NkvXXu0mjfhAk5^ diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png index 75b2d164a5a98e212cca15ea7bf2ab5de5108680..e9f5fea27c705180eb716271f41b582e76dcbd90 100644 GIT binary patch delta 1668 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 diff --git a/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png index c4df70d39da7941ef3f6dcb7f06a192d8dcb308d..84ac32ae7d989f82d5e46a60405adcc8279e8001 100644 GIT binary patch delta 749 zcmVg;Ps8|O$@u8^{Z_{KM!@$5TAfS6_e#O{MZfpz`2O`0$7~@NRr(1{THzH08y3x{{PYM{eL;T_A9^tcF_4Sxb`8l z_9V3RD6;a(-0A^Pjsi!1?)d#Ap4Tk3^CP0(07;VpJ7@tgQ}z4)*zx@&yZwC9`DV-b z0ZobH_5IB4{KxD3;p_6%|f=bdFhu+F!zMZ2UFj;GUKX7tI;hv3{q~!*pMj75WP_c}> z6)IWvg5_yyg<9Op()eD1hWC19M@?_9_MHec{Z8n3FMs~w_u?Av_yNBmRxVYrpi(M% zFMP21g+hmocQp3ay*Su=qM6He)*HaaTg$E^sym`(t%s3A)x!M+vfjXUBEpK6X9%iU zU!u9jj3(-$dM~sJ%Liy#?|+!6IY#MTau#O6vVj`yh_7%Ni!?!VS+MPTO(_fG+1<#p zqu;A#i+_(N%CmVnYvb>#nA{>Q%3E`Ds7<~jZMywn@h2t>G-LrYy7?Dj{aZqhQd6tzX%(Trn+ z)HNF}%-F{rr=m*0{=a;s#YDL00000NkvXXu0mjfaGjYE delta 1884 zcmV-i2c!7<1>g>l8Gi-<0076AQ7Zrd2Pa8HK~#9!?VNjT6h$1z_m0EFf5bmb1dTDK zp;kdKV1h(V(8Sc1M<37!RE>znAk{x4#zX@eOeE1j3~!+nB5IL z<xS}u?#DBMB>w^b($1Z)`9G?eP95EKi& z$eOy@K%h;ryrR3la%;>|o*>CgB(s>dDcNOXg}CK9SPmD?Uu$P4(=PGA0ShFasNfcIHTL?9WjB9#(2xSLC z`0%$#9DW9F;B4mbU{BlaYx!SjF!QSeF~(msQRxwboh5B_O$BWOQja)GboJz$&!?mgB&3$ytsA zvns&b3Cl5Hx#%p%faR*Q906u&fbXy$maV`n?S>A)vJIH!F-vxCrY+rq5_JA(GcOgu7(Ky4X3ATR9z8*%k&<5qYeV&4Y`~}XYmK(j{)!g8d2UgHXIINM!Rvn zKtEq~Foe0s!U{kux~F6Y7Sp+2f|*Cc${S{@oh8D0=XhB8Ec-w9CflfL+te4ium2cU zoPTCj_m<3d#gjK=<*8R`HP^C$lOPM5d~UhKhRRmvv{LI za^|oavk1$QiEApSrP@~Jjbg`<*dW4TO@DPEEX$Tg$xh?Y>Qd}y@kaH~IT8!lLpS^J zR7(&wZSI6+>Eb)tX>9Z?GX#q$u z4I>7e#b7ojyJ1grOh!^}s8S#ubi^Jkd1?UK)3mp6rI^_zxRY zrx6_QmhoWoDR`fp4R7gu6@OBFGu7IDVR6~nJsB{^f5jHn<{WJ&&f^X?3f8TIk3#U& zu1*Q-e@;snJxNx8-PBnpI|uFTKN!+Lp;fPfZ+eqqU^Y1|#DJY~126?zOx-+d>%4*? z&o`TbrXSNXZW^!P0t2>@$6&aiBtUDh2wLXLD9&a(1J=k_FK|iGbAQ@x4Qmx}Ms+*; zze&q6bH(=wYuXHfz0H6<05!LkE4rl~v^!bj=^9d+vI5fN<;GP>*Pas=q2l9RxDkk` zPRk&EQI+t_0$Y%nKE)Ma)W?jaA@4Z{h zTk*7;;#lG?hvTN_On=Jaxp%bdE;mDq(q#dgdYF|-?wrMeI4h`$idZ6^VyXZVlaCd0 z;i)OYR3npf@9>00Gqn##Zb4HRurgaWFCzL9u6@J@sse>Z1XznxWvSy%Td32I3!#YN zXt9v0)RQtDDZRd?#WY?~KF7A0UcR{jt9 W+;fr}hV%pg0000&=UXv0SHh`R7L;)|5U~JDYo_jSDRDC`1<|-SjPDL z{{Q{{{{H{}09Kk-#rR9Y_viNgVafPO!S|ls`uzR=MZfp^{QU=8od8La1X`Tr_Wmff z_5e$ivgQ1@=KMy$_g9a+`TPAle6cOJ_Fc#L7qIpvwDkd1mw$fK`6IOUD75rX!}mad zv(fMTE4=(Nx%L54lL1hVF1YpqNrC`FddBPg#_Ietx%Lrkq5wX00X1L{S%Cm9QY*av z#_Rh5PKy9KYTWbvz3BX9%J>0Hi1+#X{rLA{m%$Kamk?i!03AC38#Yrxs)5QTeTVRiEmz~MKK1WAjCw(c-JK6eox;2O)?`?TG`AHia671e^vgmp!llK zp|=5sVHk#C7=~epA~VAf-~%aPC=%Qw01h8mnSZ|p?tc*y?iZ$PR7_ceEIapF3KB14K0Pog?7wtd+^xgUCa_GVmlD z<^nU>AU_Yn-JU?NFdu|wf^bTCNf-wSBYVZltDdvGBln-YrbeGvJ!|s{#`gjN@yAMb zM6cjFz0eFECCsc|_8hTa3*9-JQGehksdoVP^K4m?&wpA~+|b%{EP5D-+7h)6CE; z*{>BP=GRR3Ea}xyV*bqry{l^J=0#DaC4ej;1qs8_by?H6Tr@7hl>UKNZt)^B&yl;)&oqzLg zcfZxpE?3k%_iTOVywh%`XVN-E#COl+($9{v(pqSQcrz=)>G!!3HeNxbXGM@})1|9g zG4*@(OBaMvY0P0_TfMFPh fVHk#CZX3S=^^2mI>Ux-D00000NkvXXu0mjfzK(<8 literal 3294 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 cX)(b1KSk$MOV07*qoM6N<$f&{Qds= z{r_0T`1}6fwc-8!#-TGX}_?g)CZq4{k!uZ_g@DrQdoW0kI zu+W69&uN^)W`CK&06mMNcYMVF00dG=L_t(|+U?wHQxh>12H+Dm+1+fh+IF>G0SjJM zkQQre1x4|G*Z==(Ot&kCnUrL4I(rf(ucITwmuHf^hXiJTkdTm&kdTm&kdTm&kdP`e zsgWG0BcWCVkVZ&2dUwN`cgM8QJb`Z7Z~e<&Yj2(}>VI$fQI%^ugM`#6By?GeadWcu z0gy9!D`m!H>Bd!JW(@avE8`|5XX(0PN}!8K>`dkavs;rHL+wy96QGNT=S@#7%xtlm zIW!++@*2zm-Py#Zr`DzqsLm!b{iskFNULSqE9A>SqHem>o31A%XL>S_5?=;V_i_y+ z(xxXhnt#r-l1Y8_*h`r?8Tr|)(RAiO)4jQR`13X0mx07C&p@KBP_2s``KEhv^|*8c z$$_T(v6^1Ig=#R}sE{vjA?ErGDZGUsyoJuWdJMc7Nb1^KF)-u<7q zPy$=;)0>vuWuK2hQhswLf!9yg`88u&eBbR8uhod?Nw09AXH}-#qOLLxeT2%C;R)QQ$Za#qp~cM&YVmS4i-*Fpd!cC zBXc?(4wcg>sHmXGd^VdE<5QX{Kyz$;$sCPl(_*-P2Iw?p^C6J2ZC!+UppiK6&y3Kmbv&O!oYF34$0Z;QO!J zOY#!`qyGH<3Pd}Pt@q*A0V=3SVtWKRR8d8Z&@)3qLPA19LPA19LPEUCUoZo%k(yku QW&i*H07*qoM6N<$g47z!?*IS* literal 3612 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 iW8 CFBundleDevelopmentRegion - en + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Updated Example CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier @@ -11,7 +13,7 @@ CFBundleInfoDictionaryVersion 6.0 CFBundleName - example + updated_example CFBundlePackageType APPL CFBundleShortVersionString @@ -39,7 +41,9 @@ UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight - UIViewControllerBasedStatusBarAppearance - + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + diff --git a/example/ios/Runner/Runner-Bridging-Header.h b/example/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 00000000..308a2a56 --- /dev/null +++ b/example/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/example/ios/Runner/main.m b/example/ios/Runner/main.m deleted file mode 100644 index dff6597e..00000000 --- a/example/ios/Runner/main.m +++ /dev/null @@ -1,9 +0,0 @@ -#import -#import -#import "AppDelegate.h" - -int main(int argc, char* argv[]) { - @autoreleasepool { - return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); - } -} diff --git a/example/ios/RunnerTests/RunnerTests.swift b/example/ios/RunnerTests/RunnerTests.swift new file mode 100644 index 00000000..86a7c3b1 --- /dev/null +++ b/example/ios/RunnerTests/RunnerTests.swift @@ -0,0 +1,12 @@ +import Flutter +import UIKit +import XCTest + +class RunnerTests: XCTestCase { + + func testExample() { + // If you add code to the Runner application, consider adding tests here. + // See https://developer.apple.com/documentation/xctest for more information about using XCTest. + } + +} diff --git a/example/lib/database.g.dart b/example/lib/database.g.dart index 39dcf3a9..7ee08f52 100644 --- a/example/lib/database.g.dart +++ b/example/lib/database.g.dart @@ -54,15 +54,12 @@ class _$FlutterDatabaseBuilder implements $FlutterDatabaseBuilderContract { @override Future build() async { - final path = name != null - ? await sqfliteDatabaseFactory.getDatabasePath(name!) - : ':memory:'; + final path = + name != null + ? await sqfliteDatabaseFactory.getDatabasePath(name!) + : ':memory:'; final database = _$FlutterDatabase(); - database.database = await database.open( - path, - _migrations, - _callback, - ); + database.database = await database.open(path, _migrations, _callback); return database; } } @@ -90,13 +87,18 @@ class _$FlutterDatabase extends FlutterDatabase { }, onUpgrade: (database, startVersion, endVersion) async { await MigrationAdapter.runMigrations( - database, startVersion, endVersion, migrations); + database, + startVersion, + endVersion, + migrations, + ); await callback?.onUpgrade?.call(database, startVersion, endVersion); }, onCreate: (database, version) async { await database.execute( - 'CREATE TABLE IF NOT EXISTS `Task` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `message` TEXT NOT NULL, `isRead` INTEGER, `timestamp` INTEGER NOT NULL, `status` INTEGER, `type` TEXT)'); + 'CREATE TABLE IF NOT EXISTS `Task` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `message` TEXT NOT NULL, `isRead` INTEGER, `timestamp` INTEGER NOT NULL, `status` INTEGER, `type` TEXT)', + ); await callback?.onCreate?.call(database, version); }, @@ -111,48 +113,49 @@ class _$FlutterDatabase extends FlutterDatabase { } class _$TaskDao extends TaskDao { - _$TaskDao( - this.database, - this.changeListener, - ) : _queryAdapter = QueryAdapter(database, changeListener), - _taskInsertionAdapter = InsertionAdapter( - database, - 'Task', - (Task item) => { - 'id': item.id, - 'message': item.message, - 'isRead': item.isRead == null ? null : (item.isRead! ? 1 : 0), - 'timestamp': _dateTimeConverter.encode(item.timestamp), - 'status': item.status?.index, - 'type': _taskTypeConverter.encode(item.type) - }, - changeListener), - _taskUpdateAdapter = UpdateAdapter( - database, - 'Task', - ['id'], - (Task item) => { - 'id': item.id, - 'message': item.message, - 'isRead': item.isRead == null ? null : (item.isRead! ? 1 : 0), - 'timestamp': _dateTimeConverter.encode(item.timestamp), - 'status': item.status?.index, - 'type': _taskTypeConverter.encode(item.type) - }, - changeListener), - _taskDeletionAdapter = DeletionAdapter( - database, - 'Task', - ['id'], - (Task item) => { - 'id': item.id, - 'message': item.message, - 'isRead': item.isRead == null ? null : (item.isRead! ? 1 : 0), - 'timestamp': _dateTimeConverter.encode(item.timestamp), - 'status': item.status?.index, - 'type': _taskTypeConverter.encode(item.type) - }, - changeListener); + _$TaskDao(this.database, this.changeListener) + : _queryAdapter = QueryAdapter(database, changeListener), + _taskInsertionAdapter = InsertionAdapter( + database, + 'Task', + (Task item) => { + 'id': item.id, + 'message': item.message, + 'isRead': item.isRead == null ? null : (item.isRead! ? 1 : 0), + 'timestamp': _dateTimeConverter.encode(item.timestamp), + 'status': item.status?.index, + 'type': _taskTypeConverter.encode(item.type), + }, + changeListener, + ), + _taskUpdateAdapter = UpdateAdapter( + database, + 'Task', + ['id'], + (Task item) => { + 'id': item.id, + 'message': item.message, + 'isRead': item.isRead == null ? null : (item.isRead! ? 1 : 0), + 'timestamp': _dateTimeConverter.encode(item.timestamp), + 'status': item.status?.index, + 'type': _taskTypeConverter.encode(item.type), + }, + changeListener, + ), + _taskDeletionAdapter = DeletionAdapter( + database, + 'Task', + ['id'], + (Task item) => { + 'id': item.id, + 'message': item.message, + 'isRead': item.isRead == null ? null : (item.isRead! ? 1 : 0), + 'timestamp': _dateTimeConverter.encode(item.timestamp), + 'status': item.status?.index, + 'type': _taskTypeConverter.encode(item.type), + }, + changeListener, + ); final sqflite.DatabaseExecutor database; @@ -168,8 +171,10 @@ class _$TaskDao extends TaskDao { @override Future findTaskById(int id) async { - return _queryAdapter.query('SELECT * FROM task WHERE id = ?1', - mapper: (Map row) => Task( + return _queryAdapter.query( + 'SELECT * FROM task WHERE id = ?1', + mapper: + (Map row) => Task( row['id'] as int?, row['isRead'] == null ? null : (row['isRead'] as int) != 0, row['message'] as String, @@ -177,14 +182,18 @@ class _$TaskDao extends TaskDao { row['status'] == null ? null : TaskStatus.values[row['status'] as int], - _taskTypeConverter.decode(row['type'] as String?)), - arguments: [id]); + _taskTypeConverter.decode(row['type'] as String?), + ), + arguments: [id], + ); } @override Future> findAllTasks() async { - return _queryAdapter.queryList('SELECT * FROM task', - mapper: (Map row) => Task( + return _queryAdapter.queryList( + 'SELECT * FROM task', + mapper: + (Map row) => Task( row['id'] as int?, row['isRead'] == null ? null : (row['isRead'] as int) != 0, row['message'] as String, @@ -192,13 +201,17 @@ class _$TaskDao extends TaskDao { row['status'] == null ? null : TaskStatus.values[row['status'] as int], - _taskTypeConverter.decode(row['type'] as String?))); + _taskTypeConverter.decode(row['type'] as String?), + ), + ); } @override Stream> findAllTasksAsStream() { - return _queryAdapter.queryListStream('SELECT * FROM task', - mapper: (Map row) => Task( + return _queryAdapter.queryListStream( + 'SELECT * FROM task', + mapper: + (Map row) => Task( row['id'] as int?, row['isRead'] == null ? null : (row['isRead'] as int) != 0, row['message'] as String, @@ -206,23 +219,29 @@ class _$TaskDao extends TaskDao { row['status'] == null ? null : TaskStatus.values[row['status'] as int], - _taskTypeConverter.decode(row['type'] as String?)), - queryableName: 'task', - isView: false); + _taskTypeConverter.decode(row['type'] as String?), + ), + queryableName: 'task', + isView: false, + ); } @override Stream findUniqueMessagesCountAsStream() { - return _queryAdapter.queryStream('SELECT DISTINCT COUNT(message) FROM task', - mapper: (Map row) => row.values.first as int, - queryableName: 'task', - isView: false); + return _queryAdapter.queryStream( + 'SELECT DISTINCT COUNT(message) FROM task', + mapper: (Map row) => row.values.first as int, + queryableName: 'task', + isView: false, + ); } @override Stream> findAllTasksByStatusAsStream(TaskStatus status) { - return _queryAdapter.queryListStream('SELECT * FROM task WHERE status = ?1', - mapper: (Map row) => Task( + return _queryAdapter.queryListStream( + 'SELECT * FROM task WHERE status = ?1', + mapper: + (Map row) => Task( row['id'] as int?, row['isRead'] == null ? null : (row['isRead'] as int) != 0, row['message'] as String, @@ -230,21 +249,21 @@ class _$TaskDao extends TaskDao { row['status'] == null ? null : TaskStatus.values[row['status'] as int], - _taskTypeConverter.decode(row['type'] as String?)), - arguments: [status.index], - queryableName: 'task', - isView: false); + _taskTypeConverter.decode(row['type'] as String?), + ), + arguments: [status.index], + queryableName: 'task', + isView: false, + ); } @override - Future updateTypeById( - TaskType type, - int id, - ) async { + Future updateTypeById(TaskType type, int id) async { return _queryAdapter.query( - 'UPDATE OR ABORT Task SET type = ?1 WHERE id = ?2', - mapper: (Map row) => row.values.first as int, - arguments: [type.index, id]); + 'UPDATE OR ABORT Task SET type = ?1 WHERE id = ?2', + mapper: (Map row) => row.values.first as int, + arguments: [type.index, id], + ); } @override diff --git a/example/pubspec.lock b/example/pubspec.lock deleted file mode 100644 index 841a53a7..00000000 --- a/example/pubspec.lock +++ /dev/null @@ -1,689 +0,0 @@ -# Generated by pub -# See https://dart.dev/tools/pub/glossary#lockfile -packages: - _fe_analyzer_shared: - dependency: transitive - description: - name: _fe_analyzer_shared - sha256: "0b2f2bd91ba804e53a61d757b986f89f1f9eaed5b11e4b2f5a2468d86d6c9fc7" - url: "https://pub.dev" - source: hosted - version: "67.0.0" - analyzer: - dependency: "direct dev" - description: - name: analyzer - sha256: "37577842a27e4338429a1cbc32679d508836510b056f1eedf0c8d20e39c1383d" - url: "https://pub.dev" - source: hosted - version: "6.4.1" - args: - dependency: transitive - description: - name: args - sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 - url: "https://pub.dev" - source: hosted - version: "2.4.2" - async: - dependency: transitive - description: - name: async - sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" - url: "https://pub.dev" - source: hosted - version: "2.11.0" - boolean_selector: - dependency: transitive - description: - name: boolean_selector - sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" - url: "https://pub.dev" - source: hosted - version: "2.1.1" - build: - dependency: transitive - description: - name: build - sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" - url: "https://pub.dev" - source: hosted - version: "2.4.1" - build_config: - dependency: transitive - description: - name: build_config - sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 - url: "https://pub.dev" - source: hosted - version: "1.1.1" - build_daemon: - dependency: transitive - description: - name: build_daemon - sha256: "0343061a33da9c5810b2d6cee51945127d8f4c060b7fbdd9d54917f0a3feaaa1" - url: "https://pub.dev" - source: hosted - version: "4.0.1" - build_resolvers: - dependency: transitive - description: - name: build_resolvers - sha256: "339086358431fa15d7eca8b6a36e5d783728cf025e559b834f4609a1fcfb7b0a" - url: "https://pub.dev" - source: hosted - version: "2.4.2" - build_runner: - dependency: "direct dev" - description: - name: build_runner - sha256: "581bacf68f89ec8792f5e5a0b2c4decd1c948e97ce659dc783688c8a88fbec21" - url: "https://pub.dev" - source: hosted - version: "2.4.8" - build_runner_core: - dependency: transitive - description: - name: build_runner_core - sha256: "4ae8ffe5ac758da294ecf1802f2aff01558d8b1b00616aa7538ea9a8a5d50799" - url: "https://pub.dev" - source: hosted - version: "7.3.0" - built_collection: - dependency: transitive - description: - name: built_collection - sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" - url: "https://pub.dev" - source: hosted - version: "5.1.1" - built_value: - dependency: transitive - description: - name: built_value - sha256: fedde275e0a6b798c3296963c5cd224e3e1b55d0e478d5b7e65e6b540f363a0e - url: "https://pub.dev" - source: hosted - version: "8.9.1" - characters: - dependency: transitive - description: - name: characters - sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" - url: "https://pub.dev" - source: hosted - version: "1.3.0" - charcode: - dependency: transitive - description: - name: charcode - sha256: fb98c0f6d12c920a02ee2d998da788bca066ca5f148492b7085ee23372b12306 - url: "https://pub.dev" - source: hosted - version: "1.3.1" - checked_yaml: - dependency: transitive - description: - name: checked_yaml - sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff - url: "https://pub.dev" - source: hosted - version: "2.0.3" - clock: - dependency: transitive - description: - name: clock - sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf - url: "https://pub.dev" - source: hosted - version: "1.1.1" - code_builder: - dependency: transitive - description: - name: code_builder - sha256: f692079e25e7869c14132d39f223f8eec9830eb76131925143b2129c4bb01b37 - url: "https://pub.dev" - source: hosted - version: "4.10.0" - collection: - dependency: transitive - description: - name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a - url: "https://pub.dev" - source: hosted - version: "1.18.0" - convert: - dependency: transitive - description: - name: convert - sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" - url: "https://pub.dev" - source: hosted - version: "3.1.1" - crypto: - dependency: transitive - description: - name: crypto - sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab - url: "https://pub.dev" - source: hosted - version: "3.0.3" - dart_style: - dependency: transitive - description: - name: dart_style - sha256: "99e066ce75c89d6b29903d788a7bb9369cf754f7b24bf70bf4b6d6d6b26853b9" - url: "https://pub.dev" - source: hosted - version: "2.3.6" - dev_build: - dependency: transitive - description: - name: dev_build - sha256: e5d575f3de4b0e5f004e065e1e2d98fa012d634b61b5855216b5698ed7f1e443 - url: "https://pub.dev" - source: hosted - version: "0.16.4+3" - fake_async: - dependency: transitive - description: - name: fake_async - sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" - url: "https://pub.dev" - source: hosted - version: "1.3.1" - ffi: - dependency: transitive - description: - name: ffi - sha256: "493f37e7df1804778ff3a53bd691d8692ddf69702cf4c1c1096a2e41b4779e21" - url: "https://pub.dev" - source: hosted - version: "2.1.2" - file: - dependency: transitive - description: - name: file - sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" - url: "https://pub.dev" - source: hosted - version: "7.0.0" - fixnum: - dependency: transitive - description: - name: fixnum - sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" - url: "https://pub.dev" - source: hosted - version: "1.1.0" - floor: - dependency: "direct main" - description: - path: "../floor" - relative: true - source: path - version: "1.4.2" - floor_annotation: - dependency: transitive - description: - path: "../floor_annotation" - relative: true - source: path - version: "1.4.2" - floor_common: - dependency: transitive - description: - path: "../floor_common" - relative: true - source: path - version: "1.2.0" - floor_generator: - dependency: "direct dev" - description: - path: "../floor_generator" - relative: true - source: path - version: "1.4.2" - flutter: - dependency: "direct main" - description: flutter - source: sdk - version: "0.0.0" - flutter_lints: - dependency: "direct dev" - description: - name: flutter_lints - sha256: e2a421b7e59244faef694ba7b30562e489c2b489866e505074eb005cd7060db7 - url: "https://pub.dev" - source: hosted - version: "3.0.1" - flutter_test: - dependency: "direct dev" - description: flutter - source: sdk - version: "0.0.0" - frontend_server_client: - dependency: transitive - description: - name: frontend_server_client - sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" - url: "https://pub.dev" - source: hosted - version: "3.2.0" - glob: - dependency: transitive - description: - name: glob - sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" - url: "https://pub.dev" - source: hosted - version: "2.1.2" - graphs: - dependency: transitive - description: - name: graphs - sha256: aedc5a15e78fc65a6e23bcd927f24c64dd995062bcd1ca6eda65a3cff92a4d19 - url: "https://pub.dev" - source: hosted - version: "2.3.1" - http: - dependency: transitive - description: - name: http - sha256: "761a297c042deedc1ffbb156d6e2af13886bb305c2a343a4d972504cd67dd938" - url: "https://pub.dev" - source: hosted - version: "1.2.1" - http_multi_server: - dependency: transitive - description: - name: http_multi_server - sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" - url: "https://pub.dev" - source: hosted - version: "3.2.1" - http_parser: - dependency: transitive - description: - name: http_parser - sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" - url: "https://pub.dev" - source: hosted - version: "4.0.2" - io: - dependency: transitive - description: - name: io - sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" - url: "https://pub.dev" - source: hosted - version: "1.0.4" - js: - dependency: transitive - description: - name: js - sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 - url: "https://pub.dev" - source: hosted - version: "0.6.7" - json_annotation: - dependency: transitive - description: - name: json_annotation - sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467 - url: "https://pub.dev" - source: hosted - version: "4.8.1" - leak_tracker: - dependency: transitive - description: - name: leak_tracker - sha256: "78eb209deea09858f5269f5a5b02be4049535f568c07b275096836f01ea323fa" - url: "https://pub.dev" - source: hosted - version: "10.0.0" - leak_tracker_flutter_testing: - dependency: transitive - description: - name: leak_tracker_flutter_testing - sha256: b46c5e37c19120a8a01918cfaf293547f47269f7cb4b0058f21531c2465d6ef0 - url: "https://pub.dev" - source: hosted - version: "2.0.1" - leak_tracker_testing: - dependency: transitive - description: - name: leak_tracker_testing - sha256: a597f72a664dbd293f3bfc51f9ba69816f84dcd403cdac7066cb3f6003f3ab47 - url: "https://pub.dev" - source: hosted - version: "2.0.1" - lints: - dependency: transitive - description: - name: lints - sha256: cbf8d4b858bb0134ef3ef87841abdf8d63bfc255c266b7bf6b39daa1085c4290 - url: "https://pub.dev" - source: hosted - version: "3.0.0" - lists: - dependency: transitive - description: - name: lists - sha256: "4ca5c19ae4350de036a7e996cdd1ee39c93ac0a2b840f4915459b7d0a7d4ab27" - url: "https://pub.dev" - source: hosted - version: "1.0.1" - logging: - dependency: transitive - description: - name: logging - sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" - url: "https://pub.dev" - source: hosted - version: "1.2.0" - matcher: - dependency: transitive - description: - name: matcher - sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb - url: "https://pub.dev" - source: hosted - version: "0.12.16+1" - material_color_utilities: - dependency: transitive - description: - name: material_color_utilities - sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a" - url: "https://pub.dev" - source: hosted - version: "0.8.0" - meta: - dependency: transitive - description: - name: meta - sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04 - url: "https://pub.dev" - source: hosted - version: "1.11.0" - mime: - dependency: transitive - description: - name: mime - sha256: "2e123074287cc9fd6c09de8336dae606d1ddb88d9ac47358826db698c176a1f2" - url: "https://pub.dev" - source: hosted - version: "1.0.5" - package_config: - dependency: transitive - description: - name: package_config - sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" - url: "https://pub.dev" - source: hosted - version: "2.1.0" - path: - dependency: transitive - description: - name: path - sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" - url: "https://pub.dev" - source: hosted - version: "1.9.0" - pool: - dependency: transitive - description: - name: pool - sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" - url: "https://pub.dev" - source: hosted - version: "1.5.1" - process_run: - dependency: transitive - description: - name: process_run - sha256: "8d9c6198b98fbbfb511edd42e7364e24d85c163e47398919871b952dc86a423e" - url: "https://pub.dev" - source: hosted - version: "0.14.2" - pub_semver: - dependency: transitive - description: - name: pub_semver - sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" - url: "https://pub.dev" - source: hosted - version: "2.1.4" - pubspec_parse: - dependency: transitive - description: - name: pubspec_parse - sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367 - url: "https://pub.dev" - source: hosted - version: "1.2.3" - shelf: - dependency: transitive - description: - name: shelf - sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 - url: "https://pub.dev" - source: hosted - version: "1.4.1" - shelf_web_socket: - dependency: transitive - description: - name: shelf_web_socket - sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" - url: "https://pub.dev" - source: hosted - version: "1.0.4" - sky_engine: - dependency: transitive - description: flutter - source: sdk - version: "0.0.99" - source_gen: - dependency: transitive - description: - name: source_gen - sha256: "14658ba5f669685cd3d63701d01b31ea748310f7ab854e471962670abcf57832" - url: "https://pub.dev" - source: hosted - version: "1.5.0" - source_span: - dependency: transitive - description: - name: source_span - sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" - url: "https://pub.dev" - source: hosted - version: "1.10.0" - sqflite: - dependency: "direct main" - description: - name: sqflite - sha256: a9016f495c927cb90557c909ff26a6d92d9bd54fc42ba92e19d4e79d61e798c6 - url: "https://pub.dev" - source: hosted - version: "2.3.2" - sqflite_common: - dependency: transitive - description: - name: sqflite_common - sha256: "3da423ce7baf868be70e2c0976c28a1bb2f73644268b7ffa7d2e08eab71f16a4" - url: "https://pub.dev" - source: hosted - version: "2.5.4" - sqflite_common_ffi: - dependency: transitive - description: - name: sqflite_common_ffi - sha256: "4d6137c29e930d6e4a8ff373989dd9de7bac12e3bc87bce950f6e844e8ad3bb5" - url: "https://pub.dev" - source: hosted - version: "2.3.3" - sqflite_common_ffi_web: - dependency: transitive - description: - name: sqflite_common_ffi_web - sha256: "323e6db355c9eac7d3d834e35be339cedbd04f43ef5bcef4e8158bd290c2a94e" - url: "https://pub.dev" - source: hosted - version: "0.4.3" - sqlite3: - dependency: transitive - description: - name: sqlite3 - sha256: "072128763f1547e3e9b4735ce846bfd226d68019ccda54db4cd427b12dfdedc9" - url: "https://pub.dev" - source: hosted - version: "2.4.0" - sqlparser: - dependency: transitive - description: - name: sqlparser - sha256: "7b20045d1ccfb7bc1df7e8f9fee5ae58673fce6ff62cefbb0e0fd7214e90e5a0" - url: "https://pub.dev" - source: hosted - version: "0.34.1" - stack_trace: - dependency: transitive - description: - name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" - url: "https://pub.dev" - source: hosted - version: "1.11.1" - stream_channel: - dependency: transitive - description: - name: stream_channel - sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 - url: "https://pub.dev" - source: hosted - version: "2.1.2" - stream_transform: - dependency: transitive - description: - name: stream_transform - sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" - url: "https://pub.dev" - source: hosted - version: "2.1.0" - string_scanner: - dependency: transitive - description: - name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" - url: "https://pub.dev" - source: hosted - version: "1.2.0" - strings: - dependency: transitive - description: - name: strings - sha256: b33f40c4dd3e597bf6d9e7f4f4dc282dad0f19b07d9f320cb5c2183859cbccf5 - url: "https://pub.dev" - source: hosted - version: "3.1.1" - synchronized: - dependency: transitive - description: - name: synchronized - sha256: "539ef412b170d65ecdafd780f924e5be3f60032a1128df156adad6c5b373d558" - url: "https://pub.dev" - source: hosted - version: "3.1.0+1" - term_glyph: - dependency: transitive - description: - name: term_glyph - sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 - url: "https://pub.dev" - source: hosted - version: "1.2.1" - test_api: - dependency: transitive - description: - name: test_api - sha256: "5c2f730018264d276c20e4f1503fd1308dfbbae39ec8ee63c5236311ac06954b" - url: "https://pub.dev" - source: hosted - version: "0.6.1" - timing: - dependency: transitive - description: - name: timing - sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" - url: "https://pub.dev" - source: hosted - version: "1.0.1" - typed_data: - dependency: transitive - description: - name: typed_data - sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c - url: "https://pub.dev" - source: hosted - version: "1.3.2" - unicode: - dependency: transitive - description: - name: unicode - sha256: "0f69e46593d65245774d4f17125c6084d2c20b4e473a983f6e21b7d7762218f1" - url: "https://pub.dev" - source: hosted - version: "0.3.1" - vector_math: - dependency: transitive - description: - name: vector_math - sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" - url: "https://pub.dev" - source: hosted - version: "2.1.4" - vm_service: - dependency: transitive - description: - name: vm_service - sha256: b3d56ff4341b8f182b96aceb2fa20e3dcb336b9f867bc0eafc0de10f1048e957 - url: "https://pub.dev" - source: hosted - version: "13.0.0" - watcher: - dependency: transitive - description: - name: watcher - sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" - url: "https://pub.dev" - source: hosted - version: "1.1.0" - web: - dependency: transitive - description: - name: web - sha256: "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27" - url: "https://pub.dev" - source: hosted - version: "0.5.1" - web_socket_channel: - dependency: transitive - description: - name: web_socket_channel - sha256: "1d8e795e2a8b3730c41b8a98a2dff2e0fb57ae6f0764a1c46ec5915387d257b2" - url: "https://pub.dev" - source: hosted - version: "2.4.4" - yaml: - dependency: transitive - description: - name: yaml - sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" - url: "https://pub.dev" - source: hosted - version: "3.1.2" -sdks: - dart: ">=3.3.0 <4.0.0" - flutter: ">=3.7.0" diff --git a/example/pubspec.yaml b/example/pubspec.yaml index 0b074ef2..4a03f959 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -1,26 +1,28 @@ name: example -description: > - The typesafe, reactive and lightweight SQLite abstraction for your Flutter applications. - This is an example on how to use the library. -version: 1.0.0 +description: "This is an example on how to use the typesafe, reactive and lightweight SQLite abstraction within your Flutter applications." homepage: https://pinchbv.github.io/floor/ -publish_to: none +publish_to: 'none' + +version: 1.0.0+1 environment: - sdk: '>=3.2.6 <4.0.0' + sdk: ^3.7.0 dependencies: - floor: - path: ../floor/ flutter: sdk: flutter - sqflite: any # This dependency is needed to solve the problem with warning about transitive dependencies + floor: + path: ../floor/ + cupertino_icons: ^1.0.8 dev_dependencies: - analyzer: ^6.4.1 - build_runner: ^2.4.8 + flutter_test: + sdk: flutter + flutter_lints: ^5.0.0 + analyzer: ^7.0.0 + build_runner: ^2.4.15 floor_generator: path: ../floor_generator/ - flutter_lints: ^3.0.1 - flutter_test: - sdk: flutter \ No newline at end of file + +flutter: + uses-material-design: true diff --git a/example/web/favicon.png b/example/web/favicon.png deleted file mode 100644 index 8aaa46ac1ae21512746f852a42ba87e4165dfdd1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 917 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|I14-?iy0X7 zltGxWVyS%@P(fs7NJL45ua8x7ey(0(N`6wRUPW#JP&EUCO@$SZnVVXYs8ErclUHn2 zVXFjIVFhG^g!Ppaz)DK8ZIvQ?0~DO|i&7O#^-S~(l1AfjnEK zjFOT9D}DX)@^Za$W4-*MbbUihOG|wNBYh(yU7!lx;>x^|#0uTKVr7USFmqf|i<65o z3raHc^AtelCMM;Vme?vOfh>Xph&xL%(-1c06+^uR^q@XSM&D4+Kp$>4P^%3{)XKjo zGZknv$b36P8?Z_gF{nK@`XI}Z90TzwSQO}0J1!f2c(B=V`5aP@1P1a|PZ!4!3&Gl8 zTYqUsf!gYFyJnXpu0!n&N*SYAX-%d(5gVjrHJWqXQshj@!Zm{!01WsQrH~9=kTxW#6SvuapgMqt>$=j#%eyGrQzr zP{L-3gsMA^$I1&gsBAEL+vxi1*Igl=8#8`5?A-T5=z-sk46WA1IUT)AIZHx1rdUrf zVJrJn<74DDw`j)Ki#gt}mIT-Q`XRa2-jQXQoI%w`nb|XblvzK${ZzlV)m-XcwC(od z71_OEC5Bt9GEXosOXaPTYOia#R4ID2TiU~`zVMl08TV_C%DnU4^+HE>9(CE4D6?Fz oujB08i7adh9xk7*FX66dWH6F5TM;?E2b5PlUHx3vIVCg!0Dx9vYXATM diff --git a/example/web/icons/Icon-192.png b/example/web/icons/Icon-192.png deleted file mode 100644 index b749bfef07473333cf1dd31e9eed89862a5d52aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5292 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 diff --git a/example/web/icons/Icon-512.png b/example/web/icons/Icon-512.png deleted file mode 100644 index 88cfd48dff1169879ba46840804b412fe02fefd6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8252 zcmd5=2T+s!lYZ%-(h(2@5fr2dC?F^$C=i-}R6$UX8af(!je;W5yC_|HmujSgN*6?W z3knF*TL1$|?oD*=zPbBVex*RUIKsL<(&Rj9%^UD2IK3W?2j>D?eWQgvS-HLymHo9%~|N2Q{~j za?*X-{b9JRowv_*Mh|;*-kPFn>PI;r<#kFaxFqbn?aq|PduQg=2Q;~Qc}#z)_T%x9 zE|0!a70`58wjREmAH38H1)#gof)U3g9FZ^ zF7&-0^Hy{4XHWLoC*hOG(dg~2g6&?-wqcpf{ z&3=o8vw7lMi22jCG9RQbv8H}`+}9^zSk`nlR8?Z&G2dlDy$4#+WOlg;VHqzuE=fM@ z?OI6HEJH4&tA?FVG}9>jAnq_^tlw8NbjNhfqk2rQr?h(F&WiKy03Sn=-;ZJRh~JrD zbt)zLbnabttEZ>zUiu`N*u4sfQaLE8-WDn@tHp50uD(^r-}UsUUu)`!Rl1PozAc!a z?uj|2QDQ%oV-jxUJmJycySBINSKdX{kDYRS=+`HgR2GO19fg&lZKyBFbbXhQV~v~L za^U944F1_GtuFXtvDdDNDvp<`fqy);>Vw=ncy!NB85Tw{&sT5&Ox%-p%8fTS;OzlRBwErvO+ROe?{%q-Zge=%Up|D4L#>4K@Ke=x%?*^_^P*KD zgXueMiS63!sEw@fNLB-i^F|@Oib+S4bcy{eu&e}Xvb^(mA!=U=Xr3||IpV~3K zQWzEsUeX_qBe6fky#M zzOJm5b+l;~>=sdp%i}}0h zO?B?i*W;Ndn02Y0GUUPxERG`3Bjtj!NroLoYtyVdLtl?SE*CYpf4|_${ku2s`*_)k zN=a}V8_2R5QANlxsq!1BkT6$4>9=-Ix4As@FSS;1q^#TXPrBsw>hJ}$jZ{kUHoP+H zvoYiR39gX}2OHIBYCa~6ERRPJ#V}RIIZakUmuIoLF*{sO8rAUEB9|+A#C|@kw5>u0 zBd=F!4I)Be8ycH*)X1-VPiZ+Ts8_GB;YW&ZFFUo|Sw|x~ZajLsp+_3gv((Q#N>?Jz zFBf`~p_#^${zhPIIJY~yo!7$-xi2LK%3&RkFg}Ax)3+dFCjGgKv^1;lUzQlPo^E{K zmCnrwJ)NuSaJEmueEPO@(_6h3f5mFffhkU9r8A8(JC5eOkux{gPmx_$Uv&|hyj)gN zd>JP8l2U&81@1Hc>#*su2xd{)T`Yw< zN$dSLUN}dfx)Fu`NcY}TuZ)SdviT{JHaiYgP4~@`x{&h*Hd>c3K_To9BnQi@;tuoL z%PYQo&{|IsM)_>BrF1oB~+`2_uZQ48z9!)mtUR zdfKE+b*w8cPu;F6RYJiYyV;PRBbThqHBEu_(U{(gGtjM}Zi$pL8Whx}<JwE3RM0F8x7%!!s)UJVq|TVd#hf1zVLya$;mYp(^oZQ2>=ZXU1c$}f zm|7kfk>=4KoQoQ!2&SOW5|JP1)%#55C$M(u4%SP~tHa&M+=;YsW=v(Old9L3(j)`u z2?#fK&1vtS?G6aOt@E`gZ9*qCmyvc>Ma@Q8^I4y~f3gs7*d=ATlP>1S zyF=k&6p2;7dn^8?+!wZO5r~B+;@KXFEn^&C=6ma1J7Au6y29iMIxd7#iW%=iUzq&C=$aPLa^Q zncia$@TIy6UT@69=nbty5epP>*fVW@5qbUcb2~Gg75dNd{COFLdiz3}kODn^U*=@E z0*$7u7Rl2u)=%fk4m8EK1ctR!6%Ve`e!O20L$0LkM#f+)n9h^dn{n`T*^~d+l*Qlx z$;JC0P9+en2Wlxjwq#z^a6pdnD6fJM!GV7_%8%c)kc5LZs_G^qvw)&J#6WSp< zmsd~1-(GrgjC56Pdf6#!dt^y8Rg}!#UXf)W%~PeU+kU`FeSZHk)%sFv++#Dujk-~m zFHvVJC}UBn2jN& zs!@nZ?e(iyZPNo`p1i#~wsv9l@#Z|ag3JR>0#u1iW9M1RK1iF6-RbJ4KYg?B`dET9 zyR~DjZ>%_vWYm*Z9_+^~hJ_|SNTzBKx=U0l9 z9x(J96b{`R)UVQ$I`wTJ@$_}`)_DyUNOso6=WOmQKI1e`oyYy1C&%AQU<0-`(ow)1 zT}gYdwWdm4wW6|K)LcfMe&psE0XGhMy&xS`@vLi|1#Za{D6l@#D!?nW87wcscUZgELT{Cz**^;Zb~7 z(~WFRO`~!WvyZAW-8v!6n&j*PLm9NlN}BuUN}@E^TX*4Or#dMMF?V9KBeLSiLO4?B zcE3WNIa-H{ThrlCoN=XjOGk1dT=xwwrmt<1a)mrRzg{35`@C!T?&_;Q4Ce=5=>z^*zE_c(0*vWo2_#TD<2)pLXV$FlwP}Ik74IdDQU@yhkCr5h zn5aa>B7PWy5NQ!vf7@p_qtC*{dZ8zLS;JetPkHi>IvPjtJ#ThGQD|Lq#@vE2xdl%`x4A8xOln}BiQ92Po zW;0%A?I5CQ_O`@Ad=`2BLPPbBuPUp@Hb%a_OOI}y{Rwa<#h z5^6M}s7VzE)2&I*33pA>e71d78QpF>sNK;?lj^Kl#wU7G++`N_oL4QPd-iPqBhhs| z(uVM}$ItF-onXuuXO}o$t)emBO3Hjfyil@*+GF;9j?`&67GBM;TGkLHi>@)rkS4Nj zAEk;u)`jc4C$qN6WV2dVd#q}2X6nKt&X*}I@jP%Srs%%DS92lpDY^K*Sx4`l;aql$ zt*-V{U&$DM>pdO?%jt$t=vg5|p+Rw?SPaLW zB6nvZ69$ne4Z(s$3=Rf&RX8L9PWMV*S0@R zuIk&ba#s6sxVZ51^4Kon46X^9`?DC9mEhWB3f+o4#2EXFqy0(UTc>GU| zGCJmI|Dn-dX#7|_6(fT)>&YQ0H&&JX3cTvAq(a@ydM4>5Njnuere{J8p;3?1az60* z$1E7Yyxt^ytULeokgDnRVKQw9vzHg1>X@@jM$n$HBlveIrKP5-GJq%iWH#odVwV6cF^kKX(@#%%uQVb>#T6L^mC@)%SMd4DF? zVky!~ge27>cpUP1Vi}Z32lbLV+CQy+T5Wdmva6Fg^lKb!zrg|HPU=5Qu}k;4GVH+x z%;&pN1LOce0w@9i1Mo-Y|7|z}fbch@BPp2{&R-5{GLoeu8@limQmFF zaJRR|^;kW_nw~0V^ zfTnR!Ni*;-%oSHG1yItARs~uxra|O?YJxBzLjpeE-=~TO3Dn`JL5Gz;F~O1u3|FE- zvK2Vve`ylc`a}G`gpHg58Cqc9fMoy1L}7x7T>%~b&irrNMo?np3`q;d3d;zTK>nrK zOjPS{@&74-fA7j)8uT9~*g23uGnxwIVj9HorzUX#s0pcp2?GH6i}~+kv9fWChtPa_ z@T3m+$0pbjdQw7jcnHn;Pi85hk_u2-1^}c)LNvjdam8K-XJ+KgKQ%!?2n_!#{$H|| zLO=%;hRo6EDmnOBKCL9Cg~ETU##@u^W_5joZ%Et%X_n##%JDOcsO=0VL|Lkk!VdRJ z^|~2pB@PUspT?NOeO?=0Vb+fAGc!j%Ufn-cB`s2A~W{Zj{`wqWq_-w0wr@6VrM zbzni@8c>WS!7c&|ZR$cQ;`niRw{4kG#e z70e!uX8VmP23SuJ*)#(&R=;SxGAvq|&>geL&!5Z7@0Z(No*W561n#u$Uc`f9pD70# z=sKOSK|bF~#khTTn)B28h^a1{;>EaRnHj~>i=Fnr3+Fa4 z`^+O5_itS#7kPd20rq66_wH`%?HNzWk@XFK0n;Z@Cx{kx==2L22zWH$Yg?7 zvDj|u{{+NR3JvUH({;b*$b(U5U z7(lF!1bz2%06+|-v(D?2KgwNw7( zJB#Tz+ZRi&U$i?f34m7>uTzO#+E5cbaiQ&L}UxyOQq~afbNB4EI{E04ZWg53w0A{O%qo=lF8d zf~ktGvIgf-a~zQoWf>loF7pOodrd0a2|BzwwPDV}ShauTK8*fmF6NRbO>Iw9zZU}u zw8Ya}?seBnEGQDmH#XpUUkj}N49tP<2jYwTFp!P+&Fd(%Z#yo80|5@zN(D{_pNow*&4%ql zW~&yp@scb-+Qj-EmErY+Tu=dUmf@*BoXY2&oKT8U?8?s1d}4a`Aq>7SV800m$FE~? zjmz(LY+Xx9sDX$;vU`xgw*jLw7dWOnWWCO8o|;}f>cu0Q&`0I{YudMn;P;L3R-uz# zfns_mZED_IakFBPP2r_S8XM$X)@O-xVKi4`7373Jkd5{2$M#%cRhWer3M(vr{S6>h zj{givZJ3(`yFL@``(afn&~iNx@B1|-qfYiZu?-_&Z8+R~v`d6R-}EX9IVXWO-!hL5 z*k6T#^2zAXdardU3Ao~I)4DGdAv2bx{4nOK`20rJo>rmk3S2ZDu}))8Z1m}CKigf0 z3L`3Y`{huj`xj9@`$xTZzZc3je?n^yG<8sw$`Y%}9mUsjUR%T!?k^(q)6FH6Af^b6 zlPg~IEwg0y;`t9y;#D+uz!oE4VP&Je!<#q*F?m5L5?J3i@!0J6q#eu z!RRU`-)HeqGi_UJZ(n~|PSNsv+Wgl{P-TvaUQ9j?ZCtvb^37U$sFpBrkT{7Jpd?HpIvj2!}RIq zH{9~+gErN2+}J`>Jvng2hwM`=PLNkc7pkjblKW|+Fk9rc)G1R>Ww>RC=r-|!m-u7( zc(a$9NG}w#PjWNMS~)o=i~WA&4L(YIW25@AL9+H9!?3Y}sv#MOdY{bb9j>p`{?O(P zIvb`n?_(gP2w3P#&91JX*md+bBEr%xUHMVqfB;(f?OPtMnAZ#rm5q5mh;a2f_si2_ z3oXWB?{NF(JtkAn6F(O{z@b76OIqMC$&oJ_&S|YbFJ*)3qVX_uNf5b8(!vGX19hsG z(OP>RmZp29KH9Ge2kKjKigUmOe^K_!UXP`von)PR8Qz$%=EmOB9xS(ZxE_tnyzo}7 z=6~$~9k0M~v}`w={AeqF?_)9q{m8K#6M{a&(;u;O41j)I$^T?lx5(zlebpY@NT&#N zR+1bB)-1-xj}R8uwqwf=iP1GbxBjneCC%UrSdSxK1vM^i9;bUkS#iRZw2H>rS<2<$ zNT3|sDH>{tXb=zq7XZi*K?#Zsa1h1{h5!Tq_YbKFm_*=A5-<~j63he;4`77!|LBlo zR^~tR3yxcU=gDFbshyF6>o0bdp$qmHS7D}m3;^QZq9kBBU|9$N-~oU?G5;jyFR7>z hN`IR97YZXIo@y!QgFWddJ3|0`sjFx!m))><{BI=FK%f8s diff --git a/example/web/icons/Icon-maskable-192.png b/example/web/icons/Icon-maskable-192.png deleted file mode 100644 index eb9b4d76e525556d5d89141648c724331630325d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5594 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 X>c!)3PgKfL&lX^$Z>Cpu&6)6jvi^Z! diff --git a/example/web/icons/Icon-maskable-512.png b/example/web/icons/Icon-maskable-512.png deleted file mode 100644 index d69c56691fbdb0b7efa65097c7cc1edac12a6d3e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20998 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 MPgg&ebxsLQ025IeI{*Lx diff --git a/example/web/index.html b/example/web/index.html deleted file mode 100644 index 45cf2ca3..00000000 --- a/example/web/index.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - - - - - - - - - - - - - - example - - - - - - - - - - diff --git a/example/web/manifest.json b/example/web/manifest.json deleted file mode 100644 index 096edf8f..00000000 --- a/example/web/manifest.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "example", - "short_name": "example", - "start_url": ".", - "display": "standalone", - "background_color": "#0175C2", - "theme_color": "#0175C2", - "description": "A new Flutter project.", - "orientation": "portrait-primary", - "prefer_related_applications": false, - "icons": [ - { - "src": "icons/Icon-192.png", - "sizes": "192x192", - "type": "image/png" - }, - { - "src": "icons/Icon-512.png", - "sizes": "512x512", - "type": "image/png" - }, - { - "src": "icons/Icon-maskable-192.png", - "sizes": "192x192", - "type": "image/png", - "purpose": "maskable" - }, - { - "src": "icons/Icon-maskable-512.png", - "sizes": "512x512", - "type": "image/png", - "purpose": "maskable" - } - ] -} diff --git a/example/web/sqflite_sw.js b/example/web/sqflite_sw.js deleted file mode 100644 index 8289d55e..00000000 --- a/example/web/sqflite_sw.js +++ /dev/null @@ -1,11525 +0,0 @@ -(function dartProgram(){function copyProperties(a,b){var s=Object.keys(a) -for(var r=0;r=0)return true -if(typeof version=="function"&&version.length==0){var q=version() -if(/^\d+\.\d+\.\d+\.\d+$/.test(q))return true}}catch(p){}return false}() -function inherit(a,b){a.prototype.constructor=a -a.prototype["$i"+a.name]=a -if(b!=null){if(z){Object.setPrototypeOf(a.prototype,b.prototype) -return}var s=Object.create(b.prototype) -copyProperties(a.prototype,s) -a.prototype=s}}function inheritMany(a,b){for(var s=0;s4294967295)throw A.b(A.am(a,0,4294967295,"length",null)) -return J.t_(new Array(a),b)}, -rZ(a,b){if(a<0)throw A.b(A.ak("Length must be a non-negative integer: "+a,null)) -return A.u(new Array(a),b.h("M<0>"))}, -p9(a,b){if(a<0)throw A.b(A.ak("Length must be a non-negative integer: "+a,null)) -return A.u(new Array(a),b.h("M<0>"))}, -t_(a,b){return J.jM(A.u(a,b.h("M<0>")),b)}, -jM(a,b){a.fixed$length=Array -return a}, -pb(a){a.fixed$length=Array -a.immutable$list=Array -return a}, -t0(a,b){var s=t.bP -return J.rq(s.a(a),s.a(b))}, -pc(a){if(a<256)switch(a){case 9:case 10:case 11:case 12:case 13:case 32:case 133:case 160:return!0 -default:return!1}switch(a){case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8232:case 8233:case 8239:case 8287:case 12288:case 65279:return!0 -default:return!1}}, -t1(a,b){var s,r -for(s=a.length;b0;b=r){r=b-1 -if(!(r>>0===b&&b").b(a))return new A.el(a,b.h("@<0>").t(c).h("el<1,2>")) -return new A.c5(a,b.h("@<0>").t(c).h("c5<1,2>"))}, -t3(a){return new A.ce("Field '"+a+"' has not been initialized.")}, -nq(a){var s,r=a^48 -if(r<=9)return r -s=a|32 -if(97<=s&&s<=102)return s-87 -return-1}, -bV(a,b){a=a+b&536870911 -a=a+((a&524287)<<10)&536870911 -return a^a>>>6}, -o6(a){a=a+((a&67108863)<<3)&536870911 -a^=a>>>11 -return a+((a&16383)<<15)&536870911}, -cx(a,b,c){return a}, -oE(a){var s,r -for(s=$.aT.length,r=0;rc)A.O(A.am(b,0,c,"start",null))}return new A.ci(a,b,c,d.h("ci<0>"))}, -pg(a,b,c,d){if(t.O.b(a))return new A.c7(a,b,c.h("@<0>").t(d).h("c7<1,2>")) -return new A.br(a,b,c.h("@<0>").t(d).h("br<1,2>"))}, -pp(a,b,c){var s="count" -if(t.O.b(a)){A.ji(b,s,t.S) -A.aC(b,s) -return new A.cF(a,b,c.h("cF<0>"))}A.ji(b,s,t.S) -A.aC(b,s) -return new A.bt(a,b,c.h("bt<0>"))}, -bp(){return new A.bv("No element")}, -p8(){return new A.bv("Too few elements")}, -t6(a,b){return new A.dN(a,b.h("dN<0>"))}, -c_:function c_(){}, -dx:function dx(a,b){this.a=a -this.$ti=b}, -c5:function c5(a,b){this.a=a -this.$ti=b}, -el:function el(a,b){this.a=a -this.$ti=b}, -eh:function eh(){}, -b0:function b0(a,b){this.a=a -this.$ti=b}, -dy:function dy(a,b){this.a=a -this.$ti=b}, -jx:function jx(a,b){this.a=a -this.b=b}, -jw:function jw(a){this.a=a}, -ce:function ce(a){this.a=a}, -dz:function dz(a){this.a=a}, -nz:function nz(){}, -ki:function ki(){}, -l:function l(){}, -a4:function a4(){}, -ci:function ci(a,b,c,d){var _=this -_.a=a -_.b=b -_.c=c -_.$ti=d}, -b4:function b4(a,b,c){var _=this -_.a=a -_.b=b -_.c=0 -_.d=null -_.$ti=c}, -br:function br(a,b,c){this.a=a -this.b=b -this.$ti=c}, -c7:function c7(a,b,c){this.a=a -this.b=b -this.$ti=c}, -dQ:function dQ(a,b,c){var _=this -_.a=null -_.b=a -_.c=b -_.$ti=c}, -ag:function ag(a,b,c){this.a=a -this.b=b -this.$ti=c}, -lq:function lq(a,b,c){this.a=a -this.b=b -this.$ti=c}, -cl:function cl(a,b,c){this.a=a -this.b=b -this.$ti=c}, -bt:function bt(a,b,c){this.a=a -this.b=b -this.$ti=c}, -cF:function cF(a,b,c){this.a=a -this.b=b -this.$ti=c}, -e1:function e1(a,b,c){this.a=a -this.b=b -this.$ti=c}, -c8:function c8(a){this.$ti=a}, -dE:function dE(a){this.$ti=a}, -ec:function ec(a,b){this.a=a -this.$ti=b}, -ed:function ed(a,b){this.a=a -this.$ti=b}, -au:function au(){}, -bX:function bX(){}, -d7:function d7(){}, -ie:function ie(a){this.a=a}, -dN:function dN(a,b){this.a=a -this.$ti=b}, -e0:function e0(a,b){this.a=a -this.$ti=b}, -d5:function d5(a){this.a=a}, -eQ:function eQ(){}, -qV(a){var s=v.mangledGlobalNames[a] -if(s!=null)return s -return"minified:"+a}, -vI(a,b){var s -if(b!=null){s=b.x -if(s!=null)return s}return t.dX.b(a)}, -t(a){var s -if(typeof a=="string")return a -if(typeof a=="number"){if(a!==0)return""+a}else if(!0===a)return"true" -else if(!1===a)return"false" -else if(a==null)return"null" -s=J.ba(a) -return s}, -dY(a){var s,r=$.pk -if(r==null)r=$.pk=Symbol("identityHashCode") -s=a[r] -if(s==null){s=Math.random()*0x3fffffff|0 -a[r]=s}return s}, -nU(a,b){var s,r,q,p,o,n=null,m=/^\s*[+-]?((0x[a-f0-9]+)|(\d+)|([a-z0-9]+))\s*$/i.exec(a) -if(m==null)return n -if(3>=m.length)return A.c(m,3) -s=m[3] -if(b==null){if(s!=null)return parseInt(a,10) -if(m[2]!=null)return parseInt(a,16) -return n}if(b<2||b>36)throw A.b(A.am(b,2,36,"radix",n)) -if(b===10&&s!=null)return parseInt(a,10) -if(b<10||s==null){r=b<=10?47+b:86+b -q=m[1] -for(p=q.length,o=0;or)return n}return parseInt(a,b)}, -k6(a){return A.tc(a)}, -tc(a){var s,r,q,p -if(a instanceof A.r)return A.aJ(A.a3(a),null) -s=J.bi(a) -if(s===B.X||s===B.Z||t.cx.b(a)){r=B.u(a) -if(r!=="Object"&&r!=="")return r -q=a.constructor -if(typeof q=="function"){p=q.name -if(typeof p=="string"&&p!=="Object"&&p!=="")return p}}return A.aJ(A.a3(a),null)}, -pl(a){if(a==null||typeof a=="number"||A.c2(a))return J.ba(a) -if(typeof a=="string")return JSON.stringify(a) -if(a instanceof A.bN)return a.k(0) -if(a instanceof A.cu)return a.dw(!0) -return"Instance of '"+A.k6(a)+"'"}, -te(){if(!!self.location)return self.location.href -return null}, -tm(a,b,c){var s,r,q,p -if(c<=500&&b===0&&c===a.length)return String.fromCharCode.apply(null,a) -for(s=b,r="";s>>0,s&1023|56320)}}throw A.b(A.am(a,0,1114111,null,null))}, -aO(a){if(a.date===void 0)a.date=new Date(a.a) -return a.date}, -tl(a){return a.b?A.aO(a).getUTCFullYear()+0:A.aO(a).getFullYear()+0}, -tj(a){return a.b?A.aO(a).getUTCMonth()+1:A.aO(a).getMonth()+1}, -tf(a){return a.b?A.aO(a).getUTCDate()+0:A.aO(a).getDate()+0}, -tg(a){return a.b?A.aO(a).getUTCHours()+0:A.aO(a).getHours()+0}, -ti(a){return a.b?A.aO(a).getUTCMinutes()+0:A.aO(a).getMinutes()+0}, -tk(a){return a.b?A.aO(a).getUTCSeconds()+0:A.aO(a).getSeconds()+0}, -th(a){return a.b?A.aO(a).getUTCMilliseconds()+0:A.aO(a).getMilliseconds()+0}, -bT(a,b,c){var s,r,q={} -q.a=0 -s=[] -r=[] -q.a=b.length -B.a.aW(s,b) -q.b="" -if(c!=null&&c.a!==0)c.B(0,new A.k5(q,r,s)) -return J.ry(a,new A.fF(B.a2,0,s,r,0))}, -td(a,b,c){var s,r,q -if(Array.isArray(b))s=c==null||c.a===0 -else s=!1 -if(s){r=b.length -if(r===0){if(!!a.$0)return a.$0()}else if(r===1){if(!!a.$1)return a.$1(b[0])}else if(r===2){if(!!a.$2)return a.$2(b[0],b[1])}else if(r===3){if(!!a.$3)return a.$3(b[0],b[1],b[2])}else if(r===4){if(!!a.$4)return a.$4(b[0],b[1],b[2],b[3])}else if(r===5)if(!!a.$5)return a.$5(b[0],b[1],b[2],b[3],b[4]) -q=a[""+"$"+r] -if(q!=null)return q.apply(a,b)}return A.tb(a,b,c)}, -tb(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g=Array.isArray(b)?b:A.fJ(b,!0,t.z),f=g.length,e=a.$R -if(fn)return A.bT(a,g,null) -if(fe)return A.bT(a,g,c) -if(g===b)g=A.fJ(g,!0,t.z) -l=Object.keys(q) -if(c==null)for(r=l.length,k=0;k=s)return A.V(b,s,a,null,r) -return A.pm(b,r)}, -vu(a,b,c){if(a>c)return A.am(a,0,c,"start",null) -if(b!=null)if(bc)return A.am(b,a,c,"end",null) -return new A.bb(!0,b,"end",null)}, -nj(a){return new A.bb(!0,a,null,null)}, -b(a){return A.qK(new Error(),a)}, -qK(a,b){var s -if(b==null)b=new A.bw() -a.dartException=b -s=A.vS -if("defineProperty" in Object){Object.defineProperty(a,"message",{get:s}) -a.name=""}else a.toString=s -return a}, -vS(){return J.ba(this.dartException)}, -O(a){throw A.b(a)}, -qU(a,b){throw A.qK(b,a)}, -aS(a){throw A.b(A.as(a))}, -bx(a){var s,r,q,p,o,n -a=A.qR(a.replace(String({}),"$receiver$")) -s=a.match(/\\\$[a-zA-Z]+\\\$/g) -if(s==null)s=A.u([],t.s) -r=s.indexOf("\\$arguments\\$") -q=s.indexOf("\\$argumentsExpr\\$") -p=s.indexOf("\\$expr\\$") -o=s.indexOf("\\$method\\$") -n=s.indexOf("\\$receiver\\$") -return new A.lc(a.replace(new RegExp("\\\\\\$arguments\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$argumentsExpr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$expr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$method\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$receiver\\\\\\$","g"),"((?:x|[^x])*)"),r,q,p,o,n)}, -ld(a){return function($expr$){var $argumentsExpr$="$arguments$" -try{$expr$.$method$($argumentsExpr$)}catch(s){return s.message}}(a)}, -pv(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, -nQ(a,b){var s=b==null,r=s?null:b.method -return new A.fH(a,r,s?null:b.receiver)}, -T(a){var s -if(a==null)return new A.k1(a) -if(a instanceof A.dF){s=a.a -return A.c4(a,s==null?t.K.a(s):s)}if(typeof a!=="object")return a -if("dartException" in a)return A.c4(a,a.dartException) -return A.vh(a)}, -c4(a,b){if(t.U.b(b))if(b.$thrownJsError==null)b.$thrownJsError=a -return b}, -vh(a){var s,r,q,p,o,n,m,l,k,j,i,h,g -if(!("message" in a))return a -s=a.message -if("number" in a&&typeof a.number=="number"){r=a.number -q=r&65535 -if((B.c.R(r,16)&8191)===10)switch(q){case 438:return A.c4(a,A.nQ(A.t(s)+" (Error "+q+")",null)) -case 445:case 5007:A.t(s) -return A.c4(a,new A.dV())}}if(a instanceof TypeError){p=$.qZ() -o=$.r_() -n=$.r0() -m=$.r1() -l=$.r4() -k=$.r5() -j=$.r3() -$.r2() -i=$.r7() -h=$.r6() -g=p.a1(s) -if(g!=null)return A.c4(a,A.nQ(A.U(s),g)) -else{g=o.a1(s) -if(g!=null){g.method="call" -return A.c4(a,A.nQ(A.U(s),g))}else if(n.a1(s)!=null||m.a1(s)!=null||l.a1(s)!=null||k.a1(s)!=null||j.a1(s)!=null||m.a1(s)!=null||i.a1(s)!=null||h.a1(s)!=null){A.U(s) -return A.c4(a,new A.dV())}}return A.c4(a,new A.ht(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.e6() -s=function(b){try{return String(b)}catch(f){}return null}(a) -return A.c4(a,new A.bb(!1,null,null,typeof s=="string"?s.replace(/^RangeError:\s*/,""):s))}if(typeof InternalError=="function"&&a instanceof InternalError)if(typeof s=="string"&&s==="too much recursion")return new A.e6() -return a}, -a0(a){var s -if(a instanceof A.dF)return a.b -if(a==null)return new A.eB(a) -s=a.$cachedTrace -if(s!=null)return s -s=new A.eB(a) -if(typeof a==="object")a.$cachedTrace=s -return s}, -oG(a){if(a==null)return J.bl(a) -if(typeof a=="object")return A.dY(a) -return J.bl(a)}, -vy(a,b){var s,r,q,p=a.length -for(s=0;s=0 -else if(b instanceof A.cP){s=B.b.a_(a,c) -return b.b.test(s)}else return!J.rp(b,B.b.a_(a,c)).gY(0)}, -vw(a){if(a.indexOf("$",0)>=0)return a.replace(/\$/g,"$$$$") -return a}, -qR(a){if(/[[\]{}()*+?.\\^$|]/.test(a))return a.replace(/[[\]{}()*+?.\\^$|]/g,"\\$&") -return a}, -vP(a,b,c){var s=A.vQ(a,b,c) -return s}, -vQ(a,b,c){var s,r,q -if(b===""){if(a==="")return c -s=a.length -r=""+c -for(q=0;q=0)return a.split(b).join(c) -return a.replace(new RegExp(A.qR(b),"g"),A.vw(c))}, -dh:function dh(a,b){this.a=a -this.b=b}, -dB:function dB(a,b){this.a=a -this.$ti=b}, -dA:function dA(){}, -c6:function c6(a,b,c){this.a=a -this.b=b -this.$ti=c}, -cs:function cs(a,b){this.a=a -this.$ti=b}, -en:function en(a,b,c){var _=this -_.a=a -_.b=b -_.c=0 -_.d=null -_.$ti=c}, -fF:function fF(a,b,c,d,e){var _=this -_.a=a -_.c=b -_.d=c -_.e=d -_.f=e}, -k5:function k5(a,b,c){this.a=a -this.b=b -this.c=c}, -lc:function lc(a,b,c,d,e,f){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=e -_.f=f}, -dV:function dV(){}, -fH:function fH(a,b,c){this.a=a -this.b=b -this.c=c}, -ht:function ht(a){this.a=a}, -k1:function k1(a){this.a=a}, -dF:function dF(a,b){this.a=a -this.b=b}, -eB:function eB(a){this.a=a -this.b=null}, -bN:function bN(){}, -fc:function fc(){}, -fd:function fd(){}, -hk:function hk(){}, -hh:function hh(){}, -cB:function cB(a,b){this.a=a -this.b=b}, -hU:function hU(a){this.a=a}, -h9:function h9(a){this.a=a}, -hO:function hO(a){this.a=a}, -mL:function mL(){}, -b2:function b2(a){var _=this -_.a=0 -_.f=_.e=_.d=_.c=_.b=null -_.r=0 -_.$ti=a}, -jP:function jP(a){this.a=a}, -jO:function jO(a){this.a=a}, -jQ:function jQ(a,b){var _=this -_.a=a -_.b=b -_.d=_.c=null}, -b3:function b3(a,b){this.a=a -this.$ti=b}, -dM:function dM(a,b,c){var _=this -_.a=a -_.b=b -_.d=_.c=null -_.$ti=c}, -nr:function nr(a){this.a=a}, -ns:function ns(a){this.a=a}, -nt:function nt(a){this.a=a}, -cu:function cu(){}, -dg:function dg(){}, -cP:function cP(a,b){var _=this -_.a=a -_.b=b -_.d=_.c=null}, -es:function es(a){this.b=a}, -hM:function hM(a,b,c){this.a=a -this.b=b -this.c=c}, -hN:function hN(a,b,c){var _=this -_.a=a -_.b=b -_.c=c -_.d=null}, -e7:function e7(a,b){this.a=a -this.c=b}, -iI:function iI(a,b,c){this.a=a -this.b=b -this.c=c}, -iJ:function iJ(a,b,c){var _=this -_.a=a -_.b=b -_.c=c -_.d=null}, -bj(a){A.qU(new A.ce("Field '"+a+"' has not been initialized."),new Error())}, -jc(a){A.qU(new A.ce("Field '"+a+"' has been assigned during initialization."),new Error())}, -ei(a){var s=new A.lE(a) -return s.b=s}, -lE:function lE(a){this.a=a -this.b=null}, -uK(a){return a}, -or(a,b,c){}, -uO(a){return a}, -ph(a,b,c){A.or(a,b,c) -c=B.c.H(a.byteLength-b,4) -return new Int32Array(a,b,c)}, -t8(a){return new Uint8Array(a)}, -b5(a,b,c){A.or(a,b,c) -return c==null?new Uint8Array(a,b):new Uint8Array(a,b,c)}, -bE(a,b,c){if(a>>>0!==a||a>=c)throw A.b(A.eV(b,a))}, -uL(a,b,c){var s -if(!(a>>>0!==a))s=b>>>0!==b||a>b||b>c -else s=!0 -if(s)throw A.b(A.vu(a,b,c)) -return b}, -cW:function cW(){}, -a6:function a6(){}, -dR:function dR(){}, -ah:function ah(){}, -bS:function bS(){}, -aM:function aM(){}, -fQ:function fQ(){}, -fR:function fR(){}, -fS:function fS(){}, -fT:function fT(){}, -fU:function fU(){}, -fV:function fV(){}, -fW:function fW(){}, -dS:function dS(){}, -dT:function dT(){}, -eu:function eu(){}, -ev:function ev(){}, -ew:function ew(){}, -ex:function ex(){}, -pn(a,b){var s=b.c -return s==null?b.c=A.on(a,b.x,!0):s}, -nW(a,b){var s=b.c -return s==null?b.c=A.eJ(a,"I",[b.x]):s}, -po(a){var s=a.w -if(s===6||s===7||s===8)return A.po(a.x) -return s===12||s===13}, -tq(a){return a.as}, -aw(a){return A.iV(v.typeUniverse,a,!1)}, -c3(a1,a2,a3,a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=a2.w -switch(a0){case 5:case 1:case 2:case 3:case 4:return a2 -case 6:s=a2.x -r=A.c3(a1,s,a3,a4) -if(r===s)return a2 -return A.pW(a1,r,!0) -case 7:s=a2.x -r=A.c3(a1,s,a3,a4) -if(r===s)return a2 -return A.on(a1,r,!0) -case 8:s=a2.x -r=A.c3(a1,s,a3,a4) -if(r===s)return a2 -return A.pU(a1,r,!0) -case 9:q=a2.y -p=A.ds(a1,q,a3,a4) -if(p===q)return a2 -return A.eJ(a1,a2.x,p) -case 10:o=a2.x -n=A.c3(a1,o,a3,a4) -m=a2.y -l=A.ds(a1,m,a3,a4) -if(n===o&&l===m)return a2 -return A.ol(a1,n,l) -case 11:k=a2.x -j=a2.y -i=A.ds(a1,j,a3,a4) -if(i===j)return a2 -return A.pV(a1,k,i) -case 12:h=a2.x -g=A.c3(a1,h,a3,a4) -f=a2.y -e=A.ve(a1,f,a3,a4) -if(g===h&&e===f)return a2 -return A.pT(a1,g,e) -case 13:d=a2.y -a4+=d.length -c=A.ds(a1,d,a3,a4) -o=a2.x -n=A.c3(a1,o,a3,a4) -if(c===d&&n===o)return a2 -return A.om(a1,n,c,!0) -case 14:b=a2.x -if(b=p)return A.c(q,0) -s=A.eL(v.typeUniverse,A.ox(q[0]),"@<0>") -for(r=1;r=0)p+=" "+r[q];++q}return p+"})"}, -qn(a4,a5,a6){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3=", " -if(a6!=null){s=a6.length -if(a5==null){a5=A.u([],t.s) -r=null}else r=a5.length -q=a5.length -for(p=s;p>0;--p)B.a.m(a5,"T"+(q+p)) -for(o=t.X,n=t._,m="<",l="",p=0;p=0))return A.c(a5,j) -m=B.b.b5(m+l,a5[j]) -i=a6[p] -h=i.w -if(!(h===2||h===3||h===4||h===5||i===o))if(!(i===n))k=!1 -else k=!0 -else k=!0 -if(!k)m+=" extends "+A.aJ(i,a5)}m+=">"}else{m="" -r=null}o=a4.x -g=a4.y -f=g.a -e=f.length -d=g.b -c=d.length -b=g.c -a=b.length -a0=A.aJ(o,a5) -for(a1="",a2="",p=0;p0){a1+=a2+"[" -for(a2="",p=0;p0){a1+=a2+"{" -for(a2="",p=0;p "+a0}, -aJ(a,b){var s,r,q,p,o,n,m,l=a.w -if(l===5)return"erased" -if(l===2)return"dynamic" -if(l===3)return"void" -if(l===1)return"Never" -if(l===4)return"any" -if(l===6)return A.aJ(a.x,b) -if(l===7){s=a.x -r=A.aJ(s,b) -q=s.w -return(q===12||q===13?"("+r+")":r)+"?"}if(l===8)return"FutureOr<"+A.aJ(a.x,b)+">" -if(l===9){p=A.vg(a.x) -o=a.y -return o.length>0?p+("<"+A.qx(o,b)+">"):p}if(l===11)return A.va(a,b) -if(l===12)return A.qn(a,b,null) -if(l===13)return A.qn(a.x,b,a.y) -if(l===14){n=a.x -m=b.length -n=m-1-n -if(!(n>=0&&n0)p+="<"+A.eI(c)+">" -s=a.eC.get(p) -if(s!=null)return s -r=new A.aV(null,null) -r.w=9 -r.x=b -r.y=c -if(c.length>0)r.c=c[0] -r.as=p -q=A.bD(a,r) -a.eC.set(p,q) -return q}, -ol(a,b,c){var s,r,q,p,o,n -if(b.w===10){s=b.x -r=b.y.concat(c)}else{r=c -s=b}q=s.as+(";<"+A.eI(r)+">") -p=a.eC.get(q) -if(p!=null)return p -o=new A.aV(null,null) -o.w=10 -o.x=s -o.y=r -o.as=q -n=A.bD(a,o) -a.eC.set(q,n) -return n}, -pV(a,b,c){var s,r,q="+"+(b+"("+A.eI(c)+")"),p=a.eC.get(q) -if(p!=null)return p -s=new A.aV(null,null) -s.w=11 -s.x=b -s.y=c -s.as=q -r=A.bD(a,s) -a.eC.set(q,r) -return r}, -pT(a,b,c){var s,r,q,p,o,n=b.as,m=c.a,l=m.length,k=c.b,j=k.length,i=c.c,h=i.length,g="("+A.eI(m) -if(j>0){s=l>0?",":"" -g+=s+"["+A.eI(k)+"]"}if(h>0){s=l>0?",":"" -g+=s+"{"+A.uf(i)+"}"}r=n+(g+")") -q=a.eC.get(r) -if(q!=null)return q -p=new A.aV(null,null) -p.w=12 -p.x=b -p.y=c -p.as=r -o=A.bD(a,p) -a.eC.set(r,o) -return o}, -om(a,b,c,d){var s,r=b.as+("<"+A.eI(c)+">"),q=a.eC.get(r) -if(q!=null)return q -s=A.uh(a,b,c,r,d) -a.eC.set(r,s) -return s}, -uh(a,b,c,d,e){var s,r,q,p,o,n,m,l -if(e){s=c.length -r=A.n_(s) -for(q=0,p=0;p0){n=A.c3(a,b,r,0) -m=A.ds(a,c,r,0) -return A.om(a,n,m,c!==m)}}l=new A.aV(null,null) -l.w=13 -l.x=b -l.y=c -l.as=d -return A.bD(a,l)}, -pN(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, -pP(a){var s,r,q,p,o,n,m,l=a.r,k=a.s -for(s=l.length,r=0;r=48&&q<=57)r=A.u8(r+1,q,l,k) -else if((((q|32)>>>0)-97&65535)<26||q===95||q===36||q===124)r=A.pO(a,r,l,k,!1) -else if(q===46)r=A.pO(a,r,l,k,!0) -else{++r -switch(q){case 44:break -case 58:k.push(!1) -break -case 33:k.push(!0) -break -case 59:k.push(A.c0(a.u,a.e,k.pop())) -break -case 94:k.push(A.uk(a.u,k.pop())) -break -case 35:k.push(A.eK(a.u,5,"#")) -break -case 64:k.push(A.eK(a.u,2,"@")) -break -case 126:k.push(A.eK(a.u,3,"~")) -break -case 60:k.push(a.p) -a.p=k.length -break -case 62:A.ua(a,k) -break -case 38:A.u9(a,k) -break -case 42:p=a.u -k.push(A.pW(p,A.c0(p,a.e,k.pop()),a.n)) -break -case 63:p=a.u -k.push(A.on(p,A.c0(p,a.e,k.pop()),a.n)) -break -case 47:p=a.u -k.push(A.pU(p,A.c0(p,a.e,k.pop()),a.n)) -break -case 40:k.push(-3) -k.push(a.p) -a.p=k.length -break -case 41:A.u7(a,k) -break -case 91:k.push(a.p) -a.p=k.length -break -case 93:o=k.splice(a.p) -A.pQ(a.u,a.e,o) -a.p=k.pop() -k.push(o) -k.push(-1) -break -case 123:k.push(a.p) -a.p=k.length -break -case 125:o=k.splice(a.p) -A.uc(a.u,a.e,o) -a.p=k.pop() -k.push(o) -k.push(-2) -break -case 43:n=l.indexOf("(",r) -k.push(l.substring(r,n)) -k.push(-4) -k.push(a.p) -a.p=k.length -r=n+1 -break -default:throw"Bad character "+q}}}m=k.pop() -return A.c0(a.u,a.e,m)}, -u8(a,b,c,d){var s,r,q=b-48 -for(s=c.length;a=48&&r<=57))break -q=q*10+(r-48)}d.push(q) -return a}, -pO(a,b,c,d,e){var s,r,q,p,o,n,m=b+1 -for(s=c.length;m>>0)-97&65535)<26||r===95||r===36||r===124))q=r>=48&&r<=57 -else q=!0 -if(!q)break}}p=c.substring(b,m) -if(e){s=a.u -o=a.e -if(o.w===10)o=o.x -n=A.uo(s,o.x)[p] -if(n==null)A.O('No "'+p+'" in "'+A.tq(o)+'"') -d.push(A.eL(s,o,n))}else d.push(p) -return m}, -ua(a,b){var s,r=a.u,q=A.pM(a,b),p=b.pop() -if(typeof p=="string")b.push(A.eJ(r,p,q)) -else{s=A.c0(r,a.e,p) -switch(s.w){case 12:b.push(A.om(r,s,q,a.n)) -break -default:b.push(A.ol(r,s,q)) -break}}}, -u7(a,b){var s,r,q,p,o,n=null,m=a.u,l=b.pop() -if(typeof l=="number")switch(l){case-1:s=b.pop() -r=n -break -case-2:r=b.pop() -s=n -break -default:b.push(l) -r=n -s=r -break}else{b.push(l) -r=n -s=r}q=A.pM(a,b) -l=b.pop() -switch(l){case-3:l=b.pop() -if(s==null)s=m.sEA -if(r==null)r=m.sEA -p=A.c0(m,a.e,l) -o=new A.i4() -o.a=q -o.b=s -o.c=r -b.push(A.pT(m,p,o)) -return -case-4:b.push(A.pV(m,b.pop(),q)) -return -default:throw A.b(A.f2("Unexpected state under `()`: "+A.t(l)))}}, -u9(a,b){var s=b.pop() -if(0===s){b.push(A.eK(a.u,1,"0&")) -return}if(1===s){b.push(A.eK(a.u,4,"1&")) -return}throw A.b(A.f2("Unexpected extended operation "+A.t(s)))}, -pM(a,b){var s=b.splice(a.p) -A.pQ(a.u,a.e,s) -a.p=b.pop() -return s}, -c0(a,b,c){if(typeof c=="string")return A.eJ(a,c,a.sEA) -else if(typeof c=="number"){b.toString -return A.ub(a,b,c)}else return c}, -pQ(a,b,c){var s,r=c.length -for(s=0;sn)return!1 -m=n-o -l=s.b -k=r.b -j=l.length -i=k.length -if(o+j=d)return!1 -a1=f[b] -b+=3 -if(a00?new Array(q):v.typeUniverse.sEA -for(o=0;o0?new Array(a):v.typeUniverse.sEA}, -aV:function aV(a,b){var _=this -_.a=a -_.b=b -_.r=_.f=_.d=_.c=null -_.w=0 -_.as=_.Q=_.z=_.y=_.x=null}, -i4:function i4(){this.c=this.b=this.a=null}, -mW:function mW(a){this.a=a}, -i0:function i0(){}, -eH:function eH(a){this.a=a}, -tU(){var s,r,q={} -if(self.scheduleImmediate!=null)return A.vl() -if(self.MutationObserver!=null&&self.document!=null){s=self.document.createElement("div") -r=self.document.createElement("span") -q.a=null -new self.MutationObserver(A.bH(new A.lv(q),1)).observe(s,{childList:true}) -return new A.lu(q,s,r)}else if(self.setImmediate!=null)return A.vm() -return A.vn()}, -tV(a){self.scheduleImmediate(A.bH(new A.lw(t.M.a(a)),0))}, -tW(a){self.setImmediate(A.bH(new A.lx(t.M.a(a)),0))}, -tX(a){A.pu(B.y,t.M.a(a))}, -pu(a,b){var s=B.c.H(a.a,1000) -return A.ud(s<0?0:s,b)}, -ud(a,b){var s=new A.mU(!0) -s.ey(a,b) -return s}, -y(a){return new A.ee(new A.C($.E,a.h("C<0>")),a.h("ee<0>"))}, -x(a,b){a.$2(0,null) -b.b=!0 -return b.a}, -o(a,b){A.uH(a,b)}, -w(a,b){b.W(0,a)}, -v(a,b){b.bq(A.T(a),A.a0(a))}, -uH(a,b){var s,r,q=new A.n2(b),p=new A.n3(b) -if(a instanceof A.C)a.dv(q,p,t.z) -else{s=t.z -if(a instanceof A.C)a.bF(q,p,s) -else{r=new A.C($.E,t.c) -r.a=8 -r.c=a -r.dv(q,p,s)}}}, -z(a){var s=function(b,c){return function(d,e){while(true){try{b(d,e) -break}catch(r){e=r -d=c}}}}(a,1) -return $.E.cJ(new A.ni(s),t.H,t.S,t.z)}, -pS(a,b,c){return 0}, -jj(a,b){var s=A.cx(a,"error",t.K) -return new A.dw(s,b==null?A.f3(a):b)}, -f3(a){var s -if(t.U.b(a)){s=a.gaM() -if(s!=null)return s}return B.V}, -rT(a,b){var s=new A.C($.E,b.h("C<0>")) -A.tP(B.y,new A.jH(s,a)) -return s}, -p4(a,b){var s,r,q,p,o,n,m -try{s=a.$0() -n=b.h("I<0>").b(s)?s:A.pK(s,b) -return n}catch(m){r=A.T(m) -q=A.a0(m) -n=$.E -p=new A.C(n,b.h("C<0>")) -o=n.aY(r,q) -if(o!=null)p.an(o.a,o.b) -else p.an(r,q) -return p}}, -p5(a,b){var s -b.a(a) -s=new A.C($.E,b.h("C<0>")) -s.b9(a) -return s}, -dH(a,b,c){var s,r -A.cx(a,"error",t.K) -s=$.E -if(s!==B.d){r=s.aY(a,b) -if(r!=null){a=r.a -b=r.b}}if(b==null)b=A.f3(a) -s=new A.C($.E,c.h("C<0>")) -s.an(a,b) -return s}, -nM(a,b){var s,r,q,p,o,n,m,l,k,j,i={},h=null,g=!1,f=new A.C($.E,b.h("C>")) -i.a=null -i.b=0 -s=A.ei("error") -r=A.ei("stackTrace") -q=new A.jJ(i,h,g,f,s,r) -try{for(l=J.ar(a),k=t.P;l.n();){p=l.gq(l) -o=i.b -p.bF(new A.jI(i,o,f,h,g,s,r,b),q,k);++i.b}l=i.b -if(l===0){l=f -l.aS(A.u([],b.h("M<0>"))) -return l}i.a=A.dO(l,null,!1,b.h("0?"))}catch(j){n=A.T(j) -m=A.a0(j) -if(i.b===0||A.bG(g))return A.dH(n,m,b.h("n<0>")) -else{s.b=n -r.b=m}}return f}, -qh(a,b,c){var s=$.E.aY(b,c) -if(s!=null){b=s.a -c=s.b}else if(c==null)c=A.f3(b) -a.P(b,c)}, -pK(a,b){var s=new A.C($.E,b.h("C<0>")) -b.a(a) -s.a=8 -s.c=a -return s}, -oj(a,b){var s,r,q -for(s=t.c;r=a.a,(r&4)!==0;)a=s.a(a.c) -if((r&24)!==0){q=b.bi() -b.bb(a) -A.df(b,q)}else{q=t.d.a(b.c) -b.dn(a) -a.cf(q)}}, -u5(a,b){var s,r,q,p={},o=p.a=a -for(s=t.c;r=o.a,(r&4)!==0;o=a){a=s.a(o.c) -p.a=a}if((r&24)===0){q=t.d.a(b.c) -b.dn(o) -p.a.cf(q) -return}if((r&16)===0&&b.c==null){b.bb(o) -return}b.a^=2 -b.b.am(new A.lR(p,b))}, -df(a,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c={},b=c.a=a -for(s=t.n,r=t.d,q=t.g7;!0;){p={} -o=b.a -n=(o&16)===0 -m=!n -if(a0==null){if(m&&(o&1)===0){l=s.a(b.c) -b.b.dP(l.a,l.b)}return}p.a=a0 -k=a0.a -for(b=a0;k!=null;b=k,k=j){b.a=null -A.df(c.a,b) -p.a=k -j=k.a}o=c.a -i=o.c -p.b=m -p.c=i -if(n){h=b.c -h=(h&1)!==0||(h&15)===8}else h=!0 -if(h){g=b.b.b -if(m){b=o.b -b=!(b===g||b.gaw()===g.gaw())}else b=!1 -if(b){b=c.a -l=s.a(b.c) -b.b.dP(l.a,l.b) -return}f=$.E -if(f!==g)$.E=g -else f=null -b=p.a.c -if((b&15)===8)new A.lY(p,c,m).$0() -else if(n){if((b&1)!==0)new A.lX(p,i).$0()}else if((b&2)!==0)new A.lW(c,p).$0() -if(f!=null)$.E=f -b=p.c -if(b instanceof A.C){o=p.a.$ti -o=o.h("I<2>").b(b)||!o.y[1].b(b)}else o=!1 -if(o){q.a(b) -e=p.a.b -if((b.a&24)!==0){d=r.a(e.c) -e.c=null -a0=e.bj(d) -e.a=b.a&30|e.a&1 -e.c=b.c -c.a=b -continue}else A.oj(b,e) -return}}e=p.a.b -d=r.a(e.c) -e.c=null -a0=e.bj(d) -b=p.b -o=p.c -if(!b){e.$ti.c.a(o) -e.a=8 -e.c=o}else{s.a(o) -e.a=e.a&1|16 -e.c=o}c.a=e -b=e}}, -vb(a,b){if(t.Q.b(a))return b.cJ(a,t.z,t.K,t.l) -if(t.v.b(a))return b.bD(a,t.z,t.K) -throw A.b(A.bm(a,"onError",u.c))}, -v8(){var s,r -for(s=$.dr;s!=null;s=$.dr){$.eT=null -r=s.b -$.dr=r -if(r==null)$.eS=null -s.a.$0()}}, -vd(){$.ov=!0 -try{A.v8()}finally{$.eT=null -$.ov=!1 -if($.dr!=null)$.oK().$1(A.qF())}}, -qz(a){var s=new A.hP(a),r=$.eS -if(r==null){$.dr=$.eS=s -if(!$.ov)$.oK().$1(A.qF())}else $.eS=r.b=s}, -vc(a){var s,r,q,p=$.dr -if(p==null){A.qz(a) -$.eT=$.eS -return}s=new A.hP(a) -r=$.eT -if(r==null){s.b=p -$.dr=$.eT=s}else{q=r.b -s.b=q -$.eT=r.b=s -if(q==null)$.eS=s}}, -qS(a){var s,r=null,q=$.E -if(B.d===q){A.ng(r,r,B.d,a) -return}if(B.d===q.gfm().a)s=B.d.gaw()===q.gaw() -else s=!1 -if(s){A.ng(r,r,q,q.cK(a,t.H)) -return}s=$.E -s.am(s.co(a))}, -wp(a,b){return new A.iH(A.cx(a,"stream",t.K),b.h("iH<0>"))}, -ow(a){return}, -pI(a,b,c){var s=b==null?A.vo():b -return a.bD(s,t.H,c)}, -u4(a,b){if(t.k.b(b))return a.cJ(b,t.z,t.K,t.l) -if(t.i6.b(b))return a.bD(b,t.z,t.K) -throw A.b(A.ak("handleError callback must take either an Object (the error), or both an Object (the error) and a StackTrace.",null))}, -v9(a){}, -uJ(a,b,c){var s=a.S(0),r=$.eY() -if(s!==r)s.aH(new A.n4(b,c)) -else b.aR(c)}, -tP(a,b){var s=$.E -if(s===B.d)return s.dI(a,b) -return s.dI(a,s.co(b))}, -ne(a,b){A.vc(new A.nf(a,b))}, -qu(a,b,c,d,e){var s,r -t.R.a(a) -t.r.a(b) -t.x.a(c) -e.h("0()").a(d) -r=$.E -if(r===c)return d.$0() -$.E=c -s=r -try{r=d.$0() -return r}finally{$.E=s}}, -qw(a,b,c,d,e,f,g){var s,r -t.R.a(a) -t.r.a(b) -t.x.a(c) -f.h("@<0>").t(g).h("1(2)").a(d) -g.a(e) -r=$.E -if(r===c)return d.$1(e) -$.E=c -s=r -try{r=d.$1(e) -return r}finally{$.E=s}}, -qv(a,b,c,d,e,f,g,h,i){var s,r -t.R.a(a) -t.r.a(b) -t.x.a(c) -g.h("@<0>").t(h).t(i).h("1(2,3)").a(d) -h.a(e) -i.a(f) -r=$.E -if(r===c)return d.$2(e,f) -$.E=c -s=r -try{r=d.$2(e,f) -return r}finally{$.E=s}}, -ng(a,b,c,d){var s,r -t.M.a(d) -if(B.d!==c){s=B.d.gaw() -r=c.gaw() -d=s!==r?c.co(d):c.fE(d,t.H)}A.qz(d)}, -lv:function lv(a){this.a=a}, -lu:function lu(a,b,c){this.a=a -this.b=b -this.c=c}, -lw:function lw(a){this.a=a}, -lx:function lx(a){this.a=a}, -mU:function mU(a){this.a=a -this.b=null -this.c=0}, -mV:function mV(a,b){this.a=a -this.b=b}, -ee:function ee(a,b){this.a=a -this.b=!1 -this.$ti=b}, -n2:function n2(a){this.a=a}, -n3:function n3(a){this.a=a}, -ni:function ni(a){this.a=a}, -eE:function eE(a,b){var _=this -_.a=a -_.e=_.d=_.c=_.b=null -_.$ti=b}, -dk:function dk(a,b){this.a=a -this.$ti=b}, -dw:function dw(a,b){this.a=a -this.b=b}, -jH:function jH(a,b){this.a=a -this.b=b}, -jJ:function jJ(a,b,c,d,e,f){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=e -_.f=f}, -jI:function jI(a,b,c,d,e,f,g,h){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=e -_.f=f -_.r=g -_.w=h}, -co:function co(){}, -cn:function cn(a,b){this.a=a -this.$ti=b}, -a9:function a9(a,b){this.a=a -this.$ti=b}, -bC:function bC(a,b,c,d,e){var _=this -_.a=null -_.b=a -_.c=b -_.d=c -_.e=d -_.$ti=e}, -C:function C(a,b){var _=this -_.a=0 -_.b=a -_.c=null -_.$ti=b}, -lO:function lO(a,b){this.a=a -this.b=b}, -lV:function lV(a,b){this.a=a -this.b=b}, -lS:function lS(a){this.a=a}, -lT:function lT(a){this.a=a}, -lU:function lU(a,b,c){this.a=a -this.b=b -this.c=c}, -lR:function lR(a,b){this.a=a -this.b=b}, -lQ:function lQ(a,b){this.a=a -this.b=b}, -lP:function lP(a,b,c){this.a=a -this.b=b -this.c=c}, -lY:function lY(a,b,c){this.a=a -this.b=b -this.c=c}, -lZ:function lZ(a){this.a=a}, -lX:function lX(a,b){this.a=a -this.b=b}, -lW:function lW(a,b){this.a=a -this.b=b}, -hP:function hP(a){this.a=a -this.b=null}, -d3:function d3(){}, -l8:function l8(a,b){this.a=a -this.b=b}, -l9:function l9(a,b){this.a=a -this.b=b}, -l6:function l6(a){this.a=a}, -l7:function l7(a,b,c){this.a=a -this.b=b -this.c=c}, -dj:function dj(){}, -mQ:function mQ(a){this.a=a}, -mP:function mP(a){this.a=a}, -iO:function iO(){}, -dl:function dl(a,b,c,d,e){var _=this -_.a=null -_.b=0 -_.c=null -_.d=a -_.e=b -_.f=c -_.r=d -_.$ti=e}, -da:function da(a,b){this.a=a -this.$ti=b}, -db:function db(a,b,c,d,e,f,g){var _=this -_.w=a -_.a=b -_.b=c -_.c=d -_.d=e -_.e=f -_.r=_.f=null -_.$ti=g}, -eg:function eg(){}, -lD:function lD(a,b,c){this.a=a -this.b=b -this.c=c}, -lC:function lC(a){this.a=a}, -eD:function eD(){}, -bB:function bB(){}, -cq:function cq(a,b){this.b=a -this.a=null -this.$ti=b}, -ej:function ej(a,b){this.b=a -this.c=b -this.a=null}, -hW:function hW(){}, -aX:function aX(a){var _=this -_.a=0 -_.c=_.b=null -_.$ti=a}, -mI:function mI(a,b){this.a=a -this.b=b}, -iH:function iH(a,b){var _=this -_.a=null -_.b=a -_.c=!1 -_.$ti=b}, -n4:function n4(a,b){this.a=a -this.b=b}, -iW:function iW(a,b,c){this.a=a -this.b=b -this.$ti=c}, -eP:function eP(){}, -nf:function nf(a,b){this.a=a -this.b=b}, -iw:function iw(){}, -mN:function mN(a,b,c){this.a=a -this.b=b -this.c=c}, -mM:function mM(a,b){this.a=a -this.b=b}, -mO:function mO(a,b,c){this.a=a -this.b=b -this.c=c}, -t4(a,b){return new A.b2(a.h("@<0>").t(b).h("b2<1,2>"))}, -az(a,b,c){return b.h("@<0>").t(c).h("pe<1,2>").a(A.vy(a,new A.b2(b.h("@<0>").t(c).h("b2<1,2>"))))}, -W(a,b){return new A.b2(a.h("@<0>").t(b).h("b2<1,2>"))}, -t5(a){return new A.eo(a.h("eo<0>"))}, -ok(){var s=Object.create(null) -s[""]=s -delete s[""] -return s}, -pL(a,b,c){var s=new A.ct(a,b,c.h("ct<0>")) -s.c=a.e -return s}, -nR(a,b,c){var s=A.t4(b,c) -J.bk(a,new A.jR(s,b,c)) -return s}, -fL(a){var s,r={} -if(A.oE(a))return"{...}" -s=new A.aj("") -try{B.a.m($.aT,a) -s.a+="{" -r.a=!0 -J.bk(a,new A.jU(r,s)) -s.a+="}"}finally{if(0>=$.aT.length)return A.c($.aT,-1) -$.aT.pop()}r=s.a -return r.charCodeAt(0)==0?r:r}, -eo:function eo(a){var _=this -_.a=0 -_.f=_.e=_.d=_.c=_.b=null -_.r=0 -_.$ti=a}, -id:function id(a){this.a=a -this.c=this.b=null}, -ct:function ct(a,b,c){var _=this -_.a=a -_.b=b -_.d=_.c=null -_.$ti=c}, -jR:function jR(a,b,c){this.a=a -this.b=b -this.c=c}, -cS:function cS(a){var _=this -_.b=_.a=0 -_.c=null -_.$ti=a}, -ep:function ep(a,b,c,d){var _=this -_.a=a -_.b=b -_.c=null -_.d=c -_.e=!1 -_.$ti=d}, -af:function af(){}, -i:function i(){}, -D:function D(){}, -jT:function jT(a){this.a=a}, -jU:function jU(a,b){this.a=a -this.b=b}, -d8:function d8(){}, -eq:function eq(a,b){this.a=a -this.$ti=b}, -er:function er(a,b,c){var _=this -_.a=a -_.b=b -_.c=null -_.$ti=c}, -c1:function c1(){}, -cT:function cT(){}, -ea:function ea(){}, -cY:function cY(){}, -ey:function ey(){}, -dn:function dn(){}, -uA(a,b,c){var s,r,q,p,o=c-b -if(o<=4096)s=$.re() -else s=new Uint8Array(o) -for(r=J.Y(a),q=0;q=16)return null -r=r*16+o}n=h-1 -if(!(h>=0&&h=0&&s=16)return null -r=r*16+o}m=n-1 -if(!(n>=0&&n=j)return A.c(i,0) -l=i[0]===0}else l=!1 -if(l)return $.bJ() -l=A.aW(j,i) -return new A.a7(l===0?!1:c,i,l)}, -oi(a,b){var s,r,q,p,o,n -if(a==="")return null -s=$.r9().fS(a) -if(s==null)return null -r=s.b -q=r.length -if(1>=q)return A.c(r,1) -p=r[1]==="-" -if(4>=q)return A.c(r,4) -o=r[4] -n=r[3] -if(5>=q)return A.c(r,5) -if(o!=null)return A.u0(o,p) -if(n!=null)return A.u1(n,2,p) -return null}, -aW(a,b){var s,r=b.length -while(!0){if(a>0){s=a-1 -if(!(s=0&&q=0;--s){p=s+c -if(!(s=0&&p=0;--s){if(!(s=0;--s){if(!(s=0&&n>>0 -p=B.c.aK((o&i)>>>0,k)}if(!(l>=0&&l=0;){if(!(q=0&&p=0&&m>>0,k) -if(!(p>>0 -s=B.c.aL(n,l)}if(!(r>=0&&r=0;--s){if(!(s=0&&o=0&&b=0&&o=0;e=m,c=p){p=c+1 -if(!(c=0&&e=0&&e=0&&c=0&&r>>0,a) -if(q>65535)return 65535 -return q}, -nu(a,b){var s=A.nU(a,b) -if(s!=null)return s -throw A.b(A.ae(a,null,null))}, -rO(a,b){a=A.b(a) -if(a==null)a=t.K.a(a) -a.stack=b.k(0) -throw a -throw A.b("unreachable")}, -dO(a,b,c,d){var s,r=c?J.rZ(a,d):J.pa(a,d) -if(a!==0&&b!=null)for(s=0;s")) -for(s=J.ar(a);s.n();)B.a.m(r,c.a(s.gq(s))) -if(b)return r -return J.jM(r,c)}, -fJ(a,b,c){var s -if(b)return A.pf(a,c) -s=J.jM(A.pf(a,c),c) -return s}, -pf(a,b){var s,r -if(Array.isArray(a))return A.u(a.slice(0),b.h("M<0>")) -s=A.u([],b.h("M<0>")) -for(r=J.ar(a);r.n();)B.a.m(s,r.gq(r)) -return s}, -dP(a,b){return J.pb(A.jS(a,!1,b))}, -pt(a,b,c){var s,r -A.aC(b,"start") -if(c!=null){s=c-b -if(s<0)throw A.b(A.am(c,b,null,"end",null)) -if(s===0)return""}r=A.tN(a,b,c) -return r}, -tM(a){return A.be(a)}, -tN(a,b,c){var s=a.length -if(b>=s)return"" -return A.tm(a,b,c==null||c>s?s:c)}, -aU(a,b){return new A.cP(a,A.pd(a,!1,b,!1,!1,!1))}, -la(a,b,c){var s=J.ar(b) -if(!s.n())return a -if(c.length===0){do a+=A.t(s.gq(s)) -while(s.n())}else{a+=A.t(s.gq(s)) -for(;s.n();)a=a+c+A.t(s.gq(s))}return a}, -pi(a,b){return new A.fX(a,b.ghh(),b.ghr(),b.ghi())}, -o8(){var s,r,q=A.te() -if(q==null)throw A.b(A.F("'Uri.base' is not supported")) -s=$.py -if(s!=null&&q===$.px)return s -r=A.pz(q) -$.py=r -$.px=q -return r}, -rM(a){var s=Math.abs(a),r=a<0?"-":"" -if(s>=1000)return""+a -if(s>=100)return r+"0"+s -if(s>=10)return r+"00"+s -return r+"000"+s}, -rN(a){if(a>=100)return""+a -if(a>=10)return"0"+a -return"00"+a}, -fp(a){if(a>=10)return""+a -return"0"+a}, -c9(a){if(typeof a=="number"||A.c2(a)||a==null)return J.ba(a) -if(typeof a=="string")return JSON.stringify(a) -return A.pl(a)}, -rP(a,b){A.cx(a,"error",t.K) -A.cx(b,"stackTrace",t.l) -A.rO(a,b)}, -f2(a){return new A.dv(a)}, -ak(a,b){return new A.bb(!1,null,b,a)}, -bm(a,b,c){return new A.bb(!0,a,b,c)}, -ji(a,b,c){return a}, -pm(a,b){return new A.cX(null,null,!0,a,b,"Value not in range")}, -am(a,b,c,d,e){return new A.cX(b,c,!0,a,d,"Invalid value")}, -to(a,b,c,d){if(ac)throw A.b(A.am(a,b,c,d,null)) -return a}, -cg(a,b,c){if(0>a||a>c)throw A.b(A.am(a,0,c,"start",null)) -if(b!=null){if(a>b||b>c)throw A.b(A.am(b,a,c,"end",null)) -return b}return c}, -aC(a,b){if(a<0)throw A.b(A.am(a,0,null,b,null)) -return a}, -V(a,b,c,d,e){return new A.fB(b,!0,a,e,"Index out of range")}, -F(a){return new A.hv(a)}, -hs(a){return new A.hr(a)}, -K(a){return new A.bv(a)}, -as(a){return new A.fg(a)}, -p3(a){return new A.lL(a)}, -ae(a,b,c){return new A.jG(a,b,c)}, -rY(a,b,c){var s,r -if(A.oE(a)){if(b==="("&&c===")")return"(...)" -return b+"..."+c}s=A.u([],t.s) -B.a.m($.aT,a) -try{A.v7(a,s)}finally{if(0>=$.aT.length)return A.c($.aT,-1) -$.aT.pop()}r=A.la(b,t.e7.a(s),", ")+c -return r.charCodeAt(0)==0?r:r}, -nN(a,b,c){var s,r -if(A.oE(a))return b+"..."+c -s=new A.aj(b) -B.a.m($.aT,a) -try{r=s -r.a=A.la(r.a,a,", ")}finally{if(0>=$.aT.length)return A.c($.aT,-1) -$.aT.pop()}s.a+=c -r=s.a -return r.charCodeAt(0)==0?r:r}, -v7(a,b){var s,r,q,p,o,n,m,l=a.gC(a),k=0,j=0 -while(!0){if(!(k<80||j<3))break -if(!l.n())return -s=A.t(l.gq(l)) -B.a.m(b,s) -k+=s.length+2;++j}if(!l.n()){if(j<=5)return -if(0>=b.length)return A.c(b,-1) -r=b.pop() -if(0>=b.length)return A.c(b,-1) -q=b.pop()}else{p=l.gq(l);++j -if(!l.n()){if(j<=4){B.a.m(b,A.t(p)) -return}r=A.t(p) -if(0>=b.length)return A.c(b,-1) -q=b.pop() -k+=r.length+2}else{o=l.gq(l);++j -for(;l.n();p=o,o=n){n=l.gq(l);++j -if(j>100){while(!0){if(!(k>75&&j>3))break -if(0>=b.length)return A.c(b,-1) -k-=b.pop().length+2;--j}B.a.m(b,"...") -return}}q=A.t(p) -r=A.t(o) -k+=r.length+q.length+4}}if(j>b.length+2){k+=5 -m="..."}else m=null -while(!0){if(!(k>80&&b.length>3))break -if(0>=b.length)return A.c(b,-1) -k-=b.pop().length+2 -if(m==null){k+=5 -m="..."}}if(m!=null)B.a.m(b,m) -B.a.m(b,q) -B.a.m(b,r)}, -nT(a,b,c,d){var s -if(B.q===c){s=B.k.gA(a) -b=J.bl(b) -return A.o6(A.bV(A.bV($.nF(),s),b))}if(B.q===d){s=B.k.gA(a) -b=J.bl(b) -c=J.bl(c) -return A.o6(A.bV(A.bV(A.bV($.nF(),s),b),c))}s=B.k.gA(a) -b=J.bl(b) -c=J.bl(c) -d=J.bl(d) -d=A.o6(A.bV(A.bV(A.bV(A.bV($.nF(),s),b),c),d)) -return d}, -aZ(a){var s=$.qP -if(s==null)A.qO(a) -else s.$1(a)}, -pz(a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3=null,a4=a5.length -if(a4>=5){if(4>=a4)return A.c(a5,4) -s=((a5.charCodeAt(4)^58)*3|a5.charCodeAt(0)^100|a5.charCodeAt(1)^97|a5.charCodeAt(2)^116|a5.charCodeAt(3)^97)>>>0 -if(s===0)return A.pw(a4=14)B.a.l(r,7,a4) -q=r[1] -if(q>=0)if(A.qy(a5,0,q,20,r)===20)r[7]=q -p=r[2]+1 -o=r[3] -n=r[4] -m=r[5] -l=r[6] -if(lq+3){j=a3 -k=!1}else{i=o>0 -if(i&&o+1===n){j=a3 -k=!1}else{if(!B.b.J(a5,"\\",n))if(p>0)h=B.b.J(a5,"\\",p-1)||B.b.J(a5,"\\",p-2) -else h=!1 -else h=!0 -if(h){j=a3 -k=!1}else{if(!(mn+2&&B.b.J(a5,"/..",m-3) -else h=!0 -if(h){j=a3 -k=!1}else{if(q===4)if(B.b.J(a5,"file",0)){if(p<=0){if(!B.b.J(a5,"/",n)){g="file:///" -s=3}else{g="file://" -s=2}a5=g+B.b.p(a5,n,a4) -q-=0 -i=s-0 -m+=i -l+=i -a4=a5.length -p=7 -o=7 -n=7}else if(n===m){++l -f=m+1 -a5=B.b.aE(a5,n,m,"/");++a4 -m=f}j="file"}else if(B.b.J(a5,"http",0)){if(i&&o+3===n&&B.b.J(a5,"80",o+1)){l-=3 -e=n-3 -m-=3 -a5=B.b.aE(a5,o,n,"") -a4-=3 -n=e}j="http"}else j=a3 -else if(q===5&&B.b.J(a5,"https",0)){if(i&&o+4===n&&B.b.J(a5,"443",o+1)){l-=4 -e=n-4 -m-=4 -a5=B.b.aE(a5,o,n,"") -a4-=3 -n=e}j="https"}else j=a3 -k=!0}}}}else j=a3 -if(k){if(a40)j=A.uu(a5,0,q) -else{if(q===0)A.dp(a5,0,"Invalid empty scheme") -j=""}if(p>0){d=q+3 -c=d=0&&r9)j.$2("invalid character",r)}else{if(p===3)j.$2(l,r) -n=A.nu(B.b.p(a,q,r),null) -if(n>255)j.$2(k,q) -m=p+1 -if(!(p<4))return A.c(i,p) -i[p]=n -q=r+1 -p=m}}if(p!==3)j.$2(l,c) -n=A.nu(B.b.p(a,q,c),null) -if(n>255)j.$2(k,q) -if(!(p<4))return A.c(i,p) -i[p]=n -return i}, -pA(a,a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null,d=new A.lg(a),c=new A.lh(d,a),b=a.length -if(b<2)d.$2("address is too short",e) -s=A.u([],t.t) -for(r=a0,q=r,p=!1,o=!1;r=0&&r>>0) -B.a.m(s,(l[2]<<8|l[3])>>>0)}if(p){if(s.length>7)d.$2("an address with a wildcard must have less than 7 parts",e)}else if(s.length!==8)d.$2("an address without a wildcard must contain exactly 8 parts",e) -k=new Uint8Array(16) -for(b=s.length,j=9-b,r=0,i=0;r=0&&i<16))return A.c(k,i) -k[i]=0 -f=i+1 -if(!(f<16))return A.c(k,f) -k[f]=0 -i+=2}else{f=B.c.R(h,8) -if(!(i>=0&&i<16))return A.c(k,i) -k[i]=f -f=i+1 -if(!(f<16))return A.c(k,f) -k[f]=h&255 -i+=2}}return k}, -pY(a,b,c,d,e,f,g){return new A.eM(a,b,c,d,e,f,g)}, -q_(a){if(a==="http")return 80 -if(a==="https")return 443 -return 0}, -dp(a,b,c){throw A.b(A.ae(c,a,b))}, -uq(a,b){var s,r,q -for(s=a.length,r=0;r")),r=r.h("a4.E");s.n();){q=s.d -if(q==null)q=r.a(q) -if(B.b.N(q,A.aU('["*/:<>?\\\\|]',!0))){s=A.F("Illegal character in path: "+q) -throw A.b(s)}}}, -ur(a,b){var s -if(!(65<=a&&a<=90))s=97<=a&&a<=122 -else s=!0 -if(s)return -s=A.F("Illegal drive letter "+A.tM(a)) -throw A.b(s)}, -q5(a,b){if(a!=null&&a===A.q_(b))return null -return a}, -q3(a,b,c,d){var s,r,q,p,o,n -if(a==null)return null -if(b===c)return"" -s=a.length -if(!(b>=0&&b=0&&r=b&&q=b&&s=0&&r>>4 -if(!(m<8))return A.c(B.l,m) -m=(B.l[m]&1<<(o&15))!==0}else m=!1 -if(m){if(p&&65<=o&&90>=o){if(h==null)h=new A.aj("") -if(q=0&&r>>4 -if(!(l<8))return A.c(B.A,l) -l=(B.A[l]&1<<(n&15))!==0}else l=!1 -if(l){if(o&&65<=n&&90>=n){if(p==null)p=new A.aj("") -if(q>>4 -if(!(l<8))return A.c(B.n,l) -l=(B.n[l]&1<<(n&15))!==0}else l=!1 -if(l)A.dp(a,r,"Invalid character") -else{if((n&64512)===55296&&r+1>>4 -if(!(o<8))return A.c(B.m,o) -o=(B.m[o]&1<<(p&15))!==0}else o=!1 -if(!o)A.dp(a,r,"Illegal scheme character") -if(65<=p&&p<=90)q=!0}a=B.b.p(a,b,c) -return A.up(q?a.toLowerCase():a)}, -up(a){if(a==="http")return"http" -if(a==="file")return"file" -if(a==="https")return"https" -if(a==="package")return"package" -return a}, -q7(a,b,c){if(a==null)return"" -return A.eN(a,b,c,B.a_,!1,!1)}, -q4(a,b,c,d,e,f){var s=e==="file",r=s||f,q=A.eN(a,b,c,B.z,!0,!0) -if(q.length===0){if(s)return"/"}else if(r&&!B.b.I(q,"/"))q="/"+q -return A.uv(q,e,f)}, -uv(a,b,c){var s=b.length===0 -if(s&&!c&&!B.b.I(a,"/")&&!B.b.I(a,"\\"))return A.qa(a,!s||c) -return A.qc(a)}, -q6(a,b,c,d){if(a!=null)return A.eN(a,b,c,B.p,!0,!1) -return null}, -q2(a,b,c){if(a==null)return null -return A.eN(a,b,c,B.p,!0,!1)}, -op(a,b,c){var s,r,q,p,o,n,m=b+2,l=a.length -if(m>=l)return"%" -s=b+1 -if(!(s>=0&&s=0))return A.c(a,m) -q=a.charCodeAt(m) -p=A.nq(r) -o=A.nq(q) -if(p<0||o<0)return"%" -n=p*16+o -if(n<127){m=B.c.R(n,4) -if(!(m<8))return A.c(B.l,m) -m=(B.l[m]&1<<(n&15))!==0}else m=!1 -if(m)return A.be(c&&65<=n&&90>=n?(n|32)>>>0:n) -if(r>=97||q>=97)return B.b.p(a,b,b+3).toUpperCase() -return null}, -oo(a){var s,r,q,p,o,n,m,l,k="0123456789ABCDEF" -if(a<128){s=new Uint8Array(3) -s[0]=37 -r=a>>>4 -if(!(r<16))return A.c(k,r) -s[1]=k.charCodeAt(r) -s[2]=k.charCodeAt(a&15)}else{if(a>2047)if(a>65535){q=240 -p=4}else{q=224 -p=3}else{q=192 -p=2}r=3*p -s=new Uint8Array(r) -for(o=0;--p,p>=0;q=128){n=B.c.fs(a,6*p)&63|q -if(!(o>>4 -if(!(l<16))return A.c(k,l) -if(!(m=0&&q>>4 -if(!(m<8))return A.c(d,m) -m=(d[m]&1<<(n&15))!==0}else m=!1 -if(m)++q -else{if(n===37){l=A.op(a,q,!1) -if(l==null){q+=3 -continue}if("%"===l){l="%25" -k=1}else k=3}else if(n===92&&f){l="/" -k=1}else{if(s)if(n<=93){m=n>>>4 -if(!(m<8))return A.c(B.n,m) -m=(B.n[m]&1<<(n&15))!==0}else m=!1 -else m=!1 -if(m){A.dp(a,q,"Invalid character") -k=h -l=k}else{if((n&64512)===55296){m=q+1 -if(m=m)return A.c(s,-1) -s.pop() -if(s.length===0)B.a.m(s,"")}p=!0}else if("."===n)p=!0 -else{B.a.m(s,n) -p=!1}}if(p)B.a.m(s,"") -return B.a.aj(s,"/")}, -qa(a,b){var s,r,q,p,o,n -if(!A.q8(a))return!b?A.q0(a):a -s=A.u([],t.s) -for(r=a.split("/"),q=r.length,p=!1,o=0;o=s.length)return A.c(s,-1) -s.pop() -p=!0}else{B.a.m(s,"..") -p=!1}else if("."===n)p=!0 -else{B.a.m(s,n) -p=!1}}r=s.length -if(r!==0)if(r===1){if(0>=r)return A.c(s,0) -r=s[0].length===0}else r=!1 -else r=!0 -if(r)return"./" -if(p||B.a.ga4(s)==="..")B.a.m(s,"") -if(!b){if(0>=s.length)return A.c(s,0) -B.a.l(s,0,A.q0(s[0]))}return B.a.aj(s,"/")}, -q0(a){var s,r,q,p=a.length -if(p>=2&&A.q1(a.charCodeAt(0)))for(s=1;s>>4 -if(!(q<8))return A.c(B.m,q) -q=(B.m[q]&1<<(r&15))===0}else q=!0 -if(q)break}return a}, -ux(a){var s,r,q,p=a.gcF(),o=p.length -if(o>0&&J.a1(p[0])===2&&J.oQ(p[0],1)===58){if(0>=o)return A.c(p,0) -A.ur(J.oQ(p[0],0),!1) -A.pZ(p,!1,1) -s=!0}else{A.pZ(p,!1,0) -s=!1}r=a.gdQ()&&!s?""+"\\":"" -if(a.gcu()){q=a.gb_(a) -if(q.length!==0)r=r+"\\"+q+"\\"}r=A.la(r,p,"\\") -o=s&&o===1?r+"\\":r -return o.charCodeAt(0)==0?o:o}, -ut(a,b){var s,r,q,p,o -for(s=a.length,r=0,q=0;q<2;++q){p=b+q -if(!(p127)throw A.b(A.ak("Illegal percent encoding in URI",null)) -if(r===37){if(n+3>o)throw A.b(A.ak("Truncated URI",null)) -B.a.m(p,A.ut(a,n+1)) -n+=2}else B.a.m(p,r)}}return d.aX(0,p)}, -q1(a){var s=a|32 -return 97<=s&&s<=122}, -pw(a,b,c){var s,r,q,p,o,n,m,l,k="Invalid MIME type",j=A.u([b-1],t.t) -for(s=a.length,r=b,q=-1,p=null;rb)throw A.b(A.ae(k,a,r)) -for(;p!==44;){B.a.m(j,r);++r -for(o=-1;r=0))return A.c(a,r) -p=a.charCodeAt(r) -if(p===61){if(o<0)o=r}else if(p===59||p===44)break}if(o>=0)B.a.m(j,o) -else{n=B.a.ga4(j) -if(p!==44||r!==n+7||!B.b.J(a,"base64",n+1))throw A.b(A.ae("Expecting '='",a,r)) -break}}B.a.m(j,r) -m=r+1 -if((j.length&1)===1)a=B.L.hm(0,a,m,s) -else{l=A.q9(a,m,s,B.p,!0,!1) -if(l!=null)a=B.b.aE(a,m,s,l)}return new A.le(a,j,c)}, -uN(){var s,r,q,p,o,n="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-._~!$&'()*+,;=",m=".",l=":",k="/",j="\\",i="?",h="#",g="/\\",f=J.p9(22,t.p) -for(s=0;s<22;++s)f[s]=new Uint8Array(96) -r=new A.n7(f) -q=new A.n8() -p=new A.n9() -o=r.$2(0,225) -q.$3(o,n,1) -q.$3(o,m,14) -q.$3(o,l,34) -q.$3(o,k,3) -q.$3(o,j,227) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(14,225) -q.$3(o,n,1) -q.$3(o,m,15) -q.$3(o,l,34) -q.$3(o,g,234) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(15,225) -q.$3(o,n,1) -q.$3(o,"%",225) -q.$3(o,l,34) -q.$3(o,k,9) -q.$3(o,j,233) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(1,225) -q.$3(o,n,1) -q.$3(o,l,34) -q.$3(o,k,10) -q.$3(o,j,234) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(2,235) -q.$3(o,n,139) -q.$3(o,k,131) -q.$3(o,j,131) -q.$3(o,m,146) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(3,235) -q.$3(o,n,11) -q.$3(o,k,68) -q.$3(o,j,68) -q.$3(o,m,18) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(4,229) -q.$3(o,n,5) -p.$3(o,"AZ",229) -q.$3(o,l,102) -q.$3(o,"@",68) -q.$3(o,"[",232) -q.$3(o,k,138) -q.$3(o,j,138) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(5,229) -q.$3(o,n,5) -p.$3(o,"AZ",229) -q.$3(o,l,102) -q.$3(o,"@",68) -q.$3(o,k,138) -q.$3(o,j,138) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(6,231) -p.$3(o,"19",7) -q.$3(o,"@",68) -q.$3(o,k,138) -q.$3(o,j,138) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(7,231) -p.$3(o,"09",7) -q.$3(o,"@",68) -q.$3(o,k,138) -q.$3(o,j,138) -q.$3(o,i,172) -q.$3(o,h,205) -q.$3(r.$2(8,8),"]",5) -o=r.$2(9,235) -q.$3(o,n,11) -q.$3(o,m,16) -q.$3(o,g,234) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(16,235) -q.$3(o,n,11) -q.$3(o,m,17) -q.$3(o,g,234) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(17,235) -q.$3(o,n,11) -q.$3(o,k,9) -q.$3(o,j,233) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(10,235) -q.$3(o,n,11) -q.$3(o,m,18) -q.$3(o,k,10) -q.$3(o,j,234) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(18,235) -q.$3(o,n,11) -q.$3(o,m,19) -q.$3(o,g,234) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(19,235) -q.$3(o,n,11) -q.$3(o,g,234) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(11,235) -q.$3(o,n,11) -q.$3(o,k,10) -q.$3(o,j,234) -q.$3(o,i,172) -q.$3(o,h,205) -o=r.$2(12,236) -q.$3(o,n,12) -q.$3(o,i,12) -q.$3(o,h,205) -o=r.$2(13,237) -q.$3(o,n,13) -q.$3(o,i,13) -p.$3(r.$2(20,245),"az",21) -o=r.$2(21,245) -p.$3(o,"az",21) -p.$3(o,"09",21) -q.$3(o,"+-.",21) -return f}, -qy(a,b,c,d,e){var s,r,q,p,o,n=$.ri() -for(s=a.length,r=b;r=0&&d95?31:p] -d=o&31 -B.a.l(e,o>>>5,r)}return d}, -a7:function a7(a,b,c){this.a=a -this.b=b -this.c=c}, -lA:function lA(){}, -lB:function lB(){}, -i3:function i3(a,b){this.a=a -this.$ti=b}, -k_:function k_(a,b){this.a=a -this.b=b}, -bP:function bP(a,b){this.a=a -this.b=b}, -bQ:function bQ(a){this.a=a}, -lH:function lH(){}, -R:function R(){}, -dv:function dv(a){this.a=a}, -bw:function bw(){}, -bb:function bb(a,b,c,d){var _=this -_.a=a -_.b=b -_.c=c -_.d=d}, -cX:function cX(a,b,c,d,e,f){var _=this -_.e=a -_.f=b -_.a=c -_.b=d -_.c=e -_.d=f}, -fB:function fB(a,b,c,d,e){var _=this -_.f=a -_.a=b -_.b=c -_.c=d -_.d=e}, -fX:function fX(a,b,c,d){var _=this -_.a=a -_.b=b -_.c=c -_.d=d}, -hv:function hv(a){this.a=a}, -hr:function hr(a){this.a=a}, -bv:function bv(a){this.a=a}, -fg:function fg(a){this.a=a}, -h0:function h0(){}, -e6:function e6(){}, -lL:function lL(a){this.a=a}, -jG:function jG(a,b,c){this.a=a -this.b=b -this.c=c}, -fD:function fD(){}, -e:function e(){}, -a5:function a5(a,b,c){this.a=a -this.b=b -this.$ti=c}, -Q:function Q(){}, -r:function r(){}, -iM:function iM(){}, -aj:function aj(a){this.a=a}, -lf:function lf(a){this.a=a}, -lg:function lg(a){this.a=a}, -lh:function lh(a,b){this.a=a -this.b=b}, -eM:function eM(a,b,c,d,e,f,g){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=e -_.f=f -_.r=g -_.y=_.x=_.w=$}, -le:function le(a,b,c){this.a=a -this.b=b -this.c=c}, -n7:function n7(a){this.a=a}, -n8:function n8(){}, -n9:function n9(){}, -iA:function iA(a,b,c,d,e,f,g,h){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=e -_.f=f -_.r=g -_.w=h -_.x=null}, -hV:function hV(a,b,c,d,e,f,g){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=e -_.f=f -_.r=g -_.y=_.x=_.w=$}, -fu:function fu(a,b){this.a=a -this.$ti=b}, -rE(a){var s=new self.Blob(a) -return s}, -b7(a,b,c,d,e){var s=c==null?null:A.qC(new A.lJ(c),t.A) -s=new A.em(a,b,s,!1,e.h("em<0>")) -s.dz() -return s}, -qC(a,b){var s=$.E -if(s===B.d)return a -return s.dF(a,b)}, -q:function q(){}, -f_:function f_(){}, -f0:function f0(){}, -f1:function f1(){}, -bM:function bM(){}, -bc:function bc(){}, -fj:function fj(){}, -P:function P(){}, -cD:function cD(){}, -jz:function jz(){}, -at:function at(){}, -b1:function b1(){}, -fk:function fk(){}, -fl:function fl(){}, -fm:function fm(){}, -fq:function fq(){}, -dC:function dC(){}, -dD:function dD(){}, -fr:function fr(){}, -fs:function fs(){}, -p:function p(){}, -m:function m(){}, -f:function f(){}, -ax:function ax(){}, -cH:function cH(){}, -fw:function fw(){}, -fy:function fy(){}, -ay:function ay(){}, -fz:function fz(){}, -cb:function cb(){}, -cL:function cL(){}, -fK:function fK(){}, -fM:function fM(){}, -cV:function cV(){}, -cf:function cf(){}, -fN:function fN(){}, -jW:function jW(a){this.a=a}, -jX:function jX(a){this.a=a}, -fO:function fO(){}, -jY:function jY(a){this.a=a}, -jZ:function jZ(a){this.a=a}, -aA:function aA(){}, -fP:function fP(){}, -H:function H(){}, -dU:function dU(){}, -aB:function aB(){}, -h2:function h2(){}, -h8:function h8(){}, -kg:function kg(a){this.a=a}, -kh:function kh(a){this.a=a}, -ha:function ha(){}, -cZ:function cZ(){}, -d_:function d_(){}, -aD:function aD(){}, -hb:function hb(){}, -aE:function aE(){}, -hc:function hc(){}, -aF:function aF(){}, -hi:function hi(){}, -l4:function l4(a){this.a=a}, -l5:function l5(a){this.a=a}, -ao:function ao(){}, -aH:function aH(){}, -ap:function ap(){}, -hl:function hl(){}, -hm:function hm(){}, -hn:function hn(){}, -aI:function aI(){}, -ho:function ho(){}, -hp:function hp(){}, -hx:function hx(){}, -hB:function hB(){}, -bY:function bY(){}, -hS:function hS(){}, -ek:function ek(){}, -i5:function i5(){}, -et:function et(){}, -iD:function iD(){}, -iN:function iN(){}, -nL:function nL(a,b){this.a=a -this.$ti=b}, -lI:function lI(a,b,c,d){var _=this -_.a=a -_.b=b -_.c=c -_.$ti=d}, -em:function em(a,b,c,d,e){var _=this -_.a=0 -_.b=a -_.c=b -_.d=c -_.e=d -_.$ti=e}, -lJ:function lJ(a){this.a=a}, -lK:function lK(a){this.a=a}, -A:function A(){}, -dG:function dG(a,b,c){var _=this -_.a=a -_.b=b -_.c=-1 -_.d=null -_.$ti=c}, -hT:function hT(){}, -hX:function hX(){}, -hY:function hY(){}, -hZ:function hZ(){}, -i_:function i_(){}, -i1:function i1(){}, -i2:function i2(){}, -i6:function i6(){}, -i7:function i7(){}, -ig:function ig(){}, -ih:function ih(){}, -ii:function ii(){}, -ij:function ij(){}, -ik:function ik(){}, -il:function il(){}, -iq:function iq(){}, -ir:function ir(){}, -iz:function iz(){}, -ez:function ez(){}, -eA:function eA(){}, -iB:function iB(){}, -iC:function iC(){}, -iG:function iG(){}, -iP:function iP(){}, -iQ:function iQ(){}, -eF:function eF(){}, -eG:function eG(){}, -iR:function iR(){}, -iS:function iS(){}, -iX:function iX(){}, -iY:function iY(){}, -iZ:function iZ(){}, -j_:function j_(){}, -j0:function j0(){}, -j1:function j1(){}, -j2:function j2(){}, -j3:function j3(){}, -j4:function j4(){}, -j5:function j5(){}, -qj(a){var s,r,q -if(a==null)return a -if(typeof a=="string"||typeof a=="number"||A.c2(a))return a -if(A.qM(a))return A.aY(a) -s=Array.isArray(a) -s.toString -if(s){r=[] -q=0 -while(!0){s=a.length -s.toString -if(!(q")),r=new A.a9(s,b.h("a9<0>")),q=t.Y,p=t.A -A.b7(a,"success",q.a(new A.n5(a,r,b)),!1,p) -A.b7(a,"error",q.a(r.gfI()),!1,p) -return s}, -ta(a,b,c){var s=null,r=c.h("dl<0>"),q=new A.dl(s,s,s,s,r),p=t.Y,o=t.A -A.b7(a,"error",p.a(q.gfA()),!1,o) -A.b7(a,"success",p.a(new A.k2(a,q,b,c)),!1,o) -return new A.da(q,r.h("da<1>"))}, -bO:function bO(){}, -bn:function bn(){}, -bd:function bd(){}, -cK:function cK(){}, -n5:function n5(a,b,c){this.a=a -this.b=b -this.c=c}, -dI:function dI(){}, -dW:function dW(){}, -k2:function k2(a,b,c,d){var _=this -_.a=a -_.b=b -_.c=c -_.d=d}, -bs:function bs(){}, -e9:function e9(){}, -by:function by(){}, -uM(a){var s,r=a.$dart_jsFunction -if(r!=null)return r -s=function(b,c){return function(){return b(c,Array.prototype.slice.apply(arguments))}}(A.uI,a) -s[$.oI()]=a -a.$dart_jsFunction=s -return s}, -uI(a,b){t.j.a(b) -t.Z.a(a) -return A.td(a,b,null)}, -X(a,b){if(typeof a=="function")return a -else return b.a(A.uM(a))}, -qG(a,b,c,d){return d.a(a[b].apply(a,c))}, -nA(a,b){var s=new A.C($.E,b.h("C<0>")),r=new A.cn(s,b.h("cn<0>")) -a.then(A.bH(new A.nB(r,b),1),A.bH(new A.nC(r),1)) -return s}, -nB:function nB(a,b){this.a=a -this.b=b}, -nC:function nC(a){this.a=a}, -k0:function k0(a){this.a=a}, -ia:function ia(a){this.a=a}, -aL:function aL(){}, -fI:function fI(){}, -aN:function aN(){}, -fZ:function fZ(){}, -h3:function h3(){}, -hj:function hj(){}, -aQ:function aQ(){}, -hq:function hq(){}, -ib:function ib(){}, -ic:function ic(){}, -im:function im(){}, -io:function io(){}, -iK:function iK(){}, -iL:function iL(){}, -iT:function iT(){}, -iU:function iU(){}, -f4:function f4(){}, -f5:function f5(){}, -js:function js(a){this.a=a}, -jt:function jt(a){this.a=a}, -f6:function f6(){}, -bL:function bL(){}, -h_:function h_(){}, -hQ:function hQ(){}, -fY:function fY(){}, -hu:function hu(){}, -vi(a,b){var s,r,q,p,o,n,m,l -for(s=b.length,r=1;r=1;s=q){q=s-1 -if(b[q]!=null)break}p=new A.aj("") -o=""+(a+"(") -p.a=o -n=A.aa(b) -m=n.h("ci<1>") -l=new A.ci(b,0,s,m) -l.eu(b,0,s,n.c) -m=o+new A.ag(l,m.h("j(a4.E)").a(new A.nh()),m.h("ag")).aj(0,", ") -p.a=m -p.a=m+("): part "+(r-1)+" was null, but part "+r+" was not.") -throw A.b(A.ak(p.k(0),null))}}, -fh:function fh(a){this.a=a}, -jy:function jy(){}, -nh:function nh(){}, -cN:function cN(){}, -pj(a,b){var s,r,q,p,o,n,m=b.eg(a) -b.aB(a) -if(m!=null)a=B.b.a_(a,m.length) -s=t.s -r=A.u([],s) -q=A.u([],s) -s=a.length -if(s!==0){if(0>=s)return A.c(a,0) -p=b.a3(a.charCodeAt(0))}else p=!1 -if(p){if(0>=s)return A.c(a,0) -B.a.m(q,a[0]) -o=1}else{B.a.m(q,"") -o=0}for(n=o;n50)return B.b.p(s,0,50)+"..." -return s}, -vj(a){if(t.p.b(a))return"Blob("+a.length+")" -return A.uC(a)}, -qE(a){var s=a.$ti -return"["+new A.ag(a,s.h("j?(i.E)").a(new A.nk()),s.h("ag")).aj(0,", ")+"]"}, -nk:function nk(){}, -fn:function fn(){}, -hd:function hd(){}, -kj:function kj(a){this.a=a}, -kk:function kk(a){this.a=a}, -jD:function jD(){}, -rQ(a){var s=J.Y(a),r=s.i(a,"method"),q=s.i(a,"arguments") -if(r!=null)return new A.fv(A.U(r),q) -return null}, -fv:function fv(a,b){this.a=a -this.b=b}, -cG:function cG(a,b){this.a=a -this.b=b}, -he(a,b,c,d){var s=new A.bu(a,b,b,c) -s.b=d -return s}, -bu:function bu(a,b,c,d){var _=this -_.w=_.r=_.f=null -_.x=a -_.y=b -_.b=null -_.c=c -_.d=null -_.a=d}, -ky:function ky(){}, -kz:function kz(){}, -qm(a){var s=a.k(0) -return A.he("sqlite_error",null,s,a.c)}, -nc(a,b,c,d){var s,r,q,p -if(a instanceof A.bu){s=a.f -if(s==null)s=a.f=b -r=a.r -if(r==null)r=a.r=c -q=a.w -if(q==null)q=a.w=d -p=s==null -if(!p||r!=null||q!=null)if(a.y==null){r=A.W(t.N,t.X) -if(!p)r.l(0,"database",s.e3()) -s=a.r -if(s!=null)r.l(0,"sql",s) -s=a.w -if(s!=null)r.l(0,"arguments",s) -a.sfO(0,r)}return a}else if(a instanceof A.d1)return A.nc(A.qm(a),b,c,d) -else return A.nc(A.he("error",null,J.ba(a),null),b,c,d)}, -kX(a){return A.tH(a)}, -tH(a){var s=0,r=A.y(t.z),q,p=2,o,n,m,l,k,j,i,h -var $async$kX=A.z(function(b,c){if(b===1){o=c -s=p}while(true)switch(s){case 0:p=4 -s=7 -return A.o(A.ai(a),$async$kX) -case 7:n=c -q=n -s=1 -break -p=2 -s=6 -break -case 4:p=3 -h=o -m=A.T(h) -A.a0(h) -j=A.pq(a) -i=A.bU(a,"sql",t.N) -l=A.nc(m,j,i,A.hf(a)) -throw A.b(l) -s=6 -break -case 3:s=2 -break -case 6:case 1:return A.w(q,r) -case 2:return A.v(o,r)}}) -return A.x($async$kX,r)}, -e2(a,b){var s=A.kE(a) -return s.aZ(A.dq(J.ad(t.f.a(a.b),"transactionId")),new A.kD(b,s))}, -ch(a,b){return $.rh().a2(new A.kC(b),t.z)}, -ai(a){var s=0,r=A.y(t.z),q,p -var $async$ai=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:p=a.a -case 3:switch(p){case"openDatabase":s=5 -break -case"closeDatabase":s=6 -break -case"query":s=7 -break -case"queryCursorNext":s=8 -break -case"execute":s=9 -break -case"insert":s=10 -break -case"update":s=11 -break -case"batch":s=12 -break -case"getDatabasesPath":s=13 -break -case"deleteDatabase":s=14 -break -case"databaseExists":s=15 -break -case"options":s=16 -break -case"writeDatabaseBytes":s=17 -break -case"readDatabaseBytes":s=18 -break -case"debugMode":s=19 -break -default:s=20 -break}break -case 5:s=21 -return A.o(A.ch(a,A.tz(a)),$async$ai) -case 21:q=c -s=1 -break -case 6:s=22 -return A.o(A.ch(a,A.tt(a)),$async$ai) -case 22:q=c -s=1 -break -case 7:s=23 -return A.o(A.e2(a,A.tB(a)),$async$ai) -case 23:q=c -s=1 -break -case 8:s=24 -return A.o(A.e2(a,A.tC(a)),$async$ai) -case 24:q=c -s=1 -break -case 9:s=25 -return A.o(A.e2(a,A.tw(a)),$async$ai) -case 25:q=c -s=1 -break -case 10:s=26 -return A.o(A.e2(a,A.ty(a)),$async$ai) -case 26:q=c -s=1 -break -case 11:s=27 -return A.o(A.e2(a,A.tE(a)),$async$ai) -case 27:q=c -s=1 -break -case 12:s=28 -return A.o(A.e2(a,A.ts(a)),$async$ai) -case 28:q=c -s=1 -break -case 13:s=29 -return A.o(A.ch(a,A.tx(a)),$async$ai) -case 29:q=c -s=1 -break -case 14:s=30 -return A.o(A.ch(a,A.tv(a)),$async$ai) -case 30:q=c -s=1 -break -case 15:s=31 -return A.o(A.ch(a,A.tu(a)),$async$ai) -case 31:q=c -s=1 -break -case 16:s=32 -return A.o(A.ch(a,A.tA(a)),$async$ai) -case 32:q=c -s=1 -break -case 17:s=33 -return A.o(A.ch(a,A.tF(a)),$async$ai) -case 33:q=c -s=1 -break -case 18:s=34 -return A.o(A.ch(a,A.tD(a)),$async$ai) -case 34:q=c -s=1 -break -case 19:s=35 -return A.o(A.o_(a),$async$ai) -case 35:q=c -s=1 -break -case 20:throw A.b(A.ak("Invalid method "+p+" "+a.k(0),null)) -case 4:case 1:return A.w(q,r)}}) -return A.x($async$ai,r)}, -tz(a){return new A.kO(a)}, -kY(a){return A.tI(a)}, -tI(a){var s=0,r=A.y(t.f),q,p=2,o,n,m,l,k,j,i,h,g,f,e,d,c -var $async$kY=A.z(function(b,a0){if(b===1){o=a0 -s=p}while(true)switch(s){case 0:i=t.f.a(a.b) -h=J.Y(i) -g=A.U(h.i(i,"path")) -f=new A.kZ() -e=A.eR(h.i(i,"singleInstance")) -d=e===!0 -h=A.eR(h.i(i,"readOnly")) -if(d){l=$.ja.i(0,g) -if(l!=null){if($.nw>=2)l.ak("Reopening existing single database "+l.k(0)) -q=f.$1(l.e) -s=1 -break}}n=null -p=4 -e=$.aq -s=7 -return A.o((e==null?$.aq=A.cy():e).bA(i),$async$kY) -case 7:n=a0 -p=2 -s=6 -break -case 4:p=3 -c=o -i=A.T(c) -if(i instanceof A.d1){m=i -i=m -h=i.k(0) -throw A.b(A.he("sqlite_error",null,"open_failed: "+h,i.c))}else throw c -s=6 -break -case 3:s=2 -break -case 6:j=$.qs=$.qs+1 -i=n -e=$.nw -l=new A.aP(A.u([],t.it),A.nS(),j,d,g,h===!0,i,e,A.W(t.S,t.lz),A.nS()) -$.qH.l(0,j,l) -l.ak("Opening database "+l.k(0)) -if(d)$.ja.l(0,g,l) -q=f.$1(j) -s=1 -break -case 1:return A.w(q,r) -case 2:return A.v(o,r)}}) -return A.x($async$kY,r)}, -tt(a){return new A.kI(a)}, -nY(a){var s=0,r=A.y(t.z),q -var $async$nY=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:q=A.kE(a) -if(q.f){$.ja.K(0,q.r) -if($.qB==null)$.qB=new A.jD()}q.ab(0) -return A.w(null,r)}}) -return A.x($async$nY,r)}, -kE(a){var s=A.pq(a) -if(s==null)throw A.b(A.K("Database "+A.t(A.pr(a))+" not found")) -return s}, -pq(a){var s=A.pr(a) -if(s!=null)return $.qH.i(0,s) -return null}, -pr(a){var s=a.b -if(t.f.b(s))return A.dq(J.ad(s,"id")) -return null}, -bU(a,b,c){var s=a.b -if(t.f.b(s))return c.h("0?").a(J.ad(s,b)) -return null}, -tJ(a){var s,r="transactionId",q=a.b -if(t.f.b(q)){s=J.ab(q) -return s.D(q,r)&&s.i(q,r)==null}return!1}, -kG(a){var s,r,q=A.bU(a,"path",t.N) -if(q!=null&&q!==":memory:"&&$.oO().a.ae(q)<=0){if($.aq==null)$.aq=A.cy() -s=$.oO() -r=A.u(["/",q,null,null,null,null,null,null,null,null,null,null,null,null,null,null],t.mf) -A.vi("join",r) -q=s.hd(new A.ec(r,t.lS))}return q}, -hf(a){var s,r,q,p=A.bU(a,"arguments",t.j) -if(p!=null)for(s=J.ar(p),r=t.p;s.n();){q=s.gq(s) -if(q!=null)if(typeof q!="number")if(typeof q!="string")if(!r.b(q))if(!(q instanceof A.a7))throw A.b(A.ak("Invalid sql argument type '"+J.eZ(q).k(0)+"': "+A.t(q),null))}return p==null?null:J.jg(p,t.X)}, -tr(a){var s=A.u([],t.bw),r=t.f -r=J.jg(t.j.a(J.ad(r.a(a.b),"operations")),r) -r.B(r,new A.kF(s)) -return s}, -tB(a){return new A.kR(a)}, -o2(a,b){var s=0,r=A.y(t.z),q,p,o -var $async$o2=A.z(function(c,d){if(c===1)return A.v(d,r) -while(true)switch(s){case 0:o=A.bU(a,"sql",t.N) -o.toString -p=A.hf(a) -q=b.h_(A.dq(J.ad(t.f.a(a.b),"cursorPageSize")),o,p) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$o2,r)}, -tC(a){return new A.kQ(a)}, -o3(a,b){var s=0,r=A.y(t.z),q,p,o,n -var $async$o3=A.z(function(c,d){if(c===1)return A.v(d,r) -while(true)switch(s){case 0:b=A.kE(a) -p=t.f.a(a.b) -o=J.Y(p) -n=A.h(o.i(p,"cursorId")) -q=b.h0(A.eR(o.i(p,"cancel")),n) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$o3,r)}, -kB(a,b){var s=0,r=A.y(t.X),q,p -var $async$kB=A.z(function(c,d){if(c===1)return A.v(d,r) -while(true)switch(s){case 0:b=A.kE(a) -p=A.bU(a,"sql",t.N) -p.toString -s=3 -return A.o(b.fY(p,A.hf(a)),$async$kB) -case 3:q=null -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$kB,r)}, -tw(a){return new A.kL(a)}, -kW(a,b){return A.tG(a,b)}, -tG(a,b){var s=0,r=A.y(t.X),q,p=2,o,n,m,l,k -var $async$kW=A.z(function(c,d){if(c===1){o=d -s=p}while(true)switch(s){case 0:m=A.bU(a,"inTransaction",t.y) -l=m===!0&&A.tJ(a) -if(A.bG(l))b.b=++b.a -p=4 -s=7 -return A.o(A.kB(a,b),$async$kW) -case 7:p=2 -s=6 -break -case 4:p=3 -k=o -if(A.bG(l))b.b=null -throw k -s=6 -break -case 3:s=2 -break -case 6:if(A.bG(l)){q=A.az(["transactionId",b.b],t.N,t.X) -s=1 -break}else if(m===!1)b.b=null -q=null -s=1 -break -case 1:return A.w(q,r) -case 2:return A.v(o,r)}}) -return A.x($async$kW,r)}, -tA(a){return new A.kP(a)}, -l_(a){var s=0,r=A.y(t.z),q,p,o -var $async$l_=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:o=a.b -s=t.f.b(o)?3:4 -break -case 3:p=J.ab(o) -if(p.D(o,"logLevel")){p=A.dq(p.i(o,"logLevel")) -$.nw=p==null?0:p}p=$.aq -s=5 -return A.o((p==null?$.aq=A.cy():p).ct(o),$async$l_) -case 5:case 4:q=null -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$l_,r)}, -o_(a){var s=0,r=A.y(t.z),q -var $async$o_=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:if(J.ac(a.b,!0))$.nw=2 -q=null -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$o_,r)}, -ty(a){return new A.kN(a)}, -o1(a,b){var s=0,r=A.y(t.I),q,p -var $async$o1=A.z(function(c,d){if(c===1)return A.v(d,r) -while(true)switch(s){case 0:p=A.bU(a,"sql",t.N) -p.toString -q=b.fZ(p,A.hf(a)) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$o1,r)}, -tE(a){return new A.kT(a)}, -o4(a,b){var s=0,r=A.y(t.S),q,p -var $async$o4=A.z(function(c,d){if(c===1)return A.v(d,r) -while(true)switch(s){case 0:p=A.bU(a,"sql",t.N) -p.toString -q=b.h2(p,A.hf(a)) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$o4,r)}, -ts(a){return new A.kH(a)}, -tx(a){return new A.kM(a)}, -o0(a){var s=0,r=A.y(t.z),q -var $async$o0=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:if($.aq==null)$.aq=A.cy() -q="/" -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$o0,r)}, -tv(a){return new A.kK(a)}, -kV(a){var s=0,r=A.y(t.H),q=1,p,o,n,m,l,k,j -var $async$kV=A.z(function(b,c){if(b===1){p=c -s=q}while(true)switch(s){case 0:l=A.kG(a) -k=$.ja.i(0,l) -if(k!=null){k.ab(0) -$.ja.K(0,l)}q=3 -o=$.aq -if(o==null)o=$.aq=A.cy() -n=l -n.toString -s=6 -return A.o(o.bs(n),$async$kV) -case 6:q=1 -s=5 -break -case 3:q=2 -j=p -s=5 -break -case 2:s=1 -break -case 5:return A.w(null,r) -case 1:return A.v(p,r)}}) -return A.x($async$kV,r)}, -tu(a){return new A.kJ(a)}, -nZ(a){var s=0,r=A.y(t.y),q,p,o -var $async$nZ=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:p=A.kG(a) -o=$.aq -if(o==null)o=$.aq=A.cy() -p.toString -q=o.bv(p) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$nZ,r)}, -tD(a){return new A.kS(a)}, -l0(a){var s=0,r=A.y(t.f),q,p,o,n -var $async$l0=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:p=A.kG(a) -o=$.aq -if(o==null)o=$.aq=A.cy() -p.toString -n=A -s=3 -return A.o(o.bC(p),$async$l0) -case 3:q=n.az(["bytes",c],t.N,t.X) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$l0,r)}, -tF(a){return new A.kU(a)}, -o5(a){var s=0,r=A.y(t.H),q,p,o,n -var $async$o5=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:p=A.kG(a) -o=A.bU(a,"bytes",t.p) -n=$.aq -if(n==null)n=$.aq=A.cy() -p.toString -o.toString -q=n.bH(p,o) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$o5,r)}, -e3:function e3(){this.c=this.b=this.a=null}, -iE:function iE(a,b,c,d){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=!1}, -is:function is(a,b){this.a=a -this.b=b}, -aP:function aP(a,b,c,d,e,f,g,h,i,j){var _=this -_.a=0 -_.b=null -_.c=a -_.d=b -_.e=c -_.f=d -_.r=e -_.w=f -_.x=g -_.y=h -_.z=i -_.Q=0 -_.as=j}, -kt:function kt(a,b,c){this.a=a -this.b=b -this.c=c}, -kr:function kr(a){this.a=a}, -km:function km(a){this.a=a}, -ku:function ku(a,b,c){this.a=a -this.b=b -this.c=c}, -kx:function kx(a,b,c){this.a=a -this.b=b -this.c=c}, -kw:function kw(a,b,c,d){var _=this -_.a=a -_.b=b -_.c=c -_.d=d}, -kv:function kv(a,b,c){this.a=a -this.b=b -this.c=c}, -ks:function ks(a,b,c,d){var _=this -_.a=a -_.b=b -_.c=c -_.d=d}, -kq:function kq(){}, -kp:function kp(a,b){this.a=a -this.b=b}, -kn:function kn(a,b,c,d,e,f){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=e -_.f=f}, -ko:function ko(a,b){this.a=a -this.b=b}, -kD:function kD(a,b){this.a=a -this.b=b}, -kC:function kC(a){this.a=a}, -kO:function kO(a){this.a=a}, -kZ:function kZ(){}, -kI:function kI(a){this.a=a}, -kF:function kF(a){this.a=a}, -kR:function kR(a){this.a=a}, -kQ:function kQ(a){this.a=a}, -kL:function kL(a){this.a=a}, -kP:function kP(a){this.a=a}, -kN:function kN(a){this.a=a}, -kT:function kT(a){this.a=a}, -kH:function kH(a){this.a=a}, -kM:function kM(a){this.a=a}, -kK:function kK(a){this.a=a}, -kJ:function kJ(a){this.a=a}, -kS:function kS(a){this.a=a}, -kU:function kU(a){this.a=a}, -kl:function kl(a){this.a=a}, -kA:function kA(a){var _=this -_.a=a -_.b=$ -_.d=_.c=null}, -iF:function iF(){}, -j7(a){return A.uT(t.A.a(a))}, -uT(a8){var s=0,r=A.y(t.H),q=1,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7 -var $async$j7=A.z(function(a9,b0){if(a9===1){p=b0 -s=q}while(true)switch(s){case 0:t.hy.a(a8) -o=new A.bZ([],[]).au(a8.data,!0) -a1=a8.ports -a1.toString -n=J.bK(a1) -q=3 -s=typeof o=="string"?6:8 -break -case 6:J.cz(n,o) -s=7 -break -case 8:s=t.j.b(o)?9:11 -break -case 9:m=J.ad(o,0) -if(J.ac(m,"varSet")){l=t.f.a(J.ad(o,1)) -k=A.U(J.ad(l,"key")) -j=J.ad(l,"value") -A.aZ($.eU+" "+A.t(m)+" "+A.t(k)+": "+A.t(j)) -$.qT.l(0,k,j) -J.cz(n,null)}else if(J.ac(m,"varGet")){i=t.f.a(J.ad(o,1)) -h=A.U(J.ad(i,"key")) -g=$.qT.i(0,h) -A.aZ($.eU+" "+A.t(m)+" "+A.t(h)+": "+A.t(g)) -a1=t.N -J.cz(n,A.az(["result",A.az(["key",h,"value",g],a1,t.X)],a1,t.lb))}else{A.aZ($.eU+" "+A.t(m)+" unknown") -J.cz(n,null)}s=10 -break -case 11:s=t.f.b(o)?12:14 -break -case 12:f=A.rQ(o) -s=f!=null?15:17 -break -case 15:f=new A.fv(f.a,A.os(f.b)) -s=$.qA==null?18:19 -break -case 18:s=20 -return A.o(A.jb(new A.l1(),!0),$async$j7) -case 20:a1=b0 -$.qA=a1 -a1.toString -$.aq=new A.kA(a1) -case 19:e=new A.nd(n) -q=22 -s=25 -return A.o(A.kX(f),$async$j7) -case 25:d=b0 -d=A.ot(d) -e.$1(new A.cG(d,null)) -q=3 -s=24 -break -case 22:q=21 -a6=p -c=A.T(a6) -b=A.a0(a6) -a1=c -a3=b -a4=new A.cG($,$) -a5=A.W(t.N,t.X) -if(a1 instanceof A.bu){a5.l(0,"code",a1.x) -a5.l(0,"details",a1.y) -a5.l(0,"message",a1.a) -a5.l(0,"resultCode",a1.bO()) -a1=a1.d -a5.l(0,"transactionClosed",a1===!0)}else a5.l(0,"message",J.ba(a1)) -a1=$.qr -if(!(a1==null?$.qr=!0:a1)&&a3!=null)a5.l(0,"stackTrace",a3.k(0)) -a4.b=a5 -a4.a=null -e.$1(a4) -s=24 -break -case 21:s=3 -break -case 24:s=16 -break -case 17:A.aZ($.eU+" "+A.t(o)+" unknown") -J.cz(n,null) -case 16:s=13 -break -case 14:A.aZ($.eU+" "+A.t(o)+" map unknown") -J.cz(n,null) -case 13:case 10:case 7:q=1 -s=5 -break -case 3:q=2 -a7=p -a=A.T(a7) -a0=A.a0(a7) -A.aZ($.eU+" error caught "+A.t(a)+" "+A.t(a0)) -J.cz(n,null) -s=5 -break -case 2:s=1 -break -case 5:return A.w(null,r) -case 1:return A.v(p,r)}}) -return A.x($async$j7,r)}, -vM(a){var s,r -try{s=self -s.toString -A.b7(t.aD.a(s),"connect",t.Y.a(new A.nx()),!1,t.A)}catch(r){try{s=self -s.toString -J.rn(s,"message",A.oH())}catch(r){}}}, -nd:function nd(a){this.a=a}, -nx:function nx(){}, -qo(a){if(a==null)return!0 -else if(typeof a=="number"||typeof a=="string"||A.c2(a))return!0 -return!1}, -qt(a){var s,r=J.Y(a) -if(r.gj(a)===1){s=J.bK(r.gG(a)) -if(typeof s=="string")return B.b.I(s,"@") -throw A.b(A.bm(s,null,null))}return!1}, -ot(a){var s,r,q,p,o,n,m,l,k={} -if(A.qo(a))return a -a.toString -for(s=$.oN(),r=0;r<1;++r){q=s[r] -p=A.B(q).h("dm.T") -if(p.b(a))return A.az(["@"+q.a,t.dz.a(p.a(a)).k(0)],t.N,t.X)}if(t.f.b(a)){if(A.qt(a))return A.az(["@",a],t.N,t.X) -k.a=null -J.bk(a,new A.nb(k,a)) -s=k.a -if(s==null)s=a -return s}else if(t.j.b(a)){for(s=J.Y(a),p=t.z,o=null,n=0;n")),n=new A.a9(o,c.h("a9<0>")) -p.a=p.b=null -s=new A.kc(p) -r=t.Y -q=t.A -p.b=A.b7(a,"success",r.a(new A.kd(s,n,b,a,c)),!1,q) -p.a=A.b7(a,"error",r.a(new A.ke(p,s,n)),!1,q) -return o}, -kc:function kc(a){this.a=a}, -kd:function kd(a,b,c,d,e){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=e}, -kb:function kb(a,b,c){this.a=a -this.b=b -this.c=c}, -ke:function ke(a,b,c){this.a=a -this.b=b -this.c=c}, -dc:function dc(a,b){var _=this -_.c=_.b=_.a=null -_.d=a -_.$ti=b}, -lF:function lF(a,b){this.a=a -this.b=b}, -lG:function lG(a,b){this.a=a -this.b=b}, -jC:function jC(){}, -lk(a,b){var s=0,r=A.y(t.ax),q,p,o,n,m -var $async$lk=A.z(function(c,d){if(c===1)return A.v(d,r) -while(true)switch(s){case 0:o={} -b.B(0,new A.lm(o)) -p=t.N -p=new A.hF(A.W(p,t.Z),A.W(p,t.W)) -n=p -m=J -s=3 -return A.o(A.nA(self.WebAssembly.instantiateStreaming(a,o),t.ot),$async$lk) -case 3:n.ev(m.ru(d)) -q=p -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$lk,r)}, -n0:function n0(){}, -di:function di(){}, -hF:function hF(a,b){this.a=a -this.b=b}, -lm:function lm(a){this.a=a}, -ll:function ll(a){this.a=a}, -jV:function jV(){}, -cJ:function cJ(){}, -lo(a){var s=0,r=A.y(t.es),q,p,o -var $async$lo=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:p=t.d9 -o=A -s=3 -return A.o(A.nA(self.fetch(a.gdT()?p.a(new self.URL(a.k(0))):p.a(new self.URL(a.k(0),A.o8().k(0))),null),p),$async$lo) -case 3:q=o.ln(c) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$lo,r)}, -ln(a){var s=0,r=A.y(t.es),q,p,o -var $async$ln=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:p=A -o=A -s=3 -return A.o(A.lj(a),$async$ln) -case 3:q=new p.hG(new o.hH(c)) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$ln,r)}, -hG:function hG(a){this.a=a}, -lr:function lr(){}, -fC(a){var s=0,r=A.y(t.cF),q,p,o,n,m,l -var $async$fC=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:p=t.N -o=new A.jk(a) -n=A.rU() -m=$.oJ() -l=new A.cc(o,n,new A.cS(t.h),A.t5(p),A.W(p,t.S),m,"indexeddb") -s=3 -return A.o(o.bz(0),$async$fC) -case 3:s=4 -return A.o(l.aU(),$async$fC) -case 4:q=l -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$fC,r)}, -jk:function jk(a){this.a=null -this.b=a}, -jp:function jp(){}, -jo:function jo(a){this.a=a}, -jl:function jl(a){this.a=a}, -jq:function jq(a,b,c,d){var _=this -_.a=a -_.b=b -_.c=c -_.d=d}, -jn:function jn(a,b){this.a=a -this.b=b}, -jm:function jm(a,b){this.a=a -this.b=b}, -b8:function b8(){}, -lM:function lM(a,b,c){this.a=a -this.b=b -this.c=c}, -lN:function lN(a,b){this.a=a -this.b=b}, -ip:function ip(a,b){this.a=a -this.b=b}, -cc:function cc(a,b,c,d,e,f,g){var _=this -_.d=a -_.f=null -_.r=b -_.w=c -_.x=d -_.y=e -_.b=f -_.a=g}, -jK:function jK(a){this.a=a}, -jL:function jL(){}, -i9:function i9(a,b,c){this.a=a -this.b=b -this.c=c}, -m0:function m0(a,b){this.a=a -this.b=b}, -a8:function a8(){}, -de:function de(a,b){var _=this -_.w=a -_.d=b -_.c=_.b=_.a=null}, -dd:function dd(a,b,c){var _=this -_.w=a -_.x=b -_.d=c -_.c=_.b=_.a=null}, -cp:function cp(a,b,c){var _=this -_.w=a -_.x=b -_.d=c -_.c=_.b=_.a=null}, -cw:function cw(a,b,c,d,e){var _=this -_.w=a -_.x=b -_.y=c -_.z=d -_.d=e -_.c=_.b=_.a=null}, -rU(){var s=$.oJ() -return new A.fA(A.W(t.N,t.nh),s,"dart-memory")}, -fA:function fA(a,b,c){this.d=a -this.b=b -this.a=c}, -i8:function i8(a,b,c){var _=this -_.a=a -_.b=b -_.c=c -_.d=0}, -lj(c2){var s=0,r=A.y(t.n0),q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,c0,c1 -var $async$lj=A.z(function(c3,c4){if(c3===1)return A.v(c4,r) -while(true)switch(s){case 0:c0=A.u6() -c1=c0.b -c1===$&&A.bj("injectedValues") -s=3 -return A.o(A.lk(c2,c1),$async$lj) -case 3:p=c4 -c1=c0.c -c1===$&&A.bj("memory") -o=p.a -n=o.i(0,"dart_sqlite3_malloc") -n.toString -m=o.i(0,"dart_sqlite3_free") -m.toString -o.i(0,"dart_sqlite3_create_scalar_function").toString -o.i(0,"dart_sqlite3_create_aggregate_function").toString -o.i(0,"dart_sqlite3_create_window_function").toString -o.i(0,"dart_sqlite3_create_collation").toString -l=o.i(0,"dart_sqlite3_register_vfs") -l.toString -o.i(0,"sqlite3_vfs_unregister").toString -k=o.i(0,"dart_sqlite3_updates") -k.toString -o.i(0,"sqlite3_libversion").toString -o.i(0,"sqlite3_sourceid").toString -o.i(0,"sqlite3_libversion_number").toString -j=o.i(0,"sqlite3_open_v2") -j.toString -i=o.i(0,"sqlite3_close_v2") -i.toString -h=o.i(0,"sqlite3_extended_errcode") -h.toString -g=o.i(0,"sqlite3_errmsg") -g.toString -f=o.i(0,"sqlite3_errstr") -f.toString -e=o.i(0,"sqlite3_extended_result_codes") -e.toString -d=o.i(0,"sqlite3_exec") -d.toString -o.i(0,"sqlite3_free").toString -c=o.i(0,"sqlite3_prepare_v3") -c.toString -b=o.i(0,"sqlite3_bind_parameter_count") -b.toString -a=o.i(0,"sqlite3_column_count") -a.toString -a0=o.i(0,"sqlite3_column_name") -a0.toString -a1=o.i(0,"sqlite3_reset") -a1.toString -a2=o.i(0,"sqlite3_step") -a2.toString -a3=o.i(0,"sqlite3_finalize") -a3.toString -a4=o.i(0,"sqlite3_column_type") -a4.toString -a5=o.i(0,"sqlite3_column_int64") -a5.toString -a6=o.i(0,"sqlite3_column_double") -a6.toString -a7=o.i(0,"sqlite3_column_bytes") -a7.toString -a8=o.i(0,"sqlite3_column_blob") -a8.toString -a9=o.i(0,"sqlite3_column_text") -a9.toString -b0=o.i(0,"sqlite3_bind_null") -b0.toString -b1=o.i(0,"sqlite3_bind_int64") -b1.toString -b2=o.i(0,"sqlite3_bind_double") -b2.toString -b3=o.i(0,"sqlite3_bind_text") -b3.toString -b4=o.i(0,"sqlite3_bind_blob64") -b4.toString -b5=o.i(0,"sqlite3_bind_parameter_index") -b5.toString -b6=o.i(0,"sqlite3_changes") -b6.toString -b7=o.i(0,"sqlite3_last_insert_rowid") -b7.toString -b8=o.i(0,"sqlite3_user_data") -b8.toString -o.i(0,"sqlite3_result_null").toString -o.i(0,"sqlite3_result_int64").toString -o.i(0,"sqlite3_result_double").toString -o.i(0,"sqlite3_result_text").toString -o.i(0,"sqlite3_result_blob64").toString -o.i(0,"sqlite3_result_error").toString -o.i(0,"sqlite3_value_type").toString -o.i(0,"sqlite3_value_int64").toString -o.i(0,"sqlite3_value_double").toString -o.i(0,"sqlite3_value_bytes").toString -o.i(0,"sqlite3_value_text").toString -o.i(0,"sqlite3_value_blob").toString -o.i(0,"sqlite3_aggregate_context").toString -b9=o.i(0,"sqlite3_get_autocommit") -b9.toString -o.i(0,"sqlite3_stmt_isexplain").toString -o.i(0,"sqlite3_stmt_readonly").toString -o=o.i(0,"dart_sqlite3_db_config_int") -p.b.i(0,"sqlite3_temp_directory").toString -q=c0.a=new A.hD(c1,c0.d,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a4,a5,a6,a7,a9,a8,b0,b1,b2,b3,b4,b5,a3,b6,b7,b8,b9,o) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$lj,r)}, -aK(a){var s,r,q -try{a.$0() -return 0}catch(r){q=A.T(r) -if(q instanceof A.eb){s=q -return s.a}else return 1}}, -ob(a,b){var s=A.b5(t.J.a(a.buffer),b,null),r=s.length,q=0 -while(!0){if(!(q=65&&a<=90))s=a>=97&&a<=122 -else s=!0 -return s}, -vv(a,b){var s,r,q=null,p=a.length,o=b+2 -if(p=0&&b=0&&s").t(b).h("b0<1,2>"))}, -m(a,b){A.aa(a).c.a(b) -if(!!a.fixed$length)A.O(A.F("add")) -a.push(b)}, -hv(a,b){var s -if(!!a.fixed$length)A.O(A.F("removeAt")) -s=a.length -if(b>=s)throw A.b(A.pm(b,null)) -return a.splice(b,1)[0]}, -h4(a,b,c){var s,r -A.aa(a).h("e<1>").a(c) -if(!!a.fixed$length)A.O(A.F("insertAll")) -A.to(b,0,a.length,"index") -if(!t.O.b(c))c=J.rC(c) -s=J.a1(c) -a.length=a.length+s -r=b+s -this.M(a,r,a.length,a,b) -this.U(a,b,r,c)}, -K(a,b){var s -if(!!a.fixed$length)A.O(A.F("remove")) -for(s=0;s").a(b) -if(!!a.fixed$length)A.O(A.F("addAll")) -if(Array.isArray(b)){this.eC(a,b) -return}for(s=J.ar(b);s.n();)a.push(s.gq(s))}, -eC(a,b){var s,r -t.b.a(b) -s=b.length -if(s===0)return -if(a===b)throw A.b(A.as(a)) -for(r=0;r").t(c).h("ag<1,2>"))}, -aj(a,b){var s,r=A.dO(a.length,"",!1,t.N) -for(s=0;s=0&&b0)return a[0] -throw A.b(A.bp())}, -ga4(a){var s=a.length -if(s>0)return a[s-1] -throw A.b(A.bp())}, -M(a,b,c,d,e){var s,r,q,p,o -A.aa(a).h("e<1>").a(d) -if(!!a.immutable$list)A.O(A.F("setRange")) -A.cg(b,c,a.length) -s=c-b -if(s===0)return -A.aC(e,"skipCount") -if(t.j.b(d)){r=d -q=e}else{r=J.nJ(d,e).aG(0,!1) -q=0}p=J.Y(r) -if(q+s>p.gj(r))throw A.b(A.p8()) -if(q=0;--o)a[b+o]=p.i(r,q+o) -else for(o=0;o0){a[0]=q -a[1]=r}return}if(n.c.b(null)){for(p=0,o=0;o0)this.fi(a,p)}, -ei(a){return this.ej(a,null)}, -fi(a,b){var s,r=a.length -for(;s=r-1,r>0;r=s)if(a[s]===null){a[s]=void 0;--b -if(b===0)break}}, -he(a,b){var s,r=a.length,q=r-1 -if(q<0)return-1 -q>=r -for(s=q;s>=0;--s){if(!(s"))}, -gA(a){return A.dY(a)}, -gj(a){return a.length}, -i(a,b){if(!(b>=0&&b=0&&b=p){r.scV(null) -return!1}r.scV(q[s]);++r.c -return!0}, -scV(a){this.d=this.$ti.h("1?").a(a)}, -$iL:1} -J.cO.prototype={ -a0(a,b){var s -A.uD(b) -if(ab)return 1 -else if(a===b){if(a===0){s=this.gcB(b) -if(this.gcB(a)===s)return 0 -if(this.gcB(a))return-1 -return 1}return 0}else if(isNaN(a)){if(isNaN(b))return 0 -return 1}else return-1}, -gcB(a){return a===0?1/a<0:a<0}, -fF(a){var s,r -if(a>=0){if(a<=2147483647){s=a|0 -return a===s?s:s+1}}else if(a>=-2147483648)return a|0 -r=Math.ceil(a) -if(isFinite(r))return r -throw A.b(A.F(""+a+".ceil()"))}, -k(a){if(a===0&&1/a<0)return"-0.0" -else return""+a}, -gA(a){var s,r,q,p,o=a|0 -if(a===o)return o&536870911 -s=Math.abs(a) -r=Math.log(s)/0.6931471805599453|0 -q=Math.pow(2,r) -p=s<1?s/q:q/s -return((p*9007199254740992|0)+(p*3542243181176521|0))*599197+r*1259&536870911}, -a5(a,b){var s=a%b -if(s===0)return 0 -if(s>0)return s -return s+b}, -es(a,b){if((a|0)===a)if(b>=1||b<-1)return a/b|0 -return this.dt(a,b)}, -H(a,b){return(a|0)===a?a/b|0:this.dt(a,b)}, -dt(a,b){var s=a/b -if(s>=-2147483648&&s<=2147483647)return s|0 -if(s>0){if(s!==1/0)return Math.floor(s)}else if(s>-1/0)return Math.ceil(s) -throw A.b(A.F("Result of truncating division is "+A.t(s)+": "+A.t(a)+" ~/ "+b))}, -aK(a,b){if(b<0)throw A.b(A.nj(b)) -return b>31?0:a<>>0}, -aL(a,b){var s -if(b<0)throw A.b(A.nj(b)) -if(a>0)s=this.ci(a,b) -else{s=b>31?31:b -s=a>>s>>>0}return s}, -R(a,b){var s -if(a>0)s=this.ci(a,b) -else{s=b>31?31:b -s=a>>s>>>0}return s}, -fs(a,b){if(0>b)throw A.b(A.nj(b)) -return this.ci(a,b)}, -ci(a,b){return b>31?0:a>>>b}, -gF(a){return A.bh(t.cZ)}, -$ial:1, -$iN:1, -$iZ:1} -J.dK.prototype={ -gdG(a){var s,r=a<0?-a-1:a,q=r -for(s=32;q>=4294967296;){q=this.H(q,4294967296) -s+=32}return s-Math.clz32(q)}, -gF(a){return A.bh(t.S)}, -$iS:1, -$id:1} -J.fG.prototype={ -gF(a){return A.bh(t.i)}, -$iS:1} -J.bR.prototype={ -fG(a,b){if(b<0)throw A.b(A.eV(a,b)) -if(b>=a.length)A.O(A.eV(a,b)) -return a.charCodeAt(b)}, -dE(a,b){return new A.iI(b,a,0)}, -b5(a,b){return a+b}, -dK(a,b){var s=b.length,r=a.length -if(s>r)return!1 -return b===this.a_(a,r-s)}, -aE(a,b,c,d){var s=A.cg(b,c,a.length) -return a.substring(0,b)+d+a.substring(s)}, -J(a,b,c){var s -if(c<0||c>a.length)throw A.b(A.am(c,0,a.length,null,null)) -s=c+b.length -if(s>a.length)return!1 -return b===a.substring(c,s)}, -I(a,b){return this.J(a,b,0)}, -p(a,b,c){return a.substring(b,A.cg(b,c,a.length))}, -a_(a,b){return this.p(a,b,null)}, -hB(a){var s,r,q,p=a.trim(),o=p.length -if(o===0)return p -if(0>=o)return A.c(p,0) -if(p.charCodeAt(0)===133){s=J.t1(p,1) -if(s===o)return""}else s=0 -r=o-1 -if(!(r>=0))return A.c(p,r) -q=p.charCodeAt(r)===133?J.t2(p,r):o -if(s===0&&q===o)return p -return p.substring(s,q)}, -b6(a,b){var s,r -if(0>=b)return"" -if(b===1||a.length===0)return a -if(b!==b>>>0)throw A.b(B.U) -for(s=a,r="";!0;){if((b&1)===1)r=s+r -b=b>>>1 -if(b===0)break -s+=s}return r}, -hp(a,b,c){var s=b-a.length -if(s<=0)return a -return this.b6(c,s)+a}, -ai(a,b,c){var s -if(c<0||c>a.length)throw A.b(A.am(c,0,a.length,null,null)) -s=a.indexOf(b,c) -return s}, -cv(a,b){return this.ai(a,b,0)}, -N(a,b){return A.vO(a,b,0)}, -a0(a,b){var s -A.U(b) -if(a===b)s=0 -else s=a>6}r=r+((r&67108863)<<3)&536870911 -r^=r>>11 -return r+((r&16383)<<15)&536870911}, -gF(a){return A.bh(t.N)}, -gj(a){return a.length}, -$iS:1, -$ial:1, -$ik4:1, -$ij:1} -A.c_.prototype={ -gC(a){var s=A.B(this) -return new A.dx(J.ar(this.gaa()),s.h("@<1>").t(s.y[1]).h("dx<1,2>"))}, -gj(a){return J.a1(this.gaa())}, -Z(a,b){var s=A.B(this) -return A.fb(J.nJ(this.gaa(),b),s.c,s.y[1])}, -u(a,b){return A.B(this).y[1].a(J.jh(this.gaa(),b))}, -gv(a){return A.B(this).y[1].a(J.bK(this.gaa()))}, -N(a,b){return J.nI(this.gaa(),b)}, -k(a){return J.ba(this.gaa())}} -A.dx.prototype={ -n(){return this.a.n()}, -gq(a){var s=this.a -return this.$ti.y[1].a(s.gq(s))}, -$iL:1} -A.c5.prototype={ -gaa(){return this.a}} -A.el.prototype={$il:1} -A.eh.prototype={ -i(a,b){return this.$ti.y[1].a(J.ad(this.a,b))}, -l(a,b,c){var s=this.$ti -J.nH(this.a,b,s.c.a(s.y[1].a(c)))}, -M(a,b,c,d,e){var s=this.$ti -J.rA(this.a,b,c,A.fb(s.h("e<2>").a(d),s.y[1],s.c),e)}, -U(a,b,c,d){return this.M(0,b,c,d,0)}, -$il:1, -$in:1} -A.b0.prototype={ -bp(a,b){return new A.b0(this.a,this.$ti.h("@<1>").t(b).h("b0<1,2>"))}, -gaa(){return this.a}} -A.dy.prototype={ -D(a,b){return J.rr(this.a,b)}, -i(a,b){return this.$ti.h("4?").a(J.ad(this.a,b))}, -B(a,b){J.bk(this.a,new A.jx(this,this.$ti.h("~(3,4)").a(b)))}, -gG(a){var s=this.$ti -return A.fb(J.oT(this.a),s.c,s.y[2])}, -gO(a){var s=this.$ti -return A.fb(J.rv(this.a),s.y[1],s.y[3])}, -gj(a){return J.a1(this.a)}, -gav(a){return J.oS(this.a).ad(0,new A.jw(this),this.$ti.h("a5<3,4>"))}} -A.jx.prototype={ -$2(a,b){var s=this.a.$ti -s.c.a(a) -s.y[1].a(b) -this.b.$2(s.y[2].a(a),s.y[3].a(b))}, -$S(){return this.a.$ti.h("~(1,2)")}} -A.jw.prototype={ -$1(a){var s,r=this.a.$ti -r.h("a5<1,2>").a(a) -s=r.y[3] -return new A.a5(r.y[2].a(a.a),s.a(a.b),r.h("@<3>").t(s).h("a5<1,2>"))}, -$S(){return this.a.$ti.h("a5<3,4>(a5<1,2>)")}} -A.ce.prototype={ -k(a){return"LateInitializationError: "+this.a}} -A.dz.prototype={ -gj(a){return this.a.length}, -i(a,b){var s=this.a -if(!(b>=0&&b"))}, -gv(a){if(this.gj(this)===0)throw A.b(A.bp()) -return this.u(0,0)}, -N(a,b){var s,r=this,q=r.gj(r) -for(s=0;s").t(c).h("ag<1,2>"))}, -Z(a,b){return A.e8(this,b,null,A.B(this).h("a4.E"))}} -A.ci.prototype={ -eu(a,b,c,d){var s,r=this.b -A.aC(r,"start") -s=this.c -if(s!=null){A.aC(s,"end") -if(r>s)throw A.b(A.am(r,0,s,"start",null))}}, -geW(){var s=J.a1(this.a),r=this.c -if(r==null||r>s)return s -return r}, -gfu(){var s=J.a1(this.a),r=this.b -if(r>s)return s -return r}, -gj(a){var s,r=J.a1(this.a),q=this.b -if(q>=r)return 0 -s=this.c -if(s==null||s>=r)return r-q -if(typeof s!=="number")return s.aN() -return s-q}, -u(a,b){var s=this,r=s.gfu()+b -if(b<0||r>=s.geW())throw A.b(A.V(b,s.gj(0),s,null,"index")) -return J.jh(s.a,r)}, -Z(a,b){var s,r,q=this -A.aC(b,"count") -s=q.b+b -r=q.c -if(r!=null&&s>=r)return new A.c8(q.$ti.h("c8<1>")) -return A.e8(q.a,s,r,q.$ti.c)}, -aG(a,b){var s,r,q,p=this,o=p.b,n=p.a,m=J.Y(n),l=m.gj(n),k=p.c -if(k!=null&&k=o){r.saP(null) -return!1}r.saP(p.u(q,s));++r.c -return!0}, -saP(a){this.d=this.$ti.h("1?").a(a)}, -$iL:1} -A.br.prototype={ -gC(a){var s=A.B(this) -return new A.dQ(J.ar(this.a),this.b,s.h("@<1>").t(s.y[1]).h("dQ<1,2>"))}, -gj(a){return J.a1(this.a)}, -gv(a){return this.b.$1(J.bK(this.a))}, -u(a,b){return this.b.$1(J.jh(this.a,b))}} -A.c7.prototype={$il:1} -A.dQ.prototype={ -n(){var s=this,r=s.b -if(r.n()){s.saP(s.c.$1(r.gq(r))) -return!0}s.saP(null) -return!1}, -gq(a){var s=this.a -return s==null?this.$ti.y[1].a(s):s}, -saP(a){this.a=this.$ti.h("2?").a(a)}, -$iL:1} -A.ag.prototype={ -gj(a){return J.a1(this.a)}, -u(a,b){return this.b.$1(J.jh(this.a,b))}} -A.lq.prototype={ -gC(a){return new A.cl(J.ar(this.a),this.b,this.$ti.h("cl<1>"))}, -ad(a,b,c){var s=this.$ti -return new A.br(this,s.t(c).h("1(2)").a(b),s.h("@<1>").t(c).h("br<1,2>"))}} -A.cl.prototype={ -n(){var s,r -for(s=this.a,r=this.b;s.n();)if(A.bG(r.$1(s.gq(s))))return!0 -return!1}, -gq(a){var s=this.a -return s.gq(s)}, -$iL:1} -A.bt.prototype={ -Z(a,b){A.ji(b,"count",t.S) -A.aC(b,"count") -return new A.bt(this.a,this.b+b,A.B(this).h("bt<1>"))}, -gC(a){return new A.e1(J.ar(this.a),this.b,A.B(this).h("e1<1>"))}} -A.cF.prototype={ -gj(a){var s=J.a1(this.a)-this.b -if(s>=0)return s -return 0}, -Z(a,b){A.ji(b,"count",t.S) -A.aC(b,"count") -return new A.cF(this.a,this.b+b,this.$ti)}, -$il:1} -A.e1.prototype={ -n(){var s,r -for(s=this.a,r=0;r"))}, -Z(a,b){A.aC(b,"count") -return this}} -A.dE.prototype={ -n(){return!1}, -gq(a){throw A.b(A.bp())}, -$iL:1} -A.ec.prototype={ -gC(a){return new A.ed(J.ar(this.a),this.$ti.h("ed<1>"))}} -A.ed.prototype={ -n(){var s,r -for(s=this.a,r=this.$ti.c;s.n();)if(r.b(s.gq(s)))return!0 -return!1}, -gq(a){var s=this.a -return this.$ti.c.a(s.gq(s))}, -$iL:1} -A.au.prototype={} -A.bX.prototype={ -l(a,b,c){A.B(this).h("bX.E").a(c) -throw A.b(A.F("Cannot modify an unmodifiable list"))}, -M(a,b,c,d,e){A.B(this).h("e").a(d) -throw A.b(A.F("Cannot modify an unmodifiable list"))}, -U(a,b,c,d){return this.M(0,b,c,d,0)}} -A.d7.prototype={} -A.ie.prototype={ -gj(a){return J.a1(this.a)}, -u(a,b){var s=J.a1(this.a) -if(0>b||b>=s)A.O(A.V(b,s,this,null,"index")) -return b}} -A.dN.prototype={ -i(a,b){return this.D(0,b)?J.ad(this.a,A.h(b)):null}, -gj(a){return J.a1(this.a)}, -gO(a){return A.e8(this.a,0,null,this.$ti.c)}, -gG(a){return new A.ie(this.a)}, -D(a,b){return A.j8(b)&&b>=0&&b>"))}, -fP(a){var s=this -return function(){var r=a -var q=0,p=1,o,n,m,l,k,j -return function $async$gav(b,c,d){if(c===1){o=d -q=p}while(true)switch(q){case 0:n=s.gG(s),n=n.gC(n),m=A.B(s),l=m.y[1],m=m.h("@<1>").t(l).h("a5<1,2>") -case 2:if(!n.n()){q=3 -break}k=n.gq(n) -j=s.i(0,k) -q=4 -return b.b=new A.a5(k,j==null?l.a(j):j,m),1 -case 4:q=2 -break -case 3:return 0 -case 1:return b.c=o,3}}}}, -$iJ:1} -A.c6.prototype={ -gj(a){return this.b.length}, -gdd(){var s=this.$keys -if(s==null){s=Object.keys(this.a) -this.$keys=s}return s}, -D(a,b){if(typeof b!="string")return!1 -if("__proto__"===b)return!1 -return this.a.hasOwnProperty(b)}, -i(a,b){if(!this.D(0,b))return null -return this.b[this.a[b]]}, -B(a,b){var s,r,q,p -this.$ti.h("~(1,2)").a(b) -s=this.gdd() -r=this.b -for(q=s.length,p=0;p"))}, -gO(a){return new A.cs(this.b,this.$ti.h("cs<2>"))}} -A.cs.prototype={ -gj(a){return this.a.length}, -gC(a){var s=this.a -return new A.en(s,s.length,this.$ti.h("en<1>"))}} -A.en.prototype={ -gq(a){var s=this.d -return s==null?this.$ti.c.a(s):s}, -n(){var s=this,r=s.c -if(r>=s.b){s.saQ(null) -return!1}s.saQ(s.a[r]);++s.c -return!0}, -saQ(a){this.d=this.$ti.h("1?").a(a)}, -$iL:1} -A.fF.prototype={ -ghh(){var s=this.a -return s}, -ghr(){var s,r,q,p,o=this -if(o.c===1)return B.D -s=o.d -r=s.length-o.e.length-o.f -if(r===0)return B.D -q=[] -for(p=0;p=0&&l>>0}, -k(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.k6(this.a)+"'")}} -A.hU.prototype={ -k(a){return"Reading static variable '"+this.a+"' during its initialization"}} -A.h9.prototype={ -k(a){return"RuntimeError: "+this.a}} -A.hO.prototype={ -k(a){return"Assertion failed: "+A.c9(this.a)}} -A.mL.prototype={} -A.b2.prototype={ -gj(a){return this.a}, -ghb(a){return this.a!==0}, -gG(a){return new A.b3(this,A.B(this).h("b3<1>"))}, -gO(a){var s=A.B(this) -return A.pg(new A.b3(this,s.h("b3<1>")),new A.jP(this),s.c,s.y[1])}, -D(a,b){var s,r -if(typeof b=="string"){s=this.b -if(s==null)return!1 -return s[b]!=null}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=this.c -if(r==null)return!1 -return r[b]!=null}else return this.h7(b)}, -h7(a){var s=this.d -if(s==null)return!1 -return this.bx(s[this.bw(a)],a)>=0}, -aW(a,b){J.bk(A.B(this).h("J<1,2>").a(b),new A.jO(this))}, -i(a,b){var s,r,q,p,o=null -if(typeof b=="string"){s=this.b -if(s==null)return o -r=s[b] -q=r==null?o:r.b -return q}else if(typeof b=="number"&&(b&0x3fffffff)===b){p=this.c -if(p==null)return o -r=p[b] -q=r==null?o:r.b -return q}else return this.h8(b)}, -h8(a){var s,r,q=this.d -if(q==null)return null -s=q[this.bw(a)] -r=this.bx(s,a) -if(r<0)return null -return s[r].b}, -l(a,b,c){var s,r,q=this,p=A.B(q) -p.c.a(b) -p.y[1].a(c) -if(typeof b=="string"){s=q.b -q.cW(s==null?q.b=q.cd():s,b,c)}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=q.c -q.cW(r==null?q.c=q.cd():r,b,c)}else q.ha(b,c)}, -ha(a,b){var s,r,q,p,o=this,n=A.B(o) -n.c.a(a) -n.y[1].a(b) -s=o.d -if(s==null)s=o.d=o.cd() -r=o.bw(a) -q=s[r] -if(q==null)s[r]=[o.ce(a,b)] -else{p=o.bx(q,a) -if(p>=0)q[p].b=b -else q.push(o.ce(a,b))}}, -ht(a,b,c){var s,r,q=this,p=A.B(q) -p.c.a(b) -p.h("2()").a(c) -if(q.D(0,b)){s=q.i(0,b) -return s==null?p.y[1].a(s):s}r=c.$0() -q.l(0,b,r) -return r}, -K(a,b){var s=this -if(typeof b=="string")return s.dl(s.b,b) -else if(typeof b=="number"&&(b&0x3fffffff)===b)return s.dl(s.c,b) -else return s.h9(b)}, -h9(a){var s,r,q,p,o=this,n=o.d -if(n==null)return null -s=o.bw(a) -r=n[s] -q=o.bx(r,a) -if(q<0)return null -p=r.splice(q,1)[0] -o.dA(p) -if(r.length===0)delete n[s] -return p.b}, -B(a,b){var s,r,q=this -A.B(q).h("~(1,2)").a(b) -s=q.e -r=q.r -for(;s!=null;){b.$2(s.a,s.b) -if(r!==q.r)throw A.b(A.as(q)) -s=s.c}}, -cW(a,b,c){var s,r=A.B(this) -r.c.a(b) -r.y[1].a(c) -s=a[b] -if(s==null)a[b]=this.ce(b,c) -else s.b=c}, -dl(a,b){var s -if(a==null)return null -s=a[b] -if(s==null)return null -this.dA(s) -delete a[b] -return s.b}, -df(){this.r=this.r+1&1073741823}, -ce(a,b){var s=this,r=A.B(s),q=new A.jQ(r.c.a(a),r.y[1].a(b)) -if(s.e==null)s.e=s.f=q -else{r=s.f -r.toString -q.d=r -s.f=r.c=q}++s.a -s.df() -return q}, -dA(a){var s=this,r=a.d,q=a.c -if(r==null)s.e=q -else r.c=q -if(q==null)s.f=r -else q.d=r;--s.a -s.df()}, -bw(a){return J.bl(a)&1073741823}, -bx(a,b){var s,r -if(a==null)return-1 -s=a.length -for(r=0;r"]=s -delete s[""] -return s}, -$ipe:1} -A.jP.prototype={ -$1(a){var s=this.a,r=A.B(s) -s=s.i(0,r.c.a(a)) -return s==null?r.y[1].a(s):s}, -$S(){return A.B(this.a).h("2(1)")}} -A.jO.prototype={ -$2(a,b){var s=this.a,r=A.B(s) -s.l(0,r.c.a(a),r.y[1].a(b))}, -$S(){return A.B(this.a).h("~(1,2)")}} -A.jQ.prototype={} -A.b3.prototype={ -gj(a){return this.a.a}, -gC(a){var s=this.a,r=new A.dM(s,s.r,this.$ti.h("dM<1>")) -r.c=s.e -return r}, -N(a,b){return this.a.D(0,b)}} -A.dM.prototype={ -gq(a){return this.d}, -n(){var s,r=this,q=r.a -if(r.b!==q.r)throw A.b(A.as(q)) -s=r.c -if(s==null){r.saQ(null) -return!1}else{r.saQ(s.a) -r.c=s.c -return!0}}, -saQ(a){this.d=this.$ti.h("1?").a(a)}, -$iL:1} -A.nr.prototype={ -$1(a){return this.a(a)}, -$S:64} -A.ns.prototype={ -$2(a,b){return this.a(a,b)}, -$S:37} -A.nt.prototype={ -$1(a){return this.a(A.U(a))}, -$S:74} -A.cu.prototype={ -gF(a){return A.bh(this.d9())}, -d9(){return A.vx(this.$r,this.d7())}, -k(a){return this.dw(!1)}, -dw(a){var s,r,q,p,o,n=this.f_(),m=this.d7(),l=(a?""+"Record ":"")+"(" -for(s=n.length,r="",q=0;q0;){--q;--s -B.a.l(j,q,r[s])}}return A.dP(j,k)}} -A.dg.prototype={ -d7(){return[this.a,this.b]}, -L(a,b){if(b==null)return!1 -return b instanceof A.dg&&this.$s===b.$s&&J.ac(this.a,b.a)&&J.ac(this.b,b.b)}, -gA(a){return A.nT(this.$s,this.a,this.b,B.q)}} -A.cP.prototype={ -k(a){return"RegExp/"+this.a+"/"+this.b.flags}, -gf7(){var s=this,r=s.c -if(r!=null)return r -r=s.b -return s.c=A.pd(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,!0)}, -fS(a){var s=this.b.exec(a) -if(s==null)return null -return new A.es(s)}, -dE(a,b){return new A.hM(this,b,0)}, -eY(a,b){var s,r=this.gf7() -if(r==null)r=t.K.a(r) -r.lastIndex=b -s=r.exec(a) -if(s==null)return null -return new A.es(s)}, -$ik4:1, -$itp:1} -A.es.prototype={$icU:1,$ie_:1} -A.hM.prototype={ -gC(a){return new A.hN(this.a,this.b,this.c)}} -A.hN.prototype={ -gq(a){var s=this.d -return s==null?t.lu.a(s):s}, -n(){var s,r,q,p,o,n,m=this,l=m.b -if(l==null)return!1 -s=m.c -r=l.length -if(s<=r){q=m.a -p=q.eY(l,s) -if(p!=null){m.d=p -s=p.b -o=s.index -n=o+s[0].length -if(o===n){if(q.b.unicode){s=m.c -q=s+1 -if(q=0&&s=55296&&s<=56319){if(!(q>=0))return A.c(l,q) -s=l.charCodeAt(q) -s=s>=56320&&s<=57343}else s=!1}else s=!1}else s=!1 -n=(s?n+1:n)+1}m.c=n -return!0}}m.b=m.d=null -return!1}, -$iL:1} -A.e7.prototype={$icU:1} -A.iI.prototype={ -gC(a){return new A.iJ(this.a,this.b,this.c)}, -gv(a){var s=this.b,r=this.a.indexOf(s,this.c) -if(r>=0)return new A.e7(r,s) -throw A.b(A.bp())}} -A.iJ.prototype={ -n(){var s,r,q=this,p=q.c,o=q.b,n=o.length,m=q.a,l=m.length -if(p+n>l){q.d=null -return!1}s=m.indexOf(o,p) -if(s<0){q.c=l+1 -q.d=null -return!1}r=s+n -q.d=new A.e7(s,o) -q.c=r===q.c?r+1:r -return!0}, -gq(a){var s=this.d -s.toString -return s}, -$iL:1} -A.lE.prototype={ -bh(){var s=this.b -if(s===this)throw A.b(new A.ce("Local '"+this.a+"' has not been initialized.")) -return s}, -V(){var s=this.b -if(s===this)throw A.b(A.t3(this.a)) -return s}} -A.cW.prototype={ -gF(a){return B.a3}, -$iS:1, -$icW:1, -$inK:1} -A.a6.prototype={ -f6(a,b,c,d){var s=A.am(b,0,c,d,null) -throw A.b(s)}, -cZ(a,b,c,d){if(b>>>0!==b||b>c)this.f6(a,b,c,d)}, -$ia6:1} -A.dR.prototype={ -gF(a){return B.a4}, -f1(a,b,c){return a.getUint32(b,c)}, -fq(a,b,c,d){return a.setUint32(b,c,d)}, -$iS:1, -$ip0:1} -A.ah.prototype={ -gj(a){return a.length}, -dq(a,b,c,d,e){var s,r,q=a.length -this.cZ(a,b,q,"start") -this.cZ(a,c,q,"end") -if(b>c)throw A.b(A.am(b,0,c,null,null)) -s=c-b -if(e<0)throw A.b(A.ak(e,null)) -r=d.length -if(r-e").b(b))s.cY(b) -else s.aS(b)}}, -bq(a,b){var s=this.a -if(this.b)s.P(a,b) -else s.an(a,b)}, -$iff:1} -A.n2.prototype={ -$1(a){return this.a.$2(0,a)}, -$S:5} -A.n3.prototype={ -$2(a,b){this.a.$2(1,new A.dF(a,t.l.a(b)))}, -$S:66} -A.ni.prototype={ -$2(a,b){this.a(A.h(a),b)}, -$S:35} -A.eE.prototype={ -gq(a){var s=this.b -return s==null?this.$ti.c.a(s):s}, -fl(a,b){var s,r,q -a=A.h(a) -b=b -s=this.a -for(;!0;)try{r=s(this,a,b) -return r}catch(q){b=q -a=1}}, -n(){var s,r,q,p,o=this,n=null,m=null,l=0 -for(;!0;){s=o.d -if(s!=null)try{if(s.n()){o.sbT(J.rt(s)) -return!0}else o.scc(n)}catch(r){m=r -l=1 -o.scc(n)}q=o.fl(l,m) -if(1===q)return!0 -if(0===q){o.sbT(n) -p=o.e -if(p==null||p.length===0){o.a=A.pS -return!1}if(0>=p.length)return A.c(p,-1) -o.a=p.pop() -l=0 -m=null -continue}if(2===q){l=0 -m=null -continue}if(3===q){m=o.c -o.c=null -p=o.e -if(p==null||p.length===0){o.sbT(n) -o.a=A.pS -throw m -return!1}if(0>=p.length)return A.c(p,-1) -o.a=p.pop() -l=1 -continue}throw A.b(A.K("sync*"))}return!1}, -hH(a){var s,r,q=this -if(a instanceof A.dk){s=a.a() -r=q.e -if(r==null)r=q.e=[] -B.a.m(r,q.a) -q.a=s -return 2}else{q.scc(J.ar(a)) -return 2}}, -sbT(a){this.b=this.$ti.h("1?").a(a)}, -scc(a){this.d=this.$ti.h("L<1>?").a(a)}, -$iL:1} -A.dk.prototype={ -gC(a){return new A.eE(this.a(),this.$ti.h("eE<1>"))}} -A.dw.prototype={ -k(a){return A.t(this.a)}, -$iR:1, -gaM(){return this.b}} -A.jH.prototype={ -$0(){var s,r,q -try{this.a.aR(this.b.$0())}catch(q){s=A.T(q) -r=A.a0(q) -A.qh(this.a,s,r)}}, -$S:0} -A.jJ.prototype={ -$2(a,b){var s,r,q=this -t.K.a(a) -t.l.a(b) -s=q.a -r=--s.b -if(s.a!=null){s.a=null -if(s.b===0||q.c)q.d.P(a,b) -else{q.e.b=a -q.f.b=b}}else if(r===0&&!q.c)q.d.P(q.e.bh(),q.f.bh())}, -$S:20} -A.jI.prototype={ -$1(a){var s,r,q=this,p=q.w -p.a(a) -r=q.a;--r.b -s=r.a -if(s!=null){J.nH(s,q.b,a) -if(r.b===0)q.c.aS(A.jS(s,!0,p))}else if(r.b===0&&!q.e)q.c.P(q.f.bh(),q.r.bh())}, -$S(){return this.w.h("Q(0)")}} -A.co.prototype={ -bq(a,b){var s -A.cx(a,"error",t.K) -if((this.a.a&30)!==0)throw A.b(A.K("Future already completed")) -s=$.E.aY(a,b) -if(s!=null){a=s.a -b=s.b}else if(b==null)b=A.f3(a) -this.P(a,b)}, -ac(a){return this.bq(a,null)}, -$iff:1} -A.cn.prototype={ -W(a,b){var s,r=this.$ti -r.h("1/?").a(b) -s=this.a -if((s.a&30)!==0)throw A.b(A.K("Future already completed")) -s.b9(r.h("1/").a(b))}, -P(a,b){this.a.an(a,b)}} -A.a9.prototype={ -W(a,b){var s,r=this.$ti -r.h("1/?").a(b) -s=this.a -if((s.a&30)!==0)throw A.b(A.K("Future already completed")) -s.aR(r.h("1/").a(b))}, -fH(a){return this.W(0,null)}, -P(a,b){this.a.P(a,b)}} -A.bC.prototype={ -hg(a){if((this.c&15)!==6)return!0 -return this.b.b.cM(t.iW.a(this.d),a.a,t.y,t.K)}, -fX(a){var s,r=this,q=r.e,p=null,o=t.z,n=t.K,m=a.a,l=r.b.b -if(t.Q.b(q))p=l.hy(q,m,a.b,o,n,t.l) -else p=l.cM(t.v.a(q),m,o,n) -try{o=r.$ti.h("2/").a(p) -return o}catch(s){if(t.do.b(A.T(s))){if((r.c&1)!==0)throw A.b(A.ak("The error handler of Future.then must return a value of the returned future's type","onError")) -throw A.b(A.ak("The error handler of Future.catchError must return a value of the future's type","onError"))}else throw s}}} -A.C.prototype={ -dn(a){this.a=this.a&1|4 -this.c=a}, -bF(a,b,c){var s,r,q,p=this.$ti -p.t(c).h("1/(2)").a(a) -s=$.E -if(s===B.d){if(b!=null&&!t.Q.b(b)&&!t.v.b(b))throw A.b(A.bm(b,"onError",u.c))}else{a=s.bD(a,c.h("0/"),p.c) -if(b!=null)b=A.vb(b,s)}r=new A.C($.E,c.h("C<0>")) -q=b==null?1:3 -this.b8(new A.bC(r,q,a,b,p.h("@<1>").t(c).h("bC<1,2>"))) -return r}, -e2(a,b){return this.bF(a,null,b)}, -dv(a,b,c){var s,r=this.$ti -r.t(c).h("1/(2)").a(a) -s=new A.C($.E,c.h("C<0>")) -this.b8(new A.bC(s,19,a,b,r.h("@<1>").t(c).h("bC<1,2>"))) -return s}, -aH(a){var s,r,q -t.mY.a(a) -s=this.$ti -r=$.E -q=new A.C(r,s) -if(r!==B.d)a=r.cK(a,t.z) -this.b8(new A.bC(q,8,a,null,s.h("@<1>").t(s.c).h("bC<1,2>"))) -return q}, -fo(a){this.a=this.a&1|16 -this.c=a}, -bb(a){this.a=a.a&30|this.a&1 -this.c=a.c}, -b8(a){var s,r=this,q=r.a -if(q<=3){a.a=t.d.a(r.c) -r.c=a}else{if((q&4)!==0){s=t.c.a(r.c) -if((s.a&24)===0){s.b8(a) -return}r.bb(s)}r.b.am(new A.lO(r,a))}}, -cf(a){var s,r,q,p,o,n,m=this,l={} -l.a=a -if(a==null)return -s=m.a -if(s<=3){r=t.d.a(m.c) -m.c=a -if(r!=null){q=a.a -for(p=a;q!=null;p=q,q=o)o=q.a -p.a=r}}else{if((s&4)!==0){n=t.c.a(m.c) -if((n.a&24)===0){n.cf(a) -return}m.bb(n)}l.a=m.bj(a) -m.b.am(new A.lV(l,m))}}, -bi(){var s=t.d.a(this.c) -this.c=null -return this.bj(s)}, -bj(a){var s,r,q -for(s=a,r=null;s!=null;r=s,s=q){q=s.a -s.a=r}return r}, -cX(a){var s,r,q,p=this -p.a^=2 -try{a.bF(new A.lS(p),new A.lT(p),t.P)}catch(q){s=A.T(q) -r=A.a0(q) -A.qS(new A.lU(p,s,r))}}, -aR(a){var s,r=this,q=r.$ti -q.h("1/").a(a) -if(q.h("I<1>").b(a))if(q.b(a))A.oj(a,r) -else r.cX(a) -else{s=r.bi() -q.c.a(a) -r.a=8 -r.c=a -A.df(r,s)}}, -aS(a){var s,r=this -r.$ti.c.a(a) -s=r.bi() -r.a=8 -r.c=a -A.df(r,s)}, -P(a,b){var s -t.K.a(a) -t.l.a(b) -s=this.bi() -this.fo(A.jj(a,b)) -A.df(this,s)}, -b9(a){var s=this.$ti -s.h("1/").a(a) -if(s.h("I<1>").b(a)){this.cY(a) -return}this.eG(a)}, -eG(a){var s=this -s.$ti.c.a(a) -s.a^=2 -s.b.am(new A.lQ(s,a))}, -cY(a){var s=this.$ti -s.h("I<1>").a(a) -if(s.b(a)){A.u5(a,this) -return}this.cX(a)}, -an(a,b){t.l.a(b) -this.a^=2 -this.b.am(new A.lP(this,a,b))}, -$iI:1} -A.lO.prototype={ -$0(){A.df(this.a,this.b)}, -$S:0} -A.lV.prototype={ -$0(){A.df(this.b,this.a.a)}, -$S:0} -A.lS.prototype={ -$1(a){var s,r,q,p=this.a -p.a^=2 -try{p.aS(p.$ti.c.a(a))}catch(q){s=A.T(q) -r=A.a0(q) -p.P(s,r)}}, -$S:22} -A.lT.prototype={ -$2(a,b){this.a.P(t.K.a(a),t.l.a(b))}, -$S:70} -A.lU.prototype={ -$0(){this.a.P(this.b,this.c)}, -$S:0} -A.lR.prototype={ -$0(){A.oj(this.a.a,this.b)}, -$S:0} -A.lQ.prototype={ -$0(){this.a.aS(this.b)}, -$S:0} -A.lP.prototype={ -$0(){this.a.P(this.b,this.c)}, -$S:0} -A.lY.prototype={ -$0(){var s,r,q,p,o,n,m=this,l=null -try{q=m.a.a -l=q.b.b.cL(t.mY.a(q.d),t.z)}catch(p){s=A.T(p) -r=A.a0(p) -q=m.c&&t.n.a(m.b.a.c).a===s -o=m.a -if(q)o.c=t.n.a(m.b.a.c) -else o.c=A.jj(s,r) -o.b=!0 -return}if(l instanceof A.C&&(l.a&24)!==0){if((l.a&16)!==0){q=m.a -q.c=t.n.a(l.c) -q.b=!0}return}if(l instanceof A.C){n=m.b.a -q=m.a -q.c=l.e2(new A.lZ(n),t.z) -q.b=!1}}, -$S:0} -A.lZ.prototype={ -$1(a){return this.a}, -$S:73} -A.lX.prototype={ -$0(){var s,r,q,p,o,n,m,l -try{q=this.a -p=q.a -o=p.$ti -n=o.c -m=n.a(this.b) -q.c=p.b.b.cM(o.h("2/(1)").a(p.d),m,o.h("2/"),n)}catch(l){s=A.T(l) -r=A.a0(l) -q=this.a -q.c=A.jj(s,r) -q.b=!0}}, -$S:0} -A.lW.prototype={ -$0(){var s,r,q,p,o,n,m=this -try{s=t.n.a(m.a.a.c) -p=m.b -if(p.a.hg(s)&&p.a.e!=null){p.c=p.a.fX(s) -p.b=!1}}catch(o){r=A.T(o) -q=A.a0(o) -p=t.n.a(m.a.a.c) -n=m.b -if(p.a===r)n.c=p -else n.c=A.jj(r,q) -n.b=!0}}, -$S:0} -A.hP.prototype={} -A.d3.prototype={ -gj(a){var s={},r=new A.C($.E,t.g_) -s.a=0 -this.cC(new A.l8(s,this),!0,new A.l9(s,r),r.gd2()) -return r}, -gv(a){var s=new A.C($.E,A.B(this).h("C<1>")),r=this.cC(null,!0,new A.l6(s),s.gd2()) -r.dX(new A.l7(this,r,s)) -return s}} -A.l8.prototype={ -$1(a){A.B(this.b).c.a(a);++this.a.a}, -$S(){return A.B(this.b).h("~(1)")}} -A.l9.prototype={ -$0(){this.b.aR(this.a.a)}, -$S:0} -A.l6.prototype={ -$0(){var s,r,q,p -try{q=A.bp() -throw A.b(q)}catch(p){s=A.T(p) -r=A.a0(p) -A.qh(this.a,s,r)}}, -$S:0} -A.l7.prototype={ -$1(a){A.uJ(this.b,this.c,A.B(this.a).c.a(a))}, -$S(){return A.B(this.a).h("~(1)")}} -A.dj.prototype={ -gfb(){var s,r=this -if((r.b&8)===0)return A.B(r).h("aX<1>?").a(r.a) -s=A.B(r) -return s.h("aX<1>?").a(s.h("eC<1>").a(r.a).gcQ())}, -c3(){var s,r,q=this -if((q.b&8)===0){s=q.a -if(s==null)s=q.a=new A.aX(A.B(q).h("aX<1>")) -return A.B(q).h("aX<1>").a(s)}r=A.B(q) -s=r.h("eC<1>").a(q.a).gcQ() -return r.h("aX<1>").a(s)}, -gcj(){var s=this.a -if((this.b&8)!==0)s=t.gL.a(s).gcQ() -return A.B(this).h("db<1>").a(s)}, -bU(){if((this.b&4)!==0)return new A.bv("Cannot add event after closing") -return new A.bv("Cannot add event while adding a stream")}, -d6(){var s=this.c -if(s==null)s=this.c=(this.b&2)!==0?$.eY():new A.C($.E,t.D) -return s}, -dD(a,b){var s,r,q=this -A.cx(a,"error",t.K) -if(q.b>=4)throw A.b(q.bU()) -s=$.E.aY(a,b) -if(s!=null){a=s.a -b=s.b}else b=A.f3(a) -r=q.b -if((r&1)!==0)q.bn(a,b) -else if((r&3)===0)q.c3().m(0,new A.ej(a,b))}, -fB(a){return this.dD(a,null)}, -ab(a){var s=this,r=s.b -if((r&4)!==0)return s.d6() -if(r>=4)throw A.b(s.bU()) -r=s.b=r|4 -if((r&1)!==0)s.bm() -else if((r&3)===0)s.c3().m(0,B.w) -return s.d6()}, -fv(a,b,c,d){var s,r,q,p,o,n,m,l=this,k=A.B(l) -k.h("~(1)?").a(a) -t.e.a(c) -if((l.b&3)!==0)throw A.b(A.K("Stream has already been listened to.")) -s=$.E -r=d?1:0 -q=A.pI(s,a,k.c) -p=A.u4(s,b) -o=new A.db(l,q,p,s.cK(c,t.H),s,r,k.h("db<1>")) -n=l.gfb() -s=l.b|=1 -if((s&8)!==0){m=k.h("eC<1>").a(l.a) -m.scQ(o) -m.hx(0)}else l.a=o -o.fp(n) -o.f2(new A.mQ(l)) -return o}, -fe(a){var s,r,q,p,o,n,m,l=this,k=A.B(l) -k.h("d4<1>").a(a) -s=null -if((l.b&8)!==0)s=k.h("eC<1>").a(l.a).S(0) -l.a=null -l.b=l.b&4294967286|2 -r=l.r -if(r!=null)if(s==null)try{q=r.$0() -if(q instanceof A.C)s=q}catch(n){p=A.T(n) -o=A.a0(n) -m=new A.C($.E,t.D) -m.an(p,o) -s=m}else s=s.aH(r) -k=new A.mP(l) -if(s!=null)s=s.aH(k) -else k.$0() -return s}, -$ipR:1, -$icr:1} -A.mQ.prototype={ -$0(){A.ow(this.a.d)}, -$S:0} -A.mP.prototype={ -$0(){var s=this.a.c -if(s!=null&&(s.a&30)===0)s.b9(null)}, -$S:0} -A.iO.prototype={ -bl(a){this.$ti.c.a(a) -this.gcj().eB(0,a)}, -bn(a,b){this.gcj().eD(a,b)}, -bm(){this.gcj().eK()}} -A.dl.prototype={} -A.da.prototype={ -gA(a){return(A.dY(this.a)^892482866)>>>0}, -L(a,b){if(b==null)return!1 -if(this===b)return!0 -return b instanceof A.da&&b.a===this.a}} -A.db.prototype={ -dg(){return this.w.fe(this)}, -di(){var s=this.w,r=A.B(s) -r.h("d4<1>").a(this) -if((s.b&8)!==0)r.h("eC<1>").a(s.a).hJ(0) -A.ow(s.e)}, -dj(){var s=this.w,r=A.B(s) -r.h("d4<1>").a(this) -if((s.b&8)!==0)r.h("eC<1>").a(s.a).hx(0) -A.ow(s.f)}} -A.eg.prototype={ -fp(a){var s=this -A.B(s).h("aX<1>?").a(a) -if(a==null)return -s.sbg(a) -if(a.c!=null){s.e=(s.e|64)>>>0 -a.bP(s)}}, -dX(a){var s=A.B(this) -this.seF(A.pI(this.d,s.h("~(1)?").a(a),s.c))}, -S(a){var s=this,r=(s.e&4294967279)>>>0 -s.e=r -if((r&8)===0)s.bX() -r=s.f -return r==null?$.eY():r}, -bX(){var s,r=this,q=r.e=(r.e|8)>>>0 -if((q&64)!==0){s=r.r -if(s.a===1)s.a=3}if((q&32)===0)r.sbg(null) -r.f=r.dg()}, -eB(a,b){var s,r=this,q=A.B(r) -q.c.a(b) -s=r.e -if((s&8)!==0)return -if(s<32)r.bl(b) -else r.bS(new A.cq(b,q.h("cq<1>")))}, -eD(a,b){var s=this.e -if((s&8)!==0)return -if(s<32)this.bn(a,b) -else this.bS(new A.ej(a,b))}, -eK(){var s=this,r=s.e -if((r&8)!==0)return -r=(r|2)>>>0 -s.e=r -if(r<32)s.bm() -else s.bS(B.w)}, -di(){}, -dj(){}, -dg(){return null}, -bS(a){var s,r=this,q=r.r -if(q==null){q=new A.aX(A.B(r).h("aX<1>")) -r.sbg(q)}q.m(0,a) -s=r.e -if((s&64)===0){s=(s|64)>>>0 -r.e=s -if(s<128)q.bP(r)}}, -bl(a){var s,r=this,q=A.B(r).c -q.a(a) -s=r.e -r.e=(s|32)>>>0 -r.d.cN(r.a,a,q) -r.e=(r.e&4294967263)>>>0 -r.bY((s&4)!==0)}, -bn(a,b){var s,r=this,q=r.e,p=new A.lD(r,a,b) -if((q&1)!==0){r.e=(q|16)>>>0 -r.bX() -s=r.f -if(s!=null&&s!==$.eY())s.aH(p) -else p.$0()}else{p.$0() -r.bY((q&4)!==0)}}, -bm(){var s,r=this,q=new A.lC(r) -r.bX() -r.e=(r.e|16)>>>0 -s=r.f -if(s!=null&&s!==$.eY())s.aH(q) -else q.$0()}, -f2(a){var s,r=this -t.M.a(a) -s=r.e -r.e=(s|32)>>>0 -a.$0() -r.e=(r.e&4294967263)>>>0 -r.bY((s&4)!==0)}, -bY(a){var s,r,q=this,p=q.e -if((p&64)!==0&&q.r.c==null){p=q.e=(p&4294967231)>>>0 -if((p&4)!==0)if(p<128){s=q.r -s=s==null?null:s.c==null -s=s!==!1}else s=!1 -else s=!1 -if(s){p=(p&4294967291)>>>0 -q.e=p}}for(;!0;a=r){if((p&8)!==0){q.sbg(null) -return}r=(p&4)!==0 -if(a===r)break -q.e=(p^32)>>>0 -if(r)q.di() -else q.dj() -p=(q.e&4294967263)>>>0 -q.e=p}if((p&64)!==0&&p<128)q.r.bP(q)}, -seF(a){this.a=A.B(this).h("~(1)").a(a)}, -sbg(a){this.r=A.B(this).h("aX<1>?").a(a)}, -$id4:1, -$icr:1} -A.lD.prototype={ -$0(){var s,r,q,p=this.a,o=p.e -if((o&8)!==0&&(o&16)===0)return -p.e=(o|32)>>>0 -s=p.b -o=this.b -r=t.K -q=p.d -if(t.k.b(s))q.hz(s,o,this.c,r,t.l) -else q.cN(t.i6.a(s),o,r) -p.e=(p.e&4294967263)>>>0}, -$S:0} -A.lC.prototype={ -$0(){var s=this.a,r=s.e -if((r&16)===0)return -s.e=(r|42)>>>0 -s.d.e1(s.c) -s.e=(s.e&4294967263)>>>0}, -$S:0} -A.eD.prototype={ -cC(a,b,c,d){var s=this.$ti -s.h("~(1)?").a(a) -t.e.a(c) -return this.a.fv(s.h("~(1)?").a(a),d,c,!0)}} -A.bB.prototype={ -sb1(a,b){this.a=t.lT.a(b)}, -gb1(a){return this.a}} -A.cq.prototype={ -cG(a){this.$ti.h("cr<1>").a(a).bl(this.b)}} -A.ej.prototype={ -cG(a){a.bn(this.b,this.c)}} -A.hW.prototype={ -cG(a){a.bm()}, -gb1(a){return null}, -sb1(a,b){throw A.b(A.K("No events after a done."))}, -$ibB:1} -A.aX.prototype={ -bP(a){var s,r=this -r.$ti.h("cr<1>").a(a) -s=r.a -if(s===1)return -if(s>=1){r.a=1 -return}A.qS(new A.mI(r,a)) -r.a=1}, -m(a,b){var s=this,r=s.c -if(r==null)s.b=s.c=b -else{r.sb1(0,b) -s.c=b}}} -A.mI.prototype={ -$0(){var s,r,q,p=this.a,o=p.a -p.a=0 -if(o===3)return -s=p.$ti.h("cr<1>").a(this.b) -r=p.b -q=r.gb1(r) -p.b=q -if(q==null)p.c=null -r.cG(s)}, -$S:0} -A.iH.prototype={} -A.n4.prototype={ -$0(){return this.a.aR(this.b)}, -$S:0} -A.iW.prototype={} -A.eP.prototype={$ibA:1} -A.nf.prototype={ -$0(){A.rP(this.a,this.b)}, -$S:0} -A.iw.prototype={ -gfm(){return B.ah}, -gaw(){return this}, -e1(a){var s,r,q -t.M.a(a) -try{if(B.d===$.E){a.$0() -return}A.qu(null,null,this,a,t.H)}catch(q){s=A.T(q) -r=A.a0(q) -A.ne(t.K.a(s),t.l.a(r))}}, -cN(a,b,c){var s,r,q -c.h("~(0)").a(a) -c.a(b) -try{if(B.d===$.E){a.$1(b) -return}A.qw(null,null,this,a,b,t.H,c)}catch(q){s=A.T(q) -r=A.a0(q) -A.ne(t.K.a(s),t.l.a(r))}}, -hz(a,b,c,d,e){var s,r,q -d.h("@<0>").t(e).h("~(1,2)").a(a) -d.a(b) -e.a(c) -try{if(B.d===$.E){a.$2(b,c) -return}A.qv(null,null,this,a,b,c,t.H,d,e)}catch(q){s=A.T(q) -r=A.a0(q) -A.ne(t.K.a(s),t.l.a(r))}}, -fE(a,b){return new A.mN(this,b.h("0()").a(a),b)}, -co(a){return new A.mM(this,t.M.a(a))}, -dF(a,b){return new A.mO(this,b.h("~(0)").a(a),b)}, -dP(a,b){A.ne(a,t.l.a(b))}, -cL(a,b){b.h("0()").a(a) -if($.E===B.d)return a.$0() -return A.qu(null,null,this,a,b)}, -cM(a,b,c,d){c.h("@<0>").t(d).h("1(2)").a(a) -d.a(b) -if($.E===B.d)return a.$1(b) -return A.qw(null,null,this,a,b,c,d)}, -hy(a,b,c,d,e,f){d.h("@<0>").t(e).t(f).h("1(2,3)").a(a) -e.a(b) -f.a(c) -if($.E===B.d)return a.$2(b,c) -return A.qv(null,null,this,a,b,c,d,e,f)}, -cK(a,b){return b.h("0()").a(a)}, -bD(a,b,c){return b.h("@<0>").t(c).h("1(2)").a(a)}, -cJ(a,b,c,d){return b.h("@<0>").t(c).t(d).h("1(2,3)").a(a)}, -aY(a,b){t.fw.a(b) -return null}, -am(a){A.ng(null,null,this,t.M.a(a))}, -dI(a,b){return A.pu(a,t.M.a(b))}} -A.mN.prototype={ -$0(){return this.a.cL(this.b,this.c)}, -$S(){return this.c.h("0()")}} -A.mM.prototype={ -$0(){return this.a.e1(this.b)}, -$S:0} -A.mO.prototype={ -$1(a){var s=this.c -return this.a.cN(this.b,s.a(a),s)}, -$S(){return this.c.h("~(0)")}} -A.eo.prototype={ -gC(a){var s=this,r=new A.ct(s,s.r,s.$ti.h("ct<1>")) -r.c=s.e -return r}, -gj(a){return this.a}, -N(a,b){var s,r -if(b!=="__proto__"){s=this.b -if(s==null)return!1 -return t.g.a(s[b])!=null}else{r=this.eP(b) -return r}}, -eP(a){var s=this.d -if(s==null)return!1 -return this.c7(s[B.b.gA(a)&1073741823],a)>=0}, -gv(a){var s=this.e -if(s==null)throw A.b(A.K("No elements")) -return this.$ti.c.a(s.a)}, -m(a,b){var s,r,q=this -q.$ti.c.a(b) -if(typeof b=="string"&&b!=="__proto__"){s=q.b -return q.d_(s==null?q.b=A.ok():s,b)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c -return q.d_(r==null?q.c=A.ok():r,b)}else return q.eL(0,b)}, -eL(a,b){var s,r,q,p=this -p.$ti.c.a(b) -s=p.d -if(s==null)s=p.d=A.ok() -r=J.bl(b)&1073741823 -q=s[r] -if(q==null)s[r]=[p.c_(b)] -else{if(p.c7(q,b)>=0)return!1 -q.push(p.c_(b))}return!0}, -K(a,b){var s -if(b!=="__proto__")return this.eM(this.b,b) -else{s=this.fg(0,b) -return s}}, -fg(a,b){var s,r,q,p,o=this.d -if(o==null)return!1 -s=B.b.gA(b)&1073741823 -r=o[s] -q=this.c7(r,b) -if(q<0)return!1 -p=r.splice(q,1)[0] -if(0===r.length)delete o[s] -this.d1(p) -return!0}, -d_(a,b){this.$ti.c.a(b) -if(t.g.a(a[b])!=null)return!1 -a[b]=this.c_(b) -return!0}, -eM(a,b){var s -if(a==null)return!1 -s=t.g.a(a[b]) -if(s==null)return!1 -this.d1(s) -delete a[b] -return!0}, -d0(){this.r=this.r+1&1073741823}, -c_(a){var s,r=this,q=new A.id(r.$ti.c.a(a)) -if(r.e==null)r.e=r.f=q -else{s=r.f -s.toString -q.c=s -r.f=s.b=q}++r.a -r.d0() -return q}, -d1(a){var s=this,r=a.c,q=a.b -if(r==null)s.e=q -else r.b=q -if(q==null)s.f=r -else q.c=r;--s.a -s.d0()}, -c7(a,b){var s,r -if(a==null)return-1 -s=a.length -for(r=0;r"))}, -gj(a){return this.b}, -gv(a){var s -if(this.b===0)throw A.b(A.K("No such element")) -s=this.c -s.toString -return s}, -ga4(a){var s -if(this.b===0)throw A.b(A.K("No such element")) -s=this.c.c -s.toString -return s}, -gY(a){return this.b===0}, -cb(a,b,c){var s=this,r=s.$ti -r.h("1?").a(a) -r.c.a(b) -if(b.a!=null)throw A.b(A.K("LinkedListEntry is already in a LinkedList"));++s.a -b.sde(s) -if(s.b===0){b.sag(b) -b.saT(b) -s.sc8(b);++s.b -return}r=a.c -r.toString -b.saT(r) -b.sag(a) -r.sag(b) -a.saT(b);++s.b}, -ck(a){var s,r,q=this,p=null -q.$ti.c.a(a);++q.a -a.b.saT(a.c) -s=a.c -r=a.b -s.sag(r);--q.b -a.saT(p) -a.sag(p) -a.sde(p) -if(q.b===0)q.sc8(p) -else if(a===q.c)q.sc8(r)}, -sc8(a){this.c=this.$ti.h("1?").a(a)}} -A.ep.prototype={ -gq(a){var s=this.c -return s==null?this.$ti.c.a(s):s}, -n(){var s=this,r=s.a -if(s.b!==r.a)throw A.b(A.as(s)) -if(r.b!==0)r=s.e&&s.d===r.gv(0) -else r=!0 -if(r){s.sa8(null) -return!1}s.e=!0 -s.sa8(s.d) -s.sag(s.d.b) -return!0}, -sa8(a){this.c=this.$ti.h("1?").a(a)}, -sag(a){this.d=this.$ti.h("1?").a(a)}, -$iL:1} -A.af.prototype={ -gb2(){var s=this.a -if(s==null||this===s.gv(0))return null -return this.c}, -sde(a){this.a=A.B(this).h("cS?").a(a)}, -sag(a){this.b=A.B(this).h("af.E?").a(a)}, -saT(a){this.c=A.B(this).h("af.E?").a(a)}} -A.i.prototype={ -gC(a){return new A.b4(a,this.gj(a),A.a3(a).h("b4"))}, -u(a,b){return this.i(a,b)}, -B(a,b){var s,r -A.a3(a).h("~(i.E)").a(b) -s=this.gj(a) -for(r=0;r").t(c).h("ag<1,2>"))}, -Z(a,b){return A.e8(a,b,null,A.a3(a).h("i.E"))}, -bp(a,b){return new A.b0(a,A.a3(a).h("@").t(b).h("b0<1,2>"))}, -cs(a,b,c,d){var s -A.a3(a).h("i.E?").a(d) -A.cg(b,c,this.gj(a)) -for(s=b;s").a(d) -A.cg(b,c,this.gj(a)) -s=c-b -if(s===0)return -A.aC(e,"skipCount") -if(o.h("n").b(d)){r=e -q=d}else{q=J.nJ(d,e).aG(0,!1) -r=0}o=J.Y(q) -if(r+s>o.gj(q))throw A.b(A.p8()) -if(r=0;--p)this.l(a,b+p,o.i(q,r+p)) -else for(p=0;p").a(c) -if(t.j.b(c))this.U(a,b,b+c.length,c) -else for(s=J.ar(c);s.n();b=r){r=b+1 -this.l(a,b,s.gq(s))}}, -k(a){return A.nN(a,"[","]")}, -$il:1, -$ie:1, -$in:1} -A.D.prototype={ -B(a,b){var s,r,q,p=A.a3(a) -p.h("~(D.K,D.V)").a(b) -for(s=J.ar(this.gG(a)),p=p.h("D.V");s.n();){r=s.gq(s) -q=this.i(a,r) -b.$2(r,q==null?p.a(q):q)}}, -gav(a){return J.oU(this.gG(a),new A.jT(a),A.a3(a).h("a5"))}, -hf(a,b,c,d){var s,r,q,p,o,n=A.a3(a) -n.t(c).t(d).h("a5<1,2>(D.K,D.V)").a(b) -s=A.W(c,d) -for(r=J.ar(this.gG(a)),n=n.h("D.V");r.n();){q=r.gq(r) -p=this.i(a,q) -o=b.$2(q,p==null?n.a(p):p) -s.l(0,o.a,o.b)}return s}, -D(a,b){return J.nI(this.gG(a),b)}, -gj(a){return J.a1(this.gG(a))}, -gO(a){var s=A.a3(a) -return new A.eq(a,s.h("@").t(s.h("D.V")).h("eq<1,2>"))}, -k(a){return A.fL(a)}, -$iJ:1} -A.jT.prototype={ -$1(a){var s=this.a,r=A.a3(s) -r.h("D.K").a(a) -s=J.ad(s,a) -if(s==null)s=r.h("D.V").a(s) -return new A.a5(a,s,r.h("@").t(r.h("D.V")).h("a5<1,2>"))}, -$S(){return A.a3(this.a).h("a5(D.K)")}} -A.jU.prototype={ -$2(a,b){var s,r=this.a -if(!r.a)this.b.a+=", " -r.a=!1 -r=this.b -s=r.a+=A.t(a) -r.a=s+": " -r.a+=A.t(b)}, -$S:52} -A.d8.prototype={} -A.eq.prototype={ -gj(a){return J.a1(this.a)}, -gv(a){var s=this.a,r=J.ab(s) -s=r.i(s,J.bK(r.gG(s))) -return s==null?this.$ti.y[1].a(s):s}, -gC(a){var s=this.a,r=this.$ti -return new A.er(J.ar(J.oT(s)),s,r.h("@<1>").t(r.y[1]).h("er<1,2>"))}} -A.er.prototype={ -n(){var s=this,r=s.a -if(r.n()){s.sa8(J.ad(s.b,r.gq(r))) -return!0}s.sa8(null) -return!1}, -gq(a){var s=this.c -return s==null?this.$ti.y[1].a(s):s}, -sa8(a){this.c=this.$ti.h("2?").a(a)}, -$iL:1} -A.c1.prototype={} -A.cT.prototype={ -i(a,b){return this.a.i(0,b)}, -D(a,b){return this.a.D(0,b)}, -B(a,b){this.a.B(0,this.$ti.h("~(1,2)").a(b))}, -gj(a){return this.a.a}, -gG(a){var s=this.a -return new A.b3(s,s.$ti.h("b3<1>"))}, -k(a){return A.fL(this.a)}, -gO(a){return this.a.gO(0)}, -gav(a){var s=this.a -return s.gav(s)}, -$iJ:1} -A.ea.prototype={} -A.cY.prototype={ -ad(a,b,c){var s=this.$ti -return new A.c7(this,s.t(c).h("1(2)").a(b),s.h("@<1>").t(c).h("c7<1,2>"))}, -k(a){return A.nN(this,"{","}")}, -Z(a,b){return A.pp(this,b,this.$ti.c)}, -gv(a){var s,r=A.pL(this,this.r,this.$ti.c) -if(!r.n())throw A.b(A.bp()) -s=r.d -return s==null?r.$ti.c.a(s):s}, -u(a,b){var s,r,q,p=this -A.aC(b,"index") -s=A.pL(p,p.r,p.$ti.c) -for(r=b;s.n();){if(r===0){q=s.d -return q==null?s.$ti.c.a(q):q}--r}throw A.b(A.V(b,b-r,p,null,"index"))}, -$il:1, -$ie:1, -$inX:1} -A.ey.prototype={} -A.dn.prototype={} -A.mY.prototype={ -$0(){var s,r -try{s=new TextDecoder("utf-8",{fatal:true}) -return s}catch(r){}return null}, -$S:17} -A.mX.prototype={ -$0(){var s,r -try{s=new TextDecoder("utf-8",{fatal:false}) -return s}catch(r){}return null}, -$S:17} -A.f7.prototype={ -hm(a2,a3,a4,a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a0="Invalid base64 encoding length ",a1=a3.length -a5=A.cg(a4,a5,a1) -s=$.r8() -for(r=s.length,q=a4,p=q,o=null,n=-1,m=-1,l=0;q=0&&e=0){if(!(d<64))return A.c(a,d) -e=a.charCodeAt(d) -if(e===j)continue -j=e}else{if(d===-1){if(n<0){g=o==null?null:o.a.length -if(g==null)g=0 -n=g+(q-p) -m=q}++l -if(j===61)continue}j=e}if(d!==-2){if(o==null){o=new A.aj("") -g=o}else g=o -g.a+=B.b.p(a3,p,q) -g.a+=A.be(j) -p=k -continue}}throw A.b(A.ae("Invalid base64 data",a3,q))}if(o!=null){a1=o.a+=B.b.p(a3,p,a5) -r=a1.length -if(n>=0)A.oV(a3,m,a5,n,l,r) -else{c=B.c.a5(r-1,4)+1 -if(c===1)throw A.b(A.ae(a0,a3,a5)) -for(;c<4;){a1+="=" -o.a=a1;++c}}a1=o.a -return B.b.aE(a3,a4,a5,a1.charCodeAt(0)==0?a1:a1)}b=a5-a4 -if(n>=0)A.oV(a3,m,a5,n,l,b) -else{c=B.c.a5(b,4) -if(c===1)throw A.b(A.ae(a0,a3,a5)) -if(c>1)a3=B.b.aE(a3,a5,a5,c===2?"==":"=")}return a3}} -A.ju.prototype={} -A.cC.prototype={} -A.fi.prototype={} -A.ft.prototype={} -A.hz.prototype={ -aX(a,b){t.L.a(b) -return new A.eO(!1).c1(b,0,null,!0)}} -A.li.prototype={ -ar(a){var s,r,q,p,o=a.length,n=A.cg(0,null,o),m=n-0 -if(m===0)return new Uint8Array(0) -s=m*3 -r=new Uint8Array(s) -q=new A.mZ(r) -if(q.f0(a,0,n)!==n){p=n-1 -if(!(p>=0&&p>>18|240 -q=n.b=p+1 -if(!(p>>12&63|128 -p=n.b=q+1 -if(!(q>>6&63|128 -n.b=p+1 -if(!(p=0&&s=r)break -l.b=n+1 -s[n]=o}else{n=o&64512 -if(n===55296){if(l.b+4>r)break -n=p+1 -if(!(nr)break -l.cl()}else if(o<=2047){n=l.b -m=n+1 -if(m>=r)break -l.b=m -if(!(n>>6|192 -l.b=m+1 -s[m]=o&63|128}else{n=l.b -if(n+2>=r)break -m=l.b=n+1 -if(!(n>>12|224 -n=l.b=m+1 -if(!(m>>6&63|128 -l.b=n+1 -if(!(n=15){o=l.a -n=A.uz(o,q,b,s) -if(n!=null){if(!o)return n -if(n.indexOf("\ufffd")<0)return n}}n=l.c2(q,b,s,!0) -o=l.b -if((o&1)!==0){m=A.uB(o) -l.b=0 -throw A.b(A.ae(m,a,p+l.c))}return n}, -c2(a,b,c,d){var s,r,q=this -if(c-b>1000){s=B.c.H(b+c,2) -r=q.c2(a,b,s,!1) -if((q.b&1)!==0)return r -return r+q.c2(a,s,c,d)}return q.fM(a,b,c,d)}, -fM(a,b,a0,a1){var s,r,q,p,o,n,m,l,k=this,j="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHIHHHJEEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBKCCCCCCCCCCCCDCLONNNMEEEEEEEEEEE",i=" \x000:XECCCCCN:lDb \x000:XECCCCCNvlDb \x000:XECCCCCN:lDb AAAAA\x00\x00\x00\x00\x00AAAAA00000AAAAA:::::AAAAAGG000AAAAA00KKKAAAAAG::::AAAAA:IIIIAAAAA000\x800AAAAA\x00\x00\x00\x00 AAAAA",h=65533,g=k.b,f=k.c,e=new A.aj(""),d=b+1,c=a.length -if(!(b>=0&&b=0&&s<256))return A.c(j,s) -q=j.charCodeAt(s)&31 -f=g<=32?s&61694>>>q:(s&63|f<<6)>>>0 -p=g+q -if(!(p>=0&&p<144))return A.c(i,p) -g=i.charCodeAt(p) -if(g===0){e.a+=A.be(f) -if(d===a0)break $label0$0 -break}else if((g&1)!==0){if(r)switch(g){case 69:case 67:e.a+=A.be(h) -break -case 65:e.a+=A.be(h);--d -break -default:p=e.a+=A.be(h) -e.a=p+A.be(h) -break}else{k.b=g -k.c=d-1 -return""}g=0}if(d===a0)break $label0$0 -o=d+1 -if(!(d>=0&&d=0&&d=0&&o=128){n=m-1 -o=m -break}o=m}if(n-d<20)for(l=d;l32)if(r)e.a+=A.be(h) -else{k.b=77 -k.c=a0 -return""}k.b=g -k.c=f -c=e.a -return c.charCodeAt(0)==0?c:c}} -A.a7.prototype={ -a6(a){var s,r,q=this,p=q.c -if(p===0)return q -s=!q.a -r=q.b -p=A.aW(p,r) -return new A.a7(p===0?!1:s,r,p)}, -eV(a){var s,r,q,p,o,n,m,l,k=this,j=k.c -if(j===0)return $.bJ() -s=j-a -if(s<=0)return k.a?$.oM():$.bJ() -r=k.b -q=new Uint16Array(s) -for(p=r.length,o=a;o=0&&o=0&&r>>0!==0)return l.aN(0,$.je()) -for(k=0;k=0)return q.b7(b,r) -return b.b7(q,!r)}, -aN(a,b){var s,r,q=this,p=q.c -if(p===0)return b.a6(0) -s=b.c -if(s===0)return q -r=q.a -if(r!==b.a)return q.bR(b,r) -if(A.lz(q.b,p,b.b,s)>=0)return q.b7(b,r) -return b.b7(q,!r)}, -b6(a,b){var s,r,q,p,o,n,m,l=this.c,k=b.c -if(l===0||k===0)return $.bJ() -s=l+k -r=this.b -q=b.b -p=new Uint16Array(s) -for(o=q.length,n=0;n0?p.a6(0):p}, -ff(a){var s,r,q,p=this -if(p.c0)q=q.aL(0,$.of.V()) -return p.a&&q.c>0?q.a6(0):q}, -d5(a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=b.c -if(a===$.pE&&a0.c===$.pG&&b.b===$.pD&&a0.b===$.pF)return -s=a0.b -r=a0.c -q=r-1 -if(!(q>=0&&q0){o=new Uint16Array(r+5) -n=A.pC(s,r,p,o) -m=new Uint16Array(a+5) -l=A.pC(b.b,a,p,m)}else{m=A.og(b.b,0,a,a+2) -n=r -o=s -l=a}q=n-1 -if(!(q>=0&&q=0){if(!(l>=0&&l=0&&l=0&&n0;){c=A.tZ(k,m,d);--j -A.pH(c,e,0,m,j,n) -if(!(d>=0&&d=m.length)return A.c(m,0) -return B.c.k(-m[0])}m=n.b -if(0>=m.length)return A.c(m,0) -return B.c.k(m[0])}s=A.u([],t.s) -m=n.a -r=m?n.a6(0):n -for(;r.c>1;){q=$.oL() -if(q.c===0)A.O(B.N) -p=r.ff(q).k(0) -B.a.m(s,p) -o=p.length -if(o===1)B.a.m(s,"000") -if(o===2)B.a.m(s,"00") -if(o===3)B.a.m(s,"0") -r=r.eU(q)}q=r.b -if(0>=q.length)return A.c(q,0) -B.a.m(s,B.c.k(q[0])) -if(m)B.a.m(s,"-") -return new A.e0(s,t.hF).hc(0)}, -$icA:1, -$ial:1} -A.lA.prototype={ -$2(a,b){a=a+b&536870911 -a=a+((a&524287)<<10)&536870911 -return a^a>>>6}, -$S:3} -A.lB.prototype={ -$1(a){a=a+((a&67108863)<<3)&536870911 -a^=a>>>11 -return a+((a&16383)<<15)&536870911}, -$S:11} -A.i3.prototype={ -dJ(a,b){var s=this.a -if(s!=null)s.unregister(b)}} -A.k_.prototype={ -$2(a,b){var s,r,q -t.bR.a(a) -s=this.b -r=this.a -q=s.a+=r.a -q+=a.a -s.a=q -s.a=q+": " -s.a+=A.c9(b) -r.a=", "}, -$S:38} -A.bP.prototype={ -L(a,b){if(b==null)return!1 -return b instanceof A.bP&&this.a===b.a&&this.b===b.b}, -a0(a,b){return B.c.a0(this.a,t.cs.a(b).a)}, -gA(a){var s=this.a -return(s^B.c.R(s,30))&1073741823}, -k(a){var s=this,r=A.rM(A.tl(s)),q=A.fp(A.tj(s)),p=A.fp(A.tf(s)),o=A.fp(A.tg(s)),n=A.fp(A.ti(s)),m=A.fp(A.tk(s)),l=A.rN(A.th(s)),k=r+"-"+q -if(s.b)return k+"-"+p+" "+o+":"+n+":"+m+"."+l+"Z" -else return k+"-"+p+" "+o+":"+n+":"+m+"."+l}, -$ial:1} -A.bQ.prototype={ -L(a,b){if(b==null)return!1 -return b instanceof A.bQ&&this.a===b.a}, -gA(a){return B.c.gA(this.a)}, -a0(a,b){return B.c.a0(this.a,t.jS.a(b).a)}, -k(a){var s,r,q,p,o,n=this.a,m=B.c.H(n,36e8),l=n%36e8 -if(n<0){m=0-m -n=0-l -s="-"}else{n=l -s=""}r=B.c.H(n,6e7) -n%=6e7 -q=r<10?"0":"" -p=B.c.H(n,1e6) -o=p<10?"0":"" -return s+m+":"+q+r+":"+o+p+"."+B.b.hp(B.c.k(n%1e6),6,"0")}, -$ial:1} -A.lH.prototype={ -k(a){return this.eX()}} -A.R.prototype={ -gaM(){return A.a0(this.$thrownJsError)}} -A.dv.prototype={ -k(a){var s=this.a -if(s!=null)return"Assertion failed: "+A.c9(s) -return"Assertion failed"}} -A.bw.prototype={} -A.bb.prototype={ -gc5(){return"Invalid argument"+(!this.a?"(s)":"")}, -gc4(){return""}, -k(a){var s=this,r=s.c,q=r==null?"":" ("+r+")",p=s.d,o=p==null?"":": "+A.t(p),n=s.gc5()+q+o -if(!s.a)return n -return n+s.gc4()+": "+A.c9(s.gcA())}, -gcA(){return this.b}} -A.cX.prototype={ -gcA(){return A.uE(this.b)}, -gc5(){return"RangeError"}, -gc4(){var s,r=this.e,q=this.f -if(r==null)s=q!=null?": Not less than or equal to "+A.t(q):"" -else if(q==null)s=": Not greater than or equal to "+A.t(r) -else if(q>r)s=": Not in inclusive range "+A.t(r)+".."+A.t(q) -else s=qe.length -else s=!1 -if(s)f=null -if(f==null){if(e.length>78)e=B.b.p(e,0,75)+"..." -return g+"\n"+e}for(r=e.length,q=1,p=0,o=!1,n=0;n1?g+(" (at line "+q+", character "+(f-p+1)+")\n"):g+(" (at character "+(f+1)+")\n") -for(n=f;n=0))return A.c(e,n) -m=e.charCodeAt(n) -if(m===10||m===13){r=n -break}}if(r-p>78)if(f-p<75){l=p+75 -k=p -j="" -i="..."}else{if(r-f<75){k=r-75 -l=r -i=""}else{k=f-36 -l=f+36 -i="..."}j="..."}else{l=r -k=p -j="" -i=""}return g+j+B.b.p(e,k,l)+i+"\n"+B.b.b6(" ",f-k+j.length)+"^\n"}else return f!=null?g+(" (at offset "+A.t(f)+")"):g}} -A.fD.prototype={ -gaM(){return null}, -k(a){return"IntegerDivisionByZeroException"}, -$iR:1} -A.e.prototype={ -bp(a,b){return A.fb(this,A.B(this).h("e.E"),b)}, -ad(a,b,c){var s=A.B(this) -return A.pg(this,s.t(c).h("1(e.E)").a(b),s.h("e.E"),c)}, -N(a,b){var s -for(s=this.gC(this);s.n();)if(J.ac(s.gq(s),b))return!0 -return!1}, -B(a,b){var s -A.B(this).h("~(e.E)").a(b) -for(s=this.gC(this);s.n();)b.$1(s.gq(s))}, -aG(a,b){return A.fJ(this,b,A.B(this).h("e.E"))}, -e4(a){return this.aG(0,!0)}, -gj(a){var s,r=this.gC(this) -for(s=0;r.n();)++s -return s}, -gY(a){return!this.gC(this).n()}, -Z(a,b){return A.pp(this,b,A.B(this).h("e.E"))}, -gv(a){var s=this.gC(this) -if(!s.n())throw A.b(A.bp()) -return s.gq(s)}, -u(a,b){var s,r -A.aC(b,"index") -s=this.gC(this) -for(r=b;s.n();){if(r===0)return s.gq(s);--r}throw A.b(A.V(b,b-r,this,null,"index"))}, -k(a){return A.rY(this,"(",")")}} -A.a5.prototype={ -k(a){return"MapEntry("+A.t(this.a)+": "+A.t(this.b)+")"}} -A.Q.prototype={ -gA(a){return A.r.prototype.gA.call(this,0)}, -k(a){return"null"}} -A.r.prototype={$ir:1, -L(a,b){return this===b}, -gA(a){return A.dY(this)}, -k(a){return"Instance of '"+A.k6(this)+"'"}, -dV(a,b){throw A.b(A.pi(this,t.bg.a(b)))}, -gF(a){return A.qI(this)}, -toString(){return this.k(this)}} -A.iM.prototype={ -k(a){return""}, -$iaG:1} -A.aj.prototype={ -gj(a){return this.a.length}, -k(a){var s=this.a -return s.charCodeAt(0)==0?s:s}, -$itL:1} -A.lf.prototype={ -$2(a,b){throw A.b(A.ae("Illegal IPv4 address, "+a,this.a,b))}, -$S:39} -A.lg.prototype={ -$2(a,b){throw A.b(A.ae("Illegal IPv6 address, "+a,this.a,b))}, -$S:43} -A.lh.prototype={ -$2(a,b){var s -if(b-a>4)this.a.$2("an IPv6 part can only contain a maximum of 4 hex digits",a) -s=A.nu(B.b.p(this.b,a,b),16) -if(s<0||s>65535)this.a.$2("each part must be in the range of `0x0..0xFFFF`",a) -return s}, -$S:3} -A.eM.prototype={ -gdu(){var s,r,q,p,o=this,n=o.w -if(n===$){s=o.a -r=s.length!==0?""+s+":":"" -q=o.c -p=q==null -if(!p||s==="file"){s=r+"//" -r=o.b -if(r.length!==0)s=s+r+"@" -if(!p)s+=q -r=o.d -if(r!=null)s=s+":"+A.t(r)}else s=r -s+=o.e -r=o.f -if(r!=null)s=s+"?"+r -r=o.r -if(r!=null)s=s+"#"+r -n!==$&&A.jc("_text") -n=o.w=s.charCodeAt(0)==0?s:s}return n}, -gcF(){var s,r,q,p=this,o=p.x -if(o===$){s=p.e -r=s.length -if(r!==0){if(0>=r)return A.c(s,0) -r=s.charCodeAt(0)===47}else r=!1 -if(r)s=B.b.a_(s,1) -q=s.length===0?B.B:A.dP(new A.ag(A.u(s.split("/"),t.s),t.ha.a(A.vs()),t.iZ),t.N) -p.x!==$&&A.jc("pathSegments") -p.seA(q) -o=q}return o}, -gA(a){var s,r=this,q=r.y -if(q===$){s=B.b.gA(r.gdu()) -r.y!==$&&A.jc("hashCode") -r.y=s -q=s}return q}, -ge6(){return this.b}, -gb_(a){var s=this.c -if(s==null)return"" -if(B.b.I(s,"["))return B.b.p(s,1,s.length-1) -return s}, -gcH(a){var s=this.d -return s==null?A.q_(this.a):s}, -ge0(a){var s=this.f -return s==null?"":s}, -gdO(){var s=this.r -return s==null?"":s}, -gdT(){if(this.a!==""){var s=this.r -s=(s==null?"":s)===""}else s=!1 -return s}, -gcu(){return this.c!=null}, -gdS(){return this.f!=null}, -gdR(){return this.r!=null}, -gdQ(){return B.b.I(this.e,"/")}, -hA(){var s,r=this,q=r.a -if(q!==""&&q!=="file")throw A.b(A.F("Cannot extract a file path from a "+q+" URI")) -q=r.f -if((q==null?"":q)!=="")throw A.b(A.F("Cannot extract a file path from a URI with a query component")) -q=r.r -if((q==null?"":q)!=="")throw A.b(A.F("Cannot extract a file path from a URI with a fragment component")) -q=$.rb() -if(q)q=A.ux(r) -else{if(r.c!=null&&r.gb_(0)!=="")A.O(A.F("Cannot extract a non-Windows file path from a file URI with an authority")) -s=r.gcF() -A.uq(s,!1) -q=A.la(B.b.I(r.e,"/")?""+"/":"",s,"/") -q=q.charCodeAt(0)==0?q:q}return q}, -k(a){return this.gdu()}, -L(a,b){var s,r,q=this -if(b==null)return!1 -if(q===b)return!0 -if(t.jJ.b(b))if(q.a===b.gbQ())if(q.c!=null===b.gcu())if(q.b===b.ge6())if(q.gb_(0)===b.gb_(b))if(q.gcH(0)===b.gcH(b))if(q.e===b.gcE(b)){s=q.f -r=s==null -if(!r===b.gdS()){if(r)s="" -if(s===b.ge0(b)){s=q.r -r=s==null -if(!r===b.gdR()){if(r)s="" -s=s===b.gdO()}else s=!1}else s=!1}else s=!1}else s=!1 -else s=!1 -else s=!1 -else s=!1 -else s=!1 -else s=!1 -else s=!1 -return s}, -seA(a){this.x=t.a.a(a)}, -$ihw:1, -gbQ(){return this.a}, -gcE(a){return this.e}} -A.le.prototype={ -ge5(){var s,r,q,p,o=this,n=null,m=o.c -if(m==null){m=o.b -if(0>=m.length)return A.c(m,0) -s=o.a -m=m[0]+1 -r=B.b.ai(s,"?",m) -q=s.length -if(r>=0){p=A.eN(s,r+1,q,B.p,!1,!1) -q=r}else p=n -m=o.c=new A.hV("data","",n,n,A.eN(s,m,q,B.z,!1,!1),p,n)}return m}, -k(a){var s,r=this.b -if(0>=r.length)return A.c(r,0) -s=this.a -return r[0]===-1?"data:"+s:s}} -A.n7.prototype={ -$2(a,b){var s=this.a -if(!(a=q)return A.c(b,0) -s=b.charCodeAt(0) -if(1>=q)return A.c(b,1) -r=b.charCodeAt(1) -for(;s<=r;++s){q=(s^96)>>>0 -if(!(q<96))return A.c(a,q) -a[q]=c}}, -$S:15} -A.iA.prototype={ -gcu(){return this.c>0}, -gh3(){return this.c>0&&this.d+10&&this.r>=this.a.length}, -gbQ(){var s=this.w -return s==null?this.w=this.eO():s}, -eO(){var s,r=this,q=r.b -if(q<=0)return"" -s=q===4 -if(s&&B.b.I(r.a,"http"))return"http" -if(q===5&&B.b.I(r.a,"https"))return"https" -if(s&&B.b.I(r.a,"file"))return"file" -if(q===7&&B.b.I(r.a,"package"))return"package" -return B.b.p(r.a,0,q)}, -ge6(){var s=this.c,r=this.b+3 -return s>r?B.b.p(this.a,r,s-1):""}, -gb_(a){var s=this.c -return s>0?B.b.p(this.a,s,this.d):""}, -gcH(a){var s,r=this -if(r.gh3())return A.nu(B.b.p(r.a,r.d+1,r.e),null) -s=r.b -if(s===4&&B.b.I(r.a,"http"))return 80 -if(s===5&&B.b.I(r.a,"https"))return 443 -return 0}, -gcE(a){return B.b.p(this.a,this.e,this.f)}, -ge0(a){var s=this.f,r=this.r -return s=0&&q>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.q.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){A.U(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.V.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.G.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.ib.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.G.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.d8.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.ls.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.cA.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.gJ.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.dR.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.ki.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.d5.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -return a[b]}, -l(a,b,c){t.ef.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){if(a.length>0)return a[0] -throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.G.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.hI.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b>>0!==b||b>=s -r.toString -if(r)throw A.b(A.V(b,s,a,null,null)) -s=a[b] -s.toString -return s}, -l(a,b,c){t.lv.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s -if(a.length>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){if(!(b>=0&&b"))}, -M(a,b,c,d,e){A.a3(a).h("e").a(d) -throw A.b(A.F("Cannot setRange on immutable List."))}, -U(a,b,c,d){return this.M(a,b,c,d,0)}} -A.dG.prototype={ -n(){var s=this,r=s.c+1,q=s.b -if(r=4)A.O(p.bU()) -if((r&1)!==0)p.bl(q) -else if((r&3)===0)p.c3().m(0,new A.cq(q,s.h("cq<1>")))}}, -$S:2} -A.bs.prototype={$ibs:1} -A.e9.prototype={$ie9:1} -A.by.prototype={$iby:1} -A.nB.prototype={ -$1(a){return this.a.W(0,this.b.h("0/?").a(a))}, -$S:5} -A.nC.prototype={ -$1(a){if(a==null)return this.a.ac(new A.k0(a===undefined)) -return this.a.ac(a)}, -$S:5} -A.k0.prototype={ -k(a){return"Promise was rejected with a value of `"+(this.a?"undefined":"null")+"`."}} -A.ia.prototype={ -ex(){var s=self.crypto -if(s!=null)if(s.getRandomValues!=null)return -throw A.b(A.F("No source of cryptographically secure random numbers available."))}, -dU(a){var s,r,q,p,o,n,m,l,k,j=null -if(a<=0||a>4294967296)throw A.b(new A.cX(j,j,!1,j,j,"max must be in range 0 < max \u2264 2^32, was "+a)) -if(a>255)if(a>65535)s=a>16777215?4:3 -else s=2 -else s=1 -r=this.a -B.G.fq(r,0,0,!1) -q=4-s -p=A.h(Math.pow(256,s)) -for(o=a-1,n=(a&o)===0;!0;){m=r.buffer -m=new Uint8Array(m,q,s) -crypto.getRandomValues(m) -l=B.G.f1(r,0,!1) -if(n)return(l&o)>>>0 -k=l%a -if(l-k+a>>0!==b||b>=s -s.toString -if(s)throw A.b(A.V(b,this.gj(a),a,null,null)) -s=a.getItem(b) -s.toString -return s}, -l(a,b,c){t.kT.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s=a.length -s.toString -if(s>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){return this.i(a,b)}, -$il:1, -$ie:1, -$in:1} -A.aN.prototype={$iaN:1} -A.fZ.prototype={ -gj(a){var s=a.length -s.toString -return s}, -i(a,b){var s=a.length -s.toString -s=b>>>0!==b||b>=s -s.toString -if(s)throw A.b(A.V(b,this.gj(a),a,null,null)) -s=a.getItem(b) -s.toString -return s}, -l(a,b,c){t.ai.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s=a.length -s.toString -if(s>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){return this.i(a,b)}, -$il:1, -$ie:1, -$in:1} -A.h3.prototype={ -gj(a){return a.length}} -A.hj.prototype={ -gj(a){var s=a.length -s.toString -return s}, -i(a,b){var s=a.length -s.toString -s=b>>>0!==b||b>=s -s.toString -if(s)throw A.b(A.V(b,this.gj(a),a,null,null)) -s=a.getItem(b) -s.toString -return s}, -l(a,b,c){A.U(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s=a.length -s.toString -if(s>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){return this.i(a,b)}, -$il:1, -$ie:1, -$in:1} -A.aQ.prototype={$iaQ:1} -A.hq.prototype={ -gj(a){var s=a.length -s.toString -return s}, -i(a,b){var s=a.length -s.toString -s=b>>>0!==b||b>=s -s.toString -if(s)throw A.b(A.V(b,this.gj(a),a,null,null)) -s=a.getItem(b) -s.toString -return s}, -l(a,b,c){t.hk.a(c) -throw A.b(A.F("Cannot assign element of immutable List."))}, -gv(a){var s=a.length -s.toString -if(s>0){s=a[0] -s.toString -return s}throw A.b(A.K("No elements"))}, -u(a,b){return this.i(a,b)}, -$il:1, -$ie:1, -$in:1} -A.ib.prototype={} -A.ic.prototype={} -A.im.prototype={} -A.io.prototype={} -A.iK.prototype={} -A.iL.prototype={} -A.iT.prototype={} -A.iU.prototype={} -A.f4.prototype={ -gj(a){return a.length}} -A.f5.prototype={ -D(a,b){return A.aY(a.get(b))!=null}, -i(a,b){return A.aY(a.get(A.U(b)))}, -B(a,b){var s,r,q -t.u.a(b) -s=a.entries() -for(;!0;){r=s.next() -q=r.done -q.toString -if(q)return -q=r.value[0] -q.toString -b.$2(q,A.aY(r.value[1]))}}, -gG(a){var s=A.u([],t.s) -this.B(a,new A.js(s)) -return s}, -gO(a){var s=A.u([],t.C) -this.B(a,new A.jt(s)) -return s}, -gj(a){var s=a.size -s.toString -return s}, -$iJ:1} -A.js.prototype={ -$2(a,b){return B.a.m(this.a,a)}, -$S:1} -A.jt.prototype={ -$2(a,b){return B.a.m(this.a,t.f.a(b))}, -$S:1} -A.f6.prototype={ -gj(a){return a.length}} -A.bL.prototype={} -A.h_.prototype={ -gj(a){return a.length}} -A.hQ.prototype={} -A.fY.prototype={} -A.hu.prototype={} -A.fh.prototype={ -hd(a){var s,r,q,p,o,n,m,l,k,j -t.bq.a(a) -for(s=a.$ti,r=s.h("bg(e.E)").a(new A.jy()),q=a.gC(0),s=new A.cl(q,r,s.h("cl")),r=this.a,p=!1,o=!1,n="";s.n();){m=q.gq(0) -if(r.aB(m)&&o){l=A.pj(m,r) -k=n.charCodeAt(0)==0?n:n -n=B.b.p(k,0,r.aF(k,!0)) -l.b=n -if(r.b0(n))B.a.l(l.e,0,r.gaJ()) -n=""+l.k(0)}else if(r.ae(m)>0){o=!r.aB(m) -n=""+m}else{j=m.length -if(j!==0){if(0>=j)return A.c(m,0) -j=r.cp(m[0])}else j=!1 -if(!j)if(p)n+=r.gaJ() -n+=m}p=r.b0(m)}return n.charCodeAt(0)==0?n:n}, -dW(a,b){var s -if(!this.f8(b))return b -s=A.pj(b,this.a) -s.hl(0) -return s.k(0)}, -f8(a){var s,r,q,p,o,n,m,l,k=this.a,j=k.ae(a) -if(j!==0){if(k===$.jd())for(s=a.length,r=0;r=0))return A.c(s,r) -m=s.charCodeAt(r) -if(k.a3(m)){if(k===$.jd()&&m===47)return!0 -if(p!=null&&k.a3(p))return!0 -if(p===46)l=n==null||n===46||k.a3(n) -else l=!1 -if(l)return!0}}if(p==null)return!0 -if(k.a3(p))return!0 -if(p===46)k=n==null||k.a3(n)||n===46 -else k=!1 -if(k)return!0 -return!1}} -A.jy.prototype={ -$1(a){return A.U(a)!==""}, -$S:30} -A.nh.prototype={ -$1(a){A.oq(a) -return a==null?"null":'"'+a+'"'}, -$S:31} -A.cN.prototype={ -eg(a){var s,r=this.ae(a) -if(r>0)return B.b.p(a,0,r) -if(this.aB(a)){if(0>=a.length)return A.c(a,0) -s=a[0]}else s=null -return s}} -A.k3.prototype={ -hw(){var s,r,q=this -while(!0){s=q.d -if(!(s.length!==0&&J.ac(B.a.ga4(s),"")))break -s=q.d -if(0>=s.length)return A.c(s,-1) -s.pop() -s=q.e -if(0>=s.length)return A.c(s,-1) -s.pop()}s=q.e -r=s.length -if(r!==0)B.a.l(s,r-1,"")}, -hl(a){var s,r,q,p,o,n,m=this,l=A.u([],t.s) -for(s=m.d,r=s.length,q=0,p=0;p=n)return A.c(l,-1) -l.pop()}else ++q}else B.a.m(l,o)}if(m.b==null)B.a.h4(l,0,A.dO(q,"..",!1,t.N)) -if(l.length===0&&m.b==null)B.a.m(l,".") -m.shq(l) -s=m.a -m.seh(A.dO(l.length+1,s.gaJ(),!0,t.N)) -r=m.b -if(r==null||l.length===0||!s.b0(r))B.a.l(m.e,0,"") -r=m.b -if(r!=null&&s===$.jd()){r.toString -m.b=A.vP(r,"/","\\")}m.hw()}, -k(a){var s,r,q,p=this,o=p.b -o=o!=null?""+o:"" -for(s=0;r=p.d,s=0))return A.c(a,s) -s=a.charCodeAt(s)!==47 -r=s}else r=!1 -return r}, -aF(a,b){var s=a.length -if(s!==0){if(0>=s)return A.c(a,0) -s=a.charCodeAt(0)===47}else s=!1 -if(s)return 1 -return 0}, -ae(a){return this.aF(a,!1)}, -aB(a){return!1}, -gaC(){return"posix"}, -gaJ(){return"/"}} -A.hy.prototype={ -cp(a){return B.b.N(a,"/")}, -a3(a){return a===47}, -b0(a){var s,r=a.length -if(r===0)return!1 -s=r-1 -if(!(s>=0))return A.c(a,s) -if(a.charCodeAt(s)!==47)return!0 -return B.b.dK(a,"://")&&this.ae(a)===r}, -aF(a,b){var s,r,q,p=a.length -if(p===0)return 0 -if(0>=p)return A.c(a,0) -if(a.charCodeAt(0)===47)return 1 -for(s=0;s=s)return A.c(a,0) -s=a.charCodeAt(0)===47}else s=!1 -return s}, -gaC(){return"url"}, -gaJ(){return"/"}} -A.hJ.prototype={ -cp(a){return B.b.N(a,"/")}, -a3(a){return a===47||a===92}, -b0(a){var s,r=a.length -if(r===0)return!1 -s=r-1 -if(!(s>=0))return A.c(a,s) -s=a.charCodeAt(s) -return!(s===47||s===92)}, -aF(a,b){var s,r,q=a.length -if(q===0)return 0 -if(0>=q)return A.c(a,0) -if(a.charCodeAt(0)===47)return 1 -if(a.charCodeAt(0)===92){if(q>=2){if(1>=q)return A.c(a,1) -s=a.charCodeAt(1)!==92}else s=!0 -if(s)return 1 -r=B.b.ai(a,"\\",2) -if(r>0){r=B.b.ai(a,"\\",r+1) -if(r>0)return r}return q}if(q<3)return 0 -if(!A.qL(a.charCodeAt(0)))return 0 -if(a.charCodeAt(1)!==58)return 0 -q=a.charCodeAt(2) -if(!(q===47||q===92))return 0 -return 3}, -ae(a){return this.aF(a,!1)}, -aB(a){return this.ae(a)===1}, -gaC(){return"windows"}, -gaJ(){return"\\"}} -A.nk.prototype={ -$1(a){return A.vj(a)}, -$S:32} -A.fn.prototype={ -k(a){return"DatabaseException("+this.a+")"}} -A.hd.prototype={ -k(a){return this.em(0)}, -bO(){var s=this.b -if(s==null){s=new A.kj(this).$0() -this.sfj(s)}return s}, -sfj(a){this.b=A.dq(a)}} -A.kj.prototype={ -$0(){var s=new A.kk(this.a.a.toLowerCase()),r=s.$1("(sqlite code ") -if(r!=null)return r -r=s.$1("(code ") -if(r!=null)return r -r=s.$1("code=") -if(r!=null)return r -return null}, -$S:33} -A.kk.prototype={ -$1(a){var s,r,q,p,o,n=this.a,m=B.b.cv(n,a) -if(!J.ac(m,-1))try{p=m -if(typeof p!=="number")return p.b5() -p=B.b.hB(B.b.a_(n,p+a.length)).split(" ") -if(0>=p.length)return A.c(p,0) -s=p[0] -r=J.rw(s,")") -if(!J.ac(r,-1))s=J.rB(s,0,r) -q=A.nU(s,null) -if(q!=null)return q}catch(o){}return null}, -$S:34} -A.jD.prototype={} -A.fv.prototype={ -k(a){return A.qI(this).k(0)+"("+this.a+", "+A.t(this.b)+")"}} -A.cG.prototype={} -A.bu.prototype={ -k(a){var s=this,r=t.N,q=t.X,p=A.W(r,q),o=s.y -if(o!=null){r=A.nR(o,r,q) -q=A.B(r) -q=q.h("@").t(q.h("D.V")) -o=q.h("r?") -o.a(r.K(0,"arguments")) -o.a(r.K(0,"sql")) -if(r.ghb(0))p.l(0,"details",new A.dy(r,q.h("dy<1,2,j,r?>")))}r=s.bO()==null?"":": "+A.t(s.bO())+", " -r=""+("SqfliteFfiException("+s.x+r+", "+s.a+"})") -q=s.r -if(q!=null){r+=" sql "+q -q=s.w -q=q==null?null:!q.gY(q) -if(q===!0){q=s.w -q.toString -q=r+(" args "+A.qE(q)) -r=q}}else r+=" "+s.eq(0) -if(p.a!==0)r+=" "+p.k(0) -return r.charCodeAt(0)==0?r:r}, -sfO(a,b){this.y=t.h9.a(b)}} -A.ky.prototype={} -A.kz.prototype={} -A.e3.prototype={ -k(a){var s=this.a,r=this.b,q=this.c,p=q==null?null:!q.gY(q) -if(p===!0){q.toString -q=" "+A.qE(q)}else q="" -return A.t(s)+" "+(A.t(r)+q)}, -sek(a){this.c=t.kR.a(a)}} -A.iE.prototype={} -A.is.prototype={ -E(){var s=0,r=A.y(t.H),q=1,p,o=this,n,m,l,k -var $async$E=A.z(function(a,b){if(a===1){p=b -s=q}while(true)switch(s){case 0:q=3 -s=6 -return A.o(o.a.$0(),$async$E) -case 6:n=b -o.b.W(0,n) -q=1 -s=5 -break -case 3:q=2 -k=p -m=A.T(k) -o.b.ac(m) -s=5 -break -case 2:s=1 -break -case 5:return A.w(null,r) -case 1:return A.v(p,r)}}) -return A.x($async$E,r)}} -A.aP.prototype={ -e3(){var s=this -return A.az(["path",s.r,"id",s.e,"readOnly",s.w,"singleInstance",s.f],t.N,t.X)}, -d8(){var s,r=this -if(r.da()===0)return null -s=r.x.b -s=s.a.x2.$1(s.b) -s=self.Number(s==null?t.K.a(s):s) -if(r.y>=1)A.aZ("[sqflite-"+r.e+"] Inserted "+A.t(s)) -return s}, -k(a){return A.fL(this.e3())}, -ab(a){var s=this -s.ba() -s.ak("Closing database "+s.k(0)) -s.x.X()}, -c6(a){var s=a==null?null:new A.b0(a.a,a.$ti.h("b0<1,r?>")) -return s==null?B.C:s}, -fY(a,b){return this.d.a2(new A.kt(this,a,b),t.H)}, -a9(a,b){return this.f4(a,b)}, -f4(a,b){var s=0,r=A.y(t.H),q,p=[],o=this,n,m,l,k -var $async$a9=A.z(function(c,d){if(c===1)return A.v(d,r) -while(true)switch(s){case 0:o.cD(a,b) -if(B.b.I(a,"PRAGMA sqflite -- ")){if(a==="PRAGMA sqflite -- db_config_defensive_off"){m=o.x -l=m.b -k=l.a.el(l.b,1010,0) -if(k!==0)A.eX(m,k,null,null,null)}}else{m=b==null?null:!b.gY(b) -l=o.x -if(m===!0){n=l.cI(a) -try{n.dL(new A.cd(o.c6(b))) -s=1 -break}finally{n.X()}}else l.fQ(a)}case 1:return A.w(q,r)}}) -return A.x($async$a9,r)}, -ak(a){if(a!=null&&this.y>=1)A.aZ("[sqflite-"+this.e+"] "+A.t(a))}, -cD(a,b){var s -if(this.y>=1){s=b==null?null:!b.gY(b) -s=s===!0?" "+A.t(b):"" -A.aZ("[sqflite-"+this.e+"] "+a+s) -this.ak(null)}}, -bk(){var s=0,r=A.y(t.H),q=this -var $async$bk=A.z(function(a,b){if(a===1)return A.v(b,r) -while(true)switch(s){case 0:s=q.c.length!==0?2:3 -break -case 2:s=4 -return A.o(q.as.a2(new A.kr(q),t.P),$async$bk) -case 4:case 3:return A.w(null,r)}}) -return A.x($async$bk,r)}, -ba(){var s=0,r=A.y(t.H),q=this -var $async$ba=A.z(function(a,b){if(a===1)return A.v(b,r) -while(true)switch(s){case 0:s=q.c.length!==0?2:3 -break -case 2:s=4 -return A.o(q.as.a2(new A.km(q),t.P),$async$ba) -case 4:case 3:return A.w(null,r)}}) -return A.x($async$ba,r)}, -aZ(a,b){return this.h1(a,t.gq.a(b))}, -h1(a,b){var s=0,r=A.y(t.z),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f -var $async$aZ=A.z(function(c,d){if(c===1){o=d -s=p}while(true)switch(s){case 0:g=m.b -s=g==null?3:5 -break -case 3:s=6 -return A.o(b.$0(),$async$aZ) -case 6:q=d -s=1 -break -s=4 -break -case 5:s=a===g||a===-1?7:9 -break -case 7:p=11 -s=14 -return A.o(b.$0(),$async$aZ) -case 14:g=d -q=g -n=[1] -s=12 -break -n.push(13) -s=12 -break -case 11:p=10 -f=o -g=A.T(f) -if(g instanceof A.d1){l=g -k=!1 -try{if(m.b!=null){g=m.x.b -i=A.h(g.a.dN.$1(g.b))!==0}else i=!1 -k=i}catch(e){}if(A.bG(k)){m.b=null -g=A.qm(l) -g.d=!0 -throw A.b(g)}else throw f}else throw f -n.push(13) -s=12 -break -case 10:n=[2] -case 12:p=2 -if(m.b==null)m.bk() -s=n.pop() -break -case 13:s=8 -break -case 9:g=new A.C($.E,t.D) -B.a.m(m.c,new A.is(b,new A.cn(g,t.ou))) -q=g -s=1 -break -case 8:case 4:case 1:return A.w(q,r) -case 2:return A.v(o,r)}}) -return A.x($async$aZ,r)}, -fZ(a,b){return this.d.a2(new A.ku(this,a,b),t.I)}, -bd(a,b){var s=0,r=A.y(t.I),q,p=this,o -var $async$bd=A.z(function(c,d){if(c===1)return A.v(d,r) -while(true)switch(s){case 0:if(p.w)A.O(A.he("sqlite_error",null,"Database readonly",null)) -s=3 -return A.o(p.a9(a,b),$async$bd) -case 3:o=p.d8() -if(p.y>=1)A.aZ("[sqflite-"+p.e+"] Inserted id "+A.t(o)) -q=o -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$bd,r)}, -h2(a,b){return this.d.a2(new A.kx(this,a,b),t.S)}, -bf(a,b){var s=0,r=A.y(t.S),q,p=this -var $async$bf=A.z(function(c,d){if(c===1)return A.v(d,r) -while(true)switch(s){case 0:if(p.w)A.O(A.he("sqlite_error",null,"Database readonly",null)) -s=3 -return A.o(p.a9(a,b),$async$bf) -case 3:q=p.da() -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$bf,r)}, -h_(a,b,c){return this.d.a2(new A.kw(this,a,c,b),t.z)}, -be(a,b){return this.f5(a,b)}, -f5(a,b){var s=0,r=A.y(t.z),q,p=[],o=this,n,m,l,k -var $async$be=A.z(function(c,d){if(c===1)return A.v(d,r) -while(true)switch(s){case 0:k=o.x.cI(a) -try{o.cD(a,b) -m=k -l=o.c6(b) -if(m.c.e)A.O(A.K(u.f)) -m.aq() -m.bV(new A.cd(l)) -n=m.fn() -o.ak("Found "+n.d.length+" rows") -m=n -m=A.az(["columns",m.a,"rows",m.d],t.N,t.X) -q=m -s=1 -break}finally{k.X()}case 1:return A.w(q,r)}}) -return A.x($async$be,r)}, -dm(a){var s,r,q,p,o,n,m,l,k=a.a,j=k -try{s=a.d -r=s.a -q=A.u([],t.dO) -for(n=a.c;!0;){if(s.n()){m=s.x -m===$&&A.bj("current") -p=m -J.rm(q,p.b)}else{a.e=!0 -break}if(J.a1(q)>=n)break}o=A.az(["columns",r,"rows",q],t.N,t.X) -if(!a.e)J.nH(o,"cursorId",k) -return o}catch(l){this.bZ(j) -throw l}finally{if(a.e)this.bZ(j)}}, -c9(a,b,c){var s=0,r=A.y(t.X),q,p=this,o,n,m,l,k -var $async$c9=A.z(function(d,e){if(d===1)return A.v(e,r) -while(true)switch(s){case 0:k=p.x.cI(b) -p.cD(b,c) -o=p.c6(c) -n=k.c -if(n.e)A.O(A.K(u.f)) -k.aq() -k.bV(new A.cd(o)) -o=k.gc0() -k.gds() -m=new A.hL(k,o,B.E) -m.bW() -n.c=!1 -k.f=m -n=++p.Q -l=new A.iE(n,k,a,m) -p.z.l(0,n,l) -q=p.dm(l) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$c9,r)}, -h0(a,b){return this.d.a2(new A.kv(this,b,a),t.z)}, -ca(a,b){var s=0,r=A.y(t.X),q,p=this,o,n -var $async$ca=A.z(function(c,d){if(c===1)return A.v(d,r) -while(true)switch(s){case 0:if(p.y>=2){o=a===!0?" (cancel)":"" -p.ak("queryCursorNext "+b+o)}n=p.z.i(0,b) -if(a===!0){p.bZ(b) -q=null -s=1 -break}if(n==null)throw A.b(A.K("Cursor "+b+" not found")) -q=p.dm(n) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$ca,r)}, -bZ(a){var s=this.z.K(0,a) -if(s!=null){if(this.y>=2)this.ak("Closing cursor "+a) -s.b.X()}}, -da(){var s=this.x.b,r=A.h(s.a.x1.$1(s.b)) -if(this.y>=1)A.aZ("[sqflite-"+this.e+"] Modified "+r+" rows") -return r}, -fW(a,b,c){return this.d.a2(new A.ks(this,t.fr.a(c),b,a),t.z)}, -af(a,b,c){return this.f3(a,b,t.fr.a(c))}, -f3(b3,b4,b5){var s=0,r=A.y(t.z),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2 -var $async$af=A.z(function(b6,b7){if(b6===1){o=b7 -s=p}while(true)switch(s){case 0:a8={} -a8.a=null -d=!b4 -if(d)a8.a=A.u([],t.ke) -c=b5.length,b=n.y>=1,a=n.x.b,a0=a.b,a=a.a.x1,a1="[sqflite-"+n.e+"] Modified ",a2=0 -case 3:if(!(a20)A.O(A.p3("BigInt value exceeds the range of 64 bits")) -A.h(s.c.p4.$3(s.b,b,self.BigInt(a.k(0)))) -s=n -break $label0$0}if(A.c2(a)){s=o.a -r=a?1:0 -s.c.cS(s.b,b,r) -s=n -break $label0$0}if(typeof a=="number"){s=o.a -A.h(s.c.R8.$3(s.b,b,a)) -s=n -break $label0$0}if(typeof a=="string"){s=o.a -q=B.i.ar(a) -r=s.c -p=r.cn(q) -B.a.m(s.d,p) -A.h(r.RG.$5(s.b,b,p,q.length,0)) -s=n -break $label0$0}s=t.L -if(s.b(a)){r=o.a -s.a(a) -s=r.c -p=s.cn(a) -B.a.m(r.d,p) -A.h(s.rx.$5(r.b,b,p,self.BigInt(J.a1(a)),0)) -s=n -break $label0$0}s=A.O(A.bm(a,"params["+b+"]","Allowed parameters must either be null or bool, int, num, String or List."))}return s}, -bV(a){$label0$0:{this.eH(a.a) -break $label0$0}}, -X(){var s,r=this.c -if(!r.e){$.jf().dJ(0,this) -r.X() -s=this.b -if(!s.e)B.a.K(s.c.d,r)}}, -dL(a){var s=this -if(s.c.e)A.O(A.K(u.f)) -s.aq() -s.bV(a) -s.eZ()}} -A.hL.prototype={ -gq(a){var s=this.x -s===$&&A.bj("current") -return s}, -n(){var s,r,q,p,o=this,n=o.r -if(n.c.e||n.f!==o)return!1 -s=n.a -r=s.c -s=s.b -q=A.h(r.k1.$1(s)) -if(q===100){if(!o.y){o.w=A.h(r.fy.$1(s)) -o.sfk(t.a.a(n.gc0())) -o.bW() -o.y=!0}s=[] -for(p=0;p=0&&b>>0!==b||b>=s.length)return A.c(s,b) -return s[b]}return null}r=this.a.c.i(0,b) -if(r==null)return null -s=this.b -if(r>>>0!==r||r>=s.length)return A.c(s,r) -return s[r]}, -gG(a){return this.a.a}, -gO(a){return this.b}, -$iJ:1} -A.it.prototype={ -gq(a){var s=this.a,r=s.d,q=this.b -if(!(q>=0&&q")),p=t.W,o=t.Z,n=t.K,q=q.h("i.E"),m=this.b,l=this.a;r.n();){k=r.d -if(k==null)k=q.a(k) -j=n.a(s.gdM(a)[k]) -if(o.b(j))l.l(0,k,j) -else if(p.b(j))m.l(0,k,j)}}} -A.lm.prototype={ -$2(a,b){var s -A.U(a) -t.lK.a(b) -s={} -this.a[a]=s -J.bk(b,new A.ll(s))}, -$S:56} -A.ll.prototype={ -$2(a,b){this.a[A.U(a)]=t.K.a(b)}, -$S:57} -A.jV.prototype={} -A.cJ.prototype={} -A.hG.prototype={} -A.lr.prototype={} -A.jk.prototype={ -bz(a){var s=0,r=A.y(t.H),q=this,p,o,n -var $async$bz=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:p=new A.C($.E,t.go) -o=new A.a9(p,t.my) -n=t.kq.a(self.self.indexedDB) -n.toString -o.W(0,J.rz(n,q.b,new A.jo(o),new A.jp(),1)) -s=2 -return A.o(p,$async$bz) -case 2:q.seT(c) -return A.w(null,r)}}) -return A.x($async$bz,r)}, -by(){var s=0,r=A.y(t.dV),q,p=this,o,n,m,l,k -var $async$by=A.z(function(a,b){if(a===1)return A.v(b,r) -while(true)switch(s){case 0:l=p.a -l.toString -o=A.W(t.N,t.S) -n=new A.dc(t.B.a(B.f.cO(l,"files","readonly").objectStore("files").index("fileName").openKeyCursor()),t.oz) -case 3:k=A -s=5 -return A.o(n.n(),$async$by) -case 5:if(!k.bG(b)){s=4 -break}m=n.a -if(m==null)m=A.O(A.K("Await moveNext() first")) -o.l(0,A.U(m.key),A.h(m.primaryKey)) -s=3 -break -case 4:q=o -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$by,r)}, -bu(a){var s=0,r=A.y(t.I),q,p=this,o,n -var $async$bu=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:o=p.a -o.toString -o=B.f.cO(o,"files","readonly").objectStore("files").index("fileName") -o.toString -n=A -s=3 -return A.o(B.W.ef(o,a),$async$bu) -case 3:q=n.dq(c) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$bu,r)}, -cg(a,b){return A.nV(t.B.a(a.objectStore("files").get(b)),!1,t.jV).e2(new A.jl(b),t.bc)}, -aD(a){var s=0,r=A.y(t.p),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d -var $async$aD=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:e=p.a -e.toString -o=B.f.bG(e,B.o,"readonly") -e=o.objectStore("blocks") -e.toString -s=3 -return A.o(p.cg(o,a),$async$aD) -case 3:n=c -m=J.Y(n) -l=m.gj(n) -k=new Uint8Array(l) -j=A.u([],t.iw) -l=t.t -i=new A.dc(t.B.a(e.openCursor(self.IDBKeyRange.bound(A.u([a,0],l),A.u([a,9007199254740992],l)))),t.c6) -e=t.j,l=t.H -case 4:d=A -s=6 -return A.o(i.n(),$async$aD) -case 6:if(!d.bG(c)){s=5 -break}h=i.a -if(h==null)h=A.O(A.K("Await moveNext() first")) -g=A.h(J.ad(e.a(h.key),1)) -f=m.gj(n) -if(typeof f!=="number"){q=f.aN() -s=1 -break}B.a.m(j,A.p4(new A.jq(h,k,g,Math.min(4096,f-g)),l)) -s=4 -break -case 5:s=7 -return A.o(A.nM(j,l),$async$aD) -case 7:q=k -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$aD,r)}, -ah(a,b){var s=0,r=A.y(t.H),q=this,p,o,n,m,l,k,j -var $async$ah=A.z(function(c,d){if(c===1)return A.v(d,r) -while(true)switch(s){case 0:k=q.a -k.toString -p=B.f.bG(k,B.o,"readwrite") -k=p.objectStore("blocks") -k.toString -s=2 -return A.o(q.cg(p,a),$async$ah) -case 2:o=d -n=b.b -m=A.B(n).h("b3<1>") -l=A.fJ(new A.b3(n,m),!0,m.h("e.E")) -B.a.ei(l) -m=A.aa(l) -s=3 -return A.o(A.nM(new A.ag(l,m.h("I<~>(1)").a(new A.jm(new A.jn(k,a),b)),m.h("ag<1,I<~>>")),t.H),$async$ah) -case 3:k=J.Y(o) -s=b.c!==k.gj(o)?4:5 -break -case 4:n=p.objectStore("files") -n.toString -j=B.r -s=7 -return A.o(B.h.dY(n,a).gv(0),$async$ah) -case 7:s=6 -return A.o(j.cP(d,{name:k.gaC(o),length:b.c}),$async$ah) -case 6:case 5:return A.w(null,r)}}) -return A.x($async$ah,r)}, -al(a,b,c){var s=0,r=A.y(t.H),q=this,p,o,n,m,l,k,j -var $async$al=A.z(function(d,e){if(d===1)return A.v(e,r) -while(true)switch(s){case 0:k=q.a -k.toString -p=B.f.bG(k,B.o,"readwrite") -k=p.objectStore("files") -k.toString -o=p.objectStore("blocks") -o.toString -s=2 -return A.o(q.cg(p,b),$async$al) -case 2:n=e -m=J.Y(n) -s=m.gj(n)>c?3:4 -break -case 3:l=t.t -s=5 -return A.o(B.h.cr(o,self.IDBKeyRange.bound(A.u([b,B.c.H(c,4096)*4096+1],l),A.u([b,9007199254740992],l))),$async$al) -case 5:case 4:j=B.r -s=7 -return A.o(B.h.dY(k,b).gv(0),$async$al) -case 7:s=6 -return A.o(j.cP(e,{name:m.gaC(n),length:c}),$async$al) -case 6:return A.w(null,r)}}) -return A.x($async$al,r)}, -bt(a){var s=0,r=A.y(t.H),q=this,p,o,n,m -var $async$bt=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:m=q.a -m.toString -p=B.f.bG(m,B.o,"readwrite") -m=t.t -o=self.IDBKeyRange.bound(A.u([a,0],m),A.u([a,9007199254740992],m)) -m=p.objectStore("blocks") -m.toString -m=B.h.cr(m,o) -n=p.objectStore("files") -n.toString -s=2 -return A.o(A.nM(A.u([m,B.h.cr(n,a)],t.iw),t.H),$async$bt) -case 2:return A.w(null,r)}}) -return A.x($async$bt,r)}, -seT(a){this.a=t.k5.a(a)}} -A.jp.prototype={ -$1(a){var s,r,q,p -t.bo.a(a) -s=t.E.a(new A.bZ([],[]).au(a.target.result,!1)) -r=a.oldVersion -if(r==null||r===0){q=B.f.dH(s,"files",!0) -r=t.z -p=A.W(r,r) -p.l(0,"unique",!0) -B.h.eQ(q,"fileName","name",p) -B.f.fK(s,"blocks")}}, -$S:58} -A.jo.prototype={ -$1(a){return this.a.ac("Opening database blocked: "+A.t(a))}, -$S:2} -A.jl.prototype={ -$1(a){t.jV.a(a) -if(a==null)throw A.b(A.bm(this.a,"fileId","File not found in database")) -else return a}, -$S:59} -A.jq.prototype={ -$0(){var s=0,r=A.y(t.H),q=this,p,o,n,m -var $async$$0=A.z(function(a,b){if(a===1)return A.v(b,r) -while(true)switch(s){case 0:p=B.e -o=q.b -n=q.c -m=A -s=2 -return A.o(A.ka(t.w.a(new A.bZ([],[]).au(q.a.value,!1))),$async$$0) -case 2:p.a7(o,n,m.b5(b.buffer,0,q.d)) -return A.w(null,r)}}) -return A.x($async$$0,r)}, -$S:4} -A.jn.prototype={ -$2(a,b){var s=0,r=A.y(t.H),q=this,p,o,n,m,l -var $async$$2=A.z(function(c,d){if(c===1)return A.v(d,r) -while(true)switch(s){case 0:p=q.a -o=q.b -n=t.t -s=2 -return A.o(A.nV(t.B.a(p.openCursor(self.IDBKeyRange.only(A.u([o,a],n)))),!0,t.g9),$async$$2) -case 2:m=d -l=A.rE(A.u([b],t.bs)) -s=m==null?3:5 -break -case 3:s=6 -return A.o(B.h.hs(p,l,A.u([o,a],n)),$async$$2) -case 6:s=4 -break -case 5:s=7 -return A.o(B.r.cP(m,l),$async$$2) -case 7:case 4:return A.w(null,r)}}) -return A.x($async$$2,r)}, -$S:60} -A.jm.prototype={ -$1(a){var s -A.h(a) -s=this.b.b.i(0,a) -s.toString -return this.a.$2(a,s)}, -$S:61} -A.b8.prototype={} -A.lM.prototype={ -fw(a,b,c){B.e.a7(this.b.ht(0,a,new A.lN(this,a)),b,c)}, -fD(a,b){var s,r,q,p,o,n,m,l,k -for(s=b.length,r=0;rp)B.e.a7(s,0,A.b5(r.buffer,r.byteOffset+p,A.dq(Math.min(4096,q-p)))) -return s}, -$S:62} -A.ip.prototype={} -A.cc.prototype={ -aV(a){var s=this.d.a -if(s==null)A.O(A.hA(10)) -if(a.cz(this.w)){this.dr() -return a.d.a}else return A.p5(null,t.H)}, -dr(){var s,r,q=this -if(q.f==null&&!q.w.gY(0)){s=q.w -r=q.f=s.gv(0) -s.K(0,r) -r.d.W(0,A.rT(r.gbE(),t.H).aH(new A.jK(q)))}}, -ao(a){var s=0,r=A.y(t.S),q,p=this,o,n -var $async$ao=A.z(function(b,c){if(b===1)return A.v(c,r) -while(true)switch(s){case 0:n=p.y -s=n.D(0,a)?3:5 -break -case 3:n=n.i(0,a) -n.toString -q=n -s=1 -break -s=4 -break -case 5:s=6 -return A.o(p.d.bu(a),$async$ao) -case 6:o=c -o.toString -n.l(0,a,o) -q=o -s=1 -break -case 4:case 1:return A.w(q,r)}}) -return A.x($async$ao,r)}, -aU(){var s=0,r=A.y(t.H),q=this,p,o,n,m,l,k,j -var $async$aU=A.z(function(a,b){if(a===1)return A.v(b,r) -while(true)switch(s){case 0:m=q.d -s=2 -return A.o(m.by(),$async$aU) -case 2:l=b -q.y.aW(0,l) -p=J.oS(l),p=p.gC(p),o=q.r.d -case 3:if(!p.n()){s=4 -break}n=p.gq(p) -k=o -j=n.a -s=5 -return A.o(m.aD(n.b),$async$aU) -case 5:k.l(0,j,b) -s=3 -break -case 4:return A.w(null,r)}}) -return A.x($async$aU,r)}, -fT(a){return this.aV(new A.de(t.M.a(new A.jL()),new A.a9(new A.C($.E,t.D),t.F)))}, -bI(a,b){return this.r.d.D(0,a)?1:0}, -cR(a,b){var s=this -s.r.d.K(0,a) -if(!s.x.K(0,a))s.aV(new A.dd(s,a,new A.a9(new A.C($.E,t.D),t.F)))}, -e9(a){return $.oP().dW(0,"/"+a)}, -b4(a,b){var s,r,q,p=this,o=a.a -if(o==null)o=A.p6(p.b,"/") -s=p.r -r=s.d.D(0,o)?1:0 -q=s.b4(new A.d0(o),b) -if(r===0)if((b&8)!==0)p.x.m(0,o) -else p.aV(new A.cp(p,o,new A.a9(new A.C($.E,t.D),t.F))) -return new A.dh(new A.i9(p,q.a,o),0)}, -eb(a){}} -A.jK.prototype={ -$0(){var s=this.a -s.f=null -s.dr()}, -$S:8} -A.jL.prototype={ -$0(){}, -$S:8} -A.i9.prototype={ -bL(a,b){this.b.bL(a,b)}, -ge8(){return 0}, -e7(){return this.b.d>=2?1:0}, -bJ(){}, -bK(){return this.b.bK()}, -ea(a){this.b.d=a -return null}, -ec(a){}, -bM(a){var s=this,r=s.a,q=r.d.a -if(q==null)A.O(A.hA(10)) -s.b.bM(a) -if(!r.x.N(0,s.c))r.aV(new A.de(t.M.a(new A.m0(s,a)),new A.a9(new A.C($.E,t.D),t.F)))}, -ed(a){this.b.d=a -return null}, -bN(a,b){var s,r,q,p,o=this.a,n=o.d.a -if(n==null)A.O(A.hA(10)) -n=this.c -s=o.r.d.i(0,n) -if(s==null)s=new Uint8Array(0) -this.b.bN(a,b) -if(!o.x.N(0,n)){r=new Uint8Array(a.length) -B.e.a7(r,0,a) -q=A.u([],t.p8) -p=$.E -B.a.m(q,new A.ip(b,r)) -o.aV(new A.cw(o,n,s,q,new A.a9(new A.C(p,t.D),t.F)))}}, -$ihC:1} -A.m0.prototype={ -$0(){var s=0,r=A.y(t.H),q,p=this,o,n,m -var $async$$0=A.z(function(a,b){if(a===1)return A.v(b,r) -while(true)switch(s){case 0:o=p.a -n=o.a -m=n.d -s=3 -return A.o(n.ao(o.c),$async$$0) -case 3:q=m.al(0,b,p.b) -s=1 -break -case 1:return A.w(q,r)}}) -return A.x($async$$0,r)}, -$S:4} -A.a8.prototype={ -cz(a){t.h.a(a) -a.$ti.c.a(this) -a.cb(a.c,this,!1) -return!0}} -A.de.prototype={ -E(){return this.w.$0()}} -A.dd.prototype={ -cz(a){var s,r,q,p -t.h.a(a) -if(!a.gY(0)){s=a.ga4(0) -for(r=this.x;s!=null;)if(s instanceof A.dd)if(s.x===r)return!1 -else s=s.gb2() -else if(s instanceof A.cw){q=s.gb2() -if(s.x===r){p=s.a -p.toString -p.ck(A.B(s).h("af.E").a(s))}s=q}else if(s instanceof A.cp){if(s.x===r){r=s.a -r.toString -r.ck(A.B(s).h("af.E").a(s)) -return!1}s=s.gb2()}else break}a.$ti.c.a(this) -a.cb(a.c,this,!1) -return!0}, -E(){var s=0,r=A.y(t.H),q=this,p,o,n -var $async$E=A.z(function(a,b){if(a===1)return A.v(b,r) -while(true)switch(s){case 0:p=q.w -o=q.x -s=2 -return A.o(p.ao(o),$async$E) -case 2:n=b -p.y.K(0,o) -s=3 -return A.o(p.d.bt(n),$async$E) -case 3:return A.w(null,r)}}) -return A.x($async$E,r)}} -A.cp.prototype={ -E(){var s=0,r=A.y(t.H),q=this,p,o,n,m,l -var $async$E=A.z(function(a,b){if(a===1)return A.v(b,r) -while(true)switch(s){case 0:p=q.w -o=q.x -n=p.d.a -n.toString -n=B.f.cO(n,"files","readwrite").objectStore("files") -n.toString -m=p.y -l=o -s=2 -return A.o(A.nV(A.t9(n,{name:o,length:0}),!0,t.S),$async$E) -case 2:m.l(0,l,b) -return A.w(null,r)}}) -return A.x($async$E,r)}} -A.cw.prototype={ -cz(a){var s,r -t.h.a(a) -s=a.b===0?null:a.ga4(0) -for(r=this.x;s!=null;)if(s instanceof A.cw)if(s.x===r){B.a.aW(s.z,this.z) -return!1}else s=s.gb2() -else if(s instanceof A.cp){if(s.x===r)break -s=s.gb2()}else break -a.$ti.c.a(this) -a.cb(a.c,this,!1) -return!0}, -E(){var s=0,r=A.y(t.H),q=this,p,o,n,m,l,k -var $async$E=A.z(function(a,b){if(a===1)return A.v(b,r) -while(true)switch(s){case 0:m=q.y -l=new A.lM(m,A.W(t.S,t.p),m.length) -for(m=q.z,p=m.length,o=0;o=2?1:0}, -bJ(){if(this.c)this.a.d.K(0,this.b)}, -bK(){return this.a.d.i(0,this.b).length}, -ea(a){this.d=a}, -ec(a){}, -bM(a){var s=this.a.d,r=this.b,q=s.i(0,r),p=new Uint8Array(a) -if(q!=null)B.e.U(p,0,Math.min(a,q.length),q) -s.l(0,r,p)}, -ed(a){this.d=a}, -bN(a,b){var s,r,q,p,o=this.a.d,n=this.b,m=o.i(0,n) -if(m==null)m=new Uint8Array(0) -s=b+a.length -r=m.length -q=s-r -if(q<=0)B.e.U(m,b,s,a) -else{p=new Uint8Array(r+q) -B.e.a7(p,0,m) -B.e.a7(p,b,a) -o.l(0,n,p)}}} -A.hD.prototype={ -bo(a,b){var s,r,q -t.L.a(a) -s=J.Y(a) -r=A.h(this.d.$1(s.gj(a)+b)) -q=A.b5(t.J.a(this.b.buffer),0,null) -B.e.U(q,r,r+s.gj(a),a) -B.e.cs(q,r+s.gj(a),r+s.gj(a)+b,0) -return r}, -cn(a){return this.bo(a,0)}, -cS(a,b,c){return A.h(this.p4.$3(a,b,self.BigInt(c)))}, -el(a,b,c){var s=this.fR -if(s!=null)return A.h(s.$3(a,b,c)) -else return 1}} -A.m1.prototype={ -ew(){var s,r,q,p=this,o=t.d9.a(new self.WebAssembly.Memory({initial:16})) -p.c=o -s=t.N -r=t.K -q=t.Z -p.sez(t.n2.a(A.az(["env",A.az(["memory",o],s,r),"dart",A.az(["error_log",A.X(new A.mh(o),q),"xOpen",A.X(new A.mi(p,o),q),"xDelete",A.X(new A.mj(p,o),q),"xAccess",A.X(new A.mu(p,o),q),"xFullPathname",A.X(new A.mA(p,o),q),"xRandomness",A.X(new A.mB(p,o),q),"xSleep",A.X(new A.mC(p),q),"xCurrentTimeInt64",A.X(new A.mD(p,o),q),"xDeviceCharacteristics",A.X(new A.mE(p),q),"xClose",A.X(new A.mF(p),q),"xRead",A.X(new A.mG(p,o),q),"xWrite",A.X(new A.mk(p,o),q),"xTruncate",A.X(new A.ml(p),q),"xSync",A.X(new A.mm(p),q),"xFileSize",A.X(new A.mn(p,o),q),"xLock",A.X(new A.mo(p),q),"xUnlock",A.X(new A.mp(p),q),"xCheckReservedLock",A.X(new A.mq(p,o),q),"function_xFunc",A.X(new A.mr(p),q),"function_xStep",A.X(new A.ms(p),q),"function_xInverse",A.X(new A.mt(p),q),"function_xFinal",A.X(new A.mv(p),q),"function_xValue",A.X(new A.mw(p),q),"function_forget",A.X(new A.mx(p),q),"function_compare",A.X(new A.my(p,o),q),"function_hook",A.X(new A.mz(p,o),q)],s,r)],s,t.lK)))}, -sez(a){this.b=t.n2.a(a)}} -A.mh.prototype={ -$1(a){A.aZ("[sqlite3] "+A.cm(this.a,A.h(a)))}, -$S:9} -A.mi.prototype={ -$5(a,b,c,d,e){var s,r,q -A.h(a) -A.h(b) -A.h(c) -A.h(d) -A.h(e) -s=this.a -r=s.d.e.i(0,a) -r.toString -q=this.b -return A.aK(new A.m8(s,r,new A.d0(A.oa(q,b,null)),d,q,c,e))}, -$C:"$5", -$R:5, -$S:26} -A.m8.prototype={ -$0(){var s=this,r=s.b.b4(s.c,s.d),q=t.a5.a(r.a),p=s.a.d.f,o=p.a -p.l(0,o,q) -q=s.e -A.hK(q,s.f,o) -p=s.r -if(p!==0)A.hK(q,p,r.b)}, -$S:0} -A.mj.prototype={ -$3(a,b,c){var s -A.h(a) -A.h(b) -A.h(c) -s=this.a.d.e.i(0,a) -s.toString -return A.aK(new A.m7(s,A.cm(this.b,b),c))}, -$C:"$3", -$R:3, -$S:18} -A.m7.prototype={ -$0(){return this.a.cR(this.b,this.c)}, -$S:0} -A.mu.prototype={ -$4(a,b,c,d){var s,r -A.h(a) -A.h(b) -A.h(c) -A.h(d) -s=this.a.d.e.i(0,a) -s.toString -r=this.b -return A.aK(new A.m6(s,A.cm(r,b),c,r,d))}, -$C:"$4", -$R:4, -$S:27} -A.m6.prototype={ -$0(){var s=this -A.hK(s.d,s.e,s.a.bI(s.b,s.c))}, -$S:0} -A.mA.prototype={ -$4(a,b,c,d){var s,r -A.h(a) -A.h(b) -A.h(c) -A.h(d) -s=this.a.d.e.i(0,a) -s.toString -r=this.b -return A.aK(new A.m5(s,A.cm(r,b),c,r,d))}, -$C:"$4", -$R:4, -$S:27} -A.m5.prototype={ -$0(){var s,r,q=this,p=B.i.ar(q.a.e9(q.b)),o=p.length -if(o>q.c)throw A.b(A.hA(14)) -s=A.b5(t.J.a(q.d.buffer),0,null) -r=q.e -B.e.a7(s,r,p) -o=r+o -if(!(o>=0&&o").b(j)?j:A.pK(c.a(j),c),$async$aO) -case 12:j=f -q=j -n=[1] -s=4 -break -s=10 -break -case 11:q=l -n=[1] -s=4 -break -case 10:n.push(5) -s=4 -break -case 3:n=[2] -case 4:p=2 -k=new A.jv(m,h) -k.$0() -s=n.pop() -break -case 5:case 1:return A.w(q,r) -case 2:return A.v(o,r)}}) -return A.x($async$aO,r)}, -k(a){return"Lock["+A.oG(this)+"]"}, -$it7:1} -A.jv.prototype={ -$0(){var s=this.a,r=this.b -if(s.a===r.a)s.a=null -r.fH(0)}, -$S:0};(function aliases(){var s=J.cM.prototype -s.eo=s.k -s=J.a2.prototype -s.ep=s.k -s=A.i.prototype -s.cU=s.M -s=A.f.prototype -s.en=s.cm -s=A.fn.prototype -s.em=s.k -s=A.hd.prototype -s.eq=s.k})();(function installTearOffs(){var s=hunkHelpers._static_2,r=hunkHelpers._static_1,q=hunkHelpers._static_0,p=hunkHelpers.installStaticTearOff,o=hunkHelpers.installInstanceTearOff,n=hunkHelpers._instance_2u,m=hunkHelpers._instance_0u -s(J,"uX","t0",72) -r(A,"vl","tV",10) -r(A,"vm","tW",10) -r(A,"vn","tX",10) -q(A,"qF","vd",0) -r(A,"vo","v9",5) -p(A,"vp",4,null,["$4"],["ng"],54,0) -o(A.co.prototype,"gfI",0,1,null,["$2","$1"],["bq","ac"],24,0,0) -n(A.C.prototype,"gd2","P",20) -o(A.dj.prototype,"gfA",0,1,null,["$2","$1"],["dD","fB"],24,0,0) -r(A,"vs","tT",49) -r(A,"oH","j7",25) -m(A.de.prototype,"gbE","E",0) -m(A.dd.prototype,"gbE","E",4) -m(A.cp.prototype,"gbE","E",4) -m(A.cw.prototype,"gbE","E",4)})();(function inheritance(){var s=hunkHelpers.mixin,r=hunkHelpers.inherit,q=hunkHelpers.inheritMany -r(A.r,null) -q(A.r,[A.nO,J.cM,J.du,A.e,A.dx,A.D,A.bN,A.R,A.i,A.ki,A.b4,A.dQ,A.cl,A.e1,A.dE,A.ed,A.au,A.bX,A.d5,A.cu,A.cT,A.dA,A.en,A.fF,A.lc,A.k1,A.dF,A.eB,A.mL,A.jQ,A.dM,A.cP,A.es,A.hN,A.e7,A.iJ,A.lE,A.aV,A.i4,A.mW,A.mU,A.ee,A.eE,A.dw,A.co,A.bC,A.C,A.hP,A.d3,A.dj,A.iO,A.eg,A.bB,A.hW,A.aX,A.iH,A.iW,A.eP,A.cY,A.id,A.ct,A.ep,A.af,A.er,A.c1,A.cC,A.fi,A.mZ,A.eO,A.a7,A.i3,A.bP,A.bQ,A.lH,A.h0,A.e6,A.lL,A.jG,A.fD,A.a5,A.Q,A.iM,A.aj,A.eM,A.le,A.iA,A.fu,A.jz,A.nL,A.em,A.A,A.dG,A.mR,A.ls,A.k0,A.ia,A.fY,A.hu,A.fh,A.lb,A.k3,A.fn,A.jD,A.fv,A.cG,A.ky,A.kz,A.e3,A.iE,A.is,A.aP,A.kl,A.dm,A.l1,A.e4,A.d1,A.h5,A.hg,A.h6,A.k9,A.dZ,A.k7,A.k8,A.bo,A.fo,A.l2,A.fe,A.cE,A.ix,A.it,A.cd,A.eb,A.d0,A.cj,A.f8,A.nP,A.dc,A.hF,A.jk,A.lM,A.ip,A.i9,A.hD,A.m1,A.jA,A.fa]) -q(J.cM,[J.fE,J.dL,J.a,J.cQ,J.cR,J.cO,J.bR]) -q(J.a,[J.a2,J.M,A.cW,A.a6,A.f,A.f_,A.bM,A.b1,A.P,A.hT,A.at,A.fm,A.fq,A.hX,A.dD,A.hZ,A.fs,A.m,A.i1,A.ay,A.fz,A.i6,A.cL,A.fK,A.fM,A.ig,A.ih,A.aA,A.ii,A.ik,A.aB,A.iq,A.iz,A.cZ,A.aE,A.iB,A.aF,A.iG,A.ao,A.iP,A.hn,A.aI,A.iR,A.hp,A.hx,A.iX,A.iZ,A.j0,A.j2,A.j4,A.bO,A.cK,A.dI,A.dW,A.aL,A.ib,A.aN,A.im,A.h3,A.iK,A.aQ,A.iT,A.f4,A.hQ]) -q(J.a2,[J.h1,J.bW,J.bq,A.jr,A.jE,A.kf,A.m_,A.mK,A.jF,A.jC,A.n0,A.di,A.jV,A.cJ,A.lr,A.b8]) -r(J.jN,J.M) -q(J.cO,[J.dK,J.fG]) -q(A.e,[A.c_,A.l,A.br,A.lq,A.bt,A.ec,A.cs,A.hM,A.iI,A.dk,A.cS]) -q(A.c_,[A.c5,A.eQ]) -r(A.el,A.c5) -r(A.eh,A.eQ) -r(A.b0,A.eh) -q(A.D,[A.dy,A.d8,A.b2]) -q(A.bN,[A.fd,A.jw,A.fc,A.hk,A.jP,A.nr,A.nt,A.lv,A.lu,A.n2,A.jI,A.lS,A.lZ,A.l8,A.l7,A.mO,A.jT,A.lB,A.n8,A.n9,A.lJ,A.lK,A.n6,A.n5,A.k2,A.nB,A.nC,A.jy,A.nh,A.nk,A.kk,A.kq,A.kp,A.kn,A.ko,A.kZ,A.kF,A.kR,A.kQ,A.kL,A.kN,A.kT,A.kH,A.nd,A.nx,A.l3,A.nn,A.kd,A.ke,A.lF,A.lG,A.jp,A.jo,A.jl,A.jm,A.mh,A.mi,A.mj,A.mu,A.mA,A.mB,A.mE,A.mF,A.mG,A.mk,A.mr,A.ms,A.mt,A.mv,A.mw,A.mx,A.my,A.mz]) -q(A.fd,[A.jx,A.k5,A.jO,A.ns,A.n3,A.ni,A.jJ,A.lT,A.jR,A.jU,A.lA,A.k_,A.lf,A.lg,A.lh,A.n7,A.jW,A.jX,A.jY,A.jZ,A.kg,A.kh,A.l4,A.l5,A.mS,A.mT,A.lt,A.nl,A.js,A.jt,A.n1,A.nb,A.na,A.lm,A.ll,A.jn,A.mC,A.mD,A.ml,A.mm,A.mn,A.mo,A.mp,A.mq]) -q(A.R,[A.ce,A.bw,A.fH,A.ht,A.hU,A.h9,A.dv,A.i0,A.bb,A.fX,A.hv,A.hr,A.bv,A.fg]) -q(A.i,[A.d7,A.d9]) -r(A.dz,A.d7) -q(A.fc,[A.nz,A.lw,A.lx,A.mV,A.jH,A.lO,A.lV,A.lU,A.lR,A.lQ,A.lP,A.lY,A.lX,A.lW,A.l9,A.l6,A.mQ,A.mP,A.lD,A.lC,A.mI,A.n4,A.nf,A.mN,A.mM,A.mY,A.mX,A.kj,A.kt,A.kr,A.km,A.ku,A.kx,A.kw,A.kv,A.ks,A.kD,A.kC,A.kO,A.kI,A.kP,A.kM,A.kK,A.kJ,A.kS,A.kU,A.jB,A.kc,A.kb,A.jq,A.lN,A.jK,A.jL,A.m0,A.m8,A.m7,A.m6,A.m5,A.mg,A.mf,A.me,A.md,A.mc,A.mb,A.ma,A.m9,A.m4,A.m3,A.m2,A.jv]) -q(A.l,[A.a4,A.c8,A.b3,A.eq]) -q(A.a4,[A.ci,A.ag,A.ie,A.e0]) -r(A.c7,A.br) -r(A.cF,A.bt) -r(A.dN,A.d8) -r(A.dg,A.cu) -r(A.dh,A.dg) -r(A.dn,A.cT) -r(A.ea,A.dn) -r(A.dB,A.ea) -r(A.c6,A.dA) -r(A.dV,A.bw) -q(A.hk,[A.hh,A.cB]) -r(A.hO,A.dv) -q(A.a6,[A.dR,A.ah]) -q(A.ah,[A.eu,A.ew]) -r(A.ev,A.eu) -r(A.bS,A.ev) -r(A.ex,A.ew) -r(A.aM,A.ex) -q(A.bS,[A.fQ,A.fR]) -q(A.aM,[A.fS,A.fT,A.fU,A.fV,A.fW,A.dS,A.dT]) -r(A.eH,A.i0) -q(A.co,[A.cn,A.a9]) -r(A.dl,A.dj) -q(A.d3,[A.eD,A.lI]) -r(A.da,A.eD) -r(A.db,A.eg) -q(A.bB,[A.cq,A.ej]) -r(A.iw,A.eP) -r(A.ey,A.cY) -r(A.eo,A.ey) -q(A.cC,[A.f7,A.ft]) -q(A.fi,[A.ju,A.li]) -r(A.hz,A.ft) -q(A.bb,[A.cX,A.fB]) -r(A.hV,A.eM) -q(A.f,[A.H,A.fw,A.cf,A.bY,A.aD,A.ez,A.aH,A.ap,A.eF,A.hB,A.bd,A.bs,A.e9,A.f6,A.bL]) -q(A.H,[A.p,A.bc]) -r(A.q,A.p) -q(A.q,[A.f0,A.f1,A.fy,A.ha]) -r(A.fj,A.b1) -r(A.cD,A.hT) -q(A.at,[A.fk,A.fl]) -r(A.hY,A.hX) -r(A.dC,A.hY) -r(A.i_,A.hZ) -r(A.fr,A.i_) -r(A.ax,A.bM) -r(A.i2,A.i1) -r(A.cH,A.i2) -r(A.i7,A.i6) -r(A.cb,A.i7) -q(A.m,[A.cV,A.by]) -r(A.fN,A.ig) -r(A.fO,A.ih) -r(A.ij,A.ii) -r(A.fP,A.ij) -r(A.il,A.ik) -r(A.dU,A.il) -r(A.ir,A.iq) -r(A.h2,A.ir) -r(A.h8,A.iz) -r(A.d_,A.bY) -r(A.eA,A.ez) -r(A.hb,A.eA) -r(A.iC,A.iB) -r(A.hc,A.iC) -r(A.hi,A.iG) -r(A.iQ,A.iP) -r(A.hl,A.iQ) -r(A.eG,A.eF) -r(A.hm,A.eG) -r(A.iS,A.iR) -r(A.ho,A.iS) -r(A.iY,A.iX) -r(A.hS,A.iY) -r(A.ek,A.dD) -r(A.j_,A.iZ) -r(A.i5,A.j_) -r(A.j1,A.j0) -r(A.et,A.j1) -r(A.j3,A.j2) -r(A.iD,A.j3) -r(A.j5,A.j4) -r(A.iN,A.j5) -r(A.cv,A.mR) -r(A.bZ,A.ls) -r(A.bn,A.bO) -r(A.ic,A.ib) -r(A.fI,A.ic) -r(A.io,A.im) -r(A.fZ,A.io) -r(A.iL,A.iK) -r(A.hj,A.iL) -r(A.iU,A.iT) -r(A.hq,A.iU) -r(A.f5,A.hQ) -r(A.h_,A.bL) -r(A.cN,A.lb) -q(A.cN,[A.h4,A.hy,A.hJ]) -r(A.hd,A.fn) -r(A.bu,A.hd) -r(A.iF,A.ky) -r(A.kA,A.iF) -r(A.b6,A.dm) -r(A.e5,A.e4) -q(A.bo,[A.fx,A.cI]) -r(A.d2,A.fe) -q(A.cE,[A.dJ,A.iu]) -r(A.hL,A.dJ) -r(A.iv,A.iu) -r(A.h7,A.iv) -r(A.iy,A.ix) -r(A.an,A.iy) -r(A.dX,A.lH) -r(A.f9,A.cj) -r(A.hH,A.h5) -r(A.hE,A.h6) -r(A.lp,A.k9) -r(A.hI,A.dZ) -r(A.ck,A.k7) -r(A.bz,A.k8) -r(A.hG,A.l2) -q(A.f9,[A.cc,A.fA]) -r(A.a8,A.af) -q(A.a8,[A.de,A.dd,A.cp,A.cw]) -r(A.i8,A.f8) -s(A.d7,A.bX) -s(A.eQ,A.i) -s(A.eu,A.i) -s(A.ev,A.au) -s(A.ew,A.i) -s(A.ex,A.au) -s(A.dl,A.iO) -s(A.d8,A.c1) -s(A.dn,A.c1) -s(A.hT,A.jz) -s(A.hX,A.i) -s(A.hY,A.A) -s(A.hZ,A.i) -s(A.i_,A.A) -s(A.i1,A.i) -s(A.i2,A.A) -s(A.i6,A.i) -s(A.i7,A.A) -s(A.ig,A.D) -s(A.ih,A.D) -s(A.ii,A.i) -s(A.ij,A.A) -s(A.ik,A.i) -s(A.il,A.A) -s(A.iq,A.i) -s(A.ir,A.A) -s(A.iz,A.D) -s(A.ez,A.i) -s(A.eA,A.A) -s(A.iB,A.i) -s(A.iC,A.A) -s(A.iG,A.D) -s(A.iP,A.i) -s(A.iQ,A.A) -s(A.eF,A.i) -s(A.eG,A.A) -s(A.iR,A.i) -s(A.iS,A.A) -s(A.iX,A.i) -s(A.iY,A.A) -s(A.iZ,A.i) -s(A.j_,A.A) -s(A.j0,A.i) -s(A.j1,A.A) -s(A.j2,A.i) -s(A.j3,A.A) -s(A.j4,A.i) -s(A.j5,A.A) -s(A.ib,A.i) -s(A.ic,A.A) -s(A.im,A.i) -s(A.io,A.A) -s(A.iK,A.i) -s(A.iL,A.A) -s(A.iT,A.i) -s(A.iU,A.A) -s(A.hQ,A.D) -s(A.iF,A.kz) -s(A.iu,A.i) -s(A.iv,A.fY) -s(A.ix,A.hu) -s(A.iy,A.D)})() -var v={typeUniverse:{eC:new Map(),tR:{},eT:{},tPV:{},sEA:[]},mangledGlobalNames:{d:"int",N:"double",Z:"num",j:"String",bg:"bool",Q:"Null",n:"List",r:"Object",J:"Map"},mangledNames:{},types:["~()","~(j,@)","~(m)","d(d,d)","I<~>()","~(@)","I<@>()","~(@,@)","Q()","Q(d)","~(~())","d(d)","I()","I<@>(aP)","Q(d,d,d)","~(aR,j,d)","d(d,d,d,r)","@()","d(d,d,d)","~(j,j)","~(r,aG)","I()","Q(@)","I>()","~(r[aG?])","I<~>(m)","d(d,d,d,d,d)","d(d,d,d,d)","I()","@(@,@)","bg(j)","j(j?)","j?(r?)","d?()","d?(j)","~(d,@)","Q(~())","@(@,j)","~(d6,@)","~(j,d)","J(bu)","~(@[@])","bu(@)","~(j,d?)","J<@,@>(d)","~(J<@,@>)","aR(@,@)","I(aP)","I(aP)","j(j)","I()","~(cG)","~(r?,r?)","a5(d,b6)","~(bA?,oc?,bA,~())","~(bo)","~(j,J)","~(j,r)","~(by)","b8(b8?)","I<~>(d,aR)","I<~>(d)","aR()","I(aP)","@(@)","j(r?)","Q(@,aG)","Q(d,d)","Q(@,@)","d(d,r)","Q(r,aG)","Q(d,d,d,d,r)","d(@,@)","C<@>(@)","@(j)","I()"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti"),rttc:{"2;file,outFlags":(a,b)=>c=>c instanceof A.dh&&a.b(c.a)&&b.b(c.b)}} -A.um(v.typeUniverse,JSON.parse('{"h1":"a2","bW":"a2","bq":"a2","jr":"a2","jE":"a2","kf":"a2","m_":"a2","mK":"a2","jF":"a2","jC":"a2","di":"a2","cJ":"a2","n0":"a2","jV":"a2","lr":"a2","b8":"a2","wd":"a","we":"a","vW":"a","vU":"m","w9":"m","vX":"bL","vV":"f","wj":"f","wn":"f","wf":"p","wi":"bs","vY":"q","wg":"q","wb":"H","w8":"H","wF":"ap","w7":"bY","vZ":"bc","wu":"bc","wc":"cb","w_":"P","w1":"b1","w3":"ao","w4":"at","w0":"at","w2":"at","a":{"k":[]},"fE":{"bg":[],"S":[]},"dL":{"Q":[],"S":[]},"a2":{"a":[],"k":[],"di":[],"cJ":[],"b8":[]},"M":{"n":["1"],"a":[],"l":["1"],"k":[],"e":["1"]},"jN":{"M":["1"],"n":["1"],"a":[],"l":["1"],"k":[],"e":["1"]},"du":{"L":["1"]},"cO":{"N":[],"Z":[],"al":["Z"]},"dK":{"N":[],"d":[],"Z":[],"al":["Z"],"S":[]},"fG":{"N":[],"Z":[],"al":["Z"],"S":[]},"bR":{"j":[],"al":["j"],"k4":[],"S":[]},"c_":{"e":["2"]},"dx":{"L":["2"]},"c5":{"c_":["1","2"],"e":["2"],"e.E":"2"},"el":{"c5":["1","2"],"c_":["1","2"],"l":["2"],"e":["2"],"e.E":"2"},"eh":{"i":["2"],"n":["2"],"c_":["1","2"],"l":["2"],"e":["2"]},"b0":{"eh":["1","2"],"i":["2"],"n":["2"],"c_":["1","2"],"l":["2"],"e":["2"],"i.E":"2","e.E":"2"},"dy":{"D":["3","4"],"J":["3","4"],"D.K":"3","D.V":"4"},"ce":{"R":[]},"dz":{"i":["d"],"bX":["d"],"n":["d"],"l":["d"],"e":["d"],"i.E":"d","bX.E":"d"},"l":{"e":["1"]},"a4":{"l":["1"],"e":["1"]},"ci":{"a4":["1"],"l":["1"],"e":["1"],"a4.E":"1","e.E":"1"},"b4":{"L":["1"]},"br":{"e":["2"],"e.E":"2"},"c7":{"br":["1","2"],"l":["2"],"e":["2"],"e.E":"2"},"dQ":{"L":["2"]},"ag":{"a4":["2"],"l":["2"],"e":["2"],"a4.E":"2","e.E":"2"},"lq":{"e":["1"],"e.E":"1"},"cl":{"L":["1"]},"bt":{"e":["1"],"e.E":"1"},"cF":{"bt":["1"],"l":["1"],"e":["1"],"e.E":"1"},"e1":{"L":["1"]},"c8":{"l":["1"],"e":["1"],"e.E":"1"},"dE":{"L":["1"]},"ec":{"e":["1"],"e.E":"1"},"ed":{"L":["1"]},"d7":{"i":["1"],"bX":["1"],"n":["1"],"l":["1"],"e":["1"]},"ie":{"a4":["d"],"l":["d"],"e":["d"],"a4.E":"d","e.E":"d"},"dN":{"D":["d","1"],"c1":["d","1"],"J":["d","1"],"D.K":"d","D.V":"1"},"e0":{"a4":["1"],"l":["1"],"e":["1"],"a4.E":"1","e.E":"1"},"d5":{"d6":[]},"dh":{"dg":[],"cu":[]},"dB":{"ea":["1","2"],"dn":["1","2"],"cT":["1","2"],"c1":["1","2"],"J":["1","2"]},"dA":{"J":["1","2"]},"c6":{"dA":["1","2"],"J":["1","2"]},"cs":{"e":["1"],"e.E":"1"},"en":{"L":["1"]},"fF":{"p7":[]},"dV":{"bw":[],"R":[]},"fH":{"R":[]},"ht":{"R":[]},"eB":{"aG":[]},"bN":{"ca":[]},"fc":{"ca":[]},"fd":{"ca":[]},"hk":{"ca":[]},"hh":{"ca":[]},"cB":{"ca":[]},"hU":{"R":[]},"h9":{"R":[]},"hO":{"R":[]},"b2":{"D":["1","2"],"pe":["1","2"],"J":["1","2"],"D.K":"1","D.V":"2"},"b3":{"l":["1"],"e":["1"],"e.E":"1"},"dM":{"L":["1"]},"dg":{"cu":[]},"cP":{"tp":[],"k4":[]},"es":{"e_":[],"cU":[]},"hM":{"e":["e_"],"e.E":"e_"},"hN":{"L":["e_"]},"e7":{"cU":[]},"iI":{"e":["cU"],"e.E":"cU"},"iJ":{"L":["cU"]},"cW":{"a":[],"k":[],"nK":[],"S":[]},"a6":{"a":[],"k":[]},"dR":{"a6":[],"a":[],"p0":[],"k":[],"S":[]},"ah":{"a6":[],"G":["1"],"a":[],"k":[]},"bS":{"i":["N"],"ah":["N"],"n":["N"],"a6":[],"G":["N"],"a":[],"l":["N"],"k":[],"e":["N"],"au":["N"]},"aM":{"i":["d"],"ah":["d"],"n":["d"],"a6":[],"G":["d"],"a":[],"l":["d"],"k":[],"e":["d"],"au":["d"]},"fQ":{"bS":[],"i":["N"],"ah":["N"],"n":["N"],"a6":[],"G":["N"],"a":[],"l":["N"],"k":[],"e":["N"],"au":["N"],"S":[],"i.E":"N"},"fR":{"bS":[],"i":["N"],"ah":["N"],"n":["N"],"a6":[],"G":["N"],"a":[],"l":["N"],"k":[],"e":["N"],"au":["N"],"S":[],"i.E":"N"},"fS":{"aM":[],"i":["d"],"ah":["d"],"n":["d"],"a6":[],"G":["d"],"a":[],"l":["d"],"k":[],"e":["d"],"au":["d"],"S":[],"i.E":"d"},"fT":{"aM":[],"i":["d"],"ah":["d"],"n":["d"],"a6":[],"G":["d"],"a":[],"l":["d"],"k":[],"e":["d"],"au":["d"],"S":[],"i.E":"d"},"fU":{"aM":[],"i":["d"],"ah":["d"],"n":["d"],"a6":[],"G":["d"],"a":[],"l":["d"],"k":[],"e":["d"],"au":["d"],"S":[],"i.E":"d"},"fV":{"aM":[],"i":["d"],"o7":[],"ah":["d"],"n":["d"],"a6":[],"G":["d"],"a":[],"l":["d"],"k":[],"e":["d"],"au":["d"],"S":[],"i.E":"d"},"fW":{"aM":[],"i":["d"],"ah":["d"],"n":["d"],"a6":[],"G":["d"],"a":[],"l":["d"],"k":[],"e":["d"],"au":["d"],"S":[],"i.E":"d"},"dS":{"aM":[],"i":["d"],"ah":["d"],"n":["d"],"a6":[],"G":["d"],"a":[],"l":["d"],"k":[],"e":["d"],"au":["d"],"S":[],"i.E":"d"},"dT":{"aM":[],"i":["d"],"aR":[],"ah":["d"],"n":["d"],"a6":[],"G":["d"],"a":[],"l":["d"],"k":[],"e":["d"],"au":["d"],"S":[],"i.E":"d"},"i0":{"R":[]},"eH":{"bw":[],"R":[]},"C":{"I":["1"]},"ee":{"ff":["1"]},"eE":{"L":["1"]},"dk":{"e":["1"],"e.E":"1"},"dw":{"R":[]},"co":{"ff":["1"]},"cn":{"co":["1"],"ff":["1"]},"a9":{"co":["1"],"ff":["1"]},"dj":{"pR":["1"],"cr":["1"]},"dl":{"iO":["1"],"dj":["1"],"pR":["1"],"cr":["1"]},"da":{"eD":["1"],"d3":["1"]},"db":{"eg":["1"],"d4":["1"],"cr":["1"]},"eg":{"d4":["1"],"cr":["1"]},"eD":{"d3":["1"]},"cq":{"bB":["1"]},"ej":{"bB":["@"]},"hW":{"bB":["@"]},"eP":{"bA":[]},"iw":{"eP":[],"bA":[]},"eo":{"cY":["1"],"nX":["1"],"l":["1"],"e":["1"]},"ct":{"L":["1"]},"cS":{"e":["1"],"e.E":"1"},"ep":{"L":["1"]},"i":{"n":["1"],"l":["1"],"e":["1"]},"D":{"J":["1","2"]},"d8":{"D":["1","2"],"c1":["1","2"],"J":["1","2"]},"eq":{"l":["2"],"e":["2"],"e.E":"2"},"er":{"L":["2"]},"cT":{"J":["1","2"]},"ea":{"dn":["1","2"],"cT":["1","2"],"c1":["1","2"],"J":["1","2"]},"cY":{"nX":["1"],"l":["1"],"e":["1"]},"ey":{"cY":["1"],"nX":["1"],"l":["1"],"e":["1"]},"f7":{"cC":["n","j"]},"ft":{"cC":["j","n"]},"hz":{"cC":["j","n"]},"cA":{"al":["cA"]},"bP":{"al":["bP"]},"N":{"Z":[],"al":["Z"]},"bQ":{"al":["bQ"]},"d":{"Z":[],"al":["Z"]},"n":{"l":["1"],"e":["1"]},"Z":{"al":["Z"]},"e_":{"cU":[]},"j":{"al":["j"],"k4":[]},"a7":{"cA":[],"al":["cA"]},"dv":{"R":[]},"bw":{"R":[]},"bb":{"R":[]},"cX":{"R":[]},"fB":{"R":[]},"fX":{"R":[]},"hv":{"R":[]},"hr":{"R":[]},"bv":{"R":[]},"fg":{"R":[]},"h0":{"R":[]},"e6":{"R":[]},"fD":{"R":[]},"iM":{"aG":[]},"aj":{"tL":[]},"eM":{"hw":[]},"iA":{"hw":[]},"hV":{"hw":[]},"P":{"a":[],"k":[]},"m":{"a":[],"k":[]},"ax":{"bM":[],"a":[],"k":[]},"ay":{"a":[],"k":[]},"aA":{"a":[],"k":[]},"H":{"f":[],"a":[],"k":[]},"aB":{"a":[],"k":[]},"aD":{"f":[],"a":[],"k":[]},"aE":{"a":[],"k":[]},"aF":{"a":[],"k":[]},"ao":{"a":[],"k":[]},"aH":{"f":[],"a":[],"k":[]},"ap":{"f":[],"a":[],"k":[]},"aI":{"a":[],"k":[]},"q":{"H":[],"f":[],"a":[],"k":[]},"f_":{"a":[],"k":[]},"f0":{"H":[],"f":[],"a":[],"k":[]},"f1":{"H":[],"f":[],"a":[],"k":[]},"bM":{"a":[],"k":[]},"bc":{"H":[],"f":[],"a":[],"k":[]},"fj":{"a":[],"k":[]},"cD":{"a":[],"k":[]},"at":{"a":[],"k":[]},"b1":{"a":[],"k":[]},"fk":{"a":[],"k":[]},"fl":{"a":[],"k":[]},"fm":{"a":[],"k":[]},"fq":{"a":[],"k":[]},"dC":{"i":["bf"],"A":["bf"],"n":["bf"],"G":["bf"],"a":[],"l":["bf"],"k":[],"e":["bf"],"A.E":"bf","i.E":"bf"},"dD":{"a":[],"bf":["Z"],"k":[]},"fr":{"i":["j"],"A":["j"],"n":["j"],"G":["j"],"a":[],"l":["j"],"k":[],"e":["j"],"A.E":"j","i.E":"j"},"fs":{"a":[],"k":[]},"p":{"H":[],"f":[],"a":[],"k":[]},"f":{"a":[],"k":[]},"cH":{"i":["ax"],"A":["ax"],"n":["ax"],"G":["ax"],"a":[],"l":["ax"],"k":[],"e":["ax"],"A.E":"ax","i.E":"ax"},"fw":{"f":[],"a":[],"k":[]},"fy":{"H":[],"f":[],"a":[],"k":[]},"fz":{"a":[],"k":[]},"cb":{"i":["H"],"A":["H"],"n":["H"],"G":["H"],"a":[],"l":["H"],"k":[],"e":["H"],"A.E":"H","i.E":"H"},"cL":{"a":[],"k":[]},"fK":{"a":[],"k":[]},"fM":{"a":[],"k":[]},"cV":{"m":[],"a":[],"k":[]},"cf":{"f":[],"a":[],"k":[]},"fN":{"a":[],"D":["j","@"],"k":[],"J":["j","@"],"D.K":"j","D.V":"@"},"fO":{"a":[],"D":["j","@"],"k":[],"J":["j","@"],"D.K":"j","D.V":"@"},"fP":{"i":["aA"],"A":["aA"],"n":["aA"],"G":["aA"],"a":[],"l":["aA"],"k":[],"e":["aA"],"A.E":"aA","i.E":"aA"},"dU":{"i":["H"],"A":["H"],"n":["H"],"G":["H"],"a":[],"l":["H"],"k":[],"e":["H"],"A.E":"H","i.E":"H"},"h2":{"i":["aB"],"A":["aB"],"n":["aB"],"G":["aB"],"a":[],"l":["aB"],"k":[],"e":["aB"],"A.E":"aB","i.E":"aB"},"h8":{"a":[],"D":["j","@"],"k":[],"J":["j","@"],"D.K":"j","D.V":"@"},"ha":{"H":[],"f":[],"a":[],"k":[]},"cZ":{"a":[],"k":[]},"d_":{"f":[],"a":[],"k":[]},"hb":{"i":["aD"],"A":["aD"],"n":["aD"],"f":[],"G":["aD"],"a":[],"l":["aD"],"k":[],"e":["aD"],"A.E":"aD","i.E":"aD"},"hc":{"i":["aE"],"A":["aE"],"n":["aE"],"G":["aE"],"a":[],"l":["aE"],"k":[],"e":["aE"],"A.E":"aE","i.E":"aE"},"hi":{"a":[],"D":["j","j"],"k":[],"J":["j","j"],"D.K":"j","D.V":"j"},"hl":{"i":["ap"],"A":["ap"],"n":["ap"],"G":["ap"],"a":[],"l":["ap"],"k":[],"e":["ap"],"A.E":"ap","i.E":"ap"},"hm":{"i":["aH"],"A":["aH"],"n":["aH"],"f":[],"G":["aH"],"a":[],"l":["aH"],"k":[],"e":["aH"],"A.E":"aH","i.E":"aH"},"hn":{"a":[],"k":[]},"ho":{"i":["aI"],"A":["aI"],"n":["aI"],"G":["aI"],"a":[],"l":["aI"],"k":[],"e":["aI"],"A.E":"aI","i.E":"aI"},"hp":{"a":[],"k":[]},"hx":{"a":[],"k":[]},"hB":{"f":[],"a":[],"k":[]},"bY":{"f":[],"a":[],"k":[]},"hS":{"i":["P"],"A":["P"],"n":["P"],"G":["P"],"a":[],"l":["P"],"k":[],"e":["P"],"A.E":"P","i.E":"P"},"ek":{"a":[],"bf":["Z"],"k":[]},"i5":{"i":["ay?"],"A":["ay?"],"n":["ay?"],"G":["ay?"],"a":[],"l":["ay?"],"k":[],"e":["ay?"],"A.E":"ay?","i.E":"ay?"},"et":{"i":["H"],"A":["H"],"n":["H"],"G":["H"],"a":[],"l":["H"],"k":[],"e":["H"],"A.E":"H","i.E":"H"},"iD":{"i":["aF"],"A":["aF"],"n":["aF"],"G":["aF"],"a":[],"l":["aF"],"k":[],"e":["aF"],"A.E":"aF","i.E":"aF"},"iN":{"i":["ao"],"A":["ao"],"n":["ao"],"G":["ao"],"a":[],"l":["ao"],"k":[],"e":["ao"],"A.E":"ao","i.E":"ao"},"lI":{"d3":["1"]},"em":{"d4":["1"]},"dG":{"L":["1"]},"bO":{"a":[],"k":[]},"bn":{"bO":[],"a":[],"k":[]},"bd":{"f":[],"a":[],"k":[]},"cK":{"a":[],"k":[]},"bs":{"f":[],"a":[],"k":[]},"by":{"m":[],"a":[],"k":[]},"dI":{"a":[],"k":[]},"dW":{"a":[],"k":[]},"e9":{"f":[],"a":[],"k":[]},"ia":{"tn":[]},"aL":{"a":[],"k":[]},"aN":{"a":[],"k":[]},"aQ":{"a":[],"k":[]},"fI":{"i":["aL"],"A":["aL"],"n":["aL"],"a":[],"l":["aL"],"k":[],"e":["aL"],"A.E":"aL","i.E":"aL"},"fZ":{"i":["aN"],"A":["aN"],"n":["aN"],"a":[],"l":["aN"],"k":[],"e":["aN"],"A.E":"aN","i.E":"aN"},"h3":{"a":[],"k":[]},"hj":{"i":["j"],"A":["j"],"n":["j"],"a":[],"l":["j"],"k":[],"e":["j"],"A.E":"j","i.E":"j"},"hq":{"i":["aQ"],"A":["aQ"],"n":["aQ"],"a":[],"l":["aQ"],"k":[],"e":["aQ"],"A.E":"aQ","i.E":"aQ"},"f4":{"a":[],"k":[]},"f5":{"a":[],"D":["j","@"],"k":[],"J":["j","@"],"D.K":"j","D.V":"@"},"f6":{"f":[],"a":[],"k":[]},"bL":{"f":[],"a":[],"k":[]},"h_":{"f":[],"a":[],"k":[]},"h4":{"cN":[]},"hy":{"cN":[]},"hJ":{"cN":[]},"b6":{"dm":["cA"],"dm.T":"cA"},"e5":{"e4":[]},"fx":{"bo":[]},"fo":{"p2":[]},"cI":{"bo":[]},"d2":{"fe":[]},"hL":{"dJ":[],"cE":[],"L":["an"]},"an":{"hu":["j","@"],"D":["j","@"],"J":["j","@"],"D.K":"j","D.V":"@"},"dJ":{"cE":[],"L":["an"]},"h7":{"i":["an"],"fY":["an"],"n":["an"],"l":["an"],"cE":[],"e":["an"],"i.E":"an"},"it":{"L":["an"]},"cd":{"tK":[]},"f9":{"cj":[]},"f8":{"hC":[]},"hH":{"h5":[]},"hE":{"h6":[]},"hI":{"dZ":[]},"d9":{"i":["bz"],"n":["bz"],"l":["bz"],"e":["bz"],"i.E":"bz"},"cc":{"cj":[]},"a8":{"af":["a8"]},"i9":{"hC":[]},"de":{"a8":[],"af":["a8"],"af.E":"a8"},"dd":{"a8":[],"af":["a8"],"af.E":"a8"},"cp":{"a8":[],"af":["a8"],"af.E":"a8"},"cw":{"a8":[],"af":["a8"],"af.E":"a8"},"fA":{"cj":[]},"i8":{"hC":[]},"fa":{"t7":[]},"rX":{"n":["d"],"l":["d"],"e":["d"]},"aR":{"n":["d"],"l":["d"],"e":["d"]},"tR":{"n":["d"],"l":["d"],"e":["d"]},"rV":{"n":["d"],"l":["d"],"e":["d"]},"o7":{"n":["d"],"l":["d"],"e":["d"]},"rW":{"n":["d"],"l":["d"],"e":["d"]},"tQ":{"n":["d"],"l":["d"],"e":["d"]},"rR":{"n":["N"],"l":["N"],"e":["N"]},"rS":{"n":["N"],"l":["N"],"e":["N"]}}')) -A.ul(v.typeUniverse,JSON.parse('{"d7":1,"eQ":2,"ah":1,"bB":1,"d8":2,"ey":1,"fi":2,"rD":1}')) -var u={c:"Error handler must accept one Object or one Object and a StackTrace as arguments, and return a value of the returned future's type",f:"Tried to operate on a released prepared statement"} -var t=(function rtii(){var s=A.aw -return{ie:s("rD"),n:s("dw"),dz:s("cA"),w:s("bM"),J:s("nK"),bT:s("p2"),bP:s("al<@>"),i9:s("dB"),d5:s("P"),nT:s("bn"),E:s("bd"),cs:s("bP"),jS:s("bQ"),O:s("l<@>"),U:s("R"),A:s("m"),V:s("ax"),kL:s("cH"),m:s("bo"),Z:s("ca"),g7:s("I<@>"),gq:s("I<@>()"),W:s("cJ"),ad:s("cL"),cF:s("cc"),bg:s("p7"),bq:s("e"),id:s("e"),e7:s("e<@>"),fm:s("e"),eY:s("M"),iw:s("M>"),dO:s("M>"),C:s("M>"),ke:s("M>"),jP:s("M>"),bw:s("M"),lE:s("M"),s:s("M"),bs:s("M"),p8:s("M"),it:s("M"),b:s("M<@>"),t:s("M"),mf:s("M"),T:s("dL"),bp:s("k"),dY:s("bq"),dX:s("G<@>"),d9:s("a"),bX:s("b2"),kT:s("aL"),h:s("cS"),fr:s("n"),a:s("n"),j:s("n<@>"),L:s("n"),kS:s("n"),ag:s("a5"),lK:s("J"),dV:s("J"),f:s("J<@,@>"),n2:s("J>"),lb:s("J"),iZ:s("ag"),hy:s("cV"),oA:s("cf"),ib:s("aA"),hH:s("cW"),dQ:s("bS"),aj:s("aM"),hK:s("a6"),G:s("H"),P:s("Q"),ai:s("aN"),K:s("r"),d8:s("aB"),lZ:s("wl"),aK:s("+()"),q:s("bf"),lu:s("e_"),lq:s("wm"),B:s("bs"),hF:s("e0"),oy:s("an"),kI:s("cZ"),aD:s("d_"),ls:s("aD"),cA:s("aE"),hI:s("aF"),cE:s("e4"),db:s("e5"),kY:s("hg"),l:s("aG"),N:s("j"),lv:s("ao"),bR:s("d6"),dR:s("aH"),gJ:s("ap"),ki:s("aI"),hk:s("aQ"),aJ:s("S"),do:s("bw"),p:s("aR"),cx:s("bW"),jJ:s("hw"),bo:s("by"),e6:s("cj"),a5:s("hC"),n0:s("hD"),ax:s("hF"),es:s("hG"),cI:s("bz"),lS:s("ec"),x:s("bA"),ou:s("cn<~>"),ap:s("b6"),kg:s("a7"),oz:s("dc"),c6:s("dc"),bc:s("b8"),go:s("C"),g5:s("C"),c:s("C<@>"),g_:s("C"),D:s("C<~>"),ot:s("di"),lz:s("iE"),gL:s("eC"),my:s("a9"),ex:s("a9"),F:s("a9<~>"),y:s("bg"),iW:s("bg(r)"),i:s("N"),z:s("@"),mY:s("@()"),v:s("@(r)"),Q:s("@(r,aG)"),ha:s("@(j)"),p1:s("@(@,@)"),S:s("d"),eK:s("0&*"),_:s("r*"),g9:s("bn?"),k5:s("bd?"),iB:s("f?"),gK:s("I?"),ef:s("ay?"),kq:s("cK?"),lH:s("n<@>?"),kR:s("n?"),h9:s("J?"),X:s("r?"),fw:s("aG?"),nh:s("aR?"),R:s("bA?"),r:s("oc?"),lT:s("bB<@>?"),jV:s("b8?"),d:s("bC<@,@>?"),g:s("id?"),o:s("@(m)?"),I:s("d?"),e:s("~()?"),Y:s("~(m)?"),jM:s("~(by)?"),hC:s("~(d,j,d)?"),cZ:s("Z"),H:s("~"),M:s("~()"),i6:s("~(r)"),k:s("~(r,aG)"),bm:s("~(j,j)"),u:s("~(j,@)")}})();(function constants(){var s=hunkHelpers.makeConstList -B.r=A.bn.prototype -B.f=A.bd.prototype -B.W=A.dI.prototype -B.X=J.cM.prototype -B.a=J.M.prototype -B.c=J.dK.prototype -B.k=J.cO.prototype -B.b=J.bR.prototype -B.Y=J.bq.prototype -B.Z=J.a.prototype -B.a0=A.cf.prototype -B.G=A.dR.prototype -B.e=A.dT.prototype -B.h=A.dW.prototype -B.K=J.h1.prototype -B.t=J.bW.prototype -B.ai=new A.ju() -B.L=new A.f7() -B.M=new A.dE(A.aw("dE<0&>")) -B.N=new A.fD() -B.u=function getTagFallback(o) { - var s = Object.prototype.toString.call(o); - return s.substring(8, s.length - 1); -} -B.O=function() { - var toStringFunction = Object.prototype.toString; - function getTag(o) { - var s = toStringFunction.call(o); - return s.substring(8, s.length - 1); - } - function getUnknownTag(object, tag) { - if (/^HTML[A-Z].*Element$/.test(tag)) { - var name = toStringFunction.call(object); - if (name == "[object Object]") return null; - return "HTMLElement"; - } - } - function getUnknownTagGenericBrowser(object, tag) { - if (object instanceof HTMLElement) return "HTMLElement"; - return getUnknownTag(object, tag); - } - function prototypeForTag(tag) { - if (typeof window == "undefined") return null; - if (typeof window[tag] == "undefined") return null; - var constructor = window[tag]; - if (typeof constructor != "function") return null; - return constructor.prototype; - } - function discriminator(tag) { return null; } - var isBrowser = typeof HTMLElement == "function"; - return { - getTag: getTag, - getUnknownTag: isBrowser ? getUnknownTagGenericBrowser : getUnknownTag, - prototypeForTag: prototypeForTag, - discriminator: discriminator }; -} -B.T=function(getTagFallback) { - return function(hooks) { - if (typeof navigator != "object") return hooks; - var userAgent = navigator.userAgent; - if (typeof userAgent != "string") return hooks; - if (userAgent.indexOf("DumpRenderTree") >= 0) return hooks; - if (userAgent.indexOf("Chrome") >= 0) { - function confirm(p) { - return typeof window == "object" && window[p] && window[p].name == p; - } - if (confirm("Window") && confirm("HTMLElement")) return hooks; - } - hooks.getTag = getTagFallback; - }; -} -B.P=function(hooks) { - if (typeof dartExperimentalFixupGetTag != "function") return hooks; - hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag); -} -B.S=function(hooks) { - if (typeof navigator != "object") return hooks; - var userAgent = navigator.userAgent; - if (typeof userAgent != "string") return hooks; - if (userAgent.indexOf("Firefox") == -1) return hooks; - var getTag = hooks.getTag; - var quickMap = { - "BeforeUnloadEvent": "Event", - "DataTransfer": "Clipboard", - "GeoGeolocation": "Geolocation", - "Location": "!Location", - "WorkerMessageEvent": "MessageEvent", - "XMLDocument": "!Document"}; - function getTagFirefox(o) { - var tag = getTag(o); - return quickMap[tag] || tag; - } - hooks.getTag = getTagFirefox; -} -B.R=function(hooks) { - if (typeof navigator != "object") return hooks; - var userAgent = navigator.userAgent; - if (typeof userAgent != "string") return hooks; - if (userAgent.indexOf("Trident/") == -1) return hooks; - var getTag = hooks.getTag; - var quickMap = { - "BeforeUnloadEvent": "Event", - "DataTransfer": "Clipboard", - "HTMLDDElement": "HTMLElement", - "HTMLDTElement": "HTMLElement", - "HTMLPhraseElement": "HTMLElement", - "Position": "Geoposition" - }; - function getTagIE(o) { - var tag = getTag(o); - var newTag = quickMap[tag]; - if (newTag) return newTag; - if (tag == "Object") { - if (window.DataView && (o instanceof window.DataView)) return "DataView"; - } - return tag; - } - function prototypeForTagIE(tag) { - var constructor = window[tag]; - if (constructor == null) return null; - return constructor.prototype; - } - hooks.getTag = getTagIE; - hooks.prototypeForTag = prototypeForTagIE; -} -B.Q=function(hooks) { - var getTag = hooks.getTag; - var prototypeForTag = hooks.prototypeForTag; - function getTagFixed(o) { - var tag = getTag(o); - if (tag == "Document") { - if (!!o.xmlVersion) return "!Document"; - return "!HTMLDocument"; - } - return tag; - } - function prototypeForTagFixed(tag) { - if (tag == "Document") return null; - return prototypeForTag(tag); - } - hooks.getTag = getTagFixed; - hooks.prototypeForTag = prototypeForTagFixed; -} -B.v=function(hooks) { return hooks; } - -B.U=new A.h0() -B.q=new A.ki() -B.j=new A.hz() -B.i=new A.li() -B.w=new A.hW() -B.x=new A.mL() -B.d=new A.iw() -B.V=new A.iM() -B.y=new A.bQ(0) -B.l=A.u(s([0,0,24576,1023,65534,34815,65534,18431]),t.t) -B.m=A.u(s([0,0,26624,1023,65534,2047,65534,2047]),t.t) -B.a_=A.u(s([0,0,32722,12287,65534,34815,65534,18431]),t.t) -B.z=A.u(s([0,0,65490,12287,65535,34815,65534,18431]),t.t) -B.n=A.u(s([0,0,32776,33792,1,10240,0,0]),t.t) -B.A=A.u(s([0,0,32754,11263,65534,34815,65534,18431]),t.t) -B.B=A.u(s([]),t.s) -B.D=A.u(s([]),t.b) -B.C=A.u(s([]),A.aw("M")) -B.o=A.u(s(["files","blocks"]),t.s) -B.p=A.u(s([0,0,65490,45055,65535,34815,65534,18431]),t.t) -B.H={} -B.E=new A.c6(B.H,[],A.aw("c6")) -B.F=new A.c6(B.H,[],A.aw("c6")) -B.I=new A.dX("readOnly") -B.a1=new A.dX("readWrite") -B.J=new A.dX("readWriteCreate") -B.a2=new A.d5("call") -B.a3=A.b_("nK") -B.a4=A.b_("p0") -B.a5=A.b_("rR") -B.a6=A.b_("rS") -B.a7=A.b_("rV") -B.a8=A.b_("rW") -B.a9=A.b_("rX") -B.aa=A.b_("k") -B.ab=A.b_("r") -B.ac=A.b_("o7") -B.ad=A.b_("tQ") -B.ae=A.b_("tR") -B.af=A.b_("aR") -B.ag=new A.eb(522) -B.ah=new A.iW(B.d,A.vp(),A.aw("iW<~(bA,oc,bA,~())>"))})();(function staticFields(){$.mH=null -$.aT=A.u([],A.aw("M")) -$.qP=null -$.pk=null -$.oZ=null -$.oY=null -$.qJ=null -$.qD=null -$.qQ=null -$.nm=null -$.nv=null -$.oD=null -$.mJ=A.u([],A.aw("M?>")) -$.dr=null -$.eS=null -$.eT=null -$.ov=!1 -$.E=B.d -$.pD=null -$.pE=null -$.pF=null -$.pG=null -$.od=A.ei("_lastQuoRemDigits") -$.oe=A.ei("_lastQuoRemUsed") -$.ef=A.ei("_lastRemUsed") -$.of=A.ei("_lastRem_nsh") -$.px="" -$.py=null -$.qB=null -$.qr=null -$.qH=A.W(t.S,A.aw("aP")) -$.ja=A.W(A.aw("j?"),A.aw("aP")) -$.qs=0 -$.nw=0 -$.aq=null -$.qT=A.W(t.N,t.X) -$.qA=null -$.eU="/shw2"})();(function lazyInitializers(){var s=hunkHelpers.lazyFinal,r=hunkHelpers.lazy -s($,"w5","oI",()=>A.vA("_$dart_dartClosure")) -s($,"x9","nG",()=>B.d.cL(new A.nz(),A.aw("I"))) -s($,"wv","qZ",()=>A.bx(A.ld({ -toString:function(){return"$receiver$"}}))) -s($,"ww","r_",()=>A.bx(A.ld({$method$:null, -toString:function(){return"$receiver$"}}))) -s($,"wx","r0",()=>A.bx(A.ld(null))) -s($,"wy","r1",()=>A.bx(function(){var $argumentsExpr$="$arguments$" -try{null.$method$($argumentsExpr$)}catch(q){return q.message}}())) -s($,"wB","r4",()=>A.bx(A.ld(void 0))) -s($,"wC","r5",()=>A.bx(function(){var $argumentsExpr$="$arguments$" -try{(void 0).$method$($argumentsExpr$)}catch(q){return q.message}}())) -s($,"wA","r3",()=>A.bx(A.pv(null))) -s($,"wz","r2",()=>A.bx(function(){try{null.$method$}catch(q){return q.message}}())) -s($,"wE","r7",()=>A.bx(A.pv(void 0))) -s($,"wD","r6",()=>A.bx(function(){try{(void 0).$method$}catch(q){return q.message}}())) -s($,"wG","oK",()=>A.tU()) -s($,"wa","eY",()=>A.aw("C").a($.nG())) -s($,"wR","re",()=>A.t8(4096)) -s($,"wP","rc",()=>new A.mY().$0()) -s($,"wQ","rd",()=>new A.mX().$0()) -s($,"wH","r8",()=>new Int8Array(A.uO(A.u([-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-1,-2,-2,-2,-2,-2,62,-2,62,-2,63,52,53,54,55,56,57,58,59,60,61,-2,-2,-2,-1,-2,-2,-2,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-2,-2,-2,-2,63,-2,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-2,-2,-2,-2,-2],t.t)))) -s($,"wM","bJ",()=>A.ly(0)) -s($,"wL","je",()=>A.ly(1)) -s($,"wJ","oM",()=>$.je().a6(0)) -s($,"wI","oL",()=>A.ly(1e4)) -r($,"wK","r9",()=>A.aU("^\\s*([+-]?)((0x[a-f0-9]+)|(\\d+)|([a-z0-9]+))\\s*$",!1)) -s($,"wN","ra",()=>typeof FinalizationRegistry=="function"?FinalizationRegistry:null) -s($,"wO","rb",()=>typeof process!="undefined"&&Object.prototype.toString.call(process)=="[object process]"&&process.platform=="win32") -s($,"x2","nF",()=>A.oG(B.ab)) -s($,"x3","ri",()=>A.uN()) -s($,"wk","oJ",()=>{var q=new A.ia(new DataView(new ArrayBuffer(A.uK(8)))) -q.ex() -return q}) -s($,"xa","oP",()=>{var q=$.nE() -return new A.fh(q)}) -s($,"x6","oO",()=>new A.fh($.qX())) -s($,"wr","qY",()=>new A.h4(A.aU("/",!0),A.aU("[^/]$",!0),A.aU("^/",!0))) -s($,"wt","jd",()=>new A.hJ(A.aU("[/\\\\]",!0),A.aU("[^/\\\\]$",!0),A.aU("^(\\\\\\\\[^\\\\]+\\\\[^\\\\/]+|[a-zA-Z]:[/\\\\])",!0),A.aU("^[/\\\\](?![/\\\\])",!0))) -s($,"ws","nE",()=>new A.hy(A.aU("/",!0),A.aU("(^[a-zA-Z][-+.a-zA-Z\\d]*://|[^/])$",!0),A.aU("[a-zA-Z][-+.a-zA-Z\\d]*://[^/]*",!0),A.aU("^/",!0))) -s($,"wq","qX",()=>A.tO()) -s($,"x1","rh",()=>A.nS()) -r($,"wS","oN",()=>A.u([new A.b6("BigInt")],A.aw("M"))) -r($,"wT","rf",()=>{var q=$.oN() -q=A.t6(q,A.aa(q).c) -return q.hf(q,new A.n1(),t.N,t.ap)}) -r($,"x0","rg",()=>A.pz("sqlite3.wasm")) -s($,"x5","rk",()=>A.oW("-9223372036854775808")) -s($,"x4","rj",()=>A.oW("9223372036854775807")) -s($,"x8","jf",()=>{var q=$.ra() -q=q==null?null:new q(A.bH(A.vT(new A.nn(),t.m),1)) -return new A.i3(q,A.aw("i3"))}) -s($,"w6","qW",()=>new A.fu(new WeakMap(),A.aw("fu")))})();(function nativeSupport(){!function(){var s=function(a){var m={} -m[a]=1 -return Object.keys(hunkHelpers.convertToFastObject(m))[0]} -v.getIsolateTag=function(a){return s("___dart_"+a+v.isolateTag)} -var r="___dart_isolate_tags_" -var q=Object[r]||(Object[r]=Object.create(null)) -var p="_ZxYxX" -for(var o=0;;o++){var n=s(p+"_"+o+"_") -if(!(n in q)){q[n]=1 -v.isolateTag=n -break}}v.dispatchPropertyName=v.getIsolateTag("dispatch_record")}() -hunkHelpers.setOrUpdateInterceptorsByTag({WebGL:J.cM,AnimationEffectReadOnly:J.a,AnimationEffectTiming:J.a,AnimationEffectTimingReadOnly:J.a,AnimationTimeline:J.a,AnimationWorkletGlobalScope:J.a,AuthenticatorAssertionResponse:J.a,AuthenticatorAttestationResponse:J.a,AuthenticatorResponse:J.a,BackgroundFetchFetch:J.a,BackgroundFetchManager:J.a,BackgroundFetchSettledFetch:J.a,BarProp:J.a,BarcodeDetector:J.a,BluetoothRemoteGATTDescriptor:J.a,Body:J.a,BudgetState:J.a,CacheStorage:J.a,CanvasGradient:J.a,CanvasPattern:J.a,CanvasRenderingContext2D:J.a,Client:J.a,Clients:J.a,CookieStore:J.a,Coordinates:J.a,Credential:J.a,CredentialUserData:J.a,CredentialsContainer:J.a,Crypto:J.a,CryptoKey:J.a,CSS:J.a,CSSVariableReferenceValue:J.a,CustomElementRegistry:J.a,DataTransfer:J.a,DataTransferItem:J.a,DeprecatedStorageInfo:J.a,DeprecatedStorageQuota:J.a,DeprecationReport:J.a,DetectedBarcode:J.a,DetectedFace:J.a,DetectedText:J.a,DeviceAcceleration:J.a,DeviceRotationRate:J.a,DirectoryEntry:J.a,webkitFileSystemDirectoryEntry:J.a,FileSystemDirectoryEntry:J.a,DirectoryReader:J.a,WebKitDirectoryReader:J.a,webkitFileSystemDirectoryReader:J.a,FileSystemDirectoryReader:J.a,DocumentOrShadowRoot:J.a,DocumentTimeline:J.a,DOMError:J.a,DOMImplementation:J.a,Iterator:J.a,DOMMatrix:J.a,DOMMatrixReadOnly:J.a,DOMParser:J.a,DOMPoint:J.a,DOMPointReadOnly:J.a,DOMQuad:J.a,DOMStringMap:J.a,Entry:J.a,webkitFileSystemEntry:J.a,FileSystemEntry:J.a,External:J.a,FaceDetector:J.a,FederatedCredential:J.a,FileEntry:J.a,webkitFileSystemFileEntry:J.a,FileSystemFileEntry:J.a,DOMFileSystem:J.a,WebKitFileSystem:J.a,webkitFileSystem:J.a,FileSystem:J.a,FontFace:J.a,FontFaceSource:J.a,FormData:J.a,GamepadButton:J.a,GamepadPose:J.a,Geolocation:J.a,Position:J.a,GeolocationPosition:J.a,Headers:J.a,HTMLHyperlinkElementUtils:J.a,IdleDeadline:J.a,ImageBitmap:J.a,ImageBitmapRenderingContext:J.a,ImageCapture:J.a,InputDeviceCapabilities:J.a,IntersectionObserver:J.a,IntersectionObserverEntry:J.a,InterventionReport:J.a,KeyframeEffect:J.a,KeyframeEffectReadOnly:J.a,MediaCapabilities:J.a,MediaCapabilitiesInfo:J.a,MediaDeviceInfo:J.a,MediaError:J.a,MediaKeyStatusMap:J.a,MediaKeySystemAccess:J.a,MediaKeys:J.a,MediaKeysPolicy:J.a,MediaMetadata:J.a,MediaSession:J.a,MediaSettingsRange:J.a,MemoryInfo:J.a,MessageChannel:J.a,Metadata:J.a,MutationObserver:J.a,WebKitMutationObserver:J.a,MutationRecord:J.a,NavigationPreloadManager:J.a,Navigator:J.a,NavigatorAutomationInformation:J.a,NavigatorConcurrentHardware:J.a,NavigatorCookies:J.a,NavigatorUserMediaError:J.a,NodeFilter:J.a,NodeIterator:J.a,NonDocumentTypeChildNode:J.a,NonElementParentNode:J.a,NoncedElement:J.a,OffscreenCanvasRenderingContext2D:J.a,OverconstrainedError:J.a,PaintRenderingContext2D:J.a,PaintSize:J.a,PaintWorkletGlobalScope:J.a,PasswordCredential:J.a,Path2D:J.a,PaymentAddress:J.a,PaymentInstruments:J.a,PaymentManager:J.a,PaymentResponse:J.a,PerformanceEntry:J.a,PerformanceLongTaskTiming:J.a,PerformanceMark:J.a,PerformanceMeasure:J.a,PerformanceNavigation:J.a,PerformanceNavigationTiming:J.a,PerformanceObserver:J.a,PerformanceObserverEntryList:J.a,PerformancePaintTiming:J.a,PerformanceResourceTiming:J.a,PerformanceServerTiming:J.a,PerformanceTiming:J.a,Permissions:J.a,PhotoCapabilities:J.a,PositionError:J.a,GeolocationPositionError:J.a,Presentation:J.a,PresentationReceiver:J.a,PublicKeyCredential:J.a,PushManager:J.a,PushMessageData:J.a,PushSubscription:J.a,PushSubscriptionOptions:J.a,Range:J.a,RelatedApplication:J.a,ReportBody:J.a,ReportingObserver:J.a,ResizeObserver:J.a,ResizeObserverEntry:J.a,RTCCertificate:J.a,RTCIceCandidate:J.a,mozRTCIceCandidate:J.a,RTCLegacyStatsReport:J.a,RTCRtpContributingSource:J.a,RTCRtpReceiver:J.a,RTCRtpSender:J.a,RTCSessionDescription:J.a,mozRTCSessionDescription:J.a,RTCStatsResponse:J.a,Screen:J.a,ScrollState:J.a,ScrollTimeline:J.a,Selection:J.a,SpeechRecognitionAlternative:J.a,SpeechSynthesisVoice:J.a,StaticRange:J.a,StorageManager:J.a,StyleMedia:J.a,StylePropertyMap:J.a,StylePropertyMapReadonly:J.a,SyncManager:J.a,TaskAttributionTiming:J.a,TextDetector:J.a,TextMetrics:J.a,TrackDefault:J.a,TreeWalker:J.a,TrustedHTML:J.a,TrustedScriptURL:J.a,TrustedURL:J.a,UnderlyingSourceBase:J.a,URLSearchParams:J.a,VRCoordinateSystem:J.a,VRDisplayCapabilities:J.a,VREyeParameters:J.a,VRFrameData:J.a,VRFrameOfReference:J.a,VRPose:J.a,VRStageBounds:J.a,VRStageBoundsPoint:J.a,VRStageParameters:J.a,ValidityState:J.a,VideoPlaybackQuality:J.a,VideoTrack:J.a,VTTRegion:J.a,WindowClient:J.a,WorkletAnimation:J.a,WorkletGlobalScope:J.a,XPathEvaluator:J.a,XPathExpression:J.a,XPathNSResolver:J.a,XPathResult:J.a,XMLSerializer:J.a,XSLTProcessor:J.a,Bluetooth:J.a,BluetoothCharacteristicProperties:J.a,BluetoothRemoteGATTServer:J.a,BluetoothRemoteGATTService:J.a,BluetoothUUID:J.a,BudgetService:J.a,Cache:J.a,DOMFileSystemSync:J.a,DirectoryEntrySync:J.a,DirectoryReaderSync:J.a,EntrySync:J.a,FileEntrySync:J.a,FileReaderSync:J.a,FileWriterSync:J.a,HTMLAllCollection:J.a,Mojo:J.a,MojoHandle:J.a,MojoWatcher:J.a,NFC:J.a,PagePopupController:J.a,Report:J.a,Request:J.a,Response:J.a,SubtleCrypto:J.a,USBAlternateInterface:J.a,USBConfiguration:J.a,USBDevice:J.a,USBEndpoint:J.a,USBInTransferResult:J.a,USBInterface:J.a,USBIsochronousInTransferPacket:J.a,USBIsochronousInTransferResult:J.a,USBIsochronousOutTransferPacket:J.a,USBIsochronousOutTransferResult:J.a,USBOutTransferResult:J.a,WorkerLocation:J.a,WorkerNavigator:J.a,Worklet:J.a,IDBKeyRange:J.a,IDBObservation:J.a,IDBObserver:J.a,IDBObserverChanges:J.a,SVGAngle:J.a,SVGAnimatedAngle:J.a,SVGAnimatedBoolean:J.a,SVGAnimatedEnumeration:J.a,SVGAnimatedInteger:J.a,SVGAnimatedLength:J.a,SVGAnimatedLengthList:J.a,SVGAnimatedNumber:J.a,SVGAnimatedNumberList:J.a,SVGAnimatedPreserveAspectRatio:J.a,SVGAnimatedRect:J.a,SVGAnimatedString:J.a,SVGAnimatedTransformList:J.a,SVGMatrix:J.a,SVGPoint:J.a,SVGPreserveAspectRatio:J.a,SVGRect:J.a,SVGUnitTypes:J.a,AudioListener:J.a,AudioParam:J.a,AudioTrack:J.a,AudioWorkletGlobalScope:J.a,AudioWorkletProcessor:J.a,PeriodicWave:J.a,WebGLActiveInfo:J.a,ANGLEInstancedArrays:J.a,ANGLE_instanced_arrays:J.a,WebGLBuffer:J.a,WebGLCanvas:J.a,WebGLColorBufferFloat:J.a,WebGLCompressedTextureASTC:J.a,WebGLCompressedTextureATC:J.a,WEBGL_compressed_texture_atc:J.a,WebGLCompressedTextureETC1:J.a,WEBGL_compressed_texture_etc1:J.a,WebGLCompressedTextureETC:J.a,WebGLCompressedTexturePVRTC:J.a,WEBGL_compressed_texture_pvrtc:J.a,WebGLCompressedTextureS3TC:J.a,WEBGL_compressed_texture_s3tc:J.a,WebGLCompressedTextureS3TCsRGB:J.a,WebGLDebugRendererInfo:J.a,WEBGL_debug_renderer_info:J.a,WebGLDebugShaders:J.a,WEBGL_debug_shaders:J.a,WebGLDepthTexture:J.a,WEBGL_depth_texture:J.a,WebGLDrawBuffers:J.a,WEBGL_draw_buffers:J.a,EXTsRGB:J.a,EXT_sRGB:J.a,EXTBlendMinMax:J.a,EXT_blend_minmax:J.a,EXTColorBufferFloat:J.a,EXTColorBufferHalfFloat:J.a,EXTDisjointTimerQuery:J.a,EXTDisjointTimerQueryWebGL2:J.a,EXTFragDepth:J.a,EXT_frag_depth:J.a,EXTShaderTextureLOD:J.a,EXT_shader_texture_lod:J.a,EXTTextureFilterAnisotropic:J.a,EXT_texture_filter_anisotropic:J.a,WebGLFramebuffer:J.a,WebGLGetBufferSubDataAsync:J.a,WebGLLoseContext:J.a,WebGLExtensionLoseContext:J.a,WEBGL_lose_context:J.a,OESElementIndexUint:J.a,OES_element_index_uint:J.a,OESStandardDerivatives:J.a,OES_standard_derivatives:J.a,OESTextureFloat:J.a,OES_texture_float:J.a,OESTextureFloatLinear:J.a,OES_texture_float_linear:J.a,OESTextureHalfFloat:J.a,OES_texture_half_float:J.a,OESTextureHalfFloatLinear:J.a,OES_texture_half_float_linear:J.a,OESVertexArrayObject:J.a,OES_vertex_array_object:J.a,WebGLProgram:J.a,WebGLQuery:J.a,WebGLRenderbuffer:J.a,WebGLRenderingContext:J.a,WebGL2RenderingContext:J.a,WebGLSampler:J.a,WebGLShader:J.a,WebGLShaderPrecisionFormat:J.a,WebGLSync:J.a,WebGLTexture:J.a,WebGLTimerQueryEXT:J.a,WebGLTransformFeedback:J.a,WebGLUniformLocation:J.a,WebGLVertexArrayObject:J.a,WebGLVertexArrayObjectOES:J.a,WebGL2RenderingContextBase:J.a,ArrayBuffer:A.cW,ArrayBufferView:A.a6,DataView:A.dR,Float32Array:A.fQ,Float64Array:A.fR,Int16Array:A.fS,Int32Array:A.fT,Int8Array:A.fU,Uint16Array:A.fV,Uint32Array:A.fW,Uint8ClampedArray:A.dS,CanvasPixelArray:A.dS,Uint8Array:A.dT,HTMLAudioElement:A.q,HTMLBRElement:A.q,HTMLBaseElement:A.q,HTMLBodyElement:A.q,HTMLButtonElement:A.q,HTMLCanvasElement:A.q,HTMLContentElement:A.q,HTMLDListElement:A.q,HTMLDataElement:A.q,HTMLDataListElement:A.q,HTMLDetailsElement:A.q,HTMLDialogElement:A.q,HTMLDivElement:A.q,HTMLEmbedElement:A.q,HTMLFieldSetElement:A.q,HTMLHRElement:A.q,HTMLHeadElement:A.q,HTMLHeadingElement:A.q,HTMLHtmlElement:A.q,HTMLIFrameElement:A.q,HTMLImageElement:A.q,HTMLInputElement:A.q,HTMLLIElement:A.q,HTMLLabelElement:A.q,HTMLLegendElement:A.q,HTMLLinkElement:A.q,HTMLMapElement:A.q,HTMLMediaElement:A.q,HTMLMenuElement:A.q,HTMLMetaElement:A.q,HTMLMeterElement:A.q,HTMLModElement:A.q,HTMLOListElement:A.q,HTMLObjectElement:A.q,HTMLOptGroupElement:A.q,HTMLOptionElement:A.q,HTMLOutputElement:A.q,HTMLParagraphElement:A.q,HTMLParamElement:A.q,HTMLPictureElement:A.q,HTMLPreElement:A.q,HTMLProgressElement:A.q,HTMLQuoteElement:A.q,HTMLScriptElement:A.q,HTMLShadowElement:A.q,HTMLSlotElement:A.q,HTMLSourceElement:A.q,HTMLSpanElement:A.q,HTMLStyleElement:A.q,HTMLTableCaptionElement:A.q,HTMLTableCellElement:A.q,HTMLTableDataCellElement:A.q,HTMLTableHeaderCellElement:A.q,HTMLTableColElement:A.q,HTMLTableElement:A.q,HTMLTableRowElement:A.q,HTMLTableSectionElement:A.q,HTMLTemplateElement:A.q,HTMLTextAreaElement:A.q,HTMLTimeElement:A.q,HTMLTitleElement:A.q,HTMLTrackElement:A.q,HTMLUListElement:A.q,HTMLUnknownElement:A.q,HTMLVideoElement:A.q,HTMLDirectoryElement:A.q,HTMLFontElement:A.q,HTMLFrameElement:A.q,HTMLFrameSetElement:A.q,HTMLMarqueeElement:A.q,HTMLElement:A.q,AccessibleNodeList:A.f_,HTMLAnchorElement:A.f0,HTMLAreaElement:A.f1,Blob:A.bM,CDATASection:A.bc,CharacterData:A.bc,Comment:A.bc,ProcessingInstruction:A.bc,Text:A.bc,CSSPerspective:A.fj,CSSCharsetRule:A.P,CSSConditionRule:A.P,CSSFontFaceRule:A.P,CSSGroupingRule:A.P,CSSImportRule:A.P,CSSKeyframeRule:A.P,MozCSSKeyframeRule:A.P,WebKitCSSKeyframeRule:A.P,CSSKeyframesRule:A.P,MozCSSKeyframesRule:A.P,WebKitCSSKeyframesRule:A.P,CSSMediaRule:A.P,CSSNamespaceRule:A.P,CSSPageRule:A.P,CSSRule:A.P,CSSStyleRule:A.P,CSSSupportsRule:A.P,CSSViewportRule:A.P,CSSStyleDeclaration:A.cD,MSStyleCSSProperties:A.cD,CSS2Properties:A.cD,CSSImageValue:A.at,CSSKeywordValue:A.at,CSSNumericValue:A.at,CSSPositionValue:A.at,CSSResourceValue:A.at,CSSUnitValue:A.at,CSSURLImageValue:A.at,CSSStyleValue:A.at,CSSMatrixComponent:A.b1,CSSRotation:A.b1,CSSScale:A.b1,CSSSkew:A.b1,CSSTranslation:A.b1,CSSTransformComponent:A.b1,CSSTransformValue:A.fk,CSSUnparsedValue:A.fl,DataTransferItemList:A.fm,DOMException:A.fq,ClientRectList:A.dC,DOMRectList:A.dC,DOMRectReadOnly:A.dD,DOMStringList:A.fr,DOMTokenList:A.fs,MathMLElement:A.p,SVGAElement:A.p,SVGAnimateElement:A.p,SVGAnimateMotionElement:A.p,SVGAnimateTransformElement:A.p,SVGAnimationElement:A.p,SVGCircleElement:A.p,SVGClipPathElement:A.p,SVGDefsElement:A.p,SVGDescElement:A.p,SVGDiscardElement:A.p,SVGEllipseElement:A.p,SVGFEBlendElement:A.p,SVGFEColorMatrixElement:A.p,SVGFEComponentTransferElement:A.p,SVGFECompositeElement:A.p,SVGFEConvolveMatrixElement:A.p,SVGFEDiffuseLightingElement:A.p,SVGFEDisplacementMapElement:A.p,SVGFEDistantLightElement:A.p,SVGFEFloodElement:A.p,SVGFEFuncAElement:A.p,SVGFEFuncBElement:A.p,SVGFEFuncGElement:A.p,SVGFEFuncRElement:A.p,SVGFEGaussianBlurElement:A.p,SVGFEImageElement:A.p,SVGFEMergeElement:A.p,SVGFEMergeNodeElement:A.p,SVGFEMorphologyElement:A.p,SVGFEOffsetElement:A.p,SVGFEPointLightElement:A.p,SVGFESpecularLightingElement:A.p,SVGFESpotLightElement:A.p,SVGFETileElement:A.p,SVGFETurbulenceElement:A.p,SVGFilterElement:A.p,SVGForeignObjectElement:A.p,SVGGElement:A.p,SVGGeometryElement:A.p,SVGGraphicsElement:A.p,SVGImageElement:A.p,SVGLineElement:A.p,SVGLinearGradientElement:A.p,SVGMarkerElement:A.p,SVGMaskElement:A.p,SVGMetadataElement:A.p,SVGPathElement:A.p,SVGPatternElement:A.p,SVGPolygonElement:A.p,SVGPolylineElement:A.p,SVGRadialGradientElement:A.p,SVGRectElement:A.p,SVGScriptElement:A.p,SVGSetElement:A.p,SVGStopElement:A.p,SVGStyleElement:A.p,SVGElement:A.p,SVGSVGElement:A.p,SVGSwitchElement:A.p,SVGSymbolElement:A.p,SVGTSpanElement:A.p,SVGTextContentElement:A.p,SVGTextElement:A.p,SVGTextPathElement:A.p,SVGTextPositioningElement:A.p,SVGTitleElement:A.p,SVGUseElement:A.p,SVGViewElement:A.p,SVGGradientElement:A.p,SVGComponentTransferFunctionElement:A.p,SVGFEDropShadowElement:A.p,SVGMPathElement:A.p,Element:A.p,AbortPaymentEvent:A.m,AnimationEvent:A.m,AnimationPlaybackEvent:A.m,ApplicationCacheErrorEvent:A.m,BackgroundFetchClickEvent:A.m,BackgroundFetchEvent:A.m,BackgroundFetchFailEvent:A.m,BackgroundFetchedEvent:A.m,BeforeInstallPromptEvent:A.m,BeforeUnloadEvent:A.m,BlobEvent:A.m,CanMakePaymentEvent:A.m,ClipboardEvent:A.m,CloseEvent:A.m,CompositionEvent:A.m,CustomEvent:A.m,DeviceMotionEvent:A.m,DeviceOrientationEvent:A.m,ErrorEvent:A.m,ExtendableEvent:A.m,ExtendableMessageEvent:A.m,FetchEvent:A.m,FocusEvent:A.m,FontFaceSetLoadEvent:A.m,ForeignFetchEvent:A.m,GamepadEvent:A.m,HashChangeEvent:A.m,InstallEvent:A.m,KeyboardEvent:A.m,MediaEncryptedEvent:A.m,MediaKeyMessageEvent:A.m,MediaQueryListEvent:A.m,MediaStreamEvent:A.m,MediaStreamTrackEvent:A.m,MIDIConnectionEvent:A.m,MIDIMessageEvent:A.m,MouseEvent:A.m,DragEvent:A.m,MutationEvent:A.m,NotificationEvent:A.m,PageTransitionEvent:A.m,PaymentRequestEvent:A.m,PaymentRequestUpdateEvent:A.m,PointerEvent:A.m,PopStateEvent:A.m,PresentationConnectionAvailableEvent:A.m,PresentationConnectionCloseEvent:A.m,ProgressEvent:A.m,PromiseRejectionEvent:A.m,PushEvent:A.m,RTCDataChannelEvent:A.m,RTCDTMFToneChangeEvent:A.m,RTCPeerConnectionIceEvent:A.m,RTCTrackEvent:A.m,SecurityPolicyViolationEvent:A.m,SensorErrorEvent:A.m,SpeechRecognitionError:A.m,SpeechRecognitionEvent:A.m,SpeechSynthesisEvent:A.m,StorageEvent:A.m,SyncEvent:A.m,TextEvent:A.m,TouchEvent:A.m,TrackEvent:A.m,TransitionEvent:A.m,WebKitTransitionEvent:A.m,UIEvent:A.m,VRDeviceEvent:A.m,VRDisplayEvent:A.m,VRSessionEvent:A.m,WheelEvent:A.m,MojoInterfaceRequestEvent:A.m,ResourceProgressEvent:A.m,USBConnectionEvent:A.m,AudioProcessingEvent:A.m,OfflineAudioCompletionEvent:A.m,WebGLContextEvent:A.m,Event:A.m,InputEvent:A.m,SubmitEvent:A.m,AbsoluteOrientationSensor:A.f,Accelerometer:A.f,AccessibleNode:A.f,AmbientLightSensor:A.f,Animation:A.f,ApplicationCache:A.f,DOMApplicationCache:A.f,OfflineResourceList:A.f,BackgroundFetchRegistration:A.f,BatteryManager:A.f,BroadcastChannel:A.f,CanvasCaptureMediaStreamTrack:A.f,EventSource:A.f,FileReader:A.f,FontFaceSet:A.f,Gyroscope:A.f,XMLHttpRequest:A.f,XMLHttpRequestEventTarget:A.f,XMLHttpRequestUpload:A.f,LinearAccelerationSensor:A.f,Magnetometer:A.f,MediaDevices:A.f,MediaKeySession:A.f,MediaQueryList:A.f,MediaRecorder:A.f,MediaSource:A.f,MediaStream:A.f,MediaStreamTrack:A.f,MIDIAccess:A.f,MIDIInput:A.f,MIDIOutput:A.f,MIDIPort:A.f,NetworkInformation:A.f,Notification:A.f,OffscreenCanvas:A.f,OrientationSensor:A.f,PaymentRequest:A.f,Performance:A.f,PermissionStatus:A.f,PresentationAvailability:A.f,PresentationConnection:A.f,PresentationConnectionList:A.f,PresentationRequest:A.f,RelativeOrientationSensor:A.f,RemotePlayback:A.f,RTCDataChannel:A.f,DataChannel:A.f,RTCDTMFSender:A.f,RTCPeerConnection:A.f,webkitRTCPeerConnection:A.f,mozRTCPeerConnection:A.f,ScreenOrientation:A.f,Sensor:A.f,ServiceWorker:A.f,ServiceWorkerContainer:A.f,ServiceWorkerRegistration:A.f,SharedWorker:A.f,SpeechRecognition:A.f,webkitSpeechRecognition:A.f,SpeechSynthesis:A.f,SpeechSynthesisUtterance:A.f,VR:A.f,VRDevice:A.f,VRDisplay:A.f,VRSession:A.f,VisualViewport:A.f,WebSocket:A.f,Window:A.f,DOMWindow:A.f,Worker:A.f,WorkerPerformance:A.f,BluetoothDevice:A.f,BluetoothRemoteGATTCharacteristic:A.f,Clipboard:A.f,MojoInterfaceInterceptor:A.f,USB:A.f,AnalyserNode:A.f,RealtimeAnalyserNode:A.f,AudioBufferSourceNode:A.f,AudioDestinationNode:A.f,AudioNode:A.f,AudioScheduledSourceNode:A.f,AudioWorkletNode:A.f,BiquadFilterNode:A.f,ChannelMergerNode:A.f,AudioChannelMerger:A.f,ChannelSplitterNode:A.f,AudioChannelSplitter:A.f,ConstantSourceNode:A.f,ConvolverNode:A.f,DelayNode:A.f,DynamicsCompressorNode:A.f,GainNode:A.f,AudioGainNode:A.f,IIRFilterNode:A.f,MediaElementAudioSourceNode:A.f,MediaStreamAudioDestinationNode:A.f,MediaStreamAudioSourceNode:A.f,OscillatorNode:A.f,Oscillator:A.f,PannerNode:A.f,AudioPannerNode:A.f,webkitAudioPannerNode:A.f,ScriptProcessorNode:A.f,JavaScriptAudioNode:A.f,StereoPannerNode:A.f,WaveShaperNode:A.f,EventTarget:A.f,File:A.ax,FileList:A.cH,FileWriter:A.fw,HTMLFormElement:A.fy,Gamepad:A.ay,History:A.fz,HTMLCollection:A.cb,HTMLFormControlsCollection:A.cb,HTMLOptionsCollection:A.cb,ImageData:A.cL,Location:A.fK,MediaList:A.fM,MessageEvent:A.cV,MessagePort:A.cf,MIDIInputMap:A.fN,MIDIOutputMap:A.fO,MimeType:A.aA,MimeTypeArray:A.fP,Document:A.H,DocumentFragment:A.H,HTMLDocument:A.H,ShadowRoot:A.H,XMLDocument:A.H,Attr:A.H,DocumentType:A.H,Node:A.H,NodeList:A.dU,RadioNodeList:A.dU,Plugin:A.aB,PluginArray:A.h2,RTCStatsReport:A.h8,HTMLSelectElement:A.ha,SharedArrayBuffer:A.cZ,SharedWorkerGlobalScope:A.d_,SourceBuffer:A.aD,SourceBufferList:A.hb,SpeechGrammar:A.aE,SpeechGrammarList:A.hc,SpeechRecognitionResult:A.aF,Storage:A.hi,CSSStyleSheet:A.ao,StyleSheet:A.ao,TextTrack:A.aH,TextTrackCue:A.ap,VTTCue:A.ap,TextTrackCueList:A.hl,TextTrackList:A.hm,TimeRanges:A.hn,Touch:A.aI,TouchList:A.ho,TrackDefaultList:A.hp,URL:A.hx,VideoTrackList:A.hB,DedicatedWorkerGlobalScope:A.bY,ServiceWorkerGlobalScope:A.bY,WorkerGlobalScope:A.bY,CSSRuleList:A.hS,ClientRect:A.ek,DOMRect:A.ek,GamepadList:A.i5,NamedNodeMap:A.et,MozNamedAttrMap:A.et,SpeechRecognitionResultList:A.iD,StyleSheetList:A.iN,IDBCursor:A.bO,IDBCursorWithValue:A.bn,IDBDatabase:A.bd,IDBFactory:A.cK,IDBIndex:A.dI,IDBObjectStore:A.dW,IDBOpenDBRequest:A.bs,IDBVersionChangeRequest:A.bs,IDBRequest:A.bs,IDBTransaction:A.e9,IDBVersionChangeEvent:A.by,SVGLength:A.aL,SVGLengthList:A.fI,SVGNumber:A.aN,SVGNumberList:A.fZ,SVGPointList:A.h3,SVGStringList:A.hj,SVGTransform:A.aQ,SVGTransformList:A.hq,AudioBuffer:A.f4,AudioParamMap:A.f5,AudioTrackList:A.f6,AudioContext:A.bL,webkitAudioContext:A.bL,BaseAudioContext:A.bL,OfflineAudioContext:A.h_}) -hunkHelpers.setOrUpdateLeafTags({WebGL:true,AnimationEffectReadOnly:true,AnimationEffectTiming:true,AnimationEffectTimingReadOnly:true,AnimationTimeline:true,AnimationWorkletGlobalScope:true,AuthenticatorAssertionResponse:true,AuthenticatorAttestationResponse:true,AuthenticatorResponse:true,BackgroundFetchFetch:true,BackgroundFetchManager:true,BackgroundFetchSettledFetch:true,BarProp:true,BarcodeDetector:true,BluetoothRemoteGATTDescriptor:true,Body:true,BudgetState:true,CacheStorage:true,CanvasGradient:true,CanvasPattern:true,CanvasRenderingContext2D:true,Client:true,Clients:true,CookieStore:true,Coordinates:true,Credential:true,CredentialUserData:true,CredentialsContainer:true,Crypto:true,CryptoKey:true,CSS:true,CSSVariableReferenceValue:true,CustomElementRegistry:true,DataTransfer:true,DataTransferItem:true,DeprecatedStorageInfo:true,DeprecatedStorageQuota:true,DeprecationReport:true,DetectedBarcode:true,DetectedFace:true,DetectedText:true,DeviceAcceleration:true,DeviceRotationRate:true,DirectoryEntry:true,webkitFileSystemDirectoryEntry:true,FileSystemDirectoryEntry:true,DirectoryReader:true,WebKitDirectoryReader:true,webkitFileSystemDirectoryReader:true,FileSystemDirectoryReader:true,DocumentOrShadowRoot:true,DocumentTimeline:true,DOMError:true,DOMImplementation:true,Iterator:true,DOMMatrix:true,DOMMatrixReadOnly:true,DOMParser:true,DOMPoint:true,DOMPointReadOnly:true,DOMQuad:true,DOMStringMap:true,Entry:true,webkitFileSystemEntry:true,FileSystemEntry:true,External:true,FaceDetector:true,FederatedCredential:true,FileEntry:true,webkitFileSystemFileEntry:true,FileSystemFileEntry:true,DOMFileSystem:true,WebKitFileSystem:true,webkitFileSystem:true,FileSystem:true,FontFace:true,FontFaceSource:true,FormData:true,GamepadButton:true,GamepadPose:true,Geolocation:true,Position:true,GeolocationPosition:true,Headers:true,HTMLHyperlinkElementUtils:true,IdleDeadline:true,ImageBitmap:true,ImageBitmapRenderingContext:true,ImageCapture:true,InputDeviceCapabilities:true,IntersectionObserver:true,IntersectionObserverEntry:true,InterventionReport:true,KeyframeEffect:true,KeyframeEffectReadOnly:true,MediaCapabilities:true,MediaCapabilitiesInfo:true,MediaDeviceInfo:true,MediaError:true,MediaKeyStatusMap:true,MediaKeySystemAccess:true,MediaKeys:true,MediaKeysPolicy:true,MediaMetadata:true,MediaSession:true,MediaSettingsRange:true,MemoryInfo:true,MessageChannel:true,Metadata:true,MutationObserver:true,WebKitMutationObserver:true,MutationRecord:true,NavigationPreloadManager:true,Navigator:true,NavigatorAutomationInformation:true,NavigatorConcurrentHardware:true,NavigatorCookies:true,NavigatorUserMediaError:true,NodeFilter:true,NodeIterator:true,NonDocumentTypeChildNode:true,NonElementParentNode:true,NoncedElement:true,OffscreenCanvasRenderingContext2D:true,OverconstrainedError:true,PaintRenderingContext2D:true,PaintSize:true,PaintWorkletGlobalScope:true,PasswordCredential:true,Path2D:true,PaymentAddress:true,PaymentInstruments:true,PaymentManager:true,PaymentResponse:true,PerformanceEntry:true,PerformanceLongTaskTiming:true,PerformanceMark:true,PerformanceMeasure:true,PerformanceNavigation:true,PerformanceNavigationTiming:true,PerformanceObserver:true,PerformanceObserverEntryList:true,PerformancePaintTiming:true,PerformanceResourceTiming:true,PerformanceServerTiming:true,PerformanceTiming:true,Permissions:true,PhotoCapabilities:true,PositionError:true,GeolocationPositionError:true,Presentation:true,PresentationReceiver:true,PublicKeyCredential:true,PushManager:true,PushMessageData:true,PushSubscription:true,PushSubscriptionOptions:true,Range:true,RelatedApplication:true,ReportBody:true,ReportingObserver:true,ResizeObserver:true,ResizeObserverEntry:true,RTCCertificate:true,RTCIceCandidate:true,mozRTCIceCandidate:true,RTCLegacyStatsReport:true,RTCRtpContributingSource:true,RTCRtpReceiver:true,RTCRtpSender:true,RTCSessionDescription:true,mozRTCSessionDescription:true,RTCStatsResponse:true,Screen:true,ScrollState:true,ScrollTimeline:true,Selection:true,SpeechRecognitionAlternative:true,SpeechSynthesisVoice:true,StaticRange:true,StorageManager:true,StyleMedia:true,StylePropertyMap:true,StylePropertyMapReadonly:true,SyncManager:true,TaskAttributionTiming:true,TextDetector:true,TextMetrics:true,TrackDefault:true,TreeWalker:true,TrustedHTML:true,TrustedScriptURL:true,TrustedURL:true,UnderlyingSourceBase:true,URLSearchParams:true,VRCoordinateSystem:true,VRDisplayCapabilities:true,VREyeParameters:true,VRFrameData:true,VRFrameOfReference:true,VRPose:true,VRStageBounds:true,VRStageBoundsPoint:true,VRStageParameters:true,ValidityState:true,VideoPlaybackQuality:true,VideoTrack:true,VTTRegion:true,WindowClient:true,WorkletAnimation:true,WorkletGlobalScope:true,XPathEvaluator:true,XPathExpression:true,XPathNSResolver:true,XPathResult:true,XMLSerializer:true,XSLTProcessor:true,Bluetooth:true,BluetoothCharacteristicProperties:true,BluetoothRemoteGATTServer:true,BluetoothRemoteGATTService:true,BluetoothUUID:true,BudgetService:true,Cache:true,DOMFileSystemSync:true,DirectoryEntrySync:true,DirectoryReaderSync:true,EntrySync:true,FileEntrySync:true,FileReaderSync:true,FileWriterSync:true,HTMLAllCollection:true,Mojo:true,MojoHandle:true,MojoWatcher:true,NFC:true,PagePopupController:true,Report:true,Request:true,Response:true,SubtleCrypto:true,USBAlternateInterface:true,USBConfiguration:true,USBDevice:true,USBEndpoint:true,USBInTransferResult:true,USBInterface:true,USBIsochronousInTransferPacket:true,USBIsochronousInTransferResult:true,USBIsochronousOutTransferPacket:true,USBIsochronousOutTransferResult:true,USBOutTransferResult:true,WorkerLocation:true,WorkerNavigator:true,Worklet:true,IDBKeyRange:true,IDBObservation:true,IDBObserver:true,IDBObserverChanges:true,SVGAngle:true,SVGAnimatedAngle:true,SVGAnimatedBoolean:true,SVGAnimatedEnumeration:true,SVGAnimatedInteger:true,SVGAnimatedLength:true,SVGAnimatedLengthList:true,SVGAnimatedNumber:true,SVGAnimatedNumberList:true,SVGAnimatedPreserveAspectRatio:true,SVGAnimatedRect:true,SVGAnimatedString:true,SVGAnimatedTransformList:true,SVGMatrix:true,SVGPoint:true,SVGPreserveAspectRatio:true,SVGRect:true,SVGUnitTypes:true,AudioListener:true,AudioParam:true,AudioTrack:true,AudioWorkletGlobalScope:true,AudioWorkletProcessor:true,PeriodicWave:true,WebGLActiveInfo:true,ANGLEInstancedArrays:true,ANGLE_instanced_arrays:true,WebGLBuffer:true,WebGLCanvas:true,WebGLColorBufferFloat:true,WebGLCompressedTextureASTC:true,WebGLCompressedTextureATC:true,WEBGL_compressed_texture_atc:true,WebGLCompressedTextureETC1:true,WEBGL_compressed_texture_etc1:true,WebGLCompressedTextureETC:true,WebGLCompressedTexturePVRTC:true,WEBGL_compressed_texture_pvrtc:true,WebGLCompressedTextureS3TC:true,WEBGL_compressed_texture_s3tc:true,WebGLCompressedTextureS3TCsRGB:true,WebGLDebugRendererInfo:true,WEBGL_debug_renderer_info:true,WebGLDebugShaders:true,WEBGL_debug_shaders:true,WebGLDepthTexture:true,WEBGL_depth_texture:true,WebGLDrawBuffers:true,WEBGL_draw_buffers:true,EXTsRGB:true,EXT_sRGB:true,EXTBlendMinMax:true,EXT_blend_minmax:true,EXTColorBufferFloat:true,EXTColorBufferHalfFloat:true,EXTDisjointTimerQuery:true,EXTDisjointTimerQueryWebGL2:true,EXTFragDepth:true,EXT_frag_depth:true,EXTShaderTextureLOD:true,EXT_shader_texture_lod:true,EXTTextureFilterAnisotropic:true,EXT_texture_filter_anisotropic:true,WebGLFramebuffer:true,WebGLGetBufferSubDataAsync:true,WebGLLoseContext:true,WebGLExtensionLoseContext:true,WEBGL_lose_context:true,OESElementIndexUint:true,OES_element_index_uint:true,OESStandardDerivatives:true,OES_standard_derivatives:true,OESTextureFloat:true,OES_texture_float:true,OESTextureFloatLinear:true,OES_texture_float_linear:true,OESTextureHalfFloat:true,OES_texture_half_float:true,OESTextureHalfFloatLinear:true,OES_texture_half_float_linear:true,OESVertexArrayObject:true,OES_vertex_array_object:true,WebGLProgram:true,WebGLQuery:true,WebGLRenderbuffer:true,WebGLRenderingContext:true,WebGL2RenderingContext:true,WebGLSampler:true,WebGLShader:true,WebGLShaderPrecisionFormat:true,WebGLSync:true,WebGLTexture:true,WebGLTimerQueryEXT:true,WebGLTransformFeedback:true,WebGLUniformLocation:true,WebGLVertexArrayObject:true,WebGLVertexArrayObjectOES:true,WebGL2RenderingContextBase:true,ArrayBuffer:true,ArrayBufferView:false,DataView:true,Float32Array:true,Float64Array:true,Int16Array:true,Int32Array:true,Int8Array:true,Uint16Array:true,Uint32Array:true,Uint8ClampedArray:true,CanvasPixelArray:true,Uint8Array:false,HTMLAudioElement:true,HTMLBRElement:true,HTMLBaseElement:true,HTMLBodyElement:true,HTMLButtonElement:true,HTMLCanvasElement:true,HTMLContentElement:true,HTMLDListElement:true,HTMLDataElement:true,HTMLDataListElement:true,HTMLDetailsElement:true,HTMLDialogElement:true,HTMLDivElement:true,HTMLEmbedElement:true,HTMLFieldSetElement:true,HTMLHRElement:true,HTMLHeadElement:true,HTMLHeadingElement:true,HTMLHtmlElement:true,HTMLIFrameElement:true,HTMLImageElement:true,HTMLInputElement:true,HTMLLIElement:true,HTMLLabelElement:true,HTMLLegendElement:true,HTMLLinkElement:true,HTMLMapElement:true,HTMLMediaElement:true,HTMLMenuElement:true,HTMLMetaElement:true,HTMLMeterElement:true,HTMLModElement:true,HTMLOListElement:true,HTMLObjectElement:true,HTMLOptGroupElement:true,HTMLOptionElement:true,HTMLOutputElement:true,HTMLParagraphElement:true,HTMLParamElement:true,HTMLPictureElement:true,HTMLPreElement:true,HTMLProgressElement:true,HTMLQuoteElement:true,HTMLScriptElement:true,HTMLShadowElement:true,HTMLSlotElement:true,HTMLSourceElement:true,HTMLSpanElement:true,HTMLStyleElement:true,HTMLTableCaptionElement:true,HTMLTableCellElement:true,HTMLTableDataCellElement:true,HTMLTableHeaderCellElement:true,HTMLTableColElement:true,HTMLTableElement:true,HTMLTableRowElement:true,HTMLTableSectionElement:true,HTMLTemplateElement:true,HTMLTextAreaElement:true,HTMLTimeElement:true,HTMLTitleElement:true,HTMLTrackElement:true,HTMLUListElement:true,HTMLUnknownElement:true,HTMLVideoElement:true,HTMLDirectoryElement:true,HTMLFontElement:true,HTMLFrameElement:true,HTMLFrameSetElement:true,HTMLMarqueeElement:true,HTMLElement:false,AccessibleNodeList:true,HTMLAnchorElement:true,HTMLAreaElement:true,Blob:false,CDATASection:true,CharacterData:true,Comment:true,ProcessingInstruction:true,Text:true,CSSPerspective:true,CSSCharsetRule:true,CSSConditionRule:true,CSSFontFaceRule:true,CSSGroupingRule:true,CSSImportRule:true,CSSKeyframeRule:true,MozCSSKeyframeRule:true,WebKitCSSKeyframeRule:true,CSSKeyframesRule:true,MozCSSKeyframesRule:true,WebKitCSSKeyframesRule:true,CSSMediaRule:true,CSSNamespaceRule:true,CSSPageRule:true,CSSRule:true,CSSStyleRule:true,CSSSupportsRule:true,CSSViewportRule:true,CSSStyleDeclaration:true,MSStyleCSSProperties:true,CSS2Properties:true,CSSImageValue:true,CSSKeywordValue:true,CSSNumericValue:true,CSSPositionValue:true,CSSResourceValue:true,CSSUnitValue:true,CSSURLImageValue:true,CSSStyleValue:false,CSSMatrixComponent:true,CSSRotation:true,CSSScale:true,CSSSkew:true,CSSTranslation:true,CSSTransformComponent:false,CSSTransformValue:true,CSSUnparsedValue:true,DataTransferItemList:true,DOMException:true,ClientRectList:true,DOMRectList:true,DOMRectReadOnly:false,DOMStringList:true,DOMTokenList:true,MathMLElement:true,SVGAElement:true,SVGAnimateElement:true,SVGAnimateMotionElement:true,SVGAnimateTransformElement:true,SVGAnimationElement:true,SVGCircleElement:true,SVGClipPathElement:true,SVGDefsElement:true,SVGDescElement:true,SVGDiscardElement:true,SVGEllipseElement:true,SVGFEBlendElement:true,SVGFEColorMatrixElement:true,SVGFEComponentTransferElement:true,SVGFECompositeElement:true,SVGFEConvolveMatrixElement:true,SVGFEDiffuseLightingElement:true,SVGFEDisplacementMapElement:true,SVGFEDistantLightElement:true,SVGFEFloodElement:true,SVGFEFuncAElement:true,SVGFEFuncBElement:true,SVGFEFuncGElement:true,SVGFEFuncRElement:true,SVGFEGaussianBlurElement:true,SVGFEImageElement:true,SVGFEMergeElement:true,SVGFEMergeNodeElement:true,SVGFEMorphologyElement:true,SVGFEOffsetElement:true,SVGFEPointLightElement:true,SVGFESpecularLightingElement:true,SVGFESpotLightElement:true,SVGFETileElement:true,SVGFETurbulenceElement:true,SVGFilterElement:true,SVGForeignObjectElement:true,SVGGElement:true,SVGGeometryElement:true,SVGGraphicsElement:true,SVGImageElement:true,SVGLineElement:true,SVGLinearGradientElement:true,SVGMarkerElement:true,SVGMaskElement:true,SVGMetadataElement:true,SVGPathElement:true,SVGPatternElement:true,SVGPolygonElement:true,SVGPolylineElement:true,SVGRadialGradientElement:true,SVGRectElement:true,SVGScriptElement:true,SVGSetElement:true,SVGStopElement:true,SVGStyleElement:true,SVGElement:true,SVGSVGElement:true,SVGSwitchElement:true,SVGSymbolElement:true,SVGTSpanElement:true,SVGTextContentElement:true,SVGTextElement:true,SVGTextPathElement:true,SVGTextPositioningElement:true,SVGTitleElement:true,SVGUseElement:true,SVGViewElement:true,SVGGradientElement:true,SVGComponentTransferFunctionElement:true,SVGFEDropShadowElement:true,SVGMPathElement:true,Element:false,AbortPaymentEvent:true,AnimationEvent:true,AnimationPlaybackEvent:true,ApplicationCacheErrorEvent:true,BackgroundFetchClickEvent:true,BackgroundFetchEvent:true,BackgroundFetchFailEvent:true,BackgroundFetchedEvent:true,BeforeInstallPromptEvent:true,BeforeUnloadEvent:true,BlobEvent:true,CanMakePaymentEvent:true,ClipboardEvent:true,CloseEvent:true,CompositionEvent:true,CustomEvent:true,DeviceMotionEvent:true,DeviceOrientationEvent:true,ErrorEvent:true,ExtendableEvent:true,ExtendableMessageEvent:true,FetchEvent:true,FocusEvent:true,FontFaceSetLoadEvent:true,ForeignFetchEvent:true,GamepadEvent:true,HashChangeEvent:true,InstallEvent:true,KeyboardEvent:true,MediaEncryptedEvent:true,MediaKeyMessageEvent:true,MediaQueryListEvent:true,MediaStreamEvent:true,MediaStreamTrackEvent:true,MIDIConnectionEvent:true,MIDIMessageEvent:true,MouseEvent:true,DragEvent:true,MutationEvent:true,NotificationEvent:true,PageTransitionEvent:true,PaymentRequestEvent:true,PaymentRequestUpdateEvent:true,PointerEvent:true,PopStateEvent:true,PresentationConnectionAvailableEvent:true,PresentationConnectionCloseEvent:true,ProgressEvent:true,PromiseRejectionEvent:true,PushEvent:true,RTCDataChannelEvent:true,RTCDTMFToneChangeEvent:true,RTCPeerConnectionIceEvent:true,RTCTrackEvent:true,SecurityPolicyViolationEvent:true,SensorErrorEvent:true,SpeechRecognitionError:true,SpeechRecognitionEvent:true,SpeechSynthesisEvent:true,StorageEvent:true,SyncEvent:true,TextEvent:true,TouchEvent:true,TrackEvent:true,TransitionEvent:true,WebKitTransitionEvent:true,UIEvent:true,VRDeviceEvent:true,VRDisplayEvent:true,VRSessionEvent:true,WheelEvent:true,MojoInterfaceRequestEvent:true,ResourceProgressEvent:true,USBConnectionEvent:true,AudioProcessingEvent:true,OfflineAudioCompletionEvent:true,WebGLContextEvent:true,Event:false,InputEvent:false,SubmitEvent:false,AbsoluteOrientationSensor:true,Accelerometer:true,AccessibleNode:true,AmbientLightSensor:true,Animation:true,ApplicationCache:true,DOMApplicationCache:true,OfflineResourceList:true,BackgroundFetchRegistration:true,BatteryManager:true,BroadcastChannel:true,CanvasCaptureMediaStreamTrack:true,EventSource:true,FileReader:true,FontFaceSet:true,Gyroscope:true,XMLHttpRequest:true,XMLHttpRequestEventTarget:true,XMLHttpRequestUpload:true,LinearAccelerationSensor:true,Magnetometer:true,MediaDevices:true,MediaKeySession:true,MediaQueryList:true,MediaRecorder:true,MediaSource:true,MediaStream:true,MediaStreamTrack:true,MIDIAccess:true,MIDIInput:true,MIDIOutput:true,MIDIPort:true,NetworkInformation:true,Notification:true,OffscreenCanvas:true,OrientationSensor:true,PaymentRequest:true,Performance:true,PermissionStatus:true,PresentationAvailability:true,PresentationConnection:true,PresentationConnectionList:true,PresentationRequest:true,RelativeOrientationSensor:true,RemotePlayback:true,RTCDataChannel:true,DataChannel:true,RTCDTMFSender:true,RTCPeerConnection:true,webkitRTCPeerConnection:true,mozRTCPeerConnection:true,ScreenOrientation:true,Sensor:true,ServiceWorker:true,ServiceWorkerContainer:true,ServiceWorkerRegistration:true,SharedWorker:true,SpeechRecognition:true,webkitSpeechRecognition:true,SpeechSynthesis:true,SpeechSynthesisUtterance:true,VR:true,VRDevice:true,VRDisplay:true,VRSession:true,VisualViewport:true,WebSocket:true,Window:true,DOMWindow:true,Worker:true,WorkerPerformance:true,BluetoothDevice:true,BluetoothRemoteGATTCharacteristic:true,Clipboard:true,MojoInterfaceInterceptor:true,USB:true,AnalyserNode:true,RealtimeAnalyserNode:true,AudioBufferSourceNode:true,AudioDestinationNode:true,AudioNode:true,AudioScheduledSourceNode:true,AudioWorkletNode:true,BiquadFilterNode:true,ChannelMergerNode:true,AudioChannelMerger:true,ChannelSplitterNode:true,AudioChannelSplitter:true,ConstantSourceNode:true,ConvolverNode:true,DelayNode:true,DynamicsCompressorNode:true,GainNode:true,AudioGainNode:true,IIRFilterNode:true,MediaElementAudioSourceNode:true,MediaStreamAudioDestinationNode:true,MediaStreamAudioSourceNode:true,OscillatorNode:true,Oscillator:true,PannerNode:true,AudioPannerNode:true,webkitAudioPannerNode:true,ScriptProcessorNode:true,JavaScriptAudioNode:true,StereoPannerNode:true,WaveShaperNode:true,EventTarget:false,File:true,FileList:true,FileWriter:true,HTMLFormElement:true,Gamepad:true,History:true,HTMLCollection:true,HTMLFormControlsCollection:true,HTMLOptionsCollection:true,ImageData:true,Location:true,MediaList:true,MessageEvent:true,MessagePort:true,MIDIInputMap:true,MIDIOutputMap:true,MimeType:true,MimeTypeArray:true,Document:true,DocumentFragment:true,HTMLDocument:true,ShadowRoot:true,XMLDocument:true,Attr:true,DocumentType:true,Node:false,NodeList:true,RadioNodeList:true,Plugin:true,PluginArray:true,RTCStatsReport:true,HTMLSelectElement:true,SharedArrayBuffer:true,SharedWorkerGlobalScope:true,SourceBuffer:true,SourceBufferList:true,SpeechGrammar:true,SpeechGrammarList:true,SpeechRecognitionResult:true,Storage:true,CSSStyleSheet:true,StyleSheet:true,TextTrack:true,TextTrackCue:true,VTTCue:true,TextTrackCueList:true,TextTrackList:true,TimeRanges:true,Touch:true,TouchList:true,TrackDefaultList:true,URL:true,VideoTrackList:true,DedicatedWorkerGlobalScope:true,ServiceWorkerGlobalScope:true,WorkerGlobalScope:false,CSSRuleList:true,ClientRect:true,DOMRect:true,GamepadList:true,NamedNodeMap:true,MozNamedAttrMap:true,SpeechRecognitionResultList:true,StyleSheetList:true,IDBCursor:false,IDBCursorWithValue:true,IDBDatabase:true,IDBFactory:true,IDBIndex:true,IDBObjectStore:true,IDBOpenDBRequest:true,IDBVersionChangeRequest:true,IDBRequest:true,IDBTransaction:true,IDBVersionChangeEvent:true,SVGLength:true,SVGLengthList:true,SVGNumber:true,SVGNumberList:true,SVGPointList:true,SVGStringList:true,SVGTransform:true,SVGTransformList:true,AudioBuffer:true,AudioParamMap:true,AudioTrackList:true,AudioContext:true,webkitAudioContext:true,BaseAudioContext:false,OfflineAudioContext:true}) -A.ah.$nativeSuperclassTag="ArrayBufferView" -A.eu.$nativeSuperclassTag="ArrayBufferView" -A.ev.$nativeSuperclassTag="ArrayBufferView" -A.bS.$nativeSuperclassTag="ArrayBufferView" -A.ew.$nativeSuperclassTag="ArrayBufferView" -A.ex.$nativeSuperclassTag="ArrayBufferView" -A.aM.$nativeSuperclassTag="ArrayBufferView" -A.ez.$nativeSuperclassTag="EventTarget" -A.eA.$nativeSuperclassTag="EventTarget" -A.eF.$nativeSuperclassTag="EventTarget" -A.eG.$nativeSuperclassTag="EventTarget"})() -Function.prototype.$2=function(a,b){return this(a,b)} -Function.prototype.$1=function(a){return this(a)} -Function.prototype.$0=function(){return this()} -Function.prototype.$3$3=function(a,b,c){return this(a,b,c)} -Function.prototype.$2$2=function(a,b){return this(a,b)} -Function.prototype.$1$1=function(a){return this(a)} -Function.prototype.$2$1=function(a){return this(a)} -Function.prototype.$3=function(a,b,c){return this(a,b,c)} -Function.prototype.$4=function(a,b,c,d){return this(a,b,c,d)} -Function.prototype.$3$1=function(a){return this(a)} -Function.prototype.$1$0=function(){return this()} -Function.prototype.$5=function(a,b,c,d,e){return this(a,b,c,d,e)} -Function.prototype.$6=function(a,b,c,d,e,f){return this(a,b,c,d,e,f)} -Function.prototype.$2$3=function(a,b,c){return this(a,b,c)} -Function.prototype.$1$2=function(a,b){return this(a,b)} -convertAllToFastObject(w) -convertToFastObject($);(function(a){if(typeof document==="undefined"){a(null) -return}if(typeof document.currentScript!="undefined"){a(document.currentScript) -return}var s=document.scripts -function onLoad(b){for(var q=0;qck$^ZM?`wX`#L4EK4-sina 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

<6-$xnKe$wy^XMS8 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

XBiCZw8GuVgf|rP3d;lhIcxn7s`Q6a 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 hl-ft6%ng?LvkL Date: Fri, 7 Mar 2025 10:16:14 -0500 Subject: [PATCH 7/7] Adding macos and windows example apps --- example/macos/.gitignore | 7 + example/macos/Flutter/Flutter-Debug.xcconfig | 2 + .../macos/Flutter/Flutter-Release.xcconfig | 2 + .../Flutter/GeneratedPluginRegistrant.swift | 12 + example/macos/Podfile | 42 + example/macos/Podfile.lock | 23 + .../macos/Runner.xcodeproj/project.pbxproj | 801 ++++++++++++++++++ .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 99 +++ .../contents.xcworkspacedata | 10 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + example/macos/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 68 ++ .../AppIcon.appiconset/app_icon_1024.png | Bin 0 -> 102994 bytes .../AppIcon.appiconset/app_icon_128.png | Bin 0 -> 5680 bytes .../AppIcon.appiconset/app_icon_16.png | Bin 0 -> 520 bytes .../AppIcon.appiconset/app_icon_256.png | Bin 0 -> 14142 bytes .../AppIcon.appiconset/app_icon_32.png | Bin 0 -> 1066 bytes .../AppIcon.appiconset/app_icon_512.png | Bin 0 -> 36406 bytes .../AppIcon.appiconset/app_icon_64.png | Bin 0 -> 2218 bytes example/macos/Runner/Base.lproj/MainMenu.xib | 343 ++++++++ example/macos/Runner/Configs/AppInfo.xcconfig | 14 + example/macos/Runner/Configs/Debug.xcconfig | 2 + example/macos/Runner/Configs/Release.xcconfig | 2 + .../macos/Runner/Configs/Warnings.xcconfig | 13 + .../macos/Runner/DebugProfile.entitlements | 12 + example/macos/Runner/Info.plist | 32 + example/macos/Runner/MainFlutterWindow.swift | 15 + example/macos/Runner/Release.entitlements | 8 + example/macos/RunnerTests/RunnerTests.swift | 12 + example/windows/.gitignore | 17 + example/windows/CMakeLists.txt | 108 +++ example/windows/flutter/CMakeLists.txt | 109 +++ .../flutter/generated_plugin_registrant.cc | 11 + .../flutter/generated_plugin_registrant.h | 15 + .../windows/flutter/generated_plugins.cmake | 23 + example/windows/runner/CMakeLists.txt | 40 + example/windows/runner/Runner.rc | 121 +++ example/windows/runner/flutter_window.cpp | 71 ++ example/windows/runner/flutter_window.h | 33 + example/windows/runner/main.cpp | 43 + example/windows/runner/resource.h | 16 + example/windows/runner/resources/app_icon.ico | Bin 0 -> 33772 bytes example/windows/runner/runner.exe.manifest | 14 + example/windows/runner/utils.cpp | 65 ++ example/windows/runner/utils.h | 19 + example/windows/runner/win32_window.cpp | 288 +++++++ example/windows/runner/win32_window.h | 102 +++ 48 files changed, 2643 insertions(+) create mode 100644 example/macos/.gitignore create mode 100644 example/macos/Flutter/Flutter-Debug.xcconfig create mode 100644 example/macos/Flutter/Flutter-Release.xcconfig create mode 100644 example/macos/Flutter/GeneratedPluginRegistrant.swift create mode 100644 example/macos/Podfile create mode 100644 example/macos/Podfile.lock create mode 100644 example/macos/Runner.xcodeproj/project.pbxproj create mode 100644 example/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 example/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 example/macos/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 example/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 example/macos/Runner/AppDelegate.swift create mode 100644 example/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png create mode 100644 example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png create mode 100644 example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png create mode 100644 example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png create mode 100644 example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png create mode 100644 example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png create mode 100644 example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png create mode 100644 example/macos/Runner/Base.lproj/MainMenu.xib create mode 100644 example/macos/Runner/Configs/AppInfo.xcconfig create mode 100644 example/macos/Runner/Configs/Debug.xcconfig create mode 100644 example/macos/Runner/Configs/Release.xcconfig create mode 100644 example/macos/Runner/Configs/Warnings.xcconfig create mode 100644 example/macos/Runner/DebugProfile.entitlements create mode 100644 example/macos/Runner/Info.plist create mode 100644 example/macos/Runner/MainFlutterWindow.swift create mode 100644 example/macos/Runner/Release.entitlements create mode 100644 example/macos/RunnerTests/RunnerTests.swift create mode 100644 example/windows/.gitignore create mode 100644 example/windows/CMakeLists.txt create mode 100644 example/windows/flutter/CMakeLists.txt create mode 100644 example/windows/flutter/generated_plugin_registrant.cc create mode 100644 example/windows/flutter/generated_plugin_registrant.h create mode 100644 example/windows/flutter/generated_plugins.cmake create mode 100644 example/windows/runner/CMakeLists.txt create mode 100644 example/windows/runner/Runner.rc create mode 100644 example/windows/runner/flutter_window.cpp create mode 100644 example/windows/runner/flutter_window.h create mode 100644 example/windows/runner/main.cpp create mode 100644 example/windows/runner/resource.h create mode 100644 example/windows/runner/resources/app_icon.ico create mode 100644 example/windows/runner/runner.exe.manifest create mode 100644 example/windows/runner/utils.cpp create mode 100644 example/windows/runner/utils.h create mode 100644 example/windows/runner/win32_window.cpp create mode 100644 example/windows/runner/win32_window.h diff --git a/example/macos/.gitignore b/example/macos/.gitignore new file mode 100644 index 00000000..746adbb6 --- /dev/null +++ b/example/macos/.gitignore @@ -0,0 +1,7 @@ +# Flutter-related +**/Flutter/ephemeral/ +**/Pods/ + +# Xcode-related +**/dgph +**/xcuserdata/ diff --git a/example/macos/Flutter/Flutter-Debug.xcconfig b/example/macos/Flutter/Flutter-Debug.xcconfig new file mode 100644 index 00000000..4b81f9b2 --- /dev/null +++ b/example/macos/Flutter/Flutter-Debug.xcconfig @@ -0,0 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" +#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/example/macos/Flutter/Flutter-Release.xcconfig b/example/macos/Flutter/Flutter-Release.xcconfig new file mode 100644 index 00000000..5caa9d15 --- /dev/null +++ b/example/macos/Flutter/Flutter-Release.xcconfig @@ -0,0 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" +#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/example/macos/Flutter/GeneratedPluginRegistrant.swift b/example/macos/Flutter/GeneratedPluginRegistrant.swift new file mode 100644 index 00000000..29d4e7f0 --- /dev/null +++ b/example/macos/Flutter/GeneratedPluginRegistrant.swift @@ -0,0 +1,12 @@ +// +// Generated file. Do not edit. +// + +import FlutterMacOS +import Foundation + +import sqflite_darwin + +func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { + SqflitePlugin.register(with: registry.registrar(forPlugin: "SqflitePlugin")) +} diff --git a/example/macos/Podfile b/example/macos/Podfile new file mode 100644 index 00000000..29c8eb32 --- /dev/null +++ b/example/macos/Podfile @@ -0,0 +1,42 @@ +platform :osx, '10.14' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'ephemeral', 'Flutter-Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure \"flutter pub get\" is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Flutter-Generated.xcconfig, then run \"flutter pub get\"" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_macos_podfile_setup + +target 'Runner' do + use_frameworks! + + flutter_install_all_macos_pods File.dirname(File.realpath(__FILE__)) + target 'RunnerTests' do + inherit! :search_paths + end +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_macos_build_settings(target) + end +end diff --git a/example/macos/Podfile.lock b/example/macos/Podfile.lock new file mode 100644 index 00000000..55d1270a --- /dev/null +++ b/example/macos/Podfile.lock @@ -0,0 +1,23 @@ +PODS: + - FlutterMacOS (1.0.0) + - sqflite_darwin (0.0.4): + - Flutter + - FlutterMacOS + +DEPENDENCIES: + - FlutterMacOS (from `Flutter/ephemeral`) + - sqflite_darwin (from `Flutter/ephemeral/.symlinks/plugins/sqflite_darwin/darwin`) + +EXTERNAL SOURCES: + FlutterMacOS: + :path: Flutter/ephemeral + sqflite_darwin: + :path: Flutter/ephemeral/.symlinks/plugins/sqflite_darwin/darwin + +SPEC CHECKSUMS: + FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 + sqflite_darwin: 20b2a3a3b70e43edae938624ce550a3cbf66a3d0 + +PODFILE CHECKSUM: 7eb978b976557c8c1cd717d8185ec483fd090a82 + +COCOAPODS: 1.16.2 diff --git a/example/macos/Runner.xcodeproj/project.pbxproj b/example/macos/Runner.xcodeproj/project.pbxproj new file mode 100644 index 00000000..50c9c4b9 --- /dev/null +++ b/example/macos/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,801 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXAggregateTarget section */ + 33CC111A2044C6BA0003C045 /* Flutter Assemble */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */; + buildPhases = ( + 33CC111E2044C6BF0003C045 /* ShellScript */, + ); + dependencies = ( + ); + name = "Flutter Assemble"; + productName = FLX; + }; +/* End PBXAggregateTarget section */ + +/* Begin PBXBuildFile section */ + 331C80D8294CF71000263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C80D7294CF71000263BE5 /* RunnerTests.swift */; }; + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */; }; + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC10F02044A3C60003C045 /* AppDelegate.swift */; }; + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; + 42E952E3EEFA1F58E43E9E38 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FBD51213CB50FA673567BF72 /* Pods_Runner.framework */; }; + 90039C321DD9A180F8D6D5C6 /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB41777ABCFEF256D2C19D0B /* Pods_RunnerTests.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C80D9294CF71000263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 33CC10E52044A3C60003C045 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 33CC10EC2044A3C60003C045; + remoteInfo = Runner; + }; + 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 33CC10E52044A3C60003C045 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 33CC111A2044C6BA0003C045; + remoteInfo = FLX; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 33CC110E2044A8840003C045 /* Bundle Framework */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Bundle Framework"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 089B288F16832FB6AEA7C4FA /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = ""; }; + 0D6AA6E2664A227A53A91FF0 /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = ""; }; + 27780C56597FD988A51ABD32 /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = ""; }; + 331C80D5294CF71000263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 331C80D7294CF71000263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = ""; }; + 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = ""; }; + 33CC10ED2044A3C60003C045 /* another_example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = another_example.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = ""; }; + 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = ""; }; + 33CC10F72044A3C60003C045 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Runner/Info.plist; sourceTree = ""; }; + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainFlutterWindow.swift; sourceTree = ""; }; + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Debug.xcconfig"; sourceTree = ""; }; + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Release.xcconfig"; sourceTree = ""; }; + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = "Flutter-Generated.xcconfig"; path = "ephemeral/Flutter-Generated.xcconfig"; sourceTree = ""; }; + 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = ""; }; + 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = ""; }; + 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = ""; }; + 779A21C4EE7A19DBCD1A2381 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = ""; }; + A31EDC2674B45077191C1822 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; + AB41777ABCFEF256D2C19D0B /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + E0BCB057B128D7382ABD6DD9 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; + FBD51213CB50FA673567BF72 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 331C80D2294CF70F00263BE5 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 90039C321DD9A180F8D6D5C6 /* Pods_RunnerTests.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 33CC10EA2044A3C60003C045 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 42E952E3EEFA1F58E43E9E38 /* Pods_Runner.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 331C80D6294CF71000263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C80D7294CF71000263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 33BA886A226E78AF003329D5 /* Configs */ = { + isa = PBXGroup; + children = ( + 33E5194F232828860026EE4D /* AppInfo.xcconfig */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 333000ED22D3DE5D00554162 /* Warnings.xcconfig */, + ); + path = Configs; + sourceTree = ""; + }; + 33CC10E42044A3C60003C045 = { + isa = PBXGroup; + children = ( + 33FAB671232836740065AC1E /* Runner */, + 33CEB47122A05771004F2AC0 /* Flutter */, + 331C80D6294CF71000263BE5 /* RunnerTests */, + 33CC10EE2044A3C60003C045 /* Products */, + D73912EC22F37F3D000D13A0 /* Frameworks */, + 3EDC1B0170C61F264F0F5C8F /* Pods */, + ); + sourceTree = ""; + }; + 33CC10EE2044A3C60003C045 /* Products */ = { + isa = PBXGroup; + children = ( + 33CC10ED2044A3C60003C045 /* another_example.app */, + 331C80D5294CF71000263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 33CC11242044D66E0003C045 /* Resources */ = { + isa = PBXGroup; + children = ( + 33CC10F22044A3C60003C045 /* Assets.xcassets */, + 33CC10F42044A3C60003C045 /* MainMenu.xib */, + 33CC10F72044A3C60003C045 /* Info.plist */, + ); + name = Resources; + path = ..; + sourceTree = ""; + }; + 33CEB47122A05771004F2AC0 /* Flutter */ = { + isa = PBXGroup; + children = ( + 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */, + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */, + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */, + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */, + ); + path = Flutter; + sourceTree = ""; + }; + 33FAB671232836740065AC1E /* Runner */ = { + isa = PBXGroup; + children = ( + 33CC10F02044A3C60003C045 /* AppDelegate.swift */, + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */, + 33E51913231747F40026EE4D /* DebugProfile.entitlements */, + 33E51914231749380026EE4D /* Release.entitlements */, + 33CC11242044D66E0003C045 /* Resources */, + 33BA886A226E78AF003329D5 /* Configs */, + ); + path = Runner; + sourceTree = ""; + }; + 3EDC1B0170C61F264F0F5C8F /* Pods */ = { + isa = PBXGroup; + children = ( + E0BCB057B128D7382ABD6DD9 /* Pods-Runner.debug.xcconfig */, + A31EDC2674B45077191C1822 /* Pods-Runner.release.xcconfig */, + 779A21C4EE7A19DBCD1A2381 /* Pods-Runner.profile.xcconfig */, + 089B288F16832FB6AEA7C4FA /* Pods-RunnerTests.debug.xcconfig */, + 27780C56597FD988A51ABD32 /* Pods-RunnerTests.release.xcconfig */, + 0D6AA6E2664A227A53A91FF0 /* Pods-RunnerTests.profile.xcconfig */, + ); + name = Pods; + path = Pods; + sourceTree = ""; + }; + D73912EC22F37F3D000D13A0 /* Frameworks */ = { + isa = PBXGroup; + children = ( + FBD51213CB50FA673567BF72 /* Pods_Runner.framework */, + AB41777ABCFEF256D2C19D0B /* Pods_RunnerTests.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C80D4294CF70F00263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C80DE294CF71000263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 59E392D113F81EF9666B38E7 /* [CP] Check Pods Manifest.lock */, + 331C80D1294CF70F00263BE5 /* Sources */, + 331C80D2294CF70F00263BE5 /* Frameworks */, + 331C80D3294CF70F00263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C80DA294CF71000263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C80D5294CF71000263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 33CC10EC2044A3C60003C045 /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + DF6817F55FDCE0D479CE317D /* [CP] Check Pods Manifest.lock */, + 33CC10E92044A3C60003C045 /* Sources */, + 33CC10EA2044A3C60003C045 /* Frameworks */, + 33CC10EB2044A3C60003C045 /* Resources */, + 33CC110E2044A8840003C045 /* Bundle Framework */, + 3399D490228B24CF009A79C7 /* ShellScript */, + D8546D0A77F7B309A4C83B7D /* [CP] Embed Pods Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 33CC11202044C79F0003C045 /* PBXTargetDependency */, + ); + name = Runner; + productName = Runner; + productReference = 33CC10ED2044A3C60003C045 /* another_example.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 33CC10E52044A3C60003C045 /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastSwiftUpdateCheck = 0920; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C80D4294CF70F00263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 33CC10EC2044A3C60003C045; + }; + 33CC10EC2044A3C60003C045 = { + CreatedOnToolsVersion = 9.2; + LastSwiftMigration = 1100; + ProvisioningStyle = Automatic; + SystemCapabilities = { + com.apple.Sandbox = { + enabled = 1; + }; + }; + }; + 33CC111A2044C6BA0003C045 = { + CreatedOnToolsVersion = 9.2; + ProvisioningStyle = Manual; + }; + }; + }; + buildConfigurationList = 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 33CC10E42044A3C60003C045; + productRefGroup = 33CC10EE2044A3C60003C045 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 33CC10EC2044A3C60003C045 /* Runner */, + 331C80D4294CF70F00263BE5 /* RunnerTests */, + 33CC111A2044C6BA0003C045 /* Flutter Assemble */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C80D3294CF70F00263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 33CC10EB2044A3C60003C045 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */, + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3399D490228B24CF009A79C7 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "echo \"$PRODUCT_NAME.app\" > \"$PROJECT_DIR\"/Flutter/ephemeral/.app_filename && \"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh embed\n"; + }; + 33CC111E2044C6BF0003C045 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + Flutter/ephemeral/FlutterInputs.xcfilelist, + ); + inputPaths = ( + Flutter/ephemeral/tripwire, + ); + outputFileListPaths = ( + Flutter/ephemeral/FlutterOutputs.xcfilelist, + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; + }; + 59E392D113F81EF9666B38E7 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + D8546D0A77F7B309A4C83B7D /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + DF6817F55FDCE0D479CE317D /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C80D1294CF70F00263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C80D8294CF71000263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 33CC10E92044A3C60003C045 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */, + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */, + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C80DA294CF71000263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 33CC10EC2044A3C60003C045 /* Runner */; + targetProxy = 331C80D9294CF71000263BE5 /* PBXContainerItemProxy */; + }; + 33CC11202044C79F0003C045 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 33CC111A2044C6BA0003C045 /* Flutter Assemble */; + targetProxy = 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 33CC10F42044A3C60003C045 /* MainMenu.xib */ = { + isa = PBXVariantGroup; + children = ( + 33CC10F52044A3C60003C045 /* Base */, + ); + name = MainMenu.xib; + path = Runner; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 331C80DB294CF71000263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 089B288F16832FB6AEA7C4FA /* Pods-RunnerTests.debug.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.anotherExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/another_example.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/another_example"; + }; + name = Debug; + }; + 331C80DC294CF71000263BE5 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 27780C56597FD988A51ABD32 /* Pods-RunnerTests.release.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.anotherExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/another_example.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/another_example"; + }; + name = Release; + }; + 331C80DD294CF71000263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 0D6AA6E2664A227A53A91FF0 /* Pods-RunnerTests.profile.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.anotherExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/another_example.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/another_example"; + }; + name = Profile; + }; + 338D0CE9231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEAD_CODE_STRIPPING = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Profile; + }; + 338D0CEA231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Profile; + }; + 338D0CEB231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Manual; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Profile; + }; + 33CC10F92044A3C60003C045 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEAD_CODE_STRIPPING = YES; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 33CC10FA2044A3C60003C045 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEAD_CODE_STRIPPING = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Release; + }; + 33CC10FC2044A3C60003C045 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + }; + name = Debug; + }; + 33CC10FD2044A3C60003C045 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/Release.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Release; + }; + 33CC111C2044C6BA0003C045 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Manual; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 33CC111D2044C6BA0003C045 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C80DE294CF71000263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C80DB294CF71000263BE5 /* Debug */, + 331C80DC294CF71000263BE5 /* Release */, + 331C80DD294CF71000263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC10F92044A3C60003C045 /* Debug */, + 33CC10FA2044A3C60003C045 /* Release */, + 338D0CE9231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC10FC2044A3C60003C045 /* Debug */, + 33CC10FD2044A3C60003C045 /* Release */, + 338D0CEA231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC111C2044C6BA0003C045 /* Debug */, + 33CC111D2044C6BA0003C045 /* Release */, + 338D0CEB231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 33CC10E52044A3C60003C045 /* Project object */; +} diff --git a/example/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/example/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/example/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/example/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/example/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 00000000..25f99eff --- /dev/null +++ b/example/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/example/macos/Runner.xcworkspace/contents.xcworkspacedata b/example/macos/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 00000000..21a3cc14 --- /dev/null +++ b/example/macos/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,10 @@ + + + + + + + diff --git a/example/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/example/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/example/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/example/macos/Runner/AppDelegate.swift b/example/macos/Runner/AppDelegate.swift new file mode 100644 index 00000000..b3c17614 --- /dev/null +++ b/example/macos/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Cocoa +import FlutterMacOS + +@main +class AppDelegate: FlutterAppDelegate { + override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { + return true + } + + override func applicationSupportsSecureRestorableState(_ app: NSApplication) -> Bool { + return true + } +} diff --git a/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 00000000..a2ec33f1 --- /dev/null +++ b/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,68 @@ +{ + "images" : [ + { + "size" : "16x16", + "idiom" : "mac", + "filename" : "app_icon_16.png", + "scale" : "1x" + }, + { + "size" : "16x16", + "idiom" : "mac", + "filename" : "app_icon_32.png", + "scale" : "2x" + }, + { + "size" : "32x32", + "idiom" : "mac", + "filename" : "app_icon_32.png", + "scale" : "1x" + }, + { + "size" : "32x32", + "idiom" : "mac", + "filename" : "app_icon_64.png", + "scale" : "2x" + }, + { + "size" : "128x128", + "idiom" : "mac", + "filename" : "app_icon_128.png", + "scale" : "1x" + }, + { + "size" : "128x128", + "idiom" : "mac", + "filename" : "app_icon_256.png", + "scale" : "2x" + }, + { + "size" : "256x256", + "idiom" : "mac", + "filename" : "app_icon_256.png", + "scale" : "1x" + }, + { + "size" : "256x256", + "idiom" : "mac", + "filename" : "app_icon_512.png", + "scale" : "2x" + }, + { + "size" : "512x512", + "idiom" : "mac", + "filename" : "app_icon_512.png", + "scale" : "1x" + }, + { + "size" : "512x512", + "idiom" : "mac", + "filename" : "app_icon_1024.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png b/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png new file mode 100644 index 0000000000000000000000000000000000000000..82b6f9d9a33e198f5747104729e1fcef999772a5 GIT binary patch literal 102994 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ⅅ8MglG&ER{i5lN315cO?EdHNLrg? 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 z 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 Pe7HEdAEg|=c=LY&YVNkY literal 0 HcmV?d00001 diff --git a/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png b/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png new file mode 100644 index 0000000000000000000000000000000000000000..13b35eba55c6dabc3aac36f33d859266c18fa0d0 GIT binary patch literal 5680 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 literal 0 HcmV?d00001 diff --git a/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png b/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png new file mode 100644 index 0000000000000000000000000000000000000000..0a3f5fa40fb3d1e0710331a48de5d256da3f275d GIT binary patch literal 520 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 literal 0 HcmV?d00001 diff --git a/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png b/example/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png new file mode 100644 index 0000000000000000000000000000000000000000..2f1632cfddf3d9dade342351e627a0a75609fb46 GIT binary patch literal 2218 zcmV;b2vzrqP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91K%fHv1ONa40RR91KmY&$07g+lumAuE6iGxuRCodHTWf3-RTMruyW6Fu zQYeUM04eX6D5c0FCjKKPrco1(K`<0SL=crI{PC3-^hZU0kQie$gh-5!7z6SH6Q0J% zqot*`H1q{R5fHFYS}dje@;kG=v$L0(yY0?wY2%*c?A&{2?!D*x?m71{of2gv!$5|C z3>qG_BW}7K_yUcT3A5C6QD<+{aq?x;MAUyAiJn#Jv8_zZtQ{P zTRzbL3U9!qVuZzS$xKU10KiW~Bgdcv1-!uAhQxf3a7q+dU6lj?yoO4Lq4TUN4}h{N z*fIM=SS8|C2$(T>w$`t@3Tka!(r!7W`x z-isCVgQD^mG-MJ;XtJuK3V{Vy72GQ83KRWsHU?e*wrhKk=ApIYeDqLi;JI1e zuvv}5^Dc=k7F7?nm3nIw$NVmU-+R>> zyqOR$-2SDpJ}Pt;^RkJytDVXNTsu|mI1`~G7yw`EJR?VkGfNdqK9^^8P`JdtTV&tX4CNcV4 z&N06nZa??Fw1AgQOUSE2AmPE@WO(Fvo`%m`cDgiv(fAeRA%3AGXUbsGw{7Q`cY;1BI#ac3iN$$Hw z0LT0;xc%=q)me?Y*$xI@GRAw?+}>=9D+KTk??-HJ4=A>`V&vKFS75@MKdSF1JTq{S zc1!^8?YA|t+uKigaq!sT;Z!&0F2=k7F0PIU;F$leJLaw2UI6FL^w}OG&!;+b%ya1c z1n+6-inU<0VM-Y_s5iTElq)ThyF?StVcebpGI znw#+zLx2@ah{$_2jn+@}(zJZ{+}_N9BM;z)0yr|gF-4=Iyu@hI*Lk=-A8f#bAzc9f z`Kd6K--x@t04swJVC3JK1cHY-Hq+=|PN-VO;?^_C#;coU6TDP7Bt`;{JTG;!+jj(` zw5cLQ-(Cz-Tlb`A^w7|R56Ce;Wmr0)$KWOUZ6ai0PhzPeHwdl0H(etP zUV`va_i0s-4#DkNM8lUlqI7>YQLf)(lz9Q3Uw`)nc(z3{m5ZE77Ul$V%m)E}3&8L0 z-XaU|eB~Is08eORPk;=<>!1w)Kf}FOVS2l&9~A+@R#koFJ$Czd%Y(ENTV&A~U(IPI z;UY+gf+&6ioZ=roly<0Yst8ck>(M=S?B-ys3mLdM&)ex!hbt+ol|T6CTS+Sc0jv(& z7ijdvFwBq;0a{%3GGwkDKTeG`b+lyj0jjS1OMkYnepCdoosNY`*zmBIo*981BU%%U z@~$z0V`OVtIbEx5pa|Tct|Lg#ZQf5OYMUMRD>Wdxm5SAqV2}3!ceE-M2 z@O~lQ0OiKQp}o9I;?uxCgYVV?FH|?Riri*U$Zi_`V2eiA>l zdSm6;SEm6#T+SpcE8Ro_f2AwxzI z44hfe^WE3!h@W3RDyA_H440cpmYkv*)6m1XazTqw%=E5Xv7^@^^T7Q2wxr+Z2kVYr + + + + + + + + + + + + + + + + + + + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/example/macos/Runner/Configs/AppInfo.xcconfig b/example/macos/Runner/Configs/AppInfo.xcconfig new file mode 100644 index 00000000..c842a104 --- /dev/null +++ b/example/macos/Runner/Configs/AppInfo.xcconfig @@ -0,0 +1,14 @@ +// Application-level settings for the Runner target. +// +// This may be replaced with something auto-generated from metadata (e.g., pubspec.yaml) in the +// future. If not, the values below would default to using the project name when this becomes a +// 'flutter create' template. + +// The application's name. By default this is also the title of the Flutter window. +PRODUCT_NAME = another_example + +// The application's bundle identifier +PRODUCT_BUNDLE_IDENTIFIER = com.example.anotherExample + +// The copyright displayed in application information +PRODUCT_COPYRIGHT = Copyright © 2025 com.example. All rights reserved. diff --git a/example/macos/Runner/Configs/Debug.xcconfig b/example/macos/Runner/Configs/Debug.xcconfig new file mode 100644 index 00000000..36b0fd94 --- /dev/null +++ b/example/macos/Runner/Configs/Debug.xcconfig @@ -0,0 +1,2 @@ +#include "../../Flutter/Flutter-Debug.xcconfig" +#include "Warnings.xcconfig" diff --git a/example/macos/Runner/Configs/Release.xcconfig b/example/macos/Runner/Configs/Release.xcconfig new file mode 100644 index 00000000..dff4f495 --- /dev/null +++ b/example/macos/Runner/Configs/Release.xcconfig @@ -0,0 +1,2 @@ +#include "../../Flutter/Flutter-Release.xcconfig" +#include "Warnings.xcconfig" diff --git a/example/macos/Runner/Configs/Warnings.xcconfig b/example/macos/Runner/Configs/Warnings.xcconfig new file mode 100644 index 00000000..42bcbf47 --- /dev/null +++ b/example/macos/Runner/Configs/Warnings.xcconfig @@ -0,0 +1,13 @@ +WARNING_CFLAGS = -Wall -Wconditional-uninitialized -Wnullable-to-nonnull-conversion -Wmissing-method-return-type -Woverlength-strings +GCC_WARN_UNDECLARED_SELECTOR = YES +CLANG_UNDEFINED_BEHAVIOR_SANITIZER_NULLABILITY = YES +CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE +CLANG_WARN__DUPLICATE_METHOD_MATCH = YES +CLANG_WARN_PRAGMA_PACK = YES +CLANG_WARN_STRICT_PROTOTYPES = YES +CLANG_WARN_COMMA = YES +GCC_WARN_STRICT_SELECTOR_MATCH = YES +CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES +CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES +GCC_WARN_SHADOW = YES +CLANG_WARN_UNREACHABLE_CODE = YES diff --git a/example/macos/Runner/DebugProfile.entitlements b/example/macos/Runner/DebugProfile.entitlements new file mode 100644 index 00000000..dddb8a30 --- /dev/null +++ b/example/macos/Runner/DebugProfile.entitlements @@ -0,0 +1,12 @@ + + + + + com.apple.security.app-sandbox + + com.apple.security.cs.allow-jit + + com.apple.security.network.server + + + diff --git a/example/macos/Runner/Info.plist b/example/macos/Runner/Info.plist new file mode 100644 index 00000000..4789daa6 --- /dev/null +++ b/example/macos/Runner/Info.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIconFile + + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSMinimumSystemVersion + $(MACOSX_DEPLOYMENT_TARGET) + NSHumanReadableCopyright + $(PRODUCT_COPYRIGHT) + NSMainNibFile + MainMenu + NSPrincipalClass + NSApplication + + diff --git a/example/macos/Runner/MainFlutterWindow.swift b/example/macos/Runner/MainFlutterWindow.swift new file mode 100644 index 00000000..3cc05eb2 --- /dev/null +++ b/example/macos/Runner/MainFlutterWindow.swift @@ -0,0 +1,15 @@ +import Cocoa +import FlutterMacOS + +class MainFlutterWindow: NSWindow { + override func awakeFromNib() { + let flutterViewController = FlutterViewController() + let windowFrame = self.frame + self.contentViewController = flutterViewController + self.setFrame(windowFrame, display: true) + + RegisterGeneratedPlugins(registry: flutterViewController) + + super.awakeFromNib() + } +} diff --git a/example/macos/Runner/Release.entitlements b/example/macos/Runner/Release.entitlements new file mode 100644 index 00000000..852fa1a4 --- /dev/null +++ b/example/macos/Runner/Release.entitlements @@ -0,0 +1,8 @@ + + + + + com.apple.security.app-sandbox + + + diff --git a/example/macos/RunnerTests/RunnerTests.swift b/example/macos/RunnerTests/RunnerTests.swift new file mode 100644 index 00000000..61f3bd1f --- /dev/null +++ b/example/macos/RunnerTests/RunnerTests.swift @@ -0,0 +1,12 @@ +import Cocoa +import FlutterMacOS +import XCTest + +class RunnerTests: XCTestCase { + + func testExample() { + // If you add code to the Runner application, consider adding tests here. + // See https://developer.apple.com/documentation/xctest for more information about using XCTest. + } + +} diff --git a/example/windows/.gitignore b/example/windows/.gitignore new file mode 100644 index 00000000..d492d0d9 --- /dev/null +++ b/example/windows/.gitignore @@ -0,0 +1,17 @@ +flutter/ephemeral/ + +# Visual Studio user-specific files. +*.suo +*.user +*.userosscache +*.sln.docstates + +# Visual Studio build-related files. +x64/ +x86/ + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ diff --git a/example/windows/CMakeLists.txt b/example/windows/CMakeLists.txt new file mode 100644 index 00000000..cbc22708 --- /dev/null +++ b/example/windows/CMakeLists.txt @@ -0,0 +1,108 @@ +# Project-level configuration. +cmake_minimum_required(VERSION 3.14) +project(another_example LANGUAGES CXX) + +# The name of the executable created for the application. Change this to change +# the on-disk name of your application. +set(BINARY_NAME "another_example") + +# Explicitly opt in to modern CMake behaviors to avoid warnings with recent +# versions of CMake. +cmake_policy(VERSION 3.14...3.25) + +# Define build configuration option. +get_property(IS_MULTICONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) +if(IS_MULTICONFIG) + set(CMAKE_CONFIGURATION_TYPES "Debug;Profile;Release" + CACHE STRING "" FORCE) +else() + if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) + set(CMAKE_BUILD_TYPE "Debug" CACHE + STRING "Flutter build mode" FORCE) + set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS + "Debug" "Profile" "Release") + endif() +endif() +# Define settings for the Profile build mode. +set(CMAKE_EXE_LINKER_FLAGS_PROFILE "${CMAKE_EXE_LINKER_FLAGS_RELEASE}") +set(CMAKE_SHARED_LINKER_FLAGS_PROFILE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE}") +set(CMAKE_C_FLAGS_PROFILE "${CMAKE_C_FLAGS_RELEASE}") +set(CMAKE_CXX_FLAGS_PROFILE "${CMAKE_CXX_FLAGS_RELEASE}") + +# Use Unicode for all projects. +add_definitions(-DUNICODE -D_UNICODE) + +# Compilation settings that should be applied to most targets. +# +# Be cautious about adding new options here, as plugins use this function by +# default. In most cases, you should add new options to specific targets instead +# of modifying this function. +function(APPLY_STANDARD_SETTINGS TARGET) + target_compile_features(${TARGET} PUBLIC cxx_std_17) + target_compile_options(${TARGET} PRIVATE /W4 /WX /wd"4100") + target_compile_options(${TARGET} PRIVATE /EHsc) + target_compile_definitions(${TARGET} PRIVATE "_HAS_EXCEPTIONS=0") + target_compile_definitions(${TARGET} PRIVATE "$<$:_DEBUG>") +endfunction() + +# Flutter library and tool build rules. +set(FLUTTER_MANAGED_DIR "${CMAKE_CURRENT_SOURCE_DIR}/flutter") +add_subdirectory(${FLUTTER_MANAGED_DIR}) + +# Application build; see runner/CMakeLists.txt. +add_subdirectory("runner") + + +# Generated plugin build rules, which manage building the plugins and adding +# them to the application. +include(flutter/generated_plugins.cmake) + + +# === Installation === +# Support files are copied into place next to the executable, so that it can +# run in place. This is done instead of making a separate bundle (as on Linux) +# so that building and running from within Visual Studio will work. +set(BUILD_BUNDLE_DIR "$") +# Make the "install" step default, as it's required to run. +set(CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD 1) +if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set(CMAKE_INSTALL_PREFIX "${BUILD_BUNDLE_DIR}" CACHE PATH "..." FORCE) +endif() + +set(INSTALL_BUNDLE_DATA_DIR "${CMAKE_INSTALL_PREFIX}/data") +set(INSTALL_BUNDLE_LIB_DIR "${CMAKE_INSTALL_PREFIX}") + +install(TARGETS ${BINARY_NAME} RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}" + COMPONENT Runtime) + +install(FILES "${FLUTTER_ICU_DATA_FILE}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" + COMPONENT Runtime) + +install(FILES "${FLUTTER_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) + +if(PLUGIN_BUNDLED_LIBRARIES) + install(FILES "${PLUGIN_BUNDLED_LIBRARIES}" + DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) +endif() + +# Copy the native assets provided by the build.dart from all packages. +set(NATIVE_ASSETS_DIR "${PROJECT_BUILD_DIR}native_assets/windows/") +install(DIRECTORY "${NATIVE_ASSETS_DIR}" + DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) + +# Fully re-copy the assets directory on each build to avoid having stale files +# from a previous install. +set(FLUTTER_ASSET_DIR_NAME "flutter_assets") +install(CODE " + file(REMOVE_RECURSE \"${INSTALL_BUNDLE_DATA_DIR}/${FLUTTER_ASSET_DIR_NAME}\") + " COMPONENT Runtime) +install(DIRECTORY "${PROJECT_BUILD_DIR}/${FLUTTER_ASSET_DIR_NAME}" + DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" COMPONENT Runtime) + +# Install the AOT library on non-Debug builds only. +install(FILES "${AOT_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" + CONFIGURATIONS Profile;Release + COMPONENT Runtime) diff --git a/example/windows/flutter/CMakeLists.txt b/example/windows/flutter/CMakeLists.txt new file mode 100644 index 00000000..903f4899 --- /dev/null +++ b/example/windows/flutter/CMakeLists.txt @@ -0,0 +1,109 @@ +# This file controls Flutter-level build steps. It should not be edited. +cmake_minimum_required(VERSION 3.14) + +set(EPHEMERAL_DIR "${CMAKE_CURRENT_SOURCE_DIR}/ephemeral") + +# Configuration provided via flutter tool. +include(${EPHEMERAL_DIR}/generated_config.cmake) + +# TODO: Move the rest of this into files in ephemeral. See +# https://github.com/flutter/flutter/issues/57146. +set(WRAPPER_ROOT "${EPHEMERAL_DIR}/cpp_client_wrapper") + +# Set fallback configurations for older versions of the flutter tool. +if (NOT DEFINED FLUTTER_TARGET_PLATFORM) + set(FLUTTER_TARGET_PLATFORM "windows-x64") +endif() + +# === Flutter Library === +set(FLUTTER_LIBRARY "${EPHEMERAL_DIR}/flutter_windows.dll") + +# Published to parent scope for install step. +set(FLUTTER_LIBRARY ${FLUTTER_LIBRARY} PARENT_SCOPE) +set(FLUTTER_ICU_DATA_FILE "${EPHEMERAL_DIR}/icudtl.dat" PARENT_SCOPE) +set(PROJECT_BUILD_DIR "${PROJECT_DIR}/build/" PARENT_SCOPE) +set(AOT_LIBRARY "${PROJECT_DIR}/build/windows/app.so" PARENT_SCOPE) + +list(APPEND FLUTTER_LIBRARY_HEADERS + "flutter_export.h" + "flutter_windows.h" + "flutter_messenger.h" + "flutter_plugin_registrar.h" + "flutter_texture_registrar.h" +) +list(TRANSFORM FLUTTER_LIBRARY_HEADERS PREPEND "${EPHEMERAL_DIR}/") +add_library(flutter INTERFACE) +target_include_directories(flutter INTERFACE + "${EPHEMERAL_DIR}" +) +target_link_libraries(flutter INTERFACE "${FLUTTER_LIBRARY}.lib") +add_dependencies(flutter flutter_assemble) + +# === Wrapper === +list(APPEND CPP_WRAPPER_SOURCES_CORE + "core_implementations.cc" + "standard_codec.cc" +) +list(TRANSFORM CPP_WRAPPER_SOURCES_CORE PREPEND "${WRAPPER_ROOT}/") +list(APPEND CPP_WRAPPER_SOURCES_PLUGIN + "plugin_registrar.cc" +) +list(TRANSFORM CPP_WRAPPER_SOURCES_PLUGIN PREPEND "${WRAPPER_ROOT}/") +list(APPEND CPP_WRAPPER_SOURCES_APP + "flutter_engine.cc" + "flutter_view_controller.cc" +) +list(TRANSFORM CPP_WRAPPER_SOURCES_APP PREPEND "${WRAPPER_ROOT}/") + +# Wrapper sources needed for a plugin. +add_library(flutter_wrapper_plugin STATIC + ${CPP_WRAPPER_SOURCES_CORE} + ${CPP_WRAPPER_SOURCES_PLUGIN} +) +apply_standard_settings(flutter_wrapper_plugin) +set_target_properties(flutter_wrapper_plugin PROPERTIES + POSITION_INDEPENDENT_CODE ON) +set_target_properties(flutter_wrapper_plugin PROPERTIES + CXX_VISIBILITY_PRESET hidden) +target_link_libraries(flutter_wrapper_plugin PUBLIC flutter) +target_include_directories(flutter_wrapper_plugin PUBLIC + "${WRAPPER_ROOT}/include" +) +add_dependencies(flutter_wrapper_plugin flutter_assemble) + +# Wrapper sources needed for the runner. +add_library(flutter_wrapper_app STATIC + ${CPP_WRAPPER_SOURCES_CORE} + ${CPP_WRAPPER_SOURCES_APP} +) +apply_standard_settings(flutter_wrapper_app) +target_link_libraries(flutter_wrapper_app PUBLIC flutter) +target_include_directories(flutter_wrapper_app PUBLIC + "${WRAPPER_ROOT}/include" +) +add_dependencies(flutter_wrapper_app flutter_assemble) + +# === Flutter tool backend === +# _phony_ is a non-existent file to force this command to run every time, +# since currently there's no way to get a full input/output list from the +# flutter tool. +set(PHONY_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_phony_") +set_source_files_properties("${PHONY_OUTPUT}" PROPERTIES SYMBOLIC TRUE) +add_custom_command( + OUTPUT ${FLUTTER_LIBRARY} ${FLUTTER_LIBRARY_HEADERS} + ${CPP_WRAPPER_SOURCES_CORE} ${CPP_WRAPPER_SOURCES_PLUGIN} + ${CPP_WRAPPER_SOURCES_APP} + ${PHONY_OUTPUT} + COMMAND ${CMAKE_COMMAND} -E env + ${FLUTTER_TOOL_ENVIRONMENT} + "${FLUTTER_ROOT}/packages/flutter_tools/bin/tool_backend.bat" + ${FLUTTER_TARGET_PLATFORM} $ + VERBATIM +) +add_custom_target(flutter_assemble DEPENDS + "${FLUTTER_LIBRARY}" + ${FLUTTER_LIBRARY_HEADERS} + ${CPP_WRAPPER_SOURCES_CORE} + ${CPP_WRAPPER_SOURCES_PLUGIN} + ${CPP_WRAPPER_SOURCES_APP} +) diff --git a/example/windows/flutter/generated_plugin_registrant.cc b/example/windows/flutter/generated_plugin_registrant.cc new file mode 100644 index 00000000..8b6d4680 --- /dev/null +++ b/example/windows/flutter/generated_plugin_registrant.cc @@ -0,0 +1,11 @@ +// +// Generated file. Do not edit. +// + +// clang-format off + +#include "generated_plugin_registrant.h" + + +void RegisterPlugins(flutter::PluginRegistry* registry) { +} diff --git a/example/windows/flutter/generated_plugin_registrant.h b/example/windows/flutter/generated_plugin_registrant.h new file mode 100644 index 00000000..dc139d85 --- /dev/null +++ b/example/windows/flutter/generated_plugin_registrant.h @@ -0,0 +1,15 @@ +// +// Generated file. Do not edit. +// + +// clang-format off + +#ifndef GENERATED_PLUGIN_REGISTRANT_ +#define GENERATED_PLUGIN_REGISTRANT_ + +#include + +// Registers Flutter plugins. +void RegisterPlugins(flutter::PluginRegistry* registry); + +#endif // GENERATED_PLUGIN_REGISTRANT_ diff --git a/example/windows/flutter/generated_plugins.cmake b/example/windows/flutter/generated_plugins.cmake new file mode 100644 index 00000000..b93c4c30 --- /dev/null +++ b/example/windows/flutter/generated_plugins.cmake @@ -0,0 +1,23 @@ +# +# Generated file, do not edit. +# + +list(APPEND FLUTTER_PLUGIN_LIST +) + +list(APPEND FLUTTER_FFI_PLUGIN_LIST +) + +set(PLUGIN_BUNDLED_LIBRARIES) + +foreach(plugin ${FLUTTER_PLUGIN_LIST}) + add_subdirectory(flutter/ephemeral/.plugin_symlinks/${plugin}/windows plugins/${plugin}) + target_link_libraries(${BINARY_NAME} PRIVATE ${plugin}_plugin) + list(APPEND PLUGIN_BUNDLED_LIBRARIES $) + list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries}) +endforeach(plugin) + +foreach(ffi_plugin ${FLUTTER_FFI_PLUGIN_LIST}) + add_subdirectory(flutter/ephemeral/.plugin_symlinks/${ffi_plugin}/windows plugins/${ffi_plugin}) + list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${ffi_plugin}_bundled_libraries}) +endforeach(ffi_plugin) diff --git a/example/windows/runner/CMakeLists.txt b/example/windows/runner/CMakeLists.txt new file mode 100644 index 00000000..394917c0 --- /dev/null +++ b/example/windows/runner/CMakeLists.txt @@ -0,0 +1,40 @@ +cmake_minimum_required(VERSION 3.14) +project(runner LANGUAGES CXX) + +# Define the application target. To change its name, change BINARY_NAME in the +# top-level CMakeLists.txt, not the value here, or `flutter run` will no longer +# work. +# +# Any new source files that you add to the application should be added here. +add_executable(${BINARY_NAME} WIN32 + "flutter_window.cpp" + "main.cpp" + "utils.cpp" + "win32_window.cpp" + "${FLUTTER_MANAGED_DIR}/generated_plugin_registrant.cc" + "Runner.rc" + "runner.exe.manifest" +) + +# Apply the standard set of build settings. This can be removed for applications +# that need different build settings. +apply_standard_settings(${BINARY_NAME}) + +# Add preprocessor definitions for the build version. +target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION=\"${FLUTTER_VERSION}\"") +target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION_MAJOR=${FLUTTER_VERSION_MAJOR}") +target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION_MINOR=${FLUTTER_VERSION_MINOR}") +target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION_PATCH=${FLUTTER_VERSION_PATCH}") +target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION_BUILD=${FLUTTER_VERSION_BUILD}") + +# Disable Windows macros that collide with C++ standard library functions. +target_compile_definitions(${BINARY_NAME} PRIVATE "NOMINMAX") + +# Add dependency libraries and include directories. Add any application-specific +# dependencies here. +target_link_libraries(${BINARY_NAME} PRIVATE flutter flutter_wrapper_app) +target_link_libraries(${BINARY_NAME} PRIVATE "dwmapi.lib") +target_include_directories(${BINARY_NAME} PRIVATE "${CMAKE_SOURCE_DIR}") + +# Run the Flutter tool portions of the build. This must not be removed. +add_dependencies(${BINARY_NAME} flutter_assemble) diff --git a/example/windows/runner/Runner.rc b/example/windows/runner/Runner.rc new file mode 100644 index 00000000..7b2a2142 --- /dev/null +++ b/example/windows/runner/Runner.rc @@ -0,0 +1,121 @@ +// Microsoft Visual C++ generated resource script. +// +#pragma code_page(65001) +#include "resource.h" + +#define APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 2 resource. +// +#include "winres.h" + +///////////////////////////////////////////////////////////////////////////// +#undef APSTUDIO_READONLY_SYMBOLS + +///////////////////////////////////////////////////////////////////////////// +// English (United States) resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US + +#ifdef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// TEXTINCLUDE +// + +1 TEXTINCLUDE +BEGIN + "resource.h\0" +END + +2 TEXTINCLUDE +BEGIN + "#include ""winres.h""\r\n" + "\0" +END + +3 TEXTINCLUDE +BEGIN + "\r\n" + "\0" +END + +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +IDI_APP_ICON ICON "resources\\app_icon.ico" + + +///////////////////////////////////////////////////////////////////////////// +// +// Version +// + +#if defined(FLUTTER_VERSION_MAJOR) && defined(FLUTTER_VERSION_MINOR) && defined(FLUTTER_VERSION_PATCH) && defined(FLUTTER_VERSION_BUILD) +#define VERSION_AS_NUMBER FLUTTER_VERSION_MAJOR,FLUTTER_VERSION_MINOR,FLUTTER_VERSION_PATCH,FLUTTER_VERSION_BUILD +#else +#define VERSION_AS_NUMBER 1,0,0,0 +#endif + +#if defined(FLUTTER_VERSION) +#define VERSION_AS_STRING FLUTTER_VERSION +#else +#define VERSION_AS_STRING "1.0.0" +#endif + +VS_VERSION_INFO VERSIONINFO + FILEVERSION VERSION_AS_NUMBER + PRODUCTVERSION VERSION_AS_NUMBER + FILEFLAGSMASK VS_FFI_FILEFLAGSMASK +#ifdef _DEBUG + FILEFLAGS VS_FF_DEBUG +#else + FILEFLAGS 0x0L +#endif + FILEOS VOS__WINDOWS32 + FILETYPE VFT_APP + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904e4" + BEGIN + VALUE "CompanyName", "com.example" "\0" + VALUE "FileDescription", "another_example" "\0" + VALUE "FileVersion", VERSION_AS_STRING "\0" + VALUE "InternalName", "another_example" "\0" + VALUE "LegalCopyright", "Copyright (C) 2025 com.example. All rights reserved." "\0" + VALUE "OriginalFilename", "another_example.exe" "\0" + VALUE "ProductName", "another_example" "\0" + VALUE "ProductVersion", VERSION_AS_STRING "\0" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1252 + END +END + +#endif // English (United States) resources +///////////////////////////////////////////////////////////////////////////// + + + +#ifndef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 3 resource. +// + + +///////////////////////////////////////////////////////////////////////////// +#endif // not APSTUDIO_INVOKED diff --git a/example/windows/runner/flutter_window.cpp b/example/windows/runner/flutter_window.cpp new file mode 100644 index 00000000..955ee303 --- /dev/null +++ b/example/windows/runner/flutter_window.cpp @@ -0,0 +1,71 @@ +#include "flutter_window.h" + +#include + +#include "flutter/generated_plugin_registrant.h" + +FlutterWindow::FlutterWindow(const flutter::DartProject& project) + : project_(project) {} + +FlutterWindow::~FlutterWindow() {} + +bool FlutterWindow::OnCreate() { + if (!Win32Window::OnCreate()) { + return false; + } + + RECT frame = GetClientArea(); + + // The size here must match the window dimensions to avoid unnecessary surface + // creation / destruction in the startup path. + flutter_controller_ = std::make_unique( + frame.right - frame.left, frame.bottom - frame.top, project_); + // Ensure that basic setup of the controller was successful. + if (!flutter_controller_->engine() || !flutter_controller_->view()) { + return false; + } + RegisterPlugins(flutter_controller_->engine()); + SetChildContent(flutter_controller_->view()->GetNativeWindow()); + + flutter_controller_->engine()->SetNextFrameCallback([&]() { + this->Show(); + }); + + // Flutter can complete the first frame before the "show window" callback is + // registered. The following call ensures a frame is pending to ensure the + // window is shown. It is a no-op if the first frame hasn't completed yet. + flutter_controller_->ForceRedraw(); + + return true; +} + +void FlutterWindow::OnDestroy() { + if (flutter_controller_) { + flutter_controller_ = nullptr; + } + + Win32Window::OnDestroy(); +} + +LRESULT +FlutterWindow::MessageHandler(HWND hwnd, UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept { + // Give Flutter, including plugins, an opportunity to handle window messages. + if (flutter_controller_) { + std::optional result = + flutter_controller_->HandleTopLevelWindowProc(hwnd, message, wparam, + lparam); + if (result) { + return *result; + } + } + + switch (message) { + case WM_FONTCHANGE: + flutter_controller_->engine()->ReloadSystemFonts(); + break; + } + + return Win32Window::MessageHandler(hwnd, message, wparam, lparam); +} diff --git a/example/windows/runner/flutter_window.h b/example/windows/runner/flutter_window.h new file mode 100644 index 00000000..6da0652f --- /dev/null +++ b/example/windows/runner/flutter_window.h @@ -0,0 +1,33 @@ +#ifndef RUNNER_FLUTTER_WINDOW_H_ +#define RUNNER_FLUTTER_WINDOW_H_ + +#include +#include + +#include + +#include "win32_window.h" + +// A window that does nothing but host a Flutter view. +class FlutterWindow : public Win32Window { + public: + // Creates a new FlutterWindow hosting a Flutter view running |project|. + explicit FlutterWindow(const flutter::DartProject& project); + virtual ~FlutterWindow(); + + protected: + // Win32Window: + bool OnCreate() override; + void OnDestroy() override; + LRESULT MessageHandler(HWND window, UINT const message, WPARAM const wparam, + LPARAM const lparam) noexcept override; + + private: + // The project to run. + flutter::DartProject project_; + + // The Flutter instance hosted by this window. + std::unique_ptr flutter_controller_; +}; + +#endif // RUNNER_FLUTTER_WINDOW_H_ diff --git a/example/windows/runner/main.cpp b/example/windows/runner/main.cpp new file mode 100644 index 00000000..1ad1c956 --- /dev/null +++ b/example/windows/runner/main.cpp @@ -0,0 +1,43 @@ +#include +#include +#include + +#include "flutter_window.h" +#include "utils.h" + +int APIENTRY wWinMain(_In_ HINSTANCE instance, _In_opt_ HINSTANCE prev, + _In_ wchar_t *command_line, _In_ int show_command) { + // Attach to console when present (e.g., 'flutter run') or create a + // new console when running with a debugger. + if (!::AttachConsole(ATTACH_PARENT_PROCESS) && ::IsDebuggerPresent()) { + CreateAndAttachConsole(); + } + + // Initialize COM, so that it is available for use in the library and/or + // plugins. + ::CoInitializeEx(nullptr, COINIT_APARTMENTTHREADED); + + flutter::DartProject project(L"data"); + + std::vector command_line_arguments = + GetCommandLineArguments(); + + project.set_dart_entrypoint_arguments(std::move(command_line_arguments)); + + FlutterWindow window(project); + Win32Window::Point origin(10, 10); + Win32Window::Size size(1280, 720); + if (!window.Create(L"another_example", origin, size)) { + return EXIT_FAILURE; + } + window.SetQuitOnClose(true); + + ::MSG msg; + while (::GetMessage(&msg, nullptr, 0, 0)) { + ::TranslateMessage(&msg); + ::DispatchMessage(&msg); + } + + ::CoUninitialize(); + return EXIT_SUCCESS; +} diff --git a/example/windows/runner/resource.h b/example/windows/runner/resource.h new file mode 100644 index 00000000..66a65d1e --- /dev/null +++ b/example/windows/runner/resource.h @@ -0,0 +1,16 @@ +//{{NO_DEPENDENCIES}} +// Microsoft Visual C++ generated include file. +// Used by Runner.rc +// +#define IDI_APP_ICON 101 + +// Next default values for new objects +// +#ifdef APSTUDIO_INVOKED +#ifndef APSTUDIO_READONLY_SYMBOLS +#define _APS_NEXT_RESOURCE_VALUE 102 +#define _APS_NEXT_COMMAND_VALUE 40001 +#define _APS_NEXT_CONTROL_VALUE 1001 +#define _APS_NEXT_SYMED_VALUE 101 +#endif +#endif diff --git a/example/windows/runner/resources/app_icon.ico b/example/windows/runner/resources/app_icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..c04e20caf6370ebb9253ad831cc31de4a9c965f6 GIT binary patch literal 33772 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 literal 0 HcmV?d00001 diff --git a/example/windows/runner/runner.exe.manifest b/example/windows/runner/runner.exe.manifest new file mode 100644 index 00000000..153653e8 --- /dev/null +++ b/example/windows/runner/runner.exe.manifest @@ -0,0 +1,14 @@ + + + + + PerMonitorV2 + + + + + + + + + diff --git a/example/windows/runner/utils.cpp b/example/windows/runner/utils.cpp new file mode 100644 index 00000000..3a0b4651 --- /dev/null +++ b/example/windows/runner/utils.cpp @@ -0,0 +1,65 @@ +#include "utils.h" + +#include +#include +#include +#include + +#include + +void CreateAndAttachConsole() { + if (::AllocConsole()) { + FILE *unused; + if (freopen_s(&unused, "CONOUT$", "w", stdout)) { + _dup2(_fileno(stdout), 1); + } + if (freopen_s(&unused, "CONOUT$", "w", stderr)) { + _dup2(_fileno(stdout), 2); + } + std::ios::sync_with_stdio(); + FlutterDesktopResyncOutputStreams(); + } +} + +std::vector GetCommandLineArguments() { + // Convert the UTF-16 command line arguments to UTF-8 for the Engine to use. + int argc; + wchar_t** argv = ::CommandLineToArgvW(::GetCommandLineW(), &argc); + if (argv == nullptr) { + return std::vector(); + } + + std::vector command_line_arguments; + + // Skip the first argument as it's the binary name. + for (int i = 1; i < argc; i++) { + command_line_arguments.push_back(Utf8FromUtf16(argv[i])); + } + + ::LocalFree(argv); + + return command_line_arguments; +} + +std::string Utf8FromUtf16(const wchar_t* utf16_string) { + if (utf16_string == nullptr) { + return std::string(); + } + unsigned int target_length = ::WideCharToMultiByte( + CP_UTF8, WC_ERR_INVALID_CHARS, utf16_string, + -1, nullptr, 0, nullptr, nullptr) + -1; // remove the trailing null character + int input_length = (int)wcslen(utf16_string); + std::string utf8_string; + if (target_length == 0 || target_length > utf8_string.max_size()) { + return utf8_string; + } + utf8_string.resize(target_length); + int converted_length = ::WideCharToMultiByte( + CP_UTF8, WC_ERR_INVALID_CHARS, utf16_string, + input_length, utf8_string.data(), target_length, nullptr, nullptr); + if (converted_length == 0) { + return std::string(); + } + return utf8_string; +} diff --git a/example/windows/runner/utils.h b/example/windows/runner/utils.h new file mode 100644 index 00000000..3879d547 --- /dev/null +++ b/example/windows/runner/utils.h @@ -0,0 +1,19 @@ +#ifndef RUNNER_UTILS_H_ +#define RUNNER_UTILS_H_ + +#include +#include + +// Creates a console for the process, and redirects stdout and stderr to +// it for both the runner and the Flutter library. +void CreateAndAttachConsole(); + +// Takes a null-terminated wchar_t* encoded in UTF-16 and returns a std::string +// encoded in UTF-8. Returns an empty std::string on failure. +std::string Utf8FromUtf16(const wchar_t* utf16_string); + +// Gets the command line arguments passed in as a std::vector, +// encoded in UTF-8. Returns an empty std::vector on failure. +std::vector GetCommandLineArguments(); + +#endif // RUNNER_UTILS_H_ diff --git a/example/windows/runner/win32_window.cpp b/example/windows/runner/win32_window.cpp new file mode 100644 index 00000000..60608d0f --- /dev/null +++ b/example/windows/runner/win32_window.cpp @@ -0,0 +1,288 @@ +#include "win32_window.h" + +#include +#include + +#include "resource.h" + +namespace { + +/// Window attribute that enables dark mode window decorations. +/// +/// Redefined in case the developer's machine has a Windows SDK older than +/// version 10.0.22000.0. +/// See: https://docs.microsoft.com/windows/win32/api/dwmapi/ne-dwmapi-dwmwindowattribute +#ifndef DWMWA_USE_IMMERSIVE_DARK_MODE +#define DWMWA_USE_IMMERSIVE_DARK_MODE 20 +#endif + +constexpr const wchar_t kWindowClassName[] = L"FLUTTER_RUNNER_WIN32_WINDOW"; + +/// Registry key for app theme preference. +/// +/// A value of 0 indicates apps should use dark mode. A non-zero or missing +/// value indicates apps should use light mode. +constexpr const wchar_t kGetPreferredBrightnessRegKey[] = + L"Software\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize"; +constexpr const wchar_t kGetPreferredBrightnessRegValue[] = L"AppsUseLightTheme"; + +// The number of Win32Window objects that currently exist. +static int g_active_window_count = 0; + +using EnableNonClientDpiScaling = BOOL __stdcall(HWND hwnd); + +// Scale helper to convert logical scaler values to physical using passed in +// scale factor +int Scale(int source, double scale_factor) { + return static_cast(source * scale_factor); +} + +// Dynamically loads the |EnableNonClientDpiScaling| from the User32 module. +// This API is only needed for PerMonitor V1 awareness mode. +void EnableFullDpiSupportIfAvailable(HWND hwnd) { + HMODULE user32_module = LoadLibraryA("User32.dll"); + if (!user32_module) { + return; + } + auto enable_non_client_dpi_scaling = + reinterpret_cast( + GetProcAddress(user32_module, "EnableNonClientDpiScaling")); + if (enable_non_client_dpi_scaling != nullptr) { + enable_non_client_dpi_scaling(hwnd); + } + FreeLibrary(user32_module); +} + +} // namespace + +// Manages the Win32Window's window class registration. +class WindowClassRegistrar { + public: + ~WindowClassRegistrar() = default; + + // Returns the singleton registrar instance. + static WindowClassRegistrar* GetInstance() { + if (!instance_) { + instance_ = new WindowClassRegistrar(); + } + return instance_; + } + + // Returns the name of the window class, registering the class if it hasn't + // previously been registered. + const wchar_t* GetWindowClass(); + + // Unregisters the window class. Should only be called if there are no + // instances of the window. + void UnregisterWindowClass(); + + private: + WindowClassRegistrar() = default; + + static WindowClassRegistrar* instance_; + + bool class_registered_ = false; +}; + +WindowClassRegistrar* WindowClassRegistrar::instance_ = nullptr; + +const wchar_t* WindowClassRegistrar::GetWindowClass() { + if (!class_registered_) { + WNDCLASS window_class{}; + window_class.hCursor = LoadCursor(nullptr, IDC_ARROW); + window_class.lpszClassName = kWindowClassName; + window_class.style = CS_HREDRAW | CS_VREDRAW; + window_class.cbClsExtra = 0; + window_class.cbWndExtra = 0; + window_class.hInstance = GetModuleHandle(nullptr); + window_class.hIcon = + LoadIcon(window_class.hInstance, MAKEINTRESOURCE(IDI_APP_ICON)); + window_class.hbrBackground = 0; + window_class.lpszMenuName = nullptr; + window_class.lpfnWndProc = Win32Window::WndProc; + RegisterClass(&window_class); + class_registered_ = true; + } + return kWindowClassName; +} + +void WindowClassRegistrar::UnregisterWindowClass() { + UnregisterClass(kWindowClassName, nullptr); + class_registered_ = false; +} + +Win32Window::Win32Window() { + ++g_active_window_count; +} + +Win32Window::~Win32Window() { + --g_active_window_count; + Destroy(); +} + +bool Win32Window::Create(const std::wstring& title, + const Point& origin, + const Size& size) { + Destroy(); + + const wchar_t* window_class = + WindowClassRegistrar::GetInstance()->GetWindowClass(); + + const POINT target_point = {static_cast(origin.x), + static_cast(origin.y)}; + HMONITOR monitor = MonitorFromPoint(target_point, MONITOR_DEFAULTTONEAREST); + UINT dpi = FlutterDesktopGetDpiForMonitor(monitor); + double scale_factor = dpi / 96.0; + + HWND window = CreateWindow( + window_class, title.c_str(), WS_OVERLAPPEDWINDOW, + Scale(origin.x, scale_factor), Scale(origin.y, scale_factor), + Scale(size.width, scale_factor), Scale(size.height, scale_factor), + nullptr, nullptr, GetModuleHandle(nullptr), this); + + if (!window) { + return false; + } + + UpdateTheme(window); + + return OnCreate(); +} + +bool Win32Window::Show() { + return ShowWindow(window_handle_, SW_SHOWNORMAL); +} + +// static +LRESULT CALLBACK Win32Window::WndProc(HWND const window, + UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept { + if (message == WM_NCCREATE) { + auto window_struct = reinterpret_cast(lparam); + SetWindowLongPtr(window, GWLP_USERDATA, + reinterpret_cast(window_struct->lpCreateParams)); + + auto that = static_cast(window_struct->lpCreateParams); + EnableFullDpiSupportIfAvailable(window); + that->window_handle_ = window; + } else if (Win32Window* that = GetThisFromHandle(window)) { + return that->MessageHandler(window, message, wparam, lparam); + } + + return DefWindowProc(window, message, wparam, lparam); +} + +LRESULT +Win32Window::MessageHandler(HWND hwnd, + UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept { + switch (message) { + case WM_DESTROY: + window_handle_ = nullptr; + Destroy(); + if (quit_on_close_) { + PostQuitMessage(0); + } + return 0; + + case WM_DPICHANGED: { + auto newRectSize = reinterpret_cast(lparam); + LONG newWidth = newRectSize->right - newRectSize->left; + LONG newHeight = newRectSize->bottom - newRectSize->top; + + SetWindowPos(hwnd, nullptr, newRectSize->left, newRectSize->top, newWidth, + newHeight, SWP_NOZORDER | SWP_NOACTIVATE); + + return 0; + } + case WM_SIZE: { + RECT rect = GetClientArea(); + if (child_content_ != nullptr) { + // Size and position the child window. + MoveWindow(child_content_, rect.left, rect.top, rect.right - rect.left, + rect.bottom - rect.top, TRUE); + } + return 0; + } + + case WM_ACTIVATE: + if (child_content_ != nullptr) { + SetFocus(child_content_); + } + return 0; + + case WM_DWMCOLORIZATIONCOLORCHANGED: + UpdateTheme(hwnd); + return 0; + } + + return DefWindowProc(window_handle_, message, wparam, lparam); +} + +void Win32Window::Destroy() { + OnDestroy(); + + if (window_handle_) { + DestroyWindow(window_handle_); + window_handle_ = nullptr; + } + if (g_active_window_count == 0) { + WindowClassRegistrar::GetInstance()->UnregisterWindowClass(); + } +} + +Win32Window* Win32Window::GetThisFromHandle(HWND const window) noexcept { + return reinterpret_cast( + GetWindowLongPtr(window, GWLP_USERDATA)); +} + +void Win32Window::SetChildContent(HWND content) { + child_content_ = content; + SetParent(content, window_handle_); + RECT frame = GetClientArea(); + + MoveWindow(content, frame.left, frame.top, frame.right - frame.left, + frame.bottom - frame.top, true); + + SetFocus(child_content_); +} + +RECT Win32Window::GetClientArea() { + RECT frame; + GetClientRect(window_handle_, &frame); + return frame; +} + +HWND Win32Window::GetHandle() { + return window_handle_; +} + +void Win32Window::SetQuitOnClose(bool quit_on_close) { + quit_on_close_ = quit_on_close; +} + +bool Win32Window::OnCreate() { + // No-op; provided for subclasses. + return true; +} + +void Win32Window::OnDestroy() { + // No-op; provided for subclasses. +} + +void Win32Window::UpdateTheme(HWND const window) { + DWORD light_mode; + DWORD light_mode_size = sizeof(light_mode); + LSTATUS result = RegGetValue(HKEY_CURRENT_USER, kGetPreferredBrightnessRegKey, + kGetPreferredBrightnessRegValue, + RRF_RT_REG_DWORD, nullptr, &light_mode, + &light_mode_size); + + if (result == ERROR_SUCCESS) { + BOOL enable_dark_mode = light_mode == 0; + DwmSetWindowAttribute(window, DWMWA_USE_IMMERSIVE_DARK_MODE, + &enable_dark_mode, sizeof(enable_dark_mode)); + } +} diff --git a/example/windows/runner/win32_window.h b/example/windows/runner/win32_window.h new file mode 100644 index 00000000..e901dde6 --- /dev/null +++ b/example/windows/runner/win32_window.h @@ -0,0 +1,102 @@ +#ifndef RUNNER_WIN32_WINDOW_H_ +#define RUNNER_WIN32_WINDOW_H_ + +#include + +#include +#include +#include + +// A class abstraction for a high DPI-aware Win32 Window. Intended to be +// inherited from by classes that wish to specialize with custom +// rendering and input handling +class Win32Window { + public: + struct Point { + unsigned int x; + unsigned int y; + Point(unsigned int x, unsigned int y) : x(x), y(y) {} + }; + + struct Size { + unsigned int width; + unsigned int height; + Size(unsigned int width, unsigned int height) + : width(width), height(height) {} + }; + + Win32Window(); + virtual ~Win32Window(); + + // Creates a win32 window with |title| that is positioned and sized using + // |origin| and |size|. New windows are created on the default monitor. Window + // sizes are specified to the OS in physical pixels, hence to ensure a + // consistent size this function will scale the inputted width and height as + // as appropriate for the default monitor. The window is invisible until + // |Show| is called. Returns true if the window was created successfully. + bool Create(const std::wstring& title, const Point& origin, const Size& size); + + // Show the current window. Returns true if the window was successfully shown. + bool Show(); + + // Release OS resources associated with window. + void Destroy(); + + // Inserts |content| into the window tree. + void SetChildContent(HWND content); + + // Returns the backing Window handle to enable clients to set icon and other + // window properties. Returns nullptr if the window has been destroyed. + HWND GetHandle(); + + // If true, closing this window will quit the application. + void SetQuitOnClose(bool quit_on_close); + + // Return a RECT representing the bounds of the current client area. + RECT GetClientArea(); + + protected: + // Processes and route salient window messages for mouse handling, + // size change and DPI. Delegates handling of these to member overloads that + // inheriting classes can handle. + virtual LRESULT MessageHandler(HWND window, + UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept; + + // Called when CreateAndShow is called, allowing subclass window-related + // setup. Subclasses should return false if setup fails. + virtual bool OnCreate(); + + // Called when Destroy is called. + virtual void OnDestroy(); + + private: + friend class WindowClassRegistrar; + + // OS callback called by message pump. Handles the WM_NCCREATE message which + // is passed when the non-client area is being created and enables automatic + // non-client DPI scaling so that the non-client area automatically + // responds to changes in DPI. All other messages are handled by + // MessageHandler. + static LRESULT CALLBACK WndProc(HWND const window, + UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept; + + // Retrieves a class instance pointer for |window| + static Win32Window* GetThisFromHandle(HWND const window) noexcept; + + // Update the window frame's theme to match the system theme. + static void UpdateTheme(HWND const window); + + bool quit_on_close_ = false; + + // window handle for top level window. + HWND window_handle_ = nullptr; + + // window handle for hosted content. + HWND child_content_ = nullptr; +}; + +#endif // RUNNER_WIN32_WINDOW_H_