diff --git a/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart b/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart index c24b4707f..3125cec69 100644 --- a/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart +++ b/packages/dart_frog_cli/lib/src/commands/build/templates/dart_frog_prod_server_bundle.dart @@ -9,142 +9,142 @@ final dartFrogProdServerBundle = MasonBundle.fromJson({ "path": "build/.dockerignore", "data": "LmRvY2tlcmlnbm9yZQpEb2NrZXJmaWxlCmJ1aWxkLwouZGFydF90b29sLwouZ2l0LwouZ2l0aHViLwouZ2l0aWdub3JlCi5pZGVhLwoucGFja2FnZXM=", - "type": "text" + "type": "text", }, { "path": "build/bin/server.dart", "data": "Ly8gR0VORVJBVEVEIENPREUgLSBETyBOT1QgTU9ESUZZIEJZIEhBTkQKLy8gaWdub3JlX2Zvcl9maWxlOiB0eXBlPWxpbnQsIGltcGxpY2l0X2R5bmFtaWNfbGlzdF9saXRlcmFsCgppbXBvcnQgJ2RhcnQ6aW8nOwoKaW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZy9kYXJ0X2Zyb2cuZGFydCc7Cgp7eyNpbnZva2VDdXN0b21FbnRyeXBvaW50fX1pbXBvcnQgJy4uL21haW4uZGFydCcgYXMgZW50cnlwb2ludDt7ey9pbnZva2VDdXN0b21FbnRyeXBvaW50fX0Ke3sjcm91dGVzfX1pbXBvcnQgJ3t7e3BhdGh9fX0nIGFzIHt7I3NuYWtlQ2FzZX19e3t7bmFtZX19fXt7L3NuYWtlQ2FzZX19Owp7ey9yb3V0ZXN9fQp7eyNtaWRkbGV3YXJlfX1pbXBvcnQgJ3t7e3BhdGh9fX0nIGFzIHt7I3NuYWtlQ2FzZX19e3t7bmFtZX19fXt7L3NuYWtlQ2FzZX19Owp7ey9taWRkbGV3YXJlfX0Kdm9pZCBtYWluKCkgYXN5bmMgewogIGZpbmFsIGFkZHJlc3MgPSBJbnRlcm5ldEFkZHJlc3MuYW55SVB2NjsKICBmaW5hbCBwb3J0ID0gaW50LnRyeVBhcnNlKFBsYXRmb3JtLmVudmlyb25tZW50WydQT1JUJ10gPz8gJzgwODAnKSA/PyA4MDgwO3t7I2ludm9rZUN1c3RvbUluaXR9fQogIGF3YWl0IGVudHJ5cG9pbnQuaW5pdChhZGRyZXNzLCBwb3J0KTt7ey9pbnZva2VDdXN0b21Jbml0fX0KICBjcmVhdGVTZXJ2ZXIoYWRkcmVzcywgcG9ydCk7Cn0KCkZ1dHVyZTxIdHRwU2VydmVyPiBjcmVhdGVTZXJ2ZXIoSW50ZXJuZXRBZGRyZXNzIGFkZHJlc3MsIGludCBwb3J0KSBhc3luYyB7CiAgZmluYWwgaGFuZGxlciA9IENhc2NhZGUoKXt7I3NlcnZlU3RhdGljRmlsZXN9fS5hZGQoY3JlYXRlU3RhdGljRmlsZUhhbmRsZXIoKSl7ey9zZXJ2ZVN0YXRpY0ZpbGVzfX0uYWRkKGJ1aWxkUm9vdEhhbmRsZXIoKSkuaGFuZGxlcjsKICBmaW5hbCBzZXJ2ZXIgPSBhd2FpdCB7eyNpbnZva2VDdXN0b21FbnRyeXBvaW50fX1lbnRyeXBvaW50LnJ1bihoYW5kbGVyLCBhZGRyZXNzLCBwb3J0KXt7L2ludm9rZUN1c3RvbUVudHJ5cG9pbnR9fXt7Xmludm9rZUN1c3RvbUVudHJ5cG9pbnR9fXNlcnZlKGhhbmRsZXIsIGFkZHJlc3MsIHBvcnQpe3svaW52b2tlQ3VzdG9tRW50cnlwb2ludH19OwogIHByaW50KCdceDFCWzkybeKck1x4MUJbMG0gUnVubmluZyBvbiBodHRwOi8vJHtzZXJ2ZXIuYWRkcmVzcy5ob3N0fToke3NlcnZlci5wb3J0fScpOwogIHJldHVybiBzZXJ2ZXI7Cn0KCkhhbmRsZXIgYnVpbGRSb290SGFuZGxlcigpIHsKICBmaW5hbCBwaXBlbGluZSA9IGNvbnN0IFBpcGVsaW5lKCl7eyNnbG9iYWxNaWRkbGV3YXJlfX0uYWRkTWlkZGxld2FyZSh7eyNzbmFrZUNhc2V9fXt7e25hbWV9fX17ey9zbmFrZUNhc2V9fS5taWRkbGV3YXJlKXt7L2dsb2JhbE1pZGRsZXdhcmV9fTsKICBmaW5hbCByb3V0ZXIgPSBSb3V0ZXIoKXt7I2RpcmVjdG9yaWVzfX0KICAgIC4ubW91bnQoJ3t7e3JvdXRlfX19JywgKGNvbnRleHR7eyNkaXJlY3RvcnlfcGFyYW1zLjB9fSx7eyNkaXJlY3RvcnlfcGFyYW1zfX17ey59fSx7ey9kaXJlY3RvcnlfcGFyYW1zfX17ey9kaXJlY3RvcnlfcGFyYW1zLjB9fSkgPT4gYnVpbGR7eyNwYXNjYWxDYXNlfX17e3tuYW1lfX19e3svcGFzY2FsQ2FzZX19SGFuZGxlcih7eyNkaXJlY3RvcnlfcGFyYW1zfX17ey59fSx7ey9kaXJlY3RvcnlfcGFyYW1zfX0pKGNvbnRleHQpKXt7L2RpcmVjdG9yaWVzfX07CiAgcmV0dXJuIHBpcGVsaW5lLmFkZEhhbmRsZXIocm91dGVyKTsKfQp7eyNkaXJlY3Rvcmllc319CkhhbmRsZXIgYnVpbGR7eyNwYXNjYWxDYXNlfX17e3tuYW1lfX19e3svcGFzY2FsQ2FzZX19SGFuZGxlcih7eyNkaXJlY3RvcnlfcGFyYW1zfX1TdHJpbmcge3sufX0se3svZGlyZWN0b3J5X3BhcmFtc319KSB7CiAgZmluYWwgcGlwZWxpbmUgPSBjb25zdCBQaXBlbGluZSgpe3sjbWlkZGxld2FyZS4wfX17eyNtaWRkbGV3YXJlfX0uYWRkTWlkZGxld2FyZSh7eyNzbmFrZUNhc2V9fXt7e25hbWV9fX17ey9zbmFrZUNhc2V9fS5taWRkbGV3YXJlKXt7L21pZGRsZXdhcmV9fXt7L21pZGRsZXdhcmUuMH19OwogIGZpbmFsIHJvdXRlciA9IFJvdXRlcigpCiAgICB7eyNmaWxlc319e3sjd2lsZGNhcmR9fS4ubW91bnQoJ3t7e3JvdXRlfX19JywgKGNvbnRleHQpID0+IHt7I3NuYWtlQ2FzZX19e3t7bmFtZX19fXt7L3NuYWtlQ2FzZX19Lm9uUmVxdWVzdChjb250ZXh0LGNvbnRleHQucmVxdWVzdC51cmwucGF0aCkpe3svd2lsZGNhcmR9fXt7XndpbGRjYXJkfX0uLmFsbCgne3t7cm91dGV9fX0nLCAoY29udGV4dHt7I2ZpbGVfcGFyYW1zLjB9fSx7eyNmaWxlX3BhcmFtc319e3sufX0se3svZmlsZV9wYXJhbXN9fXt7L2ZpbGVfcGFyYW1zLjB9fSkgPT4ge3sjc25ha2VDYXNlfX17e3tuYW1lfX19e3svc25ha2VDYXNlfX0ub25SZXF1ZXN0KGNvbnRleHQse3sjZGlyZWN0b3J5X3BhcmFtc319e3sufX0se3svZGlyZWN0b3J5X3BhcmFtc319e3sjZmlsZV9wYXJhbXN9fXt7Ln19LHt7L2ZpbGVfcGFyYW1zfX0pKXt7L3dpbGRjYXJkfX17ey9maWxlc319OwogIHJldHVybiBwaXBlbGluZS5hZGRIYW5kbGVyKHJvdXRlcik7Cn0Ke3svZGlyZWN0b3JpZXN9fQo=", - "type": "text" + "type": "text", }, { "path": "build/{{#addDockerfile}}Dockerfile{{/addDockerfile}}", "data": "IyBPZmZpY2lhbCBEYXJ0IGltYWdlOiBodHRwczovL2h1Yi5kb2NrZXIuY29tL18vZGFydAojIFNwZWNpZnkgdGhlIERhcnQgU0RLIGJhc2UgaW1hZ2UgdmVyc2lvbiB1c2luZyBkYXJ0Ojx2ZXJzaW9uPiAoZXg6IGRhcnQ6Mi4xNykKRlJPTSBkYXJ0Ont7ZGFydFZlcnNpb259fSBBUyBidWlsZAoKV09SS0RJUiAvYXBwCnt7I2hhc0V4dGVybmFsRGVwZW5kZW5jaWVzfX0KCiMgQ29weSBleHRlcm5hbCBkZXBlbmRlbmNpZXMKQ09QWSAuLy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMgIC4vLmRhcnRfZnJvZ19wYXRoX2RlcGVuZGVuY2llcwpDT1BZIC4vcHVic3BlY19vdmVycmlkZXMueWFtbCAuL3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwKe3svaGFzRXh0ZXJuYWxEZXBlbmRlbmNpZXN9fQojIENvcHkgRGVwZW5kZW5jaWVzCnt7I3BhdGhEZXBlbmRlbmNpZXN9fUNPUFkge3t7Ln19fSAuL3t7ey59fX0Ke3svcGF0aERlcGVuZGVuY2llc319Cnt7Xmhhc0V4dGVybmFsRGVwZW5kZW5jaWVzfX0KIyBJbnN0YWxsIERlcGVuZGVuY2llcwp7eyNwYXRoRGVwZW5kZW5jaWVzfX1SVU4gZGFydCBwdWIgZ2V0IC1DIHt7ey59fX0Ke3svcGF0aERlcGVuZGVuY2llc319Cnt7L2hhc0V4dGVybmFsRGVwZW5kZW5jaWVzfX0KIyBSZXNvbHZlIGFwcCBkZXBlbmRlbmNpZXMuCkNPUFkgcHVic3BlYy4qIC4vClJVTiBkYXJ0IHB1YiBnZXQKCiMgQ29weSBhcHAgc291cmNlIGNvZGUgYW5kIEFPVCBjb21waWxlIGl0LgpDT1BZIC4gLgojIEVuc3VyZSBwYWNrYWdlcyBhcmUgc3RpbGwgdXAtdG8tZGF0ZSBpZiBhbnl0aGluZyBoYXMgY2hhbmdlZApSVU4gZGFydCBwdWIgZ2V0IC0tb2ZmbGluZQpSVU4gZGFydCBjb21waWxlIGV4ZSBiaW4vc2VydmVyLmRhcnQgLW8gYmluL3NlcnZlcgoKIyBCdWlsZCBtaW5pbWFsIHNlcnZpbmcgaW1hZ2UgZnJvbSBBT1QtY29tcGlsZWQgYC9zZXJ2ZXJgIGFuZCByZXF1aXJlZCBzeXN0ZW0KIyBsaWJyYXJpZXMgYW5kIGNvbmZpZ3VyYXRpb24gZmlsZXMgc3RvcmVkIGluIGAvcnVudGltZS9gIGZyb20gdGhlIGJ1aWxkIHN0YWdlLgpGUk9NIHNjcmF0Y2gKQ09QWSAtLWZyb209YnVpbGQgL3J1bnRpbWUvIC8KQ09QWSAtLWZyb209YnVpbGQgL2FwcC9iaW4vc2VydmVyIC9hcHAvYmluLwp7eyNzZXJ2ZVN0YXRpY0ZpbGVzfX1DT1BZIC0tZnJvbT1idWlsZCAvYXBwL3B1YmxpYyAvcHVibGljL3t7L3NlcnZlU3RhdGljRmlsZXN9fQoKIyBTdGFydCBzZXJ2ZXIuCkNNRCBbIi9hcHAvYmluL3NlcnZlciJdCg==", - "type": "text" - } + "type": "text", + }, ], "hooks": [ { "path": "lib/dart_frog_prod_server_hooks.dart", "data": "ZXhwb3J0ICdzcmMvY3JlYXRlX2J1bmRsZS5kYXJ0JzsKZXhwb3J0ICdzcmMvY3JlYXRlX2V4dGVybmFsX3BhY2thZ2VzX2ZvbGRlci5kYXJ0JzsKZXhwb3J0ICdzcmMvZGFydF9wdWJfZ2V0LmRhcnQnOwpleHBvcnQgJ3NyYy9leGl0X292ZXJyaWRlcy5kYXJ0JzsKZXhwb3J0ICdzcmMvZ2V0X2ludGVybmFsX3BhdGhfZGVwZW5kZW5jaWVzLmRhcnQnOwpleHBvcnQgJ3NyYy9nZXRfcHVic3BlY19sb2NrLmRhcnQnOwo=", - "type": "text" + "type": "text", }, { "path": "lib/src/create_bundle.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTppby9pby5kYXJ0JyBzaG93IGNvcHlQYXRoOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCc7CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCkZ1dHVyZTx2b2lkPiBjcmVhdGVCdW5kbGUoewogIHJlcXVpcmVkIEhvb2tDb250ZXh0IGNvbnRleHQsCiAgcmVxdWlyZWQgaW8uRGlyZWN0b3J5IHByb2plY3REaXJlY3RvcnksCiAgcmVxdWlyZWQgaW8uRGlyZWN0b3J5IGJ1aWxkRGlyZWN0b3J5LAogIHJlcXVpcmVkIHZvaWQgRnVuY3Rpb24oaW50IGV4aXRDb2RlKSBleGl0LAp9KSBhc3luYyB7CiAgZmluYWwgZGFydEZyb2dEaXJlY3RvcnlQYXRoID0gcGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJy5kYXJ0X2Zyb2cnKTsKICBmaW5hbCBkYXJ0RnJvZ0RpcmVjdG9yeSA9IGlvLkRpcmVjdG9yeShkYXJ0RnJvZ0RpcmVjdG9yeVBhdGgpOwogIGZpbmFsIGJ1bmRsaW5nUHJvZ3Jlc3MgPSBjb250ZXh0LmxvZ2dlci5wcm9ncmVzcygnQnVuZGxpbmcgc291cmNlcycpOwogIGZpbmFsIHRlbXBEaXJlY3RvcnkgPSBhd2FpdCBpby5EaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wKCk7CgogIGlmIChidWlsZERpcmVjdG9yeS5leGlzdHNTeW5jKCkpIHsKICAgIGF3YWl0IGJ1aWxkRGlyZWN0b3J5LmRlbGV0ZShyZWN1cnNpdmU6IHRydWUpOwogIH0KCiAgaWYgKGRhcnRGcm9nRGlyZWN0b3J5LmV4aXN0c1N5bmMoKSkgewogICAgYXdhaXQgZGFydEZyb2dEaXJlY3RvcnkuZGVsZXRlKHJlY3Vyc2l2ZTogdHJ1ZSk7CiAgfQoKICB0cnkgewogICAgYXdhaXQgY29weVBhdGgoCiAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgJyR7dGVtcERpcmVjdG9yeS5wYXRofSR7cGF0aC5zZXBhcmF0b3J9JywKICAgICk7CiAgICBidW5kbGluZ1Byb2dyZXNzLmNvbXBsZXRlKCk7CiAgfSBvbiBFeGNlcHRpb24gY2F0Y2ggKGVycm9yKSB7CiAgICBidW5kbGluZ1Byb2dyZXNzLmZhaWwoKTsKICAgIGNvbnRleHQubG9nZ2VyLmVycignJGVycm9yJyk7CiAgICByZXR1cm4gZXhpdCgxKTsKICB9CiAgYXdhaXQgY29weVBhdGgodGVtcERpcmVjdG9yeS5wYXRoLCBidWlsZERpcmVjdG9yeS5wYXRoKTsKfQo=", - "type": "text" + "type": "text", }, { "path": "lib/src/create_external_packages_folder.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW87CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCi8vLyBTaWduYXR1cmUgb2YgW2lvLmNvcHlQYXRoXS4KdHlwZWRlZiBDb3B5UGF0aCA9IEZ1dHVyZTx2b2lkPiBGdW5jdGlvbihTdHJpbmcgZnJvbSwgU3RyaW5nIHRvKTsKCkZ1dHVyZTxMaXN0PFN0cmluZz4+IGNyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXIoewogIHJlcXVpcmVkIERpcmVjdG9yeSBwcm9qZWN0RGlyZWN0b3J5LAogIHJlcXVpcmVkIERpcmVjdG9yeSBidWlsZERpcmVjdG9yeSwKICBDb3B5UGF0aCBjb3B5UGF0aCA9IGlvLmNvcHlQYXRoLAp9KSBhc3luYyB7CiAgZmluYWwgcGF0aFJlc29sdmVyID0gcGF0aC5jb250ZXh0OwogIGZpbmFsIHB1YnNwZWNMb2NrID0gYXdhaXQgZ2V0UHVic3BlY0xvY2soCiAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICBwYXRoQ29udGV4dDogcGF0aC5jb250ZXh0LAogICk7CgogIGZpbmFsIGV4dGVybmFsUGF0aERlcGVuZGVuY2llcyA9IHB1YnNwZWNMb2NrLnBhY2thZ2VzCiAgICAgIC5tYXAoCiAgICAgICAgKGRlcGVuZGVuY3kpIHsKICAgICAgICAgIGZpbmFsIHBhdGhEZXNjcmlwdGlvbiA9IGRlcGVuZGVuY3kucGF0aERlc2NyaXB0aW9uOwogICAgICAgICAgaWYgKHBhdGhEZXNjcmlwdGlvbiA9PSBudWxsKSB7CiAgICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgICAgfQoKICAgICAgICAgIGZpbmFsIGlzRXh0ZXJuYWwgPSAhcGF0aFJlc29sdmVyLmlzV2l0aGluKCcnLCBwYXRoRGVzY3JpcHRpb24ucGF0aCk7CiAgICAgICAgICBpZiAoIWlzRXh0ZXJuYWwpIHJldHVybiBudWxsOwoKICAgICAgICAgIHJldHVybiBfRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeSgKICAgICAgICAgICAgbmFtZTogZGVwZW5kZW5jeS5uYW1lLAogICAgICAgICAgICBwYXRoOiBwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCBwYXRoRGVzY3JpcHRpb24ucGF0aCksCiAgICAgICAgICApOwogICAgICAgIH0sCiAgICAgICkKICAgICAgLndoZXJlVHlwZTxfRXh0ZXJuYWxQYXRoRGVwZW5kZW5jeT4oKQogICAgICAudG9MaXN0KCk7CgogIGlmIChleHRlcm5hbFBhdGhEZXBlbmRlbmNpZXMuaXNFbXB0eSkgewogICAgcmV0dXJuIFtdOwogIH0KCiAgZmluYWwgcGFja2FnZXNEaXJlY3RvcnkgPSBEaXJlY3RvcnkoCiAgICBwYXRoUmVzb2x2ZXIuam9pbigKICAgICAgYnVpbGREaXJlY3RvcnkucGF0aCwKICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgKSwKICApLi5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSk7CgogIGZpbmFsIGNvcGllZEV4dGVybmFsUGF0aERlcGVuZGVuY2llcyA9IGF3YWl0IEZ1dHVyZS53YWl0KAogICAgZXh0ZXJuYWxQYXRoRGVwZW5kZW5jaWVzLm1hcCgKICAgICAgKGV4dGVybmFsUGF0aERlcGVuZGVuY3kpID0+IGV4dGVybmFsUGF0aERlcGVuZGVuY3kuY29weVRvKAogICAgICAgIGNvcHlQYXRoOiBjb3B5UGF0aCwKICAgICAgICB0YXJnZXREaXJlY3Rvcnk6IERpcmVjdG9yeSgKICAgICAgICAgIHBhdGhSZXNvbHZlci5qb2luKAogICAgICAgICAgICBwYWNrYWdlc0RpcmVjdG9yeS5wYXRoLAogICAgICAgICAgICBleHRlcm5hbFBhdGhEZXBlbmRlbmN5Lm5hbWUsCiAgICAgICAgICApLAogICAgICAgICksCiAgICAgICksCiAgICApLAogICk7CgogIGF3YWl0IEZpbGUoCiAgICBwYXRoUmVzb2x2ZXIuam9pbigKICAgICAgYnVpbGREaXJlY3RvcnkucGF0aCwKICAgICAgJ3B1YnNwZWNfb3ZlcnJpZGVzLnlhbWwnLAogICAgKSwKICApLndyaXRlQXNTdHJpbmcoJycnCmRlcGVuZGVuY3lfb3ZlcnJpZGVzOgoke2NvcGllZEV4dGVybmFsUGF0aERlcGVuZGVuY2llcy5tYXAoCiAgICAoZGVwZW5kZW5jeSkgewogICAgICBmaW5hbCBuYW1lID0gZGVwZW5kZW5jeS5uYW1lOwogICAgICBmaW5hbCBwYXRoID0KICAgICAgICAgIHBhdGhSZXNvbHZlci5yZWxhdGl2ZShkZXBlbmRlbmN5LnBhdGgsIGZyb206IGJ1aWxkRGlyZWN0b3J5LnBhdGgpOwogICAgICByZXR1cm4gJyAgJG5hbWU6XG4gICAgcGF0aDogJHBhdGgnOwogICAgfSwKICApLmpvaW4oJ1xuJyl9CicnJyk7CgogIHJldHVybiBjb3BpZWRFeHRlcm5hbFBhdGhEZXBlbmRlbmNpZXMKICAgICAgLm1hcCgoZGVwZW5kZW5jeSkgPT4gZGVwZW5kZW5jeS5wYXRoKQogICAgICAudG9MaXN0KCk7Cn0KCi8vLyB7QHRlbXBsYXRlIGV4dGVybmFsX3BhdGhfZGVwZW5kZW5jeX0KLy8vIEEgcGF0aCBkZXBlbmRlbmN5IHRoYXQgaXMgbm90IHdpdGhpbiB0aGUgYnVuZGxlZCBEYXJ0IEZyb2cgcHJvamVjdAovLy8gZGlyZWN0b3J5LgovLy8KLy8vIEZvciBleGFtcGxlOgovLy8gYGBgeWFtbAovLy8gbmFtZTogbXlfZGFydF9mcm9nX3Byb2plY3QKLy8vIGRlcGVuZGVuY2llczoKLy8vICAgbXlfcGFja2FnZToKLy8vICAgICBwYXRoOiAuLi9teV9wYWNrYWdlCi8vLyBgYGAKLy8vIHtAZW5kdGVtcGxhdGV9CmNsYXNzIF9FeHRlcm5hbFBhdGhEZXBlbmRlbmN5IHsKICAvLy8ge0BtYWNybyBleHRlcm5hbF9wYXRoX2RlcGVuZGVuY3l9CiAgY29uc3QgX0V4dGVybmFsUGF0aERlcGVuZGVuY3koewogICAgcmVxdWlyZWQgdGhpcy5uYW1lLAogICAgcmVxdWlyZWQgdGhpcy5wYXRoLAogIH0pOwoKICAvLy8gVGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UuCiAgZmluYWwgU3RyaW5nIG5hbWU7CgogIC8vLyBUaGUgYWJzb2x1dGUgcGF0aCB0byB0aGUgcGFja2FnZS4KICBmaW5hbCBTdHJpbmcgcGF0aDsKCiAgLy8vIENvcGllcyB0aGUgW19FeHRlcm5hbFBhdGhEZXBlbmRlbmN5XSB0byBbdGFyZ2V0RGlyZWN0b3J5XS4KICBGdXR1cmU8X0V4dGVybmFsUGF0aERlcGVuZGVuY3k+IGNvcHlUbyh7CiAgICByZXF1aXJlZCBEaXJlY3RvcnkgdGFyZ2V0RGlyZWN0b3J5LAogICAgQ29weVBhdGggY29weVBhdGggPSBpby5jb3B5UGF0aCwKICB9KSBhc3luYyB7CiAgICBhd2FpdCBjb3B5UGF0aChwYXRoLCB0YXJnZXREaXJlY3RvcnkucGF0aCk7CiAgICByZXR1cm4gX0V4dGVybmFsUGF0aERlcGVuZGVuY3kobmFtZTogbmFtZSwgcGF0aDogdGFyZ2V0RGlyZWN0b3J5LnBhdGgpOwogIH0KfQo=", - "type": "text" + "type": "text", }, { "path": "lib/src/dart_pub_get.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKCnR5cGVkZWYgUHJvY2Vzc1J1bm5lciA9IEZ1dHVyZTxpby5Qcm9jZXNzUmVzdWx0PiBGdW5jdGlvbigKICBTdHJpbmcgZXhlY3V0YWJsZSwKICBMaXN0PFN0cmluZz4gYXJndW1lbnRzLCB7CiAgU3RyaW5nIHdvcmtpbmdEaXJlY3RvcnksCiAgYm9vbCBydW5JblNoZWxsLAp9KTsKCkZ1dHVyZTx2b2lkPiBkYXJ0UHViR2V0KAogIEhvb2tDb250ZXh0IGNvbnRleHQsIHsKICByZXF1aXJlZCBTdHJpbmcgd29ya2luZ0RpcmVjdG9yeSwKICByZXF1aXJlZCBQcm9jZXNzUnVubmVyIHJ1blByb2Nlc3MsCiAgcmVxdWlyZWQgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQsCn0pIGFzeW5jIHsKICBmaW5hbCBwcm9ncmVzcyA9IGNvbnRleHQubG9nZ2VyLnByb2dyZXNzKCdJbnN0YWxsaW5nIGRlcGVuZGVuY2llcycpOwogIHRyeSB7CiAgICBmaW5hbCByZXN1bHQgPSBhd2FpdCBydW5Qcm9jZXNzKAogICAgICAnZGFydCcsCiAgICAgIFsncHViJywgJ2dldCddLAogICAgICB3b3JraW5nRGlyZWN0b3J5OiB3b3JraW5nRGlyZWN0b3J5LAogICAgICBydW5JblNoZWxsOiB0cnVlLAogICAgKTsKICAgIHByb2dyZXNzLmNvbXBsZXRlKCk7CgogICAgaWYgKHJlc3VsdC5leGl0Q29kZSAhPSAwKSB7CiAgICAgIGNvbnRleHQubG9nZ2VyLmVycignJHtyZXN1bHQuc3RkZXJyfScpOwogICAgICByZXR1cm4gZXhpdChyZXN1bHQuZXhpdENvZGUpOwogICAgfQogIH0gb24gaW8uUHJvY2Vzc0V4Y2VwdGlvbiBjYXRjaCAoZXJyb3IpIHsKICAgIGNvbnRleHQubG9nZ2VyLmVycihlcnJvci5tZXNzYWdlKTsKICAgIHJldHVybiBleGl0KGVycm9yLmVycm9yQ29kZSk7CiAgfQp9Cg==", - "type": "text" + "type": "text", }, { "path": "lib/src/exit_overrides.dart", "data": "aW1wb3J0ICdkYXJ0OmFzeW5jJzsKaW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmNvbnN0IF9hc3luY1J1blpvbmVkID0gcnVuWm9uZWQ7CgphYnN0cmFjdCBjbGFzcyBFeGl0T3ZlcnJpZGVzIHsKICBzdGF0aWMgZmluYWwgX3Rva2VuID0gT2JqZWN0KCk7CgogIHN0YXRpYyBFeGl0T3ZlcnJpZGVzPyBnZXQgY3VycmVudCB7CiAgICByZXR1cm4gWm9uZS5jdXJyZW50W190b2tlbl0gYXMgRXhpdE92ZXJyaWRlcz87CiAgfQoKICBzdGF0aWMgUiBydW5ab25lZDxSPihSIEZ1bmN0aW9uKCkgYm9keSwge3ZvaWQgRnVuY3Rpb24oaW50KT8gZXhpdH0pIHsKICAgIGZpbmFsIG92ZXJyaWRlcyA9IF9FeGl0T3ZlcnJpZGVzU2NvcGUoZXhpdCk7CiAgICByZXR1cm4gX2FzeW5jUnVuWm9uZWQoYm9keSwgem9uZVZhbHVlczoge190b2tlbjogb3ZlcnJpZGVzfSk7CiAgfQoKICB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZ2V0IGV4aXQgPT4gaW8uZXhpdDsKfQoKY2xhc3MgX0V4aXRPdmVycmlkZXNTY29wZSBleHRlbmRzIEV4aXRPdmVycmlkZXMgewogIF9FeGl0T3ZlcnJpZGVzU2NvcGUodGhpcy5fZXhpdCk7CgogIGZpbmFsIEV4aXRPdmVycmlkZXM/IF9wcmV2aW91cyA9IEV4aXRPdmVycmlkZXMuY3VycmVudDsKICBmaW5hbCB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSk/IF9leGl0OwoKICBAb3ZlcnJpZGUKICB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZ2V0IGV4aXQgewogICAgcmV0dXJuIF9leGl0ID8/IF9wcmV2aW91cz8uZXhpdCA/PyBzdXBlci5leGl0OwogIH0KfQo=", - "type": "text" + "type": "text", }, { "path": "lib/src/get_internal_path_dependencies.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CgpGdXR1cmU8TGlzdDxTdHJpbmc+PiBnZXRJbnRlcm5hbFBhdGhEZXBlbmRlbmNpZXMoaW8uRGlyZWN0b3J5IGRpcmVjdG9yeSkgYXN5bmMgewogIGZpbmFsIHB1YnNwZWNMb2NrID0gYXdhaXQgZ2V0UHVic3BlY0xvY2soZGlyZWN0b3J5LnBhdGgpOwoKICBmaW5hbCBpbnRlcm5hbFBhdGhEZXBlbmRlbmNpZXMgPSBwdWJzcGVjTG9jay5wYWNrYWdlcy53aGVyZSgKICAgIChkZXBlbmRlbmN5KSB7CiAgICAgIGZpbmFsIHBhdGhEZXNjcmlwdGlvbiA9IGRlcGVuZGVuY3kucGF0aERlc2NyaXB0aW9uOwogICAgICBpZiAocGF0aERlc2NyaXB0aW9uID09IG51bGwpIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KCiAgICAgIHJldHVybiBwYXRoLmlzV2l0aGluKCcnLCBwYXRoRGVzY3JpcHRpb24ucGF0aCk7CiAgICB9LAogICk7CgogIHJldHVybiBpbnRlcm5hbFBhdGhEZXBlbmRlbmNpZXMKICAgICAgLm1hcCgoZGVwZW5kZW5jeSkgPT4gZGVwZW5kZW5jeS5wYXRoRGVzY3JpcHRpb24hLnBhdGgpCiAgICAgIC50b0xpc3QoKTsKfQo=", - "type": "text" + "type": "text", }, { "path": "lib/src/get_pubspec_lock.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3Mvc3JjL3B1YnNwZWNfbG9jay9wdWJzcGVjX2xvY2suZGFydCc7CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKCkZ1dHVyZTxQdWJzcGVjTG9jaz4gZ2V0UHVic3BlY0xvY2soCiAgU3RyaW5nIHdvcmtpbmdEaXJlY3RvcnksIHsKICBwYXRoLkNvbnRleHQ/IHBhdGhDb250ZXh0LAp9KSBhc3luYyB7CiAgZmluYWwgcGF0aFJlc29sdmVyID0gcGF0aENvbnRleHQgPz8gcGF0aC5jb250ZXh0OwogIGZpbmFsIHB1YnNwZWNMb2NrRmlsZSA9IEZpbGUoCiAgICB3b3JraW5nRGlyZWN0b3J5LmlzRW1wdHkKICAgICAgICA/ICdwdWJzcGVjLmxvY2snCiAgICAgICAgOiBwYXRoUmVzb2x2ZXIuam9pbih3b3JraW5nRGlyZWN0b3J5LCAncHVic3BlYy5sb2NrJyksCiAgKTsKCiAgZmluYWwgY29udGVudCA9IGF3YWl0IHB1YnNwZWNMb2NrRmlsZS5yZWFkQXNTdHJpbmcoKTsKICByZXR1cm4gUHVic3BlY0xvY2suZnJvbVN0cmluZyhjb250ZW50KTsKfQo=", - "type": "text" + "type": "text", }, { "path": "lib/src/pubspec_lock/pubspec_lock.dart", "data": "aW1wb3J0ICdkYXJ0OmNvbGxlY3Rpb24nOwoKaW1wb3J0ICdwYWNrYWdlOmVxdWF0YWJsZS9lcXVhdGFibGUuZGFydCc7CmltcG9ydCAncGFja2FnZTp5YW1sL3lhbWwuZGFydCc7CgovLy8ge0B0ZW1wbGF0ZSBwdWJzcGVjX2xvY2tfcGFyc2VfZXhjZXB0aW9ufQovLy8gVGhyb3duIHdoZW4gYSBbUHVic3BlY0xvY2tdIGZhaWxzIHRvIHBhcnNlLgovLy8ge0BlbmR0ZW1wbGF0ZX0KY2xhc3MgUHVic3BlY0xvY2tQYXJzZUV4Y2VwdGlvbiBpbXBsZW1lbnRzIEV4Y2VwdGlvbiB7CiAgLy8vIHtAbWFjcm8gcHVic3BlY19sb2NrX3BhcnNlX2V4Y2VwdGlvbn0KICBjb25zdCBQdWJzcGVjTG9ja1BhcnNlRXhjZXB0aW9uKCk7Cn0KCi8vLyBBIHJlcHJlc2VudGF0aW9uIG9mIGEgcHVic3BlYy5sb2NrIGZpbGUuCmNsYXNzIFB1YnNwZWNMb2NrIHsKICBjb25zdCBQdWJzcGVjTG9jay5fKHsKICAgIHJlcXVpcmVkIHRoaXMucGFja2FnZXMsCiAgfSk7CgogIC8vLyBQYXJzZXMgYSBbUHVic3BlY0xvY2tdIGZyb20gYSBzdHJpbmcuCiAgLy8vCiAgLy8vIElmIG5vIHBhY2thZ2VzIGFyZSBmb3VuZCwgYW4gZW1wdHkgW1B1YnNwZWNMb2NrXSBpcyByZXR1cm5lZC4gVGhvc2UKICAvLy8gcGFja2FnZXMgZW50cmllcyB0aGF0IGNhbm5vdCBiZSBwYXJzZWQgYXJlIGlnbm9yZWQuCiAgLy8vCiAgLy8vIEl0IHRocm93cyBhIFtQdWJzcGVjTG9ja1BhcnNlRXhjZXB0aW9uXSBpZiB0aGUgc3RyaW5nIGNhbm5vdCBiZSBwYXJzZWQKICAvLy8gYXMgYSBbWWFtbE1hcF0uCiAgZmFjdG9yeSBQdWJzcGVjTG9jay5mcm9tU3RyaW5nKFN0cmluZyBjb250ZW50KSB7CiAgICBsYXRlIGZpbmFsIFlhbWxNYXAgeWFtbDsKICAgIHRyeSB7CiAgICAgIHlhbWwgPSBsb2FkWWFtbChjb250ZW50KSBhcyBZYW1sTWFwOwogICAgICAvLyBpZ25vcmluZyBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eQogICAgICAvLyBpZ25vcmU6IGF2b2lkX2NhdGNoZXNfd2l0aG91dF9vbl9jbGF1c2VzCiAgICB9IGNhdGNoIChfKSB7CiAgICAgIHRocm93IGNvbnN0IFB1YnNwZWNMb2NrUGFyc2VFeGNlcHRpb24oKTsKICAgIH0KCiAgICBpZiAoIXlhbWwuY29udGFpbnNLZXkoJ3BhY2thZ2VzJykpIHsKICAgICAgcmV0dXJuIFB1YnNwZWNMb2NrLmVtcHR5OwogICAgfQoKICAgIGZpbmFsIHBhY2thZ2VzID0geWFtbFsncGFja2FnZXMnXSBhcyBZYW1sTWFwOwoKICAgIGZpbmFsIHBhcnNlZFBhY2thZ2VzID0gPFB1YnNwZWNMb2NrUGFja2FnZT5bXTsKICAgIGZvciAoZmluYWwgZW50cnkgaW4gcGFja2FnZXMuZW50cmllcykgewogICAgICB0cnkgewogICAgICAgIGZpbmFsIHBhY2thZ2UgPSBQdWJzcGVjTG9ja1BhY2thZ2UuZnJvbVlhbWxNYXAoCiAgICAgICAgICBuYW1lOiBlbnRyeS5rZXkgYXMgU3RyaW5nLAogICAgICAgICAgZGF0YTogZW50cnkudmFsdWUgYXMgWWFtbE1hcCwKICAgICAgICApOwogICAgICAgIHBhcnNlZFBhY2thZ2VzLmFkZChwYWNrYWdlKTsKICAgICAgICAvLyBpZ25vcmluZyBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eQogICAgICAgIC8vIGlnbm9yZTogYXZvaWRfY2F0Y2hlc193aXRob3V0X29uX2NsYXVzZXMKICAgICAgfSBjYXRjaCAoXykgewogICAgICAgIC8vIElnbm9yZSB0aG9zZSBwYWNrYWdlcyB0aGF0IGZvciBzb21lIHJlYXNvbiBjYW5ub3QgYmUgcGFyc2VkLgogICAgICB9CiAgICB9CgogICAgcmV0dXJuIFB1YnNwZWNMb2NrLl8oCiAgICAgIHBhY2thZ2VzOiBVbm1vZGlmaWFibGVMaXN0VmlldyhwYXJzZWRQYWNrYWdlcyksCiAgICApOwogIH0KCiAgLy8vIEFuIGVtcHR5IFtQdWJzcGVjTG9ja10uCiAgc3RhdGljIFB1YnNwZWNMb2NrIGVtcHR5ID0gUHVic3BlY0xvY2suXygKICAgIHBhY2thZ2VzOiBVbm1vZGlmaWFibGVMaXN0VmlldyhbXSksCiAgKTsKCiAgLy8vIEFsbCB0aGUgZGVwZW5kZW5jaWVzIGluIHRoZSBwdWJzcGVjLmxvY2sgZmlsZS4KICBmaW5hbCBVbm1vZGlmaWFibGVMaXN0VmlldzxQdWJzcGVjTG9ja1BhY2thZ2U+IHBhY2thZ2VzOwp9CgovLy8ge0B0ZW1wbGF0ZSBwdWJzcGVjX2xvY2tfZGVwZW5kZW5jeX0KLy8vIEEgcmVwcmVzZW50YXRpb24gb2YgYSBkZXBlbmRlbmN5IGluIGEgcHVic3BlYy5sb2NrIGZpbGUuCi8vLyB7QGVuZHRlbXBsYXRlfQpjbGFzcyBQdWJzcGVjTG9ja1BhY2thZ2UgZXh0ZW5kcyBFcXVhdGFibGUgewogIC8vLyB7QG1hY3JvIHB1YnNwZWNfbG9ja19kZXBlbmRlbmN5fQogIGNvbnN0IFB1YnNwZWNMb2NrUGFja2FnZSh7CiAgICByZXF1aXJlZCB0aGlzLm5hbWUsCiAgICByZXF1aXJlZCB0aGlzLnR5cGUsCiAgICB0aGlzLnBhdGhEZXNjcmlwdGlvbiwKICB9KTsKCiAgLy8vIFBhcnNlcyBhIFtQdWJzcGVjTG9ja1BhY2thZ2VdIGZyb20gYSBbWWFtbE1hcF0uCiAgZmFjdG9yeSBQdWJzcGVjTG9ja1BhY2thZ2UuZnJvbVlhbWxNYXAoewogICAgcmVxdWlyZWQgU3RyaW5nIG5hbWUsCiAgICByZXF1aXJlZCBZYW1sTWFwIGRhdGEsCiAgfSkgewogICAgZmluYWwgZGVwZW5kZW5jeSA9IGRhdGFbJ2RlcGVuZGVuY3knXSBhcyBTdHJpbmc7CiAgICBmaW5hbCBkZXBlbmRlbmN5VHlwZSA9IFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlLnBhcnNlKGRlcGVuZGVuY3kpOwoKICAgIGZpbmFsIGRlc2NyaXB0aW9uID0gZGF0YVsnZGVzY3JpcHRpb24nXSBhcyBZYW1sTWFwPzsKICAgIGZpbmFsIHBhdGhEZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uICE9IG51bGwKICAgICAgICA/IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uLnRyeVBhcnNlKGRlc2NyaXB0aW9uKQogICAgICAgIDogbnVsbDsKCiAgICByZXR1cm4gUHVic3BlY0xvY2tQYWNrYWdlKAogICAgICBuYW1lOiBuYW1lLAogICAgICB0eXBlOiBkZXBlbmRlbmN5VHlwZSwKICAgICAgcGF0aERlc2NyaXB0aW9uOiBwYXRoRGVzY3JpcHRpb24sCiAgICApOwogIH0KCiAgLy8vIFRoZSBuYW1lIG9mIHRoZSBkZXBlbmRlbmN5LgogIGZpbmFsIFN0cmluZyBuYW1lOwoKICAvLy8ge0BtYWNybyBwdWJzcGVjX2xvY2tfZGVwZW5kZW5jeV90eXBlfQogIGZpbmFsIFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlIHR5cGU7CgogIC8vLyB7QG1hY3JvIHB1YnNwZWNfcGFja2FnZV9wYXRoX2Rlc2NyaXB0aW9ufQogIGZpbmFsIFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uPyBwYXRoRGVzY3JpcHRpb247CgogIEBvdmVycmlkZQogIExpc3Q8T2JqZWN0Pz4gZ2V0IHByb3BzID0+IFtuYW1lLCB0eXBlLCBwYXRoRGVzY3JpcHRpb25dOwp9CgovLy8ge0B0ZW1wbGF0ZSBwdWJzcGVjX2xvY2tfZGVwZW5kZW5jeV90eXBlfQovLy8gVGhlIHR5cGUgb2YgYSBbUHVic3BlY0xvY2tQYWNrYWdlXS4KLy8vIHtAZW5kdGVtcGxhdGV9CmVudW0gUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUgewogIC8vLyBBbm90aGVyIHBhY2thZ2UgdGhhdCB5b3VyIHBhY2thZ2UgbmVlZHMgdG8gd29yay4KICAvLy8KICAvLy8gU2VlIGFsc286CiAgLy8vCiAgLy8vICogW0RhcnQncyBkZXBlbmRlbmN5IGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZGFydC5kZXYvdG9vbHMvcHViL2RlcGVuZGVuY2llcykKICBkaXJlY3RNYWluLl8oJ2RpcmVjdCBtYWluJyksCgogIC8vLyBBbm90aGVyIHBhY2thZ2UgdGhhdCB5b3VyIHBhY2thZ2UgbmVlZHMgZHVyaW5nIGRldmVsb3BtZW50LgogIC8vLwogIC8vLyBTZWUgYWxzbzoKICAvLy8KICAvLy8gKiBbRGFydCdzIGRldmVsb3BlciBkZXBlbmRlbmN5IGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZGFydC5kZXYvdG9vbHMvcHViL2RlcGVuZGVuY2llcyNkZXYtZGVwZW5kZW5jaWVzKQogIGRpcmVjdERldi5fKCdkaXJlY3QgZGV2JyksCgogIC8vLyBBIGRlcGVuZGVuY3kgdGhhdCB5b3VyIHBhY2thZ2UgaW5kaXJlY3RseSB1c2VzIGJlY2F1c2Ugb25lIG9mIGl0cwogIC8vLyBkZXBlbmRlbmNpZXMgcmVxdWlyZXMgaXQuCiAgLy8vCiAgLy8vIFNlZSBhbHNvOgogIC8vLwogIC8vLyAqIFtEYXJ0J3MgdHJhbnNpdGl2ZSBkZXBlbmRlbmN5IGRvY3VtZW50YXRpb25dKGh0dHBzOi8vZGFydC5kZXYvdG9vbHMvcHViL2dsb3NzYXJ5I3RyYW5zaXRpdmUtKQogIHRyYW5zaXRpdmUuXygndHJhbnNpdGl2ZScpLAoKICAvLy8gIEEgZGVwZW5kZW5jeSB0aGF0IHlvdXIgcGFja2FnZSBvdmVycmlkZXMgdGhhdCBpcyBub3QgYWxyZWFkeSBhCiAgLy8vIGBkaXJlY3QgbWFpbmAgb3IgYGRpcmVjdCBkZXZgIGRlcGVuZGVuY3kuCiAgLy8vCiAgLy8vIFNlZSBhbHNvOgogIC8vLwogIC8vLyAqIFtEYXJ0J3MgZGVwZW5kZW5jeSBvdmVycmlkZSBkb2N1bWVudGF0aW9uXShodHRwczovL2RhcnQuZGV2L3Rvb2xzL3B1Yi9kZXBlbmRlbmNpZXMjZGVwZW5kZW5jeS1vdmVycmlkZXMpCiAgZGlyZWN0T3ZlcnJpZGRlbi5fKCdkaXJlY3Qgb3ZlcnJpZGRlbicpOwoKICBjb25zdCBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5fKHRoaXMudmFsdWUpOwoKICAvLy8gUGFyc2VzIGEgW1B1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlXSBmcm9tIGEgc3RyaW5nLgogIC8vLwogIC8vLyBUaHJvd3MgYW4gW0FyZ3VtZW50RXJyb3JdIGlmIHRoZSBzdHJpbmcgaXMgbm90IGEgdmFsaWQgZGVwZW5kZW5jeSB0eXBlLgogIGZhY3RvcnkgUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUucGFyc2UoU3RyaW5nIHZhbHVlKSB7CiAgICBpZiAoX3ZhbHVlTWFwLmNvbnRhaW5zS2V5KHZhbHVlKSkgewogICAgICByZXR1cm4gX3ZhbHVlTWFwW3ZhbHVlXSE7CiAgICB9CgogICAgdGhyb3cgQXJndW1lbnRFcnJvci52YWx1ZSgKICAgICAgdmFsdWUsCiAgICAgICd2YWx1ZScsCiAgICAgICdJbnZhbGlkIFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlIHZhbHVlLicsCiAgICApOwogIH0KCiAgc3RhdGljIE1hcDxTdHJpbmcsIFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlPiBfdmFsdWVNYXAgPSB7CiAgICBmb3IgKGZpbmFsIHR5cGUgaW4gUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUudmFsdWVzKQogICAgICB0eXBlLnZhbHVlOiB0eXBlLAogIH07CgogIC8vLyBUaGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBbUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGVdCiAgLy8vIGFzIGl0IGFwcGVhcnMgaW4gYSBwdWJzcGVjLmxvY2sgZmlsZS4KICBmaW5hbCBTdHJpbmcgdmFsdWU7Cn0KCi8vLyB7QHRlbXBsYXRlIHB1YnNwZWNfcGFja2FnZV9wYXRoX2Rlc2NyaXB0aW9ufQovLy8gVGhlIGRlc2NyaXB0aW9uIG9mIGEgcGF0aCBkZXBlbmRlbmN5IGluIGEgcHVic3BlYy5sb2NrIGZpbGUuCi8vLwovLy8gRm9yIGV4YW1wbGUsIGluOgovLy8gYGBgeWFtbAovLy8gbXlfcGFja2FnZToKLy8vICAgZGVwZW5kZW5jeTogImRpcmVjdCBtYWluIgovLy8gICBkZXNjcmlwdGlvbjoKLy8vICAgICBwYXRoOiAicGFja2FnZXMvbXlfcGFja2FnZSIKLy8vICAgICByZWxhdGl2ZTogdHJ1ZQovLy8gICBzb3VyY2U6IHBhdGgKLy8vICAgdmVyc2lvbjogIjEuMC4wKzEiCi8vLyBgYGAKLy8vCi8vLyBUaGUgZGVzY3JpcHRpb24gaXM6Ci8vLyBgYGB5YW1sCi8vLyBwYXRoOiAicGFja2FnZXMvbXlfcGFja2FnZSIKLy8vIHJlbGF0aXZlOiB0cnVlCi8vLyBgYGAKLy8vCi8vLyBTZWUgYWxzbzoKLy8vCi8vLyAqIFtQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbi50cnlQYXJzZV0sIHdoaWNoIGF0dGVtcHRzIHRvIHBhcnNlcyBhCi8vLyBbWWFtbE1hcF0gaW50byBhIFtQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbl0uCi8vLyB7QGVuZHRlbXBsYXRlfQpjbGFzcyBQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbiBleHRlbmRzIEVxdWF0YWJsZSB7CiAgY29uc3QgUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oewogICAgcmVxdWlyZWQgdGhpcy5wYXRoLAogICAgcmVxdWlyZWQgdGhpcy5yZWxhdGl2ZSwKICB9KTsKCiAgLy8vIEF0dGVtcHRzIHRvIHBhcnNlIGEgW1lhbWxNYXBdIGludG8gYSBbUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb25dLgogIC8vLwogIC8vLyBSZXR1cm5zIGBudWxsYCBpZiB0aGUgW1lhbWxNYXBdIGRvZXMgbm90IGNvbnRhaW4gdGhlIHJlcXVpcmVkIGRhdGEKICAvLy8gdG8gY3JlYXRlIGEgW1B1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uXS4KICBzdGF0aWMgUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24/IHRyeVBhcnNlKFlhbWxNYXAgZGF0YSkgewogICAgaWYgKCghZGF0YS5jb250YWluc0tleSgncGF0aCcpIHx8IGRhdGFbJ3BhdGgnXSBpcyEgU3RyaW5nKSB8fAogICAgICAgICghZGF0YS5jb250YWluc0tleSgncmVsYXRpdmUnKSB8fCBkYXRhWydyZWxhdGl2ZSddIGlzISBib29sKSkgewogICAgICByZXR1cm4gbnVsbDsKICAgIH0KCiAgICBmaW5hbCBwYXRoID0gZGF0YVsncGF0aCddIGFzIFN0cmluZzsKICAgIGZpbmFsIHJlbGF0aXZlID0gZGF0YVsncmVsYXRpdmUnXSBhcyBib29sOwoKICAgIHJldHVybiBQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbigKICAgICAgcGF0aDogcGF0aCwKICAgICAgcmVsYXRpdmU6IHJlbGF0aXZlLAogICAgKTsKICB9CgogIGZpbmFsIFN0cmluZyBwYXRoOwogIGZpbmFsIGJvb2wgcmVsYXRpdmU7CgogIEBvdmVycmlkZQogIExpc3Q8T2JqZWN0Pz4gZ2V0IHByb3BzID0+IFtwYXRoLCByZWxhdGl2ZV07Cn0K", - "type": "text" + "type": "text", }, { "path": "post_gen.dart", "data": "aW1wb3J0ICdkYXJ0OmFzeW5jJzsKaW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCcgc2hvdyBIb29rQ29udGV4dCwgbGlnaHRDeWFuOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7Cgp2b2lkIF9kZWZhdWx0RXhpdChpbnQgY29kZSkgPT4gRXhpdE92ZXJyaWRlcy5jdXJyZW50Py5leGl0ID8/IGlvLmV4aXQ7CgpGdXR1cmU8dm9pZD4gcnVuKEhvb2tDb250ZXh0IGNvbnRleHQpID0+IHBvc3RHZW4oY29udGV4dCk7CgpGdXR1cmU8dm9pZD4gcG9zdEdlbigKICBIb29rQ29udGV4dCBjb250ZXh0LCB7CiAgaW8uRGlyZWN0b3J5PyBkaXJlY3RvcnksCiAgUHJvY2Vzc1J1bm5lciBydW5Qcm9jZXNzID0gaW8uUHJvY2Vzcy5ydW4sCiAgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQgPSBfZGVmYXVsdEV4aXQsCn0pIGFzeW5jIHsKICBmaW5hbCBwcm9qZWN0RGlyZWN0b3J5ID0gZGlyZWN0b3J5ID8/IGlvLkRpcmVjdG9yeS5jdXJyZW50OwogIGZpbmFsIGJ1aWxkRGlyZWN0b3J5UGF0aCA9IHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdidWlsZCcpOwoKICBhd2FpdCBkYXJ0UHViR2V0KAogICAgY29udGV4dCwKICAgIHdvcmtpbmdEaXJlY3Rvcnk6IGJ1aWxkRGlyZWN0b3J5UGF0aCwKICAgIHJ1blByb2Nlc3M6IHJ1blByb2Nlc3MsCiAgICBleGl0OiBleGl0LAogICk7CgogIGZpbmFsIHJlbGF0aXZlQnVpbGRQYXRoID0gcGF0aC5yZWxhdGl2ZShidWlsZERpcmVjdG9yeVBhdGgpOwogIGNvbnRleHQubG9nZ2VyCiAgICAuLmluZm8oJycpCiAgICAuLnN1Y2Nlc3MoJ0NyZWF0ZWQgYSBwcm9kdWN0aW9uIGJ1aWxkIScpCiAgICAuLmluZm8oJycpCiAgICAuLmluZm8oJ1N0YXJ0IHRoZSBwcm9kdWN0aW9uIHNlcnZlciBieSBydW5uaW5nOicpCiAgICAuLmluZm8oJycpCiAgICAuLmluZm8oCiAgICAgICcnJyR7bGlnaHRDeWFuLndyYXAoJ2RhcnQgJHtwYXRoLmpvaW4ocmVsYXRpdmVCdWlsZFBhdGgsICdiaW4nLCAnc2VydmVyLmRhcnQnKX0nKX0nJycsCiAgICApOwp9Cg==", - "type": "text" + "type": "text", }, { "path": "pre_gen.dart", "data": "aW1wb3J0ICdkYXJ0OmFzeW5jJzsKaW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfZ2VuL2RhcnRfZnJvZ19nZW4uZGFydCc7CmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6aW8vaW8uZGFydCcgYXMgaW9fZXhwYW5kZWQ7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JwogICAgc2hvdyBIb29rQ29udGV4dCwgZGVmYXVsdEZvcmVncm91bmQsIGxpZ2h0Q3lhbjsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwoKdHlwZWRlZiBSb3V0ZUNvbmZpZ3VyYXRpb25CdWlsZGVyID0gUm91dGVDb25maWd1cmF0aW9uIEZ1bmN0aW9uKAogIGlvLkRpcmVjdG9yeSBkaXJlY3RvcnksCik7Cgp2b2lkIF9kZWZhdWx0RXhpdChpbnQgY29kZSkgPT4gRXhpdE92ZXJyaWRlcy5jdXJyZW50Py5leGl0ID8/IGlvLmV4aXQ7CgpGdXR1cmU8dm9pZD4gcnVuKEhvb2tDb250ZXh0IGNvbnRleHQpID0+IHByZUdlbihjb250ZXh0KTsKCkZ1dHVyZTx2b2lkPiBwcmVHZW4oCiAgSG9va0NvbnRleHQgY29udGV4dCwgewogIGlvLkRpcmVjdG9yeT8gZGlyZWN0b3J5LAogIFByb2Nlc3NSdW5uZXIgcnVuUHJvY2VzcyA9IGlvLlByb2Nlc3MucnVuLAogIFJvdXRlQ29uZmlndXJhdGlvbkJ1aWxkZXIgYnVpbGRDb25maWd1cmF0aW9uID0gYnVpbGRSb3V0ZUNvbmZpZ3VyYXRpb24sCiAgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQgPSBfZGVmYXVsdEV4aXQsCiAgRnV0dXJlPHZvaWQ+IEZ1bmN0aW9uKFN0cmluZyBmcm9tLCBTdHJpbmcgdG8pIGNvcHlQYXRoID0gaW9fZXhwYW5kZWQuY29weVBhdGgsCn0pIGFzeW5jIHsKICBmaW5hbCBwcm9qZWN0RGlyZWN0b3J5ID0gZGlyZWN0b3J5ID8/IGlvLkRpcmVjdG9yeS5jdXJyZW50OwoKICAvLyBXZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBwdWJzcGVjLmxvY2sgZmlsZSBpcyB1cCB0byBkYXRlCiAgYXdhaXQgZGFydFB1YkdldCgKICAgIGNvbnRleHQsCiAgICB3b3JraW5nRGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICBydW5Qcm9jZXNzOiBydW5Qcm9jZXNzLAogICAgZXhpdDogZXhpdCwKICApOwoKICBmaW5hbCBidWlsZERpcmVjdG9yeSA9IGlvLkRpcmVjdG9yeSgKICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdidWlsZCcpLAogICk7CgogIGF3YWl0IGNyZWF0ZUJ1bmRsZSgKICAgIGNvbnRleHQ6IGNvbnRleHQsCiAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgYnVpbGREaXJlY3Rvcnk6IGJ1aWxkRGlyZWN0b3J5LAogICAgZXhpdDogZXhpdCwKICApOwoKICBmaW5hbCBSb3V0ZUNvbmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbjsKICB0cnkgewogICAgY29uZmlndXJhdGlvbiA9IGJ1aWxkQ29uZmlndXJhdGlvbihwcm9qZWN0RGlyZWN0b3J5KTsKICB9IG9uIEV4Y2VwdGlvbiBjYXRjaCAoZXJyb3IpIHsKICAgIGNvbnRleHQubG9nZ2VyLmVycignJGVycm9yJyk7CiAgICByZXR1cm4gZXhpdCgxKTsKICB9CgogIHJlcG9ydFJvdXRlQ29uZmxpY3RzKAogICAgY29uZmlndXJhdGlvbiwKICAgIG9uUm91dGVDb25mbGljdDogKAogICAgICBvcmlnaW5hbEZpbGVQYXRoLAogICAgICBjb25mbGljdGluZ0ZpbGVQYXRoLAogICAgICBjb25mbGljdGluZ0VuZHBvaW50LAogICAgKSB7CiAgICAgIGNvbnRleHQubG9nZ2VyLmVycigKICAgICAgICAnJydSb3V0ZSBjb25mbGljdCBkZXRlY3RlZC4gJHtsaWdodEN5YW4ud3JhcChvcmlnaW5hbEZpbGVQYXRoKX0gYW5kICR7bGlnaHRDeWFuLndyYXAoY29uZmxpY3RpbmdGaWxlUGF0aCl9IGJvdGggcmVzb2x2ZSB0byAke2xpZ2h0Q3lhbi53cmFwKGNvbmZsaWN0aW5nRW5kcG9pbnQpfS4nJycsCiAgICAgICk7CiAgICB9LAogICAgb25WaW9sYXRpb25FbmQ6ICgpIHsKICAgICAgZXhpdCgxKTsKICAgIH0sCiAgKTsKCiAgcmVwb3J0Um9ndWVSb3V0ZXMoCiAgICBjb25maWd1cmF0aW9uLAogICAgb25Sb2d1ZVJvdXRlOiAoZmlsZVBhdGgsIGlkZWFsUGF0aCkgewogICAgICBjb250ZXh0LmxvZ2dlci5lcnIoCiAgICAgICAgJycnUm9ndWUgcm91dGUgZGV0ZWN0ZWQuJHtkZWZhdWx0Rm9yZWdyb3VuZC53cmFwKCcgJyl9UmVuYW1lICR7bGlnaHRDeWFuLndyYXAoZmlsZVBhdGgpfSB0byAke2xpZ2h0Q3lhbi53cmFwKGlkZWFsUGF0aCl9LicnJywKICAgICAgKTsKICAgIH0sCiAgICBvblZpb2xhdGlvbkVuZDogKCkgewogICAgICBleGl0KDEpOwogICAgfSwKICApOwoKICBmaW5hbCBjdXN0b21Eb2NrZXJGaWxlID0gaW8uRmlsZSgKICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdEb2NrZXJmaWxlJyksCiAgKTsKCiAgZmluYWwgaW50ZXJuYWxQYXRoRGVwZW5kZW5jaWVzID0gYXdhaXQgZ2V0SW50ZXJuYWxQYXRoRGVwZW5kZW5jaWVzKAogICAgcHJvamVjdERpcmVjdG9yeSwKICApOwoKICBmaW5hbCBleHRlcm5hbERlcGVuZGVuY2llcyA9IGF3YWl0IGNyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXIoCiAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgYnVpbGREaXJlY3Rvcnk6IGJ1aWxkRGlyZWN0b3J5LAogICAgY29weVBhdGg6IGNvcHlQYXRoLAogICk7CgogIGZpbmFsIGFkZERvY2tlcmZpbGUgPSAhY3VzdG9tRG9ja2VyRmlsZS5leGlzdHNTeW5jKCk7CgogIGNvbnRleHQudmFycyA9IHsKICAgICdkaXJlY3Rvcmllcyc6IGNvbmZpZ3VyYXRpb24uZGlyZWN0b3JpZXMKICAgICAgICAubWFwKChjKSA9PiBjLnRvSnNvbigpKQogICAgICAgIC50b0xpc3QoKQogICAgICAgIC5yZXZlcnNlZAogICAgICAgIC50b0xpc3QoKSwKICAgICdyb3V0ZXMnOiBjb25maWd1cmF0aW9uLnJvdXRlcy5tYXAoKHIpID0+IHIudG9Kc29uKCkpLnRvTGlzdCgpLAogICAgJ21pZGRsZXdhcmUnOiBjb25maWd1cmF0aW9uLm1pZGRsZXdhcmUubWFwKChtKSA9PiBtLnRvSnNvbigpKS50b0xpc3QoKSwKICAgICdnbG9iYWxNaWRkbGV3YXJlJzogY29uZmlndXJhdGlvbi5nbG9iYWxNaWRkbGV3YXJlICE9IG51bGwKICAgICAgICA/IGNvbmZpZ3VyYXRpb24uZ2xvYmFsTWlkZGxld2FyZSEudG9Kc29uKCkKICAgICAgICA6IGZhbHNlLAogICAgJ3NlcnZlU3RhdGljRmlsZXMnOiBjb25maWd1cmF0aW9uLnNlcnZlU3RhdGljRmlsZXMsCiAgICAnaW52b2tlQ3VzdG9tRW50cnlwb2ludCc6IGNvbmZpZ3VyYXRpb24uaW52b2tlQ3VzdG9tRW50cnlwb2ludCwKICAgICdpbnZva2VDdXN0b21Jbml0JzogY29uZmlndXJhdGlvbi5pbnZva2VDdXN0b21Jbml0LAogICAgJ3BhdGhEZXBlbmRlbmNpZXMnOiBpbnRlcm5hbFBhdGhEZXBlbmRlbmNpZXMsCiAgICAnaGFzRXh0ZXJuYWxEZXBlbmRlbmNpZXMnOiBleHRlcm5hbERlcGVuZGVuY2llcy5pc05vdEVtcHR5LAogICAgJ2RhcnRWZXJzaW9uJzogY29udGV4dC52YXJzWydkYXJ0VmVyc2lvbiddLAogICAgJ2FkZERvY2tlcmZpbGUnOiBhZGREb2NrZXJmaWxlLAogIH07Cn0K", - "type": "text" + "type": "text", }, { "path": "pubspec.yaml", "data": "bmFtZTogZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzCnB1Ymxpc2hfdG86IG5vbmUKCmVudmlyb25tZW50OgogIHNkazogIj49My4wLjAgPDQuMC4wIgoKZGVwZW5kZW5jaWVzOgogIGRhcnRfZnJvZ19nZW46IF4yLjAuMAogIGVxdWF0YWJsZTogXjIuMC41CiAgaW86IF4xLjAuMwogIG1hc29uOiBeMC4xLjAKICBwYXRoOiBeMS44LjEKICB5YW1sOiBeMy4xLjIKCmRldl9kZXBlbmRlbmNpZXM6CiAgbW9ja3RhaWw6IF4xLjAuMAogIHRlc3Q6IF4xLjI1LjAKICB2ZXJ5X2dvb2RfYW5hbHlzaXM6IF45LjAuMAo=", - "type": "text" + "type": "text", }, { "path": "test/post_gen_test.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCcKICAgIHNob3cgRXhpdENvZGUsIEhvb2tDb250ZXh0LCBMb2dnZXIsIFByb2dyZXNzLCBsaWdodEN5YW47CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKaW1wb3J0ICcuLi9wb3N0X2dlbi5kYXJ0JyBhcyBwb3N0X2dlbjsKCmNsYXNzIF9GYWtlSG9va0NvbnRleHQgZXh0ZW5kcyBGYWtlIGltcGxlbWVudHMgSG9va0NvbnRleHQgewogIF9GYWtlSG9va0NvbnRleHQoe0xvZ2dlcj8gbG9nZ2VyfSkgOiBfbG9nZ2VyID0gbG9nZ2VyID8/IF9Nb2NrTG9nZ2VyKCk7CgogIGZpbmFsIExvZ2dlciBfbG9nZ2VyOwoKICB2YXIgX3ZhcnMgPSA8U3RyaW5nLCBkeW5hbWljPnt9OwoKICBAb3ZlcnJpZGUKICBNYXA8U3RyaW5nLCBkeW5hbWljPiBnZXQgdmFycyA9PiBfdmFyczsKCiAgQG92ZXJyaWRlCiAgc2V0IHZhcnMoTWFwPFN0cmluZywgZHluYW1pYz4gdmFsdWUpID0+IF92YXJzID0gdmFsdWU7CgogIEBvdmVycmlkZQogIExvZ2dlciBnZXQgbG9nZ2VyID0+IF9sb2dnZXI7Cn0KCmNsYXNzIF9Nb2NrTG9nZ2VyIGV4dGVuZHMgTW9jayBpbXBsZW1lbnRzIExvZ2dlciB7fQoKY2xhc3MgX01vY2tQcm9ncmVzcyBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBQcm9ncmVzcyB7fQoKdm9pZCBtYWluKCkgewogIGdyb3VwKCdwb3N0R2VuJywgKCkgewogICAgbGF0ZSBIb29rQ29udGV4dCBjb250ZXh0OwogICAgbGF0ZSBMb2dnZXIgbG9nZ2VyOwoKICAgIGNvbnN0IHByb2Nlc3NJZCA9IDQyOwogICAgZmluYWwgcHJvY2Vzc1Jlc3VsdCA9IFByb2Nlc3NSZXN1bHQoCiAgICAgIHByb2Nlc3NJZCwKICAgICAgRXhpdENvZGUuc3VjY2Vzcy5jb2RlLAogICAgICAnJywKICAgICAgJycsCiAgICApOwoKICAgIHNldFVwKCgpIHsKICAgICAgbG9nZ2VyID0gX01vY2tMb2dnZXIoKTsKICAgICAgY29udGV4dCA9IF9GYWtlSG9va0NvbnRleHQobG9nZ2VyOiBsb2dnZXIpOwoKICAgICAgd2hlbigoKSA9PiBsb2dnZXIucHJvZ3Jlc3MoYW55KCkpKS50aGVuUmV0dXJuKF9Nb2NrUHJvZ3Jlc3MoKSk7CiAgICB9KTsKCiAgICB0ZXN0KCdydW4gY29tcGxldGVzJywgKCkgewogICAgICBleHBlY3QoCiAgICAgICAgRXhpdE92ZXJyaWRlcy5ydW5ab25lZCgKICAgICAgICAgICgpID0+IHBvc3RfZ2VuLnJ1bihfRmFrZUhvb2tDb250ZXh0KGxvZ2dlcjogbG9nZ2VyKSksCiAgICAgICAgICBleGl0OiAoXykge30sCiAgICAgICAgKSwKICAgICAgICBjb21wbGV0ZXMsCiAgICAgICk7CiAgICB9KTsKCiAgICB0ZXN0KCdydW5zIGRhcnQgcHViIGdldCBhbmQgb3V0cHV0cyBuZXh0IHN0ZXBzJywgKCkgYXN5bmMgewogICAgICB2YXIgcHJvY2Vzc1J1bm5lckNhbGxDb3VudCA9IDA7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CgogICAgICBhd2FpdCBwb3N0X2dlbi5wb3N0R2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgcnVuUHJvY2VzczogKAogICAgICAgICAgZXhlY3V0YWJsZSwKICAgICAgICAgIGFyZ3MsIHsKICAgICAgICAgIFN0cmluZz8gd29ya2luZ0RpcmVjdG9yeSwKICAgICAgICAgIGJvb2w/IHJ1bkluU2hlbGwsCiAgICAgICAgfSkgYXN5bmMgewogICAgICAgICAgcHJvY2Vzc1J1bm5lckNhbGxDb3VudCsrOwogICAgICAgICAgZXhwZWN0KGV4ZWN1dGFibGUsIGVxdWFscygnZGFydCcpKTsKICAgICAgICAgIGV4cGVjdChhcmdzLCBlcXVhbHMoWydwdWInLCAnZ2V0J10pKTsKICAgICAgICAgIGV4cGVjdCgKICAgICAgICAgICAgd29ya2luZ0RpcmVjdG9yeSwKICAgICAgICAgICAgZXF1YWxzKHBhdGguam9pbihEaXJlY3RvcnkuY3VycmVudC5wYXRoLCAnYnVpbGQnKSksCiAgICAgICAgICApOwogICAgICAgICAgZXhwZWN0KHJ1bkluU2hlbGwsIGlzVHJ1ZSk7CiAgICAgICAgICByZXR1cm4gcHJvY2Vzc1Jlc3VsdDsKICAgICAgICB9LAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICk7CiAgICAgIGV4cGVjdChwcm9jZXNzUnVubmVyQ2FsbENvdW50LCBlcXVhbHMoMSkpOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgdmVyaWZ5KCgpID0+IGxvZ2dlci5zdWNjZXNzKCdDcmVhdGVkIGEgcHJvZHVjdGlvbiBidWlsZCEnKSkuY2FsbGVkKDEpOwogICAgICB2ZXJpZnkoCiAgICAgICAgKCkgPT4gbG9nZ2VyLmluZm8oJ1N0YXJ0IHRoZSBwcm9kdWN0aW9uIHNlcnZlciBieSBydW5uaW5nOicpLAogICAgICApLmNhbGxlZCgxKTsKICAgICAgdmVyaWZ5KAogICAgICAgICgpID0+IGxvZ2dlci5pbmZvKCcke2xpZ2h0Q3lhbi53cmFwKCdkYXJ0IGJ1aWxkL2Jpbi9zZXJ2ZXIuZGFydCcpfScpLAogICAgICApLmNhbGxlZCgxKTsKICAgICAgdmVyaWZ5TmV2ZXIoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpOwogICAgfSk7CiAgfSk7Cn0K", - "type": "text" + "type": "text", }, { "path": "test/pre_gen_test.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfZ2VuL2RhcnRfZnJvZ19nZW4uZGFydCc7CmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCcKICAgIHNob3cgSG9va0NvbnRleHQsIExvZ2dlciwgUHJvZ3Jlc3MsIGRlZmF1bHRGb3JlZ3JvdW5kLCBsaWdodEN5YW47CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKaW1wb3J0ICcuLi9wcmVfZ2VuLmRhcnQnIGFzIHByZV9nZW47CmltcG9ydCAncHVic3BlY19sb2Nrcy5kYXJ0JzsKCmNsYXNzIF9GYWtlSG9va0NvbnRleHQgZXh0ZW5kcyBGYWtlIGltcGxlbWVudHMgSG9va0NvbnRleHQgewogIF9GYWtlSG9va0NvbnRleHQoe0xvZ2dlcj8gbG9nZ2VyfSkgOiBfbG9nZ2VyID0gbG9nZ2VyID8/IF9Nb2NrTG9nZ2VyKCk7CgogIGZpbmFsIExvZ2dlciBfbG9nZ2VyOwoKICB2YXIgX3ZhcnMgPSA8U3RyaW5nLCBkeW5hbWljPnt9OwoKICBAb3ZlcnJpZGUKICBNYXA8U3RyaW5nLCBkeW5hbWljPiBnZXQgdmFycyA9PiBfdmFyczsKCiAgQG92ZXJyaWRlCiAgc2V0IHZhcnMoTWFwPFN0cmluZywgZHluYW1pYz4gdmFsdWUpID0+IF92YXJzID0gdmFsdWU7CgogIEBvdmVycmlkZQogIExvZ2dlciBnZXQgbG9nZ2VyID0+IF9sb2dnZXI7Cn0KCmNsYXNzIF9Nb2NrTG9nZ2VyIGV4dGVuZHMgTW9jayBpbXBsZW1lbnRzIExvZ2dlciB7fQoKY2xhc3MgX01vY2tQcm9ncmVzcyBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBQcm9ncmVzcyB7fQoKdm9pZCBtYWluKCkgewogIGdyb3VwKCdwcmVHZW4nLCAoKSB7CiAgICBsYXRlIEhvb2tDb250ZXh0IGNvbnRleHQ7CiAgICBsYXRlIExvZ2dlciBsb2dnZXI7CgogICAgRnV0dXJlPFByb2Nlc3NSZXN1bHQ+IHN1Y2Nlc3NSdW5Qcm9jZXNzKAogICAgICBleGVjdXRhYmxlLAogICAgICBhcmdzLCB7CiAgICAgIFN0cmluZz8gd29ya2luZ0RpcmVjdG9yeSwKICAgICAgYm9vbD8gcnVuSW5TaGVsbCwKICAgIH0pID0+CiAgICAgICAgRnV0dXJlLnZhbHVlKFByb2Nlc3NSZXN1bHQoMCwgMCwgJycsICcnKSk7CgogICAgc2V0VXAoKCkgewogICAgICBsb2dnZXIgPSBfTW9ja0xvZ2dlcigpOwogICAgICBjb250ZXh0ID0gX0Zha2VIb29rQ29udGV4dChsb2dnZXI6IGxvZ2dlcikKICAgICAgICAuLnZhcnNbJ2RhcnRWZXJzaW9uJ10gPSAnc3RhYmxlJzsKCiAgICAgIHdoZW4oKCkgPT4gbG9nZ2VyLnByb2dyZXNzKGFueSgpKSkudGhlblJldHVybihfTW9ja1Byb2dyZXNzKCkpOwogICAgfSk7CgogICAgdGVzdCgncnVuIGNvbXBsZXRlcycsICgpIHsKICAgICAgZXhwZWN0KAogICAgICAgIEV4aXRPdmVycmlkZXMucnVuWm9uZWQoCiAgICAgICAgICAoKSA9PiBwcmVfZ2VuLnJ1bihfRmFrZUhvb2tDb250ZXh0KGxvZ2dlcjogbG9nZ2VyKSksCiAgICAgICAgICBleGl0OiAoXykge30sCiAgICAgICAgKSwKICAgICAgICBjb21wbGV0ZXMsCiAgICAgICk7CiAgICB9KTsKCiAgICB0ZXN0KCdleGl0KDEpIGlmIGJ1aWxkUm91dGVDb25maWd1cmF0aW9uIHRocm93cycsICgpIGFzeW5jIHsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgZmluYWwgZXhjZXB0aW9uID0gRXhjZXB0aW9uKCdvb3BzJyk7CiAgICAgIGF3YWl0IHByZV9nZW4ucHJlR2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gdGhyb3cgZXhjZXB0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgICAgdmVyaWZ5KCgpID0+IGxvZ2dlci5lcnIoZXhjZXB0aW9uLnRvU3RyaW5nKCkpKS5jYWxsZWQoMSk7CiAgICB9KTsKCiAgICB0ZXN0KCdleGl0KDEpIGZvciByb3V0ZSBjb25mbGljdHMnLCAoKSBhc3luYyB7CiAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgICAgZGlyZWN0b3JpZXM6IFtdLAogICAgICAgIHJvdXRlczogW10sCiAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgIGVuZHBvaW50czogewogICAgICAgICAgJy8nOiBbCiAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICBuYW1lOiAnaW5kZXgnLAogICAgICAgICAgICAgIHBhdGg6ICdpbmRleC5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy8nLAogICAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgICApLAogICAgICAgICAgXSwKICAgICAgICAgICcvaGVsbG8nOiBbCiAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICBuYW1lOiAnaGVsbG8nLAogICAgICAgICAgICAgIHBhdGg6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy9oZWxsbycsCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICksCiAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICBuYW1lOiAnaGVsbG9faW5kZXgnLAogICAgICAgICAgICAgIHBhdGg6ICdoZWxsby9pbmRleC5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy8nLAogICAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgICApLAogICAgICAgICAgXSwKICAgICAgICB9LAogICAgICApOwoKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICk7CgogICAgICB2ZXJpZnkoCiAgICAgICAgKCkgPT4gbG9nZ2VyLmVycigKICAgICAgICAgICcnJ1JvdXRlIGNvbmZsaWN0IGRldGVjdGVkLiAke2xpZ2h0Q3lhbi53cmFwKCdyb3V0ZXMvaGVsbG8uZGFydCcpfSBhbmQgJHtsaWdodEN5YW4ud3JhcCgncm91dGVzL2hlbGxvL2luZGV4LmRhcnQnKX0gYm90aCByZXNvbHZlIHRvICR7bGlnaHRDeWFuLndyYXAoJy9oZWxsbycpfS4nJycsCiAgICAgICAgKSwKICAgICAgKTsKICAgICAgZXhwZWN0KGV4aXRDYWxscywgZXF1YWxzKFsxXSkpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdCgxKSBmb3Igcm9ndWUgcm91dGVzJywgKCkgYXN5bmMgewogICAgICBjb25zdCBjb25maWd1cmF0aW9uID0gUm91dGVDb25maWd1cmF0aW9uKAogICAgICAgIG1pZGRsZXdhcmU6IFtdLAogICAgICAgIGRpcmVjdG9yaWVzOiBbXSwKICAgICAgICByb3V0ZXM6IFtdLAogICAgICAgIHJvZ3VlUm91dGVzOiBbCiAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgIG5hbWU6ICdoZWxsbycsCiAgICAgICAgICAgIHBhdGg6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgcm91dGU6ICcvaGVsbG8nLAogICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICApLAogICAgICAgIF0sCiAgICAgICAgZW5kcG9pbnRzOiB7fSwKICAgICAgICBpbnZva2VDdXN0b21FbnRyeXBvaW50OiB0cnVlLAogICAgICApOwoKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICk7CgogICAgICB2ZXJpZnkoCiAgICAgICAgKCkgPT4gbG9nZ2VyLmVycigKICAgICAgICAgICcnJ1JvZ3VlIHJvdXRlIGRldGVjdGVkLiR7ZGVmYXVsdEZvcmVncm91bmQud3JhcCgnICcpfVJlbmFtZSAke2xpZ2h0Q3lhbi53cmFwKCdyb3V0ZXMvaGVsbG8uZGFydCcpfSB0byAke2xpZ2h0Q3lhbi53cmFwKCdyb3V0ZXMvaGVsbG8vaW5kZXguZGFydCcpfS4nJycsCiAgICAgICAgKSwKICAgICAgKTsKICAgICAgZXhwZWN0KGV4aXRDYWxscywgZXF1YWxzKFsxXSkpOwogICAgfSk7CgogICAgdGVzdCgKICAgICAgJ3dvcmtzIHdpdGggZXh0ZXJuYWwgZGVwZW5kZW5jaWVzJywKICAgICAgKCkgYXN5bmMgewogICAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgICBtaWRkbGV3YXJlOiBbXSwKICAgICAgICAgIGRpcmVjdG9yaWVzOiBbXSwKICAgICAgICAgIHJvdXRlczogW10sCiAgICAgICAgICByb2d1ZVJvdXRlczogW10sCiAgICAgICAgICBlbmRwb2ludHM6IHt9LAogICAgICAgICk7CgogICAgICAgIGZpbmFsIGRpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgICAgRmlsZShwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLnlhbWwnKSkud3JpdGVBc1N0cmluZ1N5bmMoCiAgICAgICAgICAnJycKbmFtZTogZXhhbXBsZQp2ZXJzaW9uOiAwLjEuMAplbnZpcm9ubWVudDoKICBzZGs6IF4yLjE3LjAKZGVwZW5kZW5jaWVzOgogIG1hc29uOiBhbnkKICBmb286CiAgICBwYXRoOiAuLi8uLi9mb28KZGV2X2RlcGVuZGVuY2llczoKICB0ZXN0OiBhbnkKJycnLAogICAgICAgICk7CiAgICAgICAgRmlsZShwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSkud3JpdGVBc1N0cmluZ1N5bmMoCiAgICAgICAgICBmb29QYXRoLAogICAgICAgICk7CiAgICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgICBhd2FpdCBwcmVfZ2VuLnByZUdlbigKICAgICAgICAgIGNvbnRleHQsCiAgICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICAgIGRpcmVjdG9yeTogZGlyZWN0b3J5LAogICAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICAgICBjb3B5UGF0aDogKF8sIF9fKSBhc3luYyB7fSwKICAgICAgICApOwoKICAgICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgICBkaXJlY3RvcnkuZGVsZXRlKHJlY3Vyc2l2ZTogdHJ1ZSkuaWdub3JlKCk7CiAgICAgIH0sCiAgICApOwoKICAgIHRlc3QoJ3JldGFpbnMgaW52b2tlQ3VzdG9tRW50cnlwb2ludCAodHJ1ZSknLCAoKSBhc3luYyB7CiAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgICAgZGlyZWN0b3JpZXM6IFtdLAogICAgICAgIHJvdXRlczogW10sCiAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgIGVuZHBvaW50czoge30sCiAgICAgICAgaW52b2tlQ3VzdG9tRW50cnlwb2ludDogdHJ1ZSwKICAgICAgKTsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICB2ZXJpZnlOZXZlcigoKSA9PiBsb2dnZXIuZXJyKGFueSgpKSk7CiAgICAgIGV4cGVjdCgKICAgICAgICBjb250ZXh0LnZhcnMsCiAgICAgICAgZXF1YWxzKHsKICAgICAgICAgICdkaXJlY3Rvcmllcyc6IDxSb3V0ZURpcmVjdG9yeT5bXSwKICAgICAgICAgICdyb3V0ZXMnOiA8Um91dGVGaWxlPltdLAogICAgICAgICAgJ21pZGRsZXdhcmUnOiA8TWlkZGxld2FyZUZpbGU+W10sCiAgICAgICAgICAnZ2xvYmFsTWlkZGxld2FyZSc6IGZhbHNlLAogICAgICAgICAgJ3NlcnZlU3RhdGljRmlsZXMnOiBmYWxzZSwKICAgICAgICAgICdpbnZva2VDdXN0b21FbnRyeXBvaW50JzogdHJ1ZSwKICAgICAgICAgICdpbnZva2VDdXN0b21Jbml0JzogZmFsc2UsCiAgICAgICAgICAncGF0aERlcGVuZGVuY2llcyc6IDxTdHJpbmc+W10sCiAgICAgICAgICAnaGFzRXh0ZXJuYWxEZXBlbmRlbmNpZXMnOiBmYWxzZSwKICAgICAgICAgICdkYXJ0VmVyc2lvbic6ICdzdGFibGUnLAogICAgICAgICAgJ2FkZERvY2tlcmZpbGUnOiB0cnVlLAogICAgICAgIH0pLAogICAgICApOwogICAgfSk7CgogICAgdGVzdCgiZG9uJ3QgY3JlYXRlIHRoZSBkb2NrZXJmaWxlIGlmIG9uZSBhbHJlYWR5IGV4aXN0cyBvbiB0aGUgZm9sZGVyLiIsCiAgICAgICAgKCkgYXN5bmMgewogICAgICBjb25zdCBjb25maWd1cmF0aW9uID0gUm91dGVDb25maWd1cmF0aW9uKAogICAgICAgIG1pZGRsZXdhcmU6IFtdLAogICAgICAgIGRpcmVjdG9yaWVzOiBbXSwKICAgICAgICByb3V0ZXM6IFtdLAogICAgICAgIHJvZ3VlUm91dGVzOiBbXSwKICAgICAgICBlbmRwb2ludHM6IHt9LAogICAgICApOwoKICAgICAgZmluYWwgZGlyZWN0b3J5ID0gRGlyZWN0b3J5LnN5c3RlbVRlbXAuY3JlYXRlVGVtcFN5bmMoKTsKICAgICAgRmlsZShwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLnlhbWwnKSkud3JpdGVBc1N0cmluZ1N5bmMoCiAgICAgICAgJycnCm5hbWU6IGV4YW1wbGUKdmVyc2lvbjogMC4xLjAKZW52aXJvbm1lbnQ6CiAgc2RrOiBeMi4xNy4wCmRlcGVuZGVuY2llczoKICBtYXNvbjogYW55CiAgdGVzdDogYW55CicnJywKICAgICAgKTsKCiAgICAgIEZpbGUocGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAncHVic3BlYy5sb2NrJykpLndyaXRlQXNTdHJpbmdTeW5jKAogICAgICAgIG5vUGF0aERlcGVuZGVuY2llcywKICAgICAgKTsKICAgICAgRmlsZShwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdEb2NrZXJmaWxlJykpLndyaXRlQXNTdHJpbmdTeW5jKAogICAgICAgICcnLAogICAgICApOwoKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgZGlyZWN0b3J5OiBkaXJlY3RvcnksCiAgICAgICAgcnVuUHJvY2Vzczogc3VjY2Vzc1J1blByb2Nlc3MsCiAgICAgICk7CgogICAgICBleHBlY3QoCiAgICAgICAgY29udGV4dC52YXJzLAogICAgICAgIGVxdWFscyh7CiAgICAgICAgICAnZGlyZWN0b3JpZXMnOiA8Um91dGVEaXJlY3Rvcnk+W10sCiAgICAgICAgICAncm91dGVzJzogPFJvdXRlRmlsZT5bXSwKICAgICAgICAgICdtaWRkbGV3YXJlJzogPE1pZGRsZXdhcmVGaWxlPltdLAogICAgICAgICAgJ2dsb2JhbE1pZGRsZXdhcmUnOiBmYWxzZSwKICAgICAgICAgICdzZXJ2ZVN0YXRpY0ZpbGVzJzogZmFsc2UsCiAgICAgICAgICAnaW52b2tlQ3VzdG9tRW50cnlwb2ludCc6IGZhbHNlLAogICAgICAgICAgJ2ludm9rZUN1c3RvbUluaXQnOiBmYWxzZSwKICAgICAgICAgICdoYXNFeHRlcm5hbERlcGVuZGVuY2llcyc6IGZhbHNlLAogICAgICAgICAgJ3BhdGhEZXBlbmRlbmNpZXMnOiA8U3RyaW5nPltdLAogICAgICAgICAgJ2RhcnRWZXJzaW9uJzogJ3N0YWJsZScsCiAgICAgICAgICAnYWRkRG9ja2VyZmlsZSc6IGZhbHNlLAogICAgICAgIH0pLAogICAgICApOwogICAgICBkaXJlY3RvcnkuZGVsZXRlKHJlY3Vyc2l2ZTogdHJ1ZSkuaWdub3JlKCk7CiAgICB9KTsKCiAgICB0ZXN0KCdyZXRhaW5zIGludm9rZUN1c3RvbUluaXQgKHRydWUpJywgKCkgYXN5bmMgewogICAgICBjb25zdCBjb25maWd1cmF0aW9uID0gUm91dGVDb25maWd1cmF0aW9uKAogICAgICAgIG1pZGRsZXdhcmU6IFtdLAogICAgICAgIGRpcmVjdG9yaWVzOiBbXSwKICAgICAgICByb3V0ZXM6IFtdLAogICAgICAgIHJvZ3VlUm91dGVzOiBbXSwKICAgICAgICBlbmRwb2ludHM6IHt9LAogICAgICAgIGludm9rZUN1c3RvbUluaXQ6IHRydWUsCiAgICAgICk7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGF3YWl0IHByZV9nZW4ucHJlR2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gY29uZmlndXJhdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICAgIHJ1blByb2Nlc3M6IHN1Y2Nlc3NSdW5Qcm9jZXNzLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgdmVyaWZ5TmV2ZXIoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpOwogICAgICBleHBlY3QoCiAgICAgICAgY29udGV4dC52YXJzLAogICAgICAgIGVxdWFscyh7CiAgICAgICAgICAnZGlyZWN0b3JpZXMnOiA8Um91dGVEaXJlY3Rvcnk+W10sCiAgICAgICAgICAncm91dGVzJzogPFJvdXRlRmlsZT5bXSwKICAgICAgICAgICdtaWRkbGV3YXJlJzogPE1pZGRsZXdhcmVGaWxlPltdLAogICAgICAgICAgJ2dsb2JhbE1pZGRsZXdhcmUnOiBmYWxzZSwKICAgICAgICAgICdzZXJ2ZVN0YXRpY0ZpbGVzJzogZmFsc2UsCiAgICAgICAgICAnaW52b2tlQ3VzdG9tRW50cnlwb2ludCc6IGZhbHNlLAogICAgICAgICAgJ2ludm9rZUN1c3RvbUluaXQnOiB0cnVlLAogICAgICAgICAgJ2hhc0V4dGVybmFsRGVwZW5kZW5jaWVzJzogZmFsc2UsCiAgICAgICAgICAncGF0aERlcGVuZGVuY2llcyc6IDxTdHJpbmc+W10sCiAgICAgICAgICAnZGFydFZlcnNpb24nOiAnc3RhYmxlJywKICAgICAgICAgICdhZGREb2NrZXJmaWxlJzogdHJ1ZSwKICAgICAgICB9KSwKICAgICAgKTsKICAgIH0pOwoKICAgIHRlc3QoCiAgICAgICd1cGRhdGVzIGNvbnRleHQudmFycyB3aGVuIGJ1aWxkUm91dGVDb25maWd1cmF0aW9uIHN1Y2NlZWRzJywKICAgICAgKCkgYXN5bmMgewogICAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgICBnbG9iYWxNaWRkbGV3YXJlOiBNaWRkbGV3YXJlRmlsZSgKICAgICAgICAgICAgbmFtZTogJ21pZGRsZXdhcmUnLAogICAgICAgICAgICBwYXRoOiAnbWlkZGxld2FyZS5kYXJ0JywKICAgICAgICAgICksCiAgICAgICAgICBtaWRkbGV3YXJlOiBbCiAgICAgICAgICAgIE1pZGRsZXdhcmVGaWxlKAogICAgICAgICAgICAgIG5hbWU6ICdoZWxsb19taWRkbGV3YXJlJywKICAgICAgICAgICAgICBwYXRoOiAnaGVsbG8vbWlkZGxld2FyZS5kYXJ0JywKICAgICAgICAgICAgKSwKICAgICAgICAgIF0sCiAgICAgICAgICBkaXJlY3RvcmllczogWwogICAgICAgICAgICBSb3V0ZURpcmVjdG9yeSgKICAgICAgICAgICAgICBuYW1lOiAnXycsCiAgICAgICAgICAgICAgcm91dGU6ICcvJywKICAgICAgICAgICAgICBtaWRkbGV3YXJlOiBbXSwKICAgICAgICAgICAgICBmaWxlczogWwogICAgICAgICAgICAgICAgUm91dGVGaWxlKAogICAgICAgICAgICAgICAgICBuYW1lOiAnaW5kZXgnLAogICAgICAgICAgICAgICAgICBwYXRoOiAnaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgICAgIHJvdXRlOiAnLycsCiAgICAgICAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgICAgIG5hbWU6ICdoZWxsbycsCiAgICAgICAgICAgICAgICAgIHBhdGg6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgICAgICAgcm91dGU6ICcvaGVsbG8nLAogICAgICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICAgICApLAogICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgKSwKICAgICAgICAgIF0sCiAgICAgICAgICByb3V0ZXM6IFsKICAgICAgICAgICAgUm91dGVGaWxlKAogICAgICAgICAgICAgIG5hbWU6ICdpbmRleCcsCiAgICAgICAgICAgICAgcGF0aDogJ2luZGV4LmRhcnQnLAogICAgICAgICAgICAgIHJvdXRlOiAnLycsCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICksCiAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICBuYW1lOiAnaGVsbG8nLAogICAgICAgICAgICAgIHBhdGg6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy9oZWxsbycsCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICksCiAgICAgICAgICBdLAogICAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgICAgZW5kcG9pbnRzOiB7CiAgICAgICAgICAgICcvJzogWwogICAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICAgIG5hbWU6ICdpbmRleCcsCiAgICAgICAgICAgICAgICBwYXRoOiAnaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgICByb3V0ZTogJy8nLAogICAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgICApLAogICAgICAgICAgICBdLAogICAgICAgICAgICAnL2hlbGxvJzogWwogICAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICAgIG5hbWU6ICdoZWxsbycsCiAgICAgICAgICAgICAgICBwYXRoOiAnaGVsbG8uZGFydCcsCiAgICAgICAgICAgICAgICByb3V0ZTogJy9oZWxsbycsCiAgICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgICAgICksCiAgICAgICAgICAgIF0sCiAgICAgICAgICB9LAogICAgICAgICAgc2VydmVTdGF0aWNGaWxlczogdHJ1ZSwKICAgICAgICApOwogICAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgICAgYXdhaXQgcHJlX2dlbi5wcmVHZW4oCiAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gY29uZmlndXJhdGlvbiwKICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICBydW5Qcm9jZXNzOiBzdWNjZXNzUnVuUHJvY2VzcywKICAgICAgICApOwogICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICAgIHZlcmlmeU5ldmVyKCgpID0+IGxvZ2dlci5lcnIoYW55KCkpKTsKICAgICAgICBleHBlY3QoCiAgICAgICAgICBjb250ZXh0LnZhcnMsCiAgICAgICAgICBlcXVhbHMoewogICAgICAgICAgICAnZGlyZWN0b3JpZXMnOiBbCiAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgJ25hbWUnOiAnXycsCiAgICAgICAgICAgICAgICAncm91dGUnOiAnLycsCiAgICAgICAgICAgICAgICAnbWlkZGxld2FyZSc6IDxNYXA8U3RyaW5nLCBkeW5hbWljPj5bXSwKICAgICAgICAgICAgICAgICdmaWxlcyc6IFsKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICduYW1lJzogJ2luZGV4JywKICAgICAgICAgICAgICAgICAgICAncGF0aCc6ICdpbmRleC5kYXJ0JywKICAgICAgICAgICAgICAgICAgICAncm91dGUnOiAnLycsCiAgICAgICAgICAgICAgICAgICAgJ2ZpbGVfcGFyYW1zJzogY29uc3QgPFN0cmluZz5bXSwKICAgICAgICAgICAgICAgICAgICAnd2lsZGNhcmQnOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICduYW1lJzogJ2hlbGxvJywKICAgICAgICAgICAgICAgICAgICAncGF0aCc6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgICAgICAgICAncm91dGUnOiAnL2hlbGxvJywKICAgICAgICAgICAgICAgICAgICAnZmlsZV9wYXJhbXMnOiBjb25zdCA8U3RyaW5nPltdLAogICAgICAgICAgICAgICAgICAgICd3aWxkY2FyZCc6IGZhbHNlLAogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgJ2RpcmVjdG9yeV9wYXJhbXMnOiBjb25zdCA8U3RyaW5nPltdLAogICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgJ3JvdXRlcyc6IFsKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAnbmFtZSc6ICdpbmRleCcsCiAgICAgICAgICAgICAgICAncGF0aCc6ICdpbmRleC5kYXJ0JywKICAgICAgICAgICAgICAgICdyb3V0ZSc6ICcvJywKICAgICAgICAgICAgICAgICdmaWxlX3BhcmFtcyc6IGNvbnN0IDxTdHJpbmc+W10sCiAgICAgICAgICAgICAgICAnd2lsZGNhcmQnOiBmYWxzZSwKICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICduYW1lJzogJ2hlbGxvJywKICAgICAgICAgICAgICAgICdwYXRoJzogJ2hlbGxvLmRhcnQnLAogICAgICAgICAgICAgICAgJ3JvdXRlJzogJy9oZWxsbycsCiAgICAgICAgICAgICAgICAnZmlsZV9wYXJhbXMnOiBjb25zdCA8U3RyaW5nPltdLAogICAgICAgICAgICAgICAgJ3dpbGRjYXJkJzogZmFsc2UsCiAgICAgICAgICAgICAgfQogICAgICAgICAgICBdLAogICAgICAgICAgICAnbWlkZGxld2FyZSc6IFsKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAnbmFtZSc6ICdoZWxsb19taWRkbGV3YXJlJywKICAgICAgICAgICAgICAgICdwYXRoJzogJ2hlbGxvL21pZGRsZXdhcmUuZGFydCcsCiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgXSwKICAgICAgICAgICAgJ2dsb2JhbE1pZGRsZXdhcmUnOiB7CiAgICAgICAgICAgICAgJ25hbWUnOiAnbWlkZGxld2FyZScsCiAgICAgICAgICAgICAgJ3BhdGgnOiAnbWlkZGxld2FyZS5kYXJ0JywKICAgICAgICAgICAgfSwKICAgICAgICAgICAgJ3NlcnZlU3RhdGljRmlsZXMnOiB0cnVlLAogICAgICAgICAgICAnaW52b2tlQ3VzdG9tRW50cnlwb2ludCc6IGZhbHNlLAogICAgICAgICAgICAnaW52b2tlQ3VzdG9tSW5pdCc6IGZhbHNlLAogICAgICAgICAgICAnaGFzRXh0ZXJuYWxEZXBlbmRlbmNpZXMnOiBmYWxzZSwKICAgICAgICAgICAgJ3BhdGhEZXBlbmRlbmNpZXMnOiA8U3RyaW5nPltdLAogICAgICAgICAgICAnZGFydFZlcnNpb24nOiAnc3RhYmxlJywKICAgICAgICAgICAgJ2FkZERvY2tlcmZpbGUnOiB0cnVlLAogICAgICAgICAgfSksCiAgICAgICAgKTsKICAgICAgfSwKICAgICk7CiAgfSk7Cn0K", - "type": "text" + "type": "text", }, { "path": "test/pubspec_locks.dart", "data": "Ly8vIEFuIGFydGlmaWNpYWxseSBjcmFmdGVkIGBwdWJzcGVjLmxvY2tgIGZpbGUgd2l0aDoKLy8vCi8vLyAqIEEgdHJhbnNpdGl2ZSBkZXBlbmRlbmN5LgovLy8gKiBBIGRpcmVjdCBtYWluIHBhdGggZGVwZW5kZW5jeSB0aGF0IGlzIG5vdCBhIGNoaWxkIG9mIHRoZSBwcm9qZWN0Ci8vLyBkaXJlY3RvcnkuCi8vLyAqIEEgZGlyZWN0IG1haW4gcGF0aCBkZXBlbmRlbmN5IHRoYXQgaXMgbm90IGEgY2hpbGQgb2YgdGhlIHByb2plY3QKLy8vIGRpcmVjdG9yeSBhbmQgaGFzIGEgZGlmZmVyZW50IHBhY2thZ2UgbmFtZSB0aGFuIHRoZSBkaXJlY3RvcnkgbmFtZS4KLy8vICogQSBkaXJlY3QgbWFpbiBkZXBlbmRlbmN5IHRoYXQgaXMgaG9zdGVkLgovLy8gKiBBIGRpcmVjdCBkZXYgbWFpbiBkZXBlbmRlbmN5IHRoYXQgaXMgaG9zdGVkLgovLy8gKiBBIGRpcmVjdCBvdmVycmlkZGVuIGRlcGVuZGVuY3kgZnJvbSBnaXQuCmNvbnN0IGZvb1BhdGggPSAnJycKcGFja2FnZXM6CiAgYXJnczoKICAgIGRlcGVuZGVuY3k6IHRyYW5zaXRpdmUKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiBhcmdzCiAgICAgIHNoYTI1NjogZWVmNmM0NmI2MjJlMDQ5NGEzNmM1YTEyZDEwZDc3ZmI0ZTg1NTUwMWE5MWMxYjllZjkzMzkzMjZlNThmMDU5NgogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjIuNC4yIgogIGZvbzoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAiLi4vLi4vZm9vIgogICAgICByZWxhdGl2ZTogdHJ1ZQogICAgc291cmNlOiBwYXRoCiAgICB2ZXJzaW9uOiAiMC4wLjAiCiAgc2Vjb25kX2ZvbzoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAiLi4vLi4vZm9vMiIKICAgICAgcmVsYXRpdmU6IHRydWUKICAgIHNvdXJjZTogcGF0aAogICAgdmVyc2lvbjogIjAuMC4wIgogIGRpcmVjdF9tYWluOgogICAgZGVwZW5kZW5jeTogImRpcmVjdCBtYWluIgogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IGRpcmVjdF9tYWluCiAgICAgIHNoYTI1NjogZmRjOWVhOTA1ZTdjNjkwZmUzOWQyZjk5NDZiN2FlYWQ4NmZkOTc2ZjhlZGY5N2QyNTIxYTY1ZDI2MGJiZjUwOQogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjAuMS4wLWRldi41MCIKICB0ZXN0OgogICAgZGVwZW5kZW5jeTogImRpcmVjdCBkZXYiCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogdGVzdAogICAgICBzaGEyNTY6ICI5YjBkZDhlMzZhZjRhNWIxNTY5MDI5OTQ5ZDUwYTUyY2IyYTJhMmZkYWEyMGNlYmI5NmU2NjAzYjlhZTI0MWY5IgogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjEuMjQuNiIKICBkaXJlY3Rfb3ZlcnJpZGRlbjoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3Qgb3ZlcnJpZGRlbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAicGFja2FnZXMvbWFzb24iCiAgICAgIHJlZjogIjcyYzMwNmE4ZDhhYmYzMDZiNWQwMjRmOTVhYWMyOWJhNWZkOTY1NzciCiAgICAgIHJlc29sdmVkLXJlZjogIjcyYzMwNmE4ZDhhYmYzMDZiNWQwMjRmOTVhYWMyOWJhNWZkOTY1NzciCiAgICAgIHVybDogImh0dHBzOi8vZ2l0aHViLmNvbS9hbGVzdGlhZ28vbWFzb24iCiAgICBzb3VyY2U6IGdpdAogICAgdmVyc2lvbjogIjAuMS4wLWRldi41MiIKc2RrczoKICBkYXJ0OiAiPj0zLjAuMCA8NC4wLjAiCicnJzsKCi8vLyBBbiBhcnRpZmljaWFsbHkgY3JhZnRlZCBgcHVic3BlYy5sb2NrYCBmaWxlIHdpdGg6Ci8vLwovLy8gKiBBIHRyYW5zaXRpdmUgZGVwZW5kZW5jeS4KLy8vICogQSBkaXJlY3QgbWFpbiBwYXRoIGRlcGVuZGVuY3kgdGhhdCBpcyBub3QgYSBjaGlsZCBvZiB0aGUgcHJvamVjdAovLy8gZGlyZWN0b3J5LgovLy8gKiBBIGRpcmVjdCBtYWluIHBhdGggZGVwZW5kZW5jeSB0aGF0IGlzIGEgY2hpbGQgb2YgdGhlIHByb2plY3QgZGlyZWN0b3J5LgovLy8gKiBBIGRpcmVjdCBtYWluIGRlcGVuZGVuY3kgdGhhdCBpcyBob3N0ZWQuCi8vLyAqIEEgZGlyZWN0IGRldiBtYWluIGRlcGVuZGVuY3kgdGhhdCBpcyBob3N0ZWQuCmNvbnN0IGZvb1BhdGhXaXRoSW50ZXJuYWxEZXBlbmRlbmN5ID0gJycnCnBhY2thZ2VzOgogIGFyZ3M6CiAgICBkZXBlbmRlbmN5OiB0cmFuc2l0aXZlCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogYXJncwogICAgICBzaGEyNTY6IGVlZjZjNDZiNjIyZTA0OTRhMzZjNWExMmQxMGQ3N2ZiNGU4NTU1MDFhOTFjMWI5ZWY5MzM5MzI2ZTU4ZjA1OTYKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIyLjQuMiIKICBmb286CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IG1haW4iCiAgICBkZXNjcmlwdGlvbjoKICAgICAgcGF0aDogIi4uLy4uL2ZvbyIKICAgICAgcmVsYXRpdmU6IHRydWUKICAgIHNvdXJjZTogcGF0aAogICAgdmVyc2lvbjogIjAuMC4wIgogIGJhcjoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAicGFja2FnZXMvYmFyIgogICAgICByZWxhdGl2ZTogdHJ1ZQogICAgc291cmNlOiBwYXRoCiAgICB2ZXJzaW9uOiAiMC4wLjAiCiAgbWFzb246CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IG1haW4iCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogbWFzb24KICAgICAgc2hhMjU2OiBmZGM5ZWE5MDVlN2M2OTBmZTM5ZDJmOTk0NmI3YWVhZDg2ZmQ5NzZmOGVkZjk3ZDI1MjFhNjVkMjYwYmJmNTA5CiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMC4xLjAtZGV2LjUwIgogIHRlc3Q6CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IGRldiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiB0ZXN0CiAgICAgIHNoYTI1NjogIjliMGRkOGUzNmFmNGE1YjE1NjkwMjk5NDlkNTBhNTJjYjJhMmEyZmRhYTIwY2ViYjk2ZTY2MDNiOWFlMjQxZjkiCiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMS4yNC42IgpzZGtzOgogIGRhcnQ6ICI+PTMuMC4wIDw0LjAuMCIKJycnOwoKLy8vIEFuIGFydGlmaWNpYWxseSBjcmFmdGVkIGBwdWJzcGVjLmxvY2tgIGZpbGUgd2l0aDoKLy8vCi8vLyAqIEEgdHJhbnNpdGl2ZSBkZXBlbmRlbmN5LgovLy8gKiBBIGRpcmVjdCBtYWluIGRlcGVuZGVuY3kgdGhhdCBpcyBob3N0ZWQuCi8vLyAqIEEgZGlyZWN0IGRldiBtYWluIGRlcGVuZGVuY3kgdGhhdCBpcyBob3N0ZWQuCmNvbnN0IG5vUGF0aERlcGVuZGVuY2llcyA9ICcnJwpwYWNrYWdlczoKICBhcmdzOgogICAgZGVwZW5kZW5jeTogdHJhbnNpdGl2ZQogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IGFyZ3MKICAgICAgc2hhMjU2OiBlZWY2YzQ2YjYyMmUwNDk0YTM2YzVhMTJkMTBkNzdmYjRlODU1NTAxYTkxYzFiOWVmOTMzOTMyNmU1OGYwNTk2CiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMi40LjIiCiAgbWFzb246CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IG1haW4iCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogbWFzb24KICAgICAgc2hhMjU2OiBmZGM5ZWE5MDVlN2M2OTBmZTM5ZDJmOTk0NmI3YWVhZDg2ZmQ5NzZmOGVkZjk3ZDI1MjFhNjVkMjYwYmJmNTA5CiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMC4xLjAtZGV2LjUwIgogIHRlc3Q6CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IGRldiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiB0ZXN0CiAgICAgIHNoYTI1NjogIjliMGRkOGUzNmFmNGE1YjE1NjkwMjk5NDlkNTBhNTJjYjJhMmEyZmRhYTIwY2ViYjk2ZTY2MDNiOWFlMjQxZjkiCiAgICAgIHVybDogImh0dHBzOi8vcHViLmRldiIKICAgIHNvdXJjZTogaG9zdGVkCiAgICB2ZXJzaW9uOiAiMS4yNC42IgpzZGtzOgogIGRhcnQ6ICI+PTMuMC4wIDw0LjAuMCIKJycnOwo=", - "type": "text" + "type": "text", }, { "path": "test/src/create_bundle_test.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCcgaGlkZSBjcmVhdGVCdW5kbGU7CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKY2xhc3MgX01vY2tMb2dnZXIgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgTG9nZ2VyIHt9CgpjbGFzcyBfTW9ja1Byb2dyZXNzIGV4dGVuZHMgTW9jayBpbXBsZW1lbnRzIFByb2dyZXNzIHt9CgpjbGFzcyBfRmFrZUhvb2tDb250ZXh0IGV4dGVuZHMgRmFrZSBpbXBsZW1lbnRzIEhvb2tDb250ZXh0IHsKICBfRmFrZUhvb2tDb250ZXh0KHtMb2dnZXI/IGxvZ2dlcn0pIDogX2xvZ2dlciA9IGxvZ2dlciA/PyBfTW9ja0xvZ2dlcigpOwoKICBmaW5hbCBMb2dnZXIgX2xvZ2dlcjsKCiAgdmFyIF92YXJzID0gPFN0cmluZywgZHluYW1pYz57fTsKCiAgQG92ZXJyaWRlCiAgTWFwPFN0cmluZywgZHluYW1pYz4gZ2V0IHZhcnMgPT4gX3ZhcnM7CgogIEBvdmVycmlkZQogIHNldCB2YXJzKE1hcDxTdHJpbmcsIGR5bmFtaWM+IHZhbHVlKSA9PiBfdmFycyA9IHZhbHVlOwoKICBAb3ZlcnJpZGUKICBMb2dnZXIgZ2V0IGxvZ2dlciA9PiBfbG9nZ2VyOwp9Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NyZWF0ZUJ1bmRsZScsICgpIHsKICAgIGxhdGUgSG9va0NvbnRleHQgY29udGV4dDsKICAgIGxhdGUgTG9nZ2VyIGxvZ2dlcjsKCiAgICBzZXRVcCgoKSB7CiAgICAgIGxvZ2dlciA9IF9Nb2NrTG9nZ2VyKCk7CiAgICAgIGNvbnRleHQgPSBfRmFrZUhvb2tDb250ZXh0KGxvZ2dlcjogbG9nZ2VyKTsKCiAgICAgIHdoZW4oKCkgPT4gbG9nZ2VyLnByb2dyZXNzKGFueSgpKSkudGhlblJldHVybihfTW9ja1Byb2dyZXNzKCkpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdCgxKSBpZiBidW5kbGluZyB0aHJvd3MnLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGF3YWl0IGNyZWF0ZUJ1bmRsZSgKICAgICAgICBjb250ZXh0OiBjb250ZXh0LAogICAgICAgIHByb2plY3REaXJlY3Rvcnk6IERpcmVjdG9yeSgnL2ludmFsaWQvZGlyJyksCiAgICAgICAgYnVpbGREaXJlY3Rvcnk6IERpcmVjdG9yeSgnL2ludmFsaWQvZGlyL2J1aWxkJyksCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgKTsKICAgICAgZXhwZWN0KGV4aXRDYWxscywgZXF1YWxzKFsxXSkpOwogICAgICB2ZXJpZnkoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpLmNhbGxlZCgxKTsKICAgIH0pOwoKICAgIHRlc3QoJ2RvZXMgbm90IHRocm93IHdoZW4gYnVuZGxpbmcgc3VjY2VlZHMnLCAoKSBhc3luYyB7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGZpbmFsIHByb2plY3REaXJlY3RvcnkgPSBEaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygpOwogICAgICBmaW5hbCBkb3REYXJ0RnJvZ0RpciA9CiAgICAgICAgICBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJy5kYXJ0X2Zyb2cnKSkKICAgICAgICAgICAgLi5jcmVhdGVTeW5jKCk7CiAgICAgIGZpbmFsIGJ1aWxkRGlyZWN0b3J5ID0KICAgICAgICAgIERpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAnYnVpbGQnKSkuLmNyZWF0ZVN5bmMoKTsKICAgICAgZmluYWwgb2xkQnVpbGRBcnRpZmFjdCA9CiAgICAgICAgICBGaWxlKHBhdGguam9pbihidWlsZERpcmVjdG9yeS5wYXRoLCAnYXJ0aWZhY3QudHh0JykpLi5jcmVhdGVTeW5jKCk7CgogICAgICBhd2FpdCBjcmVhdGVCdW5kbGUoCiAgICAgICAgY29udGV4dDogY29udGV4dCwKICAgICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBidWlsZERpcmVjdG9yeSwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwoKICAgICAgZXhwZWN0KGRvdERhcnRGcm9nRGlyLmV4aXN0c1N5bmMoKSwgaXNGYWxzZSk7CiAgICAgIGV4cGVjdChidWlsZERpcmVjdG9yeS5leGlzdHNTeW5jKCksIGlzVHJ1ZSk7CiAgICAgIGV4cGVjdChvbGRCdWlsZEFydGlmYWN0LmV4aXN0c1N5bmMoKSwgaXNGYWxzZSk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICB2ZXJpZnlOZXZlcigoKSA9PiBsb2dnZXIuZXJyKGFueSgpKSk7CiAgICB9KTsKICB9KTsKfQo=", - "type": "text" + "type": "text", }, { "path": "test/src/create_external_packages_folder_test.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7CgppbXBvcnQgJy4uL3B1YnNwZWNfbG9ja3MuZGFydCc7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2NyZWF0ZUV4dGVybmFsUGFja2FnZXNGb2xkZXInLCAoKSB7CiAgICB0ZXN0KAogICAgICAnYnVuZGxlcyBleHRlcm5hbCBkZXBlbmRlbmNpZXMgd2l0aCBleHRlcm5hbCBkZXBlbmRlbmNpZXMnLAogICAgICAoKSBhc3luYyB7CiAgICAgICAgZmluYWwgcHJvamVjdERpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgICAgRmlsZShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAncHVic3BlYy5sb2NrJykpCiAgICAgICAgICAgIC53cml0ZUFzU3RyaW5nU3luYyhmb29QYXRoKTsKICAgICAgICBmaW5hbCBjb3B5Q2FsbHMgPSA8U3RyaW5nPltdOwoKICAgICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeSwKICAgICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJykpLAogICAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgewogICAgICAgICAgICBjb3B5Q2FsbHMuYWRkKCckZnJvbSAtPiAkdG8nKTsKICAgICAgICAgICAgcmV0dXJuIEZ1dHVyZS52YWx1ZSgpOwogICAgICAgICAgfSwKICAgICAgICApOwoKICAgICAgICBmaW5hbCBmb29QYWNrYWdlRGlyZWN0b3J5ID0KICAgICAgICAgICAgcGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJy4uLy4uL2ZvbycpOwogICAgICAgIGZpbmFsIGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQgPSBwYXRoLmpvaW4oCiAgICAgICAgICBwcm9qZWN0RGlyZWN0b3J5LnBhdGgsCiAgICAgICAgICAnYnVpbGQnLAogICAgICAgICAgJy5kYXJ0X2Zyb2dfcGF0aF9kZXBlbmRlbmNpZXMnLAogICAgICAgICAgJ2ZvbycsCiAgICAgICAgKTsKCiAgICAgICAgZmluYWwgc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeSA9CiAgICAgICAgICAgIHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICcuLi8uLi9mb28yJyk7CiAgICAgICAgZmluYWwgc2Vjb25kRm9vUGFja2FnZURpcmVjdG9yeVRhcmdldCA9IHBhdGguam9pbigKICAgICAgICAgIHByb2plY3REaXJlY3RvcnkucGF0aCwKICAgICAgICAgICdidWlsZCcsCiAgICAgICAgICAnLmRhcnRfZnJvZ19wYXRoX2RlcGVuZGVuY2llcycsCiAgICAgICAgICAnc2Vjb25kX2ZvbycsCiAgICAgICAgKTsKICAgICAgICBleHBlY3QoY29weUNhbGxzLCBbCiAgICAgICAgICAnJGZvb1BhY2thZ2VEaXJlY3RvcnkgLT4gJGZvb1BhY2thZ2VEaXJlY3RvcnlUYXJnZXQnLAogICAgICAgICAgJyRzZWNvbmRGb29QYWNrYWdlRGlyZWN0b3J5IC0+ICRzZWNvbmRGb29QYWNrYWdlRGlyZWN0b3J5VGFyZ2V0JywKICAgICAgICBdKTsKICAgICAgfSwKICAgICk7CgogICAgdGVzdCgKICAgICAgImRvbid0IGJ1bmRsZSBpbnRlcm5hbCBwYXRoIGRlcGVuZGVuY2llcyIsCiAgICAgICgpIGFzeW5jIHsKICAgICAgICBmaW5hbCBwcm9qZWN0RGlyZWN0b3J5ID0gRGlyZWN0b3J5LnN5c3RlbVRlbXAuY3JlYXRlVGVtcFN5bmMoKTsKICAgICAgICBGaWxlKHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSkKICAgICAgICAgICAgLndyaXRlQXNTdHJpbmdTeW5jKGZvb1BhdGhXaXRoSW50ZXJuYWxEZXBlbmRlbmN5KTsKICAgICAgICBmaW5hbCBjb3B5Q2FsbHMgPSA8U3RyaW5nPltdOwoKICAgICAgICBhd2FpdCBjcmVhdGVFeHRlcm5hbFBhY2thZ2VzRm9sZGVyKAogICAgICAgICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeSwKICAgICAgICAgIGJ1aWxkRGlyZWN0b3J5OiBEaXJlY3RvcnkocGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJ2J1aWxkJykpLAogICAgICAgICAgY29weVBhdGg6IChmcm9tLCB0bykgewogICAgICAgICAgICBjb3B5Q2FsbHMuYWRkKCckZnJvbSAtPiAkdG8nKTsKICAgICAgICAgICAgcmV0dXJuIEZ1dHVyZS52YWx1ZSgpOwogICAgICAgICAgfSwKICAgICAgICApOwoKICAgICAgICBmaW5hbCBmcm9tID0gcGF0aC5qb2luKHByb2plY3REaXJlY3RvcnkucGF0aCwgJy4uLy4uL2ZvbycpOwogICAgICAgIGZpbmFsIHRvID0gcGF0aC5qb2luKAogICAgICAgICAgcHJvamVjdERpcmVjdG9yeS5wYXRoLAogICAgICAgICAgJ2J1aWxkJywKICAgICAgICAgICcuZGFydF9mcm9nX3BhdGhfZGVwZW5kZW5jaWVzJywKICAgICAgICAgICdmb28nLAogICAgICAgICk7CiAgICAgICAgZXhwZWN0KGNvcHlDYWxscywgWyckZnJvbSAtPiAkdG8nXSk7CiAgICAgIH0sCiAgICApOwogIH0pOwp9Cg==", - "type": "text" + "type": "text", }, { "path": "test/src/dart_pub_get_test.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bWFzb24vbWFzb24uZGFydCc7CmltcG9ydCAncGFja2FnZTptb2NrdGFpbC9tb2NrdGFpbC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnRlc3QvdGVzdC5kYXJ0JzsKCmNsYXNzIF9GYWtlSG9va0NvbnRleHQgZXh0ZW5kcyBGYWtlIGltcGxlbWVudHMgSG9va0NvbnRleHQgewogIF9GYWtlSG9va0NvbnRleHQoe0xvZ2dlcj8gbG9nZ2VyfSkgOiBfbG9nZ2VyID0gbG9nZ2VyID8/IF9Nb2NrTG9nZ2VyKCk7CgogIGZpbmFsIExvZ2dlciBfbG9nZ2VyOwoKICB2YXIgX3ZhcnMgPSA8U3RyaW5nLCBkeW5hbWljPnt9OwoKICBAb3ZlcnJpZGUKICBNYXA8U3RyaW5nLCBkeW5hbWljPiBnZXQgdmFycyA9PiBfdmFyczsKCiAgQG92ZXJyaWRlCiAgc2V0IHZhcnMoTWFwPFN0cmluZywgZHluYW1pYz4gdmFsdWUpID0+IF92YXJzID0gdmFsdWU7CgogIEBvdmVycmlkZQogIExvZ2dlciBnZXQgbG9nZ2VyID0+IF9sb2dnZXI7Cn0KCmNsYXNzIF9Nb2NrTG9nZ2VyIGV4dGVuZHMgTW9jayBpbXBsZW1lbnRzIExvZ2dlciB7fQoKY2xhc3MgX01vY2tQcm9ncmVzcyBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBQcm9ncmVzcyB7fQoKdm9pZCBtYWluKCkgewogIGdyb3VwKCdkYXJ0UHViR2V0JywgKCkgewogICAgbGF0ZSBIb29rQ29udGV4dCBjb250ZXh0OwogICAgbGF0ZSBMb2dnZXIgbG9nZ2VyOwoKICAgIGNvbnN0IHByb2Nlc3NJZCA9IDQyOwogICAgZmluYWwgcHJvY2Vzc1Jlc3VsdCA9IFByb2Nlc3NSZXN1bHQoCiAgICAgIHByb2Nlc3NJZCwKICAgICAgRXhpdENvZGUuc3VjY2Vzcy5jb2RlLAogICAgICAnJywKICAgICAgJycsCiAgICApOwoKICAgIHNldFVwKCgpIHsKICAgICAgbG9nZ2VyID0gX01vY2tMb2dnZXIoKTsKICAgICAgY29udGV4dCA9IF9GYWtlSG9va0NvbnRleHQobG9nZ2VyOiBsb2dnZXIpOwoKICAgICAgd2hlbigoKSA9PiBsb2dnZXIucHJvZ3Jlc3MoYW55KCkpKS50aGVuUmV0dXJuKF9Nb2NrUHJvZ3Jlc3MoKSk7CiAgICB9KTsKCiAgICB0ZXN0KCdjb21wbGV0ZXMgd2hlbiBwcm9jZXNzIHN1Y2NlZWRzJywgKCkgYXN5bmMgewogICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwoKICAgICAgYXdhaXQgZGFydFB1YkdldCgKICAgICAgICBjb250ZXh0LAogICAgICAgIHdvcmtpbmdEaXJlY3Rvcnk6ICcuJywKICAgICAgICBydW5Qcm9jZXNzOiAoCiAgICAgICAgICBleGVjdXRhYmxlLAogICAgICAgICAgYXJncywgewogICAgICAgICAgU3RyaW5nPyB3b3JraW5nRGlyZWN0b3J5LAogICAgICAgICAgYm9vbD8gcnVuSW5TaGVsbCwKICAgICAgICB9KSBhc3luYyB7CiAgICAgICAgICBleHBlY3QoZXhlY3V0YWJsZSwgZXF1YWxzKCdkYXJ0JykpOwogICAgICAgICAgZXhwZWN0KGFyZ3MsIGVxdWFscyhbJ3B1YicsICdnZXQnXSkpOwogICAgICAgICAgZXhwZWN0KHdvcmtpbmdEaXJlY3RvcnksIGVxdWFscygnLicpKTsKICAgICAgICAgIGV4cGVjdChydW5JblNoZWxsLCBpc1RydWUpOwogICAgICAgICAgcmV0dXJuIHByb2Nlc3NSZXN1bHQ7CiAgICAgICAgfSwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgdmVyaWZ5TmV2ZXIoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdHMgd2hlbiBwcm9jZXNzIGZhaWxzJywgKCkgYXN5bmMgewogICAgICBjb25zdCBlcnJvciA9ICdvb3BzIHNvbWV0aGluZyB3ZW50IHdyb25nJzsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKCiAgICAgIGZpbmFsIHByb2Nlc3NSZXN1bHQgPSBQcm9jZXNzUmVzdWx0KAogICAgICAgIHByb2Nlc3NJZCwKICAgICAgICBFeGl0Q29kZS5zb2Z0d2FyZS5jb2RlLAogICAgICAgICcnLAogICAgICAgIGVycm9yLAogICAgICApOwoKICAgICAgYXdhaXQgZGFydFB1YkdldCgKICAgICAgICBjb250ZXh0LAogICAgICAgIHdvcmtpbmdEaXJlY3Rvcnk6ICcuJywKICAgICAgICBydW5Qcm9jZXNzOiAoCiAgICAgICAgICBleGVjdXRhYmxlLAogICAgICAgICAgYXJncywgewogICAgICAgICAgU3RyaW5nPyB3b3JraW5nRGlyZWN0b3J5LAogICAgICAgICAgYm9vbD8gcnVuSW5TaGVsbCwKICAgICAgICB9KSBhc3luYyB7CiAgICAgICAgICByZXR1cm4gcHJvY2Vzc1Jlc3VsdDsKICAgICAgICB9LAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbRXhpdENvZGUuc29mdHdhcmUuY29kZV0pKTsKICAgICAgdmVyaWZ5KCgpID0+IGxvZ2dlci5lcnIoZXJyb3IpKS5jYWxsZWQoMSk7CiAgICB9KTsKCiAgICB0ZXN0KCdleGl0cyB3aGVuIFByb2Nlc3NFeGNlcHRpb24gb2NjdXJzJywgKCkgYXN5bmMgewogICAgICBjb25zdCBlcnJvciA9ICdvb3BzIHNvbWV0aGluZyB3ZW50IHdyb25nJzsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgZGFydFB1YkdldCgKICAgICAgICBjb250ZXh0LAogICAgICAgIHdvcmtpbmdEaXJlY3Rvcnk6ICcuJywKICAgICAgICBydW5Qcm9jZXNzOiAoCiAgICAgICAgICBleGVjdXRhYmxlLAogICAgICAgICAgYXJncywgewogICAgICAgICAgU3RyaW5nPyB3b3JraW5nRGlyZWN0b3J5LAogICAgICAgICAgYm9vbD8gcnVuSW5TaGVsbCwKICAgICAgICB9KSBhc3luYyB7CiAgICAgICAgICB0aHJvdyBQcm9jZXNzRXhjZXB0aW9uKAogICAgICAgICAgICAnZGFydCcsCiAgICAgICAgICAgIFsncHViJywgJ2dldCddLAogICAgICAgICAgICBlcnJvciwKICAgICAgICAgICAgRXhpdENvZGUuc29mdHdhcmUuY29kZSwKICAgICAgICAgICk7CiAgICAgICAgfSwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBlcXVhbHMoW0V4aXRDb2RlLnNvZnR3YXJlLmNvZGVdKSk7CiAgICAgIHZlcmlmeSgoKSA9PiBsb2dnZXIuZXJyKGVycm9yKSkuY2FsbGVkKDEpOwogICAgfSk7CiAgfSk7Cn0K", - "type": "text" + "type": "text", }, { "path": "test/src/exit_overrides_test.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKdm9pZCBtYWluKCkgewogIGdyb3VwKCdFeGl0T3ZlcnJpZGVzJywgKCkgewogICAgZ3JvdXAoJ3J1blpvbmVkJywgKCkgewogICAgICB0ZXN0KCd1c2VzIGRlZmF1bHQgZXhpdCB3aGVuIG5vdCBzcGVjaWZpZWQnLCAoKSB7CiAgICAgICAgRXhpdE92ZXJyaWRlcy5ydW5ab25lZCgoKSB7CiAgICAgICAgICBmaW5hbCBvdmVycmlkZXMgPSBFeGl0T3ZlcnJpZGVzLmN1cnJlbnQ7CiAgICAgICAgICBleHBlY3Qob3ZlcnJpZGVzIS5leGl0LCBlcXVhbHMoZXhpdCkpOwogICAgICAgIH0pOwogICAgICB9KTsKCiAgICAgIHRlc3QoJ3VzZXMgY3VzdG9tIGV4aXQgd2hlbiBzcGVjaWZpZWQnLCAoKSB7CiAgICAgICAgRXhpdE92ZXJyaWRlcy5ydW5ab25lZCgKICAgICAgICAgICgpIHsKICAgICAgICAgICAgZmluYWwgb3ZlcnJpZGVzID0gRXhpdE92ZXJyaWRlcy5jdXJyZW50OwogICAgICAgICAgICBleHBlY3Qob3ZlcnJpZGVzIS5leGl0LCBpc05vdChlcXVhbHMoZXhpdCkpKTsKICAgICAgICAgIH0sCiAgICAgICAgICBleGl0OiAoXykge30sCiAgICAgICAgKTsKICAgICAgfSk7CiAgICB9KTsKICB9KTsKfQo=", - "type": "text" + "type": "text", }, { "path": "test/src/get_internal_path_dependencies_test.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXJfaG9va3MvZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ2dldFBhdGhEZXBlbmRlbmNpZXMnLCAoKSB7CiAgICB0ZXN0KCdyZXR1cm5zIG5vdGhpbmcgd2hlbiB0aGVyZSBhcmUgbm8gcGF0aCBkZXBlbmRlbmNpZXMnLCAoKSB7CiAgICAgIGZpbmFsIGRpcmVjdG9yeSA9IERpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKCk7CiAgICAgIEZpbGUocGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAncHVic3BlYy5sb2NrJykpLndyaXRlQXNTdHJpbmdTeW5jKAogICAgICAgICcnJwpwYWNrYWdlczoKICB0ZXN0OgogICAgZGVwZW5kZW5jeTogdHJhbnNpdGl2ZQogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IGFuYWx5emVyCiAgICAgIHNoYTI1NjogZjg1NTY2ZWM3YjNkMjVjYmVhNjBmN2RkNGYxNTdjNTAyNWYyZjE5MjMzY2E0ZmVlZWQzM2I2MTZjNzhhMjZhMwogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjYuMS4wIgogIG1hc29uOgogICAgZGVwZW5kZW5jeTogdHJhbnNpdGl2ZQogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IGFuYWx5emVyCiAgICAgIHNoYTI1NjogZjg1NTY2ZWM3YjNkMjVjYmVhNjBmN2RkNGYxNTdjNTAyNWYyZjE5MjMzY2E0ZmVlZWQzM2I2MTZjNzhhMjZhMwogICAgICB1cmw6ICJodHRwczovL3B1Yi5kZXYiCiAgICBzb3VyY2U6IGhvc3RlZAogICAgdmVyc2lvbjogIjYuMS4wIgonJycsCiAgICAgICk7CiAgICAgIGV4cGVjdChnZXRJbnRlcm5hbFBhdGhEZXBlbmRlbmNpZXMoZGlyZWN0b3J5KSwgY29tcGxldGlvbihpc0VtcHR5KSk7CiAgICAgIGRpcmVjdG9yeS5kZWxldGUocmVjdXJzaXZlOiB0cnVlKS5pZ25vcmUoKTsKICAgIH0pOwoKICAgIHRlc3QoJ3JldHVybnMgY29ycmVjdCBwYXRoIGRlcGVuZGVuY2llcycsICgpIHsKICAgICAgZmluYWwgZGlyZWN0b3J5ID0gRGlyZWN0b3J5LnN5c3RlbVRlbXAuY3JlYXRlVGVtcFN5bmMoKTsKICAgICAgRmlsZShwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdwdWJzcGVjLmxvY2snKSkud3JpdGVBc1N0cmluZ1N5bmMoCiAgICAgICAgJycnCnBhY2thZ2VzOgogIGRhcnRfZnJvZzoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBwYXRoOiAicGF0aC90by9kYXJ0X2Zyb2ciCiAgICAgIHJlbGF0aXZlOiB0cnVlCiAgICBzb3VyY2U6IHBhdGgKICAgIHZlcnNpb246ICIwLjAuMCIKICBkYXJ0X2Zyb2dfZ2VuOgogICAgZGVwZW5kZW5jeTogImRpcmVjdCBtYWluIgogICAgZGVzY3JpcHRpb246CiAgICAgIHBhdGg6ICJwYXRoL3RvL2RhcnRfZnJvZ19nZW4iCiAgICAgIHJlbGF0aXZlOiB0cnVlCiAgICBzb3VyY2U6IHBhdGgKICAgIHZlcnNpb246ICIwLjAuMCIKJycnLAogICAgICApOwogICAgICBleHBlY3QoCiAgICAgICAgZ2V0SW50ZXJuYWxQYXRoRGVwZW5kZW5jaWVzKGRpcmVjdG9yeSksCiAgICAgICAgY29tcGxldGlvbigKICAgICAgICAgIGVxdWFscyhbJ3BhdGgvdG8vZGFydF9mcm9nJywgJ3BhdGgvdG8vZGFydF9mcm9nX2dlbiddKSwKICAgICAgICApLAogICAgICApOwogICAgICBkaXJlY3RvcnkuZGVsZXRlKHJlY3Vyc2l2ZTogdHJ1ZSkuaWdub3JlKCk7CiAgICB9KTsKICB9KTsKfQo=", - "type": "text" + "type": "text", }, { "path": "test/src/pubspec_lock/pubspec_lock_test.dart", "data": "Ly8gaWdub3JpbmcgZm9yIHRlc3RpbmcgcHVycG9zZXMKLy8gaWdub3JlX2Zvcl9maWxlOiBwcmVmZXJfY29uc3RfY29uc3RydWN0b3JzCgppbXBvcnQgJ3BhY2thZ2U6ZGFydF9mcm9nX3Byb2Rfc2VydmVyX2hvb2tzL3NyYy9wdWJzcGVjX2xvY2svcHVic3BlY19sb2NrLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6eWFtbC95YW1sLmRhcnQnOwoKdm9pZCBtYWluKCkgewogIGdyb3VwKCckUHVic3BlY0xvY2snLCAoKSB7CiAgICBncm91cCgnZnJvbVN0cmluZycsICgpIHsKICAgICAgdGVzdCgncGFyc2VzIGNvcnJlY3RseScsICgpIHsKICAgICAgICBmaW5hbCBwdWJzcGVjTG9jayA9IFB1YnNwZWNMb2NrLmZyb21TdHJpbmcoX3B1YnNwZWNMb2NrQ29udGVudCk7CgogICAgICAgIGV4cGVjdCgKICAgICAgICAgIHB1YnNwZWNMb2NrLnBhY2thZ2VzLAogICAgICAgICAgZXF1YWxzKAogICAgICAgICAgICBjb25zdCBbCiAgICAgICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlKAogICAgICAgICAgICAgICAgbmFtZTogJ3ZlcnlfZ29vZF90ZXN0X3J1bm5lcicsCiAgICAgICAgICAgICAgICB0eXBlOiBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5kaXJlY3RNYWluLAogICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlKAogICAgICAgICAgICAgICAgbmFtZTogJ3ZlcnlfZ29vZF9hbmFseXNpcycsCiAgICAgICAgICAgICAgICB0eXBlOiBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5kaXJlY3REZXYsCiAgICAgICAgICAgICAgKSwKICAgICAgICAgICAgICBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgICAgICAgICBuYW1lOiAneWFtbCcsCiAgICAgICAgICAgICAgICB0eXBlOiBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS50cmFuc2l0aXZlLAogICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlKAogICAgICAgICAgICAgICAgbmFtZTogJ3BhdGgnLAogICAgICAgICAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0T3ZlcnJpZGRlbiwKICAgICAgICAgICAgICApLAogICAgICAgICAgICAgIFB1YnNwZWNMb2NrUGFja2FnZSgKICAgICAgICAgICAgICAgIG5hbWU6ICdmb28nLAogICAgICAgICAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiwKICAgICAgICAgICAgICAgIHBhdGhEZXNjcmlwdGlvbjogUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oCiAgICAgICAgICAgICAgICAgIHBhdGg6ICdwYWNrYWdlcy9mb28nLAogICAgICAgICAgICAgICAgICByZWxhdGl2ZTogdHJ1ZSwKICAgICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgKSwKICAgICAgICAgICAgICBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgICAgICAgICBuYW1lOiAneWFtbDInLAogICAgICAgICAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUudHJhbnNpdGl2ZSwKICAgICAgICAgICAgICApLAogICAgICAgICAgICBdLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICB9KTsKCiAgICAgIHRlc3QoJ3Rocm93cyBhICRQdWJzcGVjTG9ja1BhcnNlRXhjZXB0aW9uIHdoZW4gY29udGVudCBpcyBlbXB0eScsICgpIHsKICAgICAgICBleHBlY3QoCiAgICAgICAgICAoKSA9PiBQdWJzcGVjTG9jay5mcm9tU3RyaW5nKCcnKSwKICAgICAgICAgIHRocm93c0EoaXNBPFB1YnNwZWNMb2NrUGFyc2VFeGNlcHRpb24+KCkpLAogICAgICAgICk7CiAgICAgIH0pOwoKICAgICAgdGVzdCgncmV0dXJucyBlbXB0eSBQdWJzcGVjTG9jayB3aGVuIGNvbnRlbnQgaGFzIG5vIHBhY2thZ2VzIGVudHJ5JywgKCkgewogICAgICAgIGZpbmFsIHB1YnNwZWNMb2NrID0gUHVic3BlY0xvY2suZnJvbVN0cmluZyhfZW1wdHlQdWJzcGVjTG9ja0NvbnRlbnQpOwogICAgICAgIGV4cGVjdChwdWJzcGVjTG9jay5wYWNrYWdlcywgaXNFbXB0eSk7CiAgICAgIH0pOwogICAgfSk7CiAgfSk7CgogIGdyb3VwKCckUHVic3BlY0xvY2tQYWNrYWdlJywgKCkgewogICAgdGVzdCgnY2FuIGJlIGluc3RhbnRpYXRlZCcsICgpIHsKICAgICAgZXhwZWN0KAogICAgICAgIFB1YnNwZWNMb2NrUGFja2FnZSgKICAgICAgICAgIG5hbWU6ICdmb28nLAogICAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiwKICAgICAgICApLAogICAgICAgIGlzQTxQdWJzcGVjTG9ja1BhY2thZ2U+KCksCiAgICAgICk7CiAgICB9KTsKCiAgICB0ZXN0KCdzdXBwb3J0cyB2YWx1ZSBlcXVhbGl0eScsICgpIHsKICAgICAgZmluYWwgcGFja2FnZTEgPSBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgbmFtZTogJ2ZvbycsCiAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiwKICAgICAgKTsKICAgICAgZmluYWwgcGFja2FnZTIgPSBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgbmFtZTogJ2ZvbycsCiAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiwKICAgICAgKTsKICAgICAgZmluYWwgcGFja2FnZTMgPSBQdWJzcGVjTG9ja1BhY2thZ2UoCiAgICAgICAgbmFtZTogJ2JhcicsCiAgICAgICAgdHlwZTogUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUudHJhbnNpdGl2ZSwKICAgICAgKTsKCiAgICAgIGV4cGVjdChwYWNrYWdlMSwgZXF1YWxzKHBhY2thZ2UyKSk7CiAgICAgIGV4cGVjdChwYWNrYWdlMSwgaXNOb3QoZXF1YWxzKHBhY2thZ2UzKSkpOwogICAgICBleHBlY3QocGFja2FnZTIsIGlzTm90KGVxdWFscyhwYWNrYWdlMykpKTsKICAgIH0pOwogIH0pOwoKICBncm91cCgnJFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlJywgKCkgewogICAgZ3JvdXAoJ3BhcnNlJywgKCkgewogICAgICB0ZXN0KCdwYXJzZXMgc3VjY2Vzc2Z1bGx5IGBkaXJlY3QgbWFpbmAnLCAoKSB7CiAgICAgICAgZXhwZWN0KAogICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUucGFyc2UoJ2RpcmVjdCBtYWluJyksCiAgICAgICAgICBlcXVhbHMoUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0TWFpbiksCiAgICAgICAgKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdwYXJzZXMgc3VjY2Vzc2Z1bGx5IGBkaXJlY3QgZGV2YCcsICgpIHsKICAgICAgICBleHBlY3QoCiAgICAgICAgICBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5wYXJzZSgnZGlyZWN0IGRldicpLAogICAgICAgICAgZXF1YWxzKFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlLmRpcmVjdERldiksCiAgICAgICAgKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdwYXJzZXMgc3VjY2Vzc2Z1bGx5IGBkaXJlY3Qgb3ZlcnJpZGRlbmAnLCAoKSB7CiAgICAgICAgZXhwZWN0KAogICAgICAgICAgUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUucGFyc2UoJ2RpcmVjdCBvdmVycmlkZGVuJyksCiAgICAgICAgICBlcXVhbHMoUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUuZGlyZWN0T3ZlcnJpZGRlbiksCiAgICAgICAgKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdwYXJzZXMgc3VjY2Vzc2Z1bGx5IGB0cmFuc2l0aXZlYCcsICgpIHsKICAgICAgICBleHBlY3QoCiAgICAgICAgICBQdWJzcGVjTG9ja1BhY2thZ2VEZXBlbmRlbmN5VHlwZS5wYXJzZSgndHJhbnNpdGl2ZScpLAogICAgICAgICAgZXF1YWxzKFB1YnNwZWNMb2NrUGFja2FnZURlcGVuZGVuY3lUeXBlLnRyYW5zaXRpdmUpLAogICAgICAgICk7CiAgICAgIH0pOwoKICAgICAgdGVzdCgndGhyb3dzIGEgJEFyZ3VtZW50RXJyb3Igd2hlbiB0eXBlIGlzIGludmFsaWQnLCAoKSB7CiAgICAgICAgZXhwZWN0KAogICAgICAgICAgKCkgPT4gUHVic3BlY0xvY2tQYWNrYWdlRGVwZW5kZW5jeVR5cGUucGFyc2UoJ2ludmFsaWQnKSwKICAgICAgICAgIHRocm93c0EoaXNBPEFyZ3VtZW50RXJyb3I+KCkpLAogICAgICAgICk7CiAgICAgIH0pOwogICAgfSk7CiAgfSk7CgogIGdyb3VwKCckUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24nLCAoKSB7CiAgICB0ZXN0KCdjYW4gYmUgaW5zdGFudGlhdGVkJywgKCkgewogICAgICBleHBlY3QoCiAgICAgICAgUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oCiAgICAgICAgICBwYXRoOiAncGFja2FnZXMvZm9vJywKICAgICAgICAgIHJlbGF0aXZlOiB0cnVlLAogICAgICAgICksCiAgICAgICAgaXNBPFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uPigpLAogICAgICApOwogICAgfSk7CgogICAgdGVzdCgnc3VwcG9ydHMgdmFsdWUgZXF1YWxpdHknLCAoKSB7CiAgICAgIGZpbmFsIGRlc2NyaXB0aW9uMSA9IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uKAogICAgICAgIHBhdGg6ICdwYWNrYWdlcy9mb28nLAogICAgICAgIHJlbGF0aXZlOiB0cnVlLAogICAgICApOwogICAgICBmaW5hbCBkZXNjcmlwdGlvbjIgPSBQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbigKICAgICAgICBwYXRoOiAncGFja2FnZXMvZm9vJywKICAgICAgICByZWxhdGl2ZTogdHJ1ZSwKICAgICAgKTsKICAgICAgZmluYWwgZGVzY3JpcHRpb24zID0gUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oCiAgICAgICAgcGF0aDogJ3BhY2thZ2VzL2JhcicsCiAgICAgICAgcmVsYXRpdmU6IHRydWUsCiAgICAgICk7CiAgICAgIGZpbmFsIGRlc2NyaXB0aW9uNCA9IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uKAogICAgICAgIHBhdGg6ICdwYWNrYWdlcy9mb28nLAogICAgICAgIHJlbGF0aXZlOiBmYWxzZSwKICAgICAgKTsKCiAgICAgIGV4cGVjdChkZXNjcmlwdGlvbjEsIGVxdWFscyhkZXNjcmlwdGlvbjIpKTsKICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uMSwgaXNOb3QoZXF1YWxzKGRlc2NyaXB0aW9uMykpKTsKICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uMSwgaXNOb3QoZXF1YWxzKGRlc2NyaXB0aW9uNCkpKTsKICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uMywgaXNOb3QoZXF1YWxzKGRlc2NyaXB0aW9uNCkpKTsKICAgIH0pOwoKICAgIGdyb3VwKCd0cnlQYXJzZScsICgpIHsKICAgICAgdGVzdCgncGFyc2VzJywgKCkgewogICAgICAgIGZpbmFsIGRhdGEgPSBsb2FkWWFtbCgKICAgICAgICAgICcnJwpwYXRoOiAicGFja2FnZXMvZm9vIgpyZWxhdGl2ZTogdHJ1ZQogICAgICAgICAgICAnJycsCiAgICAgICAgKSBhcyBZYW1sTWFwOwoKICAgICAgICBmaW5hbCBkZXNjcmlwdGlvbiA9IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uLnRyeVBhcnNlKGRhdGEpOwoKICAgICAgICBleHBlY3QoCiAgICAgICAgICBkZXNjcmlwdGlvbiwKICAgICAgICAgIGVxdWFscygKICAgICAgICAgICAgUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24oCiAgICAgICAgICAgICAgcGF0aDogJ3BhY2thZ2VzL2ZvbycsCiAgICAgICAgICAgICAgcmVsYXRpdmU6IHRydWUsCiAgICAgICAgICAgICksCiAgICAgICAgICApLAogICAgICAgICk7CiAgICAgIH0pOwoKICAgICAgZ3JvdXAoJ3JldHVybnMgbnVsbCcsICgpIHsKICAgICAgICB0ZXN0KCd3aGVuIG1pc3NpbmcgInBhdGgiJywgKCkgewogICAgICAgICAgZmluYWwgZGF0YSA9IGxvYWRZYW1sKAogICAgICAgICAgICAnJycKcmVsYXRpdmU6IHRydWUKICAgICAgICAgICAgJycnLAogICAgICAgICAgKSBhcyBZYW1sTWFwOwoKICAgICAgICAgIGZpbmFsIGRlc2NyaXB0aW9uID0gUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24udHJ5UGFyc2UoZGF0YSk7CgogICAgICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uLCBpc051bGwpOwogICAgICAgIH0pOwoKICAgICAgICB0ZXN0KCd3aGVuICJwYXRoIiBpcyBub3QgYSBTdHJpbmcnLCAoKSB7CiAgICAgICAgICBmaW5hbCBkYXRhID0gbG9hZFlhbWwoCiAgICAgICAgICAgICcnJwpwYXRoOiAxCnJlbGF0aXZlOiB0cnVlCiAgICAgICAgICAgICcnJywKICAgICAgICAgICkgYXMgWWFtbE1hcDsKCiAgICAgICAgICBmaW5hbCBkZXNjcmlwdGlvbiA9IFB1YnNwZWNQYWNrYWdlUGF0aERlc2NyaXB0aW9uLnRyeVBhcnNlKGRhdGEpOwoKICAgICAgICAgIGV4cGVjdChkZXNjcmlwdGlvbiwgaXNOdWxsKTsKICAgICAgICB9KTsKCiAgICAgICAgdGVzdCgnd2hlbiBtaXNzaW5nICJyZWxhdGl2ZSInLCAoKSB7CiAgICAgICAgICBmaW5hbCBkYXRhID0gbG9hZFlhbWwoCiAgICAgICAgICAgICcnJwpwYXRoOiAicGFja2FnZXMvZm9vIgogICAgICAgICAgICAnJycsCiAgICAgICAgICApIGFzIFlhbWxNYXA7CgogICAgICAgICAgZmluYWwgZGVzY3JpcHRpb24gPSBQdWJzcGVjUGFja2FnZVBhdGhEZXNjcmlwdGlvbi50cnlQYXJzZShkYXRhKTsKCiAgICAgICAgICBleHBlY3QoZGVzY3JpcHRpb24sIGlzTnVsbCk7CiAgICAgICAgfSk7CgogICAgICAgIHRlc3QoJ3doZW4gInJlbGF0aXZlIiBpcyBub3QgYSBib29sJywgKCkgewogICAgICAgICAgZmluYWwgZGF0YSA9IGxvYWRZYW1sKAogICAgICAgICAgICAnJycKcGF0aDogInBhY2thZ2VzL2ZvbyIKcmVsYXRpdmU6IDUKICAgICAgICAgICAgJycnLAogICAgICAgICAgKSBhcyBZYW1sTWFwOwoKICAgICAgICAgIGZpbmFsIGRlc2NyaXB0aW9uID0gUHVic3BlY1BhY2thZ2VQYXRoRGVzY3JpcHRpb24udHJ5UGFyc2UoZGF0YSk7CgogICAgICAgICAgZXhwZWN0KGRlc2NyaXB0aW9uLCBpc051bGwpOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0pOwogIH0pOwp9CgovLy8gQW4gZXhhbXBsZSBwdWJzcGVjLmxvY2sgY29udGVudCB1c2VkIHRvIHRlc3QgdGhlIFtQdWJzcGVjTG9ja10gY2xhc3MuCi8vLwovLy8gSXQgaGFzIGJlZW4gYXJ0aWZpY2lhbGx5IGNyYWZ0ZWQgdG8gaW5jbHVkZToKLy8vIC0gb25lIHB1YiBob3N0ZWQgZGlyZWN0IG1haW4gcGFja2FnZSBlbnRyeQovLy8gLSBvbmUgcHViIGhvc3RlZCBkaXJlY3QgZGV2IHBhY2thZ2UgZW50cnkKLy8vIC0gb25lIHB1YiBob3N0ZWQgdHJhbnNpdGl2ZSBwYWNrYWdlIGVudHJ5Ci8vLyAtIG9uZSBwdWIgaG9zdGVkIG92ZXJyaWRkZW4gcGFja2FnZSBlbnRyeQovLy8gLSBvbmUgcGF0aCBkaXJlY3QgbWFpbiBwYWNrYWdlIGVudHJ5Ci8vLyAtIG9uZSBub3QgcHViIGhvc3RlZCB0cmFuc2l0aXZlIHBhY2thZ2UgZW50cnkKLy8vIC0gb25lIGludmFsaWQgcGFja2FnZSBlbnRyeQpjb25zdCBfcHVic3BlY0xvY2tDb250ZW50ID0gJycnCnBhY2thZ2VzOgogIHZlcnlfZ29vZF90ZXN0X3J1bm5lcjoKICAgIGRlcGVuZGVuY3k6ICJkaXJlY3QgbWFpbiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiB2ZXJ5X2dvb2RfdGVzdF9ydW5uZXIKICAgICAgc2hhMjU2OiAiNGQ0MWU1ZDc2NzdkMjU5YjlhMTU5OWM3ODY0NWFjMmQzNmJjMmJkNmZmNzc3MzUwN2JjYjBiYWI0MTQxN2ZlMiIKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIwLjEuMiIKICB2ZXJ5X2dvb2RfYW5hbHlzaXM6CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IGRldiIKICAgIGRlc2NyaXB0aW9uOgogICAgICBuYW1lOiB2ZXJ5X2dvb2RfYW5hbHlzaXMKICAgICAgc2hhMjU2OiAiOWFlN2YzYTNiZDU3NjRmYjAyMWIzMzVjYTI4YTM0ZjA0MGNkMGFiNmVlYzAwYTFiMjEzYjQ0NWRhZTU4YTRiOCIKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICI1LjEuMCIKICB5YW1sOgogICAgZGVwZW5kZW5jeTogdHJhbnNpdGl2ZQogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IHlhbWwKICAgICAgc2hhMjU2OiAiNzU3Njk1MDFlYTM0ODlmY2E1NjYwMWZmMzM0NTRmZTQ1NTA3ZWEzYmZiMDE0MTYxYWJjM2I0M2FlMjU5ODlkNSIKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIzLjEuMiIKICBwYXRoOgogICAgZGVwZW5kZW5jeTogImRpcmVjdCBvdmVycmlkZGVuIgogICAgZGVzY3JpcHRpb246CiAgICAgIG5hbWU6IHBhdGgKICAgICAgc2hhMjU2OiAiMDg3Y2U0OWMzZjBkYzM5MTgwYmVmZWZjNjBmZGI0YWNkOGY4NjIwZTU2ODJmZTI0NzZhZmQwYjM2ODhiYjRhZiIKICAgICAgdXJsOiAiaHR0cHM6Ly9wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIxLjkuMCIKICBmb286CiAgICBkZXBlbmRlbmN5OiAiZGlyZWN0IG1haW4iCiAgICBkZXNjcmlwdGlvbjoKICAgICAgcGF0aDogInBhY2thZ2VzL2ZvbyIKICAgICAgcmVsYXRpdmU6IHRydWUKICAgIHNvdXJjZTogcGF0aAogICAgdmVyc2lvbjogIjEuMC4wKzEiCiAgeWFtbDI6CiAgICBkZXBlbmRlbmN5OiB0cmFuc2l0aXZlCiAgICBkZXNjcmlwdGlvbjoKICAgICAgbmFtZTogeWFtbAogICAgICBzaGEyNTY6ICI3NTc2OTUwMWVhMzQ4OWZjYTU2NjAxZmYzMzQ1NGZlNDU1MDdlYTNiZmIwMTQxNjFhYmMzYjQzYWUyNTk4OWQ1IgogICAgICB1cmw6ICJodHRwczovL25vdC1wdWIuZGV2IgogICAgc291cmNlOiBob3N0ZWQKICAgIHZlcnNpb246ICIzLjEuMiIKICBiYWRfcGFja2FnZToKICAgIG5vdF9kZXBlbmRlbmN5OiAiYmFkIgpzZGtzOgogIGRhcnQ6ICI+PTMuMS4wIDw0LjAuMCIKCicnJzsKCi8vLyBBIHZhbGlkIHB1YnNwZWMgbG9jayBmaWxlIHdpdGggbm8gcGFja2FnZXMuCmNvbnN0IF9lbXB0eVB1YnNwZWNMb2NrQ29udGVudCA9ICcnJwpzZGtzOgogIGRhcnQ6ICI+PTMuMS4wIDw0LjAuMCIKCicnJzsK", - "type": "text" - } + "type": "text", + }, ], "name": "dart_frog_prod_server", "description": "A dart_frog prod server", @@ -154,26 +154,26 @@ final dartFrogProdServerBundle = MasonBundle.fromJson({ "path": "README.md", "data": "IyBkYXJ0X2Zyb2dfcHJvZF9zZXJ2ZXIKClshW1Bvd2VyZWQgYnkgTWFzb25dKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vZW5kcG9pbnQ/dXJsPWh0dHBzJTNBJTJGJTJGdGlueXVybC5jb20lMkZtYXNvbi1iYWRnZSldKGh0dHBzOi8vZ2l0aHViLmNvbS9mZWxhbmdlbC9tYXNvbikKCkEgYGRhcnRfZnJvZ2AgcHJvZHVjdGlvbiBzZXJ2ZXIuCgpfR2VuZXJhdGVkIGJ5IFttYXNvbl1bMV0g8J+nsV8KClsxXTogaHR0cHM6Ly9naXRodWIuY29tL2ZlbGFuZ2VsL21hc29uCg==", - "type": "text" + "type": "text", }, "changelog": { "path": "CHANGELOG.md", "data": "IyAwLjEuMCsxCgotIGZlYXQ6IGJhc2ljIGltcGxlbWVudGF0aW9uIGZvciB0aGUgZGFydCBmcm9nIHByb2R1Y3Rpb24gc2VydmVyCg==", - "type": "text" + "type": "text", }, "license": { "path": "LICENSE", "data": "TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMiBWZXJ5IEdvb2QgVmVudHVyZXMKQ29weXJpZ2h0IChjKSAyMDI1IERhcnQgRnJvZyBEZXYKClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==", - "type": "text" + "type": "text", }, "vars": { "dartVersion": { "type": "string", "description": "Dart version to be used in the generated Dockerfile.", "default": "stable", - "prompt": "Dart version?" - } - } + "prompt": "Dart version?", + }, + }, }); diff --git a/packages/dart_frog_cli/lib/src/commands/create/templates/create_dart_frog_bundle.dart b/packages/dart_frog_cli/lib/src/commands/create/templates/create_dart_frog_bundle.dart index 90337b4a3..5d72a51c5 100644 --- a/packages/dart_frog_cli/lib/src/commands/create/templates/create_dart_frog_bundle.dart +++ b/packages/dart_frog_cli/lib/src/commands/create/templates/create_dart_frog_bundle.dart @@ -9,64 +9,64 @@ final createDartFrogBundle = MasonBundle.fromJson({ "path": ".gitignore", "data": "IyBTZWUgaHR0cHM6Ly93d3cuZGFydGxhbmcub3JnL2d1aWRlcy9saWJyYXJpZXMvcHJpdmF0ZS1maWxlcwoKIyBGaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3JlYXRlZCBieSB0aGUgT3BlcmF0aW5nIFN5c3RlbQouRFNfU3RvcmUKCiMgRmlsZXMgYW5kIGRpcmVjdG9yaWVzIGNyZWF0ZWQgYnkgcHViCi5kYXJ0X3Rvb2wvCi5wYWNrYWdlcwpwdWJzcGVjLmxvY2sKCiMgRmlsZXMgYW5kIGRpcmVjdG9yaWVzIGNyZWF0ZWQgYnkgZGFydF9mcm9nCmJ1aWxkLwouZGFydF9mcm9nCgojIFRlc3QgcmVsYXRlZCBmaWxlcwpjb3ZlcmFnZS8=", - "type": "text" + "type": "text", }, { "path": ".vscode/extensions.json", "data": "ewoJInJlY29tbWVuZGF0aW9ucyI6IFsiVmVyeUdvb2RWZW50dXJlcy5kYXJ0LWZyb2ciXQp9", - "type": "text" + "type": "text", }, { "path": "analysis_options.yaml", "data": "aW5jbHVkZTogcGFja2FnZTp2ZXJ5X2dvb2RfYW5hbHlzaXMvYW5hbHlzaXNfb3B0aW9ucy41LjEuMC55YW1sCmFuYWx5emVyOgogIGV4Y2x1ZGU6CiAgICAtIGJ1aWxkLyoqCmxpbnRlcjoKICBydWxlczoKICAgIGZpbGVfbmFtZXM6IGZhbHNlCg==", - "type": "text" + "type": "text", }, { "path": "pubspec.yaml", "data": "bmFtZToge3tuYW1lLnNuYWtlQ2FzZSgpfX0KZGVzY3JpcHRpb246IEEgbmV3IERhcnQgRnJvZyBhcHBsaWNhdGlvbgp2ZXJzaW9uOiAxLjAuMCsxCnB1Ymxpc2hfdG86IG5vbmUKCmVudmlyb25tZW50OgogIHNkazogIj49My4wLjAgPDQuMC4wIgoKZGVwZW5kZW5jaWVzOgogIGRhcnRfZnJvZzogXjEuMS4wCgpkZXZfZGVwZW5kZW5jaWVzOgogIG1vY2t0YWlsOiBeMS4wLjMKICB0ZXN0OiBeMS4yNS41CiAgdmVyeV9nb29kX2FuYWx5c2lzOiBeNS4xLjAK", - "type": "text" + "type": "text", }, { "path": "README.md", "data": "IyB7e25hbWUuc25ha2VDYXNlKCl9fQoKWyFbc3R5bGU6IHZlcnkgZ29vZCBhbmFseXNpc11bdmVyeV9nb29kX2FuYWx5c2lzX2JhZGdlXV1bdmVyeV9nb29kX2FuYWx5c2lzX2xpbmtdClshW0xpY2Vuc2U6IE1JVF1bbGljZW5zZV9iYWRnZV1dW2xpY2Vuc2VfbGlua10KWyFbUG93ZXJlZCBieSBEYXJ0IEZyb2ddKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vZW5kcG9pbnQ/dXJsPWh0dHBzOi8vdGlueXVybC5jb20vZGFydGZyb2ctYmFkZ2UpXShodHRwczovL2RhcnQtZnJvZy5kZXYpCgpBbiBleGFtcGxlIGFwcGxpY2F0aW9uIGJ1aWx0IHdpdGggZGFydF9mcm9nCgpbbGljZW5zZV9iYWRnZV06IGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vYmFkZ2UvbGljZW5zZS1NSVQtYmx1ZS5zdmcKW2xpY2Vuc2VfbGlua106IGh0dHBzOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUClt2ZXJ5X2dvb2RfYW5hbHlzaXNfYmFkZ2VdOiBodHRwczovL2ltZy5zaGllbGRzLmlvL2JhZGdlL3N0eWxlLXZlcnlfZ29vZF9hbmFseXNpcy1CMjJDODkuc3ZnClt2ZXJ5X2dvb2RfYW5hbHlzaXNfbGlua106IGh0dHBzOi8vcHViLmRldi9wYWNrYWdlcy92ZXJ5X2dvb2RfYW5hbHlzaXM=", - "type": "text" + "type": "text", }, { "path": "routes/index.dart", "data": "aW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZy9kYXJ0X2Zyb2cuZGFydCc7CgpSZXNwb25zZSBvblJlcXVlc3QoUmVxdWVzdENvbnRleHQgY29udGV4dCkgewogIHJldHVybiBSZXNwb25zZShib2R5OiAnV2VsY29tZSB0byBEYXJ0IEZyb2chJyk7Cn0K", - "type": "text" + "type": "text", }, { "path": "test/routes/index_test.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2cvZGFydF9mcm9nLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bW9ja3RhaWwvbW9ja3RhaWwuZGFydCc7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7CgppbXBvcnQgJy4uLy4uL3JvdXRlcy9pbmRleC5kYXJ0JyBhcyByb3V0ZTsKCmNsYXNzIF9Nb2NrUmVxdWVzdENvbnRleHQgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgUmVxdWVzdENvbnRleHQge30KCnZvaWQgbWFpbigpIHsKICBncm91cCgnR0VUIC8nLCAoKSB7CiAgICB0ZXN0KCdyZXNwb25kcyB3aXRoIGEgMjAwIGFuZCAiV2VsY29tZSB0byBEYXJ0IEZyb2chIi4nLCAoKSB7CiAgICAgIGZpbmFsIGNvbnRleHQgPSBfTW9ja1JlcXVlc3RDb250ZXh0KCk7CiAgICAgIGZpbmFsIHJlc3BvbnNlID0gcm91dGUub25SZXF1ZXN0KGNvbnRleHQpOwogICAgICBleHBlY3QocmVzcG9uc2Uuc3RhdHVzQ29kZSwgZXF1YWxzKEh0dHBTdGF0dXMub2spKTsKICAgICAgZXhwZWN0KAogICAgICAgIHJlc3BvbnNlLmJvZHkoKSwKICAgICAgICBjb21wbGV0aW9uKGVxdWFscygnV2VsY29tZSB0byBEYXJ0IEZyb2chJykpLAogICAgICApOwogICAgfSk7CiAgfSk7Cn0K", - "type": "text" - } + "type": "text", + }, ], "hooks": [ { "path": "post_gen.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKaW1wb3J0ICdwYWNrYWdlOm1hc29uL21hc29uLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CgpGdXR1cmU8dm9pZD4gcnVuKEhvb2tDb250ZXh0IGNvbnRleHQpIGFzeW5jIHsKICBmaW5hbCBwcm9qZWN0RGlyZWN0b3J5ID0gcGF0aC5jYW5vbmljYWxpemUoCiAgICBjb250ZXh0LnZhcnNbJ291dHB1dF9kaXJlY3RvcnknXSBhcyBTdHJpbmc/ID8/IERpcmVjdG9yeS5jdXJyZW50LnBhdGgsCiAgKTsKICBmaW5hbCBwcm9ncmVzcyA9IGNvbnRleHQubG9nZ2VyLnByb2dyZXNzKCdJbnN0YWxsaW5nIGRlcGVuZGVuY2llcycpOwogIGF3YWl0IFByb2Nlc3MucnVuKAogICAgJ2RhcnQnLAogICAgWydwdWInLCAnZ2V0J10sCiAgICBydW5JblNoZWxsOiB0cnVlLAogICAgd29ya2luZ0RpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeSwKICApOwogIHByb2dyZXNzLmNvbXBsZXRlKCk7CgogIGNvbnRleHQubG9nZ2VyCiAgICAuLmluZm8oJycpCiAgICAuLnN1Y2Nlc3MoJ0NyZWF0ZWQgJHtjb250ZXh0LnZhcnNbJ25hbWUnXX0gYXQgJHByb2plY3REaXJlY3RvcnkuJykKICAgIC4uaW5mbygnJykKICAgIC4uaW5mbygnR2V0IHN0YXJ0ZWQgYnkgdHlwaW5nOicpCiAgICAuLmluZm8oJycpCiAgICAuLmluZm8oJyR7bGlnaHRDeWFuLndyYXAoJ2NkJyl9ICRwcm9qZWN0RGlyZWN0b3J5JykKICAgIC4uaW5mbygnJHtsaWdodEN5YW4ud3JhcCgnZGFydF9mcm9nIGRldicpfScpOwp9Cg==", - "type": "text" + "type": "text", }, { "path": "pubspec.yaml", "data": "bmFtZTogY3JlYXRlX2RhcnRfZnJvZ19ob29rcwoKZW52aXJvbm1lbnQ6CiAgc2RrOiAiPj0zLjAuMCA8NC4wLjAiCgpkZXBlbmRlbmNpZXM6CiAgbWFzb246IF4wLjEuMAogIHBhdGg6IF4xLjguMQoKZGV2X2RlcGVuZGVuY2llczoKICBtb2NrdGFpbDogXjEuMC4wCiAgdGVzdDogXjEuMjUuMAogIHZlcnlfZ29vZF9hbmFseXNpczogXjkuMC4wCg==", - "type": "text" + "type": "text", }, { "path": "test/post_gen_test.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOm1vY2t0YWlsL21vY2t0YWlsLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKaW1wb3J0ICcuLi9wb3N0X2dlbi5kYXJ0JzsKCmNsYXNzIF9GYWtlSG9va0NvbnRleHQgZXh0ZW5kcyBGYWtlIGltcGxlbWVudHMgSG9va0NvbnRleHQgewogIF9GYWtlSG9va0NvbnRleHQoe0xvZ2dlcj8gbG9nZ2VyfSkgOiBfbG9nZ2VyID0gbG9nZ2VyID8/IF9Nb2NrTG9nZ2VyKCk7CgogIGZpbmFsIExvZ2dlciBfbG9nZ2VyOwoKICB2YXIgX3ZhcnMgPSA8U3RyaW5nLCBkeW5hbWljPnt9OwoKICBAb3ZlcnJpZGUKICBNYXA8U3RyaW5nLCBkeW5hbWljPiBnZXQgdmFycyA9PiBfdmFyczsKCiAgQG92ZXJyaWRlCiAgc2V0IHZhcnMoTWFwPFN0cmluZywgZHluYW1pYz4gdmFsdWUpID0+IF92YXJzID0gdmFsdWU7CgogIEBvdmVycmlkZQogIExvZ2dlciBnZXQgbG9nZ2VyID0+IF9sb2dnZXI7Cn0KCmNsYXNzIF9Nb2NrTG9nZ2VyIGV4dGVuZHMgTW9jayBpbXBsZW1lbnRzIExvZ2dlciB7fQoKY2xhc3MgX01vY2tQcm9ncmVzcyBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBQcm9ncmVzcyB7fQoKdm9pZCBtYWluKCkgewogIGdyb3VwKCdwb3N0R2VuJywgKCkgewogICAgbGF0ZSBIb29rQ29udGV4dCBjb250ZXh0OwogICAgbGF0ZSBMb2dnZXIgbG9nZ2VyOwoKICAgIHNldFVwKCgpIHsKICAgICAgbG9nZ2VyID0gX01vY2tMb2dnZXIoKTsKICAgICAgY29udGV4dCA9IF9GYWtlSG9va0NvbnRleHQobG9nZ2VyOiBsb2dnZXIpOwoKICAgICAgd2hlbigoKSA9PiBsb2dnZXIucHJvZ3Jlc3MoYW55KCkpKS50aGVuUmV0dXJuKF9Nb2NrUHJvZ3Jlc3MoKSk7CiAgICB9KTsKCiAgICB0ZXN0KCdydW4gY29tcGxldGVzIHdoZW4gcHVic3BlYy55YW1sIGV4aXN0cycsICgpIGFzeW5jIHsKICAgICAgY29uc3QgbmFtZSA9ICdleGFtcGxlJzsKICAgICAgZmluYWwgcHJvamVjdERpcmVjdG9yeSA9IERpcmVjdG9yeS5jdXJyZW50LnBhdGg7CiAgICAgIGNvbnRleHQudmFycyA9IHsnbmFtZSc6IG5hbWV9OwogICAgICBhd2FpdCBleHBlY3RMYXRlcihydW4oY29udGV4dCksIGNvbXBsZXRlcyk7CiAgICAgIHZlcmlmeUluT3JkZXIoWwogICAgICAgICgpID0+IGxvZ2dlci5pbmZvKCcnKSwKICAgICAgICAoKSA9PiBsb2dnZXIKICAgICAgICAgICAgLnN1Y2Nlc3MoJ0NyZWF0ZWQgJHtjb250ZXh0LnZhcnNbJ25hbWUnXX0gYXQgJHByb2plY3REaXJlY3RvcnkuJyksCiAgICAgICAgKCkgPT4gbG9nZ2VyLmluZm8oJycpLAogICAgICAgICgpID0+IGxvZ2dlci5pbmZvKCdHZXQgc3RhcnRlZCBieSB0eXBpbmc6JyksCiAgICAgICAgKCkgPT4gbG9nZ2VyLmluZm8oJycpLAogICAgICAgICgpID0+IGxvZ2dlci5pbmZvKCcke2xpZ2h0Q3lhbi53cmFwKCdjZCcpfSAkcHJvamVjdERpcmVjdG9yeScpLAogICAgICAgICgpID0+IGxvZ2dlci5pbmZvKCcke2xpZ2h0Q3lhbi53cmFwKCdkYXJ0X2Zyb2cgZGV2Jyl9JyksCiAgICAgIF0pOwogICAgfSk7CgogICAgdGVzdCgncnVuIHRocm93cyB3aGVuIHB1YnNwZWMueWFtbCBkb2VzIG5vdCBleGlzdCcsICgpIGFzeW5jIHsKICAgICAgY29udGV4dC52YXJzID0geydvdXRwdXRfZGlyZWN0b3J5JzogJy9pbnZhbGlkJ307CiAgICAgIGF3YWl0IGV4cGVjdExhdGVyKCgpID0+IHJ1bihjb250ZXh0KSwgdGhyb3dzQShpc0E8RXhjZXB0aW9uPigpKSk7CiAgICB9KTsKICB9KTsKfQo=", - "type": "text" - } + "type": "text", + }, ], "name": "create_dart_frog", "description": "A Dart Frog starter app template", @@ -76,26 +76,26 @@ final createDartFrogBundle = MasonBundle.fromJson({ "path": "README.md", "data": "IyBjcmVhdGVfZGFydF9mcm9nCgpbIVtQb3dlcmVkIGJ5IE1hc29uXShodHRwczovL2ltZy5zaGllbGRzLmlvL2VuZHBvaW50P3VybD1odHRwcyUzQSUyRiUyRnRpbnl1cmwuY29tJTJGbWFzb24tYmFkZ2UpXShodHRwczovL2dpdGh1Yi5jb20vZmVsYW5nZWwvbWFzb24pCgpBIERhcnQgRnJvZyBzdGFydGVyIGFwcCB0ZW1wbGF0ZQoKX0dlbmVyYXRlZCBieSBbbWFzb25dWzFdIPCfp7FfCgpbMV06IGh0dHBzOi8vZ2l0aHViLmNvbS9mZWxhbmdlbC9tYXNvbgo=", - "type": "text" + "type": "text", }, "changelog": { "path": "CHANGELOG.md", "data": "IyAwLjEuMCsxCgotIGZlYXQ6IGJhc2ljIGRhcnQgZnJvZyBzdGFydGVyIHRlbXBsYXRlCg==", - "type": "text" + "type": "text", }, "license": { "path": "LICENSE", "data": "TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMiBWZXJ5IEdvb2QgVmVudHVyZXMKQ29weXJpZ2h0IChjKSAyMDI1IERhcnQgRnJvZyBEZXYKClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==", - "type": "text" + "type": "text", }, "vars": { "name": { "type": "string", "description": "Your application name", "default": "example", - "prompt": "What is your app name?" - } - } + "prompt": "What is your app name?", + }, + }, }); diff --git a/packages/dart_frog_cli/lib/src/commands/dev/templates/dart_frog_dev_server_bundle.dart b/packages/dart_frog_cli/lib/src/commands/dev/templates/dart_frog_dev_server_bundle.dart index ca35dac30..8017a31f1 100644 --- a/packages/dart_frog_cli/lib/src/commands/dev/templates/dart_frog_dev_server_bundle.dart +++ b/packages/dart_frog_cli/lib/src/commands/dev/templates/dart_frog_dev_server_bundle.dart @@ -9,40 +9,40 @@ final dartFrogDevServerBundle = MasonBundle.fromJson({ "path": "server.dart", "data": "Ly8gR0VORVJBVEVEIENPREUgLSBETyBOT1QgTU9ESUZZIEJZIEhBTkQKLy8gaWdub3JlX2Zvcl9maWxlOiB0eXBlPWxpbnQsIGltcGxpY2l0X2R5bmFtaWNfbGlzdF9saXRlcmFsCgppbXBvcnQgJ2RhcnQ6aW8nOwoKaW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZy9kYXJ0X2Zyb2cuZGFydCc7Cgp7eyNpbnZva2VDdXN0b21FbnRyeXBvaW50fX1pbXBvcnQgJy4uL21haW4uZGFydCcgYXMgZW50cnlwb2ludDt7ey9pbnZva2VDdXN0b21FbnRyeXBvaW50fX0Ke3sjcm91dGVzfX1pbXBvcnQgJ3t7e3BhdGh9fX0nIGFzIHt7I3NuYWtlQ2FzZX19e3t7bmFtZX19fXt7L3NuYWtlQ2FzZX19Owp7ey9yb3V0ZXN9fQp7eyNtaWRkbGV3YXJlfX1pbXBvcnQgJ3t7e3BhdGh9fX0nIGFzIHt7I3NuYWtlQ2FzZX19e3t7bmFtZX19fXt7L3NuYWtlQ2FzZX19Owp7ey9taWRkbGV3YXJlfX0Kdm9pZCBtYWluKCkgYXN5bmMgewogIGZpbmFsIGFkZHJlc3MgPSBJbnRlcm5ldEFkZHJlc3MudHJ5UGFyc2UoJ3t7e2hvc3R9fX0nKSA/PyBJbnRlcm5ldEFkZHJlc3MuYW55SVB2NjsKICBmaW5hbCBwb3J0ID0gaW50LnRyeVBhcnNlKFBsYXRmb3JtLmVudmlyb25tZW50WydQT1JUJ10gPz8gJ3t7e3BvcnR9fX0nKSA/PyB7e3twb3J0fX19O3t7I2ludm9rZUN1c3RvbUluaXR9fQogIGF3YWl0IGVudHJ5cG9pbnQuaW5pdChhZGRyZXNzLCBwb3J0KTt7ey9pbnZva2VDdXN0b21Jbml0fX0KICBob3RSZWxvYWQoKCkgPT4gY3JlYXRlU2VydmVyKGFkZHJlc3MsIHBvcnQpKTsKfQoKRnV0dXJlPEh0dHBTZXJ2ZXI+IGNyZWF0ZVNlcnZlcihJbnRlcm5ldEFkZHJlc3MgYWRkcmVzcywgaW50IHBvcnQpIHsKICBmaW5hbCBoYW5kbGVyID0gQ2FzY2FkZSgpe3sjc2VydmVTdGF0aWNGaWxlc319LmFkZChjcmVhdGVTdGF0aWNGaWxlSGFuZGxlcigpKXt7L3NlcnZlU3RhdGljRmlsZXN9fS5hZGQoYnVpbGRSb290SGFuZGxlcigpKS5oYW5kbGVyOwogIHt7I2ludm9rZUN1c3RvbUVudHJ5cG9pbnR9fXJldHVybiBlbnRyeXBvaW50LnJ1bihoYW5kbGVyLCBhZGRyZXNzLCBwb3J0KTt7ey9pbnZva2VDdXN0b21FbnRyeXBvaW50fX17e15pbnZva2VDdXN0b21FbnRyeXBvaW50fX1yZXR1cm4gc2VydmUoaGFuZGxlciwgYWRkcmVzcywgcG9ydCk7e3svaW52b2tlQ3VzdG9tRW50cnlwb2ludH19Cn0KCkhhbmRsZXIgYnVpbGRSb290SGFuZGxlcigpIHsKICBmaW5hbCBwaXBlbGluZSA9IGNvbnN0IFBpcGVsaW5lKCl7eyNnbG9iYWxNaWRkbGV3YXJlfX0uYWRkTWlkZGxld2FyZSh7eyNzbmFrZUNhc2V9fXt7e25hbWV9fX17ey9zbmFrZUNhc2V9fS5taWRkbGV3YXJlKXt7L2dsb2JhbE1pZGRsZXdhcmV9fTsKICBmaW5hbCByb3V0ZXIgPSBSb3V0ZXIoKXt7I2RpcmVjdG9yaWVzfX0KICAgIC4ubW91bnQoJ3t7e3JvdXRlfX19JywgKGNvbnRleHR7eyNkaXJlY3RvcnlfcGFyYW1zLjB9fSx7eyNkaXJlY3RvcnlfcGFyYW1zfX17ey59fSx7ey9kaXJlY3RvcnlfcGFyYW1zfX17ey9kaXJlY3RvcnlfcGFyYW1zLjB9fSkgPT4gYnVpbGR7eyNwYXNjYWxDYXNlfX17e3tuYW1lfX19e3svcGFzY2FsQ2FzZX19SGFuZGxlcih7eyNkaXJlY3RvcnlfcGFyYW1zfX17ey59fSx7ey9kaXJlY3RvcnlfcGFyYW1zfX0pKGNvbnRleHQpKXt7L2RpcmVjdG9yaWVzfX07CiAgcmV0dXJuIHBpcGVsaW5lLmFkZEhhbmRsZXIocm91dGVyKTsKfQp7eyNkaXJlY3Rvcmllc319CkhhbmRsZXIgYnVpbGR7eyNwYXNjYWxDYXNlfX17e3tuYW1lfX19e3svcGFzY2FsQ2FzZX19SGFuZGxlcih7eyNkaXJlY3RvcnlfcGFyYW1zfX1TdHJpbmcge3sufX0se3svZGlyZWN0b3J5X3BhcmFtc319KSB7CiAgZmluYWwgcGlwZWxpbmUgPSBjb25zdCBQaXBlbGluZSgpe3sjbWlkZGxld2FyZS4wfX17eyNtaWRkbGV3YXJlfX0uYWRkTWlkZGxld2FyZSh7eyNzbmFrZUNhc2V9fXt7e25hbWV9fX17ey9zbmFrZUNhc2V9fS5taWRkbGV3YXJlKXt7L21pZGRsZXdhcmV9fXt7L21pZGRsZXdhcmUuMH19OwogIGZpbmFsIHJvdXRlciA9IFJvdXRlcigpCiAgICB7eyNmaWxlc319e3sjd2lsZGNhcmR9fS4ubW91bnQoJ3t7e3JvdXRlfX19JywgKGNvbnRleHQpID0+IHt7I3NuYWtlQ2FzZX19e3t7bmFtZX19fXt7L3NuYWtlQ2FzZX19Lm9uUmVxdWVzdChjb250ZXh0LGNvbnRleHQucmVxdWVzdC51cmwucGF0aCkpe3svd2lsZGNhcmR9fXt7XndpbGRjYXJkfX0uLmFsbCgne3t7cm91dGV9fX0nLCAoY29udGV4dHt7I2ZpbGVfcGFyYW1zLjB9fSx7eyNmaWxlX3BhcmFtc319e3sufX0se3svZmlsZV9wYXJhbXN9fXt7L2ZpbGVfcGFyYW1zLjB9fSkgPT4ge3sjc25ha2VDYXNlfX17e3tuYW1lfX19e3svc25ha2VDYXNlfX0ub25SZXF1ZXN0KGNvbnRleHQse3sjZGlyZWN0b3J5X3BhcmFtc319e3sufX0se3svZGlyZWN0b3J5X3BhcmFtc319e3sjZmlsZV9wYXJhbXN9fXt7Ln19LHt7L2ZpbGVfcGFyYW1zfX0pKXt7L3dpbGRjYXJkfX17ey9maWxlc319OwogIHJldHVybiBwaXBlbGluZS5hZGRIYW5kbGVyKHJvdXRlcik7Cn0Ke3svZGlyZWN0b3JpZXN9fQo=", - "type": "text" - } + "type": "text", + }, ], "hooks": [ { "path": "pre_gen.dart", "data": "aW1wb3J0ICdkYXJ0OmFzeW5jJzsKaW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfZ2VuL2RhcnRfZnJvZ19nZW4uZGFydCc7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JwogICAgc2hvdyBIb29rQ29udGV4dCwgZGVmYXVsdEZvcmVncm91bmQsIGxpZ2h0Q3lhbjsKCmltcG9ydCAnc3JjL2V4aXRfb3ZlcnJpZGVzLmRhcnQnOwoKdHlwZWRlZiBSb3V0ZUNvbmZpZ3VyYXRpb25CdWlsZGVyID0gUm91dGVDb25maWd1cmF0aW9uIEZ1bmN0aW9uKAogIGlvLkRpcmVjdG9yeSBkaXJlY3RvcnksCik7Cgp2b2lkIF9kZWZhdWx0RXhpdChpbnQgY29kZSkgPT4gRXhpdE92ZXJyaWRlcy5jdXJyZW50Py5leGl0ID8/IGlvLmV4aXQ7CgpGdXR1cmU8dm9pZD4gcnVuKEhvb2tDb250ZXh0IGNvbnRleHQpIGFzeW5jID0+IHByZUdlbihjb250ZXh0KTsKCkZ1dHVyZTx2b2lkPiBwcmVHZW4oCiAgSG9va0NvbnRleHQgY29udGV4dCwgewogIFJvdXRlQ29uZmlndXJhdGlvbkJ1aWxkZXIgYnVpbGRDb25maWd1cmF0aW9uID0gYnVpbGRSb3V0ZUNvbmZpZ3VyYXRpb24sCiAgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQgPSBfZGVmYXVsdEV4aXQsCn0pIGFzeW5jIHsKICBmaW5hbCBSb3V0ZUNvbmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbjsKICB0cnkgewogICAgY29uZmlndXJhdGlvbiA9IGJ1aWxkQ29uZmlndXJhdGlvbihpby5EaXJlY3RvcnkuY3VycmVudCk7CiAgfSBvbiBFeGNlcHRpb24gY2F0Y2ggKGVycm9yKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoJyRlcnJvcicpOwogICAgcmV0dXJuIGV4aXQoMSk7CiAgfQoKICByZXBvcnRSb3V0ZUNvbmZsaWN0cygKICAgIGNvbmZpZ3VyYXRpb24sCiAgICBvblZpb2xhdGlvblN0YXJ0OiAoKSB7CiAgICAgIGNvbnRleHQubG9nZ2VyLmluZm8oJycpOwogICAgfSwKICAgIG9uUm91dGVDb25mbGljdDogKAogICAgICBvcmlnaW5hbEZpbGVQYXRoLAogICAgICBjb25mbGljdGluZ0ZpbGVQYXRoLAogICAgICBjb25mbGljdGluZ0VuZHBvaW50LAogICAgKSB7CiAgICAgIGNvbnRleHQubG9nZ2VyLmVycigKICAgICAgICAnJydSb3V0ZSBjb25mbGljdCBkZXRlY3RlZC4gJHtsaWdodEN5YW4ud3JhcChvcmlnaW5hbEZpbGVQYXRoKX0gYW5kICR7bGlnaHRDeWFuLndyYXAoY29uZmxpY3RpbmdGaWxlUGF0aCl9IGJvdGggcmVzb2x2ZSB0byAke2xpZ2h0Q3lhbi53cmFwKGNvbmZsaWN0aW5nRW5kcG9pbnQpfS4nJycsCiAgICAgICk7CiAgICB9LAogICk7CiAgcmVwb3J0Um9ndWVSb3V0ZXMoCiAgICBjb25maWd1cmF0aW9uLAogICAgb25WaW9sYXRpb25TdGFydDogKCkgewogICAgICBjb250ZXh0LmxvZ2dlci5pbmZvKCcnKTsKICAgIH0sCiAgICBvblJvZ3VlUm91dGU6IChmaWxlUGF0aCwgaWRlYWxQYXRoKSB7CiAgICAgIGNvbnRleHQubG9nZ2VyLmVycigKICAgICAgICAnJydSb2d1ZSByb3V0ZSBkZXRlY3RlZC4ke2RlZmF1bHRGb3JlZ3JvdW5kLndyYXAoJyAnKX1SZW5hbWUgJHtsaWdodEN5YW4ud3JhcChmaWxlUGF0aCl9IHRvICR7bGlnaHRDeWFuLndyYXAoaWRlYWxQYXRoKX0uJycnLAogICAgICApOwogICAgfSwKICApOwoKICBjb250ZXh0LnZhcnMgPSB7CiAgICAnaG9zdCc6IGNvbnRleHQudmFyc1snaG9zdCddID8/ICcnLAogICAgJ3BvcnQnOiBjb250ZXh0LnZhcnNbJ3BvcnQnXSA/PyAnODA4MCcsCiAgICAnZGlyZWN0b3JpZXMnOiBjb25maWd1cmF0aW9uLmRpcmVjdG9yaWVzCiAgICAgICAgLm1hcCgoYykgPT4gYy50b0pzb24oKSkKICAgICAgICAudG9MaXN0KCkKICAgICAgICAucmV2ZXJzZWQKICAgICAgICAudG9MaXN0KCksCiAgICAncm91dGVzJzogY29uZmlndXJhdGlvbi5yb3V0ZXMubWFwKChyKSA9PiByLnRvSnNvbigpKS50b0xpc3QoKSwKICAgICdtaWRkbGV3YXJlJzogY29uZmlndXJhdGlvbi5taWRkbGV3YXJlLm1hcCgobSkgPT4gbS50b0pzb24oKSkudG9MaXN0KCksCiAgICAnZ2xvYmFsTWlkZGxld2FyZSc6IGNvbmZpZ3VyYXRpb24uZ2xvYmFsTWlkZGxld2FyZSAhPSBudWxsCiAgICAgICAgPyBjb25maWd1cmF0aW9uLmdsb2JhbE1pZGRsZXdhcmUhLnRvSnNvbigpCiAgICAgICAgOiBmYWxzZSwKICAgICdzZXJ2ZVN0YXRpY0ZpbGVzJzogY29uZmlndXJhdGlvbi5zZXJ2ZVN0YXRpY0ZpbGVzLAogICAgJ2ludm9rZUN1c3RvbUVudHJ5cG9pbnQnOiBjb25maWd1cmF0aW9uLmludm9rZUN1c3RvbUVudHJ5cG9pbnQsCiAgICAnaW52b2tlQ3VzdG9tSW5pdCc6IGNvbmZpZ3VyYXRpb24uaW52b2tlQ3VzdG9tSW5pdCwKICB9Owp9Cg==", - "type": "text" + "type": "text", }, { "path": "pubspec.yaml", "data": "bmFtZTogZGFydF9mcm9nX2Rldl9zZXJ2ZXJfaG9va3MKcHVibGlzaF90bzogbm9uZQoKZW52aXJvbm1lbnQ6CiAgc2RrOiAiPj0zLjAuMCA8NC4wLjAiCgpkZXBlbmRlbmNpZXM6CiAgZGFydF9mcm9nX2dlbjogXjIuMC4wCiAgbWFzb246IF4wLjEuMAogIHB1YnNwZWNfcGFyc2U6IF4xLjIuMAoKZGV2X2RlcGVuZGVuY2llczoKICBtb2NrdGFpbDogXjEuMC4wCiAgcGF0aDogXjEuOC4yCiAgdGVzdDogXjEuMjUuMAogIHZlcnlfZ29vZF9hbmFseXNpczogXjkuMC4wCg==", - "type": "text" + "type": "text", }, { "path": "src/exit_overrides.dart", "data": "aW1wb3J0ICdkYXJ0OmFzeW5jJzsKaW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmNvbnN0IF9hc3luY1J1blpvbmVkID0gcnVuWm9uZWQ7CgphYnN0cmFjdCBjbGFzcyBFeGl0T3ZlcnJpZGVzIHsKICBzdGF0aWMgZmluYWwgX3Rva2VuID0gT2JqZWN0KCk7CgogIHN0YXRpYyBFeGl0T3ZlcnJpZGVzPyBnZXQgY3VycmVudCB7CiAgICByZXR1cm4gWm9uZS5jdXJyZW50W190b2tlbl0gYXMgRXhpdE92ZXJyaWRlcz87CiAgfQoKICBzdGF0aWMgUiBydW5ab25lZDxSPihSIEZ1bmN0aW9uKCkgYm9keSwge3ZvaWQgRnVuY3Rpb24oaW50KT8gZXhpdH0pIHsKICAgIGZpbmFsIG92ZXJyaWRlcyA9IF9FeGl0T3ZlcnJpZGVzU2NvcGUoZXhpdCk7CiAgICByZXR1cm4gX2FzeW5jUnVuWm9uZWQoYm9keSwgem9uZVZhbHVlczoge190b2tlbjogb3ZlcnJpZGVzfSk7CiAgfQoKICB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZ2V0IGV4aXQgPT4gaW8uZXhpdDsKfQoKY2xhc3MgX0V4aXRPdmVycmlkZXNTY29wZSBleHRlbmRzIEV4aXRPdmVycmlkZXMgewogIF9FeGl0T3ZlcnJpZGVzU2NvcGUodGhpcy5fZXhpdCk7CgogIGZpbmFsIEV4aXRPdmVycmlkZXM/IF9wcmV2aW91cyA9IEV4aXRPdmVycmlkZXMuY3VycmVudDsKICBmaW5hbCB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSk/IF9leGl0OwoKICBAb3ZlcnJpZGUKICB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZ2V0IGV4aXQgewogICAgcmV0dXJuIF9leGl0ID8/IF9wcmV2aW91cz8uZXhpdCA/PyBzdXBlci5leGl0OwogIH0KfQo=", - "type": "text" + "type": "text", }, { "path": "test/pre_gen_test.dart", "data": "aW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19nZW4vZGFydF9mcm9nX2dlbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOm1hc29uL21hc29uLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bW9ja3RhaWwvbW9ja3RhaWwuZGFydCc7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7CgppbXBvcnQgJy4uL3ByZV9nZW4uZGFydCc7CmltcG9ydCAnLi4vc3JjL2V4aXRfb3ZlcnJpZGVzLmRhcnQnOwoKY2xhc3MgX0Zha2VIb29rQ29udGV4dCBleHRlbmRzIEZha2UgaW1wbGVtZW50cyBIb29rQ29udGV4dCB7CiAgX0Zha2VIb29rQ29udGV4dCh7TG9nZ2VyPyBsb2dnZXJ9KSA6IF9sb2dnZXIgPSBsb2dnZXIgPz8gX01vY2tMb2dnZXIoKTsKCiAgZmluYWwgTG9nZ2VyIF9sb2dnZXI7CgogIHZhciBfdmFycyA9IDxTdHJpbmcsIGR5bmFtaWM+e307CgogIEBvdmVycmlkZQogIE1hcDxTdHJpbmcsIGR5bmFtaWM+IGdldCB2YXJzID0+IF92YXJzOwoKICBAb3ZlcnJpZGUKICBzZXQgdmFycyhNYXA8U3RyaW5nLCBkeW5hbWljPiB2YWx1ZSkgPT4gX3ZhcnMgPSB2YWx1ZTsKCiAgQG92ZXJyaWRlCiAgTG9nZ2VyIGdldCBsb2dnZXIgPT4gX2xvZ2dlcjsKfQoKY2xhc3MgX01vY2tMb2dnZXIgZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgTG9nZ2VyIHt9Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ3ByZUdlbicsICgpIHsKICAgIGxhdGUgSG9va0NvbnRleHQgY29udGV4dDsKICAgIGxhdGUgTG9nZ2VyIGxvZ2dlcjsKCiAgICBzZXRVcCgoKSB7CiAgICAgIGxvZ2dlciA9IF9Nb2NrTG9nZ2VyKCk7CiAgICAgIGNvbnRleHQgPSBfRmFrZUhvb2tDb250ZXh0KGxvZ2dlcjogbG9nZ2VyKTsKICAgIH0pOwoKICAgIHRlc3QoJ3J1biBjb21wbGV0ZXMnLCAoKSB7CiAgICAgIGV4cGVjdCgKICAgICAgICBFeGl0T3ZlcnJpZGVzLnJ1blpvbmVkKAogICAgICAgICAgKCkgPT4gcnVuKF9GYWtlSG9va0NvbnRleHQoKSksCiAgICAgICAgICBleGl0OiAoXykge30sCiAgICAgICAgKSwKICAgICAgICBjb21wbGV0ZXMsCiAgICAgICk7CiAgICB9KTsKCiAgICB0ZXN0KCdleGl0KDEpIGlmIGJ1aWxkUm91dGVDb25maWd1cmF0aW9uIHRocm93cycsICgpIGFzeW5jIHsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgZmluYWwgZXhjZXB0aW9uID0gRXhjZXB0aW9uKCdvb3BzJyk7CiAgICAgIGF3YWl0IHByZUdlbigKICAgICAgICBjb250ZXh0LAogICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IHRocm93IGV4Y2VwdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBlcXVhbHMoWzFdKSk7CiAgICAgIHZlcmlmeSgoKSA9PiBsb2dnZXIuZXJyKGV4Y2VwdGlvbi50b1N0cmluZygpKSkuY2FsbGVkKDEpOwogICAgfSk7CgogICAgdGVzdCgnY29tcGxhaW5zIGFib3V0IHJvdXRlIGNvbmZsaWN0cycsICgpIGFzeW5jIHsKICAgICAgY29uc3QgY29uZmlndXJhdGlvbiA9IFJvdXRlQ29uZmlndXJhdGlvbigKICAgICAgICBtaWRkbGV3YXJlOiBbXSwKICAgICAgICBkaXJlY3RvcmllczogW10sCiAgICAgICAgcm91dGVzOiBbXSwKICAgICAgICByb2d1ZVJvdXRlczogW10sCiAgICAgICAgZW5kcG9pbnRzOiB7CiAgICAgICAgICAnLyc6IFsKICAgICAgICAgICAgUm91dGVGaWxlKAogICAgICAgICAgICAgIG5hbWU6ICdpbmRleCcsCiAgICAgICAgICAgICAgcGF0aDogJ2luZGV4LmRhcnQnLAogICAgICAgICAgICAgIHJvdXRlOiAnLycsCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICksCiAgICAgICAgICBdLAogICAgICAgICAgJy9oZWxsbyc6IFsKICAgICAgICAgICAgUm91dGVGaWxlKAogICAgICAgICAgICAgIG5hbWU6ICdoZWxsbycsCiAgICAgICAgICAgICAgcGF0aDogJ2hlbGxvLmRhcnQnLAogICAgICAgICAgICAgIHJvdXRlOiAnL2hlbGxvJywKICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgKSwKICAgICAgICAgICAgUm91dGVGaWxlKAogICAgICAgICAgICAgIG5hbWU6ICdoZWxsb19pbmRleCcsCiAgICAgICAgICAgICAgcGF0aDogJ2hlbGxvL2luZGV4LmRhcnQnLAogICAgICAgICAgICAgIHJvdXRlOiAnLycsCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICksCiAgICAgICAgICBdLAogICAgICAgIH0sCiAgICAgICk7CgogICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwogICAgICBhd2FpdCBwcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICk7CgogICAgICB2ZXJpZnkoCiAgICAgICAgKCkgPT4gbG9nZ2VyLmVycigKICAgICAgICAgICcnJ1JvdXRlIGNvbmZsaWN0IGRldGVjdGVkLiAke2xpZ2h0Q3lhbi53cmFwKCdyb3V0ZXMvaGVsbG8uZGFydCcpfSBhbmQgJHtsaWdodEN5YW4ud3JhcCgncm91dGVzL2hlbGxvL2luZGV4LmRhcnQnKX0gYm90aCByZXNvbHZlIHRvICR7bGlnaHRDeWFuLndyYXAoJy9oZWxsbycpfS4nJycsCiAgICAgICAgKSwKICAgICAgKTsKICAgICAgZXhwZWN0KGV4aXRDYWxscywgaXNFbXB0eSk7CiAgICB9KTsKCiAgICB0ZXN0KCdjb21wbGFpbnMgYWJvdXQgcm9ndWUgcm91dGVzJywgKCkgYXN5bmMgewogICAgICBjb25zdCBjb25maWd1cmF0aW9uID0gUm91dGVDb25maWd1cmF0aW9uKAogICAgICAgIG1pZGRsZXdhcmU6IFtdLAogICAgICAgIGRpcmVjdG9yaWVzOiBbXSwKICAgICAgICByb3V0ZXM6IFtdLAogICAgICAgIHJvZ3VlUm91dGVzOiBbCiAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgIG5hbWU6ICdoZWxsbycsCiAgICAgICAgICAgIHBhdGg6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgcm91dGU6ICcvaGVsbG8nLAogICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICApLAogICAgICAgIF0sCiAgICAgICAgZW5kcG9pbnRzOiB7fSwKICAgICAgKTsKCiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGF3YWl0IHByZUdlbigKICAgICAgICBjb250ZXh0LAogICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IGNvbmZpZ3VyYXRpb24sCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgKTsKCiAgICAgIHZlcmlmeSgKICAgICAgICAoKSA9PiBsb2dnZXIuZXJyKAogICAgICAgICAgJycnUm9ndWUgcm91dGUgZGV0ZWN0ZWQuJHtkZWZhdWx0Rm9yZWdyb3VuZC53cmFwKCcgJyl9UmVuYW1lICR7bGlnaHRDeWFuLndyYXAoJ3JvdXRlcy9oZWxsby5kYXJ0Jyl9IHRvICR7bGlnaHRDeWFuLndyYXAoJ3JvdXRlcy9oZWxsby9pbmRleC5kYXJ0Jyl9LicnJywKICAgICAgICApLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgIH0pOwoKICAgIHRlc3QoJ3JldGFpbnMgY3VzdG9tIHBvcnQgaWYgc3BlY2lmaWVkJywgKCkgYXN5bmMgewogICAgICBjb25zdCBjdXN0b21Qb3J0ID0gJzgwODEnOwogICAgICBjb250ZXh0LnZhcnNbJ3BvcnQnXSA9IGN1c3RvbVBvcnQ7CiAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgICAgZGlyZWN0b3JpZXM6IFtdLAogICAgICAgIHJvdXRlczogW10sCiAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgIGVuZHBvaW50czoge30sCiAgICAgICk7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGF3YWl0IHByZUdlbigKICAgICAgICBjb250ZXh0LAogICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IGNvbmZpZ3VyYXRpb24sCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgKTsKICAgICAgZXhwZWN0KGV4aXRDYWxscywgaXNFbXB0eSk7CiAgICAgIHZlcmlmeU5ldmVyKCgpID0+IGxvZ2dlci5lcnIoYW55KCkpKTsKICAgICAgZXhwZWN0KAogICAgICAgIGNvbnRleHQudmFycywKICAgICAgICBlcXVhbHMoCiAgICAgICAgICB7CiAgICAgICAgICAgICdwb3J0JzogY3VzdG9tUG9ydCwKICAgICAgICAgICAgJ2hvc3QnOiAnJywKICAgICAgICAgICAgJ2RpcmVjdG9yaWVzJzogPFJvdXRlRGlyZWN0b3J5PltdLAogICAgICAgICAgICAncm91dGVzJzogPFJvdXRlRmlsZT5bXSwKICAgICAgICAgICAgJ21pZGRsZXdhcmUnOiA8TWlkZGxld2FyZUZpbGU+W10sCiAgICAgICAgICAgICdnbG9iYWxNaWRkbGV3YXJlJzogZmFsc2UsCiAgICAgICAgICAgICdzZXJ2ZVN0YXRpY0ZpbGVzJzogZmFsc2UsCiAgICAgICAgICAgICdpbnZva2VDdXN0b21FbnRyeXBvaW50JzogZmFsc2UsCiAgICAgICAgICAgICdpbnZva2VDdXN0b21Jbml0JzogZmFsc2UsCiAgICAgICAgICB9LAogICAgICAgICksCiAgICAgICk7CiAgICB9KTsKCiAgICB0ZXN0KCdyZXRhaW5zIGN1c3RvbSBob3N0IGlmIHNwZWNpZmllZCcsICgpIGFzeW5jIHsKICAgICAgY29uc3QgY3VzdG9tSG9zdCA9ICcxOTIuMTY4LjEuMic7CiAgICAgIGNvbnRleHQudmFyc1snaG9zdCddID0gY3VzdG9tSG9zdDsKICAgICAgY29uc3QgY29uZmlndXJhdGlvbiA9IFJvdXRlQ29uZmlndXJhdGlvbigKICAgICAgICBtaWRkbGV3YXJlOiBbXSwKICAgICAgICBkaXJlY3RvcmllczogW10sCiAgICAgICAgcm91dGVzOiBbXSwKICAgICAgICByb2d1ZVJvdXRlczogW10sCiAgICAgICAgZW5kcG9pbnRzOiB7fSwKICAgICAgKTsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlR2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gY29uZmlndXJhdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgdmVyaWZ5TmV2ZXIoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpOwogICAgICBleHBlY3QoCiAgICAgICAgY29udGV4dC52YXJzLAogICAgICAgIGVxdWFscygKICAgICAgICAgIHsKICAgICAgICAgICAgJ3BvcnQnOiAnODA4MCcsCiAgICAgICAgICAgICdob3N0JzogJzE5Mi4xNjguMS4yJywKICAgICAgICAgICAgJ2RpcmVjdG9yaWVzJzogPFJvdXRlRGlyZWN0b3J5PltdLAogICAgICAgICAgICAncm91dGVzJzogPFJvdXRlRmlsZT5bXSwKICAgICAgICAgICAgJ21pZGRsZXdhcmUnOiA8TWlkZGxld2FyZUZpbGU+W10sCiAgICAgICAgICAgICdnbG9iYWxNaWRkbGV3YXJlJzogZmFsc2UsCiAgICAgICAgICAgICdzZXJ2ZVN0YXRpY0ZpbGVzJzogZmFsc2UsCiAgICAgICAgICAgICdpbnZva2VDdXN0b21FbnRyeXBvaW50JzogZmFsc2UsCiAgICAgICAgICAgICdpbnZva2VDdXN0b21Jbml0JzogZmFsc2UsCiAgICAgICAgICB9LAogICAgICAgICksCiAgICAgICk7CiAgICB9KTsKCiAgICB0ZXN0KCdyZXRhaW5zIGludm9rZUN1c3RvbUVudHJ5cG9pbnQgKHRydWUpJywgKCkgYXN5bmMgewogICAgICBjb25zdCBjdXN0b21Qb3J0ID0gJzgwODEnOwogICAgICBjb250ZXh0LnZhcnNbJ3BvcnQnXSA9IGN1c3RvbVBvcnQ7CiAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBSb3V0ZUNvbmZpZ3VyYXRpb24oCiAgICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgICAgZGlyZWN0b3JpZXM6IFtdLAogICAgICAgIHJvdXRlczogW10sCiAgICAgICAgcm9ndWVSb3V0ZXM6IFtdLAogICAgICAgIGVuZHBvaW50czoge30sCiAgICAgICAgaW52b2tlQ3VzdG9tRW50cnlwb2ludDogdHJ1ZSwKICAgICAgKTsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgYXdhaXQgcHJlR2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gY29uZmlndXJhdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgdmVyaWZ5TmV2ZXIoKCkgPT4gbG9nZ2VyLmVycihhbnkoKSkpOwogICAgICBleHBlY3QoCiAgICAgICAgY29udGV4dC52YXJzLAogICAgICAgIGVxdWFscygKICAgICAgICAgIHsKICAgICAgICAgICAgJ3BvcnQnOiBjdXN0b21Qb3J0LAogICAgICAgICAgICAnaG9zdCc6ICcnLAogICAgICAgICAgICAnZGlyZWN0b3JpZXMnOiA8Um91dGVEaXJlY3Rvcnk+W10sCiAgICAgICAgICAgICdyb3V0ZXMnOiA8Um91dGVGaWxlPltdLAogICAgICAgICAgICAnbWlkZGxld2FyZSc6IDxNaWRkbGV3YXJlRmlsZT5bXSwKICAgICAgICAgICAgJ2dsb2JhbE1pZGRsZXdhcmUnOiBmYWxzZSwKICAgICAgICAgICAgJ3NlcnZlU3RhdGljRmlsZXMnOiBmYWxzZSwKICAgICAgICAgICAgJ2ludm9rZUN1c3RvbUVudHJ5cG9pbnQnOiB0cnVlLAogICAgICAgICAgICAnaW52b2tlQ3VzdG9tSW5pdCc6IGZhbHNlLAogICAgICAgICAgfSwKICAgICAgICApLAogICAgICApOwogICAgfSk7CgogICAgdGVzdCgncmV0YWlucyBpbnZva2VDdXN0b21Jbml0ICh0cnVlKScsICgpIGFzeW5jIHsKICAgICAgY29uc3QgY3VzdG9tUG9ydCA9ICc4MDgxJzsKICAgICAgY29udGV4dC52YXJzWydwb3J0J10gPSBjdXN0b21Qb3J0OwogICAgICBjb25zdCBjb25maWd1cmF0aW9uID0gUm91dGVDb25maWd1cmF0aW9uKAogICAgICAgIG1pZGRsZXdhcmU6IFtdLAogICAgICAgIGRpcmVjdG9yaWVzOiBbXSwKICAgICAgICByb3V0ZXM6IFtdLAogICAgICAgIHJvZ3VlUm91dGVzOiBbXSwKICAgICAgICBlbmRwb2ludHM6IHt9LAogICAgICAgIGludm9rZUN1c3RvbUluaXQ6IHRydWUsCiAgICAgICk7CiAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgIGF3YWl0IHByZUdlbigKICAgICAgICBjb250ZXh0LAogICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IGNvbmZpZ3VyYXRpb24sCiAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgKTsKICAgICAgZXhwZWN0KGV4aXRDYWxscywgaXNFbXB0eSk7CiAgICAgIHZlcmlmeU5ldmVyKCgpID0+IGxvZ2dlci5lcnIoYW55KCkpKTsKICAgICAgZXhwZWN0KAogICAgICAgIGNvbnRleHQudmFycywKICAgICAgICBlcXVhbHMoCiAgICAgICAgICB7CiAgICAgICAgICAgICdwb3J0JzogY3VzdG9tUG9ydCwKICAgICAgICAgICAgJ2hvc3QnOiAnJywKICAgICAgICAgICAgJ2RpcmVjdG9yaWVzJzogPFJvdXRlRGlyZWN0b3J5PltdLAogICAgICAgICAgICAncm91dGVzJzogPFJvdXRlRmlsZT5bXSwKICAgICAgICAgICAgJ21pZGRsZXdhcmUnOiA8TWlkZGxld2FyZUZpbGU+W10sCiAgICAgICAgICAgICdnbG9iYWxNaWRkbGV3YXJlJzogZmFsc2UsCiAgICAgICAgICAgICdzZXJ2ZVN0YXRpY0ZpbGVzJzogZmFsc2UsCiAgICAgICAgICAgICdpbnZva2VDdXN0b21FbnRyeXBvaW50JzogZmFsc2UsCiAgICAgICAgICAgICdpbnZva2VDdXN0b21Jbml0JzogdHJ1ZSwKICAgICAgICAgIH0sCiAgICAgICAgKSwKICAgICAgKTsKICAgIH0pOwoKICAgIHRlc3QoJ3VwZGF0ZXMgY29udGV4dC52YXJzIHdoZW4gYnVpbGRSb3V0ZUNvbmZpZ3VyYXRpb24gc3VjY2VlZHMnLAogICAgICAgICgpIGFzeW5jIHsKICAgICAgY29uc3QgY29uZmlndXJhdGlvbiA9IFJvdXRlQ29uZmlndXJhdGlvbigKICAgICAgICBnbG9iYWxNaWRkbGV3YXJlOiBNaWRkbGV3YXJlRmlsZSgKICAgICAgICAgIG5hbWU6ICdtaWRkbGV3YXJlJywKICAgICAgICAgIHBhdGg6ICdtaWRkbGV3YXJlLmRhcnQnLAogICAgICAgICksCiAgICAgICAgbWlkZGxld2FyZTogWwogICAgICAgICAgTWlkZGxld2FyZUZpbGUoCiAgICAgICAgICAgIG5hbWU6ICdoZWxsb19taWRkbGV3YXJlJywKICAgICAgICAgICAgcGF0aDogJ2hlbGxvL21pZGRsZXdhcmUuZGFydCcsCiAgICAgICAgICApLAogICAgICAgIF0sCiAgICAgICAgZGlyZWN0b3JpZXM6IFsKICAgICAgICAgIFJvdXRlRGlyZWN0b3J5KAogICAgICAgICAgICBuYW1lOiAnXycsCiAgICAgICAgICAgIHJvdXRlOiAnLycsCiAgICAgICAgICAgIG1pZGRsZXdhcmU6IFtdLAogICAgICAgICAgICBmaWxlczogWwogICAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICAgIG5hbWU6ICdpbmRleCcsCiAgICAgICAgICAgICAgICBwYXRoOiAnaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgICByb3V0ZTogJy8nLAogICAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgICApLAogICAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICAgIG5hbWU6ICdoZWxsbycsCiAgICAgICAgICAgICAgICBwYXRoOiAnaGVsbG8uZGFydCcsCiAgICAgICAgICAgICAgICByb3V0ZTogJy9oZWxsbycsCiAgICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgICAgICksCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICApLAogICAgICAgIF0sCiAgICAgICAgcm91dGVzOiBbCiAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgIG5hbWU6ICdpbmRleCcsCiAgICAgICAgICAgIHBhdGg6ICdpbmRleC5kYXJ0JywKICAgICAgICAgICAgcm91dGU6ICcvJywKICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgKSwKICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgbmFtZTogJ2hlbGxvJywKICAgICAgICAgICAgcGF0aDogJ2hlbGxvLmRhcnQnLAogICAgICAgICAgICByb3V0ZTogJy9oZWxsbycsCiAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICksCiAgICAgICAgXSwKICAgICAgICBlbmRwb2ludHM6IHsKICAgICAgICAgICcvJzogWwogICAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgbmFtZTogJ2luZGV4JywKICAgICAgICAgICAgICBwYXRoOiAnaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgcm91dGU6ICcvJywKICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgKSwKICAgICAgICAgIF0sCiAgICAgICAgICAnL2hlbGxvJzogWwogICAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgbmFtZTogJ2hlbGxvJywKICAgICAgICAgICAgICBwYXRoOiAnaGVsbG8uZGFydCcsCiAgICAgICAgICAgICAgcm91dGU6ICcvaGVsbG8nLAogICAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgICApLAogICAgICAgICAgXSwKICAgICAgICB9LAogICAgICAgIHJvZ3VlUm91dGVzOiBbXSwKICAgICAgICBzZXJ2ZVN0YXRpY0ZpbGVzOiB0cnVlLAogICAgICApOwogICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwogICAgICBhd2FpdCBwcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiBjb25maWd1cmF0aW9uLAogICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICB2ZXJpZnlOZXZlcigoKSA9PiBsb2dnZXIuZXJyKGFueSgpKSk7CiAgICAgIGV4cGVjdCgKICAgICAgICBjb250ZXh0LnZhcnMsCiAgICAgICAgZXF1YWxzKAogICAgICAgICAgewogICAgICAgICAgICAncG9ydCc6ICc4MDgwJywKICAgICAgICAgICAgJ2hvc3QnOiAnJywKICAgICAgICAgICAgJ2RpcmVjdG9yaWVzJzogWwogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICduYW1lJzogJ18nLAogICAgICAgICAgICAgICAgJ3JvdXRlJzogJy8nLAogICAgICAgICAgICAgICAgJ21pZGRsZXdhcmUnOiA8TWFwPFN0cmluZywgZHluYW1pYz4+W10sCiAgICAgICAgICAgICAgICAnZmlsZXMnOiBbCiAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAnbmFtZSc6ICdpbmRleCcsCiAgICAgICAgICAgICAgICAgICAgJ3BhdGgnOiAnaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgICAgICAgJ3JvdXRlJzogJy8nLAogICAgICAgICAgICAgICAgICAgICdmaWxlX3BhcmFtcyc6IDxTdHJpbmc+W10sCiAgICAgICAgICAgICAgICAgICAgJ3dpbGRjYXJkJzogZmFsc2UsCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAnbmFtZSc6ICdoZWxsbycsCiAgICAgICAgICAgICAgICAgICAgJ3BhdGgnOiAnaGVsbG8uZGFydCcsCiAgICAgICAgICAgICAgICAgICAgJ3JvdXRlJzogJy9oZWxsbycsCiAgICAgICAgICAgICAgICAgICAgJ2ZpbGVfcGFyYW1zJzogPFN0cmluZz5bXSwKICAgICAgICAgICAgICAgICAgICAnd2lsZGNhcmQnOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICdkaXJlY3RvcnlfcGFyYW1zJzogPFN0cmluZz5bXSwKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICdyb3V0ZXMnOiBbCiAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgJ25hbWUnOiAnaW5kZXgnLAogICAgICAgICAgICAgICAgJ3BhdGgnOiAnaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgICAncm91dGUnOiAnLycsCiAgICAgICAgICAgICAgICAnZmlsZV9wYXJhbXMnOiBjb25zdCA8U3RyaW5nPltdLAogICAgICAgICAgICAgICAgJ3dpbGRjYXJkJzogZmFsc2UsCiAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAnbmFtZSc6ICdoZWxsbycsCiAgICAgICAgICAgICAgICAncGF0aCc6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgICAgICdyb3V0ZSc6ICcvaGVsbG8nLAogICAgICAgICAgICAgICAgJ2ZpbGVfcGFyYW1zJzogY29uc3QgPFN0cmluZz5bXSwKICAgICAgICAgICAgICAgICd3aWxkY2FyZCc6IGZhbHNlLAogICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgJ21pZGRsZXdhcmUnOiBbCiAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgJ25hbWUnOiAnaGVsbG9fbWlkZGxld2FyZScsCiAgICAgICAgICAgICAgICAncGF0aCc6ICdoZWxsby9taWRkbGV3YXJlLmRhcnQnLAogICAgICAgICAgICAgIH0sCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICdnbG9iYWxNaWRkbGV3YXJlJzogewogICAgICAgICAgICAgICduYW1lJzogJ21pZGRsZXdhcmUnLAogICAgICAgICAgICAgICdwYXRoJzogJ21pZGRsZXdhcmUuZGFydCcsCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgICdzZXJ2ZVN0YXRpY0ZpbGVzJzogdHJ1ZSwKICAgICAgICAgICAgJ2ludm9rZUN1c3RvbUVudHJ5cG9pbnQnOiBmYWxzZSwKICAgICAgICAgICAgJ2ludm9rZUN1c3RvbUluaXQnOiBmYWxzZSwKICAgICAgICAgIH0sCiAgICAgICAgKSwKICAgICAgKTsKICAgIH0pOwogIH0pOwp9Cg==", - "type": "text" + "type": "text", }, { "path": "test/src/exit_overrides_test.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7CgppbXBvcnQgJy4uLy4uL3NyYy9leGl0X292ZXJyaWRlcy5kYXJ0JzsKCnZvaWQgbWFpbigpIHsKICBncm91cCgnRXhpdE92ZXJyaWRlcycsICgpIHsKICAgIGdyb3VwKCdydW5ab25lZCcsICgpIHsKICAgICAgdGVzdCgndXNlcyBkZWZhdWx0IGV4aXQgd2hlbiBub3Qgc3BlY2lmaWVkJywgKCkgewogICAgICAgIEV4aXRPdmVycmlkZXMucnVuWm9uZWQoKCkgewogICAgICAgICAgZmluYWwgb3ZlcnJpZGVzID0gRXhpdE92ZXJyaWRlcy5jdXJyZW50OwogICAgICAgICAgZXhwZWN0KG92ZXJyaWRlcyEuZXhpdCwgZXF1YWxzKGV4aXQpKTsKICAgICAgICB9KTsKICAgICAgfSk7CgogICAgICB0ZXN0KCd1c2VzIGN1c3RvbSBleGl0IHdoZW4gc3BlY2lmaWVkJywgKCkgewogICAgICAgIEV4aXRPdmVycmlkZXMucnVuWm9uZWQoCiAgICAgICAgICAoKSB7CiAgICAgICAgICAgIGZpbmFsIG92ZXJyaWRlcyA9IEV4aXRPdmVycmlkZXMuY3VycmVudDsKICAgICAgICAgICAgZXhwZWN0KG92ZXJyaWRlcyEuZXhpdCwgaXNOb3QoZXF1YWxzKGV4aXQpKSk7CiAgICAgICAgICB9LAogICAgICAgICAgZXhpdDogKF8pIHt9LAogICAgICAgICk7CiAgICAgIH0pOwogICAgfSk7CiAgfSk7Cn0K", - "type": "text" - } + "type": "text", + }, ], "name": "dart_frog_dev_server", "description": "A dart_frog dev server", @@ -52,19 +52,19 @@ final dartFrogDevServerBundle = MasonBundle.fromJson({ "path": "README.md", "data": "IyBkYXJ0X2Zyb2dfZGV2X3NlcnZlcgoKWyFbUG93ZXJlZCBieSBNYXNvbl0oaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby9lbmRwb2ludD91cmw9aHR0cHMlM0ElMkYlMkZ0aW55dXJsLmNvbSUyRm1hc29uLWJhZGdlKV0oaHR0cHM6Ly9naXRodWIuY29tL2ZlbGFuZ2VsL21hc29uKQoKQSBkYXJ0X2Zyb2cgZGV2IHNlcnZlcgoKX0dlbmVyYXRlZCBieSBbbWFzb25dWzFdIPCfp7FfCgpbMV06IGh0dHBzOi8vZ2l0aHViLmNvbS9mZWxhbmdlbC9tYXNvbgo=", - "type": "text" + "type": "text", }, "changelog": { "path": "CHANGELOG.md", "data": "IyAwLjEuMCsxCgotIGZlYXQ6IGJhc2ljIGltcGxlbWVudGF0aW9uIGZvciB0aGUgZGFydCBmcm9nIGRldiBzZXJ2ZXIK", - "type": "text" + "type": "text", }, "license": { "path": "LICENSE", "data": "TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMiBWZXJ5IEdvb2QgVmVudHVyZXMKQ29weXJpZ2h0IChjKSAyMDI1IERhcnQgRnJvZyBEZXYKClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==", - "type": "text" + "type": "text", }, - "vars": {} + "vars": {}, }); diff --git a/packages/dart_frog_cli/lib/src/commands/new/templates/dart_frog_new_bundle.dart b/packages/dart_frog_cli/lib/src/commands/new/templates/dart_frog_new_bundle.dart index 642ff22f6..d6172bfb0 100644 --- a/packages/dart_frog_cli/lib/src/commands/new/templates/dart_frog_new_bundle.dart +++ b/packages/dart_frog_cli/lib/src/commands/new/templates/dart_frog_new_bundle.dart @@ -9,124 +9,124 @@ final dartFrogNewBundle = MasonBundle.fromJson({ "path": "{{filename}}", "data": "aW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZy9kYXJ0X2Zyb2cuZGFydCc7Cnt7I2lzX3JvdXRlfX0Ke3s+IHJvdXRlLmRhcnR9fQp7ey9pc19yb3V0ZX19e3sjaXNfbWlkZGxld2FyZX19Cnt7PiBtaWRkbGV3YXJlLmRhcnR9fQp7ey9pc19taWRkbGV3YXJlfX0=", - "type": "text" + "type": "text", }, { "path": "{{~ middleware.dart }}", "data": "SGFuZGxlciBtaWRkbGV3YXJlKEhhbmRsZXIgaGFuZGxlcikgewogIC8vIFRPRE86IGltcGxlbWVudCBtaWRkbGV3YXJlCiAgcmV0dXJuIGhhbmRsZXI7Cn0=", - "type": "text" + "type": "text", }, { "path": "{{~ route.dart }}", "data": "e3tecGFyYW1zfX1SZXNwb25zZSBvblJlcXVlc3QoUmVxdWVzdENvbnRleHQgY29udGV4dCkgewp7ey9wYXJhbXN9fXt7I3BhcmFtcy4wfX1SZXNwb25zZSBvblJlcXVlc3QoCiAgUmVxdWVzdENvbnRleHQgY29udGV4dCx7eyNwYXJhbXN9fQogIFN0cmluZyB7eyNjYW1lbENhc2V9fXt7Ln19e3svY2FtZWxDYXNlfX0se3svcGFyYW1zfX0KKSB7Cnt7L3BhcmFtcy4wfX0gIC8vIFRPRE86IGltcGxlbWVudCByb3V0ZSBoYW5kbGVyCiAgcmV0dXJuIFJlc3BvbnNlKGJvZHk6ICdUaGlzIGlzIGEgbmV3IHJvdXRlIScpOwp9", - "type": "text" - } + "type": "text", + }, ], "hooks": [ { "path": "lib/post_gen.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfbmV3X2hvb2tzL3NyYy9leGl0X292ZXJyaWRlcy5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOm1hc29uL21hc29uLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7Cgp2b2lkIF9kZWZhdWx0RXhpdChpbnQgY29kZSkgPT4gRXhpdE92ZXJyaWRlcy5jdXJyZW50Py5leGl0ID8/IGlvLmV4aXQ7CgpGdXR1cmU8dm9pZD4gcG9zdEdlbigKICBIb29rQ29udGV4dCBjb250ZXh0LCB7CiAgaW8uRGlyZWN0b3J5PyBkaXJlY3RvcnksCiAgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQgPSBfZGVmYXVsdEV4aXQsCn0pIGFzeW5jIHsKICBmaW5hbCBzdWNjZWVkZWQgPSBjb250ZXh0LnZhcnMuY29udGFpbnNLZXkoJ2Rpcl9wYXRoJyk7CiAgaWYgKCFzdWNjZWVkZWQpIHsKICAgIHJldHVybiBleGl0KDEpOwogIH0KCiAgZmluYWwgZGlyUGF0aCA9IGNvbnRleHQudmFyc1snZGlyX3BhdGgnXSBhcyBTdHJpbmc7CiAgZmluYWwgY3VycmVudERpcmVjdG9yeSA9IGRpcmVjdG9yeSA/PyBpby5EaXJlY3RvcnkuY3VycmVudDsKCiAgZmluYWwgY29udGFpbmluZ0RpcmVjdG9yeVBhdGggPSBwYXRoLnJlbGF0aXZlKAogICAgaW8uRGlyZWN0b3J5KHBhdGguam9pbihjdXJyZW50RGlyZWN0b3J5LnBhdGgsIGRpclBhdGgpKS5wYXRoLAogICk7CiAgZmluYWwgZmlsZW5hbWUgPSBjb250ZXh0LnZhcnNbJ2ZpbGVuYW1lJ10gYXMgU3RyaW5nOwogIHRyeSB7CiAgICBpby5EaXJlY3RvcnkoY29udGFpbmluZ0RpcmVjdG9yeVBhdGgpLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgIGlvLkZpbGUoCiAgICAgIHBhdGguam9pbihjdXJyZW50RGlyZWN0b3J5LnBhdGgsIGZpbGVuYW1lKSwKICAgICkucmVuYW1lU3luYygnJGNvbnRhaW5pbmdEaXJlY3RvcnlQYXRoLyRmaWxlbmFtZScpOwogIH0gb24gRXhjZXB0aW9uIGNhdGNoIChlcnJvcikgewogICAgY29udGV4dC5sb2dnZXIuZXJyKCckZXJyb3InKTsKICAgIHJldHVybiBleGl0KDEpOwogIH0KfQo=", - "type": "text" + "type": "text", }, { "path": "lib/pre_gen.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfZ2VuL2RhcnRfZnJvZ19nZW4uZGFydCc7CmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfbmV3X2hvb2tzL3NyYy9leGl0X292ZXJyaWRlcy5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19uZXdfaG9va3Mvc3JjL25vcm1hbGl6ZV9yb3V0ZV9wYXRoLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6ZGFydF9mcm9nX25ld19ob29rcy9zcmMvcGFyYW1ldGVyX3N5bnRheC5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19uZXdfaG9va3Mvc3JjL3JvdXRlX2NvbmZpZ3VyYXRpb25fdXRpbHMuZGFydCc7CmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfbmV3X2hvb2tzL3NyYy9yb3V0ZV90b19wYXRoLmRhcnQnOwoKaW1wb3J0ICdwYWNrYWdlOm1hc29uL21hc29uLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7Cgp0eXBlZGVmIFJvdXRlQ29uZmlndXJhdGlvbkJ1aWxkZXIgPSBSb3V0ZUNvbmZpZ3VyYXRpb24gRnVuY3Rpb24oCiAgaW8uRGlyZWN0b3J5IGRpcmVjdG9yeSwKKTsKCnZvaWQgX2RlZmF1bHRFeGl0KGludCBjb2RlKSA9PiBFeGl0T3ZlcnJpZGVzLmN1cnJlbnQ/LmV4aXQgPz8gaW8uZXhpdDsKCnZvaWQgcHJlR2VuKAogIEhvb2tDb250ZXh0IGNvbnRleHQsIHsKICBpby5EaXJlY3Rvcnk/IGRpcmVjdG9yeSwKICBSb3V0ZUNvbmZpZ3VyYXRpb25CdWlsZGVyIGJ1aWxkQ29uZmlndXJhdGlvbiA9IGJ1aWxkUm91dGVDb25maWd1cmF0aW9uLAogIHZvaWQgRnVuY3Rpb24oaW50IGV4aXRDb2RlKSBleGl0ID0gX2RlZmF1bHRFeGl0LAp9KSB7CiAgLy8gVGhlIGRhcnQgZnJvZyBzZXJ2ZXIgcHJvamVjdCBkaXJlY3RvcnkKICBmaW5hbCBwcm9qZWN0RGlyZWN0b3J5ID0gZGlyZWN0b3J5ID8/IGlvLkRpcmVjdG9yeS5jdXJyZW50OwoKICAvLyBCdWlsZCB0aGUgcm91dGUgY29uZmlndXJhdGlvbgogIGZpbmFsIFJvdXRlQ29uZmlndXJhdGlvbiByb3V0ZUNvbmZpZ3VyYXRpb247CiAgdHJ5IHsKICAgIHJvdXRlQ29uZmlndXJhdGlvbiA9IGJ1aWxkQ29uZmlndXJhdGlvbihwcm9qZWN0RGlyZWN0b3J5KTsKICB9IG9uIEV4Y2VwdGlvbiBjYXRjaCAoZXJyb3IpIHsKICAgIGNvbnRleHQubG9nZ2VyLmVycignJGVycm9yJyk7CiAgICByZXR1cm4gZXhpdCgxKTsKICB9CgogIC8vIEdldCB0aGUgZGVzaXJlZCB0eXBlIG9mIGNyZWF0aW9uCiAgZmluYWwgdHlwZSA9IGNvbnRleHQudmFyc1sndHlwZSddIGFzIFN0cmluZzsKCiAgLy8gVmVyaWZ5IGlmIGN1cnJlbnQgcm91dGUgY29uZmlndXJhdGlvbiBoYXZlIGNvbmZsaWN0cyBhbmQgYmFpbCBvdXQgaWYKICAvLyBhbnkgYXJlIGZvdW5kCiAgdHJ5IHsKICAgIHJvdXRlQ29uZmlndXJhdGlvbi52YWxpZGF0ZSgpOwogIH0gb24gRm9ybWF0RXhjZXB0aW9uIGNhdGNoIChleGNlcHRpb24pIHsKICAgIGNvbnRleHQubG9nZ2VyLmVycignRmFpbGVkIHRvIGNyZWF0ZSAkdHlwZTogJHtleGNlcHRpb24ubWVzc2FnZX0nKTsKICAgIHJldHVybiBleGl0KDEpOwogIH0KCiAgLy8gVGhlIHBhdGggaW4gd2hpY2ggdGhlIHJvdXRlIG9yIG1pZGRsZXdhcmUgd2lsbCBiZSBjcmVhdGVkCiAgZmluYWwgcm91dGVQYXRoID0gbm9ybWFsaXplUm91dGVQYXRoKGNvbnRleHQudmFyc1sncm91dGVfcGF0aCddIGFzIFN0cmluZyk7CgogIGlmICh0eXBlID09ICdyb3V0ZScpIHsKICAgIHJldHVybiBfcHJlR2VuUm91dGUoCiAgICAgIGNvbnRleHQsCiAgICAgIHJvdXRlUGF0aDogcm91dGVQYXRoLAogICAgICByb3V0ZUNvbmZpZ3VyYXRpb246IHJvdXRlQ29uZmlndXJhdGlvbiwKICAgICAgcHJvamVjdERpcmVjdG9yeTogcHJvamVjdERpcmVjdG9yeSwKICAgICAgZXhpdDogZXhpdCwKICAgICk7CiAgfQoKICBpZiAodHlwZSA9PSAnbWlkZGxld2FyZScpIHsKICAgIHJldHVybiBfcHJlR2VuTWlkZGxld2FyZSgKICAgICAgY29udGV4dCwKICAgICAgcm91dGVQYXRoOiByb3V0ZVBhdGgsCiAgICAgIHJvdXRlQ29uZmlndXJhdGlvbjogcm91dGVDb25maWd1cmF0aW9uLAogICAgICBwcm9qZWN0RGlyZWN0b3J5OiBwcm9qZWN0RGlyZWN0b3J5LAogICAgICBleGl0OiBleGl0LAogICAgKTsKICB9CgogIGNvbnRleHQubG9nZ2VyLmVycignVW5yZWNvZ25pemVkIHR5cGU6ICR0eXBlJyk7CiAgcmV0dXJuIGV4aXQoMSk7Cn0KCnZvaWQgX3ByZUdlblJvdXRlKAogIEhvb2tDb250ZXh0IGNvbnRleHQsIHsKICByZXF1aXJlZCBTdHJpbmcgcm91dGVQYXRoLAogIHJlcXVpcmVkIFJvdXRlQ29uZmlndXJhdGlvbiByb3V0ZUNvbmZpZ3VyYXRpb24sCiAgcmVxdWlyZWQgaW8uRGlyZWN0b3J5IHByb2plY3REaXJlY3RvcnksCiAgcmVxdWlyZWQgdm9pZCBGdW5jdGlvbihpbnQgZXhpdENvZGUpIGV4aXQsCn0pIHsKICBmaW5hbCByb3V0ZXNEaXJlY3RvcnlQYXRoID0gcGF0aC5yZWxhdGl2ZSgKICAgIGlvLkRpcmVjdG9yeShwYXRoLmpvaW4ocHJvamVjdERpcmVjdG9yeS5wYXRoLCAncm91dGVzJykpLnBhdGgsCiAgKTsKCiAgLy8gVmVyaWZ5IGlmIHRoZSBlbmRwb2ludCBkb2VzIGFscmVhZHkgZXhpc3QuCiAgZmluYWwgZW5kcG9pbnRFeGlzdHMgPSByb3V0ZUNvbmZpZ3VyYXRpb24uZW5kcG9pbnRzLmNvbnRhaW5zS2V5KHJvdXRlUGF0aCk7CiAgaWYgKGVuZHBvaW50RXhpc3RzKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoJ0ZhaWxlZCB0byBjcmVhdGUgcm91dGU6ICRyb3V0ZVBhdGggYWxyZWFkeSBleGlzdHMuJyk7CiAgICByZXR1cm4gZXhpdCgxKTsKICB9CgogIC8vIFZlcmlmeSBpZiB0aGUgZ2l2ZW4gcm91dGUgYWxyZWFkeSBleGlzdHMgYXMgZGlyZWN0b3J5LgogIGZpbmFsIGV4aXN0c0FzRGlyZWN0b3J5ID0gaW8uRGlyZWN0b3J5KAogICAgcGF0aC53aXRob3V0RXh0ZW5zaW9uKAogICAgICByb3V0ZVRvUGF0aCgKICAgICAgICByb3V0ZVBhdGgsCiAgICAgICAgcHJlYW1ibGU6IHJvdXRlc0RpcmVjdG9yeVBhdGgsCiAgICAgICkudG9CcmFja2V0UGFyYW1ldGVyU3ludGF4LAogICAgKSwKICApLmV4aXN0c1N5bmMoKTsKCiAgLy8gSWYgdGhlIHJvdXRlIGRvZXMgbm90IGV4aXN0IGFzIGRpcmVjdG9yeSwgd2UgbXVzdCBjaGVjayBpZiBhbnkgb2YgaXRzCiAgLy8gYW5jZXN0b3Igcm91dGVzIGV4aXN0cyBhcyBmaWxlIHJvdXRlcyB0byBhdm9pZCByb2d1ZSByb3V0ZXMuCiAgaWYgKCFleGlzdHNBc0RpcmVjdG9yeSkgewogICAgZmluYWwgZmlsZVJvdXRlID0gcm91dGVDb25maWd1cmF0aW9uLmNvbnRhaW5pbmdGaWxlUm91dGUocm91dGVQYXRoKTsKCiAgICBpZiAoZmlsZVJvdXRlICE9IG51bGwpIHsKICAgICAgZmluYWwgZmlsZXBhdGggPSBwYXRoLm5vcm1hbGl6ZSgKICAgICAgICBwYXRoLmpvaW4oCiAgICAgICAgICByb3V0ZXNEaXJlY3RvcnlQYXRoLAogICAgICAgICAgZmlsZVJvdXRlLnBhdGgsCiAgICAgICAgKSwKICAgICAgKTsKCiAgICAgIGlvLkRpcmVjdG9yeShwYXRoLndpdGhvdXRFeHRlbnNpb24oZmlsZXBhdGgpKS5jcmVhdGVTeW5jKCk7CgogICAgICBmaW5hbCBuZXdGaWxlcGF0aCA9IGZpbGVwYXRoLnJlcGxhY2VGaXJzdCgnLmRhcnQnLCAnL2luZGV4LmRhcnQnKTsKICAgICAgaW8uRmlsZShmaWxlcGF0aCkucmVuYW1lU3luYyhuZXdGaWxlcGF0aCk7CiAgICAgIGNvbnRleHQubG9nZ2VyLmRldGFpbCgKICAgICAgICAnUmVuYW1lZCAkZmlsZXBhdGggdG8gJG5ld0ZpbGVwYXRoIHRvIGF2b2lkIHJvZ3VlIHJvdXRlcycsCiAgICAgICk7CiAgICB9CiAgfQoKICBmaW5hbCByb3V0ZUZpbGVOYW1lID0gcm91dGVUb1BhdGgoCiAgICByb3V0ZVBhdGgsCiAgICBwcmVmZXJJbmRleDogZXhpc3RzQXNEaXJlY3RvcnksCiAgICBwcmVhbWJsZTogcm91dGVzRGlyZWN0b3J5UGF0aCwKICApLnRvQnJhY2tldFBhcmFtZXRlclN5bnRheDsKCiAgY29udGV4dC5sb2dnZXIuZGV0YWlsKCdDcmVhdGluZyByb3V0ZSBmaWxlOiAkcm91dGVGaWxlTmFtZScpOwoKICBmaW5hbCBMaXN0PFN0cmluZz4gcGFyYW1ldGVyTmFtZXM7CiAgdHJ5IHsKICAgIHBhcmFtZXRlck5hbWVzID0gcm91dGVGaWxlTmFtZS5nZXRQYXJhbWV0ZXJOYW1lcygpOwogIH0gb24gRm9ybWF0RXhjZXB0aW9uIGNhdGNoIChleGNlcHRpb24pIHsKICAgIGNvbnRleHQubG9nZ2VyLmVycignRmFpbGVkIHRvIGNyZWF0ZSByb3V0ZTogJHtleGNlcHRpb24ubWVzc2FnZX0nKTsKICAgIHJldHVybiBleGl0KDEpOwogIH0KCiAgY29udGV4dC52YXJzWydpc19yb3V0ZSddID0gdHJ1ZTsKICBjb250ZXh0LnZhcnNbJ2Rpcl9wYXRoJ10gPSBwYXRoLmRpcm5hbWUocm91dGVGaWxlTmFtZSk7CiAgY29udGV4dC52YXJzWydmaWxlbmFtZSddID0gcGF0aC5iYXNlbmFtZShyb3V0ZUZpbGVOYW1lKTsKICBjb250ZXh0LnZhcnNbJ3BhcmFtcyddID0gcGFyYW1ldGVyTmFtZXM7Cn0KCnZvaWQgX3ByZUdlbk1pZGRsZXdhcmUoCiAgSG9va0NvbnRleHQgY29udGV4dCwgewogIHJlcXVpcmVkIFN0cmluZyByb3V0ZVBhdGgsCiAgcmVxdWlyZWQgUm91dGVDb25maWd1cmF0aW9uIHJvdXRlQ29uZmlndXJhdGlvbiwKICByZXF1aXJlZCBpby5EaXJlY3RvcnkgcHJvamVjdERpcmVjdG9yeSwKICByZXF1aXJlZCB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZXhpdCwKfSkgewogIGZpbmFsIHJvdXRlc0RpcmVjdG9yeVBhdGggPSBwYXRoLnJlbGF0aXZlKAogICAgaW8uRGlyZWN0b3J5KHBhdGguam9pbihwcm9qZWN0RGlyZWN0b3J5LnBhdGgsICdyb3V0ZXMnKSkucGF0aCwKICApOwoKICBjb25zdCBtaWRkbGV3YXJlRmlsZW5hbWUgPSAnX21pZGRsZXdhcmUuZGFydCc7CgogIC8vIEdldCB0aGUgcGF0aCB0byBkaXJlY3RvcnkgY29udGFpbmluZyB0aGUgbWlkZGxld2FyZSBmaWxlCiAgZmluYWwgU3RyaW5nIG1pZGRsZXdhcmVDb250YWluaW5nRGlyOwogIGlmIChyb3V0ZVBhdGggPT0gJy8nKSB7CiAgICBtaWRkbGV3YXJlQ29udGFpbmluZ0RpciA9IHJvdXRlc0RpcmVjdG9yeVBhdGg7CiAgfSBlbHNlIHsKICAgIG1pZGRsZXdhcmVDb250YWluaW5nRGlyID0gcGF0aC53aXRob3V0RXh0ZW5zaW9uKAogICAgICByb3V0ZVRvUGF0aCgKICAgICAgICByb3V0ZVBhdGgudG9CcmFja2V0UGFyYW1ldGVyU3ludGF4LAogICAgICAgIHByZWFtYmxlOiByb3V0ZXNEaXJlY3RvcnlQYXRoLAogICAgICApLAogICAgKTsKICB9CgogIC8vIFZlcmlmeSBpZiB0aGUgbWlkZGxld2FyZSBmaWxlIGFscmVhZHkgZXhpc3RzCiAgZmluYWwgbWlkZGxld2FyZUZpbGVQYXRoID0KICAgICAgcGF0aC5qb2luKG1pZGRsZXdhcmVDb250YWluaW5nRGlyLCBtaWRkbGV3YXJlRmlsZW5hbWUpOwogIGZpbmFsIG1pZGRsZXdhcmVFeGlzdHMgPSBpby5GaWxlKG1pZGRsZXdhcmVGaWxlUGF0aCkuZXhpc3RzU3luYygpOwogIGlmIChtaWRkbGV3YXJlRXhpc3RzKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoJ1RoZXJlIGlzIGFscmVhZHkgYSBtaWRkbGV3YXJlIGF0ICRtaWRkbGV3YXJlRmlsZVBhdGgnKTsKICAgIHJldHVybiBleGl0KDEpOwogIH0KCiAgLy8gVmVyaWZ5IGlmIHRoZSBnaXZlbiByb3V0ZSBhbHJlYWR5IGV4aXN0cyBhcyBkaXJlY3RvcnkKICBmaW5hbCByb3V0ZUV4aXN0c0FzRGlyZWN0b3J5ID0gaW8uRGlyZWN0b3J5KAogICAgbWlkZGxld2FyZUNvbnRhaW5pbmdEaXIudG9CcmFja2V0UGFyYW1ldGVyU3ludGF4LAogICkuZXhpc3RzU3luYygpOwoKICAvLyBJZiB0aGUgcm91dGUgZG9lcyBub3QgZXhpc3QgYXMgZGlyZWN0b3J5LCB3ZSBtdXN0IGNoZWNrIGlmIGFueSBvZiBpdHMKICAvLyBhbmNlc3RvciByb3V0ZXMgZXhpc3RzIGFzIGZpbGUgcm91dGVzIHRvIGF2b2lkIHJvZ3VlIHJvdXRlcy4KICBpZiAoIXJvdXRlRXhpc3RzQXNEaXJlY3RvcnkpIHsKICAgIGZpbmFsIGZpbGVSb3V0ZSA9IHJvdXRlQ29uZmlndXJhdGlvbi5jb250YWluaW5nRmlsZVJvdXRlKAogICAgICByb3V0ZVBhdGgsCiAgICAgIGluY2x1ZGVTZWxmOiB0cnVlLAogICAgKTsKCiAgICBpZiAoZmlsZVJvdXRlICE9IG51bGwpIHsKICAgICAgZmluYWwgZmlsZVBhdGggPSBwYXRoLm5vcm1hbGl6ZSgKICAgICAgICBwYXRoLmpvaW4ocm91dGVzRGlyZWN0b3J5UGF0aCwgZmlsZVJvdXRlLnBhdGgpLAogICAgICApOwoKICAgICAgaW8uRGlyZWN0b3J5KHBhdGgud2l0aG91dEV4dGVuc2lvbihmaWxlUGF0aCkpLmNyZWF0ZVN5bmMoKTsKCiAgICAgIGZpbmFsIG5ld0ZpbGVwYXRoID0gZmlsZVBhdGgucmVwbGFjZUZpcnN0KCcuZGFydCcsICcvaW5kZXguZGFydCcpOwogICAgICBpby5GaWxlKGZpbGVQYXRoKS5yZW5hbWVTeW5jKG5ld0ZpbGVwYXRoKTsKICAgICAgY29udGV4dC5sb2dnZXIKICAgICAgICAgIC5kZXRhaWwoJ1JlbmFtZWQgJGZpbGVQYXRoIHRvICRuZXdGaWxlcGF0aCB0byBhdm9pZCByb2d1ZSByb3V0ZXMnKTsKICAgIH0KICB9CgogIHRyeSB7CiAgICBtaWRkbGV3YXJlQ29udGFpbmluZ0Rpci50b0JyYWNrZXRQYXJhbWV0ZXJTeW50YXguZ2V0UGFyYW1ldGVyTmFtZXMoKTsKICB9IG9uIEZvcm1hdEV4Y2VwdGlvbiBjYXRjaCAoZXhjZXB0aW9uKSB7CiAgICBjb250ZXh0LmxvZ2dlci5lcnIoJ0ZhaWxlZCB0byBjcmVhdGUgbWlkZGxld2FyZTogJHtleGNlcHRpb24ubWVzc2FnZX0nKTsKICAgIHJldHVybiBleGl0KDEpOwogIH0KCiAgY29udGV4dC5sb2dnZXIuZGV0YWlsKAogICAgJ0NyZWF0aW5nIG1pZGRsZXdhcmUgZmlsZTogJHttaWRkbGV3YXJlRmlsZVBhdGgudG9CcmFja2V0UGFyYW1ldGVyU3ludGF4fScsCiAgKTsKCiAgY29udGV4dC52YXJzWydpc19taWRkbGV3YXJlJ10gPSB0cnVlOwogIGNvbnRleHQudmFyc1snZGlyX3BhdGgnXSA9IG1pZGRsZXdhcmVDb250YWluaW5nRGlyLnRvQnJhY2tldFBhcmFtZXRlclN5bnRheDsKICBjb250ZXh0LnZhcnNbJ2ZpbGVuYW1lJ10gPSBtaWRkbGV3YXJlRmlsZW5hbWU7Cn0K", - "type": "text" + "type": "text", }, { "path": "lib/src/exit_overrides.dart", "data": "aW1wb3J0ICdkYXJ0OmFzeW5jJzsKaW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmNvbnN0IF9hc3luY1J1blpvbmVkID0gcnVuWm9uZWQ7CgphYnN0cmFjdCBjbGFzcyBFeGl0T3ZlcnJpZGVzIHsKICBzdGF0aWMgZmluYWwgX3Rva2VuID0gT2JqZWN0KCk7CgogIHN0YXRpYyBFeGl0T3ZlcnJpZGVzPyBnZXQgY3VycmVudCB7CiAgICByZXR1cm4gWm9uZS5jdXJyZW50W190b2tlbl0gYXMgRXhpdE92ZXJyaWRlcz87CiAgfQoKICBzdGF0aWMgUiBydW5ab25lZDxSPihSIEZ1bmN0aW9uKCkgYm9keSwge3ZvaWQgRnVuY3Rpb24oaW50KT8gZXhpdH0pIHsKICAgIGZpbmFsIG92ZXJyaWRlcyA9IF9FeGl0T3ZlcnJpZGVzU2NvcGUoZXhpdCk7CiAgICByZXR1cm4gX2FzeW5jUnVuWm9uZWQoYm9keSwgem9uZVZhbHVlczoge190b2tlbjogb3ZlcnJpZGVzfSk7CiAgfQoKICB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZ2V0IGV4aXQgPT4gaW8uZXhpdDsKfQoKY2xhc3MgX0V4aXRPdmVycmlkZXNTY29wZSBleHRlbmRzIEV4aXRPdmVycmlkZXMgewogIF9FeGl0T3ZlcnJpZGVzU2NvcGUodGhpcy5fZXhpdCk7CgogIGZpbmFsIEV4aXRPdmVycmlkZXM/IF9wcmV2aW91cyA9IEV4aXRPdmVycmlkZXMuY3VycmVudDsKICBmaW5hbCB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSk/IF9leGl0OwoKICBAb3ZlcnJpZGUKICB2b2lkIEZ1bmN0aW9uKGludCBleGl0Q29kZSkgZ2V0IGV4aXQgewogICAgcmV0dXJuIF9leGl0ID8/IF9wcmV2aW91cz8uZXhpdCA/PyBzdXBlci5leGl0OwogIH0KfQo=", - "type": "text" + "type": "text", }, { "path": "lib/src/normalize_route_path.dart", "data": "aW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19uZXdfaG9va3Mvc3JjL3BhcmFtZXRlcl9zeW50YXguZGFydCc7CgpTdHJpbmcgbm9ybWFsaXplUm91dGVQYXRoKFN0cmluZyByb3V0ZVBhdGgpIHsKICBmaW5hbCByZXBsYWNlZCA9IHJvdXRlUGF0aC50b0RpYW1vbmRQYXJhbWV0ZXJTeW50YXgucmVwbGFjZUFsbChyJ1wnLCAnLycpOwoKICBmaW5hbCBzZWdtZW50cyA9IHJlcGxhY2VkLnNwbGl0KCcvJyk7CgogIGZpbmFsIG5vcm1hbGl6ZWRTZWdtZW50cyA9CiAgICAgIHNlZ21lbnRzLmZvbGQoPFN0cmluZz5bXSwgKHByZXZpb3VzVmFsdWUsIHNlZ21lbnQpIHsKICAgIGlmIChzZWdtZW50ID09ICcuLicpIHsKICAgICAgaWYgKHByZXZpb3VzVmFsdWUubGVuZ3RoID4gMSkgewogICAgICAgIHByZXZpb3VzVmFsdWUucmVtb3ZlTGFzdCgpOwogICAgICB9CiAgICB9IGVsc2UgaWYgKHNlZ21lbnQuaXNOb3RFbXB0eSAmJiBzZWdtZW50ICE9ICcuJykgewogICAgICBwcmV2aW91c1ZhbHVlLmFkZChzZWdtZW50LmVuY29kZVNlZ21lbnQoKSk7CiAgICB9CiAgICByZXR1cm4gcHJldmlvdXNWYWx1ZTsKICB9KTsKCiAgcmV0dXJuICcvJHtub3JtYWxpemVkU2VnbWVudHMuam9pbignLycpfSc7Cn0KCmV4dGVuc2lvbiBvbiBTdHJpbmcgewogIFN0cmluZyBlbmNvZGVTZWdtZW50KCkgewogICAgZmluYWwgZW5jb2RlZCA9IFVyaS5lbmNvZGVDb21wb25lbnQodGhpcyk7CiAgICBpZiAoaGFzRGlhbW9uZFBhcmFtZXRlcikgewogICAgICByZXR1cm4gZW5jb2RlZC5yZXBsYWNlQWxsKCclM0MnLCAnPCcpLnJlcGxhY2VBbGwoJyUzRScsICc+Jyk7CiAgICB9CiAgICByZXR1cm4gZW5jb2RlZDsKICB9Cn0K", - "type": "text" + "type": "text", }, { "path": "lib/src/parameter_syntax.dart", "data": "ZXh0ZW5zaW9uIFBhcmFtZXRlclN5bnRheCBvbiBTdHJpbmcgewogIC8vLyBSZXBsYWNlcyBbXSBmb3IgPD4KICBTdHJpbmcgZ2V0IHRvRGlhbW9uZFBhcmFtZXRlclN5bnRheCB7CiAgICByZXR1cm4gcmVwbGFjZUFsbCgnWycsICc8JykucmVwbGFjZUFsbCgnXScsICc+Jyk7CiAgfQoKICAvLy8gUmVwbGFjZXMgPD4gZm9yIFtdCiAgU3RyaW5nIGdldCB0b0JyYWNrZXRQYXJhbWV0ZXJTeW50YXggewogICAgcmV0dXJuIHJlcGxhY2VBbGwoJzwnLCAnWycpLnJlcGxhY2VBbGwoJz4nLCAnXScpOwogIH0KCiAgLy8vIERldGVjdCBpZiB0aGUgZ2l2ZW4gc3RyaW5nIGhhcyBhIDwgYW5kIGEgPiBhZnRlciBpdAogIGJvb2wgZ2V0IGhhc0RpYW1vbmRQYXJhbWV0ZXIgewogICAgZmluYWwgcmVnZXhwID0gUmVnRXhwKCc8Lio/PicpOwogICAgcmV0dXJuIHJlZ2V4cC5oYXNNYXRjaCh0aGlzKTsKICB9CgogIC8vLyBHZXQgdGhlIHJvdXRlIHBhcmFtZXRlcnMgZnJvbSB0aGUgZ2l2ZW4gc3RyaW5nLgogIExpc3Q8U3RyaW5nPiBnZXRQYXJhbWV0ZXJOYW1lcygpIHsKICAgIGZpbmFsIHJlZ2V4cCA9IFJlZ0V4cChyJ1xbKC4qPylcXScpOwogICAgZmluYWwgbmFtZXMgPSByZWdleHAKICAgICAgICAuYWxsTWF0Y2hlcyh0b0JyYWNrZXRQYXJhbWV0ZXJTeW50YXgpCiAgICAgICAgLm1hcCgobSkgPT4gbVswXT8ucmVwbGFjZUFsbChSZWdFeHAocidbXFtcXV0nKSwgJycpKQogICAgICAgIC53aGVyZSgoZWwpID0+IGVsICE9IG51bGwpCiAgICAgICAgLmNhc3Q8U3RyaW5nPigpOwoKICAgIGZpbmFsIGR1cGxpY2F0ZXMgPSBuYW1lcwogICAgICAgIC50b1NldCgpCiAgICAgICAgLndoZXJlKChlbGVtZW50KSA9PiBuYW1lcy53aGVyZSgoZWwpID0+IGVsID09IGVsZW1lbnQpLmxlbmd0aCA+IDEpOwogICAgaWYgKGR1cGxpY2F0ZXMuaXNOb3RFbXB0eSkgewogICAgICBmaW5hbCBwbHVyYWwgPSBkdXBsaWNhdGVzLmxlbmd0aCA+IDE7CiAgICAgIGZpbmFsIG1lc3NhZ2UgPSAnRHVwbGljYXRlIHBhcmFtZXRlciBuYW1lJHtwbHVyYWwgPyAncycgOiAnJ30gZm91bmQ6ICcKICAgICAgICAgICcke2R1cGxpY2F0ZXMuam9pbignLCAnKX0nOwogICAgICB0aHJvdyBGb3JtYXRFeGNlcHRpb24obWVzc2FnZSk7CiAgICB9CgogICAgcmV0dXJuIG5hbWVzLnRvTGlzdCgpOwogIH0KfQo=", - "type": "text" + "type": "text", }, { "path": "lib/src/route_configuration_utils.dart", "data": "aW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19nZW4vZGFydF9mcm9nX2dlbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOm1hc29uL21hc29uLmRhcnQnOwoKZXh0ZW5zaW9uIFJvdXRlQ29uZmlndXJhdGlvblV0aWxzIG9uIFJvdXRlQ29uZmlndXJhdGlvbiB7CiAgLy8vIFJlcG9ydCByb2d1ZSByb3V0ZXMgYW5kIHJvdXRlIGNvbmZsaWN0cy4KICB2b2lkIHZhbGlkYXRlKCkgewogICAgcmVwb3J0Um9ndWVSb3V0ZXMoCiAgICAgIHRoaXMsCiAgICAgIG9uUm9ndWVSb3V0ZTogKGZpbGVQYXRoLCBpZGVhbFBhdGgpIHsKICAgICAgICB0aHJvdyBGb3JtYXRFeGNlcHRpb24oCiAgICAgICAgICAnJydSb2d1ZSByb3V0ZSBkZXRlY3RlZC4ke2RlZmF1bHRGb3JlZ3JvdW5kLndyYXAoJyAnKX1SZW5hbWUgJHtsaWdodEN5YW4ud3JhcChmaWxlUGF0aCl9IHRvICR7bGlnaHRDeWFuLndyYXAoaWRlYWxQYXRoKX0uJycnLAogICAgICAgICk7CiAgICAgIH0sCiAgICApOwoKICAgIHJlcG9ydFJvdXRlQ29uZmxpY3RzKAogICAgICB0aGlzLAogICAgICBvblJvdXRlQ29uZmxpY3Q6ICgKICAgICAgICBTdHJpbmcgb3JpZ2luYWxGaWxlUGF0aCwKICAgICAgICBTdHJpbmcgY29uZmxpY3RpbmdGaWxlUGF0aCwKICAgICAgICBTdHJpbmcgY29uZmxpY3RpbmdFbmRwb2ludCwKICAgICAgKSB7CiAgICAgICAgdGhyb3cgRm9ybWF0RXhjZXB0aW9uKAogICAgICAgICAgJycnUm91dGUgY29uZmxpY3QgZGV0ZWN0ZWQuICR7bGlnaHRDeWFuLndyYXAob3JpZ2luYWxGaWxlUGF0aCl9IGFuZCAke2xpZ2h0Q3lhbi53cmFwKGNvbmZsaWN0aW5nRmlsZVBhdGgpfSBib3RoIHJlc29sdmUgdG8gJHtsaWdodEN5YW4ud3JhcChjb25mbGljdGluZ0VuZHBvaW50KX0uJycnLAogICAgICAgICk7CiAgICAgIH0sCiAgICApOwogIH0KCiAgLy8vIENoZWNrIGlmIHRoZSBhbmNlc3RvcnMgb2YgYSByb3V0ZSBleGlzdHMgYXMgZmlsZSByb3V0ZXMuCiAgLy8vIFJldHVybiB0aGUgaW5uZXJtb3N0IHJvdXRlIHRoYXQgZXhpc3RzIGFzIGZpbGUgcm91dGUgaWYgYW55LgogIC8vLwogIC8vLyBPbiBEYXJ0IEZyb2csIGZpbGUgcm91dGVzIGFyZSByb3V0ZXMgZGVmaW5lZCBieSBhIGZpbGUgdGhhdCBoYXMgdGhlIGxhc3QKICAvLy8gc2VnbWVudCBvZiB0aGUgcmVzdWx0aW5nIFVSSSBhcyBpdHMgbmFtZSwgYXMgb3Bwb3NlZCB0byBpbmRleAogIC8vLyByb3V0ZXMgdGhhdCBhcmUgcmVwcmVzZW50ZWQgYnkgYW4gaW5kZXggZmlsZS4KICAvLy8KICAvLy8gVGhpcyBhc3N1bWVzIHRoYXQgdGhlIHJvdXRlIGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gdmFsaWRhdGVkIGFnYWluc3Qgcm9ndWUKICAvLy8gcm91dGVzIGFuZCByb3V0ZSBjb25mbGljdHMuCiAgLy8vCiAgLy8vIEl0IGFsc28gYXNzdW1lcyB0aGF0IHRoZSBbcm91dGVdIGlzIG5vcm1hbGl6ZWQgdG8gdXNlIHRoZSBzYW1lIHBhcmFtZXRlcgogIC8vLyBzeW50YXggYXMgdXNlZCBpbnRlcm5hbGx5IGJ5IFtSb3V0ZUNvbmZpZ3VyYXRpb25dLgogIC8vLwogIC8vLyBFeGFtcGxlOgogIC8vLyBGb3IgdGhlIHJvdXRlIGAvdXNlcnMvW2lkXS9wb3N0cy9bcG9zdF9pZF1gLCBpdCB2ZXJpZmllcyB0aGUgZXhpc3RlbmNlIG9mCiAgLy8vIGFueSBvZiB0aGUgZm9sbG93aW5nIHJvdXRlcywgaW4gdGhpcyBvcmRlcjoKICAvLy8gLSBgL3VzZXJzL1tpZF0vcG9zdHMuZGFydGAKICAvLy8gLSBgL3VzZXJzL1tpZF0uZGFydGAKICAvLy8gLSBgL3VzZXJzLmRhcnRgCiAgUm91dGVGaWxlPyBjb250YWluaW5nRmlsZVJvdXRlKAogICAgU3RyaW5nIHJvdXRlLCB7CiAgICBib29sIGluY2x1ZGVTZWxmID0gZmFsc2UsCiAgfSkgewogICAgZmluYWwgc2VnbWVudHMgPSByb3V0ZS5zcGxpdCgnLycpOwogICAgZmluYWwgY29udGFpbmluZ1JvdXRlcyA9IHNlZ21lbnRzCiAgICAgICAgLm1hcCgoc2VnbWVudCkgewogICAgICAgICAgcmV0dXJuIHNlZ21lbnRzLnRha2VXaGlsZSgoZWxlbWVudCkgPT4gZWxlbWVudCAhPSBzZWdtZW50KS5qb2luKCcvJyk7CiAgICAgICAgfSkKICAgICAgICAud2hlcmUoKHJvdXRlKSA9PiByb3V0ZS5pc05vdEVtcHR5KQogICAgICAgIC50b0xpc3QoKTsKCiAgICBpZiAoaW5jbHVkZVNlbGYpIHsKICAgICAgY29udGFpbmluZ1JvdXRlcy5hZGQocm91dGUpOwogICAgfQoKICAgIGZvciAoZmluYWwgY29udGFpbmluZ1JvdXRlIGluIGNvbnRhaW5pbmdSb3V0ZXMucmV2ZXJzZWQpIHsKICAgICAgaWYgKCFlbmRwb2ludHMuY29udGFpbnNLZXkoY29udGFpbmluZ1JvdXRlKSkgewogICAgICAgIGNvbnRpbnVlOwogICAgICB9CgogICAgICBmaW5hbCByb3V0ZUZpbGUgPSBlbmRwb2ludHNbY29udGFpbmluZ1JvdXRlXSEuZmlyc3Q7CgogICAgICAvLyBIRVVSSVNUSUM6IGluZGV4IHJvdXRlcyBoYXZlIHBhdGhzIHRvIHRoZSByb3V0ZSBmaWxlLAogICAgICAvLyB3aGljaCBuYW1lZCAnaW5kZXguZGFydCcKICAgICAgZmluYWwgaXNJbmRleFJvdXRlID0gcm91dGVGaWxlLnBhdGguZW5kc1dpdGgoJ2luZGV4LmRhcnQnKTsKCiAgICAgIC8vIElmIHRoZSByb3V0ZSBpcyBhbiBpbmRleCByb3V0ZSwgdGhlcmUgd29udCBiZSBmaWxlIHJvdXRlcyBvbiB0aGUKICAgICAgLy8gdXBwZXIgbGV2ZWwsIGFzc3VtaW5nIHRoYXQgdGhlcmUgaXMgbm8gcm9ndWUgcm91dGVzIG9uCiAgICAgIC8vIHRoZSBjb25maWd1cmF0aW9uLgogICAgICBpZiAoaXNJbmRleFJvdXRlKSB7CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgIH0KICAgICAgcmV0dXJuIHJvdXRlRmlsZTsKICAgIH0KICAgIHJldHVybiBudWxsOwogIH0KfQo=", - "type": "text" + "type": "text", }, { "path": "lib/src/route_to_path.dart", "data": "aW1wb3J0ICdwYWNrYWdlOnBhdGgvcGF0aC5kYXJ0JyBhcyBwYXRoOwoKLy8vIENvbnZlcnQgYSByb3V0ZSB0byBhIGZpbGUgcGF0aC4KLy8vCi8vLyBJZiBbcHJlZmVySW5kZXhdIGlzIHRydWUsIHRoZSBwYXRoIHdpbGwgYmUgY29udmVydGVkIHRvIGEgZGlyZWN0b3J5IHBhdGgKLy8vIHdpdGggYW4gaW5kZXggZGFydCBmaWxlLgovLy8KLy8vIGBgYG1hcmtkb3duCi8vLyAiLyIgLT4gIi4vcm91dGVzL2luZGV4LmRhcnQiIChpZiBwcmVmZXJJbmRleCBpcyBmYWxzZSkKLy8vICIvIiAtPiAiLi9yb3V0ZXMvaW5kZXguZGFydCIgKGlmIHByZWZlckluZGV4IGlzIHRydWUpCi8vLyAiL2hlbGxvIiAtPiAiLi9yb3V0ZXMvaGVsbG8uZGFydCIgKGlmIHByZWZlckluZGV4IGlzIGZhbHNlKQovLy8gIi9oZWxsbyIgLT4gIi4vcm91dGVzL2hlbGxvL2luZGV4LmRhcnQiIChpZiBwcmVmZXJJbmRleCBpcyB0cnVlKQovLy8gIi9oZWxsby9bbmFtZV0iIC0+ICIuL3JvdXRlcy9oZWxsby9bbmFtZV0uZGFydCIgKGlmIHByZWZlckluZGV4IGlzIGZhbHNlKQovLy8gIi9oZWxsby9bbmFtZV0iIC0+ICIuL3JvdXRlcy9oZWxsby9bbmFtZV0vaW5kZXguZGFydCIgKGlmIHByZWZlckluZGV4IGlzIHRydWUpCi8vLyBgYGAKU3RyaW5nIHJvdXRlVG9QYXRoKAogIFN0cmluZyByb3V0ZSwgewogIGJvb2wgcHJlZmVySW5kZXggPSBmYWxzZSwKICBTdHJpbmcgcHJlYW1ibGUgPSAncm91dGVzJywKICBwYXRoLkNvbnRleHQ/IHBhdGhDb250ZXh0LAp9KSB7CiAgZmluYWwgY29udGV4dCA9IHBhdGhDb250ZXh0ID8/IHBhdGguY29udGV4dDsKICBmaW5hbCBzZXBhcmF0b3IgPSBjb250ZXh0LnNlcGFyYXRvcjsKCiAgaWYgKHJvdXRlID09ICcvJykgewogICAgcmV0dXJuICckcHJlYW1ibGUke3NlcGFyYXRvcn1pbmRleC5kYXJ0JzsKICB9CgogIGZpbmFsIHAgPQogICAgICByb3V0ZS5zcGxpdCgnLycpLndoZXJlKChlbGVtZW50KSA9PiBlbGVtZW50LmlzTm90RW1wdHkpLmpvaW4oc2VwYXJhdG9yKTsKCiAgaWYgKHByZWZlckluZGV4KSB7CiAgICBmaW5hbCBwYXRoV2l0aEluZGV4ID0gY29udGV4dC5qb2luKHAsICdpbmRleC5kYXJ0Jyk7CiAgICByZXR1cm4gY29udGV4dC5qb2luKHByZWFtYmxlLCBwYXRoV2l0aEluZGV4KTsKICB9CgogIGZpbmFsIHBhdGhXaXRoRXh0ZW5zaW9uID0gJyRwLmRhcnQnOwogIHJldHVybiBjb250ZXh0LmpvaW4ocHJlYW1ibGUsIHBhdGhXaXRoRXh0ZW5zaW9uKTsKfQo=", - "type": "text" + "type": "text", }, { "path": "post_gen.dart", "data": "aW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19uZXdfaG9va3MvcG9zdF9nZW4uZGFydCc7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKCkZ1dHVyZTx2b2lkPiBydW4oSG9va0NvbnRleHQgY29udGV4dCkgPT4gcG9zdEdlbihjb250ZXh0KTsK", - "type": "text" + "type": "text", }, { "path": "pre_gen.dart", "data": "aW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19uZXdfaG9va3MvcHJlX2dlbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOm1hc29uL21hc29uLmRhcnQnOwoKRnV0dXJlPHZvaWQ+IHJ1bihIb29rQ29udGV4dCBjb250ZXh0KSBhc3luYyA9PiBwcmVHZW4oY29udGV4dCk7Cg==", - "type": "text" + "type": "text", }, { "path": "pubspec.yaml", "data": "bmFtZTogZGFydF9mcm9nX25ld19ob29rcwpwdWJsaXNoX3RvOiBub25lCgplbnZpcm9ubWVudDoKICBzZGs6ICI+PTMuMC4wIDw0LjAuMCIKCmRlcGVuZGVuY2llczoKICBkYXJ0X2Zyb2dfZ2VuOiBeMi4wLjAKICBtYXNvbjogXjAuMS4wCiAgcGF0aDogXjEuOC4wCgpkZXZfZGVwZW5kZW5jaWVzOgogIG1vY2t0YWlsOiBeMS4wLjAKICB0ZXN0OiBeMS4xOS4yCiAgdmVyeV9nb29kX2FuYWx5c2lzOiBeOS4wLjAK", - "type": "text" + "type": "text", }, { "path": "test/post_gen_test.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfbmV3X2hvb2tzL3Bvc3RfZ2VuLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6ZGFydF9mcm9nX25ld19ob29rcy9zcmMvZXhpdF9vdmVycmlkZXMuZGFydCc7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOm1vY2t0YWlsL21vY2t0YWlsLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6cGF0aC9wYXRoLmRhcnQnIGFzIHBhdGg7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7CgpjbGFzcyBfTW9ja0xvZ2dlciBleHRlbmRzIE1vY2sgaW1wbGVtZW50cyBMb2dnZXIge30KCmNsYXNzIF9GYWtlSG9va0NvbnRleHQgZXh0ZW5kcyBGYWtlIGltcGxlbWVudHMgSG9va0NvbnRleHQgewogIF9GYWtlSG9va0NvbnRleHQoe0xvZ2dlcj8gbG9nZ2VyfSkgOiBfbG9nZ2VyID0gbG9nZ2VyID8/IF9Nb2NrTG9nZ2VyKCk7CgogIGZpbmFsIExvZ2dlciBfbG9nZ2VyOwoKICB2YXIgX3ZhcnMgPSA8U3RyaW5nLCBkeW5hbWljPnt9OwoKICBAb3ZlcnJpZGUKICBNYXA8U3RyaW5nLCBkeW5hbWljPiBnZXQgdmFycyA9PiBfdmFyczsKCiAgQG92ZXJyaWRlCiAgc2V0IHZhcnMoTWFwPFN0cmluZywgZHluYW1pYz4gdmFsdWUpID0+IF92YXJzID0gdmFsdWU7CgogIEBvdmVycmlkZQogIExvZ2dlciBnZXQgbG9nZ2VyID0+IF9sb2dnZXI7Cn0KCnZvaWQgbWFpbigpIHsKICBncm91cCgncG9zdEdlbicsICgpIHsKICAgIGxhdGUgSG9va0NvbnRleHQgY29udGV4dDsKICAgIGxhdGUgTG9nZ2VyIGxvZ2dlcjsKCiAgICBzZXRVcCgoKSB7CiAgICAgIGxvZ2dlciA9IF9Nb2NrTG9nZ2VyKCk7CiAgICAgIGNvbnRleHQgPSBfRmFrZUhvb2tDb250ZXh0KGxvZ2dlcjogbG9nZ2VyKTsKICAgIH0pOwoKICAgIHRlc3QoJ3Bvc3RHZW4gY29tcGxldGVzJywgKCkgewogICAgICBjb250ZXh0LnZhcnNbJ2Rpcl9wYXRoJ10gPSAncm91dGVzL25ld19yb3V0ZSc7CiAgICAgIGNvbnRleHQudmFyc1snZmlsZW5hbWUnXSA9ICdpbmRleC5kYXJ0JzsKICAgICAgZXhwZWN0KAogICAgICAgIEV4aXRPdmVycmlkZXMucnVuWm9uZWQoCiAgICAgICAgICAoKSBhc3luYyA9PiBwb3N0R2VuKGNvbnRleHQpLAogICAgICAgICAgZXhpdDogKF8pIHt9LAogICAgICAgICksCiAgICAgICAgY29tcGxldGVzLAogICAgICApOwogICAgfSk7CgogICAgdGVzdCgnZXhpdCgxKSBpZiBkaXJfcGF0aCBpcyBub3QgZGVmaW5lZCcsICgpIHsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgcG9zdEdlbihjb250ZXh0LCBleGl0OiBleGl0Q2FsbHMuYWRkKTsKICAgICAgZXhwZWN0KGV4aXRDYWxscywgZXF1YWxzKFsxXSkpOwogICAgfSk7CgogICAgdGVzdCgnbW92ZXMgZmlsZSB0byBzdXBwb3NlZCBkaXJlY3RvcnknLCAoKSB7CiAgICAgIGZpbmFsIGRpcmVjdG9yeSA9IGlvLkRpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKAogICAgICAgICdkYXJ0X2Zyb2dfbmV3X2hvb2tzX3Rlc3QnLAogICAgICApOwogICAgICBhZGRUZWFyRG93bigoKSB7CiAgICAgICAgZGlyZWN0b3J5LmRlbGV0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgfSk7CiAgICAgIGZpbmFsIGZpbGVQYXRoID0gcGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAnaW5kZXguZGFydCcpOwogICAgICBpby5GaWxlKGZpbGVQYXRoKQogICAgICAgIC4uY3JlYXRlU3luYyhyZWN1cnNpdmU6IHRydWUpCiAgICAgICAgLi53cml0ZUFzU3RyaW5nU3luYygnY29udGVudCcpOwoKICAgICAgY29udGV4dC52YXJzWydkaXJfcGF0aCddID0gJ3JvdXRlcy9uZXdfcm91dGUnOwogICAgICBjb250ZXh0LnZhcnNbJ2ZpbGVuYW1lJ10gPSAnaW5kZXguZGFydCc7CgogICAgICBwb3N0R2VuKGNvbnRleHQsIGRpcmVjdG9yeTogZGlyZWN0b3J5KTsKCiAgICAgIGV4cGVjdCgKICAgICAgICBpby5GaWxlKHBhdGguam9pbihkaXJlY3RvcnkucGF0aCwgJ3JvdXRlcy9uZXdfcm91dGUvaW5kZXguZGFydCcpKQogICAgICAgICAgICAucmVhZEFzU3RyaW5nU3luYygpLAogICAgICAgICdjb250ZW50JywKICAgICAgKTsKICAgIH0pOwogIH0pOwp9Cg==", - "type": "text" + "type": "text", }, { "path": "test/pre_gen_test.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJyBhcyBpbzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfZ2VuL2RhcnRfZnJvZ19nZW4uZGFydCc7CmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfbmV3X2hvb2tzL3ByZV9nZW4uZGFydCc7CmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfbmV3X2hvb2tzL3NyYy9leGl0X292ZXJyaWRlcy5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOm1hc29uL21hc29uLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6bW9ja3RhaWwvbW9ja3RhaWwuZGFydCc7CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKaW1wb3J0ICdwYWNrYWdlOnRlc3QvdGVzdC5kYXJ0JzsKCmNsYXNzIF9Nb2NrTG9nZ2VyIGV4dGVuZHMgTW9jayBpbXBsZW1lbnRzIExvZ2dlciB7fQoKY2xhc3MgX01vY2tSb3V0ZUNvbmZpZ3VyYXRpb24gZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgUm91dGVDb25maWd1cmF0aW9uIHt9CgpjbGFzcyBfRmFrZUhvb2tDb250ZXh0IGV4dGVuZHMgRmFrZSBpbXBsZW1lbnRzIEhvb2tDb250ZXh0IHsKICBfRmFrZUhvb2tDb250ZXh0KHtMb2dnZXI/IGxvZ2dlcn0pIDogX2xvZ2dlciA9IGxvZ2dlciA/PyBfTW9ja0xvZ2dlcigpOwoKICBmaW5hbCBMb2dnZXIgX2xvZ2dlcjsKCiAgdmFyIF92YXJzID0gPFN0cmluZywgZHluYW1pYz57fTsKCiAgQG92ZXJyaWRlCiAgTWFwPFN0cmluZywgZHluYW1pYz4gZ2V0IHZhcnMgPT4gX3ZhcnM7CgogIEBvdmVycmlkZQogIHNldCB2YXJzKE1hcDxTdHJpbmcsIGR5bmFtaWM+IHZhbHVlKSA9PiBfdmFycyA9IHZhbHVlOwoKICBAb3ZlcnJpZGUKICBMb2dnZXIgZ2V0IGxvZ2dlciA9PiBfbG9nZ2VyOwp9Cgpjb25zdCB2YWxpZFJvdXRlQ29uZmlndXJhdGlvbiA9IFJvdXRlQ29uZmlndXJhdGlvbigKICBnbG9iYWxNaWRkbGV3YXJlOiBNaWRkbGV3YXJlRmlsZSgKICAgIG5hbWU6ICdtaWRkbGV3YXJlJywKICAgIHBhdGg6ICcuLi9yb3V0ZXMvX21pZGRsZXdhcmUuZGFydCcsCiAgKSwKICBtaWRkbGV3YXJlOiBbCiAgICBNaWRkbGV3YXJlRmlsZSgKICAgICAgbmFtZTogJ21pZGRsZXdhcmUnLAogICAgICBwYXRoOiAnLi4vcm91dGVzL19taWRkbGV3YXJlLmRhcnQnLAogICAgKSwKICAgIE1pZGRsZXdhcmVGaWxlKAogICAgICBuYW1lOiByJyRpZF9fbWlkZGxld2FyZScsCiAgICAgIHBhdGg6ICcuLi9yb3V0ZXMvW2lkXS9fbWlkZGxld2FyZS5kYXJ0JywKICAgICksCiAgXSwKICBkaXJlY3RvcmllczogWwogICAgUm91dGVEaXJlY3RvcnkoCiAgICAgIG5hbWU6ICdfJywKICAgICAgcm91dGU6ICcvJywKICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgIGZpbGVzOiBbXSwKICAgICAgcGFyYW1zOiBbXSwKICAgICksCiAgICBSb3V0ZURpcmVjdG9yeSgKICAgICAgbmFtZTogcidfJGlkJywKICAgICAgcm91dGU6ICcvPGlkPicsCiAgICAgIG1pZGRsZXdhcmU6IFtdLAogICAgICBmaWxlczogW10sCiAgICAgIHBhcmFtczogW10sCiAgICApLAogICAgUm91dGVEaXJlY3RvcnkoCiAgICAgIG5hbWU6IHInXyRpZF9leGlzdGluZ19hc19kaXJlY3RvcnknLAogICAgICByb3V0ZTogJy88aWQ+L2V4aXN0aW5nX2FzX2RpcicsCiAgICAgIGZpbGVzOiBbXSwKICAgICAgbWlkZGxld2FyZTogW10sCiAgICAgIHBhcmFtczogW10sCiAgICApLAogIF0sCiAgcm91dGVzOiBbCiAgICBSb3V0ZUZpbGUoCiAgICAgIG5hbWU6ICdpbmRleCcsCiAgICAgIHBhdGg6ICcuLi9yb3V0ZXMvaW5kZXguZGFydCcsCiAgICAgIHJvdXRlOiAnLycsCiAgICAgIHBhcmFtczogW10sCiAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICksCiAgICBSb3V0ZUZpbGUoCiAgICAgIG5hbWU6IHInJGlkX2V4aXN0aW5nX2FzX2ZpbGUnLAogICAgICBwYXRoOiAnLi4vcm91dGVzL1tpZF0vZXhpc3RpbmdfYXNfZmlsZS5kYXJ0JywKICAgICAgcm91dGU6ICcvZXhpc3RpbmdfYXNfZmlsZScsCiAgICAgIHBhcmFtczogW10sCiAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICksCiAgICBSb3V0ZUZpbGUoCiAgICAgIG5hbWU6IHInJGlkX2V4aXN0aW5nX2FzX2Rpcl9pbmRleCcsCiAgICAgIHBhdGg6ICcuLi9yb3V0ZXMvW2lkXS9leGlzdGluZ19hc19kaXIvaW5kZXguZGFydCcsCiAgICAgIHJvdXRlOiAnLycsCiAgICAgIHBhcmFtczogW10sCiAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICksCiAgXSwKICBlbmRwb2ludHM6IHsKICAgICcvJzogPFJvdXRlRmlsZT5bCiAgICAgIFJvdXRlRmlsZSgKICAgICAgICBuYW1lOiAnaW5kZXgnLAogICAgICAgIHBhdGg6ICcuLi9yb3V0ZXMvaW5kZXguZGFydCcsCiAgICAgICAgcm91dGU6ICcvJywKICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgKSwKICAgIF0sCiAgICAnLzxpZD4vZXhpc3RpbmdfYXNfZmlsZSc6IDxSb3V0ZUZpbGU+WwogICAgICBSb3V0ZUZpbGUoCiAgICAgICAgbmFtZTogcickaWRfZXhpc3RpbmdfYXNfZmlsZScsCiAgICAgICAgcGF0aDogJy4uL3JvdXRlcy9baWRdL2V4aXN0aW5nX2FzX2ZpbGUuZGFydCcsCiAgICAgICAgcm91dGU6ICcvZXhpc3RpbmdfYXNfZmlsZScsCiAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICksCiAgICBdLAogICAgJy88aWQ+L2V4aXN0aW5nX2FzX2Rpcic6IDxSb3V0ZUZpbGU+WwogICAgICBSb3V0ZUZpbGUoCiAgICAgICAgbmFtZTogcickaWRfZXhpc3RpbmdfYXNfZGlyX2luZGV4JywKICAgICAgICBwYXRoOiAnLi4vcm91dGVzL1tpZF0vZXhpc3RpbmdfYXNfZGlyL2luZGV4LmRhcnQnLAogICAgICAgIHJvdXRlOiAnLycsCiAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICksCiAgICBdLAogIH0sCiAgcm9ndWVSb3V0ZXM6IFtdLAogIHNlcnZlU3RhdGljRmlsZXM6IHRydWUsCik7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ3ByZUdlbicsICgpIHsKICAgIGxhdGUgSG9va0NvbnRleHQgY29udGV4dDsKICAgIGxhdGUgTG9nZ2VyIGxvZ2dlcjsKCiAgICBzZXRVcCgoKSB7CiAgICAgIGxvZ2dlciA9IF9Nb2NrTG9nZ2VyKCk7CiAgICAgIGNvbnRleHQgPSBfRmFrZUhvb2tDb250ZXh0KGxvZ2dlcjogbG9nZ2VyKTsKICAgIH0pOwoKICAgIHRlc3QoJ3ByZUdlbiBjb21wbGV0ZXMnLCAoKSB7CiAgICAgIGV4cGVjdCgKICAgICAgICBFeGl0T3ZlcnJpZGVzLnJ1blpvbmVkKAogICAgICAgICAgKCkgYXN5bmMgPT4gcHJlR2VuKAogICAgICAgICAgICBfRmFrZUhvb2tDb250ZXh0KCksCiAgICAgICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pIHsKICAgICAgICAgICAgICB0aHJvdyBFeGNlcHRpb24oJ29vcHMnKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICksCiAgICAgICAgICBleGl0OiAoXykge30sCiAgICAgICAgKSwKICAgICAgICBjb21wbGV0ZXMsCiAgICAgICk7CiAgICB9KTsKCiAgICB0ZXN0KCdleGl0KDEpIGlmIGJ1aWxkUm91dGVDb25maWd1cmF0aW9uIHRocm93cycsICgpIHsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgZmluYWwgZXhjZXB0aW9uID0gRXhjZXB0aW9uKCdvb3BzJyk7CiAgICAgIHByZUdlbigKICAgICAgICBjb250ZXh0LAogICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IHRocm93IGV4Y2VwdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwogICAgICBleHBlY3QoZXhpdENhbGxzLCBlcXVhbHMoWzFdKSk7CiAgICAgIHZlcmlmeSgoKSA9PiBsb2dnZXIuZXJyKGV4Y2VwdGlvbi50b1N0cmluZygpKSkuY2FsbGVkKDEpOwogICAgfSk7CgogICAgdGVzdCgnZXhpdCgxKSBmb3IgaW52YWxpZCByb3V0ZSBjb25maWcnLCAoKSB7CiAgICAgIGZpbmFsIGNvbmZpZ3VyYXRpb24gPSBfTW9ja1JvdXRlQ29uZmlndXJhdGlvbigpOwogICAgICB3aGVuKCgpID0+IGNvbmZpZ3VyYXRpb24ucm9ndWVSb3V0ZXMpLnRoZW5SZXR1cm4oCiAgICAgICAgY29uc3QgWwogICAgICAgICAgUm91dGVGaWxlKAogICAgICAgICAgICBuYW1lOiAnaGVsbG8nLAogICAgICAgICAgICBwYXRoOiAnaGVsbG8uZGFydCcsCiAgICAgICAgICAgIHJvdXRlOiAnL2hlbGxvJywKICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgKSwKICAgICAgICBdLAogICAgICApOwoKICAgICAgY29udGV4dC52YXJzWyd0eXBlJ10gPSAncm91dGUnOwoKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgcHJlR2VuKAogICAgICAgIGNvbnRleHQsCiAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gY29uZmlndXJhdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwoKICAgICAgdmVyaWZ5KAogICAgICAgICgpID0+IGxvZ2dlci5lcnIoCiAgICAgICAgICAnJydGYWlsZWQgdG8gY3JlYXRlIHJvdXRlOiBSb2d1ZSByb3V0ZSBkZXRlY3RlZC4ke2RlZmF1bHRGb3JlZ3JvdW5kLndyYXAoJyAnKX1SZW5hbWUgJHtsaWdodEN5YW4ud3JhcCgncm91dGVzL2hlbGxvLmRhcnQnKX0gdG8gJHtsaWdodEN5YW4ud3JhcCgncm91dGVzL2hlbGxvL2luZGV4LmRhcnQnKX0uJycnLAogICAgICAgICksCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgIH0pOwoKICAgIHRlc3QoJ2V4aXQoMSkgZm9yIGludmFsaWQgdHlwZScsICgpIHsKICAgICAgZmluYWwgZXhpdENhbGxzID0gPGludD5bXTsKCiAgICAgIGNvbnRleHQudmFyc1sndHlwZSddID0gJ2ludmFsaWQnOwogICAgICBjb250ZXh0LnZhcnNbJ3JvdXRlX3BhdGgnXSA9ICcvW2lkXS9leGlzdGluZ19hc19kaXInOwogICAgICBwcmVHZW4oCiAgICAgICAgY29udGV4dCwKICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiB2YWxpZFJvdXRlQ29uZmlndXJhdGlvbiwKICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICApOwogICAgICB2ZXJpZnkoCiAgICAgICAgKCkgPT4gbG9nZ2VyLmVycigKICAgICAgICAgICcnJ1VucmVjb2duaXplZCB0eXBlOiBpbnZhbGlkJycnLAogICAgICAgICksCiAgICAgICk7CiAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgIH0pOwoKICAgIGdyb3VwKCdUeXBlOiByb3V0ZScsICgpIHsKICAgICAgbGF0ZSBpby5EaXJlY3RvcnkgZGlyZWN0b3J5OwogICAgICBsYXRlIExpc3Q8aW50PiBleGl0Q2FsbHM7CiAgICAgIHNldFVwKCgpIHsKICAgICAgICBkaXJlY3RvcnkgPSBpby5EaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygKICAgICAgICAgICdkYXJ0X2Zyb2dfbmV3X2hvb2tzX3Rlc3QnLAogICAgICAgICk7CiAgICAgICAgZXhpdENhbGxzID0gPGludD5bXTsKICAgICAgICBjb250ZXh0LnZhcnNbJ3R5cGUnXSA9ICdyb3V0ZSc7CiAgICAgIH0pOwogICAgICB0ZWFyRG93bigoKSB7CiAgICAgICAgZGlyZWN0b3J5LmRlbGV0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdleGl0KDEpIGlmIHJvdXRlIGFscmVhZHkgZXhpc3RzIGFzIGRpciBlbmRwb2ludCcsICgpIHsKICAgICAgICBjb250ZXh0LnZhcnNbJ3JvdXRlX3BhdGgnXSA9ICcvW2lkXS9leGlzdGluZ19hc19kaXInOwogICAgICAgIHByZUdlbigKICAgICAgICAgIGNvbnRleHQsCiAgICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiB2YWxpZFJvdXRlQ29uZmlndXJhdGlvbiwKICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICBkaXJlY3Rvcnk6IGRpcmVjdG9yeSwKICAgICAgICApOwogICAgICAgIHZlcmlmeSgKICAgICAgICAgICgpID0+IGxvZ2dlci5lcnIoCiAgICAgICAgICAgICcnJ0ZhaWxlZCB0byBjcmVhdGUgcm91dGU6IC88aWQ+L2V4aXN0aW5nX2FzX2RpciBhbHJlYWR5IGV4aXN0cy4nJycsCiAgICAgICAgICApLAogICAgICAgICk7CiAgICAgICAgZXhwZWN0KGV4aXRDYWxscywgZXF1YWxzKFsxXSkpOwogICAgICB9KTsKCiAgICAgIHRlc3QoJ2V4aXQoMSkgaWYgcm91dGUgYWxyZWFkeSBleGlzdHMgYXMgZmlsZSBlbmRwb2ludCcsICgpIHsKICAgICAgICBjb250ZXh0LnZhcnNbJ3JvdXRlX3BhdGgnXSA9ICcvW2lkXS9leGlzdGluZ19hc19maWxlJzsKCiAgICAgICAgcHJlR2VuKAogICAgICAgICAgY29udGV4dCwKICAgICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IHZhbGlkUm91dGVDb25maWd1cmF0aW9uLAogICAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICAgIGRpcmVjdG9yeTogZGlyZWN0b3J5LAogICAgICAgICk7CgogICAgICAgIHZlcmlmeSgKICAgICAgICAgICgpID0+IGxvZ2dlci5lcnIoCiAgICAgICAgICAgICcnJ0ZhaWxlZCB0byBjcmVhdGUgcm91dGU6IC88aWQ+L2V4aXN0aW5nX2FzX2ZpbGUgYWxyZWFkeSBleGlzdHMuJycnLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdleGl0KDEpIGlmIHJvdXRlIGhhcyBkdXBsaWNhdGUgcGFyYW1ldGVyIG5hbWVzJywgKCkgewogICAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgICAgY29udGV4dC52YXJzWydyb3V0ZV9wYXRoJ10gPSAnL1tpZF0vW2lkXSc7CgogICAgICAgIHByZUdlbigKICAgICAgICAgIGNvbnRleHQsCiAgICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiB2YWxpZFJvdXRlQ29uZmlndXJhdGlvbiwKICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICBkaXJlY3Rvcnk6IGRpcmVjdG9yeSwKICAgICAgICApOwoKICAgICAgICB2ZXJpZnkoCiAgICAgICAgICAoKSA9PiBsb2dnZXIuZXJyKAogICAgICAgICAgICAnJydGYWlsZWQgdG8gY3JlYXRlIHJvdXRlOiBEdXBsaWNhdGUgcGFyYW1ldGVyIG5hbWUgZm91bmQ6IGlkJycnLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdSZW5hbWVzIGEgd3JhcHBpbmcgcm91dGUgdGhhdCBleGlzdHMgYXMgZmlsZSB0byBhbiBpbmRleCcsICgpIHsKICAgICAgICBmaW5hbCBmaWxlUGF0aCA9IHBhdGguam9pbigKICAgICAgICAgIGRpcmVjdG9yeS5wYXRoLAogICAgICAgICAgJ3JvdXRlcycsCiAgICAgICAgICAnW2lkXScsCiAgICAgICAgICAnZXhpc3RpbmdfYXNfZmlsZS5kYXJ0JywKICAgICAgICApOwogICAgICAgIGlvLkZpbGUoZmlsZVBhdGgpCiAgICAgICAgICAuLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKQogICAgICAgICAgLi53cml0ZUFzU3RyaW5nU3luYygnY29udGVudCcpOwoKICAgICAgICBjb250ZXh0LnZhcnNbJ3JvdXRlX3BhdGgnXSA9ICcvW2lkXS9leGlzdGluZ19hc19maWxlL25ld19yb3V0ZSc7CgogICAgICAgIHByZUdlbigKICAgICAgICAgIGNvbnRleHQsCiAgICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiB2YWxpZFJvdXRlQ29uZmlndXJhdGlvbiwKICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICBkaXJlY3Rvcnk6IGRpcmVjdG9yeSwKICAgICAgICApOwoKICAgICAgICBleHBlY3QoaW8uRmlsZShmaWxlUGF0aCkuZXhpc3RzU3luYygpLCBpc0ZhbHNlKTsKCiAgICAgICAgZmluYWwgbmV3RmlsZXBhdGggPSBwYXRoLmpvaW4oCiAgICAgICAgICBkaXJlY3RvcnkucGF0aCwKICAgICAgICAgICdyb3V0ZXMnLAogICAgICAgICAgJ1tpZF0nLAogICAgICAgICAgJ2V4aXN0aW5nX2FzX2ZpbGUnLAogICAgICAgICAgJ2luZGV4LmRhcnQnLAogICAgICAgICk7CgogICAgICAgIGV4cGVjdChpby5GaWxlKG5ld0ZpbGVwYXRoKS5yZWFkQXNTdHJpbmdTeW5jKCksIGVxdWFscygnY29udGVudCcpKTsKCiAgICAgICAgZXhwZWN0KAogICAgICAgICAgY29udGV4dC52YXJzWydkaXJfcGF0aCddLAogICAgICAgICAgcGF0aC5yZWxhdGl2ZSgKICAgICAgICAgICAgcGF0aC5qb2luKGRpcmVjdG9yeS5wYXRoLCAncm91dGVzJywgJ1tpZF0nLCAnZXhpc3RpbmdfYXNfZmlsZScpLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICAgIGV4cGVjdChjb250ZXh0LnZhcnNbJ2ZpbGVuYW1lJ10sICduZXdfcm91dGUuZGFydCcpOwogICAgICAgIGV4cGVjdChjb250ZXh0LnZhcnNbJ3BhcmFtcyddLCBbJ2lkJ10pOwogICAgICAgIGV4cGVjdChjb250ZXh0LnZhcnNbJ2lzX3JvdXRlJ10sIHRydWUpOwoKICAgICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgfSk7CgogICAgICB0ZXN0KAogICAgICAgICdOZXcgcm91dGUgaXMgaW5kZXggaWYgaXRzIHBhdGggaXMgYWxyZWFkeSByZXByZXNlbnRlZCBieSBhIGRpcmVjdG9yeScsCiAgICAgICAgKCkgewogICAgICAgICAgZmluYWwgc3ViRGlyUGF0aCA9IHBhdGguam9pbihkaXJlY3RvcnkucGF0aCwgJ3JvdXRlcycsICdbaWRdJyk7CgogICAgICAgICAgaW8uRGlyZWN0b3J5KHN1YkRpclBhdGgpLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKCiAgICAgICAgICBjb250ZXh0LnZhcnNbJ3JvdXRlX3BhdGgnXSA9ICcvW2lkXSc7CgogICAgICAgICAgcHJlR2VuKAogICAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiB2YWxpZFJvdXRlQ29uZmlndXJhdGlvbiwKICAgICAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICAgICAgZGlyZWN0b3J5OiBkaXJlY3RvcnksCiAgICAgICAgICApOwoKICAgICAgICAgIGV4cGVjdCgKICAgICAgICAgICAgY29udGV4dC52YXJzWydkaXJfcGF0aCddLAogICAgICAgICAgICBwYXRoLnJlbGF0aXZlKHBhdGguam9pbihkaXJlY3RvcnkucGF0aCwgJ3JvdXRlcycsICdbaWRdJykpLAogICAgICAgICAgKTsKICAgICAgICAgIGV4cGVjdChjb250ZXh0LnZhcnNbJ2ZpbGVuYW1lJ10sICdpbmRleC5kYXJ0Jyk7CiAgICAgICAgICBleHBlY3QoY29udGV4dC52YXJzWydwYXJhbXMnXSwgWydpZCddKTsKICAgICAgICAgIGV4cGVjdChjb250ZXh0LnZhcnNbJ2lzX3JvdXRlJ10sIHRydWUpOwoKICAgICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICAgIH0sCiAgICAgICk7CgogICAgICB0ZXN0KCdOZXcgcm91dGUgaXMgYSBub3QgaW5kZXggaWYgbm90IHJlcHJlc2VudGVkIGJ5IGEgZGlyZWN0b3J5JywgKCkgewogICAgICAgIGNvbnRleHQudmFyc1sncm91dGVfcGF0aCddID0gJy9baWRdL3RoaXMvaXMvW2FdL25ld19yb3V0ZSc7CgogICAgICAgIHByZUdlbigKICAgICAgICAgIGNvbnRleHQsCiAgICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiB2YWxpZFJvdXRlQ29uZmlndXJhdGlvbiwKICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICBkaXJlY3Rvcnk6IGRpcmVjdG9yeSwKICAgICAgICApOwoKICAgICAgICBleHBlY3QoCiAgICAgICAgICBjb250ZXh0LnZhcnNbJ2Rpcl9wYXRoJ10sCiAgICAgICAgICBwYXRoLnJlbGF0aXZlKAogICAgICAgICAgICBwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdyb3V0ZXMnLCAnW2lkXScsICd0aGlzJywgJ2lzJywgJ1thXScpLAogICAgICAgICAgKSwKICAgICAgICApOwoKICAgICAgICBleHBlY3QoY29udGV4dC52YXJzWydmaWxlbmFtZSddLCAnbmV3X3JvdXRlLmRhcnQnKTsKICAgICAgICBleHBlY3QoY29udGV4dC52YXJzWydwYXJhbXMnXSwgWydpZCcsICdhJ10pOwogICAgICAgIGV4cGVjdChjb250ZXh0LnZhcnNbJ2lzX3JvdXRlJ10sIHRydWUpOwoKICAgICAgICBleHBlY3QoZXhpdENhbGxzLCBpc0VtcHR5KTsKICAgICAgfSk7CiAgICB9KTsKCiAgICBncm91cCgnVHlwZTogbWlkZGxld2FyZScsICgpIHsKICAgICAgc2V0VXAoKCkgewogICAgICAgIGNvbnRleHQudmFyc1sndHlwZSddID0gJ21pZGRsZXdhcmUnOwogICAgICB9KTsKCiAgICAgIHRlc3QoJ2V4aXQoMSkgaWYgbWlkZGxld2FyZSBhbHJlYWR5IGV4aXN0cyAoZ2xvYmFsKScsICgpIHsKICAgICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwoKICAgICAgICBmaW5hbCBkaXJlY3RvcnkgPSBpby5EaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygKICAgICAgICAgICdkYXJ0X2Zyb2dfbmV3X2hvb2tzX3Rlc3QnLAogICAgICAgICk7CiAgICAgICAgYWRkVGVhckRvd24oKCkgewogICAgICAgICAgZGlyZWN0b3J5LmRlbGV0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9KTsKICAgICAgICBmaW5hbCBmaWxlUGF0aCA9IHBhdGguam9pbigKICAgICAgICAgIGRpcmVjdG9yeS5wYXRoLAogICAgICAgICAgJ3JvdXRlcycsCiAgICAgICAgICAnX21pZGRsZXdhcmUuZGFydCcsCiAgICAgICAgKTsKICAgICAgICBpby5GaWxlKGZpbGVQYXRoKQogICAgICAgICAgLi5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSkKICAgICAgICAgIC4ud3JpdGVBc1N0cmluZ1N5bmMoJ2NvbnRlbnQnKTsKCiAgICAgICAgY29udGV4dC52YXJzWydyb3V0ZV9wYXRoJ10gPSAnLyc7CiAgICAgICAgcHJlR2VuKAogICAgICAgICAgY29udGV4dCwKICAgICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IHZhbGlkUm91dGVDb25maWd1cmF0aW9uLAogICAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICAgIGRpcmVjdG9yeTogZGlyZWN0b3J5LAogICAgICAgICk7CgogICAgICAgIHZlcmlmeSgKICAgICAgICAgICgpID0+IGxvZ2dlci5lcnIoCiAgICAgICAgICAgICcnJ1RoZXJlIGlzIGFscmVhZHkgYSBtaWRkbGV3YXJlIGF0ICR7cGF0aC5yZWxhdGl2ZShmaWxlUGF0aCl9JycnLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdleGl0KDEpIGlmIG1pZGRsZXdhcmUgYWxyZWFkeSBleGlzdHMgKGxvY2FsKScsICgpIHsKICAgICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwoKICAgICAgICBmaW5hbCBkaXJlY3RvcnkgPSBpby5EaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygKICAgICAgICAgICdkYXJ0X2Zyb2dfbmV3X2hvb2tzX3Rlc3QnLAogICAgICAgICk7CiAgICAgICAgYWRkVGVhckRvd24oKCkgewogICAgICAgICAgZGlyZWN0b3J5LmRlbGV0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9KTsKICAgICAgICBmaW5hbCBmaWxlUGF0aCA9CiAgICAgICAgICAgIHBhdGguam9pbihkaXJlY3RvcnkucGF0aCwgJ3JvdXRlcycsICdbaWRdJywgJ19taWRkbGV3YXJlLmRhcnQnKTsKICAgICAgICBpby5GaWxlKGZpbGVQYXRoKQogICAgICAgICAgLi5jcmVhdGVTeW5jKHJlY3Vyc2l2ZTogdHJ1ZSkKICAgICAgICAgIC4ud3JpdGVBc1N0cmluZ1N5bmMoJ2NvbnRlbnQnKTsKCiAgICAgICAgY29udGV4dC52YXJzWydyb3V0ZV9wYXRoJ10gPSAnL1tpZF0nOwogICAgICAgIHByZUdlbigKICAgICAgICAgIGNvbnRleHQsCiAgICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiB2YWxpZFJvdXRlQ29uZmlndXJhdGlvbiwKICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICBkaXJlY3Rvcnk6IGRpcmVjdG9yeSwKICAgICAgICApOwoKICAgICAgICB2ZXJpZnkoCiAgICAgICAgICAoKSA9PiBsb2dnZXIuZXJyKAogICAgICAgICAgICAnJydUaGVyZSBpcyBhbHJlYWR5IGEgbWlkZGxld2FyZSBhdCAke3BhdGgucmVsYXRpdmUoZmlsZVBhdGgpfScnJywKICAgICAgICAgICksCiAgICAgICAgKTsKICAgICAgICBleHBlY3QoZXhpdENhbGxzLCBlcXVhbHMoWzFdKSk7CiAgICAgIH0pOwoKICAgICAgdGVzdCgnZXhpdCgxKSBpZiByb3V0ZSBwYXRoIGhhcyBkdXBsaWNhdGUgcGFyYW1ldGVyIG5hbWVzJywgKCkgewogICAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CiAgICAgICAgY29udGV4dC52YXJzWydyb3V0ZV9wYXRoJ10gPSAnL1tpZF0vW2lkXSc7CgogICAgICAgIGZpbmFsIGRpcmVjdG9yeSA9IGlvLkRpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKAogICAgICAgICAgJ2RhcnRfZnJvZ19uZXdfaG9va3NfdGVzdCcsCiAgICAgICAgKTsKICAgICAgICBhZGRUZWFyRG93bigoKSB7CiAgICAgICAgICBkaXJlY3RvcnkuZGVsZXRlU3luYyhyZWN1cnNpdmU6IHRydWUpOwogICAgICAgIH0pOwoKICAgICAgICBwcmVHZW4oCiAgICAgICAgICBjb250ZXh0LAogICAgICAgICAgYnVpbGRDb25maWd1cmF0aW9uOiAoXykgPT4gdmFsaWRSb3V0ZUNvbmZpZ3VyYXRpb24sCiAgICAgICAgICBleGl0OiBleGl0Q2FsbHMuYWRkLAogICAgICAgICAgZGlyZWN0b3J5OiBkaXJlY3RvcnksCiAgICAgICAgKTsKCiAgICAgICAgdmVyaWZ5KAogICAgICAgICAgKCkgPT4gbG9nZ2VyLmVycigKICAgICAgICAgICAgJycnRmFpbGVkIHRvIGNyZWF0ZSBtaWRkbGV3YXJlOiBEdXBsaWNhdGUgcGFyYW1ldGVyIG5hbWUgZm91bmQ6IGlkJycnLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGVxdWFscyhbMV0pKTsKICAgICAgfSk7CgogICAgICB0ZXN0KCdSZW5hbWVzIGEgd3JhcHBpbmcgcm91dGUgdGhhdCBleGlzdHMgYXMgZmlsZSB0byBhbiBpbmRleCcsICgpIHsKICAgICAgICBmaW5hbCBleGl0Q2FsbHMgPSA8aW50PltdOwoKICAgICAgICBmaW5hbCBkaXJlY3RvcnkgPSBpby5EaXJlY3Rvcnkuc3lzdGVtVGVtcC5jcmVhdGVUZW1wU3luYygKICAgICAgICAgICdkYXJ0X2Zyb2dfbmV3X2hvb2tzX3Rlc3QnLAogICAgICAgICk7CiAgICAgICAgYWRkVGVhckRvd24oKCkgewogICAgICAgICAgZGlyZWN0b3J5LmRlbGV0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKTsKICAgICAgICB9KTsKICAgICAgICBmaW5hbCBmaWxlUGF0aCA9IHBhdGguam9pbigKICAgICAgICAgIGRpcmVjdG9yeS5wYXRoLAogICAgICAgICAgJ3JvdXRlcycsCiAgICAgICAgICAnW2lkXScsCiAgICAgICAgICAnZXhpc3RpbmdfYXNfZmlsZS5kYXJ0JywKICAgICAgICApOwogICAgICAgIGlvLkZpbGUoZmlsZVBhdGgpCiAgICAgICAgICAuLmNyZWF0ZVN5bmMocmVjdXJzaXZlOiB0cnVlKQogICAgICAgICAgLi53cml0ZUFzU3RyaW5nU3luYygnY29udGVudCcpOwoKICAgICAgICBjb250ZXh0LnZhcnNbJ3JvdXRlX3BhdGgnXSA9ICcvW2lkXS9leGlzdGluZ19hc19maWxlJzsKCiAgICAgICAgcHJlR2VuKAogICAgICAgICAgY29udGV4dCwKICAgICAgICAgIGJ1aWxkQ29uZmlndXJhdGlvbjogKF8pID0+IHZhbGlkUm91dGVDb25maWd1cmF0aW9uLAogICAgICAgICAgZXhpdDogZXhpdENhbGxzLmFkZCwKICAgICAgICAgIGRpcmVjdG9yeTogZGlyZWN0b3J5LAogICAgICAgICk7CgogICAgICAgIGV4cGVjdChpby5GaWxlKGZpbGVQYXRoKS5leGlzdHNTeW5jKCksIGlzRmFsc2UpOwoKICAgICAgICBmaW5hbCBuZXdGaWxlcGF0aCA9IHBhdGguam9pbigKICAgICAgICAgIGRpcmVjdG9yeS5wYXRoLAogICAgICAgICAgJ3JvdXRlcycsCiAgICAgICAgICAnW2lkXScsCiAgICAgICAgICAnZXhpc3RpbmdfYXNfZmlsZScsCiAgICAgICAgICAnaW5kZXguZGFydCcsCiAgICAgICAgKTsKCiAgICAgICAgZXhwZWN0KGlvLkZpbGUobmV3RmlsZXBhdGgpLnJlYWRBc1N0cmluZ1N5bmMoKSwgZXF1YWxzKCdjb250ZW50JykpOwogICAgICAgIGV4cGVjdCgKICAgICAgICAgIGNvbnRleHQudmFyc1snZGlyX3BhdGgnXSwKICAgICAgICAgIHBhdGgucmVsYXRpdmUoCiAgICAgICAgICAgIHBhdGguam9pbihkaXJlY3RvcnkucGF0aCwgJ3JvdXRlcycsICdbaWRdJywgJ2V4aXN0aW5nX2FzX2ZpbGUnKSwKICAgICAgICAgICksCiAgICAgICAgKTsKICAgICAgICBleHBlY3QoY29udGV4dC52YXJzWydmaWxlbmFtZSddLCAnX21pZGRsZXdhcmUuZGFydCcpOwogICAgICAgIGV4cGVjdChjb250ZXh0LnZhcnNbJ2lzX21pZGRsZXdhcmUnXSwgdHJ1ZSk7CgogICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICB9KTsKCiAgICAgIHRlc3QoJ1NldHMgdXAgYSBtaWRkbGV3YXJlIHBhdGggY29ycmVjdGx5JywgKCkgewogICAgICAgIGZpbmFsIGV4aXRDYWxscyA9IDxpbnQ+W107CgogICAgICAgIGZpbmFsIGRpcmVjdG9yeSA9IGlvLkRpcmVjdG9yeS5zeXN0ZW1UZW1wLmNyZWF0ZVRlbXBTeW5jKAogICAgICAgICAgJ2RhcnRfZnJvZ19uZXdfaG9va3NfdGVzdCcsCiAgICAgICAgKTsKICAgICAgICBhZGRUZWFyRG93bigoKSB7CiAgICAgICAgICBkaXJlY3RvcnkuZGVsZXRlU3luYyhyZWN1cnNpdmU6IHRydWUpOwogICAgICAgIH0pOwoKICAgICAgICBjb250ZXh0LnZhcnNbJ3JvdXRlX3BhdGgnXSA9ICcvW2lkXS9leGlzdGluZ19hc19kaXInOwogICAgICAgIHByZUdlbigKICAgICAgICAgIGNvbnRleHQsCiAgICAgICAgICBidWlsZENvbmZpZ3VyYXRpb246IChfKSA9PiB2YWxpZFJvdXRlQ29uZmlndXJhdGlvbiwKICAgICAgICAgIGV4aXQ6IGV4aXRDYWxscy5hZGQsCiAgICAgICAgICBkaXJlY3Rvcnk6IGRpcmVjdG9yeSwKICAgICAgICApOwoKICAgICAgICBleHBlY3QoCiAgICAgICAgICBjb250ZXh0LnZhcnNbJ2Rpcl9wYXRoJ10sCiAgICAgICAgICBwYXRoLnJlbGF0aXZlKAogICAgICAgICAgICBwYXRoLmpvaW4oZGlyZWN0b3J5LnBhdGgsICdyb3V0ZXMnLCAnW2lkXScsICdleGlzdGluZ19hc19kaXInKSwKICAgICAgICAgICksCiAgICAgICAgKTsKICAgICAgICBleHBlY3QoY29udGV4dC52YXJzWydmaWxlbmFtZSddLCAnX21pZGRsZXdhcmUuZGFydCcpOwogICAgICAgIGV4cGVjdChjb250ZXh0LnZhcnNbJ2lzX21pZGRsZXdhcmUnXSwgdHJ1ZSk7CgogICAgICAgIGV4cGVjdChleGl0Q2FsbHMsIGlzRW1wdHkpOwogICAgICB9KTsKICAgIH0pOwogIH0pOwp9Cg==", - "type": "text" + "type": "text", }, { "path": "test/src/exit_overrides_test.dart", "data": "aW1wb3J0ICdkYXJ0OmlvJzsKCmltcG9ydCAncGFja2FnZTpkYXJ0X2Zyb2dfbmV3X2hvb2tzL3NyYy9leGl0X292ZXJyaWRlcy5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOnRlc3QvdGVzdC5kYXJ0JzsKCnZvaWQgbWFpbigpIHsKICBncm91cCgnRXhpdE92ZXJyaWRlcycsICgpIHsKICAgIGdyb3VwKCdydW5ab25lZCcsICgpIHsKICAgICAgdGVzdCgndXNlcyBkZWZhdWx0IGV4aXQgd2hlbiBub3Qgc3BlY2lmaWVkJywgKCkgewogICAgICAgIEV4aXRPdmVycmlkZXMucnVuWm9uZWQoKCkgewogICAgICAgICAgZmluYWwgb3ZlcnJpZGVzID0gRXhpdE92ZXJyaWRlcy5jdXJyZW50OwogICAgICAgICAgZXhwZWN0KG92ZXJyaWRlcyEuZXhpdCwgZXF1YWxzKGV4aXQpKTsKICAgICAgICB9KTsKICAgICAgfSk7CgogICAgICB0ZXN0KCd1c2VzIGN1c3RvbSBleGl0IHdoZW4gc3BlY2lmaWVkJywgKCkgewogICAgICAgIEV4aXRPdmVycmlkZXMucnVuWm9uZWQoCiAgICAgICAgICAoKSB7CiAgICAgICAgICAgIGZpbmFsIG92ZXJyaWRlcyA9IEV4aXRPdmVycmlkZXMuY3VycmVudDsKICAgICAgICAgICAgZXhwZWN0KG92ZXJyaWRlcyEuZXhpdCwgaXNOb3QoZXF1YWxzKGV4aXQpKSk7CiAgICAgICAgICB9LAogICAgICAgICAgZXhpdDogKF8pIHt9LAogICAgICAgICk7CiAgICAgIH0pOwogICAgfSk7CiAgfSk7Cn0K", - "type": "text" + "type": "text", }, { "path": "test/src/normalize_route_path_test.dart", "data": "aW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19uZXdfaG9va3Mvc3JjL25vcm1hbGl6ZV9yb3V0ZV9wYXRoLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKdm9pZCBtYWluKCkgewogIGdyb3VwKCdub3JtYWxpemVSb3V0ZVBhdGgnLCAoKSB7CiAgICBmaW5hbCBleHBlY3RlZE1hcHBpbmdzID0gPFN0cmluZywgU3RyaW5nPnsKICAgICAgJy8nOiAnLycsCiAgICAgIHInXCc6ICcvJywKICAgICAgJyc6ICcvJywKICAgICAgJy9oZWxsbyc6ICcvaGVsbG8nLAogICAgICByJ1xoZWxsbyc6ICcvaGVsbG8nLAogICAgICAnaGVsbG8nOiAnL2hlbGxvJywKICAgICAgJ1tpZF0nOiAnLzxpZD4nLAogICAgICAnPGlkPic6ICcvPGlkPicsCiAgICAgICcvaGVsbG8vd29ybGQnOiAnL2hlbGxvL3dvcmxkJywKICAgICAgcidcaGVsbG9cd29ybGQnOiAnL2hlbGxvL3dvcmxkJywKICAgICAgJ2hlbGxvL3dvcmxkJzogJy9oZWxsby93b3JsZCcsCiAgICAgICcvaGVsbG8vW25hbWVdJzogJy9oZWxsby88bmFtZT4nLAogICAgICByJ1xoZWxsb1xbbmFtZV0nOiAnL2hlbGxvLzxuYW1lPicsCiAgICAgICdoZWxsby9bbmFtZV0nOiAnL2hlbGxvLzxuYW1lPicsCiAgICAgICcvaGVsbG8vPG5hbWU+JzogJy9oZWxsby88bmFtZT4nLAogICAgICAnL1tpZF0vaXRlbSc6ICcvPGlkPi9pdGVtJywKICAgICAgcidcW2lkXVxpdGVtJzogJy88aWQ+L2l0ZW0nLAogICAgICAnW2lkXS9pdGVtJzogJy88aWQ+L2l0ZW0nLAogICAgICAnLzxpZD4vaXRlbSc6ICcvPGlkPi9pdGVtJywKICAgICAgJy90aGlzIGhhcyBzcGFjZS9yZWFsbHknOiAnL3RoaXMlMjBoYXMlMjBzcGFjZS9yZWFsbHknLAogICAgICAnL3doby9kb2VzL25vdC8uLi90aGlzLy4nOiAnL3doby9kb2VzL3RoaXMnLAogICAgfTsKCiAgICBmb3IgKGZpbmFsIGVudHJ5IGluIGV4cGVjdGVkTWFwcGluZ3MuZW50cmllcykgewogICAgICB0ZXN0KCdtYXBzICR7ZW50cnkua2V5fSAtPiAke2VudHJ5LnZhbHVlfScsICgpIHsKICAgICAgICBleHBlY3Qobm9ybWFsaXplUm91dGVQYXRoKGVudHJ5LmtleSksIGVxdWFscyhlbnRyeS52YWx1ZSkpOwogICAgICB9KTsKICAgIH0KICB9KTsKfQo=", - "type": "text" + "type": "text", }, { "path": "test/src/parameter_syntax_test.dart", "data": "aW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19uZXdfaG9va3Mvc3JjL3BhcmFtZXRlcl9zeW50YXguZGFydCc7CmltcG9ydCAncGFja2FnZTp0ZXN0L3Rlc3QuZGFydCc7Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ1BhcmFtZXRlclN5bnRheCcsICgpIHsKICAgIGdyb3VwKCd0b0RpYW1vbmRQYXJhbWV0ZXJTeW50YXgnLCAoKSB7CiAgICAgIHRlc3QoJ3Nob3VsZCBjb252ZXJ0IGJyYWNrZXRzIHRvIGRpYW1vbmQgYnJhY2tldHMnLCAoKSB7CiAgICAgICAgZXhwZWN0KCcvW2lkXScudG9EaWFtb25kUGFyYW1ldGVyU3ludGF4LCBlcXVhbHMoJy88aWQ+JykpOwogICAgICAgIGV4cGVjdCgnL1tpZF0vaXRlbScudG9EaWFtb25kUGFyYW1ldGVyU3ludGF4LCBlcXVhbHMoJy88aWQ+L2l0ZW0nKSk7CiAgICAgICAgZXhwZWN0KCcvdG9wL1tpZF0nLnRvRGlhbW9uZFBhcmFtZXRlclN5bnRheCwgZXF1YWxzKCcvdG9wLzxpZD4nKSk7CiAgICAgIH0pOwogICAgfSk7CiAgICBncm91cCgndG9CcmFja2V0UGFyYW1ldGVyU3ludGF4JywgKCkgewogICAgICB0ZXN0KCdzaG91bGQgY29udmVydCBkaWFtb25kIGJyYWNrZXRzIHRvIGJyYWNrZXRzJywgKCkgewogICAgICAgIGV4cGVjdCgnLzxpZD4nLnRvQnJhY2tldFBhcmFtZXRlclN5bnRheCwgZXF1YWxzKCcvW2lkXScpKTsKICAgICAgICBleHBlY3QoJy88aWQ+L2l0ZW0nLnRvQnJhY2tldFBhcmFtZXRlclN5bnRheCwgZXF1YWxzKCcvW2lkXS9pdGVtJykpOwogICAgICAgIGV4cGVjdCgnL3RvcC88aWQ+Jy50b0JyYWNrZXRQYXJhbWV0ZXJTeW50YXgsIGVxdWFscygnL3RvcC9baWRdJykpOwogICAgICB9KTsKICAgIH0pOwoKICAgIGdyb3VwKCdoYXNEaWFtb25kUGFyYW1ldGVyJywgKCkgewogICAgICB0ZXN0KAogICAgICAgICdzaG91bGQgcmV0dXJuIHRydWUgaWYgdGhlIHJvdXRlIGNvbnRhaW5zIGRpYW1vbmQgcGFyYW1ldGVycycsCiAgICAgICAgKCkgewogICAgICAgICAgZXhwZWN0KCcvPGlkPicuaGFzRGlhbW9uZFBhcmFtZXRlciwgaXNUcnVlKTsKICAgICAgICAgIGV4cGVjdCgnLzxpZD4vaXRlbScuaGFzRGlhbW9uZFBhcmFtZXRlciwgaXNUcnVlKTsKICAgICAgICAgIGV4cGVjdCgnL3RvcC88aWQ+Jy5oYXNEaWFtb25kUGFyYW1ldGVyLCBpc1RydWUpOwogICAgICAgIH0sCiAgICAgICk7CgogICAgICB0ZXN0KAogICAgICAgICdzaG91bGQgcmV0dXJuIGZhbHNlIGlmIHRoZSByb3V0ZSBkb2VzIG5vdCBjb250YWluIGRpYW1vbmQgcGFyYW1ldGVycycsCiAgICAgICAgKCkgewogICAgICAgICAgZXhwZWN0KCcvaWQnLmhhc0RpYW1vbmRQYXJhbWV0ZXIsIGlzRmFsc2UpOwogICAgICAgICAgZXhwZWN0KCcvaWQvaXRlbScuaGFzRGlhbW9uZFBhcmFtZXRlciwgaXNGYWxzZSk7CiAgICAgICAgICBleHBlY3QoJy88dG9wL2lkJy5oYXNEaWFtb25kUGFyYW1ldGVyLCBpc0ZhbHNlKTsKICAgICAgICAgIGV4cGVjdCgnL3RvcD4vaWQnLmhhc0RpYW1vbmRQYXJhbWV0ZXIsIGlzRmFsc2UpOwogICAgICAgIH0sCiAgICAgICk7CiAgICB9KTsKCiAgICBncm91cCgnZ2V0UGFyYW1ldGVyTmFtZXMnLCAoKSB7CiAgICAgIHRlc3QoJ3Nob3VsZCByZXR1cm4gdGhlIHBhcmFtZXRlciBuYW1lcycsICgpIHsKICAgICAgICBleHBlY3QoJy88aWQ+Jy5nZXRQYXJhbWV0ZXJOYW1lcygpLCBlcXVhbHMoWydpZCddKSk7CiAgICAgICAgZXhwZWN0KCcvPGlkPi9pdGVtJy5nZXRQYXJhbWV0ZXJOYW1lcygpLCBlcXVhbHMoWydpZCddKSk7CiAgICAgICAgZXhwZWN0KCcvdG9wLzxpZD4nLmdldFBhcmFtZXRlck5hbWVzKCksIGVxdWFscyhbJ2lkJ10pKTsKICAgICAgICBleHBlY3QoJy88aWQ+L2l0ZW0vPG5hbWU+Jy5nZXRQYXJhbWV0ZXJOYW1lcygpLCBlcXVhbHMoWydpZCcsICduYW1lJ10pKTsKICAgICAgICBleHBlY3QoJy9baWRdJy5nZXRQYXJhbWV0ZXJOYW1lcygpLCBlcXVhbHMoWydpZCddKSk7CiAgICAgICAgZXhwZWN0KCcvW2lkXS9pdGVtJy5nZXRQYXJhbWV0ZXJOYW1lcygpLCBlcXVhbHMoWydpZCddKSk7CiAgICAgICAgZXhwZWN0KCcvdG9wL1tpZF0nLmdldFBhcmFtZXRlck5hbWVzKCksIGVxdWFscyhbJ2lkJ10pKTsKICAgICAgICBleHBlY3QoJy9baWRdL2l0ZW0vW25hbWVdJy5nZXRQYXJhbWV0ZXJOYW1lcygpLCBlcXVhbHMoWydpZCcsICduYW1lJ10pKTsKICAgICAgfSk7CiAgICAgIHRlc3QoJ3Nob3VsZCBmYWlsIG9uIGR1cGxpY2F0ZWQgcGFyYW1ldGVyIG5hbWVzJywgKCkgewogICAgICAgIGV4cGVjdCgKICAgICAgICAgICgpID0+ICcvPGlkPi9zdXBlci88bmljZT4vPGlkPi88bmljZT4nLmdldFBhcmFtZXRlck5hbWVzKCksCiAgICAgICAgICB0aHJvd3NBKAogICAgICAgICAgICBpc0E8Rm9ybWF0RXhjZXB0aW9uPigpLmhhdmluZygKICAgICAgICAgICAgICAocCkgPT4gcC5tZXNzYWdlLAogICAgICAgICAgICAgICdtZXNzYWdlJywKICAgICAgICAgICAgICAnRHVwbGljYXRlIHBhcmFtZXRlciBuYW1lcyBmb3VuZDogaWQsIG5pY2UnLAogICAgICAgICAgICApLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICAgIGV4cGVjdCgKICAgICAgICAgICgpID0+ICcvW2lkXS9baWRdJy5nZXRQYXJhbWV0ZXJOYW1lcygpLAogICAgICAgICAgdGhyb3dzQSgKICAgICAgICAgICAgaXNBPEZvcm1hdEV4Y2VwdGlvbj4oKS5oYXZpbmcoCiAgICAgICAgICAgICAgKHApID0+IHAubWVzc2FnZSwKICAgICAgICAgICAgICAnbWVzc2FnZScsCiAgICAgICAgICAgICAgJ0R1cGxpY2F0ZSBwYXJhbWV0ZXIgbmFtZSBmb3VuZDogaWQnLAogICAgICAgICAgICApLAogICAgICAgICAgKSwKICAgICAgICApOwogICAgICB9KTsKICAgIH0pOwogIH0pOwp9Cg==", - "type": "text" + "type": "text", }, { "path": "test/src/route_configuration_utils_test.dart", "data": "aW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19nZW4vZGFydF9mcm9nX2dlbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19uZXdfaG9va3Mvc3JjL3JvdXRlX2NvbmZpZ3VyYXRpb25fdXRpbHMuZGFydCc7CmltcG9ydCAncGFja2FnZTptYXNvbi9tYXNvbi5kYXJ0JzsKaW1wb3J0ICdwYWNrYWdlOm1vY2t0YWlsL21vY2t0YWlsLmRhcnQnOwppbXBvcnQgJ3BhY2thZ2U6dGVzdC90ZXN0LmRhcnQnOwoKY2xhc3MgX01vY2tSb3V0ZUNvbmZpZ3VyYXRpb24gZXh0ZW5kcyBNb2NrIGltcGxlbWVudHMgUm91dGVDb25maWd1cmF0aW9uIHt9Cgp2b2lkIG1haW4oKSB7CiAgZ3JvdXAoJ1JvdXRlQ29uZmlndXJhdGlvblV0aWxzJywgKCkgewogICAgZ3JvdXAoJ3ZhbGlkYXRlJywgKCkgewogICAgICBsYXRlIFJvdXRlQ29uZmlndXJhdGlvbiBjb25maWd1cmF0aW9uOwoKICAgICAgc2V0VXAoKCkgewogICAgICAgIGNvbmZpZ3VyYXRpb24gPSBfTW9ja1JvdXRlQ29uZmlndXJhdGlvbigpOwogICAgICAgIHdoZW4oKCkgPT4gY29uZmlndXJhdGlvbi5yb2d1ZVJvdXRlcykudGhlblJldHVybihbXSk7CiAgICAgICAgd2hlbigoKSA9PiBjb25maWd1cmF0aW9uLmVuZHBvaW50cykudGhlblJldHVybih7fSk7CiAgICAgIH0pOwoKICAgICAgdGVzdCgncmVwb3J0cyByb2d1ZSByb3V0ZScsICgpIHsKICAgICAgICB3aGVuKCgpID0+IGNvbmZpZ3VyYXRpb24ucm9ndWVSb3V0ZXMpLnRoZW5SZXR1cm4oCiAgICAgICAgICBjb25zdCBbCiAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICBuYW1lOiAnaGVsbG8nLAogICAgICAgICAgICAgIHBhdGg6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy9oZWxsbycsCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICksCiAgICAgICAgICBdLAogICAgICAgICk7CgogICAgICAgIGV4cGVjdCgKICAgICAgICAgICgpID0+IGNvbmZpZ3VyYXRpb24udmFsaWRhdGUoKSwKICAgICAgICAgIHRocm93c0EoCiAgICAgICAgICAgIGlzQTxGb3JtYXRFeGNlcHRpb24+KCkuaGF2aW5nKAogICAgICAgICAgICAgIChwKSA9PiBwLm1lc3NhZ2UsCiAgICAgICAgICAgICAgJ2Vycm9yIG1lc3NhZ2UnLAogICAgICAgICAgICAgICcnJ1JvZ3VlIHJvdXRlIGRldGVjdGVkLiR7ZGVmYXVsdEZvcmVncm91bmQud3JhcCgnICcpfVJlbmFtZSAke2xpZ2h0Q3lhbi53cmFwKCdyb3V0ZXMvaGVsbG8uZGFydCcpfSB0byAke2xpZ2h0Q3lhbi53cmFwKCdyb3V0ZXMvaGVsbG8vaW5kZXguZGFydCcpfS4nJycsCiAgICAgICAgICAgICksCiAgICAgICAgICApLAogICAgICAgICk7CiAgICAgIH0pOwoKICAgICAgdGVzdCgncmVwb3J0IHJvdXRlIGNvbmZsaWN0JywgKCkgewogICAgICAgIHdoZW4oKCkgPT4gY29uZmlndXJhdGlvbi5lbmRwb2ludHMpLnRoZW5SZXR1cm4oewogICAgICAgICAgJy8nOiBjb25zdCBbCiAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICBuYW1lOiAnaW5kZXgnLAogICAgICAgICAgICAgIHBhdGg6ICdpbmRleC5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy8nLAogICAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgICApLAogICAgICAgICAgXSwKICAgICAgICAgICcvaGVsbG8nOiBjb25zdCBbCiAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICBuYW1lOiAnaGVsbG8nLAogICAgICAgICAgICAgIHBhdGg6ICdoZWxsby5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy9oZWxsbycsCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICksCiAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICBuYW1lOiAnaGVsbG9faW5kZXgnLAogICAgICAgICAgICAgIHBhdGg6ICdoZWxsby9pbmRleC5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy8nLAogICAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgICApLAogICAgICAgICAgXSwKICAgICAgICB9KTsKCiAgICAgICAgZXhwZWN0KAogICAgICAgICAgKCkgPT4gY29uZmlndXJhdGlvbi52YWxpZGF0ZSgpLAogICAgICAgICAgdGhyb3dzQSgKICAgICAgICAgICAgaXNBPEZvcm1hdEV4Y2VwdGlvbj4oKS5oYXZpbmcoCiAgICAgICAgICAgICAgKHApID0+IHAubWVzc2FnZSwKICAgICAgICAgICAgICAnZXJyb3IgbWVzc2FnZScsCiAgICAgICAgICAgICAgJycnUm91dGUgY29uZmxpY3QgZGV0ZWN0ZWQuICR7bGlnaHRDeWFuLndyYXAoJ3JvdXRlcy9oZWxsby5kYXJ0Jyl9IGFuZCAke2xpZ2h0Q3lhbi53cmFwKCdyb3V0ZXMvaGVsbG8vaW5kZXguZGFydCcpfSBib3RoIHJlc29sdmUgdG8gJHtsaWdodEN5YW4ud3JhcCgnL2hlbGxvJyl9LicnJywKICAgICAgICAgICAgKSwKICAgICAgICAgICksCiAgICAgICAgKTsKICAgICAgfSk7CiAgICB9KTsKCiAgICBncm91cCgnY29udGFpbmluZ0ZpbGVSb3V0ZScsICgpIHsKICAgICAgbGF0ZSBSb3V0ZUNvbmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbjsKICAgICAgc2V0VXAoKCkgewogICAgICAgIGNvbmZpZ3VyYXRpb24gPSBfTW9ja1JvdXRlQ29uZmlndXJhdGlvbigpOwogICAgICAgIHdoZW4oKCkgPT4gY29uZmlndXJhdGlvbi5lbmRwb2ludHMpLnRoZW5SZXR1cm4oewogICAgICAgICAgJy8nOiBjb25zdCA8Um91dGVGaWxlPlsKICAgICAgICAgICAgUm91dGVGaWxlKAogICAgICAgICAgICAgIG5hbWU6ICdpbmRleCcsCiAgICAgICAgICAgICAgcGF0aDogJy4uL3JvdXRlcy9pbmRleC5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy8nLAogICAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgICApLAogICAgICAgICAgXSwKICAgICAgICAgICcvPGlkPic6IGNvbnN0IDxSb3V0ZUZpbGU+WwogICAgICAgICAgICBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgbmFtZTogcickaWRfaW5kZXgnLAogICAgICAgICAgICAgIHBhdGg6ICcuLi9yb3V0ZXMvW2lkXS9pbmRleC5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy8nLAogICAgICAgICAgICAgIHBhcmFtczogW10sCiAgICAgICAgICAgICAgd2lsZGNhcmQ6IGZhbHNlLAogICAgICAgICAgICApLAogICAgICAgICAgXSwKICAgICAgICAgICcvPGlkPi9leGlzdGluZ19hc19maWxlJzogY29uc3QgPFJvdXRlRmlsZT5bCiAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICBuYW1lOiByJyRpZF9leGlzdGluZ19hc19maWxlJywKICAgICAgICAgICAgICBwYXRoOiAnLi4vcm91dGVzL1tpZF0vZXhpc3RpbmdfYXNfZmlsZS5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy9leGlzdGluZ19hc19maWxlJywKICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgKSwKICAgICAgICAgIF0sCiAgICAgICAgICAnLzxpZD4vZXhpc3RpbmdfYXNfZGlyJzogY29uc3QgPFJvdXRlRmlsZT5bCiAgICAgICAgICAgIFJvdXRlRmlsZSgKICAgICAgICAgICAgICBuYW1lOiByJyRpZF9leGlzdGluZ19hc19kaXJfaW5kZXgnLAogICAgICAgICAgICAgIHBhdGg6ICcuLi9yb3V0ZXMvW2lkXS9leGlzdGluZ19hc19kaXIvaW5kZXguZGFydCcsCiAgICAgICAgICAgICAgcm91dGU6ICcvJywKICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgKSwKICAgICAgICAgIF0sCiAgICAgICAgfSk7CiAgICAgIH0pOwoKICAgICAgZ3JvdXAoJ2luY2x1ZGVTZWxmIGZhbHNlJywgKCkgewogICAgICAgIHRlc3QoJ3JldHVybnMgbnVsbCBmb3IgdGhlIHJvb3Qgcm91dGUnLCAoKSB7CiAgICAgICAgICBmaW5hbCByZXN1bHQgPSBjb25maWd1cmF0aW9uLmNvbnRhaW5pbmdGaWxlUm91dGUoJy8nKTsKCiAgICAgICAgICBleHBlY3QocmVzdWx0LCBpc051bGwpOwogICAgICAgIH0pOwoKICAgICAgICB0ZXN0KCdyZXR1cm5zIG51bGwgZm9yIHJvdXRlcyB3aXRoIG5vIGZpbGUgcm91dGUgYXMgYW5jZXN0b3InLCAoKSB7CiAgICAgICAgICBmaW5hbCByZXN1bHQgPSBjb25maWd1cmF0aW9uLmNvbnRhaW5pbmdGaWxlUm91dGUoCiAgICAgICAgICAgICcvPGlkPi9leGlzdGluZ19hc19kaXIvbmV3X3JvdXRlJywKICAgICAgICAgICk7CgogICAgICAgICAgZXhwZWN0KHJlc3VsdCwgaXNOdWxsKTsKICAgICAgICB9KTsKCiAgICAgICAgdGVzdCgncmV0dXJucyB0aGUgaW5uZXJtb3N0IGZpbGUgcm91dGUnLCAoKSB7CiAgICAgICAgICBmaW5hbCByZXN1bHQgPSBjb25maWd1cmF0aW9uLmNvbnRhaW5pbmdGaWxlUm91dGUoCiAgICAgICAgICAgICcvPGlkPi9leGlzdGluZ19hc19maWxlL25ld19yb3V0ZScsCiAgICAgICAgICApOwoKICAgICAgICAgIGV4cGVjdCgKICAgICAgICAgICAgcmVzdWx0LAogICAgICAgICAgICBjb25zdCBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgbmFtZTogcickaWRfZXhpc3RpbmdfYXNfZmlsZScsCiAgICAgICAgICAgICAgcGF0aDogJy4uL3JvdXRlcy9baWRdL2V4aXN0aW5nX2FzX2ZpbGUuZGFydCcsCiAgICAgICAgICAgICAgcm91dGU6ICcvZXhpc3RpbmdfYXNfZmlsZScsCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICksCiAgICAgICAgICApOwogICAgICAgIH0pOwoKICAgICAgICB0ZXN0KCdyZXR1cm5zIG51bGwgd2hlbiB0aGUgZ2l2ZW4gcm91dGUgaXMgYSBmaWxlIHJvdXRlJywgKCkgewogICAgICAgICAgZmluYWwgcmVzdWx0ID0gY29uZmlndXJhdGlvbi5jb250YWluaW5nRmlsZVJvdXRlKAogICAgICAgICAgICAnLzxpZD4vZXhpc3RpbmdfYXNfZGlyJywKICAgICAgICAgICk7CgogICAgICAgICAgZXhwZWN0KHJlc3VsdCwgaXNOdWxsKTsKICAgICAgICB9KTsKICAgICAgfSk7CgogICAgICBncm91cCgnaW5jbHVkZVNlbGYgdHJ1ZScsICgpIHsKICAgICAgICB0ZXN0KCdyZXR1cm5zIG51bGwgZm9yIHRoZSByb290IHJvdXRlJywgKCkgewogICAgICAgICAgZmluYWwgcmVzdWx0ID0gY29uZmlndXJhdGlvbi5jb250YWluaW5nRmlsZVJvdXRlKAogICAgICAgICAgICAnLycsCiAgICAgICAgICAgIGluY2x1ZGVTZWxmOiB0cnVlLAogICAgICAgICAgKTsKCiAgICAgICAgICBleHBlY3QocmVzdWx0LCBpc051bGwpOwogICAgICAgIH0pOwoKICAgICAgICB0ZXN0KCdyZXR1cm5zIG51bGwgZm9yIHJvdXRlcyB3aXRoIG5vIGZpbGUgcm91dGUgYXMgYW5jZXN0b3InLCAoKSB7CiAgICAgICAgICBmaW5hbCByZXN1bHQgPSBjb25maWd1cmF0aW9uLmNvbnRhaW5pbmdGaWxlUm91dGUoCiAgICAgICAgICAgICcvPGlkPi9leGlzdGluZ19hc19kaXIvbmV3X3JvdXRlJywKICAgICAgICAgICAgaW5jbHVkZVNlbGY6IHRydWUsCiAgICAgICAgICApOwoKICAgICAgICAgIGV4cGVjdChyZXN1bHQsIGlzTnVsbCk7CiAgICAgICAgfSk7CgogICAgICAgIHRlc3QoJ3JldHVybnMgdGhlIGlubmVybW9zdCBmaWxlIHJvdXRlJywgKCkgewogICAgICAgICAgZmluYWwgcmVzdWx0ID0gY29uZmlndXJhdGlvbi5jb250YWluaW5nRmlsZVJvdXRlKAogICAgICAgICAgICAnLzxpZD4vZXhpc3RpbmdfYXNfZmlsZS9uZXdfcm91dGUnLAogICAgICAgICAgICBpbmNsdWRlU2VsZjogdHJ1ZSwKICAgICAgICAgICk7CgogICAgICAgICAgZXhwZWN0KAogICAgICAgICAgICByZXN1bHQsCiAgICAgICAgICAgIGNvbnN0IFJvdXRlRmlsZSgKICAgICAgICAgICAgICBuYW1lOiByJyRpZF9leGlzdGluZ19hc19maWxlJywKICAgICAgICAgICAgICBwYXRoOiAnLi4vcm91dGVzL1tpZF0vZXhpc3RpbmdfYXNfZmlsZS5kYXJ0JywKICAgICAgICAgICAgICByb3V0ZTogJy9leGlzdGluZ19hc19maWxlJywKICAgICAgICAgICAgICBwYXJhbXM6IFtdLAogICAgICAgICAgICAgIHdpbGRjYXJkOiBmYWxzZSwKICAgICAgICAgICAgKSwKICAgICAgICAgICk7CiAgICAgICAgfSk7CgogICAgICAgIHRlc3QoJ3JldHVybnMgdGhlIGdpdmVuIHJvdXRlIHdoZW4gdGhhdCBpcyBhIGZpbGUgcm91dGUnLCAoKSB7CiAgICAgICAgICBmaW5hbCByZXN1bHQgPSBjb25maWd1cmF0aW9uLmNvbnRhaW5pbmdGaWxlUm91dGUoCiAgICAgICAgICAgICcvPGlkPi9leGlzdGluZ19hc19maWxlJywKICAgICAgICAgICAgaW5jbHVkZVNlbGY6IHRydWUsCiAgICAgICAgICApOwoKICAgICAgICAgIGV4cGVjdCgKICAgICAgICAgICAgcmVzdWx0LAogICAgICAgICAgICBjb25zdCBSb3V0ZUZpbGUoCiAgICAgICAgICAgICAgbmFtZTogcickaWRfZXhpc3RpbmdfYXNfZmlsZScsCiAgICAgICAgICAgICAgcGF0aDogJy4uL3JvdXRlcy9baWRdL2V4aXN0aW5nX2FzX2ZpbGUuZGFydCcsCiAgICAgICAgICAgICAgcm91dGU6ICcvZXhpc3RpbmdfYXNfZmlsZScsCiAgICAgICAgICAgICAgcGFyYW1zOiBbXSwKICAgICAgICAgICAgICB3aWxkY2FyZDogZmFsc2UsCiAgICAgICAgICAgICksCiAgICAgICAgICApOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0pOwogIH0pOwp9Cg==", - "type": "text" + "type": "text", }, { "path": "test/src/route_to_path_test.dart", "data": "aW1wb3J0ICdwYWNrYWdlOmRhcnRfZnJvZ19uZXdfaG9va3Mvc3JjL3JvdXRlX3RvX3BhdGguZGFydCc7CmltcG9ydCAncGFja2FnZTpwYXRoL3BhdGguZGFydCcgYXMgcGF0aDsKaW1wb3J0ICdwYWNrYWdlOnRlc3QvdGVzdC5kYXJ0JzsKCnZvaWQgbWFpbigpIHsKICBncm91cCgncm91dGVUb1BhdGgnLCAoKSB7CiAgICB0ZXN0KCdkZWZhdWx0cyB0byBjdXJyZW50IHBsYXRmb3JtIHBhdGggY29udGV4dCcsICgpIHsKICAgICAgZXhwZWN0KHJvdXRlVG9QYXRoKCcvJyksIGVxdWFscyhwYXRoLmpvaW4oJ3JvdXRlcycsICdpbmRleC5kYXJ0JykpKTsKICAgIH0pOwogIH0pOwoKICBncm91cCgncm91dGVUb1BhdGggcG9zaXgnLCAoKSB7CiAgICBncm91cCgncHJlZmVySW5kZXggZmFsc2UnLCAoKSB7CiAgICAgIGZpbmFsIGV4cGVjdGVkUm91dGVUb1BhdGhNYXBwaW5ncyA9IDxTdHJpbmcsIFN0cmluZz57CiAgICAgICAgJy8nOiAnLi4vcm91dGVzL2luZGV4LmRhcnQnLAogICAgICAgICcvaGVsbG8nOiAnLi4vcm91dGVzL2hlbGxvLmRhcnQnLAogICAgICAgICcvaGVsbG8vd29ybGQnOiAnLi4vcm91dGVzL2hlbGxvL3dvcmxkLmRhcnQnLAogICAgICAgICcvaGVsbG8vW25hbWVdJzogJy4uL3JvdXRlcy9oZWxsby9bbmFtZV0uZGFydCcsCiAgICAgICAgJy9baWRdL2l0ZW0nOiAnLi4vcm91dGVzL1tpZF0vaXRlbS5kYXJ0JywKICAgICAgICAnL1tpZF0vcGFydC9pdGVtJzogJy4uL3JvdXRlcy9baWRdL3BhcnQvaXRlbS5kYXJ0JywKICAgICAgfTsKCiAgICAgIGZvciAoZmluYWwgZW50cnkgaW4gZXhwZWN0ZWRSb3V0ZVRvUGF0aE1hcHBpbmdzLmVudHJpZXMpIHsKICAgICAgICB0ZXN0KCdtYXBzICR7ZW50cnkua2V5fSAtPiAke2VudHJ5LnZhbHVlfScsICgpIHsKICAgICAgICAgIGV4cGVjdCgKICAgICAgICAgICAgcm91dGVUb1BhdGgoZW50cnkua2V5LCBwcmVhbWJsZTogJy4uL3JvdXRlcycpLAogICAgICAgICAgICBlcXVhbHMocGF0aC5wb3NpeC5ub3JtYWxpemUoZW50cnkudmFsdWUpKSwKICAgICAgICAgICk7CiAgICAgICAgfSk7CiAgICAgIH0KICAgIH0pOwoKICAgIGdyb3VwKCdwcmVmZXJJbmRleCB0cnVlJywgKCkgewogICAgICBmaW5hbCBleHBlY3RlZFJvdXRlVG9QYXRoTWFwcGluZ3MgPSA8U3RyaW5nLCBTdHJpbmc+ewogICAgICAgICcvJzogJy4uL3JvdXRlcy9pbmRleC5kYXJ0JywKICAgICAgICAnL2hlbGxvJzogJy4uL3JvdXRlcy9oZWxsby9pbmRleC5kYXJ0JywKICAgICAgICAnL2hlbGxvL3dvcmxkJzogJy4uL3JvdXRlcy9oZWxsby93b3JsZC9pbmRleC5kYXJ0JywKICAgICAgICAnL2hlbGxvL1tuYW1lXSc6ICcuLi9yb3V0ZXMvaGVsbG8vW25hbWVdL2luZGV4LmRhcnQnLAogICAgICAgICcvW2lkXS9pdGVtJzogJy4uL3JvdXRlcy9baWRdL2l0ZW0vaW5kZXguZGFydCcsCiAgICAgICAgJy9baWRdL3BhcnQvaXRlbSc6ICcuLi9yb3V0ZXMvW2lkXS9wYXJ0L2l0ZW0vaW5kZXguZGFydCcsCiAgICAgIH07CgogICAgICBmb3IgKGZpbmFsIGVudHJ5IGluIGV4cGVjdGVkUm91dGVUb1BhdGhNYXBwaW5ncy5lbnRyaWVzKSB7CiAgICAgICAgdGVzdCgnbWFwcyAke2VudHJ5LmtleX0gLT4gJHtlbnRyeS52YWx1ZX0nLCAoKSB7CiAgICAgICAgICBleHBlY3QoCiAgICAgICAgICAgIHJvdXRlVG9QYXRoKGVudHJ5LmtleSwgcHJlZmVySW5kZXg6IHRydWUsIHByZWFtYmxlOiAnLi4vcm91dGVzJyksCiAgICAgICAgICAgIGVxdWFscyhwYXRoLnBvc2l4Lm5vcm1hbGl6ZShlbnRyeS52YWx1ZSkpLAogICAgICAgICAgKTsKICAgICAgICB9KTsKICAgICAgfQogICAgfSk7CiAgfSk7CgogIGdyb3VwKCdyb3V0ZVRvUGF0aCB3aW5kb3dzJywgKCkgewogICAgZ3JvdXAoJ3ByZWZlckluZGV4IGZhbHNlJywgKCkgewogICAgICBmaW5hbCBleHBlY3RlZFJvdXRlVG9QYXRoTWFwcGluZ3MgPSA8U3RyaW5nLCBTdHJpbmc+ewogICAgICAgICcvJzogcicuLlxyb3V0ZXNcaW5kZXguZGFydCcsCiAgICAgICAgJy9oZWxsbyc6IHInLi5ccm91dGVzXGhlbGxvLmRhcnQnLAogICAgICAgICcvaGVsbG8vd29ybGQnOiByJy4uXHJvdXRlc1xoZWxsb1x3b3JsZC5kYXJ0JywKICAgICAgICAnL2hlbGxvL1tuYW1lXSc6IHInLi5ccm91dGVzXGhlbGxvXFtuYW1lXS5kYXJ0JywKICAgICAgICAnL1tpZF0vaXRlbSc6IHInLi5ccm91dGVzXFtpZF1caXRlbS5kYXJ0JywKICAgICAgICAnL1tpZF0vcGFydC9pdGVtJzogcicuLlxyb3V0ZXNcW2lkXVxwYXJ0XGl0ZW0uZGFydCcsCiAgICAgIH07CgogICAgICBmb3IgKGZpbmFsIGVudHJ5IGluIGV4cGVjdGVkUm91dGVUb1BhdGhNYXBwaW5ncy5lbnRyaWVzKSB7CiAgICAgICAgdGVzdCgnbWFwcyAke2VudHJ5LmtleX0gLT4gJHtlbnRyeS52YWx1ZX0nLCAoKSB7CiAgICAgICAgICBleHBlY3QoCiAgICAgICAgICAgIHJvdXRlVG9QYXRoKAogICAgICAgICAgICAgIGVudHJ5LmtleSwKICAgICAgICAgICAgICBwcmVhbWJsZTogcicuLlxyb3V0ZXMnLAogICAgICAgICAgICAgIHBhdGhDb250ZXh0OiBwYXRoLndpbmRvd3MsCiAgICAgICAgICAgICksCiAgICAgICAgICAgIGVxdWFscyhwYXRoLndpbmRvd3Mubm9ybWFsaXplKGVudHJ5LnZhbHVlKSksCiAgICAgICAgICApOwogICAgICAgIH0pOwogICAgICB9CiAgICB9KTsKCiAgICBncm91cCgncHJlZmVySW5kZXggdHJ1ZScsICgpIHsKICAgICAgZmluYWwgZXhwZWN0ZWRSb3V0ZVRvUGF0aE1hcHBpbmdzID0gPFN0cmluZywgU3RyaW5nPnsKICAgICAgICAnLyc6IHInLi5ccm91dGVzXGluZGV4LmRhcnQnLAogICAgICAgICcvaGVsbG8nOiByJy4uXHJvdXRlc1xoZWxsb1xpbmRleC5kYXJ0JywKICAgICAgICAnL2hlbGxvL3dvcmxkJzogcicuLlxyb3V0ZXNcaGVsbG9cd29ybGRcaW5kZXguZGFydCcsCiAgICAgICAgJy9oZWxsby9bbmFtZV0nOiByJy4uXHJvdXRlc1xoZWxsb1xbbmFtZV1caW5kZXguZGFydCcsCiAgICAgICAgJy9baWRdL2l0ZW0nOiByJy4uXHJvdXRlc1xbaWRdXGl0ZW1caW5kZXguZGFydCcsCiAgICAgICAgJy9baWRdL3BhcnQvaXRlbSc6IHInLi5ccm91dGVzXFtpZF1ccGFydFxpdGVtXGluZGV4LmRhcnQnLAogICAgICB9OwoKICAgICAgZm9yIChmaW5hbCBlbnRyeSBpbiBleHBlY3RlZFJvdXRlVG9QYXRoTWFwcGluZ3MuZW50cmllcykgewogICAgICAgIHRlc3QoJ21hcHMgJHtlbnRyeS5rZXl9IC0+ICR7ZW50cnkudmFsdWV9JywgKCkgewogICAgICAgICAgZXhwZWN0KAogICAgICAgICAgICByb3V0ZVRvUGF0aCgKICAgICAgICAgICAgICBlbnRyeS5rZXksCiAgICAgICAgICAgICAgcHJlZmVySW5kZXg6IHRydWUsCiAgICAgICAgICAgICAgcHJlYW1ibGU6IHInLi5ccm91dGVzJywKICAgICAgICAgICAgICBwYXRoQ29udGV4dDogcGF0aC53aW5kb3dzLAogICAgICAgICAgICApLAogICAgICAgICAgICBlcXVhbHMocGF0aC53aW5kb3dzLm5vcm1hbGl6ZShlbnRyeS52YWx1ZSkpLAogICAgICAgICAgKTsKICAgICAgICB9KTsKICAgICAgfQogICAgfSk7CiAgfSk7Cn0K", - "type": "text" - } + "type": "text", + }, ], "name": "dart_frog_new", "description": "A dart frog brick to create routes and middleware", @@ -136,26 +136,26 @@ final dartFrogNewBundle = MasonBundle.fromJson({ "path": "README.md", "data": "IyBkYXJ0X2Zyb2dfbmV3CgpbIVtQb3dlcmVkIGJ5IE1hc29uXShodHRwczovL2ltZy5zaGllbGRzLmlvL2VuZHBvaW50P3VybD1odHRwcyUzQSUyRiUyRnRpbnl1cmwuY29tJTJGbWFzb24tYmFkZ2UpXShodHRwczovL2dpdGh1Yi5jb20vZmVsYW5nZWwvbWFzb24pCgpBIGRhcnQgZnJvZyBicmljayB0byBjcmVhdGUgcm91dGVzIGFuZCBtaWRkbGV3YXJlLgoKX0dlbmVyYXRlZCBieSBbbWFzb25dWzFdIPCfp7FfCgpbMV06IGh0dHBzOi8vZ2l0aHViLmNvbS9mZWxhbmdlbC9tYXNvbgo=", - "type": "text" + "type": "text", }, "license": { "path": "LICENSE", "data": "TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMyBWZXJ5IEdvb2QgVmVudHVyZXMKClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKU09GVFdBUkUuCg==", - "type": "text" + "type": "text", }, "vars": { "route_path": { "type": "string", "description": "The path for the desired route", - "prompt": "What is the path for the desired route?" + "prompt": "What is the path for the desired route?", }, "type": { "type": "enum", "description": "Whether to create a route or a middleware", "default": "route", "prompt": "Want to create a route or a middleware?", - "values": ["route", "middleware"] - } - } + "values": ["route", "middleware"], + }, + }, }); diff --git a/packages/dart_frog_cli/test/src/command_runner_test.dart b/packages/dart_frog_cli/test/src/command_runner_test.dart index 97215dc7c..ec3af4e89 100644 --- a/packages/dart_frog_cli/test/src/command_runner_test.dart +++ b/packages/dart_frog_cli/test/src/command_runner_test.dart @@ -40,7 +40,7 @@ const expectedUsage = [ ' uninstall Explains how to uninstall the Dart Frog CLI.\n' ' update Update the Dart Frog CLI.\n' '\n' - 'Run "dart_frog help " for more information about a command.' + 'Run "dart_frog help " for more information about a command.', ]; const latestVersion = '0.0.0'; diff --git a/packages/dart_frog_cli/test/src/commands/build/build_test.dart b/packages/dart_frog_cli/test/src/commands/build/build_test.dart index 3a5aa3f79..0e40efa2c 100644 --- a/packages/dart_frog_cli/test/src/commands/build/build_test.dart +++ b/packages/dart_frog_cli/test/src/commands/build/build_test.dart @@ -68,8 +68,9 @@ void main() { ) ..testArgResults = argResults ..testCwd = cwd; - when(() => builder.build()) - .thenAnswer((_) => Future.value(ExitCode.tempFail)); + when( + () => builder.build(), + ).thenAnswer((_) => Future.value(ExitCode.tempFail)); await expectLater(command.run(), completion(ExitCode.tempFail.code)); diff --git a/packages/dart_frog_cli/test/src/commands/daemon/daemon_test.dart b/packages/dart_frog_cli/test/src/commands/daemon/daemon_test.dart index 687fcdb74..817bbca1c 100644 --- a/packages/dart_frog_cli/test/src/commands/daemon/daemon_test.dart +++ b/packages/dart_frog_cli/test/src/commands/daemon/daemon_test.dart @@ -29,7 +29,7 @@ const expectedUsage = [ 'Usage: dart_frog daemon [arguments]\n' '-h, --help Print this usage information.\n' '\n' - 'Run "dart_frog help" to see global options.' + 'Run "dart_frog help" to see global options.', ]; void main() { diff --git a/packages/dart_frog_cli/test/src/commands/dev/dev_test.dart b/packages/dart_frog_cli/test/src/commands/dev/dev_test.dart index 0edfe8b56..a7ccbc14b 100644 --- a/packages/dart_frog_cli/test/src/commands/dev/dev_test.dart +++ b/packages/dart_frog_cli/test/src/commands/dev/dev_test.dart @@ -34,8 +34,9 @@ void main() { stdin = _MockStdin(); when(() => argResults['port']).thenReturn('8080'); - when(() => argResults['dart-vm-service-port']) - .thenReturn('8181'); + when( + () => argResults['dart-vm-service-port'], + ).thenReturn('8181'); when(() => argResults.rest).thenReturn(['--enable-experiment=macros']); when(() => stdin.hasTerminal).thenReturn(false); }); diff --git a/packages/dart_frog_cli/test/src/commands/list/list_test.dart b/packages/dart_frog_cli/test/src/commands/list/list_test.dart index 5ebdd2505..ce95d7525 100644 --- a/packages/dart_frog_cli/test/src/commands/list/list_test.dart +++ b/packages/dart_frog_cli/test/src/commands/list/list_test.dart @@ -39,7 +39,7 @@ const expectedUsage = [ '-p, --plain Return the output in a plain format, printing each route ' 'on a new line.\n' '\n' - 'Run "dart_frog help" to see global options.' + 'Run "dart_frog help" to see global options.', ]; void main() { diff --git a/packages/dart_frog_cli/test/src/commands/new/new_test.dart b/packages/dart_frog_cli/test/src/commands/new/new_test.dart index b0d121b09..d66bd0993 100644 --- a/packages/dart_frog_cli/test/src/commands/new/new_test.dart +++ b/packages/dart_frog_cli/test/src/commands/new/new_test.dart @@ -42,7 +42,7 @@ const expectedUsage = [ ' middleware Create a new middleware for dart_frog\n' ' route Create a new route for dart_frog\n' '\n' - 'Run "dart_frog help" to see global options.' + 'Run "dart_frog help" to see global options.', ]; void main() { diff --git a/packages/dart_frog_cli/test/src/commands/update/update_test.dart b/packages/dart_frog_cli/test/src/commands/update/update_test.dart index d573cd8e7..b97eb8cb2 100644 --- a/packages/dart_frog_cli/test/src/commands/update/update_test.dart +++ b/packages/dart_frog_cli/test/src/commands/update/update_test.dart @@ -33,7 +33,7 @@ const expectedUsage = [ ' --verify-only Check if an update is available, without ' 'committing to update.\n' '\n' - 'Run "dart_frog help" to see global options.' + 'Run "dart_frog help" to see global options.', ]; void main() { diff --git a/packages/dart_frog_cli/test/src/daemon/connection_test.dart b/packages/dart_frog_cli/test/src/daemon/connection_test.dart index 4cc981b17..a3fec542b 100644 --- a/packages/dart_frog_cli/test/src/daemon/connection_test.dart +++ b/packages/dart_frog_cli/test/src/daemon/connection_test.dart @@ -90,7 +90,7 @@ void main() { ''' [{"event":"daemon.protocolError","params":{"message":"Message should be placed within a JSON list"}}]\n''', ''' -[{"event":"daemon.protocolError","params":{"message":"Malformed message, Invalid id: 1"}}]\n''' +[{"event":"daemon.protocolError","params":{"message":"Malformed message, Invalid id: 1"}}]\n''', ]); }); @@ -101,7 +101,7 @@ void main() { expect(receivedMessages, isEmpty); expect(stdoutLines, [ ''' -[{"event":"daemon.protocolError","params":{"message":"Unknown error: Exception: catapimbas"}}]\n''' +[{"event":"daemon.protocolError","params":{"message":"Unknown error: Exception: catapimbas"}}]\n''', ]); }); diff --git a/packages/dart_frog_cli/test/src/daemon/daemon_server_test.dart b/packages/dart_frog_cli/test/src/daemon/daemon_server_test.dart index c03d0ada5..f351cbc52 100644 --- a/packages/dart_frog_cli/test/src/daemon/daemon_server_test.dart +++ b/packages/dart_frog_cli/test/src/daemon/daemon_server_test.dart @@ -44,10 +44,12 @@ void main() { inputStreamController = StreamController.broadcast(); outputStreamController = StreamController.broadcast(); - when(() => connection.inputStream) - .thenAnswer((_) => inputStreamController.stream); - when(() => connection.outputSink) - .thenAnswer((_) => outputStreamController.sink); + when( + () => connection.inputStream, + ).thenAnswer((_) => inputStreamController.stream); + when( + () => connection.outputSink, + ).thenAnswer((_) => outputStreamController.sink); daemonServer = DaemonServer( connection: connection, diff --git a/packages/dart_frog_cli/test/src/daemon/domain/daemon_domain_test.dart b/packages/dart_frog_cli/test/src/daemon/domain/daemon_domain_test.dart index 17e8ebf5c..19d327f99 100644 --- a/packages/dart_frog_cli/test/src/daemon/domain/daemon_domain_test.dart +++ b/packages/dart_frog_cli/test/src/daemon/domain/daemon_domain_test.dart @@ -70,8 +70,9 @@ void main() { test('kills the daemon and sends goodbye', () async { final domain = DaemonDomain(daemonServer, processId: 42); - when(() => daemonServer.kill(ExitCode.success)) - .thenAnswer((_) async {}); + when( + () => daemonServer.kill(ExitCode.success), + ).thenAnswer((_) async {}); final response = await domain.handleRequest( const DaemonRequest( diff --git a/packages/dart_frog_cli/test/src/daemon/domain/route_configuration_domain_test.dart b/packages/dart_frog_cli/test/src/daemon/domain/route_configuration_domain_test.dart index e476e9d1a..06192d09f 100644 --- a/packages/dart_frog_cli/test/src/daemon/domain/route_configuration_domain_test.dart +++ b/packages/dart_frog_cli/test/src/daemon/domain/route_configuration_domain_test.dart @@ -380,8 +380,9 @@ void main() { group('watcherGenerateRouteConfiguration', () { setUp(() async { - when(() => watcher.forceRouteConfigurationRegeneration()) - .thenReturn(_configuration); + when( + () => watcher.forceRouteConfigurationRegeneration(), + ).thenReturn(_configuration); await domain.handleRequest( const DaemonRequest( @@ -491,8 +492,9 @@ void main() { }); test('when cannot generate route config', () async { - when(() => watcher.forceRouteConfigurationRegeneration()) - .thenReturn(null); + when( + () => watcher.forceRouteConfigurationRegeneration(), + ).thenReturn(null); expect( await domain.handleRequest( diff --git a/packages/dart_frog_cli/test/src/dev_server_runner/dev_server_runner_test.dart b/packages/dart_frog_cli/test/src/dev_server_runner/dev_server_runner_test.dart index 043b85361..d6a2df605 100644 --- a/packages/dart_frog_cli/test/src/dev_server_runner/dev_server_runner_test.dart +++ b/packages/dart_frog_cli/test/src/dev_server_runner/dev_server_runner_test.dart @@ -152,9 +152,11 @@ void main() { ).called(1); verify(() { - progress.complete('Running on ${link( - uri: Uri.parse('http://localhost:8080'), - )}'); + progress.complete( + 'Running on ${link( + uri: Uri.parse('http://localhost:8080'), + )}', + ); }).called(1); }); @@ -266,9 +268,11 @@ void main() { ).called(1); verify(() { - progress.complete('Running on ${link( - uri: Uri.parse('http://localhost:4242'), - )}'); + progress.complete( + 'Running on ${link( + uri: Uri.parse('http://localhost:4242'), + )}', + ); }).called(1); }); @@ -320,9 +324,11 @@ void main() { ).called(1); verify(() { - progress.complete('Running on ${link( - uri: Uri.parse('http://192.162.1.2:4242'), - )}'); + progress.complete( + 'Running on ${link( + uri: Uri.parse('http://192.162.1.2:4242'), + )}', + ); }).called(1); }); @@ -565,8 +571,9 @@ void main() { when(() => process.stdout).thenAnswer( (_) => Stream.value(utf8.encode('[hotreload] hot reload enabled.')), ); - when(() => directoryWatcher.events) - .thenAnswer((_) => controller.stream); + when( + () => directoryWatcher.events, + ).thenAnswer((_) => controller.stream); await expectLater(devServerRunner.start(), completes); expect(devServerRunner.isWatching, isTrue); @@ -592,8 +599,9 @@ void main() { utf8.encode('[hotreload] hot reload enabled.'), ), ); - when(() => directoryWatcher.events) - .thenAnswer((_) => controller.stream); + when( + () => directoryWatcher.events, + ).thenAnswer((_) => controller.stream); await expectLater(devServerRunner.start(), completes); expect(devServerRunner.isWatching, isTrue); @@ -620,8 +628,9 @@ runs codegen with debounce when changes are made to the public or routes directo when(() => process.stdout).thenAnswer( (_) => Stream.value(utf8.encode('[hotreload] hot reload enabled.')), ); - when(() => directoryWatcher.events) - .thenAnswer((_) => controller.stream); + when( + () => directoryWatcher.events, + ).thenAnswer((_) => controller.stream); await expectLater(devServerRunner.start(), completes); @@ -699,8 +708,9 @@ runs codegen with debounce when changes are made to the public or routes directo when(() => process.stdout).thenAnswer( (_) => Stream.value(utf8.encode('[hotreload] hot reload enabled.')), ); - when(() => directoryWatcher.events) - .thenAnswer((_) => controller.stream); + when( + () => directoryWatcher.events, + ).thenAnswer((_) => controller.stream); await expectLater(devServerRunner.start(), completes); @@ -737,8 +747,9 @@ runs codegen with debounce when changes are made to the public or routes directo (_) => Stream.value(utf8.encode('[hotreload] hot reload enabled.')), ); - when(() => directoryWatcher.events) - .thenAnswer((_) => controller.stream); + when( + () => directoryWatcher.events, + ).thenAnswer((_) => controller.stream); await expectLater(devServerRunner.start(), completes); @@ -865,8 +876,9 @@ runs codegen with debounce when changes are made to the public or routes directo when(() => process.exitCode).thenAnswer((_) => completer.future); final controller = StreamController(); - when(() => directoryWatcher.events) - .thenAnswer((_) => controller.stream); + when( + () => directoryWatcher.events, + ).thenAnswer((_) => controller.stream); await expectLater(devServerRunner.start(), completes); @@ -891,8 +903,9 @@ runs codegen with debounce when changes are made to the public or routes directo when(() => process.exitCode).thenAnswer((_) => completer.future); final controller = StreamController(); - when(() => directoryWatcher.events) - .thenAnswer((_) => controller.stream); + when( + () => directoryWatcher.events, + ).thenAnswer((_) => controller.stream); await expectLater(devServerRunner.start(), completes); await controller.close(); diff --git a/packages/dart_frog_cli/test/src/route_configuration_watcher/route_configuration_watcher_test.dart b/packages/dart_frog_cli/test/src/route_configuration_watcher/route_configuration_watcher_test.dart index 39c985269..74fec4528 100644 --- a/packages/dart_frog_cli/test/src/route_configuration_watcher/route_configuration_watcher_test.dart +++ b/packages/dart_frog_cli/test/src/route_configuration_watcher/route_configuration_watcher_test.dart @@ -29,8 +29,9 @@ void main() { watcherController.close(); }); - when(() => directoryWatcher.events) - .thenAnswer((_) => watcherController.stream); + when( + () => directoryWatcher.events, + ).thenAnswer((_) => watcherController.stream); routeConfigurationWatcher = RouteConfigurationWatcher( logger: logger,