diff --git a/dist/app/Classes/Character/CharacterItemConfig.php b/dist/app/Classes/Character/CharacterItemConfig.php index 9ae97af..4a2db6d 100644 --- a/dist/app/Classes/Character/CharacterItemConfig.php +++ b/dist/app/Classes/Character/CharacterItemConfig.php @@ -40,36 +40,55 @@ abstract class CharacterItemConfig protected static array $additionalPowers = []; - public static function getCharacterId(): UuidInterface { + public static function getCharacterId(): UuidInterface + { return Uuid::fromHexadecimal(new Hexadecimal(static::$characterId)); } - public static function getDefaultEquippedPerks(): array { + public static function getDefaultEquippedPerks(): array + { return static::$defaultEquippedPerks; } - public static function getDefaultEquippedWeapons(): array { - return static::$defaultEquippedWeapons; + public static function getDefaultEquippedWeapons(): array + { + return [ + ...static::$defaultEquippedWeapons, + ]; } - public static function getDefaultEquipment(): array { + public static function getDefaultEquipment(): array + { return static::$defaultEquipment; } - public static function getDefaultEquippedBonuses(): array { + public static function getDefaultEquippedBonuses(): array + { return static::$defaultEquippedBonuses; } - public static function getDefaultPowers() + public static function getDefaultPowers(): array { - return static::$defaultEquippedPowers; + return [ + ...static::$defaultEquippedPowers, + ...static::$additionalPowers, + ]; } - public static function getAllowedPerks(): array { + public static function getDefaultWeapons(): array { + return [ + ...static::$defaultEquippedWeapons, + ...static::$additionalWeapons, + ]; + } + + public static function getAllowedPerks(): array + { return [...static::$additionalPerks, ...static::$defaultEquippedPerks]; } - public static function getAllowedWeapons(): array { + public static function getAllowedWeapons(): array + { return [...static::$additionalWeapons, ...static::$defaultEquippedWeapons]; } diff --git a/dist/app/Classes/Character/HunterItemConfig/InquisitorItemConfig.php b/dist/app/Classes/Character/HunterItemConfig/InquisitorItemConfig.php index 2e3004f..432d481 100644 --- a/dist/app/Classes/Character/HunterItemConfig/InquisitorItemConfig.php +++ b/dist/app/Classes/Character/HunterItemConfig/InquisitorItemConfig.php @@ -14,8 +14,8 @@ class InquisitorItemConfig extends CharacterItemConfig ]; protected static array $defaultEquippedWeapons = [ - '50D3005B437066E4C4D99F9397CF1B0B', - '48072EAA49C83C6F387236955B3C7B6E', + '46B5D90B466F5CB8D13035BEEB11774D', + '5925AB494B3E90DD520E6B8A418B4AEF', ]; protected static array $defaultEquipment = [ @@ -102,36 +102,36 @@ class InquisitorItemConfig extends CharacterItemConfig ]; protected static array $additionalWeapons = [ - '0A9DB5BC418E1EE3F256D59129BB4E5B', - '2BBB9DD842102F0818864F83FDDE8577', + 'D2BF15FC4BC92D230DF5DD983DFC2ED4', + 'D9F4022445A9905B8D37429F870F911E', + 'BCB675974E4757CA9CD2ACB80AAD4881', + '1808EF1C4A86E2E984522D9763791771', + '877F8AE8438318FC69F238950D41FFB7', + '5691AC1B43E8AC7606D59BACC213FDB1', + '472DB7284944C0E569411DBB33C07107', + '792590BE451B239CC0E6838C3B2E0C11', + '3540E3DC4010A6EE61C1CE8002EE4633', + '973C9176404A29F926D13BACB76A2425', '46B5D90B466F5CB8D13035BEEB11774D', - '50D3005B437066E4C4D99F9397CF1B0B', - '682EC6AF444E8B15035489B7B59D7026', + 'C84FCD1A4E518AC0C520A89F25870D83', + '91E4726C472DAAD995C0EB8E7ADB28CD', '80A2BF864A6E743B95D8A8BBA20E286E', '80B0BA974566289F2819AA85B5F50969', - '91E4726C472DAAD995C0EB8E7ADB28CD', - 'C84FCD1A4E518AC0C520A89F25870D83', + '0A9DB5BC418E1EE3F256D59129BB4E5B', 'EFC6A5BE442C2554DB9D84AC5F2F0F5C', - '1054BCA742B538D9EF7C5482B6A94B51', - '48072EAA49C83C6F387236955B3C7B6E', - '4F5758F14D7404EB36CEB79D1917F35A', - '557039DA4846C1D85F63E98BE618E1BE', + '682EC6AF444E8B15035489B7B59D7026', + '2BBB9DD842102F0818864F83FDDE8577', + '50D3005B437066E4C4D99F9397CF1B0B', '5925AB494B3E90DD520E6B8A418B4AEF', - '5CBB9D9740F8A4B0CF8A63AF7F336C8F', '645074744007206132D20DAD7BE60D60', - 'CE9B843E414FBE382247C48F935CC5FA', - 'D40B955E444987490620FE978FC8DB07', 'E949314146FBD7739DACF2AB17F2A8E2', - '1E9F4B0B411B0CFF9009638EFBBB68BB', - '31E332854F033E7370DB219F194871FA', - '42029CB64E6D0E28CF818ABF164C7DE4', - '4D4481224066F26EB62F08957BAAB7F8', - '7A70DC4F40A5BC51F3944CAADE0D434B', - 'B83A141A45FB8D96D48A5185CD607AA3', - 'E4B6A31141FB3AF9271E18882CFC0DB6', - 'EC7BE7FF44840117459D8FBE2AE5BE27', - 'F8240052491F02CD1F1B73854173F0EB', - 'FB23E04C4730F3451388DF8CD2FAF31A', + 'D40B955E444987490620FE978FC8DB07', + '557039DA4846C1D85F63E98BE618E1BE', + '5CBB9D9740F8A4B0CF8A63AF7F336C8F', + '4F5758F14D7404EB36CEB79D1917F35A', + '1054BCA742B538D9EF7C5482B6A94B51', + 'CE9B843E414FBE382247C48F935CC5FA', + '48072EAA49C83C6F387236955B3C7B6E', ]; protected static array $additionalPowers = [ diff --git a/dist/app/Classes/Character/HunterItemConfig/PoacherItemConfig.php b/dist/app/Classes/Character/HunterItemConfig/PoacherItemConfig.php index 2ba2947..db78113 100644 --- a/dist/app/Classes/Character/HunterItemConfig/PoacherItemConfig.php +++ b/dist/app/Classes/Character/HunterItemConfig/PoacherItemConfig.php @@ -28,7 +28,7 @@ class PoacherItemConfig extends CharacterItemConfig ]; protected static array $defaultEquippedBonuses = [ - '4431395744543533907B099952F81510', + '0FBE5C46F94E906875E84BA3C115B9B5', '6BE28177483A89CF00B2FD839726ACE1', ]; diff --git a/dist/app/Classes/Character/HunterItemConfig/StalkerItemConfig.php b/dist/app/Classes/Character/HunterItemConfig/StalkerItemConfig.php index ec4a9d5..e319e8c 100644 --- a/dist/app/Classes/Character/HunterItemConfig/StalkerItemConfig.php +++ b/dist/app/Classes/Character/HunterItemConfig/StalkerItemConfig.php @@ -28,8 +28,8 @@ class StalkerItemConfig extends CharacterItemConfig ]; protected static array $defaultEquippedBonuses = [ - '791F12E047DA9E26E246E3859C3F587E', '8A5BF2274640C2F23EF3C996A6F6404D', + '545F88D24EAD402513C4948DE31DD6AE', ]; protected static array $defaultEquippedPowers = [ @@ -102,36 +102,36 @@ class StalkerItemConfig extends CharacterItemConfig ]; protected static array $additionalWeapons = [ - '065629E04A181ADD3062169AAFB88F43', - '0D96281E4440DF505B9CA8B1457F50D8', - '1727C5E74C3C7454A6CC0FB1F7562CE2', + 'AB2F540D448B533998EC38B8ABAFFD35', '1BB15A214C78FBC23E74369682117834', '2C03CA70439065116446DA9F6F347900', - '364665404243311408F6A0BD4DCE05BD', - '858747E74B7F30A0F6C77888D2D255AF', - '8CE61C214F9BD049028EF2B896D3B161', '912C2B42486993E01D0B9DB6F1D1E408', - 'AB2F540D448B533998EC38B8ABAFFD35', - '192EC9DD4F40FE3C66F8A2AD84568769', - '1945D4B24A31EB6C6CA508A4CDFBB44F', - '1B51D59C47F565A20E743BA187B83642', - '71F194C145E9629058957E9183C5C9C6', - '773C61C84B175DB0314B809DC142739A', - '7FD66FCD42766C53D2CB42A7A611B88E', - '86711D8347A60ED764BE78A051CD4C11', - '9AA46980454C38B8CBC1CE87F7E04F37', - 'CA7D61574EB6F0AE1D6D39A4EDD719D7', - 'D4CBB3C9425AB53EB481558BED82AE7C', - '0FDFC87D45DF769282EA1FA7AB57E409', + '8CE61C214F9BD049028EF2B896D3B161', + '858747E74B7F30A0F6C77888D2D255AF', + '0D96281E4440DF505B9CA8B1457F50D8', + '065629E04A181ADD3062169AAFB88F43', + '1727C5E74C3C7454A6CC0FB1F7562CE2', + '364665404243311408F6A0BD4DCE05BD', '169446014AA2A782E51ECFAF9EF33A39', - '307A0B13417737DED675309F8B978AB8', - '3D535D304B5E5113CA31D2838C840129', '4E4E95BB4EBD26E7CFA0E489979DA0CC', '5DE495E742FB3EB0FBEF92BDE718E59F', - '656CB0C644C6677C470D21AD0EA8437A', '8C365CF442AE795157A187B017E4D17F', 'A9349C774A13D353C0F315BB7B979324', 'C55D9EFF46EB08ABDD8467BC23969E53', + '656CB0C644C6677C470D21AD0EA8437A', + '3D535D304B5E5113CA31D2838C840129', + '0FDFC87D45DF769282EA1FA7AB57E409', + '307A0B13417737DED675309F8B978AB8', + '773C61C84B175DB0314B809DC142739A', + '9AA46980454C38B8CBC1CE87F7E04F37', + '71F194C145E9629058957E9183C5C9C6', + '7FD66FCD42766C53D2CB42A7A611B88E', + 'D4CBB3C9425AB53EB481558BED82AE7C', + 'CA7D61574EB6F0AE1D6D39A4EDD719D7', + '192EC9DD4F40FE3C66F8A2AD84568769', + '86711D8347A60ED764BE78A051CD4C11', + '1945D4B24A31EB6C6CA508A4CDFBB44F', + '1B51D59C47F565A20E743BA187B83642', ]; protected static array $additionalPowers = [ diff --git a/dist/app/Classes/Character/HunterItemConfig/VeteranItemConfig.php b/dist/app/Classes/Character/HunterItemConfig/VeteranItemConfig.php index e1313aa..a166cb2 100644 --- a/dist/app/Classes/Character/HunterItemConfig/VeteranItemConfig.php +++ b/dist/app/Classes/Character/HunterItemConfig/VeteranItemConfig.php @@ -28,8 +28,8 @@ class VeteranItemConfig extends CharacterItemConfig ]; protected static array $defaultEquippedBonuses = [ - '172080544A05F838E2473790FDF4873A', - '3D377249421D35F0F750578919A7E210', + '791F12E047DA9E26E246E3859C3F587E', + '03783FB54D88B7D88DD4509FCBBAFE68', ]; protected static array $defaultEquippedPowers = [ @@ -102,36 +102,37 @@ class VeteranItemConfig extends CharacterItemConfig ]; protected static array $additionalWeapons = [ - '479BE509436547C4222CF6BB01802009', - '6562B26B48C9C791C82A3EAE344EBEE1', - '6F3359C54870B7B8A4D7B9A8C561D001', - '90F742AD4BDE1CBF81B4B0BE57271C9B', - 'A17BA09141027848493CAA9D5EDC9D72', - 'A87672CA4D2BBFF35E273C82F2524278', - 'B02BE54A4758C5169593BC9EFF9DA028', - 'BBA2090F49BA1F26443400AC8ABD6A7D', + 'EC7BE7FF44840117459D8FBE2AE5BE27', + '4D4481224066F26EB62F08957BAAB7F8', + '1E9F4B0B411B0CFF9009638EFBBB68BB', + '31E332854F033E7370DB219F194871FA', + '7A70DC4F40A5BC51F3944CAADE0D434B', + '42029CB64E6D0E28CF818ABF164C7DE4', + 'FB23E04C4730F3451388DF8CD2FAF31A', + 'F8240052491F02CD1F1B73854173F0EB', + 'E4B6A31141FB3AF9271E18882CFC0DB6', + 'B83A141A45FB8D96D48A5185CD607AA3', 'EAF5179F4F62DCC06CE3E29F4E86207E', + '479BE509436547C4222CF6BB01802009', 'F317A5504A82074040F104A0AE68B360', - '0606F8464D4C7EB70601CC84C50BCAC6', - '22C48CEE49DC29EED48A82A7423DCCE6', + 'A17BA09141027848493CAA9D5EDC9D72', + '6F3359C54870B7B8A4D7B9A8C561D001', + 'BBA2090F49BA1F26443400AC8ABD6A7D', + 'B02BE54A4758C5169593BC9EFF9DA028', + 'A87672CA4D2BBFF35E273C82F2524278', + '90F742AD4BDE1CBF81B4B0BE57271C9B', + '6562B26B48C9C791C82A3EAE344EBEE1', '23C4DCE74DB1D6CDC9147587F5C42450', - '369D5D0C4175FD4445EF67BEF060B270', - '377368444AFD0D25687CEBA2B721CEA9', - '4BCE89A640F8687625ABF58B35A734AC', - '4D3110C745832FC4FAD3CDBB2988CDD3', - 'D33211F643BF66DE32E555928266B97A', 'EC2B43B6444929A1346A12B64D4DC8D3', + '369D5D0C4175FD4445EF67BEF060B270', + 'D33211F643BF66DE32E555928266B97A', + '4D3110C745832FC4FAD3CDBB2988CDD3', + '4BCE89A640F8687625ABF58B35A734AC', + '377368444AFD0D25687CEBA2B721CEA9', 'FF5ADA454579CD95C8536DB944C75F24', - '1808EF1C4A86E2E984522D9763791771', - '3540E3DC4010A6EE61C1CE8002EE4633', - '472DB7284944C0E569411DBB33C07107', - '5691AC1B43E8AC7606D59BACC213FDB1', - '792590BE451B239CC0E6838C3B2E0C11', - '877F8AE8438318FC69F238950D41FFB7', - '973C9176404A29F926D13BACB76A2425', - 'BCB675974E4757CA9CD2ACB80AAD4881', - 'D2BF15FC4BC92D230DF5DD983DFC2ED4', - 'D9F4022445A9905B8D37429F870F911E', + '22C48CEE49DC29EED48A82A7423DCCE6', + '0606F8464D4C7EB70601CC84C50BCAC6', + ]; protected static array $additionalPowers = [ diff --git a/dist/app/Classes/Character/RunnerItemConfig/DashItemConfig.php b/dist/app/Classes/Character/RunnerItemConfig/DashItemConfig.php index 5f4c00c..7f88fd7 100644 --- a/dist/app/Classes/Character/RunnerItemConfig/DashItemConfig.php +++ b/dist/app/Classes/Character/RunnerItemConfig/DashItemConfig.php @@ -94,26 +94,26 @@ class DashItemConfig extends CharacterItemConfig ]; protected static array $additionalWeapons = [ - '097521AE4B974026F31B92BBAD436A38', - '2331ED814F30635500FEDB96A0674A3A', - '272369C042147225E364CFA42947859F', - '36B2650B4564CC7E7ED310AD3FCA0D75', '66DAA6C946CA0A7C36314A94164B78BF', - '98BCBE234BF7CCB50DC4A78CA78F8672', - '9B6943CD4DF6CD2FCD94CB89E6F55380', + '097521AE4B974026F31B92BBAD436A38', + '36B2650B4564CC7E7ED310AD3FCA0D75', 'A3FF5F7B4D2657164847319A2E52A0FD', - 'BE76A25F44710E8AD011B2B74ED3F3A9', + '98BCBE234BF7CCB50DC4A78CA78F8672', 'D93A7E864CFECE74FDE2D9BA50AB7135', - '5A2DD3F6433AB83A725513B868D240CF', - '240BC7484AF781EBA93C47932DA8D061', - '2920B01748AA9AB4EC6299AD15FF0E6A', - '3636FD2240F282F0921FA68E8F88ABBF', + '2331ED814F30635500FEDB96A0674A3A', + '9B6943CD4DF6CD2FCD94CB89E6F55380', + 'BE76A25F44710E8AD011B2B74ED3F3A9', + '272369C042147225E364CFA42947859F', + 'BC8866F343E7970E145C889D9CE7B994', '42795DDF4ED4B7700A6555B586C5AD2B', '51C1825B4469FF483278DDB12D116E04', - '8B886664468A2878B26813A097F375E5', + '240BC7484AF781EBA93C47932DA8D061', 'B2ECD91349955E809A54DB9B36B7D6CF', - 'BC8866F343E7970E145C889D9CE7B994', 'DC91C3414F22F217BCB30590FAB59A9E', + '8B886664468A2878B26813A097F375E5', + '2920B01748AA9AB4EC6299AD15FF0E6A', + '3636FD2240F282F0921FA68E8F88ABBF', + '5A2DD3F6433AB83A725513B868D240CF', ]; protected static array $defaultEquippedPowers = [ diff --git a/dist/app/Classes/Character/RunnerItemConfig/FogItemConfig.php b/dist/app/Classes/Character/RunnerItemConfig/FogItemConfig.php index 6753bed..10e3a41 100644 --- a/dist/app/Classes/Character/RunnerItemConfig/FogItemConfig.php +++ b/dist/app/Classes/Character/RunnerItemConfig/FogItemConfig.php @@ -26,7 +26,7 @@ class FogItemConfig extends CharacterItemConfig protected static array $defaultEquippedBonuses = [ '1E08AFFA485E92BAFF2C1BB85CEFB81E', - '1F5CD9004224C56746D81991AA40448A', + 'D8305B60C8455B51368681BFD337525A', ]; protected static array $additionalPerks = [ diff --git a/dist/app/Classes/Character/RunnerItemConfig/InkedItemConfig.php b/dist/app/Classes/Character/RunnerItemConfig/InkedItemConfig.php index 0aef438..fb4e931 100644 --- a/dist/app/Classes/Character/RunnerItemConfig/InkedItemConfig.php +++ b/dist/app/Classes/Character/RunnerItemConfig/InkedItemConfig.php @@ -25,8 +25,8 @@ class InkedItemConfig extends CharacterItemConfig ]; protected static array $defaultEquippedBonuses = [ - '261144CC43A9F74A60506AB0335B23B2', '92B767F442A89C87CC3C9CB5D279D6EA', + 'CBE325ABBD44C58723A7268F7FB90D49', ]; protected static array $additionalPerks = [ @@ -40,16 +40,16 @@ class InkedItemConfig extends CharacterItemConfig '5AE771024971ED9C8DE3188A30BE3946', '180B90BC4577469F4D52DA917A7FED6B', 'CB95BEF142FE7EEAA6D9828DE3E4D6EA', - '04650B23493C386FA87E48947D26D79F', - '168A9C7E4AF1C1D321885ABEF7538DE9', - 'F329A7724E21169E99739196DFC797D1', - '03B907684E4B8058A274F1A1958A7FB2', - 'B245A69F4145075488DD01A477A24385', - '72F7A311494D090473C38C8391AC6F89', - 'AD024E8E46E056286FC5F0AB07EC2FA0', - '3A769A1F400DC24C97DF28B8969992E1', - 'AC4E66024C3E56B3675EA1B273AB7B6E', - 'B377AE6047A4688FE2164FB2E341C525', + '9FCAAC9143A827E79DC179B762B1E520', + '9A9042614697C385E5744C903F5E19C3', + '25B8F52744CAEB17E599888B5E80162E', + 'EAC46B4C4979624CD3C15B9189D1CC93', + '2822F9B547761DD69A4853920A5A3A67', + '46686C2F49C88ADD7635A4B3D5B1D594', + 'FF5821084098286D2E31E99192BB0988', + '77EF1CAC48919368F529018D6E512B94', + '6BABAFD74690D55F470764A1ACC7DFE1', + '67B8A74643EA6CB8A41457AD5A576D69', '6340FA564B0C4E692AD174BB743607F5', '418880784C86E2A81AB395A998B09901', '75831C73438DA8C3E873339E58FC1674', @@ -90,7 +90,6 @@ class InkedItemConfig extends CharacterItemConfig 'F2F5C6BB4536127CD0D0768422BCF154', 'DFF40D824EDD8D0EF7DC4EBE81E7D121', '5EEF1C6040DE7AB766F9E48795BD0500', - ]; protected static array $additionalWeapons = [ diff --git a/dist/app/Classes/Character/RunnerItemConfig/SawbonesItemConfig.php b/dist/app/Classes/Character/RunnerItemConfig/SawbonesItemConfig.php index b48bf0c..7bceebe 100644 --- a/dist/app/Classes/Character/RunnerItemConfig/SawbonesItemConfig.php +++ b/dist/app/Classes/Character/RunnerItemConfig/SawbonesItemConfig.php @@ -30,16 +30,16 @@ class SawbonesItemConfig extends CharacterItemConfig ]; protected static array $additionalPerks = [ - '9FCAAC9143A827E79DC179B762B1E520', - '9A9042614697C385E5744C903F5E19C3', - '25B8F52744CAEB17E599888B5E80162E', - 'EAC46B4C4979624CD3C15B9189D1CC93', - '2822F9B547761DD69A4853920A5A3A67', - '46686C2F49C88ADD7635A4B3D5B1D594', - 'FF5821084098286D2E31E99192BB0988', - '77EF1CAC48919368F529018D6E512B94', - '6BABAFD74690D55F470764A1ACC7DFE1', - '67B8A74643EA6CB8A41457AD5A576D69', + '04650B23493C386FA87E48947D26D79F', + '168A9C7E4AF1C1D321885ABEF7538DE9', + 'F329A7724E21169E99739196DFC797D1', + '03B907684E4B8058A274F1A1958A7FB2', + 'B245A69F4145075488DD01A477A24385', + '72F7A311494D090473C38C8391AC6F89', + 'AD024E8E46E056286FC5F0AB07EC2FA0', + '3A769A1F400DC24C97DF28B8969992E1', + 'AC4E66024C3E56B3675EA1B273AB7B6E', + 'B377AE6047A4688FE2164FB2E341C525', '274EB0B34AB39E468BFA878F7E87465B', '4AE4801A440EFF8B54760EBFF92B128C', '42E05FC94E6B09CCBB6208BAF94AE98F', @@ -90,7 +90,6 @@ class SawbonesItemConfig extends CharacterItemConfig 'E3139A504D205C06438904B1ECD68D44', 'E9564AFF410C3F82BD53B7890DA9DB97', 'A1463E12485BA0B2D678EA863BCC8ED9', - ]; protected static array $additionalWeapons = [ diff --git a/dist/app/Classes/Config/CatalogPriceConfig.php b/dist/app/Classes/Config/CatalogPriceConfig.php index d82c7c5..92a337e 100644 --- a/dist/app/Classes/Config/CatalogPriceConfig.php +++ b/dist/app/Classes/Config/CatalogPriceConfig.php @@ -131,49 +131,61 @@ class CatalogPriceConfig const PERKS_COST = [ 1 => [ + 'CurrencyA' => 500, 'CurrencyB' => 500, ], 2 => [ - 'CurrencyB' => 750, + 'CurrencyA' => 700, + 'CurrencyB' => 800, ], 3 => [ - 'CurrencyB' => 1000, + 'CurrencyA' => 900, + 'CurrencyB' => 1200, ], 4 => [ - 'CurrencyB' => 1250, + 'CurrencyA' => 1100, + 'CurrencyB' => 1600, + 'CurrencyC' => 400, ], 5 => [ - 'CurrencyB' => 1500, + 'CurrencyA' => 1300, + 'CurrencyB' => 2000, + 'CurrencyC' => 1100, ], 6 => [ - 'CurrencyA' => 425, - 'CurrencyB' => 1300, + 'CurrencyA' => 1500, + 'CurrencyB' => 2400, + 'CurrencyC' => 1700, ], 7 => [ - 'CurrencyA' => 525, - 'CurrencyB' => 1400, + 'CurrencyA' => 1700, + 'CurrencyB' => 2900, + 'CurrencyC' => 2400, ], 8 => [ - 'CurrencyA' => 625, - 'CurrencyB' => 1500, + 'CurrencyA' => 1900, + 'CurrencyB' => 3400, + 'CurrencyC' => 3100, ], 9 => [ - 'CurrencyA' => 725, - 'CurrencyB' => 1600, + 'CurrencyA' => 2100, + 'CurrencyB' => 4000, + 'CurrencyC' => 3900, ], 10 => [ - 'CurrencyA' => 825, - 'CurrencyB' => 1700, + 'CurrencyA' => 2300, + 'CurrencyB' => 4600, + 'CurrencyC' => 4700, ], ]; const SKINS_COST = [ - ItemQuality::Basic->value => ['CurrencyC' => 2500], - ItemQuality::Specialized->value => ['CurrencyC' => 3500], - ItemQuality::Rare->value => ['CurrencyC' => 4500], - ItemQuality::Superior->value => ['CurrencyC' => 5500], - ItemQuality::Epic->value => ['CurrencyC' => 6250], - ItemQuality::Ultra->value => ['CurrencyC' => 7500], + ItemQuality::Basic->value => ['CurrencyA' => 800, 'CurrencyC'=> 1200], + ItemQuality::Specialized->value => ['CurrencyA' => 1600, 'CurrencyC' => 1900], + ItemQuality::Rare->value => ['CurrencyA' => 2400, 'CurrencyC' => 2600], + ItemQuality::Superior->value => ['CurrencyA' => 3200, 'CurrencyC' => 3000], + ItemQuality::Epic->value => ['CurrencyA' => 4000, 'CurrencyC' => 5400], + ItemQuality::Ultra->value => ['CurrencyA' => 6000, 'CurrencyC' => 8500], ]; public static function GetCategoryPriceForLevel(CatalogPriceCategory $category, int|string $level): array diff --git a/dist/app/Classes/Factory/TimedChallengeFactory.php b/dist/app/Classes/Factory/TimedChallengeFactory.php new file mode 100644 index 0000000..4bc55eb --- /dev/null +++ b/dist/app/Classes/Factory/TimedChallengeFactory.php @@ -0,0 +1,172 @@ + 1, + '/Game/Challenges/Challenge_JustPlay.Challenge_JustPlay' => 1, + '/Game/Challenges/Challenge_Deliver_Runner.Challenge_Deliver_Runner' => 15, + '/Game/Challenges/Weekly/Challenge_Shields_RunnerWeekly.Challenge_Shields_RunnerWeekly' => 10, + '/Game/Challenges/Progression/General/Challenge_Heal_Runner.Challenge_Heal_Runner.' => 100, + '/Game/Challenges/Progression/General/Challenge_Evade_Runner.Challenge_Evade_Runner' => 25, + ] ; + + const AVAILABLE_DAILY_HUNTER = [ + '/Game/Challenges/Challenge_JustPlay.Challenge_JustPlay' => 1, + '/Game/Challenges/Weekly/Challenge_DroneActivation_HunterWeekly.Challenge_DroneActivation_HunterWeekly' => 5, + '/Game/Challenges/Weekly/Challenge_Headshot_HunterWeekly.Challenge_Headshot_HunterWeekly' => 1, + '/Game/Challenges/Challenge_Down_Hunter.Challenge_Down_Hunter' => 3, + '/Game/Challenges/Weekly/Challenge_InDenial_HunterWeekly.Challenge_InDenial_HunterWeekly' => 3, + ]; + + const AVAILABLE_WEEKLY_RUNNER = [ + '/Game/Challenges/Weekly/Challenge_BleedOut_RunnerWeekly.Challenge_BleedOut_RunnerWeekly' => 5, + '/Game/Challenges/Weekly/Challenge_Greed_RunnerWeekly.Challenge_Greed_RunnerWeekly' => 50, + '/Game/Challenges/Weekly/Challenge_Shields_RunnerWeekly.Challenge_Shields_RunnerWeekly' => 100, + '/Game/Challenges/Challenge_Deliver_Runner.Challenge_Deliver_Runner' => 150, + '/Game/Challenges/Weekly/Challenge_SpeedCapture_RunnerWeekly.Challenge_SpeedCapture_RunnerWeekly' => 15, + '/Game/Challenges/Weekly/Challenge_UPs_RunnerWeekly.Challenge_UPs_RunnerWeekly' => 5, + '/Game/Challenges/Weekly/Challenge_Wasteful_RunnerWeekly.Challenge_Wasteful_RunnerWeekly' => 100, + '/Game/Challenges/Challenge_JustPlay.Challenge_JustPlay' => 5, + '/Game/Challenges/Progression/General/Challenge_Heal_Runner.Challenge_Heal_Runner' => 600, + '/Game/Challenges/Progression/General/Challenge_Evade_Runner.Challenge_Evade_Runner' => 150, + ]; + + const AVAILABLE_WEEKLY_HUNTER = [ + '/Game/Challenges/Weekly/Challenge_ARB_Damage_HunterWeekly.Challenge_ARB_Damage_HunterWeekly' => 5000, + '/Game/Challenges/Weekly/Challenge_AssaultRifleWins_HunterWeekly.Challenge_AssaultRifleWins_HunterWeekly' => 100, + '/Game/Challenges/Weekly/Challenge_Damage_HunterWeekly.Challenge_Damage_HunterWeekly' => 5000, + '/Game/Challenges/Weekly/Challenge_DroneActivation_HunterWeekly.Challenge_DroneActivation_HunterWeekly' => 25, + '/Game/Challenges/Weekly/Challenge_Greed_HunterWeekly.Challenge_Greed_HunterWeekly' => 50, + '/Game/Challenges/Weekly/Challenge_Headshot_HunterWeekly.Challenge_Headshot_HunterWeekly' => 10, + '/Game/Challenges/Weekly/Challenge_HuntingShotgunWins_HunterWeekly.Challenge_HuntingShotgunWins_HunterWeekly' => 10, + '/Game/Challenges/Weekly/Challenge_InDenial_HunterWeekly.Challenge_InDenial_HunterWeekly' => 20, + '/Game/Challenges/Weekly/Challenge_LMGWins_HunterWeekly.Challenge_LMGWins_HunterWeekly' => 10, + '/Game/Challenges/Weekly/Challenge_Reveals_hunterWeekly.Challenge_Reveals_hunterWeekly' => 10, + '/Game/Challenges/Weekly/Challenge_RingOut_hunterWeekly.Challenge_RingOut_hunterWeekly' => 5, + '/Game/Challenges/Weekly/Challenge_Mines_HunterWeekly.Challenge_Mines_HunterWeekly' => 10, + '/Game/Challenges/Weekly/Challenge_ShotgunDowns_HunterWeekly.Challenge_ShotgunDowns_HunterWeekly' => 10, + '/Game/Challenges/Weekly/Challenge_Wasteful_HunterWeekly.Challenge_Wasteful_HunterWeekly' => 100, + '/Game/Challenges/Challenge_JustPlay.Challenge_JustPlay' => 5, + ]; + + const DAILY_REWARDS = [ + 'CurrencyA' => [ + 'min' => 1000, + 'max' => 2500, + ], + 'CurrencyB' => [ + 'min' => 250, + 'max' => 500, + ], + 'CurrencyC' => [ + 'min' => 500, + 'max' => 750, + ], + ]; + + const WEEKLY_REWARDS = [ + 'CurrencyA' => [ + 'min' => 3000, + 'max' => 5000, + ], + 'CurrencyB' => [ + 'min' => 250, + 'max' => 350, + ], + 'CurrencyC' => [ + 'min' => 600, + 'max' => 900, + ], + ]; + + /** + * Makes a new TimedChallenge Instance that's not yet saved to the Database. + * + * @param Carbon $startTime + * @param Faction $faction + * @param ChallengeType $type + * @return void + * @throws TimedChallengeFactoryException + */ + public static function makeChallenge( + Carbon $startTime, + Faction $faction, + ChallengeType $type, + ): TimedChallenge + { + [$blueprintPath, $completionValue] = static::pickChallenge($faction, $type); + + $challenge = new TimedChallenge(); + $challenge->type = $type; + $challenge->faction = $faction; + $challenge->blueprint_path = $blueprintPath; + $challenge->completion_value = $completionValue; + + $challenge->start_time = $startTime; + + if($type === ChallengeType::Daily) + $challenge->end_time = $startTime->copy()->addDay(); + else + $challenge->end_time = $startTime->copy()->addWeek(); + + $challenge->rewards = [static::pickReward($type)]; + + return $challenge; + } + + protected static function pickChallenge( + Faction $faction, + ChallengeType $type, + ): array { + $challengeArray = match ($faction) { + Faction::Hunter => $type === ChallengeType::Daily ? static::AVAILABLE_DAILY_HUNTER : static::AVAILABLE_WEEKLY_HUNTER, + Faction::Runner => $type === ChallengeType::Daily ? static::AVAILABLE_DAILY_RUNNER : static::AVAILABLE_WEEKLY_RUNNER, + default => null, + }; + + if($challengeArray === null) + throw new TimedChallengeFactoryException('Unallowed Faction ('. $faction->value .'), could not select a challenge.'); + + $blueprintPath = array_rand($challengeArray); + $completionValue = $challengeArray[$blueprintPath]; + + return [$blueprintPath, $completionValue]; + } + + /** + * @param ChallengeType $type + * @return Reward + * @throws TimedChallengeFactoryException + */ + protected static function pickReward( + ChallengeType $type, + ): Reward { + $rewardsArray = match ($type) { + ChallengeType::Daily => static::DAILY_REWARDS, + ChallengeType::Weekly => static::WEEKLY_REWARDS, + default => null, + }; + + if($rewardsArray === null) + throw new TimedChallengeFactoryException('Unallowed Challenge Type (' . $type->value . '), could not select a reward.'); + + $pickedReward = array_rand($rewardsArray); + + return new Reward( + RewardType::Currency, + round(rand($rewardsArray[$pickedReward]['min'], $rewardsArray[$pickedReward]['max']) / 10) * 10, + $pickedReward, + ); + } +} diff --git a/dist/app/Classes/Frontend/ChatMessage.php b/dist/app/Classes/Frontend/ChatMessage.php new file mode 100644 index 0000000..2c69a73 --- /dev/null +++ b/dist/app/Classes/Frontend/ChatMessage.php @@ -0,0 +1,33 @@ +userId); + } + + public function jsonSerialize(): array + { + return [ + 'gameId' => $this->gameId, + 'userId' => $this->userId, + 'messageTime' => $this->messageTime->toJSON(), + 'message' => $this->message, + ]; + } +} \ No newline at end of file diff --git a/dist/app/Console/Commands/CleanupLogs.php b/dist/app/Console/Commands/CleanupLogs.php new file mode 100644 index 0000000..d5bacf1 --- /dev/null +++ b/dist/app/Console/Commands/CleanupLogs.php @@ -0,0 +1,65 @@ +allFiles(); + $now = Carbon::now(); + + // Delete older modified files + foreach ($files as $file) { + $lastModified = Carbon::createFromTimestamp($disk->lastModified($file)); + + if(Str::startsWith($file, 'sessions/')) + $shouldDelete = $now->diff($lastModified)->total('days') * -1 > self::SESSION_FILE_DAYS_OLD; + else + $shouldDelete = $now->diff($lastModified)->total('days') * -1 > self::FILE_DAYS_OLD; + + if($shouldDelete) + $disk->delete($file); + } + + //Loop over all directories to delete empty ones. + $directories = $disk->allDirectories(); + foreach ($directories as $directory) { + $files = $disk->allFiles($directory); + + if(count($files) === 0) + $disk->deleteDirectory($directory); + } + } +} diff --git a/dist/app/Console/Commands/GenerateTimedChallenges.php b/dist/app/Console/Commands/GenerateTimedChallenges.php new file mode 100644 index 0000000..fdec404 --- /dev/null +++ b/dist/app/Console/Commands/GenerateTimedChallenges.php @@ -0,0 +1,94 @@ +setTime(static::INTERVAL_HOUR, static::INTERVAL_MINUTE); + + // Put the current Daily a day in the past when the current time the job runs is still before the new Daily + if(Carbon::now()->isBefore($dailyToday)) + $dailyToday->subDay(); + + $dailyTomorrow = $dailyToday->copy()->addDay(); + $currentWeekly = Carbon::parse('last '.static::WEEKLY_INTERVAL_DAY); + $currentWeekly->setTime(static::INTERVAL_HOUR, static::INTERVAL_MINUTE); + $nextWeekly = $currentWeekly->copy()->addWeek(); + + $dailys = [$dailyToday, $dailyTomorrow]; + $weeklys = [$currentWeekly, $nextWeekly]; + + $log = Log::channel('challengeCreation'); + + foreach ([Faction::Hunter, Faction::Runner] as $faction) { + foreach ($dailys as $time) { + $dailyExists = TimedChallenge::whereDate('start_time', $time) + ->where('type', ChallengeType::Daily) + ->where('faction', $faction) + ->exists(); + + if(!$dailyExists) { + try { + $newDaily = TimedChallengeFactory::makeChallenge($time, $faction, ChallengeType::Daily); + $newDaily->save(); + } catch (TimedChallengeFactoryException $e) { + $log->error($e->getMessage()); + } + } + } + + foreach ($weeklys as $time) { + $weeklyExists = TimedChallenge::whereDate('start_time', $time) + ->where('type', ChallengeType::Weekly) + ->where('faction', $faction) + ->exists(); + + if(!$weeklyExists) { + try { + $newDaily = TimedChallengeFactory::makeChallenge($time, $faction, ChallengeType::Weekly); + $newDaily->save(); + } catch (TimedChallengeFactoryException $e) { + $log->error($e->getMessage()); + } + } + } + } + } +} diff --git a/dist/app/Console/Commands/GiveAllUsersDefaultItems.php b/dist/app/Console/Commands/GiveAllUsersDefaultItems.php new file mode 100644 index 0000000..b14deb3 --- /dev/null +++ b/dist/app/Console/Commands/GiveAllUsersDefaultItems.php @@ -0,0 +1,74 @@ +argument('userId'); + if($userId === null) + $playerDatas = PlayerData::all(); + else + $playerDatas = [User::findOrFail($userId)->playerData()]; + + foreach ($playerDatas as $playerData) { + foreach (Characters::cases() as $case) { + $this->info('Adding items for user ' . $playerData->user_id . ' for Character ' . $case->value); + $configClass = $case->getCharacter()->getItemConfigClass(); + $this->addItemsToUser($playerData, $configClass); + } + } + } + + /** + * @param PlayerData $user + * @param class-string $config + * @return void + */ + public function addItemsToUser(PlayerData &$playerData, string $config): void { + $itemIds = [ + ...$config::getDefaultEquippedBonuses(), + ...$config::getDefaultEquippedWeapons(), + ...$config::getDefaultEquipment(), + ...$config::getDefaultPowers(), + ...$config::getDefaultWeapons(), + ...$config::getDefaultEquippedPerks(), + ]; + + $itemIds = UuidHelper::convertFromHexToUuidCollecton($itemIds, true); + try { + $playerData->inventory()->syncWithoutDetaching($itemIds); + } catch (QueryException $e) { + Log::channel('single')->error($e->getMessage()); + $this->error('Exception: ' . $e->getMessage()); + $this->error("Failed to add items to inventory: " . json_encode($itemIds, JSON_PRETTY_PRINT)); + } + } +} diff --git a/dist/app/Console/Commands/ImportCatalog.php b/dist/app/Console/Commands/ImportCatalog.php index 45d7125..7bb22b9 100644 --- a/dist/app/Console/Commands/ImportCatalog.php +++ b/dist/app/Console/Commands/ImportCatalog.php @@ -123,6 +123,45 @@ private function importChallenges(): void { } } + $achievementChallenges = [ + [ + 'id' => 'e51981b9-46be-e3d4-5c5c-41b2fcff310b', + 'value' => 500, + 'path' => '/Game/Challenges/Challenge_Deliver_Runner.Challenge_Deliver_Runner', + ], + [ + 'id' => 'efab89e6-465d-1163-d62a-07b11048f2b6', + 'value' => 50, + 'path' => '/Game/Challenges/Challenge_JustPlay.Challenge_JustPlay', + ], + [ + 'id' => '2caebb35-4d50-6d7c-43b9-41bc1da775a0', + 'value' => 10, + 'path' => '/Game/Challenges/Progression/General/Challenge_Exit_Runner.Challenge_Exit_Runner', + ], + [ + 'id' => 'aad05b9d-4647-1dc8-11bb-e0ba91916ab7', + 'value' => 50, + 'path' => '/Game/Challenges/Challenge_Down_Hunter.Challenge_Down_Hunter', + ], + [ + 'id' => 'ba2d4a54-45cb-7027-6a8f-5d9e1afce080', + 'value' => 100, + 'path' => '/Game/Challenges/Challenge_DroneCharger_Hunter.Challenge_DroneCharger_Hunter', + ], + ]; + + foreach ($achievementChallenges as $challenge) { + $newChallenge = Challenge::findOrNew($challenge['id']); + + $newChallenge->id = $challenge['id']; + $newChallenge->completion_value = $challenge['value']; + $newChallenge->asset_path = $challenge['path']; + + $this->info('Importing Achievement Challenge: '.$challenge['id']); + $newChallenge->save(); + } + $this->info('Finished importing challenges.'); } diff --git a/dist/app/Console/Commands/MatchmakingCleanup.php b/dist/app/Console/Commands/MatchmakingCleanup.php index 02336ee..ef25647 100644 --- a/dist/app/Console/Commands/MatchmakingCleanup.php +++ b/dist/app/Console/Commands/MatchmakingCleanup.php @@ -2,6 +2,7 @@ namespace App\Console\Commands; +use App\Enums\Game\Faction; use App\Enums\Game\Matchmaking\MatchStatus; use App\Models\Game\Matchmaking\Game; use App\Models\Game\Matchmaking\QueuedPlayer; @@ -39,7 +40,7 @@ class MatchmakingCleanup extends Command /** * Execute the console command. */ - public function handle() + public function handle(): void { $log = Log::channel('matchmaking_cleanup'); @@ -50,12 +51,18 @@ public function handle() $log->info('Queued players: ' . json_encode($cleanedQueuedPlayers, JSON_PRETTY_PRINT)); - $deletedClosedGames = Game::where('status', '=', MatchStatus::Closed->value) + $closedGamesToKill = Game::where('status', '=', MatchStatus::Closed->value) ->where('updated_at', '<', Carbon::now()->subSeconds(static::GAME_MAX_TIME * 60)) - ->delete(); + ->get(); - $log->info('Deleted Closed games: ' . json_encode($deletedClosedGames, JSON_PRETTY_PRINT)); + foreach ($closedGamesToKill as $game) { + //archive the games set to closed, so we don't lose the chat history + $game->archiveGame(Faction::None); + $game->status = MatchStatus::Killed; + $game->save(); + } + $log->info('Closed games set to Killed: ' . json_encode($closedGamesToKill->getQueueableIds(), JSON_PRETTY_PRINT)); // delete games where the hunter crashed on loading into the arena, leaving the game stuck at created $deletedCreatedGames = Game::where('status', '=', MatchStatus::Created) diff --git a/dist/app/Console/Commands/ProcessMatchmaking.php b/dist/app/Console/Commands/ProcessMatchmaking.php index 752f2af..e212c97 100644 --- a/dist/app/Console/Commands/ProcessMatchmaking.php +++ b/dist/app/Console/Commands/ProcessMatchmaking.php @@ -5,16 +5,23 @@ use App\Classes\Matchmaking\MatchmakingPlayerCount; use App\Enums\Game\Matchmaking\MatchmakingSide; use App\Enums\Game\Matchmaking\MatchStatus; +use App\Models\Admin\MatchmakingSettings; use App\Models\Game\Matchmaking\Game; use App\Models\Game\Matchmaking\MatchConfiguration; use App\Models\Game\Matchmaking\QueuedPlayer; use Illuminate\Console\Command; use Illuminate\Database\Eloquent\Collection; +use Illuminate\Support\Carbon; +use Illuminate\Support\Facades\Cache; use Log; use Psr\Log\LoggerInterface; class ProcessMatchmaking extends Command { + public static int $repeatTimeSeconds = 10; + + const ONE_VS_FOUR_AND_VS_FIVE_FIRST_ATTEMPT_CACHE_KEY = 'matchmaking_attempt_1v4_1v5'; + /** * The name and signature of the console command. * @@ -36,6 +43,7 @@ class ProcessMatchmaking extends Command */ public function handle(): void { + $matchmakingSettings = MatchmakingSettings::get(); // Select all queued Players/party leaders, descending by party size $players = QueuedPlayer::withCount('followingUsers') ->sharedLock() @@ -78,12 +86,33 @@ public function handle(): void )); $playerCount = $this->getTotalPlayersCount($players); + + // If we only have one Hunter and could make a 1v4 or 1v5 we want to wait a bit before making a match. + // because there could be some runners not being fast enough in queue or the matchmaking command running unfortunatly while players are queuing up. + if ($playerCount->hunters === 1 && ($playerCount->runners === 4 || $playerCount->runners === 5)) { + if (Cache::has(static::ONE_VS_FOUR_AND_VS_FIVE_FIRST_ATTEMPT_CACHE_KEY)) { + /** @var Carbon $firstAttempt */ + $firstAttempt = Cache::get(static::ONE_VS_FOUR_AND_VS_FIVE_FIRST_ATTEMPT_CACHE_KEY); + if ($firstAttempt->diffInSeconds(Carbon::now()) < $matchmakingSettings->matchWaitingTime){ + return; + } + Cache::forget(static::ONE_VS_FOUR_AND_VS_FIVE_FIRST_ATTEMPT_CACHE_KEY); + } + else { + Cache::set(static::ONE_VS_FOUR_AND_VS_FIVE_FIRST_ATTEMPT_CACHE_KEY, Carbon::now()); + return; + } + } + else { + Cache::forget(static::ONE_VS_FOUR_AND_VS_FIVE_FIRST_ATTEMPT_CACHE_KEY); + } + $availableMatchConfigs = MatchConfiguration::getAvailableMatchConfigs($playerCount->runners, $playerCount->hunters); if($availableMatchConfigs->isEmpty()) return; - $selectedConfig = MatchConfiguration::selectRandomConfigByWeight($availableMatchConfigs); + $selectedConfig = MatchConfiguration::selectMatchConfig($availableMatchConfigs, $playerCount->runners, $playerCount->hunters); // Should never happen, but just to be careful if($selectedConfig === null) diff --git a/dist/app/Console/Commands/SetCurrencyModifiers.php b/dist/app/Console/Commands/SetCurrencyModifiers.php new file mode 100644 index 0000000..1dac97c --- /dev/null +++ b/dist/app/Console/Commands/SetCurrencyModifiers.php @@ -0,0 +1,73 @@ +setTimeFromTimeString(static::DAILY_START_TIME); + $endTime = Carbon::today()->setTimeFromTimeString(static::DAILY_END_TIME); + + if(Carbon::now()->between($startTime, $endTime)) { + $this->setModifiers(static::MODIFIER_AMOUNT); + $this->setGamenewsVisibility(true); + } + else { + $this->setModifiers(1); + $this->setGamenewsVisibility(false); + } + } + + private function setGamenewsVisibility(bool $enabled): void + { + $news = News::find(static::GAME_NEWS_ID); + + if($news === null) + return; + + $news->enabled = $enabled; + $news->save(); + } + + private function setModifiers(float $modifier): void { + $config = CurrencyMultipliers::get(); + + $config->currencyA = $modifier; + $config->currencyB = $modifier; + $config->currencyC = $modifier; + + $config->save(); + } +} diff --git a/dist/app/Console/Kernel.php b/dist/app/Console/Kernel.php index e99c6e6..586aa94 100644 --- a/dist/app/Console/Kernel.php +++ b/dist/app/Console/Kernel.php @@ -13,8 +13,11 @@ class Kernel extends ConsoleKernel protected function schedule(Schedule $schedule): void { $schedule->command('model:prune')->daily(); - $schedule->command('matchmaking:process')->everyFiveSeconds(); - $schedule->command('matchmaking:cleanup')->everyFifteenSeconds(); + $schedule->command('matchmaking:process')->everyTenSeconds(); + $schedule->command('matchmaking:cleanup')->everyThirtySeconds(); + $schedule->command('app:generate-timed-challenges')->daily(); + $schedule->command('app:cleanup-logs')->daily(); + $schedule->command('app:set-currency-modifiers')->hourlyAt(1); } /** diff --git a/dist/app/Enums/Game/ChallengeType.php b/dist/app/Enums/Game/ChallengeType.php new file mode 100644 index 0000000..1757517 --- /dev/null +++ b/dist/app/Enums/Game/ChallengeType.php @@ -0,0 +1,11 @@ + + */ + public function getItemConfigClass(): string { return match ($this) { Hunter::Stalker => StalkerItemConfig::class, diff --git a/dist/app/Enums/Game/RewardType.php b/dist/app/Enums/Game/RewardType.php index 4d191a1..334a36c 100644 --- a/dist/app/Enums/Game/RewardType.php +++ b/dist/app/Enums/Game/RewardType.php @@ -4,7 +4,7 @@ enum RewardType: string { - case Currency = 'Currency'; - case Inventory = 'Inventory'; - case Progression = 'Progression'; + case Currency = 'currency'; + case Inventory = 'inventory'; + case Progression = 'progression'; } diff --git a/dist/app/Enums/Game/Runner.php b/dist/app/Enums/Game/Runner.php index fcac40c..cd1b03b 100644 --- a/dist/app/Enums/Game/Runner.php +++ b/dist/app/Enums/Game/Runner.php @@ -49,7 +49,10 @@ public function getGroupType(): ItemGroupType }; } - public function getItemConfigClass(): string|CharacterItemConfig + /** + * @return class-string + */ + public function getItemConfigClass(): string { return match ($this) { self::Smoke => FogItemConfig::class, diff --git a/dist/app/Exceptions/TimedChallengeFactoryException.php b/dist/app/Exceptions/TimedChallengeFactoryException.php new file mode 100644 index 0000000..21df59e --- /dev/null +++ b/dist/app/Exceptions/TimedChallengeFactoryException.php @@ -0,0 +1,8 @@ +category !== CurrentGameVersion::get()?->gameVersion) + if ($request->category !== CurrentGameVersion::get()?->gameVersion) abort(403, 'Too old mod version'); - if($request->checkOnly) + if ($request->checkOnly) return json_encode($this->checkQueueStatus($request)); return json_encode($this->addPlayerToQueue($request)); @@ -52,20 +54,20 @@ public function cancelQueue(MatchmakingRequest $request) { $user = Auth::user(); - if($user->id !== $request->playerId || $request->endState !== 'Cancelled') + if ($user->id !== $request->playerId || $request->endState !== 'Cancelled') return response('', 204); $lock = Cache::lock(static::QUEUE_LOCK, 10); try { - $lock->block(20 ,function () use (&$user) { + $lock->block(20, function () use (&$user) { // Delete the player from the Queue QueuedPlayer::where('user_id', '=', $user->id)->delete(); // And also from any game they are matched for. DB::table('game_user')->where('user_id', '=', $user->id)->delete(); }); } catch (LockTimeoutException $e) { - Log::channel('matchmaking')->emergency('Queue Cancel: Could not acquire Lock for canceling user '.$user->id.'('.$user->last_known_username.')'); + Log::channel('matchmaking')->emergency('Queue Cancel: Could not acquire Lock for canceling user ' . $user->id . '(' . $user->last_known_username . ')'); } finally { $lock->release(); } @@ -77,7 +79,7 @@ public function matchInfo(string $matchId) { $foundGame = Game::find($matchId); - if($foundGame === null) + if ($foundGame === null) return ['status' => 'Error', 'message' => 'Match not found.']; $user = Auth::user(); @@ -102,24 +104,24 @@ public function register(RegisterMatchRequest $request, string $matchId) return json_encode(MatchData::fromGame($foundGame)); } - public function close($matchId) - { - $foundGame = Game::find($matchId); - $foundGame->status = MatchStatus::Closed; - $foundGame->save(); + public function close($matchId) + { + $foundGame = Game::find($matchId); + $foundGame->status = MatchStatus::Closed; + $foundGame->save(); - return json_encode(MatchData::fromGame($foundGame)); - } + return json_encode(MatchData::fromGame($foundGame)); + } /* * Set a game to Quit state, Maybe exists but unsure since it never showed up in the request logs. */ - public function quit($matchId) - { - $foundGame = Game::find($matchId); + public function quit($matchId) + { + $foundGame = Game::find($matchId); $user = Auth::user(); - if($foundGame->creator === $user) { + if ($foundGame->creator === $user) { $foundGame->status = MatchStatus::Destroyed; $foundGame->save(); } @@ -128,17 +130,17 @@ public function quit($matchId) } return response(null, 204); - } + } - public function kill($matchId) - { - $foundGame = Game::find($matchId); + public function kill($matchId) + { + $foundGame = Game::find($matchId); $response = json_encode(MatchData::fromGame($foundGame)); $foundGame->delete(); - return $response; - } + return $response; + } public function seedFileGet(string $gameVersion, string $seed, string $mapName) { @@ -155,7 +157,7 @@ public function deleteUserFromMatch(Game $match, User $user) $requestUser = Auth::user(); // Block request if it doesn't come from the host - if($match->creator->id != $requestUser->id) + if ($match->creator->id != $requestUser->id) return response('Action not allowed, you are not the creator of the match.', 403); $this->removeUserFromGame($user, $match); @@ -165,13 +167,13 @@ public function deleteUserFromMatch(Game $match, User $user) public function endOfMatch(EndOfMatchRequest $request) { - if(ArchivedGame::archivedGameExists($request->matchId)) + if (ArchivedGame::archivedGameExists($request->matchId)) return response('Match Already Closed', 209); $game = Game::find($request->matchId); $user = Auth::user(); - if($game->creator != $user) + if ($game->creator != $user) return response('you are not the creator of the match.', 403); $game->status = MatchStatus::Killed; @@ -186,7 +188,7 @@ public function playerEndOfMatch(PlayerEndOfMatchRequest $request) $user = Auth::user(); $game = Game::find($request->matchId); - if($game === null) + if ($game === null) return response('Match not found.', 404); if ($game->creator != $user) @@ -194,21 +196,21 @@ public function playerEndOfMatch(PlayerEndOfMatchRequest $request) $user = User::find($request->playerId); - if($user === null) + if ($user === null) return response('User not found.', 404); - $lock = Cache::lock('playerEndOfMatch'.$user->id); + $lock = Cache::lock('playerEndOfMatch' . $user->id); try { // Lock the saving of the playerdata and stuff because the game can send multiple calls sometimes $lock->block(10 ,function () use (&$user, &$request, &$game) { - if(ArchivedPlayerProgression::archivedPlayerExists($game->id, $user->id)) + if (ArchivedPlayerProgression::archivedPlayerExists($game->id, $user->id)) return; $playerData = $user->playerData(); $characterData = $playerData->characterDataForCharacter($request->characterGroup->getCharacter()); - if($request->hasQuit) + if ($request->hasQuit) $playerData->quitterState->addQuitterPenalty(); else $playerData->quitterState->addStayedMatch($playerData); @@ -277,7 +279,7 @@ protected function checkQueueStatus(QueueRequest $request): QueueResponse $foundQueuedPlayer = QueuedPlayer::firstWhere('user_id', '=', $user->id); // If we found a queued Player, return his status - if($foundQueuedPlayer !== null) { + if ($foundQueuedPlayer !== null) { // Set Last queue call time to remove players that maybe crashed or something // if they haven't sent a queue request in a long time. $foundQueuedPlayer->updated_at = Carbon::now(); @@ -287,7 +289,7 @@ protected function checkQueueStatus(QueueRequest $request): QueueResponse $response->status = QueueStatus::Queued; $response->queueData = new QueueData( 1, - 10 + static::getETA(), ); return $response; @@ -297,12 +299,13 @@ protected function checkQueueStatus(QueueRequest $request): QueueResponse // Only search for Created or open matches $foundGame = $user->activeGames(); // If they also aren't in a game, add them to the queue again - if($foundGame->count() < 1) { + if ($foundGame->count() < 1) { $this->addPlayerToQueue($request); $response = new QueueResponse(); $response->status = QueueStatus::Queued; $response->queueData = new QueueData( 1, + static::getETA(), ); return $response; @@ -316,10 +319,10 @@ protected function checkQueueStatus(QueueRequest $request): QueueResponse $response = new QueueResponse(); - if($foundGame->status === MatchStatus::Opened) { + if ($foundGame->status === MatchStatus::Opened) { $response->queueData = new QueueData( 1, - 1 + static::getETA(), ); } $response->status = QueueStatus::Matched; @@ -334,7 +337,7 @@ protected function addPlayerToQueue(QueueRequest $request) $user = Auth::user(); // Remove user from any game he has previously joined. - if($user->activeGames()->exists()) { + if ($user->activeGames()->exists()) { $games = $user->activeGames()->get(); foreach ($games as $game) { $this->removeUserFromGame($user, $game); @@ -368,10 +371,26 @@ protected function removeUserFromGame(User $user, Game $game) { $game->players()->detach($user); - if($game->players->count() !== 0) + // Delete the game if the creator deletes themselfes sice we had one case where the matchmaking broke due to a game being stuck like this. + if ($game->players->count() !== 0 && $game->creator_user_id !== $user->id) return; $game->delete(); } + protected static function getETA(): int { + if(Cache::has(ProcessMatchmaking::ONE_VS_FOUR_AND_VS_FIVE_FIRST_ATTEMPT_CACHE_KEY)) { + $matchmakingSettings = MatchmakingSettings::get(); + /** @var Carbon $firstAttempt */ + $firstAttempt = Cache::get(ProcessMatchmaking::ONE_VS_FOUR_AND_VS_FIVE_FIRST_ATTEMPT_CACHE_KEY); + $predictedMatchTime = $firstAttempt->copy(); + while ($firstAttempt->diffInSeconds($predictedMatchTime) < $matchmakingSettings->matchWaitingTime) { + $predictedMatchTime->addSeconds(ProcessMatchmaking::$repeatTimeSeconds); + } + + return Carbon::now()->diffInSeconds($predictedMatchTime) * 1000; + } + + return -1; + } } diff --git a/dist/app/Http/Controllers/Api/ModerationController.php b/dist/app/Http/Controllers/Api/ModerationController.php index 741119d..05fbe16 100644 --- a/dist/app/Http/Controllers/Api/ModerationController.php +++ b/dist/app/Http/Controllers/Api/ModerationController.php @@ -2,19 +2,26 @@ namespace App\Http\Controllers\Api; +use App\Classes\Frontend\ChatMessage; +use App\Enums\Game\Matchmaking\MatchStatus; use App\Http\Controllers\Controller; use App\Http\Requests\Api\Moderation\CheckChatMessageRequest; use App\Http\Requests\Api\Moderation\ReportPlayerRequest; use App\Http\Requests\Api\Player\CheckUsernameRequest; use App\Http\Responses\Api\Player\CheckUsernameResponse; use App\Models\Admin\BadChatMessage; +use App\Models\Game\Matchmaking\Game; use App\Models\Game\Moderation\PlayerReport; use App\Models\User\User; use ConsoleTVs\Profanity\Builder; +use Illuminate\Support\Carbon; use Illuminate\Support\Facades\Auth; +use Illuminate\Support\Facades\Cache; +use Illuminate\Support\Facades\Response; class ModerationController extends Controller { + const CHAT_CACHE_KEY = 'chat-messages-'; public function checkUsername(CheckUsernameRequest $request): mixed { @@ -25,23 +32,39 @@ public function checkChatMessage(CheckChatMessageRequest $request): mixed { // Lobby Host that send the request to check the message. We log him too since only the lobby host checks the messages in teh backend. $hostUser = Auth::user(); + + $activeGame = $hostUser->games()->whereNotIn('status', [MatchStatus::Killed])->first(); + if($activeGame === null) + // Don't log and check anything if the user is not in a game, we don't care about chatting in the locker room. + return Response::json([]); + // User that send the chat message $messageUser = User::find($request->userId); + $gameMessages = Cache::get(static::CHAT_CACHE_KEY . $activeGame->id, []); + $gameMessages[] = new ChatMessage( + $activeGame->id, + $messageUser->id, + Carbon::now(), + $request->message, + ); + Cache::put(static::CHAT_CACHE_KEY . $activeGame->id, $gameMessages, 1800 /** 30 Minutes */); + $checker = Builder::blocker($request->message); if($checker->clean()) return response('{}'); - $this->logBadMessage($hostUser, $messageUser, $request->message); + $this->logBadMessage($hostUser, $messageUser, $request->message, $activeGame); return response('Bad Message >:('); } - public function logBadMessage(User $hostUser, User $messageUser, string $message): void { + public function logBadMessage(User $hostUser, User $messageUser, string $message, Game $match): void { $badMessage = new BadChatMessage(); $badMessage->hostUser()->associate($hostUser); $badMessage->user()->associate($messageUser); $badMessage->message = $message; + $badMessage->match_id = $match->id; $badMessage->save(); } diff --git a/dist/app/Http/Controllers/Api/PatchController.php b/dist/app/Http/Controllers/Api/PatchController.php index 1e3c67a..8a85375 100644 --- a/dist/app/Http/Controllers/Api/PatchController.php +++ b/dist/app/Http/Controllers/Api/PatchController.php @@ -22,7 +22,7 @@ public function getFileWithPatchline(string $patchlineName, string $hash) : Bina if($gameFile === null) return response()->json('File not found', 404); - $filePath = DIRECTORY_SEPARATOR . str($patchlineName)->lower() . DIRECTORY_SEPARATOR . $gameFile->name; + $filePath = DIRECTORY_SEPARATOR . str($patchlineName)->lower() . DIRECTORY_SEPARATOR . $gameFile->filename; if (!$disk->exists($filePath)) { return response()->json('File not found', 404); @@ -35,7 +35,7 @@ function getFile(string $hash) : BinaryFileResponse|JsonResponse { return $this->getFileWithPatchline(Patchline::LIVE->name, $hash); } - public function getGameFileList(string $patchlineName = null) : JsonResponse + public function getGameFileList(?string $patchlineName = null) : JsonResponse { $patchline = Patchline::tryFromName(str($patchlineName)->upper()) ?? Patchline::LIVE; @@ -49,17 +49,35 @@ public function getGameFileList(string $patchlineName = null) : JsonResponse return response()->json(['error' => 'Unauthorized'], 401); } - $gameFiles = GameFile::select(['filename', 'hash', 'game_path', 'action']) - ->where('patchline', $patchline->value) - ->where('is_additional', 0)->latest()->get(); + $gameFiles = GameFile::where('patchline', $patchline->value) + ->where('is_additional', 0) + ->withFileHistory() + ->map(function ($latestFile) { + $processedHashes = []; + $history = collect(); + + foreach ($latestFile->children as $historyFile) { + if (in_array($historyFile->hash, $processedHashes)) { + continue; + } + + $processedHashes[] = $historyFile->hash; + $history->push($historyFile->only(['hash'])); + } + + $selectedFile = $latestFile->only(['filename', 'hash', 'game_path', 'action']); + $selectedFile['history'] = $history; + + return $selectedFile; + }); if (count($gameFiles) <= 0) return response()->json(['error' => 'No files found'], 404); return response()->json($gameFiles, 200); } - - public function getGameModFileList(string $patchlineName = null) : JsonResponse + + public function getGameModFileList(?string $patchlineName = null) : JsonResponse { $patchline = Patchline::tryFromName(str($patchlineName)->upper()) ?? Patchline::LIVE; diff --git a/dist/app/Http/Controllers/Api/Player/ChallengeController.php b/dist/app/Http/Controllers/Api/Player/ChallengeController.php index 6357518..f91561a 100644 --- a/dist/app/Http/Controllers/Api/Player/ChallengeController.php +++ b/dist/app/Http/Controllers/Api/Player/ChallengeController.php @@ -2,19 +2,30 @@ namespace App\Http\Controllers\Api\Player; +use App\Enums\Game\RewardType; use App\Helper\Uuid\UuidHelper; use App\Http\Controllers\Controller; use App\Http\Requests\Api\Player\ExecuteChallengeProgressionBatchRequest; use App\Http\Requests\Api\Player\GetChallengeProgressionBatchRequest; +use App\Http\Requests\Api\Player\GetChallengesRequest; +use App\Http\Responses\Api\General\Reward; use App\Http\Responses\Api\Player\Challenges\ChallengeProgressionBatchResponse; use App\Http\Responses\Api\Player\Challenges\ChallengeProgressionEntry; +use App\Http\Responses\Api\Player\Challenges\GetChallengesEntry; use App\Models\Game\Challenge; use App\Models\Game\Matchmaking\Game; use App\Models\Game\PickedChallenge; +use App\Models\Game\TimedChallenge; +use App\Models\User\PlayerData; use App\Models\User\User; use Auth; +use Carbon\Carbon; use Illuminate\Auth\Access\AuthorizationException; +use Illuminate\Database\UniqueConstraintViolationException; +use Illuminate\Support\Arr; use Illuminate\Support\Collection; +use Illuminate\Support\Facades\Response; +use Illuminate\Support\Str; use Illuminate\Validation\UnauthorizedException; use Ramsey\Uuid\Uuid; @@ -26,9 +37,30 @@ class ChallengeController extends Controller * * @return false|string */ - public function getChallenges() + public function getChallenges(GetChallengesRequest $request) { - return json_encode(['challenges' => []]); + $user = $request->user; + $timedChallenges = TimedChallenge::where('start_time', '<', Carbon::now()) + ->where('end_time', '>', Carbon::now()) + ->where('type', $request->type) + ->get(); + + $challenges = []; + $timedChallenges->each(function (TimedChallenge $challenge) use (&$challenges, $user) { + $challenges[] = new GetChallengesEntry( + $challenge->id, + $challenge->start_time, + $challenge->end_time, + $challenge->type, + $challenge->completion_value, + $challenge->faction, + $challenge->blueprint_path, + $challenge->rewards, + $challenge->hasPlayerClaimed($user->playerData()->id), + ); + }); + + return Response::json(['challenges' => $challenges]); } public function getProgressionBatch(GetChallengeProgressionBatchRequest $request) @@ -36,12 +68,23 @@ public function getProgressionBatch(GetChallengeProgressionBatchRequest $request $user = User::findOrFail($request->userId); $playerData = $user->playerData(); + $timedChallengeIds = []; + + foreach ($request->challengeIds as $index => $id) { + if(Str::startsWith($id, GetChallengesEntry::ID_PREFIX)) { + $timedChallengeIds[] = Str::remove(GetChallengesEntry::ID_PREFIX, $id); + unset($request->challengeIds[$index]); + } + } + $challengeIdsToCheck = UuidHelper::convertFromHexToUuidCollecton($request->challengeIds, true); /** @var Challenge[]|Collection $challengesToCheck */ $challengesToCheck = Challenge::findMany($challengeIdsToCheck); /** @var PickedChallenge[]|Collection $pickedChallengesToCheck */ $pickedChallengesToCheck = PickedChallenge::findMany($challengeIdsToCheck); + /** @var TimedChallenge[]|Collection $timedChallengesToCheck */ + $timedChallengesToCheck = TimedChallenge::findMany($timedChallengeIds); $response = new ChallengeProgressionBatchResponse(); @@ -57,6 +100,20 @@ public function getProgressionBatch(GetChallengeProgressionBatchRequest $request $response->progressionBatch[] = $newEntry; } + foreach ($timedChallengesToCheck as $challenge) { + $progress = $challenge->getProgressForPlayer($playerData->id); + + $entry = new ChallengeProgressionEntry( + GetChallengesEntry::ID_PREFIX . $challenge->id, + $challenge->progress >= $challenge->completion_value, + $progress, + ); + + $entry->rewardsClaimed = $challenge->rewards; + + $response->progressionBatch[] = $entry; + } + foreach ($pickedChallengesToCheck as $challenge) { $response->progressionBatch[] = new ChallengeProgressionEntry( Uuid::fromString($challenge->id)->getHex()->toString(), @@ -65,6 +122,8 @@ public function getProgressionBatch(GetChallengeProgressionBatchRequest $request ); } + foreach ($challengesToCheck as $challenge) {} + return json_encode($response); } @@ -83,7 +142,11 @@ public function executeChallengeProgressionBatch(ExecuteChallengeProgressionBatc $processedChallenges = []; foreach ($request->operations as $operation) { - $challengeId = Uuid::fromString($operation['challengeId'])->toString(); + $challengeId = $operation['challengeId']; + + if(!Str::startsWith($challengeId, GetChallengesEntry::ID_PREFIX)) { + $challengeId = Uuid::fromString($operation['challengeId'])->toString(); + } // Skip if we already processed this challenge because the completed ones are always first in the array. if(in_array($challengeId, $processedChallenges)) @@ -99,8 +162,13 @@ public function executeChallengeProgressionBatch(ExecuteChallengeProgressionBatc protected function addProgressToChallenge(string $challengeId, int $newProgress, User $user): void { - /** @var Challenge|null $foundChallenge */ - $foundChallenge = $user->playerData()->challenges()->find($challengeId); + if(Str::startsWith($challengeId, GetChallengesEntry::ID_PREFIX)) { + $foundChallenge = TimedChallenge::find(Str::remove(GetChallengesEntry::ID_PREFIX, $challengeId)); + } + else { + /** @var Challenge|null $foundChallenge */ + $foundChallenge = $user->playerData()->challenges()->find($challengeId); + } if($foundChallenge !== null) { $foundChallenge->playerData()->updateExistingPivot($user->playerData()->id, [ @@ -109,23 +177,51 @@ protected function addProgressToChallenge(string $challengeId, int $newProgress, return; } + /** @var PickedChallenge $foundChallenge */ $foundChallenge = PickedChallenge::find($challengeId); if($foundChallenge === null) return; + $newProgress = $newProgress >= MetadataController::reducePickedChallengeCompletionValue($foundChallenge->asset_path, $foundChallenge->completion_value) ? $foundChallenge->completion_value : $newProgress; + $foundChallenge->progress = $newProgress; $foundChallenge->save(); } protected function setChallengeAsCompleted(string $challengeId, User $user) { - /** @var Challenge|null $foundChallenge */ - $foundChallenge = $user->playerData()->challenges()->find($challengeId); + $isTimed = false; + // If the Challenge id starts with the Prefix, handle it as a timed challenge. + if(Str::startsWith($challengeId, GetChallengesEntry::ID_PREFIX)) { + $foundChallenge = TimedChallenge::find(Str::remove(GetChallengesEntry::ID_PREFIX, $challengeId)); + $isTimed = true; + } + else { + /** @var Challenge|null $foundChallenge */ + $foundChallenge = $user->playerData()->challenges()->find($challengeId); + } if($foundChallenge !== null) { - $foundChallenge->playerData()->updateExistingPivot($user->playerData()->id, [ + $pivotToEdit = [ 'progress' => $foundChallenge->completion_value, - ]); + ]; + + if($isTimed) { + $playerData = $user->playerData(); + $hasClaimed = $foundChallenge->hasPlayerClaimed($playerData->id); + + if(!$hasClaimed) { + $rewardsToAdd = $foundChallenge->getRewards(); + + foreach($rewardsToAdd as $reward) { + $this->addReward($reward, $playerData); + } + $playerData->save(); + $pivotToEdit['claimed'] = true; + } + } + + $foundChallenge->playerData()->updateExistingPivot($user->playerData()->id, $pivotToEdit); $foundChallenge->save(); return; } @@ -137,4 +233,33 @@ protected function setChallengeAsCompleted(string $challengeId, User $user) $foundChallenge->progress = $foundChallenge->completion_value; $foundChallenge->save(); } + + protected function addReward(Reward $reward, PlayerData &$playerData): void + { + if ($reward->type === RewardType::Currency) { + switch ($reward->id) { + case 'CurrencyA': + $playerData->currency_a += $reward->amount; + break; + case 'CurrencyB': + $playerData->currency_b += $reward->amount; + break; + case 'CurrencyC': + $playerData->currency_c += $reward->amount; + break; + default: + return; + } + } + else if ($reward->type === RewardType::Inventory) { + $itemUuid = Uuid::fromString($reward->id)->toString(); + + try { + // Since we can only have one occurrence of an item in the inventory, and an exception gets thrown when we try to add the same item twice + $playerData->inventory()->attach($itemUuid); + } catch (UniqueConstraintViolationException $e) { + + } + } + } } diff --git a/dist/app/Http/Controllers/Api/Player/InboxController.php b/dist/app/Http/Controllers/Api/Player/InboxController.php index 3bd7528..a49a439 100644 --- a/dist/app/Http/Controllers/Api/Player/InboxController.php +++ b/dist/app/Http/Controllers/Api/Player/InboxController.php @@ -81,7 +81,7 @@ public function deleteMultiple(Request $request) { $timestampsToDelete = []; foreach($messages as $message) { try { - $timestampsToDelete[] = Carbon::createFromTimestampMs($message['received'])->toDateTimeString(); + $timestampsToDelete[] = Carbon::createFromTimestampMs($message['received'], config('app.timezone'))->toDateTimeString(); } catch(\Exception $e) { $logger = AccessLogger::getSessionLogConfig(); $logger->warning($request->method().' '.$request->getUri().': Something Went Wrong, Messagelist: '.json_encode($messages, JSON_PRETTY_PRINT)); @@ -112,7 +112,7 @@ public function markMessages(Request $request) { foreach($messages as $message) { try { - $timestampsToSet[] = Carbon::createFromTimestampMs($message['received'])->toDateTimeString(); + $timestampsToSet[] = Carbon::createFromTimestampMs($message['received'], config('app.timezone'))->toDateTimeString(); $resultList[] = [ 'received' => $message['received'], 'success' => true, @@ -141,7 +141,7 @@ public function claimMessage(ClaimInboxMessageRequest $request) /** @var InboxMessage $message */ $message = $user->inboxMessages() ->where('user_id', '=', $user->id) - ->where('received', '=', Carbon::createFromTimestampMs($request->receivedTimestamp)) + ->where('received', '=', Carbon::createFromTimestampMs($request->receivedTimestamp, config('app.timezone'))) ->first(); if($message === null) diff --git a/dist/app/Http/Controllers/Api/Player/MetadataController.php b/dist/app/Http/Controllers/Api/Player/MetadataController.php index 7d1bbe9..7c48159 100644 --- a/dist/app/Http/Controllers/Api/Player/MetadataController.php +++ b/dist/app/Http/Controllers/Api/Player/MetadataController.php @@ -21,6 +21,48 @@ class MetadataController extends Controller { + + /** + * Mapping from + */ + const PICKED_CHALLENGE_REDUCTION_MAPPING = [ + '/Game/Challenges/Progression/General/Challenge_Downing_Hunter.Challenge_Downing_Hunter' => 74.49, + '/Game/Challenges/Progression/General/Challenge_Execution_Hunter.Challenge_Execution_Hunter' => 76.19, + '/Game/Challenges/Progression/General/Challenge_Ressources_Runner.Challenge_Ressources_Runner' => 58.05, + '/Game/Challenges/Progression/General/Challenge_Travel_Hunter.Challenge_Travel_Hunter' => 52.38, + '/Game/Challenges/Progression/General/Challenge_Travel_Runner.Challenge_Travel_Runner' => 50.00, + '/Game/Challenges/Progression/General/Challenge_Hacking_Hunter.Challenge_Hacking_Hunter' => 85.71, + '/Game/Challenges/Progression/General/Challenge_Drones_Hunter.Challenge_Drones_Hunter' => 95.24, + '/Game/Challenges/Progression/General/Challenge_TeamActions_Runner.Challenge_TeamActions_Runner' => 47.09, + '/Game/Challenges/Progression/General/Challenge_HunterClose_Runner.Challenge_HunterClose_Runner' => 76.19, + '/Game/Challenges/Progression/General/Challenge_Damage_Hunter.Challenge_Damage_Hunter' => 40.48, + '/Game/Challenges/Progression/General/Challenge_ConstructDefeats_Runner.Challenge_ConstructDefeats_Runner' => 73.54, + '/Game/Challenges/Progression/General/Challenge_Heal_Runner.Challenge_Heal_Runner' => 52.38, + '/Game/Challenges/Progression/General/Challenge_RingOut_Hunter.Challenge_RingOut_Hunter' => 58.33, + '/Game/Challenges/Progression/General/Challenge_Supercharge_Hunter.Challenge_Supercharge_Hunter' => 78.57, + '/Game/Challenges/Progression/General/Challenge_TakeDamage_Runner.Challenge_TakeDamage_Runner' => 57.14, + '/Game/Challenges/Progression/General/Challenge_Evade_Runner.Challenge_Evade_Runner' => 70.24, + '/Game/Challenges/Progression/General/Challenge_Climb_Runner.Challenge_Climb_Runner' => 86.11, + '/Game/Challenges/Challenge_Deliver_Runner.Challenge_Deliver_Runner' => 57.14, + '/Game/Challenges/Progression/General/Challenge_Mark_Runner.Challenge_Mark_Runner' => 71.43, + '/Game/Challenges/Progression/General/Challenge_Reveal_Hunter.Challenge_Reveal_Hunter' => 94.29, + '/Game/Challenges/Progression/General/Challenge_HackCrates_Hunter.Challenge_HackCrates_Hunter' => 42.86, + '/Game/Challenges/Progression/General/Challenge_SpendNPI_Runner.Challenge_SpendNPI_Runner' => 42.86, + '/Game/Challenges/Progression/General/Challenge_CollectAmmo.Challenge_CollectAmmo' => 52.38, + '/Game/Challenges/Progression/General/Challenge_CollectWeaponUpgrades_Runner.Challenge_CollectWeaponUpgrades_Runner' => 52.38, + '/Game/Challenges/Progression/General/Challenge_CollectHealthCrates.Challenge_CollectHealthCrates' => 90.48, + '/Game/Challenges/Progression/General/Challenge_DisableDrones_Runner.Challenge_DisableDrones_Runner' => 61.90, + '/Game/Challenges/Challenge_DroneCharger_Hunter.Challenge_DroneCharger_Hunter' => 66.67, + '/Game/Challenges/Progression/General/Challenge_Stomp_Hunter.Challenge_Stomp_Hunter' => 50.00, + '/Game/Challenges/Progression/General/Challenge_Aim_Hunter.Challenge_Aim_Hunter' => 42.86, + '/Game/Challenges/Progression/General/Challenge_DangerClose_Runner.Challenge_DangerClose_Runner' => 76.19, + '/Game/Challenges/Progression/General/Challenge_SurviveAChase_Runner.Challenge_SurviveAChase_Runner' => 64.29, + '/Game/Challenges/Progression/General/Challenge_AssistAChase_Runner.Challenge_AssistAChase_Runner' => 28.57, + '/Game/Challenges/Progression/General/Challenge_Exit_Runner.Challenge_Exit_Runner' => 42.86, + '/Game/Challenges/Progression/General/Challenge_BloodMode_Runner.Challenge_BloodMode_Runner' => 42.86, + '/Game/Challenges/Progression/General/Challenge_LastMAnStanding_Hunter.Challenge_LastManStanding_Hunter' => 42.86, + ]; + public function initOrGetGroups(InitOrGetGroupsRequest $request) { $response = new InitOrGetGroupsResponse(); @@ -56,6 +98,8 @@ public function initOrGetGroups(InitOrGetGroupsRequest $request) return json_encode($response); } + + public function updateMetadataGroup(UpdateMetadataGroupRequest $request) { switch ($request->group) { @@ -96,8 +140,17 @@ private function handleUpdateCharacterMetadata(UpdateMetadataGroupRequest &$requ $convertedIds = UuidHelper::convertFromHexToUuidCollecton($request->metadata['equippedWeapons'], true); $characterData->equippedWeapons()->sync($convertedIds); - $convertedIds = UuidHelper::convertFromHexToUuidCollecton($request->metadata['equippedBonuses'], true); - $characterData->equippedBonuses()->sync($convertedIds); + $characterConfig = $characterData->character->getCharacter()->getItemConfigClass(); + $defaultCompletedIds = [ + ...$characterConfig::getDefaultEquippedBonuses(), + ...$characterConfig::getDefaultEquippedWeapons(), + ...$characterConfig::getDefaultEquipment(), + ...$characterConfig::getDefaultPowers(), + ...$characterConfig::getDefaultWeapons(), + ...$characterConfig::getDefaultEquippedPerks(), + ]; + + $defaultCompletedIds = UuidHelper::convertFromHexToUuidCollecton($defaultCompletedIds, true); foreach ($request->metadata['pickedChallenges'] as $picked) { $itemId = Uuid::fromHexadecimal(new Hexadecimal($picked['itemId'])); @@ -109,14 +162,19 @@ private function handleUpdateCharacterMetadata(UpdateMetadataGroupRequest &$requ foreach ($picked['list'] as $challenge) { $challengeId = Uuid::fromHexadecimal(new Hexadecimal($challenge['challengeId'])); - $completionValue = $challenge['challengeCompletionValue']; $assetPath = $challenge['challengeAsset']; + $completionValue = $challenge['challengeCompletionValue']; - $newPicked = new PickedChallenge([ + $attributes = [ 'id' => $challengeId->toString(), 'completion_value' => $completionValue, 'asset_path' => $assetPath, - ]); + ]; + + if($defaultCompletedIds->has($itemId->toString())) + $attributes['progress'] = $completionValue; + + $newPicked = new PickedChallenge($attributes); $newPicked->characterData()->associate($characterData); $newPicked->catalogItem()->associate($itemId->toString()); @@ -172,4 +230,20 @@ private function handleFactionMetadata(UpdateMetadataGroupRequest &$request): st throw new \Exception('Handle Update Faction Metadata not implemented yet'); return false; } + + /** + * Reduces the Completion value of the given challenge. + * + * @param string $challengeBlueprint + * @param string $originalAmount + * @return int + */ + public static function reducePickedChallengeCompletionValue( + string $challengeBlueprint, + string $originalAmount, + ): int { + if(isset(static::PICKED_CHALLENGE_REDUCTION_MAPPING[$challengeBlueprint])) + return $originalAmount - (static::PICKED_CHALLENGE_REDUCTION_MAPPING[$challengeBlueprint] / 100 * $originalAmount); + return $originalAmount; + } } diff --git a/dist/app/Http/Controllers/Api/Player/PlayerController.php b/dist/app/Http/Controllers/Api/Player/PlayerController.php index 072c2ff..8f905f6 100644 --- a/dist/app/Http/Controllers/Api/Player/PlayerController.php +++ b/dist/app/Http/Controllers/Api/Player/PlayerController.php @@ -179,6 +179,7 @@ protected function resetCharacter(CharacterData &$characterData): void ...$config::getDefaultEquippedPerks(), ...$config::getDefaultPowers(), ...$config::getDefaultEquippedWeapons(), + ...$config::getDefaultWeapons(), ...$config::getDefaultEquippedBonuses(), ], true); $inventory = $characterData->playerData->inventory(); @@ -186,7 +187,7 @@ protected function resetCharacter(CharacterData &$characterData): void // first detach all character items $inventory->detach($allItemsToRemove); //then attach the defaults again - $inventory->attach([...$defaultItems, $config::getCharacterId()->toString()]); + $inventory->syncWithoutDetaching([...$defaultItems, $config::getCharacterId()->toString()]); // Remove signature challenges foreach ($allItemsToRemove as $item) { diff --git a/dist/app/Http/Controllers/Web/Admin/Tools/FileManagerController.php b/dist/app/Http/Controllers/Web/Admin/Tools/FileManagerController.php index 28867e0..48e1833 100644 --- a/dist/app/Http/Controllers/Web/Admin/Tools/FileManagerController.php +++ b/dist/app/Http/Controllers/Web/Admin/Tools/FileManagerController.php @@ -46,7 +46,7 @@ public function store(Request $request) $filename = $file->getClientOriginalName(); $filehash = str(hash_file('sha256', $file->getRealPath()))->upper(); - $gameFile = GameFile::where('filename', $filename)->where('patchline', $request->input('patchline'))->first() ?? new GameFile; + $gameFile = GameFile::where('filename', $filename)->where('patchline', $request->input('patchline'))->latest()->first() ?? new GameFile; if ($gameFile->hash == $filehash) { $duplicateFiles[] = $gameFile->filename; @@ -54,6 +54,11 @@ public function store(Request $request) } if (isset($gameFile->id)) { + $gameFile->action = 0; + $gameFile->save(); + + $gameFile->child_id = $gameFile->id; + $gameFile = $gameFile->replicate(); $overwrittenFiles[] = $gameFile->filename; } @@ -61,13 +66,20 @@ public function store(Request $request) $gameFile->hash = $filehash; $gameFile->patchline = $request->input('patchline'); - $gameFile->name = $request->input('game_mod_name')[$i]; - $gameFile->description = $request->input('game_mod_description')[$i]; + if (filled($request->input('game_mod_name'))) { + $gameFile->name = $request->input('game_mod_name')[$i]; + } + + if (filled($request->input('game_mod_description'))) { + $gameFile->description = $request->input('game_mod_description')[$i]; + } + $gameFile->is_additional = $request->input('is_additional'); GameFile::getDisk()->putFileAs(strtolower($gameFile->patchline->name), $file, $gameFile->filename); $uploadedFiles[] = $gameFile->filename; + $gameFile->game_path = $request->game_path[$i]; $gameFile->action = $request->file_action[$i]; $gameFile->save(); @@ -84,7 +96,7 @@ public function store(Request $request) } if (count($duplicateFiles) > 0) { - Session::flash('alert-warning', 'The following files already exist:
' . implode('
', $duplicateFiles)); + Session::flash('alert-warning', 'The following files with the same hash already exist:
' . implode('
', $duplicateFiles)); //return response()->json(['message' => 'Only some files was uploaded successfully. The following files already exist: ' . implode(', ', $duplicateFiles)]); } @@ -100,12 +112,15 @@ public function store(Request $request) public function index(Request $request) : View { $patchline = Patchline::tryFrom($request->input('patchline')) ?? Patchline::LIVE; - $files = GameFile::latest()->where('patchline', $patchline)->where('is_additional', (bool)$request->input('additional_files'))->get(); + $allFiles = GameFile::where('patchline', $patchline) + ->where('is_additional', (bool)$request->input('additional_files')) + ->withFileHistory(); + return view('admin.tools.file-manager', [ 'patchline' => $patchline, 'showAdditionalFiles' => (bool)$request->input('additional_files'), - 'files' => $files, + 'files' => $allFiles, ]); } diff --git a/dist/app/Http/Controllers/Web/Admin/Tools/LauncherMessageController.php b/dist/app/Http/Controllers/Web/Admin/Tools/LauncherMessageController.php index 4de323a..5dc9030 100644 --- a/dist/app/Http/Controllers/Web/Admin/Tools/LauncherMessageController.php +++ b/dist/app/Http/Controllers/Web/Admin/Tools/LauncherMessageController.php @@ -11,7 +11,7 @@ class LauncherMessageController extends AdminToolController { protected static string $name = 'Launcher Message'; - protected static string $description = 'Set the Launcher message'; + protected static string $description = 'Set the Launcher Message'; protected static string $iconComponent = 'icons.patch-exclamation'; protected static Permissions $neededPermission = Permissions::FILE_UPLOAD; @@ -38,4 +38,4 @@ public function saveMessage(SaveLauncherMessageRequest $request) { return back(); } -} \ No newline at end of file +} diff --git a/dist/app/Http/Controllers/Web/Admin/Tools/MatchConfigurationController.php b/dist/app/Http/Controllers/Web/Admin/Tools/MatchConfigurationController.php index 0eb363b..2db53ef 100644 --- a/dist/app/Http/Controllers/Web/Admin/Tools/MatchConfigurationController.php +++ b/dist/app/Http/Controllers/Web/Admin/Tools/MatchConfigurationController.php @@ -7,10 +7,12 @@ use App\Http\Requests\Api\Admin\Tools\SaveCurrencyConfiguration; use App\Http\Requests\Api\Admin\Tools\SaveLauncherMessageRequest; use App\Http\Requests\Api\Admin\Tools\SaveMatchConfigurationRequest; +use App\Http\Requests\Api\Admin\Tools\SaveMatchmakingConfigurationRequest; use App\Http\Requests\Api\Admin\Tools\SaveVersioningRequest; use App\Models\Admin\CurrencyMultipliers; use App\Models\Admin\ExperienceMultipliers; use App\Models\Admin\LauncherMessage; +use App\Models\Admin\MatchmakingSettings; use App\Models\Admin\Versioning\CurrentCatalogVersion; use App\Models\Admin\Versioning\CurrentContentVersion; use App\Models\Admin\Versioning\CurrentGameVersion; @@ -73,4 +75,20 @@ public function saveCurrency(SaveCurrencyConfiguration $request) return back(); } + public function saveMatchmaking(SaveMatchmakingConfigurationRequest $request) { + $matchmakingConfig = MatchmakingSettings::get(); + + try { + $matchmakingConfig->matchWaitingTime = $request->matchmakingWaitingTime; + $matchmakingConfig->save(); + + Session::flash('alert-success', 'Matchmaking configuration saved successfully.'); + } + catch (\Exception $e) { + Session::flash('alert-error', 'Matchmaking configuration could not be saved, something went wrong: ' . $e->getMessage()); + } + + return back(); + } + } \ No newline at end of file diff --git a/dist/app/Http/Controllers/Web/Homepage/HomepageController.php b/dist/app/Http/Controllers/Web/Homepage/HomepageController.php index 54a67f6..327c225 100644 --- a/dist/app/Http/Controllers/Web/Homepage/HomepageController.php +++ b/dist/app/Http/Controllers/Web/Homepage/HomepageController.php @@ -47,6 +47,14 @@ public function downloadLauncher() abort(404); } + public function patchNotes(): Factory|Application|View|\Illuminate\Contracts\Foundation\Application + { + static::setTitle('Deathgarden: Rebirth | Patch Notes'); + CompView::share('metaKeywords', ['Deathgarden', 'Rebirth', 'patch', 'patchnnotes', 'patch notes']); + CompView::share('metaDescription', 'Stay up to date with all the changes, improvements, and updates in Deathgarden: Rebirth. Below is a complete archive of every patch since the mods release.'); + return view('web.patch-notes'); + } + public function howToPlay(): Factory|Application|View|\Illuminate\Contracts\Foundation\Application { static::setTitle('Deathgarden: Rebirth | How to Play'); diff --git a/dist/app/Http/Kernel.php b/dist/app/Http/Kernel.php index 8179f45..c7d9c42 100644 --- a/dist/app/Http/Kernel.php +++ b/dist/app/Http/Kernel.php @@ -3,7 +3,6 @@ namespace App\Http; use App\Http\Middleware\AccessLogger; -use App\Http\Middleware\HandleInertiaRequests; use Illuminate\Foundation\Http\Kernel as HttpKernel; class Kernel extends HttpKernel @@ -39,7 +38,6 @@ class Kernel extends HttpKernel \Illuminate\View\Middleware\ShareErrorsFromSession::class, \App\Http\Middleware\VerifyCsrfToken::class, \Illuminate\Routing\Middleware\SubstituteBindings::class, - HandleInertiaRequests::class, ], 'api' => [ diff --git a/dist/app/Http/Middleware/HandleInertiaRequests.php b/dist/app/Http/Middleware/HandleInertiaRequests.php deleted file mode 100644 index 8c85cd2..0000000 --- a/dist/app/Http/Middleware/HandleInertiaRequests.php +++ /dev/null @@ -1,43 +0,0 @@ - ['required', 'integer'], + ]; + } + + protected function passedValidation() + { + $this->matchmakingWaitingTime = (int)$this->input('matchmakingWaitingTime'); + } +} \ No newline at end of file diff --git a/dist/app/Http/Requests/Api/Player/GetChallengesRequest.php b/dist/app/Http/Requests/Api/Player/GetChallengesRequest.php new file mode 100644 index 0000000..ff4658f --- /dev/null +++ b/dist/app/Http/Requests/Api/Player/GetChallengesRequest.php @@ -0,0 +1,42 @@ +|string> + */ + public function rules(): array + { + return [ + 'data.userId' => 'required|exists:users,id', + 'data.challengeType' => ['required', Rule::enum(ChallengeType::class)], + ]; + } + + public function passedValidation(): void + { + $this->user = User::find($this->input('data.userId')); + $this->type = ChallengeType::tryFrom($this->input('data.challengeType')); + } +} diff --git a/dist/app/Http/Responses/Api/Player/Challenges/GetChallengesEntry.php b/dist/app/Http/Responses/Api/Player/Challenges/GetChallengesEntry.php new file mode 100644 index 0000000..99301f8 --- /dev/null +++ b/dist/app/Http/Responses/Api/Player/Challenges/GetChallengesEntry.php @@ -0,0 +1,56 @@ +id; + } + + public function jsonSerialize(): mixed + { + $json = [ + 'lifetime' => + [ + 'creationTime' => $this->startTime->toIso8601ZuluString(), + 'expirationTime' => $this->endTime->toIso8601ZuluString(), + ], + 'challengeType' => $this->type, + 'challengeId' => $this->getChallengeId(), + 'challengeCompletionValue' => $this->completionValue, + 'faction' => $this->faction, + 'challengeBlueprint' => $this->challengeBlueprint, + ]; + + $rewards = []; + foreach ($this->rewards as &$reward) { + $reward['claimed'] = $this->claimed; + $reward['weight'] = 100; + $rewards[] = $reward; + } + $json['rewards'] = $rewards; + + return $json; + } +} \ No newline at end of file diff --git a/dist/app/Http/Responses/Api/Player/InitOrGetGroupsResponse.php b/dist/app/Http/Responses/Api/Player/InitOrGetGroupsResponse.php index 19e8627..5b054e3 100644 --- a/dist/app/Http/Responses/Api/Player/InitOrGetGroupsResponse.php +++ b/dist/app/Http/Responses/Api/Player/InitOrGetGroupsResponse.php @@ -78,7 +78,9 @@ public function addCharacterMetadataGroup(Characters $character, User $user): vo $newGroup->equippedPerks = UuidHelper::convertFromUuidToHexCollection($characterData->equippedPerks()->allRelatedIds())->toArray(); $newGroup->equippedWeapons = UuidHelper::convertFromUuidToHexCollection($characterData->equippedWeapons()->allRelatedIds())->toArray(); $newGroup->equipment = UuidHelper::convertFromUuidToHexCollection($characterData->equipment()->allRelatedIds())->toArray(); - $newGroup->equippedBonuses = UuidHelper::convertFromUuidToHexCollection($characterData->equippedBonuses()->allRelatedIds())->toArray(); + + // Since players cannot change their equipped powers or passives(bonuses), we can just read them from the config. + $newGroup->equippedBonuses = $itemConfigClass::getDefaultEquippedBonuses(); $newGroup->equippedPowers = $itemConfigClass::getDefaultPowers(); $newGroup->prestigeLevel = $characterData->prestige_level; diff --git a/dist/app/Models/Admin/Archive/ArchivedGame.php b/dist/app/Models/Admin/Archive/ArchivedGame.php index a460552..be2c352 100644 --- a/dist/app/Models/Admin/Archive/ArchivedGame.php +++ b/dist/app/Models/Admin/Archive/ArchivedGame.php @@ -2,17 +2,23 @@ namespace App\Models\Admin\Archive; +use App\Classes\Frontend\ChatMessage; use App\Enums\Game\Faction; +use Illuminate\Database\Eloquent\Concerns\HasUuids; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\HasMany; +use Illuminate\Support\Carbon; /** * @mixin IdeHelperArchivedGame */ class ArchivedGame extends Model { + use HasUuids; + protected $casts = [ 'dominant_faction' => Faction::class, + 'chat_messages' => 'array', ]; public function archivedPlayerProgressions(): HasMany @@ -24,5 +30,21 @@ public static function archivedGameExists(string $matchId) { return ArchivedGame::where('id', '=', $matchId)->exists(); } + /** + * @return ChatMessage[] + */ + public function getChatMessages(): array { + $result = []; + foreach ($this->chat_messages as $message) { + $result[] = new ChatMessage( + $message['gameId'], + $message['userId'], + Carbon::parse($message['messageTime']), + $message['message'], + ); + } + + return $result; + } } diff --git a/dist/app/Models/Admin/MatchmakingSettings.php b/dist/app/Models/Admin/MatchmakingSettings.php new file mode 100644 index 0000000..e356720 --- /dev/null +++ b/dist/app/Models/Admin/MatchmakingSettings.php @@ -0,0 +1,22 @@ +belongsToMany(CatalogItem::class,'character_data_equipment'); } - public function equippedBonuses(): BelongsToMany - { - return $this->belongsToMany(CatalogItem::class,'character_data_equipped_bonuses'); - } - public function equippedPerks(): BelongsToMany { return $this->belongsToMany(CatalogItem::class,'character_data_equipped_perks'); @@ -133,10 +128,6 @@ public function validateEquippedItems(): void $equippedEquipment = $this->equipment()->allRelatedIds(); if($equippedEquipment->count() === 0) $this->resetEquipment($itemConfigClass); - - $equippedBonuses = $this->equippedBonuses()->allRelatedIds(); - if($equippedBonuses->count() === 0) - $this->resetEquippedBonuses($itemConfigClass); } protected function resetEquippedPerks(string|CharacterItemConfig $itemConfigClass): void @@ -172,17 +163,6 @@ protected function resetEquipment(string|CharacterItemConfig $itemConfigClass): static::getResetItemsLogger()->warning(sprintf('User %s(%s) had unallowed Equipment Equipped', $user->id, $user->last_known_username)); } - protected function resetEquippedBonuses(string|CharacterItemConfig $itemConfigClass): void - { - // Remove all equipped Weapons and reset to default config - $this->equippedBonuses()->detach(); - $defaultBonusIds = UuidHelper::convertFromHexToUuidCollecton($itemConfigClass::getDefaultEquippedBonuses()); - $this->equippedBonuses()->attach($defaultBonusIds); - - $user = Auth::user(); - static::getResetItemsLogger()->warning(sprintf('User %s(%s) had unallowed Bonuses Equipped', $user->id, $user->last_known_username)); - } - protected static function getResetItemsLogger(): LoggerInterface { if(static::$resetItemsLogger === null) { diff --git a/dist/app/Models/Game/Matchmaking/Game.php b/dist/app/Models/Game/Matchmaking/Game.php index b5dbc22..3fc330c 100644 --- a/dist/app/Models/Game/Matchmaking/Game.php +++ b/dist/app/Models/Game/Matchmaking/Game.php @@ -8,6 +8,7 @@ use App\Enums\Game\Faction; use App\Enums\Game\Matchmaking\MatchmakingSide; use App\Enums\Game\Matchmaking\MatchStatus; +use App\Http\Controllers\Api\ModerationController; use App\Http\Requests\Api\Matchmaking\PlayerEndOfMatchRequest; use App\Models\Admin\Archive\ArchivedGame; use App\Models\Admin\Archive\ArchivedPlayerProgression; @@ -107,6 +108,9 @@ public function archiveGame(Faction $dominantFaction): void $archived = new ArchivedGame(); $archived->id = $this->id; $archived->dominant_faction = $dominantFaction; + + $archived->chat_messages = Cache::get(ModerationController::CHAT_CACHE_KEY . $this->id, []); + $archived->save(); } } diff --git a/dist/app/Models/Game/Matchmaking/MatchConfiguration.php b/dist/app/Models/Game/Matchmaking/MatchConfiguration.php index 241c611..b836d8f 100644 --- a/dist/app/Models/Game/Matchmaking/MatchConfiguration.php +++ b/dist/app/Models/Game/Matchmaking/MatchConfiguration.php @@ -44,8 +44,24 @@ public static function getAvailableMatchConfigs(int $runnerCount, int $hunterCou ->get(); } - public static function selectRandomConfigByWeight(Collection &$collection): MatchConfiguration|null + public static function selectMatchConfig(Collection &$collection, int $runnerCount, int $hunterCount): MatchConfiguration|null { + $filteredConfigs = new Collection(); + + if ($hunterCount === 1 && $runnerCount >= 6){ + $filteredConfigs = $collection->filter(function (MatchConfiguration $config) use ($runnerCount, $hunterCount) { + return $config->runners >= 6 && $config->hunters === $hunterCount; + }); + } + else if ($hunterCount === 1 && $runnerCount >= 4){ + $filteredConfigs = $collection->filter(function (MatchConfiguration $config) use ($runnerCount, $hunterCount) { + return $config->runners === $runnerCount && $config->hunters === $hunterCount; + }); + } + + if ($filteredConfigs->isNotEmpty()) + $collection = $filteredConfigs; + $weightSum = $collection->sum('weight'); $random = random_int(1, $weightSum); $selectWalk = 0; diff --git a/dist/app/Models/Game/QuitterState.php b/dist/app/Models/Game/QuitterState.php index be7e7a3..fed5e85 100644 --- a/dist/app/Models/Game/QuitterState.php +++ b/dist/app/Models/Game/QuitterState.php @@ -117,7 +117,7 @@ public static function getReward(int $stayMatchStreak): array { return [ new Reward( RewardType::Currency, - 50, + 150, 'CurrencyA', ), ]; @@ -126,7 +126,7 @@ public static function getReward(int $stayMatchStreak): array { return [ new Reward( RewardType::Currency, - 100, + 300, 'CurrencyA', ), new Reward( @@ -145,7 +145,7 @@ public static function getReward(int $stayMatchStreak): array { return [ new Reward( RewardType::Currency, - 150, + 450, 'CurrencyA', ), new Reward( @@ -164,7 +164,7 @@ public static function getReward(int $stayMatchStreak): array { return [ new Reward( RewardType::Currency, - 200, + 600, 'CurrencyA', ), new Reward( @@ -183,7 +183,7 @@ public static function getReward(int $stayMatchStreak): array { return [ new Reward( RewardType::Currency, - 250, + 750, 'CurrencyA', ), new Reward( diff --git a/dist/app/Models/Game/TimedChallenge.php b/dist/app/Models/Game/TimedChallenge.php new file mode 100644 index 0000000..d6c1782 --- /dev/null +++ b/dist/app/Models/Game/TimedChallenge.php @@ -0,0 +1,78 @@ + ChallengeType::class, + 'faction' => Faction::class, + 'start_time' => 'datetime', + 'end_time' => 'datetime', + 'rewards' => 'array', + ]; + + public function getProgressForPlayer(int $playerDataId): int + { + $foundProgress = $this->playerData()->where('id', '=', $playerDataId)->first(); + + if ($foundProgress !== null) + return $foundProgress->pivot->progress; + + // We create challange relation and just return 0 since you cannot have progress for the challenge we just linked. + $this->playerData()->attach($playerDataId); + return 0; + } + + public function hasPlayerClaimed(int $playerDataId): bool { + $foundPlayerData = $this->playerData()->where('id', '=', $playerDataId)->first(); + + if ($foundPlayerData !== null) + return $foundPlayerData->pivot->claimed; + + return false; + } + + /** + * @return Reward[] + */ + public function getRewards(): array { + if ($this->rewards === null) + return []; + + $result = []; + foreach ($this->rewards as $reward) { + $result[] = new Reward( + RewardType::tryFrom($reward['type']), + $reward['amount'], + $reward['id'], + ); + } + + return $result; + } + + public function playerData(): BelongsToMany + { + return $this->belongsToMany(PlayerData::class)->withPivot(['progress', 'claimed']); + } + + public static function currentChallenges(): Eloquent|Builder { + return static::where('start_time', '>', Carbon::now()) + ->where('end_time', '<', Carbon::now()); + } +} diff --git a/dist/app/Models/GameFile.php b/dist/app/Models/GameFile.php index 516b2f1..6acf572 100644 --- a/dist/app/Models/GameFile.php +++ b/dist/app/Models/GameFile.php @@ -4,8 +4,10 @@ use App\Enums\Launcher\FileAction; use App\Enums\Launcher\Patchline; +use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; +use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Filesystem\FilesystemAdapter; use Illuminate\Support\Facades\Storage; @@ -35,7 +37,7 @@ protected static function booted() }); } - public static function getDisk():FileSystemAdapter { + public static function getDisk(): FileSystemAdapter { return static::$disk ?? static::$disk = Storage::disk('patches'); } @@ -54,4 +56,45 @@ public function fileExists(): bool public function getFileSize(): int { return static::getDisk()->size($this->getDiskPath()); } + + public function child(): BelongsTo + { + return $this->belongsTo(GameFile::class); + } + + public function getTopParent(): GameFile + { + $current = $this; + while ($current->child) { + $current = $current->child; + } + return $current; + } + + public function scopeWithFileHistory($query): Collection + { + return $query->latest()->get()->pipe(function ($allFiles) { + $filesById = $allFiles->keyBy('id'); + + // Find files that are not referenced as child_id (these are the latest in their chains) + $referencedIds = $allFiles->pluck('child_id')->filter(); + $latestFiles = $allFiles->whereNotIn('id', $referencedIds); + + // Build complete history chains for each latest file + return $latestFiles->map(function ($latestFile) use ($filesById) { + $history = collect(); + + // Walk backwards through the chain to collect all history + $currentId = $latestFile->child_id; + while ($currentId && isset($filesById[$currentId])) { + $historyFile = $filesById[$currentId]; + $history->push($historyFile); + $currentId = $historyFile->child_id; + } + + $latestFile->children = $history; + return $latestFile; + })->sortByDesc('updated_at'); + }); + } } diff --git a/dist/app/Models/User/PlayerData.php b/dist/app/Models/User/PlayerData.php index 89d9fa3..807ca83 100644 --- a/dist/app/Models/User/PlayerData.php +++ b/dist/app/Models/User/PlayerData.php @@ -12,6 +12,8 @@ use App\Models\Game\Challenge; use App\Models\Game\CharacterData; use App\Models\Game\QuitterState; +use Illuminate\Database\Eloquent\Casts\Attribute; +use App\Models\Game\TimedChallenge; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsToMany; @@ -36,7 +38,7 @@ class PlayerData extends Model 'currency_b' => 500, 'currency_c' => 500, 'last_faction' => Faction::Runner, - 'last_hunter' => Hunter::Inquisitor, + 'last_hunter' => Hunter::Mass, 'last_runner' => Runner::Smoke, 'readout_version' => 1, 'runner_faction_level' => 1, @@ -53,6 +55,8 @@ class PlayerData extends Model 'has_played_dg_1' => 'boolean', ]; + const CURRENCY_CAP = 50000; + protected static function booted(): void { static::created(function (PlayerData $playerData) { @@ -66,6 +70,7 @@ protected static function booted(): void ...$configClass::getDefaultEquippedWeapons(), ...$configClass::getDefaultEquipment(), ...$configClass::getDefaultPowers(), + ...$configClass::getDefaultWeapons(), ...$configClass::getDefaultEquippedPerks(), ]; @@ -88,6 +93,7 @@ protected static function booted(): void ...$configClass::getDefaultEquippedWeapons(), ...$configClass::getDefaultEquipment(), ...$configClass::getDefaultPowers(), + ...$configClass::getDefaultWeapons(), ...$configClass::getDefaultEquippedPerks(), ]; @@ -108,7 +114,7 @@ protected static function booted(): void Characters::Smoke->value, Characters::Ghost->value, Characters::Sawbones->value, - Characters::Inquisitor->value, + Characters::Mass->value, ] ]); }); @@ -143,6 +149,10 @@ public function challenges(): BelongsToMany return $this->belongsToMany(Challenge::class)->withPivot(['progress']); } + public function timedChallenges(): BelongsToMany { + return $this->belongsToMany(TimedChallenge::class)->withPivot(['progress', 'claimed']); + } + public function quitterState(): HasOne { return $this->hasOne(QuitterState::class); @@ -192,4 +202,22 @@ public static function getRemainingFactionExperience(int $level): int return 4; return 5; } + + public function currencyA(): Attribute { + return Attribute::make( + set: fn (int $value) => min($value, static::CURRENCY_CAP), + ); + } + + public function currencyB(): Attribute { + return Attribute::make( + set: fn (int $value) => min($value, static::CURRENCY_CAP), + ); + } + + public function currencyC(): Attribute { + return Attribute::make( + set: fn (int $value) => min($value, static::CURRENCY_CAP), + ); + } } diff --git a/dist/app/View/Components/Admin/ChatHistory.php b/dist/app/View/Components/Admin/ChatHistory.php new file mode 100644 index 0000000..0057d5b --- /dev/null +++ b/dist/app/View/Components/Admin/ChatHistory.php @@ -0,0 +1,29 @@ +players = ArchivedPlayerProgression::whereArchivedGameId($game->id)->get(); + } + + /** + * Get the view / contents that represent the component. + */ + public function render(): View|Closure|string + { + return view('components.admin.match-info'); + } +} diff --git a/dist/composer.json b/dist/composer.json index a826c00..ce3d07e 100644 --- a/dist/composer.json +++ b/dist/composer.json @@ -8,8 +8,7 @@ "php": "^8.2", "consoletvs/profanity": "^3.5", "guzzlehttp/guzzle": "^7.2", - "inertiajs/inertia-laravel": "^0.6.11", - "laravel/framework": "^10.10", + "laravel/framework": "^11.0", "laravel/octane": "^2.4", "laravel/socialite": "^5.12", "laravel/tinker": "^2.8", @@ -19,12 +18,11 @@ "spatie/laravel-permission": "^6.3" }, "require-dev": { - "barryvdh/laravel-ide-helper": "^2.14", + "barryvdh/laravel-ide-helper": "^3.2", "fakerphp/faker": "^1.9.1", "laravel/pint": "^1.0", "laravel/sail": "^1.18", "mockery/mockery": "^1.4.4", - "nunomaduro/collision": "^7.0", "phpunit/phpunit": "^10.1", "spatie/laravel-ignition": "^2.0" }, diff --git a/dist/composer.lock b/dist/composer.lock index e4f273e..b2f2b0e 100644 --- a/dist/composer.lock +++ b/dist/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "6432a6be066cf93e16ee61c034c1a7ae", + "content-hash": "1f6631f1262ccaa5e2d62fab91cd7c75", "packages": [ { "name": "brick/math", @@ -68,26 +68,26 @@ }, { "name": "carbonphp/carbon-doctrine-types", - "version": "2.1.0", + "version": "3.2.0", "source": { "type": "git", "url": "https://github.com/CarbonPHP/carbon-doctrine-types.git", - "reference": "99f76ffa36cce3b70a4a6abce41dba15ca2e84cb" + "reference": "18ba5ddfec8976260ead6e866180bd5d2f71aa1d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/CarbonPHP/carbon-doctrine-types/zipball/99f76ffa36cce3b70a4a6abce41dba15ca2e84cb", - "reference": "99f76ffa36cce3b70a4a6abce41dba15ca2e84cb", + "url": "https://api.github.com/repos/CarbonPHP/carbon-doctrine-types/zipball/18ba5ddfec8976260ead6e866180bd5d2f71aa1d", + "reference": "18ba5ddfec8976260ead6e866180bd5d2f71aa1d", "shasum": "" }, "require": { - "php": "^7.4 || ^8.0" + "php": "^8.1" }, "conflict": { - "doctrine/dbal": "<3.7.0 || >=4.0.0" + "doctrine/dbal": "<4.0.0 || >=5.0.0" }, "require-dev": { - "doctrine/dbal": "^3.7.0", + "doctrine/dbal": "^4.0.0", "nesbot/carbon": "^2.71.0 || ^3.0.0", "phpunit/phpunit": "^10.3" }, @@ -117,7 +117,7 @@ ], "support": { "issues": "https://github.com/CarbonPHP/carbon-doctrine-types/issues", - "source": "https://github.com/CarbonPHP/carbon-doctrine-types/tree/2.1.0" + "source": "https://github.com/CarbonPHP/carbon-doctrine-types/tree/3.2.0" }, "funding": [ { @@ -133,7 +133,7 @@ "type": "tidelift" } ], - "time": "2023-12-11T17:09:12+00:00" + "time": "2024-02-09T16:56:22+00:00" }, { "name": "consoletvs/profanity", @@ -155,12 +155,12 @@ "type": "library", "extra": { "laravel": { - "providers": [ - "ConsoleTVs\\Profanity\\ProfanityServiceProvider" - ], "aliases": { "Profanity": "ConsoleTVs\\Profanity\\Facades\\Profanity" - } + }, + "providers": [ + "ConsoleTVs\\Profanity\\ProfanityServiceProvider" + ] } }, "autoload": { @@ -495,16 +495,16 @@ }, { "name": "egulias/email-validator", - "version": "4.0.2", + "version": "4.0.3", "source": { "type": "git", "url": "https://github.com/egulias/EmailValidator.git", - "reference": "ebaaf5be6c0286928352e054f2d5125608e5405e" + "reference": "b115554301161fa21467629f1e1391c1936de517" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/ebaaf5be6c0286928352e054f2d5125608e5405e", - "reference": "ebaaf5be6c0286928352e054f2d5125608e5405e", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/b115554301161fa21467629f1e1391c1936de517", + "reference": "b115554301161fa21467629f1e1391c1936de517", "shasum": "" }, "require": { @@ -550,7 +550,7 @@ ], "support": { "issues": "https://github.com/egulias/EmailValidator/issues", - "source": "https://github.com/egulias/EmailValidator/tree/4.0.2" + "source": "https://github.com/egulias/EmailValidator/tree/4.0.3" }, "funding": [ { @@ -558,20 +558,20 @@ "type": "github" } ], - "time": "2023-10-06T06:47:41+00:00" + "time": "2024-12-27T00:36:43+00:00" }, { "name": "firebase/php-jwt", - "version": "v6.10.1", + "version": "v6.10.2", "source": { "type": "git", "url": "https://github.com/firebase/php-jwt.git", - "reference": "500501c2ce893c824c801da135d02661199f60c5" + "reference": "30c19ed0f3264cb660ea496895cfb6ef7ee3653b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/firebase/php-jwt/zipball/500501c2ce893c824c801da135d02661199f60c5", - "reference": "500501c2ce893c824c801da135d02661199f60c5", + "url": "https://api.github.com/repos/firebase/php-jwt/zipball/30c19ed0f3264cb660ea496895cfb6ef7ee3653b", + "reference": "30c19ed0f3264cb660ea496895cfb6ef7ee3653b", "shasum": "" }, "require": { @@ -619,9 +619,9 @@ ], "support": { "issues": "https://github.com/firebase/php-jwt/issues", - "source": "https://github.com/firebase/php-jwt/tree/v6.10.1" + "source": "https://github.com/firebase/php-jwt/tree/v6.10.2" }, - "time": "2024-05-18T18:05:11+00:00" + "time": "2024-11-24T11:22:49+00:00" }, { "name": "fruitcake/php-cors", @@ -1167,94 +1167,22 @@ ], "time": "2023-12-03T19:50:20+00:00" }, - { - "name": "inertiajs/inertia-laravel", - "version": "v0.6.11", - "source": { - "type": "git", - "url": "https://github.com/inertiajs/inertia-laravel.git", - "reference": "2a1e19048f95c0e4adb2b2733f9119e49c4fc09f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/inertiajs/inertia-laravel/zipball/2a1e19048f95c0e4adb2b2733f9119e49c4fc09f", - "reference": "2a1e19048f95c0e4adb2b2733f9119e49c4fc09f", - "shasum": "" - }, - "require": { - "ext-json": "*", - "laravel/framework": "^6.0|^7.0|^8.74|^9.0|^10.0", - "php": "^7.2|~8.0.0|~8.1.0|~8.2.0|~8.3.0" - }, - "require-dev": { - "mockery/mockery": "^1.3.3", - "orchestra/testbench": "^4.0|^5.0|^6.4|^7.0|^8.0", - "phpunit/phpunit": "^8.0|^9.5.8", - "roave/security-advisories": "dev-master" - }, - "suggest": { - "ext-pcntl": "Recommended when running the Inertia SSR server via the `inertia:start-ssr` artisan command." - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Inertia\\ServiceProvider" - ] - } - }, - "autoload": { - "files": [ - "./helpers.php" - ], - "psr-4": { - "Inertia\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jonathan Reinink", - "email": "jonathan@reinink.ca", - "homepage": "https://reinink.ca" - } - ], - "description": "The Laravel adapter for Inertia.js.", - "keywords": [ - "inertia", - "laravel" - ], - "support": { - "issues": "https://github.com/inertiajs/inertia-laravel/issues", - "source": "https://github.com/inertiajs/inertia-laravel/tree/v0.6.11" - }, - "funding": [ - { - "url": "https://github.com/reinink", - "type": "github" - } - ], - "time": "2023-10-27T10:59:02+00:00" - }, { "name": "jaybizzle/crawler-detect", - "version": "v1.2.120", + "version": "v1.3.0", "source": { "type": "git", "url": "https://github.com/JayBizzle/Crawler-Detect.git", - "reference": "2b325bdce46bbb8a2e96dc740ad37c743c9d8617" + "reference": "be155e11613fa618aa18aee438955588d1092a47" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/JayBizzle/Crawler-Detect/zipball/2b325bdce46bbb8a2e96dc740ad37c743c9d8617", - "reference": "2b325bdce46bbb8a2e96dc740ad37c743c9d8617", + "url": "https://api.github.com/repos/JayBizzle/Crawler-Detect/zipball/be155e11613fa618aa18aee438955588d1092a47", + "reference": "be155e11613fa618aa18aee438955588d1092a47", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=7.1.0" }, "require-dev": { "phpunit/phpunit": "^4.8|^5.5|^6.5|^9.4" @@ -1287,9 +1215,9 @@ ], "support": { "issues": "https://github.com/JayBizzle/Crawler-Detect/issues", - "source": "https://github.com/JayBizzle/Crawler-Detect/tree/v1.2.120" + "source": "https://github.com/JayBizzle/Crawler-Detect/tree/v1.3.0" }, - "time": "2024-09-15T14:31:21+00:00" + "time": "2024-11-25T19:38:36+00:00" }, { "name": "laminas/laminas-diactoros", @@ -1332,8 +1260,8 @@ "type": "library", "extra": { "laminas": { - "config-provider": "Laminas\\Diactoros\\ConfigProvider", - "module": "Laminas\\Diactoros" + "module": "Laminas\\Diactoros", + "config-provider": "Laminas\\Diactoros\\ConfigProvider" } }, "autoload": { @@ -1381,23 +1309,23 @@ }, { "name": "laravel/framework", - "version": "v10.48.22", + "version": "v11.36.1", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "c4ea52bb044faef4a103d7dd81746c01b2ec860e" + "reference": "df06f5163f4550641fdf349ebc04916a61135a64" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/c4ea52bb044faef4a103d7dd81746c01b2ec860e", - "reference": "c4ea52bb044faef4a103d7dd81746c01b2ec860e", + "url": "https://api.github.com/repos/laravel/framework/zipball/df06f5163f4550641fdf349ebc04916a61135a64", + "reference": "df06f5163f4550641fdf349ebc04916a61135a64", "shasum": "" }, "require": { "brick/math": "^0.9.3|^0.10.2|^0.11|^0.12", "composer-runtime-api": "^2.2", "doctrine/inflector": "^2.0.5", - "dragonmantank/cron-expression": "^3.3.2", + "dragonmantank/cron-expression": "^3.4", "egulias/email-validator": "^3.2.1|^4.0", "ext-ctype": "*", "ext-filter": "*", @@ -1406,44 +1334,46 @@ "ext-openssl": "*", "ext-session": "*", "ext-tokenizer": "*", - "fruitcake/php-cors": "^1.2", + "fruitcake/php-cors": "^1.3", + "guzzlehttp/guzzle": "^7.8.2", "guzzlehttp/uri-template": "^1.0", - "laravel/prompts": "^0.1.9", - "laravel/serializable-closure": "^1.3", - "league/commonmark": "^2.2.1", - "league/flysystem": "^3.8.0", + "laravel/prompts": "^0.1.18|^0.2.0|^0.3.0", + "laravel/serializable-closure": "^1.3|^2.0", + "league/commonmark": "^2.6", + "league/flysystem": "^3.25.1", + "league/flysystem-local": "^3.25.1", + "league/uri": "^7.5.1", "monolog/monolog": "^3.0", - "nesbot/carbon": "^2.67", - "nunomaduro/termwind": "^1.13", - "php": "^8.1", + "nesbot/carbon": "^2.72.2|^3.4", + "nunomaduro/termwind": "^2.0", + "php": "^8.2", "psr/container": "^1.1.1|^2.0.1", "psr/log": "^1.0|^2.0|^3.0", "psr/simple-cache": "^1.0|^2.0|^3.0", "ramsey/uuid": "^4.7", - "symfony/console": "^6.2", - "symfony/error-handler": "^6.2", - "symfony/finder": "^6.2", - "symfony/http-foundation": "^6.4", - "symfony/http-kernel": "^6.2", - "symfony/mailer": "^6.2", - "symfony/mime": "^6.2", - "symfony/process": "^6.2", - "symfony/routing": "^6.2", - "symfony/uid": "^6.2", - "symfony/var-dumper": "^6.2", + "symfony/console": "^7.0.3", + "symfony/error-handler": "^7.0.3", + "symfony/finder": "^7.0.3", + "symfony/http-foundation": "^7.2.0", + "symfony/http-kernel": "^7.0.3", + "symfony/mailer": "^7.0.3", + "symfony/mime": "^7.0.3", + "symfony/polyfill-php83": "^1.31", + "symfony/process": "^7.0.3", + "symfony/routing": "^7.0.3", + "symfony/uid": "^7.0.3", + "symfony/var-dumper": "^7.0.3", "tijsverkoyen/css-to-inline-styles": "^2.2.5", - "vlucas/phpdotenv": "^5.4.1", - "voku/portable-ascii": "^2.0" + "vlucas/phpdotenv": "^5.6.1", + "voku/portable-ascii": "^2.0.2" }, "conflict": { - "carbonphp/carbon-doctrine-types": ">=3.0", - "doctrine/dbal": ">=4.0", "mockery/mockery": "1.6.8", - "phpunit/phpunit": ">=11.0.0", "tightenco/collect": "<5.5.33" }, "provide": { "psr/container-implementation": "1.1|2.0", + "psr/log-implementation": "1.0|2.0|3.0", "psr/simple-cache-implementation": "1.0|2.0|3.0" }, "replace": { @@ -1452,6 +1382,7 @@ "illuminate/bus": "self.version", "illuminate/cache": "self.version", "illuminate/collections": "self.version", + "illuminate/concurrency": "self.version", "illuminate/conditionable": "self.version", "illuminate/config": "self.version", "illuminate/console": "self.version", @@ -1479,36 +1410,38 @@ "illuminate/testing": "self.version", "illuminate/translation": "self.version", "illuminate/validation": "self.version", - "illuminate/view": "self.version" + "illuminate/view": "self.version", + "spatie/once": "*" }, "require-dev": { "ably/ably-php": "^1.0", - "aws/aws-sdk-php": "^3.235.5", - "doctrine/dbal": "^3.5.1", + "aws/aws-sdk-php": "^3.322.9", "ext-gmp": "*", - "fakerphp/faker": "^1.21", - "guzzlehttp/guzzle": "^7.5", - "league/flysystem-aws-s3-v3": "^3.0", - "league/flysystem-ftp": "^3.0", - "league/flysystem-path-prefixing": "^3.3", - "league/flysystem-read-only": "^3.3", - "league/flysystem-sftp-v3": "^3.0", - "mockery/mockery": "^1.5.1", - "nyholm/psr7": "^1.2", - "orchestra/testbench-core": "^8.23.4", - "pda/pheanstalk": "^4.0", - "phpstan/phpstan": "^1.4.7", - "phpunit/phpunit": "^10.0.7", - "predis/predis": "^2.0.2", - "symfony/cache": "^6.2", - "symfony/http-client": "^6.2.4", - "symfony/psr-http-message-bridge": "^2.0" + "fakerphp/faker": "^1.24", + "guzzlehttp/promises": "^2.0.3", + "guzzlehttp/psr7": "^2.4", + "league/flysystem-aws-s3-v3": "^3.25.1", + "league/flysystem-ftp": "^3.25.1", + "league/flysystem-path-prefixing": "^3.25.1", + "league/flysystem-read-only": "^3.25.1", + "league/flysystem-sftp-v3": "^3.25.1", + "mockery/mockery": "^1.6.10", + "orchestra/testbench-core": "^9.6", + "pda/pheanstalk": "^5.0.6", + "php-http/discovery": "^1.15", + "phpstan/phpstan": "^1.11.5", + "phpunit/phpunit": "^10.5.35|^11.3.6", + "predis/predis": "^2.3", + "resend/resend-php": "^0.10.0", + "symfony/cache": "^7.0.3", + "symfony/http-client": "^7.0.3", + "symfony/psr-http-message-bridge": "^7.0.3", + "symfony/translation": "^7.0.3" }, "suggest": { "ably/ably-php": "Required to use the Ably broadcast driver (^1.0).", - "aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage, and SES mail driver (^3.235.5).", - "brianium/paratest": "Required to run tests in parallel (^6.0).", - "doctrine/dbal": "Required to rename columns and drop SQLite columns (^3.5.1).", + "aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage, and SES mail driver (^3.322.9).", + "brianium/paratest": "Required to run tests in parallel (^7.0|^8.0).", "ext-apcu": "Required to use the APC cache driver.", "ext-fileinfo": "Required to use the Filesystem class.", "ext-ftp": "Required to use the Flysystem FTP driver.", @@ -1517,42 +1450,45 @@ "ext-pcntl": "Required to use all features of the queue worker and console signal trapping.", "ext-pdo": "Required to use all database features.", "ext-posix": "Required to use all features of the queue worker.", - "ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0).", + "ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0|^6.0).", "fakerphp/faker": "Required to use the eloquent factory builder (^1.9.1).", "filp/whoops": "Required for friendly error pages in development (^2.14.3).", - "guzzlehttp/guzzle": "Required to use the HTTP Client and the ping methods on schedules (^7.5).", "laravel/tinker": "Required to use the tinker console command (^2.0).", - "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^3.0).", - "league/flysystem-ftp": "Required to use the Flysystem FTP driver (^3.0).", - "league/flysystem-path-prefixing": "Required to use the scoped driver (^3.3).", - "league/flysystem-read-only": "Required to use read-only disks (^3.3)", - "league/flysystem-sftp-v3": "Required to use the Flysystem SFTP driver (^3.0).", - "mockery/mockery": "Required to use mocking (^1.5.1).", - "nyholm/psr7": "Required to use PSR-7 bridging features (^1.2).", - "pda/pheanstalk": "Required to use the beanstalk queue driver (^4.0).", - "phpunit/phpunit": "Required to use assertions and run tests (^9.5.8|^10.0.7).", - "predis/predis": "Required to use the predis connector (^2.0.2).", + "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^3.25.1).", + "league/flysystem-ftp": "Required to use the Flysystem FTP driver (^3.25.1).", + "league/flysystem-path-prefixing": "Required to use the scoped driver (^3.25.1).", + "league/flysystem-read-only": "Required to use read-only disks (^3.25.1)", + "league/flysystem-sftp-v3": "Required to use the Flysystem SFTP driver (^3.25.1).", + "mockery/mockery": "Required to use mocking (^1.6).", + "pda/pheanstalk": "Required to use the beanstalk queue driver (^5.0).", + "php-http/discovery": "Required to use PSR-7 bridging features (^1.15).", + "phpunit/phpunit": "Required to use assertions and run tests (^10.5|^11.0).", + "predis/predis": "Required to use the predis connector (^2.3).", "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).", "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^6.0|^7.0).", - "symfony/cache": "Required to PSR-6 cache bridge (^6.2).", - "symfony/filesystem": "Required to enable support for relative symbolic links (^6.2).", - "symfony/http-client": "Required to enable support for the Symfony API mail transports (^6.2).", - "symfony/mailgun-mailer": "Required to enable support for the Mailgun mail transport (^6.2).", - "symfony/postmark-mailer": "Required to enable support for the Postmark mail transport (^6.2).", - "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^2.0)." + "resend/resend-php": "Required to enable support for the Resend mail transport (^0.10.0).", + "symfony/cache": "Required to PSR-6 cache bridge (^7.0).", + "symfony/filesystem": "Required to enable support for relative symbolic links (^7.0).", + "symfony/http-client": "Required to enable support for the Symfony API mail transports (^7.0).", + "symfony/mailgun-mailer": "Required to enable support for the Mailgun mail transport (^7.0).", + "symfony/postmark-mailer": "Required to enable support for the Postmark mail transport (^7.0).", + "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^7.0)." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "10.x-dev" + "dev-master": "11.x-dev" } }, "autoload": { "files": [ + "src/Illuminate/Collections/functions.php", "src/Illuminate/Collections/helpers.php", "src/Illuminate/Events/functions.php", "src/Illuminate/Filesystem/functions.php", "src/Illuminate/Foundation/helpers.php", + "src/Illuminate/Log/functions.php", + "src/Illuminate/Support/functions.php", "src/Illuminate/Support/helpers.php" ], "psr-4": { @@ -1584,27 +1520,27 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2024-09-12T15:00:09+00:00" + "time": "2024-12-17T22:32:08+00:00" }, { "name": "laravel/octane", - "version": "v2.5.9", + "version": "v2.6.0", "source": { "type": "git", "url": "https://github.com/laravel/octane.git", - "reference": "d8d432eb1e51a8ab2575854963d94e70d4592e15" + "reference": "b8b11ef25600baa835d364e724f2e948dc1eb88b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/octane/zipball/d8d432eb1e51a8ab2575854963d94e70d4592e15", - "reference": "d8d432eb1e51a8ab2575854963d94e70d4592e15", + "url": "https://api.github.com/repos/laravel/octane/zipball/b8b11ef25600baa835d364e724f2e948dc1eb88b", + "reference": "b8b11ef25600baa835d364e724f2e948dc1eb88b", "shasum": "" }, "require": { "laminas/laminas-diactoros": "^3.0", "laravel/framework": "^10.10.1|^11.0", "laravel/prompts": "^0.1.24|^0.2.0|^0.3.0", - "laravel/serializable-closure": "^1.3.0", + "laravel/serializable-closure": "^1.3|^2.0", "nesbot/carbon": "^2.66.0|^3.0", "php": "^8.1.0", "symfony/console": "^6.0|^7.0", @@ -1623,7 +1559,7 @@ "livewire/livewire": "^2.12.3|^3.0", "mockery/mockery": "^1.5.1", "nunomaduro/collision": "^6.4.0|^7.5.2|^8.0", - "orchestra/testbench": "^8.5.2|^9.0", + "orchestra/testbench": "^8.21|^9.0", "phpstan/phpstan": "^1.10.15", "phpunit/phpunit": "^10.4", "spiral/roadrunner-cli": "^2.6.0", @@ -1635,16 +1571,16 @@ ], "type": "library", "extra": { - "branch-alias": { - "dev-master": "2.x-dev" - }, "laravel": { - "providers": [ - "Laravel\\Octane\\OctaneServiceProvider" - ], "aliases": { "Octane": "Laravel\\Octane\\Facades\\Octane" - } + }, + "providers": [ + "Laravel\\Octane\\OctaneServiceProvider" + ] + }, + "branch-alias": { + "dev-master": "2.x-dev" } }, "autoload": { @@ -1674,25 +1610,25 @@ "issues": "https://github.com/laravel/octane/issues", "source": "https://github.com/laravel/octane" }, - "time": "2024-10-06T21:09:20+00:00" + "time": "2024-11-25T21:47:18+00:00" }, { "name": "laravel/prompts", - "version": "v0.1.25", + "version": "v0.3.2", "source": { "type": "git", "url": "https://github.com/laravel/prompts.git", - "reference": "7b4029a84c37cb2725fc7f011586e2997040bc95" + "reference": "0e0535747c6b8d6d10adca8b68293cf4517abb0f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/prompts/zipball/7b4029a84c37cb2725fc7f011586e2997040bc95", - "reference": "7b4029a84c37cb2725fc7f011586e2997040bc95", + "url": "https://api.github.com/repos/laravel/prompts/zipball/0e0535747c6b8d6d10adca8b68293cf4517abb0f", + "reference": "0e0535747c6b8d6d10adca8b68293cf4517abb0f", "shasum": "" }, "require": { + "composer-runtime-api": "^2.2", "ext-mbstring": "*", - "illuminate/collections": "^10.0|^11.0", "php": "^8.1", "symfony/console": "^6.2|^7.0" }, @@ -1701,8 +1637,9 @@ "laravel/framework": ">=10.17.0 <10.25.0" }, "require-dev": { + "illuminate/collections": "^10.0|^11.0", "mockery/mockery": "^1.5", - "pestphp/pest": "^2.3", + "pestphp/pest": "^2.3|^3.4", "phpstan/phpstan": "^1.11", "phpstan/phpstan-mockery": "^1.1" }, @@ -1712,7 +1649,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "0.1.x-dev" + "dev-main": "0.3.x-dev" } }, "autoload": { @@ -1730,38 +1667,38 @@ "description": "Add beautiful and user-friendly forms to your command-line applications.", "support": { "issues": "https://github.com/laravel/prompts/issues", - "source": "https://github.com/laravel/prompts/tree/v0.1.25" + "source": "https://github.com/laravel/prompts/tree/v0.3.2" }, - "time": "2024-08-12T22:06:33+00:00" + "time": "2024-11-12T14:59:47+00:00" }, { "name": "laravel/serializable-closure", - "version": "v1.3.5", + "version": "v2.0.1", "source": { "type": "git", "url": "https://github.com/laravel/serializable-closure.git", - "reference": "1dc4a3dbfa2b7628a3114e43e32120cce7cdda9c" + "reference": "613b2d4998f85564d40497e05e89cb6d9bd1cbe8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/1dc4a3dbfa2b7628a3114e43e32120cce7cdda9c", - "reference": "1dc4a3dbfa2b7628a3114e43e32120cce7cdda9c", + "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/613b2d4998f85564d40497e05e89cb6d9bd1cbe8", + "reference": "613b2d4998f85564d40497e05e89cb6d9bd1cbe8", "shasum": "" }, "require": { - "php": "^7.3|^8.0" + "php": "^8.1" }, "require-dev": { - "illuminate/support": "^8.0|^9.0|^10.0|^11.0", - "nesbot/carbon": "^2.61|^3.0", - "pestphp/pest": "^1.21.3", - "phpstan/phpstan": "^1.8.2", - "symfony/var-dumper": "^5.4.11|^6.2.0|^7.0.0" + "illuminate/support": "^10.0|^11.0", + "nesbot/carbon": "^2.67|^3.0", + "pestphp/pest": "^2.36", + "phpstan/phpstan": "^2.0", + "symfony/var-dumper": "^6.2.0|^7.0.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.x-dev" + "dev-master": "2.x-dev" } }, "autoload": { @@ -1793,20 +1730,20 @@ "issues": "https://github.com/laravel/serializable-closure/issues", "source": "https://github.com/laravel/serializable-closure" }, - "time": "2024-09-23T13:33:08+00:00" + "time": "2024-12-16T15:26:28+00:00" }, { "name": "laravel/socialite", - "version": "v5.16.0", + "version": "v5.16.1", "source": { "type": "git", "url": "https://github.com/laravel/socialite.git", - "reference": "40a2dc98c53d9dc6d55eadb0d490d3d72b73f1bf" + "reference": "4e5be83c0b3ecf81b2ffa47092e917d1f79dce71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/socialite/zipball/40a2dc98c53d9dc6d55eadb0d490d3d72b73f1bf", - "reference": "40a2dc98c53d9dc6d55eadb0d490d3d72b73f1bf", + "url": "https://api.github.com/repos/laravel/socialite/zipball/4e5be83c0b3ecf81b2ffa47092e917d1f79dce71", + "reference": "4e5be83c0b3ecf81b2ffa47092e917d1f79dce71", "shasum": "" }, "require": { @@ -1816,7 +1753,7 @@ "illuminate/contracts": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0", "illuminate/http": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0", "illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0", - "league/oauth1-client": "^1.10.1", + "league/oauth1-client": "^1.11", "php": "^7.2|^8.0", "phpseclib/phpseclib": "^3.0" }, @@ -1828,16 +1765,16 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-master": "5.x-dev" - }, "laravel": { - "providers": [ - "Laravel\\Socialite\\SocialiteServiceProvider" - ], "aliases": { "Socialite": "Laravel\\Socialite\\Facades\\Socialite" - } + }, + "providers": [ + "Laravel\\Socialite\\SocialiteServiceProvider" + ] + }, + "branch-alias": { + "dev-master": "5.x-dev" } }, "autoload": { @@ -1865,7 +1802,7 @@ "issues": "https://github.com/laravel/socialite/issues", "source": "https://github.com/laravel/socialite" }, - "time": "2024-09-03T09:46:57+00:00" + "time": "2024-12-11T16:43:51+00:00" }, { "name": "laravel/tinker", @@ -1935,16 +1872,16 @@ }, { "name": "league/commonmark", - "version": "2.5.3", + "version": "2.6.1", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "b650144166dfa7703e62a22e493b853b58d874b0" + "reference": "d990688c91cedfb69753ffc2512727ec646df2ad" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/b650144166dfa7703e62a22e493b853b58d874b0", - "reference": "b650144166dfa7703e62a22e493b853b58d874b0", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/d990688c91cedfb69753ffc2512727ec646df2ad", + "reference": "d990688c91cedfb69753ffc2512727ec646df2ad", "shasum": "" }, "require": { @@ -1969,8 +1906,9 @@ "phpstan/phpstan": "^1.8.2", "phpunit/phpunit": "^9.5.21 || ^10.5.9 || ^11.0.0", "scrutinizer/ocular": "^1.8.1", - "symfony/finder": "^5.3 | ^6.0 || ^7.0", - "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0 || ^7.0", + "symfony/finder": "^5.3 | ^6.0 | ^7.0", + "symfony/process": "^5.4 | ^6.0 | ^7.0", + "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0 | ^7.0", "unleashedtech/php-coding-standard": "^3.1.1", "vimeo/psalm": "^4.24.0 || ^5.0.0" }, @@ -1980,7 +1918,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.6-dev" + "dev-main": "2.7-dev" } }, "autoload": { @@ -2037,7 +1975,7 @@ "type": "tidelift" } ], - "time": "2024-08-16T11:46:16+00:00" + "time": "2024-12-29T14:10:59+00:00" }, { "name": "league/config", @@ -2311,16 +2249,16 @@ }, { "name": "league/oauth1-client", - "version": "v1.10.1", + "version": "v1.11.0", "source": { "type": "git", "url": "https://github.com/thephpleague/oauth1-client.git", - "reference": "d6365b901b5c287dd41f143033315e2f777e1167" + "reference": "f9c94b088837eb1aae1ad7c4f23eb65cc6993055" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/oauth1-client/zipball/d6365b901b5c287dd41f143033315e2f777e1167", - "reference": "d6365b901b5c287dd41f143033315e2f777e1167", + "url": "https://api.github.com/repos/thephpleague/oauth1-client/zipball/f9c94b088837eb1aae1ad7c4f23eb65cc6993055", + "reference": "f9c94b088837eb1aae1ad7c4f23eb65cc6993055", "shasum": "" }, "require": { @@ -2381,9 +2319,183 @@ ], "support": { "issues": "https://github.com/thephpleague/oauth1-client/issues", - "source": "https://github.com/thephpleague/oauth1-client/tree/v1.10.1" + "source": "https://github.com/thephpleague/oauth1-client/tree/v1.11.0" }, - "time": "2022-04-15T14:02:14+00:00" + "time": "2024-12-10T19:59:05+00:00" + }, + { + "name": "league/uri", + "version": "7.5.1", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/uri.git", + "reference": "81fb5145d2644324614cc532b28efd0215bda430" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/uri/zipball/81fb5145d2644324614cc532b28efd0215bda430", + "reference": "81fb5145d2644324614cc532b28efd0215bda430", + "shasum": "" + }, + "require": { + "league/uri-interfaces": "^7.5", + "php": "^8.1" + }, + "conflict": { + "league/uri-schemes": "^1.0" + }, + "suggest": { + "ext-bcmath": "to improve IPV4 host parsing", + "ext-fileinfo": "to create Data URI from file contennts", + "ext-gmp": "to improve IPV4 host parsing", + "ext-intl": "to handle IDN host with the best performance", + "jeremykendall/php-domain-parser": "to resolve Public Suffix and Top Level Domain", + "league/uri-components": "Needed to easily manipulate URI objects components", + "php-64bit": "to improve IPV4 host parsing", + "symfony/polyfill-intl-idn": "to handle IDN host via the Symfony polyfill if ext-intl is not present" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "7.x-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Uri\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ignace Nyamagana Butera", + "email": "nyamsprod@gmail.com", + "homepage": "https://nyamsprod.com" + } + ], + "description": "URI manipulation library", + "homepage": "https://uri.thephpleague.com", + "keywords": [ + "data-uri", + "file-uri", + "ftp", + "hostname", + "http", + "https", + "middleware", + "parse_str", + "parse_url", + "psr-7", + "query-string", + "querystring", + "rfc3986", + "rfc3987", + "rfc6570", + "uri", + "uri-template", + "url", + "ws" + ], + "support": { + "docs": "https://uri.thephpleague.com", + "forum": "https://thephpleague.slack.com", + "issues": "https://github.com/thephpleague/uri-src/issues", + "source": "https://github.com/thephpleague/uri/tree/7.5.1" + }, + "funding": [ + { + "url": "https://github.com/sponsors/nyamsprod", + "type": "github" + } + ], + "time": "2024-12-08T08:40:02+00:00" + }, + { + "name": "league/uri-interfaces", + "version": "7.5.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/uri-interfaces.git", + "reference": "08cfc6c4f3d811584fb09c37e2849e6a7f9b0742" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/uri-interfaces/zipball/08cfc6c4f3d811584fb09c37e2849e6a7f9b0742", + "reference": "08cfc6c4f3d811584fb09c37e2849e6a7f9b0742", + "shasum": "" + }, + "require": { + "ext-filter": "*", + "php": "^8.1", + "psr/http-factory": "^1", + "psr/http-message": "^1.1 || ^2.0" + }, + "suggest": { + "ext-bcmath": "to improve IPV4 host parsing", + "ext-gmp": "to improve IPV4 host parsing", + "ext-intl": "to handle IDN host with the best performance", + "php-64bit": "to improve IPV4 host parsing", + "symfony/polyfill-intl-idn": "to handle IDN host via the Symfony polyfill if ext-intl is not present" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "7.x-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Uri\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ignace Nyamagana Butera", + "email": "nyamsprod@gmail.com", + "homepage": "https://nyamsprod.com" + } + ], + "description": "Common interfaces and classes for URI representation and interaction", + "homepage": "https://uri.thephpleague.com", + "keywords": [ + "data-uri", + "file-uri", + "ftp", + "hostname", + "http", + "https", + "parse_str", + "parse_url", + "psr-7", + "query-string", + "querystring", + "rfc3986", + "rfc3987", + "rfc6570", + "uri", + "url", + "ws" + ], + "support": { + "docs": "https://uri.thephpleague.com", + "forum": "https://thephpleague.slack.com", + "issues": "https://github.com/thephpleague/uri-src/issues", + "source": "https://github.com/thephpleague/uri-interfaces/tree/7.5.0" + }, + "funding": [ + { + "url": "https://github.com/sponsors/nyamsprod", + "type": "github" + } + ], + "time": "2024-12-08T08:18:47+00:00" }, { "name": "mobiledetect/mobiledetectlib", @@ -2449,16 +2561,16 @@ }, { "name": "monolog/monolog", - "version": "3.7.0", + "version": "3.8.1", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "f4393b648b78a5408747de94fca38beb5f7e9ef8" + "reference": "aef6ee73a77a66e404dd6540934a9ef1b3c855b4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/f4393b648b78a5408747de94fca38beb5f7e9ef8", - "reference": "f4393b648b78a5408747de94fca38beb5f7e9ef8", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/aef6ee73a77a66e404dd6540934a9ef1b3c855b4", + "reference": "aef6ee73a77a66e404dd6540934a9ef1b3c855b4", "shasum": "" }, "require": { @@ -2478,12 +2590,14 @@ "guzzlehttp/psr7": "^2.2", "mongodb/mongodb": "^1.8", "php-amqplib/php-amqplib": "~2.4 || ^3", - "phpstan/phpstan": "^1.9", - "phpstan/phpstan-deprecation-rules": "^1.0", - "phpstan/phpstan-strict-rules": "^1.4", - "phpunit/phpunit": "^10.5.17", + "php-console/php-console": "^3.1.8", + "phpstan/phpstan": "^2", + "phpstan/phpstan-deprecation-rules": "^2", + "phpstan/phpstan-strict-rules": "^2", + "phpunit/phpunit": "^10.5.17 || ^11.0.7", "predis/predis": "^1.1 || ^2", - "ruflin/elastica": "^7", + "rollbar/rollbar": "^4.0", + "ruflin/elastica": "^7 || ^8", "symfony/mailer": "^5.4 || ^6", "symfony/mime": "^5.4 || ^6" }, @@ -2534,7 +2648,7 @@ ], "support": { "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/3.7.0" + "source": "https://github.com/Seldaek/monolog/tree/3.8.1" }, "funding": [ { @@ -2546,56 +2660,51 @@ "type": "tidelift" } ], - "time": "2024-06-28T09:40:51+00:00" + "time": "2024-12-05T17:15:07+00:00" }, { "name": "nesbot/carbon", - "version": "2.72.5", + "version": "3.8.4", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "afd46589c216118ecd48ff2b95d77596af1e57ed" + "reference": "129700ed449b1f02d70272d2ac802357c8c30c58" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/afd46589c216118ecd48ff2b95d77596af1e57ed", - "reference": "afd46589c216118ecd48ff2b95d77596af1e57ed", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/129700ed449b1f02d70272d2ac802357c8c30c58", + "reference": "129700ed449b1f02d70272d2ac802357c8c30c58", "shasum": "" }, "require": { - "carbonphp/carbon-doctrine-types": "*", + "carbonphp/carbon-doctrine-types": "<100.0", "ext-json": "*", - "php": "^7.1.8 || ^8.0", + "php": "^8.1", "psr/clock": "^1.0", + "symfony/clock": "^6.3 || ^7.0", "symfony/polyfill-mbstring": "^1.0", - "symfony/polyfill-php80": "^1.16", - "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0" + "symfony/translation": "^4.4.18 || ^5.2.1|| ^6.0 || ^7.0" }, "provide": { "psr/clock-implementation": "1.0" }, "require-dev": { - "doctrine/dbal": "^2.0 || ^3.1.4 || ^4.0", - "doctrine/orm": "^2.7 || ^3.0", - "friendsofphp/php-cs-fixer": "^3.0", - "kylekatarnls/multi-tester": "^2.0", - "ondrejmirtes/better-reflection": "*", - "phpmd/phpmd": "^2.9", - "phpstan/extension-installer": "^1.0", - "phpstan/phpstan": "^0.12.99 || ^1.7.14", - "phpunit/php-file-iterator": "^2.0.5 || ^3.0.6", - "phpunit/phpunit": "^7.5.20 || ^8.5.26 || ^9.5.20", - "squizlabs/php_codesniffer": "^3.4" + "doctrine/dbal": "^3.6.3 || ^4.0", + "doctrine/orm": "^2.15.2 || ^3.0", + "friendsofphp/php-cs-fixer": "^3.57.2", + "kylekatarnls/multi-tester": "^2.5.3", + "ondrejmirtes/better-reflection": "^6.25.0.4", + "phpmd/phpmd": "^2.15.0", + "phpstan/extension-installer": "^1.3.1", + "phpstan/phpstan": "^1.11.2", + "phpunit/phpunit": "^10.5.20", + "squizlabs/php_codesniffer": "^3.9.0" }, "bin": [ "bin/carbon" ], "type": "library", "extra": { - "branch-alias": { - "dev-master": "3.x-dev", - "dev-2.x": "2.x-dev" - }, "laravel": { "providers": [ "Carbon\\Laravel\\ServiceProvider" @@ -2605,6 +2714,10 @@ "includes": [ "extension.neon" ] + }, + "branch-alias": { + "dev-2.x": "2.x-dev", + "dev-master": "3.x-dev" } }, "autoload": { @@ -2653,7 +2766,7 @@ "type": "tidelift" } ], - "time": "2024-06-03T19:18:41+00:00" + "time": "2024-12-27T09:25:35+00:00" }, { "name": "nette/schema", @@ -2863,32 +2976,31 @@ }, { "name": "nunomaduro/termwind", - "version": "v1.16.0", + "version": "v2.3.0", "source": { "type": "git", "url": "https://github.com/nunomaduro/termwind.git", - "reference": "dcf1ec3dfa36137b7ce41d43866644a7ab8fc257" + "reference": "52915afe6a1044e8b9cee1bcff836fb63acf9cda" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/termwind/zipball/dcf1ec3dfa36137b7ce41d43866644a7ab8fc257", - "reference": "dcf1ec3dfa36137b7ce41d43866644a7ab8fc257", + "url": "https://api.github.com/repos/nunomaduro/termwind/zipball/52915afe6a1044e8b9cee1bcff836fb63acf9cda", + "reference": "52915afe6a1044e8b9cee1bcff836fb63acf9cda", "shasum": "" }, "require": { "ext-mbstring": "*", - "php": "^8.1", - "symfony/console": "^6.4.12" + "php": "^8.2", + "symfony/console": "^7.1.8" }, "require-dev": { - "illuminate/console": "^10.48.22", - "illuminate/support": "^10.48.22", - "laravel/pint": "^1.18.1", - "pestphp/pest": "^2", - "pestphp/pest-plugin-mock": "2.0.0", - "phpstan/phpstan": "^1.12.6", + "illuminate/console": "^11.33.2", + "laravel/pint": "^1.18.2", + "mockery/mockery": "^1.6.12", + "pestphp/pest": "^2.36.0", + "phpstan/phpstan": "^1.12.11", "phpstan/phpstan-strict-rules": "^1.6.1", - "symfony/var-dumper": "^6.4.11", + "symfony/var-dumper": "^7.1.8", "thecodingmachine/phpstan-strict-rules": "^1.0.0" }, "type": "library", @@ -2897,6 +3009,9 @@ "providers": [ "Termwind\\Laravel\\TermwindServiceProvider" ] + }, + "branch-alias": { + "dev-2.x": "2.x-dev" } }, "autoload": { @@ -2928,7 +3043,7 @@ ], "support": { "issues": "https://github.com/nunomaduro/termwind/issues", - "source": "https://github.com/nunomaduro/termwind/tree/v1.16.0" + "source": "https://github.com/nunomaduro/termwind/tree/v2.3.0" }, "funding": [ { @@ -2944,20 +3059,20 @@ "type": "github" } ], - "time": "2024-10-15T15:27:12+00:00" + "time": "2024-11-21T10:39:51+00:00" }, { "name": "opcodesio/log-viewer", - "version": "v3.11.2", + "version": "v3.12.0", "source": { "type": "git", "url": "https://github.com/opcodesio/log-viewer.git", - "reference": "993492fd9482771e928d47d45b323825ca7bebc0" + "reference": "e9e4c41084be78a07e69924e71f943f366fe31d9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/opcodesio/log-viewer/zipball/993492fd9482771e928d47d45b323825ca7bebc0", - "reference": "993492fd9482771e928d47d45b323825ca7bebc0", + "url": "https://api.github.com/repos/opcodesio/log-viewer/zipball/e9e4c41084be78a07e69924e71f943f366fe31d9", + "reference": "e9e4c41084be78a07e69924e71f943f366fe31d9", "shasum": "" }, "require": { @@ -2984,12 +3099,12 @@ "type": "library", "extra": { "laravel": { - "providers": [ - "Opcodes\\LogViewer\\LogViewerServiceProvider" - ], "aliases": { "LogViewer": "Opcodes\\LogViewer\\Facades\\LogViewer" - } + }, + "providers": [ + "Opcodes\\LogViewer\\LogViewerServiceProvider" + ] } }, "autoload": { @@ -3020,7 +3135,7 @@ ], "support": { "issues": "https://github.com/opcodesio/log-viewer/issues", - "source": "https://github.com/opcodesio/log-viewer/tree/v3.11.2" + "source": "https://github.com/opcodesio/log-viewer/tree/v3.12.0" }, "funding": [ { @@ -3032,7 +3147,7 @@ "type": "github" } ], - "time": "2024-10-04T04:01:15+00:00" + "time": "2024-11-11T11:17:46+00:00" }, { "name": "opcodesio/mail-parser", @@ -3355,16 +3470,16 @@ }, { "name": "phpseclib/phpseclib", - "version": "3.0.42", + "version": "3.0.43", "source": { "type": "git", "url": "https://github.com/phpseclib/phpseclib.git", - "reference": "db92f1b1987b12b13f248fe76c3a52cadb67bb98" + "reference": "709ec107af3cb2f385b9617be72af8cf62441d02" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/db92f1b1987b12b13f248fe76c3a52cadb67bb98", - "reference": "db92f1b1987b12b13f248fe76c3a52cadb67bb98", + "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/709ec107af3cb2f385b9617be72af8cf62441d02", + "reference": "709ec107af3cb2f385b9617be72af8cf62441d02", "shasum": "" }, "require": { @@ -3445,7 +3560,7 @@ ], "support": { "issues": "https://github.com/phpseclib/phpseclib/issues", - "source": "https://github.com/phpseclib/phpseclib/tree/3.0.42" + "source": "https://github.com/phpseclib/phpseclib/tree/3.0.43" }, "funding": [ { @@ -3461,7 +3576,7 @@ "type": "tidelift" } ], - "time": "2024-09-16T03:06:04+00:00" + "time": "2024-12-14T21:12:59+00:00" }, { "name": "psr/clock", @@ -3877,16 +3992,16 @@ }, { "name": "psy/psysh", - "version": "v0.12.4", + "version": "v0.12.7", "source": { "type": "git", "url": "https://github.com/bobthecow/psysh.git", - "reference": "2fd717afa05341b4f8152547f142cd2f130f6818" + "reference": "d73fa3c74918ef4522bb8a3bf9cab39161c4b57c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/bobthecow/psysh/zipball/2fd717afa05341b4f8152547f142cd2f130f6818", - "reference": "2fd717afa05341b4f8152547f142cd2f130f6818", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/d73fa3c74918ef4522bb8a3bf9cab39161c4b57c", + "reference": "d73fa3c74918ef4522bb8a3bf9cab39161c4b57c", "shasum": "" }, "require": { @@ -3913,12 +4028,12 @@ ], "type": "library", "extra": { - "branch-alias": { - "dev-main": "0.12.x-dev" - }, "bamarni-bin": { "bin-links": false, "forward-command": false + }, + "branch-alias": { + "dev-main": "0.12.x-dev" } }, "autoload": { @@ -3950,9 +4065,9 @@ ], "support": { "issues": "https://github.com/bobthecow/psysh/issues", - "source": "https://github.com/bobthecow/psysh/tree/v0.12.4" + "source": "https://github.com/bobthecow/psysh/tree/v0.12.7" }, - "time": "2024-06-10T01:18:23+00:00" + "time": "2024-12-10T01:58:33+00:00" }, { "name": "ralouphie/getallheaders", @@ -4181,16 +4296,16 @@ }, { "name": "socialiteproviders/manager", - "version": "v4.6.0", + "version": "v4.7.0", "source": { "type": "git", "url": "https://github.com/SocialiteProviders/Manager.git", - "reference": "dea5190981c31b89e52259da9ab1ca4e2b258b21" + "reference": "ab0691b82cec77efd90154c78f1854903455c82f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/SocialiteProviders/Manager/zipball/dea5190981c31b89e52259da9ab1ca4e2b258b21", - "reference": "dea5190981c31b89e52259da9ab1ca4e2b258b21", + "url": "https://api.github.com/repos/SocialiteProviders/Manager/zipball/ab0691b82cec77efd90154c78f1854903455c82f", + "reference": "ab0691b82cec77efd90154c78f1854903455c82f", "shasum": "" }, "require": { @@ -4251,7 +4366,7 @@ "issues": "https://github.com/socialiteproviders/manager/issues", "source": "https://github.com/socialiteproviders/manager" }, - "time": "2024-05-04T07:57:39+00:00" + "time": "2024-11-10T01:56:18+00:00" }, { "name": "socialiteproviders/steam", @@ -4305,16 +4420,16 @@ }, { "name": "spatie/laravel-permission", - "version": "6.9.0", + "version": "6.10.1", "source": { "type": "git", "url": "https://github.com/spatie/laravel-permission.git", - "reference": "fe973a58b44380d0e8620107259b7bda22f70408" + "reference": "8bb69d6d67387f7a00d93a2f5fab98860f06e704" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-permission/zipball/fe973a58b44380d0e8620107259b7bda22f70408", - "reference": "fe973a58b44380d0e8620107259b7bda22f70408", + "url": "https://api.github.com/repos/spatie/laravel-permission/zipball/8bb69d6d67387f7a00d93a2f5fab98860f06e704", + "reference": "8bb69d6d67387f7a00d93a2f5fab98860f06e704", "shasum": "" }, "require": { @@ -4325,20 +4440,21 @@ "php": "^8.0" }, "require-dev": { + "larastan/larastan": "^1.0|^2.0", "laravel/passport": "^11.0|^12.0", "orchestra/testbench": "^6.23|^7.0|^8.0|^9.0", "phpunit/phpunit": "^9.4|^10.1" }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "6.x-dev", - "dev-master": "6.x-dev" - }, "laravel": { "providers": [ "Spatie\\Permission\\PermissionServiceProvider" ] + }, + "branch-alias": { + "dev-main": "6.x-dev", + "dev-master": "6.x-dev" } }, "autoload": { @@ -4375,7 +4491,7 @@ ], "support": { "issues": "https://github.com/spatie/laravel-permission/issues", - "source": "https://github.com/spatie/laravel-permission/tree/6.9.0" + "source": "https://github.com/spatie/laravel-permission/tree/6.10.1" }, "funding": [ { @@ -4383,51 +4499,124 @@ "type": "github" } ], - "time": "2024-06-22T23:04:52+00:00" + "time": "2024-11-08T18:45:41+00:00" }, { - "name": "symfony/console", - "version": "v6.4.13", + "name": "symfony/clock", + "version": "v7.2.0", "source": { "type": "git", - "url": "https://github.com/symfony/console.git", - "reference": "f793dd5a7d9ae9923e35d0503d08ba734cec1d79" + "url": "https://github.com/symfony/clock.git", + "reference": "b81435fbd6648ea425d1ee96a2d8e68f4ceacd24" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/f793dd5a7d9ae9923e35d0503d08ba734cec1d79", - "reference": "f793dd5a7d9ae9923e35d0503d08ba734cec1d79", + "url": "https://api.github.com/repos/symfony/clock/zipball/b81435fbd6648ea425d1ee96a2d8e68f4ceacd24", + "reference": "b81435fbd6648ea425d1ee96a2d8e68f4ceacd24", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.5|^3", + "php": ">=8.2", + "psr/clock": "^1.0", + "symfony/polyfill-php83": "^1.28" + }, + "provide": { + "psr/clock-implementation": "1.0" + }, + "type": "library", + "autoload": { + "files": [ + "Resources/now.php" + ], + "psr-4": { + "Symfony\\Component\\Clock\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Decouples applications from the system clock", + "homepage": "https://symfony.com", + "keywords": [ + "clock", + "psr20", + "time" + ], + "support": { + "source": "https://github.com/symfony/clock/tree/v7.2.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-09-25T14:21:43+00:00" + }, + { + "name": "symfony/console", + "version": "v7.2.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/console.git", + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/console/zipball/fefcc18c0f5d0efe3ab3152f15857298868dc2c3", + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3", + "shasum": "" + }, + "require": { + "php": ">=8.2", "symfony/polyfill-mbstring": "~1.0", "symfony/service-contracts": "^2.5|^3", - "symfony/string": "^5.4|^6.0|^7.0" + "symfony/string": "^6.4|^7.0" }, "conflict": { - "symfony/dependency-injection": "<5.4", - "symfony/dotenv": "<5.4", - "symfony/event-dispatcher": "<5.4", - "symfony/lock": "<5.4", - "symfony/process": "<5.4" + "symfony/dependency-injection": "<6.4", + "symfony/dotenv": "<6.4", + "symfony/event-dispatcher": "<6.4", + "symfony/lock": "<6.4", + "symfony/process": "<6.4" }, "provide": { "psr/log-implementation": "1.0|2.0|3.0" }, "require-dev": { "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0|^7.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/event-dispatcher": "^5.4|^6.0|^7.0", + "symfony/config": "^6.4|^7.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/event-dispatcher": "^6.4|^7.0", "symfony/http-foundation": "^6.4|^7.0", "symfony/http-kernel": "^6.4|^7.0", - "symfony/lock": "^5.4|^6.0|^7.0", - "symfony/messenger": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.0|^7.0", - "symfony/stopwatch": "^5.4|^6.0|^7.0", - "symfony/var-dumper": "^5.4|^6.0|^7.0" + "symfony/lock": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/stopwatch": "^6.4|^7.0", + "symfony/var-dumper": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -4461,7 +4650,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.4.13" + "source": "https://github.com/symfony/console/tree/v7.2.1" }, "funding": [ { @@ -4477,20 +4666,20 @@ "type": "tidelift" } ], - "time": "2024-10-09T08:40:40+00:00" + "time": "2024-12-11T03:49:26+00:00" }, { "name": "symfony/css-selector", - "version": "v7.1.6", + "version": "v7.2.0", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "4aa4f6b3d6749c14d3aa815eef8226632e7bbc66" + "reference": "601a5ce9aaad7bf10797e3663faefce9e26c24e2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/4aa4f6b3d6749c14d3aa815eef8226632e7bbc66", - "reference": "4aa4f6b3d6749c14d3aa815eef8226632e7bbc66", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/601a5ce9aaad7bf10797e3663faefce9e26c24e2", + "reference": "601a5ce9aaad7bf10797e3663faefce9e26c24e2", "shasum": "" }, "require": { @@ -4526,7 +4715,7 @@ "description": "Converts CSS selectors to XPath expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/css-selector/tree/v7.1.6" + "source": "https://github.com/symfony/css-selector/tree/v7.2.0" }, "funding": [ { @@ -4542,20 +4731,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-09-25T14:21:43+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.5.0", + "version": "v3.5.1", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1" + "reference": "74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", - "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6", + "reference": "74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6", "shasum": "" }, "require": { @@ -4563,12 +4752,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4593,7 +4782,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.1" }, "funding": [ { @@ -4609,26 +4798,26 @@ "type": "tidelift" } ], - "time": "2024-04-18T09:32:20+00:00" + "time": "2024-09-25T14:20:29+00:00" }, { "name": "symfony/error-handler", - "version": "v6.4.13", + "version": "v7.2.1", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "e3c78742f86a5b65fe2ac4c4b6b776d92fd7ca0c" + "reference": "6150b89186573046167796fa5f3f76601d5145f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/e3c78742f86a5b65fe2ac4c4b6b776d92fd7ca0c", - "reference": "e3c78742f86a5b65fe2ac4c4b6b776d92fd7ca0c", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/6150b89186573046167796fa5f3f76601d5145f8", + "reference": "6150b89186573046167796fa5f3f76601d5145f8", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "psr/log": "^1|^2|^3", - "symfony/var-dumper": "^5.4|^6.0|^7.0" + "symfony/var-dumper": "^6.4|^7.0" }, "conflict": { "symfony/deprecation-contracts": "<2.5", @@ -4637,7 +4826,7 @@ "require-dev": { "symfony/deprecation-contracts": "^2.5|^3", "symfony/http-kernel": "^6.4|^7.0", - "symfony/serializer": "^5.4|^6.0|^7.0" + "symfony/serializer": "^6.4|^7.0" }, "bin": [ "Resources/bin/patch-type-declarations" @@ -4668,7 +4857,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v6.4.13" + "source": "https://github.com/symfony/error-handler/tree/v7.2.1" }, "funding": [ { @@ -4684,20 +4873,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2024-12-07T08:50:44+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v7.1.6", + "version": "v7.2.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "87254c78dd50721cfd015b62277a8281c5589702" + "reference": "910c5db85a5356d0fea57680defec4e99eb9c8c1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/87254c78dd50721cfd015b62277a8281c5589702", - "reference": "87254c78dd50721cfd015b62277a8281c5589702", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/910c5db85a5356d0fea57680defec4e99eb9c8c1", + "reference": "910c5db85a5356d0fea57680defec4e99eb9c8c1", "shasum": "" }, "require": { @@ -4748,7 +4937,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v7.1.6" + "source": "https://github.com/symfony/event-dispatcher/tree/v7.2.0" }, "funding": [ { @@ -4764,20 +4953,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-09-25T14:21:43+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v3.5.0", + "version": "v3.5.1", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50" + "reference": "7642f5e970b672283b7823222ae8ef8bbc160b9f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/8f93aec25d41b72493c6ddff14e916177c9efc50", - "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/7642f5e970b672283b7823222ae8ef8bbc160b9f", + "reference": "7642f5e970b672283b7823222ae8ef8bbc160b9f", "shasum": "" }, "require": { @@ -4786,12 +4975,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4824,7 +5013,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.0" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.1" }, "funding": [ { @@ -4840,27 +5029,27 @@ "type": "tidelift" } ], - "time": "2024-04-18T09:32:20+00:00" + "time": "2024-09-25T14:20:29+00:00" }, { "name": "symfony/finder", - "version": "v6.4.13", + "version": "v7.2.0", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "daea9eca0b08d0ed1dc9ab702a46128fd1be4958" + "reference": "6de263e5868b9a137602dd1e33e4d48bfae99c49" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/daea9eca0b08d0ed1dc9ab702a46128fd1be4958", - "reference": "daea9eca0b08d0ed1dc9ab702a46128fd1be4958", + "url": "https://api.github.com/repos/symfony/finder/zipball/6de263e5868b9a137602dd1e33e4d48bfae99c49", + "reference": "6de263e5868b9a137602dd1e33e4d48bfae99c49", "shasum": "" }, "require": { - "php": ">=8.1" + "php": ">=8.2" }, "require-dev": { - "symfony/filesystem": "^6.0|^7.0" + "symfony/filesystem": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -4888,7 +5077,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v6.4.13" + "source": "https://github.com/symfony/finder/tree/v7.2.0" }, "funding": [ { @@ -4904,40 +5093,41 @@ "type": "tidelift" } ], - "time": "2024-10-01T08:30:56+00:00" + "time": "2024-10-23T06:56:12+00:00" }, { "name": "symfony/http-foundation", - "version": "v6.4.13", + "version": "v7.2.0", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "4c0341b3e0a7291e752c69d2a1ed9a84b68d604c" + "reference": "e88a66c3997859532bc2ddd6dd8f35aba2711744" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/4c0341b3e0a7291e752c69d2a1ed9a84b68d604c", - "reference": "4c0341b3e0a7291e752c69d2a1ed9a84b68d604c", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/e88a66c3997859532bc2ddd6dd8f35aba2711744", + "reference": "e88a66c3997859532bc2ddd6dd8f35aba2711744", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.5|^3", + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3.0", "symfony/polyfill-mbstring": "~1.1", "symfony/polyfill-php83": "^1.27" }, "conflict": { - "symfony/cache": "<6.3" + "doctrine/dbal": "<3.6", + "symfony/cache": "<6.4.12|>=7.0,<7.1.5" }, "require-dev": { - "doctrine/dbal": "^2.13.1|^3|^4", + "doctrine/dbal": "^3.6|^4", "predis/predis": "^1.1|^2.0", - "symfony/cache": "^6.3|^7.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/expression-language": "^5.4|^6.0|^7.0", - "symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4|^7.0", - "symfony/mime": "^5.4|^6.0|^7.0", - "symfony/rate-limiter": "^5.4|^6.0|^7.0" + "symfony/cache": "^6.4.12|^7.1.5", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/expression-language": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/mime": "^6.4|^7.0", + "symfony/rate-limiter": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -4965,7 +5155,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v6.4.13" + "source": "https://github.com/symfony/http-foundation/tree/v7.2.0" }, "funding": [ { @@ -4981,77 +5171,77 @@ "type": "tidelift" } ], - "time": "2024-10-11T19:20:58+00:00" + "time": "2024-11-13T18:58:46+00:00" }, { "name": "symfony/http-kernel", - "version": "v6.4.13", + "version": "v7.2.1", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "4474015c363ec0cd3bf47d55657e68630dbae66e" + "reference": "d8ae58eecae44c8e66833e76cc50a4ad3c002d97" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/4474015c363ec0cd3bf47d55657e68630dbae66e", - "reference": "4474015c363ec0cd3bf47d55657e68630dbae66e", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d8ae58eecae44c8e66833e76cc50a4ad3c002d97", + "reference": "d8ae58eecae44c8e66833e76cc50a4ad3c002d97", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "psr/log": "^1|^2|^3", "symfony/deprecation-contracts": "^2.5|^3", "symfony/error-handler": "^6.4|^7.0", - "symfony/event-dispatcher": "^5.4|^6.0|^7.0", + "symfony/event-dispatcher": "^6.4|^7.0", "symfony/http-foundation": "^6.4|^7.0", "symfony/polyfill-ctype": "^1.8" }, "conflict": { - "symfony/browser-kit": "<5.4", - "symfony/cache": "<5.4", - "symfony/config": "<6.1", - "symfony/console": "<5.4", + "symfony/browser-kit": "<6.4", + "symfony/cache": "<6.4", + "symfony/config": "<6.4", + "symfony/console": "<6.4", "symfony/dependency-injection": "<6.4", - "symfony/doctrine-bridge": "<5.4", - "symfony/form": "<5.4", - "symfony/http-client": "<5.4", + "symfony/doctrine-bridge": "<6.4", + "symfony/form": "<6.4", + "symfony/http-client": "<6.4", "symfony/http-client-contracts": "<2.5", - "symfony/mailer": "<5.4", - "symfony/messenger": "<5.4", - "symfony/translation": "<5.4", + "symfony/mailer": "<6.4", + "symfony/messenger": "<6.4", + "symfony/translation": "<6.4", "symfony/translation-contracts": "<2.5", - "symfony/twig-bridge": "<5.4", + "symfony/twig-bridge": "<6.4", "symfony/validator": "<6.4", - "symfony/var-dumper": "<6.3", - "twig/twig": "<2.13" + "symfony/var-dumper": "<6.4", + "twig/twig": "<3.12" }, "provide": { "psr/log-implementation": "1.0|2.0|3.0" }, "require-dev": { "psr/cache": "^1.0|^2.0|^3.0", - "symfony/browser-kit": "^5.4|^6.0|^7.0", - "symfony/clock": "^6.2|^7.0", - "symfony/config": "^6.1|^7.0", - "symfony/console": "^5.4|^6.0|^7.0", - "symfony/css-selector": "^5.4|^6.0|^7.0", + "symfony/browser-kit": "^6.4|^7.0", + "symfony/clock": "^6.4|^7.0", + "symfony/config": "^6.4|^7.0", + "symfony/console": "^6.4|^7.0", + "symfony/css-selector": "^6.4|^7.0", "symfony/dependency-injection": "^6.4|^7.0", - "symfony/dom-crawler": "^5.4|^6.0|^7.0", - "symfony/expression-language": "^5.4|^6.0|^7.0", - "symfony/finder": "^5.4|^6.0|^7.0", + "symfony/dom-crawler": "^6.4|^7.0", + "symfony/expression-language": "^6.4|^7.0", + "symfony/finder": "^6.4|^7.0", "symfony/http-client-contracts": "^2.5|^3", - "symfony/process": "^5.4|^6.0|^7.0", - "symfony/property-access": "^5.4.5|^6.0.5|^7.0", - "symfony/routing": "^5.4|^6.0|^7.0", - "symfony/serializer": "^6.4.4|^7.0.4", - "symfony/stopwatch": "^5.4|^6.0|^7.0", - "symfony/translation": "^5.4|^6.0|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/property-access": "^7.1", + "symfony/routing": "^6.4|^7.0", + "symfony/serializer": "^7.1", + "symfony/stopwatch": "^6.4|^7.0", + "symfony/translation": "^6.4|^7.0", "symfony/translation-contracts": "^2.5|^3", - "symfony/uid": "^5.4|^6.0|^7.0", + "symfony/uid": "^6.4|^7.0", "symfony/validator": "^6.4|^7.0", - "symfony/var-dumper": "^5.4|^6.4|^7.0", - "symfony/var-exporter": "^6.2|^7.0", - "twig/twig": "^2.13|^3.0.4" + "symfony/var-dumper": "^6.4|^7.0", + "symfony/var-exporter": "^6.4|^7.0", + "twig/twig": "^3.12" }, "type": "library", "autoload": { @@ -5079,7 +5269,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v6.4.13" + "source": "https://github.com/symfony/http-kernel/tree/v7.2.1" }, "funding": [ { @@ -5095,43 +5285,43 @@ "type": "tidelift" } ], - "time": "2024-10-27T13:00:29+00:00" + "time": "2024-12-11T12:09:10+00:00" }, { "name": "symfony/mailer", - "version": "v6.4.13", + "version": "v7.2.0", "source": { "type": "git", "url": "https://github.com/symfony/mailer.git", - "reference": "c2f7e0d8d7ac8fe25faccf5d8cac462805db2663" + "reference": "e4d358702fb66e4c8a2af08e90e7271a62de39cc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/c2f7e0d8d7ac8fe25faccf5d8cac462805db2663", - "reference": "c2f7e0d8d7ac8fe25faccf5d8cac462805db2663", + "url": "https://api.github.com/repos/symfony/mailer/zipball/e4d358702fb66e4c8a2af08e90e7271a62de39cc", + "reference": "e4d358702fb66e4c8a2af08e90e7271a62de39cc", "shasum": "" }, "require": { "egulias/email-validator": "^2.1.10|^3|^4", - "php": ">=8.1", + "php": ">=8.2", "psr/event-dispatcher": "^1", "psr/log": "^1|^2|^3", - "symfony/event-dispatcher": "^5.4|^6.0|^7.0", - "symfony/mime": "^6.2|^7.0", + "symfony/event-dispatcher": "^6.4|^7.0", + "symfony/mime": "^7.2", "symfony/service-contracts": "^2.5|^3" }, "conflict": { "symfony/http-client-contracts": "<2.5", - "symfony/http-kernel": "<5.4", - "symfony/messenger": "<6.2", - "symfony/mime": "<6.2", - "symfony/twig-bridge": "<6.2.1" + "symfony/http-kernel": "<6.4", + "symfony/messenger": "<6.4", + "symfony/mime": "<6.4", + "symfony/twig-bridge": "<6.4" }, "require-dev": { - "symfony/console": "^5.4|^6.0|^7.0", - "symfony/http-client": "^5.4|^6.0|^7.0", - "symfony/messenger": "^6.2|^7.0", - "symfony/twig-bridge": "^6.2|^7.0" + "symfony/console": "^6.4|^7.0", + "symfony/http-client": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/twig-bridge": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -5159,7 +5349,7 @@ "description": "Helps sending emails", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/mailer/tree/v6.4.13" + "source": "https://github.com/symfony/mailer/tree/v7.2.0" }, "funding": [ { @@ -5175,25 +5365,24 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2024-11-25T15:21:05+00:00" }, { "name": "symfony/mime", - "version": "v6.4.13", + "version": "v7.2.1", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "1de1cf14d99b12c7ebbb850491ec6ae3ed468855" + "reference": "7f9617fcf15cb61be30f8b252695ed5e2bfac283" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/1de1cf14d99b12c7ebbb850491ec6ae3ed468855", - "reference": "1de1cf14d99b12c7ebbb850491ec6ae3ed468855", + "url": "https://api.github.com/repos/symfony/mime/zipball/7f9617fcf15cb61be30f8b252695ed5e2bfac283", + "reference": "7f9617fcf15cb61be30f8b252695ed5e2bfac283", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.5|^3", + "php": ">=8.2", "symfony/polyfill-intl-idn": "^1.10", "symfony/polyfill-mbstring": "^1.0" }, @@ -5201,17 +5390,17 @@ "egulias/email-validator": "~3.0.0", "phpdocumentor/reflection-docblock": "<3.2.2", "phpdocumentor/type-resolver": "<1.4.0", - "symfony/mailer": "<5.4", + "symfony/mailer": "<6.4", "symfony/serializer": "<6.4.3|>7.0,<7.0.3" }, "require-dev": { "egulias/email-validator": "^2.1.10|^3.1|^4", "league/html-to-markdown": "^5.0", "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.4|^7.0", - "symfony/property-access": "^5.4|^6.0|^7.0", - "symfony/property-info": "^5.4|^6.0|^7.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/property-access": "^6.4|^7.0", + "symfony/property-info": "^6.4|^7.0", "symfony/serializer": "^6.4.3|^7.0.3" }, "type": "library", @@ -5244,7 +5433,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v6.4.13" + "source": "https://github.com/symfony/mime/tree/v7.2.1" }, "funding": [ { @@ -5260,7 +5449,7 @@ "type": "tidelift" } ], - "time": "2024-10-25T15:07:50+00:00" + "time": "2024-12-07T08:50:44+00:00" }, { "name": "symfony/polyfill-ctype", @@ -5288,8 +5477,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -5364,8 +5553,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -5443,8 +5632,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -5525,8 +5714,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -5609,8 +5798,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -5683,8 +5872,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -5763,8 +5952,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -5845,8 +6034,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -5900,20 +6089,20 @@ }, { "name": "symfony/process", - "version": "v6.4.13", + "version": "v7.2.0", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "1f9f59b46880201629df3bd950fc5ae8c55b960f" + "reference": "d34b22ba9390ec19d2dd966c40aa9e8462f27a7e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/1f9f59b46880201629df3bd950fc5ae8c55b960f", - "reference": "1f9f59b46880201629df3bd950fc5ae8c55b960f", + "url": "https://api.github.com/repos/symfony/process/zipball/d34b22ba9390ec19d2dd966c40aa9e8462f27a7e", + "reference": "d34b22ba9390ec19d2dd966c40aa9e8462f27a7e", "shasum": "" }, "require": { - "php": ">=8.1" + "php": ">=8.2" }, "type": "library", "autoload": { @@ -5941,7 +6130,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.4.13" + "source": "https://github.com/symfony/process/tree/v7.2.0" }, "funding": [ { @@ -5957,20 +6146,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2024-11-06T14:24:19+00:00" }, { "name": "symfony/psr-http-message-bridge", - "version": "v7.1.6", + "version": "v7.2.0", "source": { "type": "git", "url": "https://github.com/symfony/psr-http-message-bridge.git", - "reference": "f16471bb19f6685b9ccf0a2c03c213840ae68cd6" + "reference": "03f2f72319e7acaf2a9f6fcbe30ef17eec51594f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/psr-http-message-bridge/zipball/f16471bb19f6685b9ccf0a2c03c213840ae68cd6", - "reference": "f16471bb19f6685b9ccf0a2c03c213840ae68cd6", + "url": "https://api.github.com/repos/symfony/psr-http-message-bridge/zipball/03f2f72319e7acaf2a9f6fcbe30ef17eec51594f", + "reference": "03f2f72319e7acaf2a9f6fcbe30ef17eec51594f", "shasum": "" }, "require": { @@ -6024,7 +6213,7 @@ "psr-7" ], "support": { - "source": "https://github.com/symfony/psr-http-message-bridge/tree/v7.1.6" + "source": "https://github.com/symfony/psr-http-message-bridge/tree/v7.2.0" }, "funding": [ { @@ -6040,40 +6229,38 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-09-26T08:57:56+00:00" }, { "name": "symfony/routing", - "version": "v6.4.13", + "version": "v7.2.0", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "640a74250d13f9c30d5ca045b6aaaabcc8215278" + "reference": "e10a2450fa957af6c448b9b93c9010a4e4c0725e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/640a74250d13f9c30d5ca045b6aaaabcc8215278", - "reference": "640a74250d13f9c30d5ca045b6aaaabcc8215278", + "url": "https://api.github.com/repos/symfony/routing/zipball/e10a2450fa957af6c448b9b93c9010a4e4c0725e", + "reference": "e10a2450fa957af6c448b9b93c9010a4e4c0725e", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "symfony/deprecation-contracts": "^2.5|^3" }, "conflict": { - "doctrine/annotations": "<1.12", - "symfony/config": "<6.2", - "symfony/dependency-injection": "<5.4", - "symfony/yaml": "<5.4" + "symfony/config": "<6.4", + "symfony/dependency-injection": "<6.4", + "symfony/yaml": "<6.4" }, "require-dev": { - "doctrine/annotations": "^1.12|^2", "psr/log": "^1|^2|^3", - "symfony/config": "^6.2|^7.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/expression-language": "^5.4|^6.0|^7.0", - "symfony/http-foundation": "^5.4|^6.0|^7.0", - "symfony/yaml": "^5.4|^6.0|^7.0" + "symfony/config": "^6.4|^7.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/expression-language": "^6.4|^7.0", + "symfony/http-foundation": "^6.4|^7.0", + "symfony/yaml": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -6107,7 +6294,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v6.4.13" + "source": "https://github.com/symfony/routing/tree/v7.2.0" }, "funding": [ { @@ -6123,20 +6310,20 @@ "type": "tidelift" } ], - "time": "2024-10-01T08:30:56+00:00" + "time": "2024-11-25T11:08:51+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.5.0", + "version": "v3.5.1", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f" + "reference": "e53260aabf78fb3d63f8d79d69ece59f80d5eda0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/bd1d9e59a81d8fa4acdcea3f617c581f7475a80f", - "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/e53260aabf78fb3d63f8d79d69ece59f80d5eda0", + "reference": "e53260aabf78fb3d63f8d79d69ece59f80d5eda0", "shasum": "" }, "require": { @@ -6149,12 +6336,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -6190,7 +6377,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.5.0" + "source": "https://github.com/symfony/service-contracts/tree/v3.5.1" }, "funding": [ { @@ -6206,20 +6393,20 @@ "type": "tidelift" } ], - "time": "2024-04-18T09:32:20+00:00" + "time": "2024-09-25T14:20:29+00:00" }, { "name": "symfony/string", - "version": "v7.1.6", + "version": "v7.2.0", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "61b72d66bf96c360a727ae6232df5ac83c71f626" + "reference": "446e0d146f991dde3e73f45f2c97a9faad773c82" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/61b72d66bf96c360a727ae6232df5ac83c71f626", - "reference": "61b72d66bf96c360a727ae6232df5ac83c71f626", + "url": "https://api.github.com/repos/symfony/string/zipball/446e0d146f991dde3e73f45f2c97a9faad773c82", + "reference": "446e0d146f991dde3e73f45f2c97a9faad773c82", "shasum": "" }, "require": { @@ -6277,7 +6464,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.1.6" + "source": "https://github.com/symfony/string/tree/v7.2.0" }, "funding": [ { @@ -6293,37 +6480,37 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-11-13T13:31:26+00:00" }, { "name": "symfony/translation", - "version": "v6.4.13", + "version": "v7.2.0", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "bee9bfabfa8b4045a66bf82520e492cddbaffa66" + "reference": "dc89e16b44048ceecc879054e5b7f38326ab6cc5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/bee9bfabfa8b4045a66bf82520e492cddbaffa66", - "reference": "bee9bfabfa8b4045a66bf82520e492cddbaffa66", + "url": "https://api.github.com/repos/symfony/translation/zipball/dc89e16b44048ceecc879054e5b7f38326ab6cc5", + "reference": "dc89e16b44048ceecc879054e5b7f38326ab6cc5", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", "symfony/translation-contracts": "^2.5|^3.0" }, "conflict": { - "symfony/config": "<5.4", - "symfony/console": "<5.4", - "symfony/dependency-injection": "<5.4", + "symfony/config": "<6.4", + "symfony/console": "<6.4", + "symfony/dependency-injection": "<6.4", "symfony/http-client-contracts": "<2.5", - "symfony/http-kernel": "<5.4", + "symfony/http-kernel": "<6.4", "symfony/service-contracts": "<2.5", - "symfony/twig-bundle": "<5.4", - "symfony/yaml": "<5.4" + "symfony/twig-bundle": "<6.4", + "symfony/yaml": "<6.4" }, "provide": { "symfony/translation-implementation": "2.3|3.0" @@ -6331,17 +6518,17 @@ "require-dev": { "nikic/php-parser": "^4.18|^5.0", "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0|^7.0", - "symfony/console": "^5.4|^6.0|^7.0", - "symfony/dependency-injection": "^5.4|^6.0|^7.0", - "symfony/finder": "^5.4|^6.0|^7.0", + "symfony/config": "^6.4|^7.0", + "symfony/console": "^6.4|^7.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/finder": "^6.4|^7.0", "symfony/http-client-contracts": "^2.5|^3.0", - "symfony/http-kernel": "^5.4|^6.0|^7.0", - "symfony/intl": "^5.4|^6.0|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/intl": "^6.4|^7.0", "symfony/polyfill-intl-icu": "^1.21", - "symfony/routing": "^5.4|^6.0|^7.0", + "symfony/routing": "^6.4|^7.0", "symfony/service-contracts": "^2.5|^3", - "symfony/yaml": "^5.4|^6.0|^7.0" + "symfony/yaml": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -6372,7 +6559,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v6.4.13" + "source": "https://github.com/symfony/translation/tree/v7.2.0" }, "funding": [ { @@ -6388,20 +6575,20 @@ "type": "tidelift" } ], - "time": "2024-09-27T18:14:25+00:00" + "time": "2024-11-12T20:47:56+00:00" }, { "name": "symfony/translation-contracts", - "version": "v3.5.0", + "version": "v3.5.1", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "b9d2189887bb6b2e0367a9fc7136c5239ab9b05a" + "reference": "4667ff3bd513750603a09c8dedbea942487fb07c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/b9d2189887bb6b2e0367a9fc7136c5239ab9b05a", - "reference": "b9d2189887bb6b2e0367a9fc7136c5239ab9b05a", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/4667ff3bd513750603a09c8dedbea942487fb07c", + "reference": "4667ff3bd513750603a09c8dedbea942487fb07c", "shasum": "" }, "require": { @@ -6409,12 +6596,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -6450,7 +6637,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.5.0" + "source": "https://github.com/symfony/translation-contracts/tree/v3.5.1" }, "funding": [ { @@ -6466,28 +6653,28 @@ "type": "tidelift" } ], - "time": "2024-04-18T09:32:20+00:00" + "time": "2024-09-25T14:20:29+00:00" }, { "name": "symfony/uid", - "version": "v6.4.13", + "version": "v7.2.0", "source": { "type": "git", "url": "https://github.com/symfony/uid.git", - "reference": "18eb207f0436a993fffbdd811b5b8fa35fa5e007" + "reference": "2d294d0c48df244c71c105a169d0190bfb080426" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/uid/zipball/18eb207f0436a993fffbdd811b5b8fa35fa5e007", - "reference": "18eb207f0436a993fffbdd811b5b8fa35fa5e007", + "url": "https://api.github.com/repos/symfony/uid/zipball/2d294d0c48df244c71c105a169d0190bfb080426", + "reference": "2d294d0c48df244c71c105a169d0190bfb080426", "shasum": "" }, "require": { - "php": ">=8.1", + "php": ">=8.2", "symfony/polyfill-uuid": "^1.15" }, "require-dev": { - "symfony/console": "^5.4|^6.0|^7.0" + "symfony/console": "^6.4|^7.0" }, "type": "library", "autoload": { @@ -6524,7 +6711,7 @@ "uuid" ], "support": { - "source": "https://github.com/symfony/uid/tree/v6.4.13" + "source": "https://github.com/symfony/uid/tree/v7.2.0" }, "funding": [ { @@ -6540,38 +6727,36 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2024-09-25T14:21:43+00:00" }, { "name": "symfony/var-dumper", - "version": "v6.4.13", + "version": "v7.2.0", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "2acb151474ed8cb43624e3f41a0bf7c4c8ce4f41" + "reference": "c6a22929407dec8765d6e2b6ff85b800b245879c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/2acb151474ed8cb43624e3f41a0bf7c4c8ce4f41", - "reference": "2acb151474ed8cb43624e3f41a0bf7c4c8ce4f41", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/c6a22929407dec8765d6e2b6ff85b800b245879c", + "reference": "c6a22929407dec8765d6e2b6ff85b800b245879c", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.5|^3", + "php": ">=8.2", "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/console": "<5.4" + "symfony/console": "<6.4" }, "require-dev": { "ext-iconv": "*", - "symfony/console": "^5.4|^6.0|^7.0", - "symfony/error-handler": "^6.3|^7.0", - "symfony/http-kernel": "^5.4|^6.0|^7.0", - "symfony/process": "^5.4|^6.0|^7.0", - "symfony/uid": "^5.4|^6.0|^7.0", - "twig/twig": "^2.13|^3.0.4" + "symfony/console": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/uid": "^6.4|^7.0", + "twig/twig": "^3.12" }, "bin": [ "Resources/bin/var-dump-server" @@ -6609,7 +6794,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.4.13" + "source": "https://github.com/symfony/var-dumper/tree/v7.2.0" }, "funding": [ { @@ -6625,35 +6810,37 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:18:03+00:00" + "time": "2024-11-08T15:48:14+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", - "version": "v2.2.7", + "version": "v2.3.0", "source": { "type": "git", "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", - "reference": "83ee6f38df0a63106a9e4536e3060458b74ccedb" + "reference": "0d72ac1c00084279c1816675284073c5a337c20d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/83ee6f38df0a63106a9e4536e3060458b74ccedb", - "reference": "83ee6f38df0a63106a9e4536e3060458b74ccedb", + "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/0d72ac1c00084279c1816675284073c5a337c20d", + "reference": "0d72ac1c00084279c1816675284073c5a337c20d", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", - "php": "^5.5 || ^7.0 || ^8.0", - "symfony/css-selector": "^2.7 || ^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0" + "php": "^7.4 || ^8.0", + "symfony/css-selector": "^5.4 || ^6.0 || ^7.0" }, "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0 || ^7.5 || ^8.5.21 || ^9.5.10" + "phpstan/phpstan": "^2.0", + "phpstan/phpstan-phpunit": "^2.0", + "phpunit/phpunit": "^8.5.21 || ^9.5.10" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2.x-dev" + "dev-master": "2.x-dev" } }, "autoload": { @@ -6676,9 +6863,9 @@ "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", "support": { "issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues", - "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/v2.2.7" + "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/v2.3.0" }, - "time": "2023-12-08T13:03:43+00:00" + "time": "2024-12-21T16:25:41+00:00" }, { "name": "vlucas/phpdotenv", @@ -6766,16 +6953,16 @@ }, { "name": "voku/portable-ascii", - "version": "2.0.1", + "version": "2.0.3", "source": { "type": "git", "url": "https://github.com/voku/portable-ascii.git", - "reference": "b56450eed252f6801410d810c8e1727224ae0743" + "reference": "b1d923f88091c6bf09699efcd7c8a1b1bfd7351d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/voku/portable-ascii/zipball/b56450eed252f6801410d810c8e1727224ae0743", - "reference": "b56450eed252f6801410d810c8e1727224ae0743", + "url": "https://api.github.com/repos/voku/portable-ascii/zipball/b1d923f88091c6bf09699efcd7c8a1b1bfd7351d", + "reference": "b1d923f88091c6bf09699efcd7c8a1b1bfd7351d", "shasum": "" }, "require": { @@ -6800,7 +6987,7 @@ "authors": [ { "name": "Lars Moelleken", - "homepage": "http://www.moelleken.org/" + "homepage": "https://www.moelleken.org/" } ], "description": "Portable ASCII library - performance optimized (ascii) string functions for php.", @@ -6812,7 +6999,7 @@ ], "support": { "issues": "https://github.com/voku/portable-ascii/issues", - "source": "https://github.com/voku/portable-ascii/tree/2.0.1" + "source": "https://github.com/voku/portable-ascii/tree/2.0.3" }, "funding": [ { @@ -6836,7 +7023,7 @@ "type": "tidelift" } ], - "time": "2022-03-08T17:03:00+00:00" + "time": "2024-11-21T01:49:47+00:00" }, { "name": "webmozart/assert", @@ -6900,53 +7087,53 @@ "packages-dev": [ { "name": "barryvdh/laravel-ide-helper", - "version": "v2.15.1", + "version": "v3.4.0", "source": { "type": "git", "url": "https://github.com/barryvdh/laravel-ide-helper.git", - "reference": "77831852bb7bc54f287246d32eb91274eaf87f8b" + "reference": "2a41415f01bf3c409d200f6cdd940c1e7d86cfd3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/77831852bb7bc54f287246d32eb91274eaf87f8b", - "reference": "77831852bb7bc54f287246d32eb91274eaf87f8b", + "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/2a41415f01bf3c409d200f6cdd940c1e7d86cfd3", + "reference": "2a41415f01bf3c409d200f6cdd940c1e7d86cfd3", "shasum": "" }, "require": { - "barryvdh/reflection-docblock": "^2.0.6", + "barryvdh/reflection-docblock": "^2.2", "composer/class-map-generator": "^1.0", - "doctrine/dbal": "^2.6 || ^3.1.4", "ext-json": "*", - "illuminate/console": "^9 || ^10", - "illuminate/filesystem": "^9 || ^10", - "illuminate/support": "^9 || ^10", + "illuminate/console": "^11.15", + "illuminate/database": "^11.15", + "illuminate/filesystem": "^11.15", + "illuminate/support": "^11.15", "nikic/php-parser": "^4.18 || ^5", - "php": "^8.0", + "php": "^8.2", "phpdocumentor/type-resolver": "^1.1.0" }, "require-dev": { "ext-pdo_sqlite": "*", "friendsofphp/php-cs-fixer": "^3", - "illuminate/config": "^9 || ^10", - "illuminate/view": "^9 || ^10", + "illuminate/config": "^11.15", + "illuminate/view": "^11.15", "mockery/mockery": "^1.4", - "orchestra/testbench": "^7 || ^8", - "phpunit/phpunit": "^9", - "spatie/phpunit-snapshot-assertions": "^4", + "orchestra/testbench": "^9.2", + "phpunit/phpunit": "^10.5", + "spatie/phpunit-snapshot-assertions": "^4 || ^5", "vimeo/psalm": "^5.4" }, "suggest": { - "illuminate/events": "Required for automatic helper generation (^6|^7|^8|^9|^10)." + "illuminate/events": "Required for automatic helper generation (^6|^7|^8|^9|^10|^11)." }, "type": "library", "extra": { - "branch-alias": { - "dev-master": "2.15-dev" - }, "laravel": { "providers": [ "Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider" ] + }, + "branch-alias": { + "dev-master": "3.4-dev" } }, "autoload": { @@ -6978,7 +7165,7 @@ ], "support": { "issues": "https://github.com/barryvdh/laravel-ide-helper/issues", - "source": "https://github.com/barryvdh/laravel-ide-helper/tree/v2.15.1" + "source": "https://github.com/barryvdh/laravel-ide-helper/tree/v3.4.0" }, "funding": [ { @@ -6990,20 +7177,20 @@ "type": "github" } ], - "time": "2024-02-15T14:23:20+00:00" + "time": "2024-12-29T12:10:58+00:00" }, { "name": "barryvdh/reflection-docblock", - "version": "v2.1.3", + "version": "v2.2.0", "source": { "type": "git", "url": "https://github.com/barryvdh/ReflectionDocBlock.git", - "reference": "c6fad15f7c878be21650c51e1f841bca7e49752e" + "reference": "db125e8df4329bd45f2da405aab007f502f38531" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/ReflectionDocBlock/zipball/c6fad15f7c878be21650c51e1f841bca7e49752e", - "reference": "c6fad15f7c878be21650c51e1f841bca7e49752e", + "url": "https://api.github.com/repos/barryvdh/ReflectionDocBlock/zipball/db125e8df4329bd45f2da405aab007f502f38531", + "reference": "db125e8df4329bd45f2da405aab007f502f38531", "shasum": "" }, "require": { @@ -7019,7 +7206,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "2.2.x-dev" } }, "autoload": { @@ -7040,22 +7227,22 @@ } ], "support": { - "source": "https://github.com/barryvdh/ReflectionDocBlock/tree/v2.1.3" + "source": "https://github.com/barryvdh/ReflectionDocBlock/tree/v2.2.0" }, - "time": "2024-10-23T11:41:03+00:00" + "time": "2024-12-28T10:00:03+00:00" }, { "name": "composer/class-map-generator", - "version": "1.4.0", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/composer/class-map-generator.git", - "reference": "98bbf6780e56e0fd2404fe4b82eb665a0f93b783" + "reference": "4b0a223cf5be7c9ee7e0ef1bc7db42b4a97c9915" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/class-map-generator/zipball/98bbf6780e56e0fd2404fe4b82eb665a0f93b783", - "reference": "98bbf6780e56e0fd2404fe4b82eb665a0f93b783", + "url": "https://api.github.com/repos/composer/class-map-generator/zipball/4b0a223cf5be7c9ee7e0ef1bc7db42b4a97c9915", + "reference": "4b0a223cf5be7c9ee7e0ef1bc7db42b4a97c9915", "shasum": "" }, "require": { @@ -7064,10 +7251,10 @@ "symfony/finder": "^4.4 || ^5.3 || ^6 || ^7" }, "require-dev": { - "phpstan/phpstan": "^1.6", - "phpstan/phpstan-deprecation-rules": "^1", - "phpstan/phpstan-phpunit": "^1", - "phpstan/phpstan-strict-rules": "^1.1", + "phpstan/phpstan": "^1.12 || ^2", + "phpstan/phpstan-deprecation-rules": "^1 || ^2", + "phpstan/phpstan-phpunit": "^1 || ^2", + "phpstan/phpstan-strict-rules": "^1.1 || ^2", "phpunit/phpunit": "^8", "symfony/filesystem": "^5.4 || ^6" }, @@ -7099,7 +7286,7 @@ ], "support": { "issues": "https://github.com/composer/class-map-generator/issues", - "source": "https://github.com/composer/class-map-generator/tree/1.4.0" + "source": "https://github.com/composer/class-map-generator/tree/1.5.0" }, "funding": [ { @@ -7115,20 +7302,20 @@ "type": "tidelift" } ], - "time": "2024-10-03T18:14:00+00:00" + "time": "2024-11-25T16:11:06+00:00" }, { "name": "composer/pcre", - "version": "3.3.1", + "version": "3.3.2", "source": { "type": "git", "url": "https://github.com/composer/pcre.git", - "reference": "63aaeac21d7e775ff9bc9d45021e1745c97521c4" + "reference": "b2bed4734f0cc156ee1fe9c0da2550420d99a21e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/pcre/zipball/63aaeac21d7e775ff9bc9d45021e1745c97521c4", - "reference": "63aaeac21d7e775ff9bc9d45021e1745c97521c4", + "url": "https://api.github.com/repos/composer/pcre/zipball/b2bed4734f0cc156ee1fe9c0da2550420d99a21e", + "reference": "b2bed4734f0cc156ee1fe9c0da2550420d99a21e", "shasum": "" }, "require": { @@ -7138,19 +7325,19 @@ "phpstan/phpstan": "<1.11.10" }, "require-dev": { - "phpstan/phpstan": "^1.11.10", - "phpstan/phpstan-strict-rules": "^1.1", + "phpstan/phpstan": "^1.12 || ^2", + "phpstan/phpstan-strict-rules": "^1 || ^2", "phpunit/phpunit": "^8 || ^9" }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - }, "phpstan": { "includes": [ "extension.neon" ] + }, + "branch-alias": { + "dev-main": "3.x-dev" } }, "autoload": { @@ -7178,7 +7365,7 @@ ], "support": { "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/3.3.1" + "source": "https://github.com/composer/pcre/tree/3.3.2" }, "funding": [ { @@ -7194,239 +7381,31 @@ "type": "tidelift" } ], - "time": "2024-08-27T18:44:43+00:00" - }, - { - "name": "doctrine/cache", - "version": "2.2.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/cache.git", - "reference": "1ca8f21980e770095a31456042471a57bc4c68fb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/cache/zipball/1ca8f21980e770095a31456042471a57bc4c68fb", - "reference": "1ca8f21980e770095a31456042471a57bc4c68fb", - "shasum": "" - }, - "require": { - "php": "~7.1 || ^8.0" - }, - "conflict": { - "doctrine/common": ">2.2,<2.4" - }, - "require-dev": { - "cache/integration-tests": "dev-master", - "doctrine/coding-standard": "^9", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "psr/cache": "^1.0 || ^2.0 || ^3.0", - "symfony/cache": "^4.4 || ^5.4 || ^6", - "symfony/var-exporter": "^4.4 || ^5.4 || ^6" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Common\\Cache\\": "lib/Doctrine/Common/Cache" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "PHP Doctrine Cache library is a popular cache implementation that supports many different drivers such as redis, memcache, apc, mongodb and others.", - "homepage": "https://www.doctrine-project.org/projects/cache.html", - "keywords": [ - "abstraction", - "apcu", - "cache", - "caching", - "couchdb", - "memcached", - "php", - "redis", - "xcache" - ], - "support": { - "issues": "https://github.com/doctrine/cache/issues", - "source": "https://github.com/doctrine/cache/tree/2.2.0" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcache", - "type": "tidelift" - } - ], - "time": "2022-05-20T20:07:39+00:00" - }, - { - "name": "doctrine/dbal", - "version": "3.9.3", - "source": { - "type": "git", - "url": "https://github.com/doctrine/dbal.git", - "reference": "61446f07fcb522414d6cfd8b1c3e5f9e18c579ba" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/61446f07fcb522414d6cfd8b1c3e5f9e18c579ba", - "reference": "61446f07fcb522414d6cfd8b1c3e5f9e18c579ba", - "shasum": "" - }, - "require": { - "composer-runtime-api": "^2", - "doctrine/cache": "^1.11|^2.0", - "doctrine/deprecations": "^0.5.3|^1", - "doctrine/event-manager": "^1|^2", - "php": "^7.4 || ^8.0", - "psr/cache": "^1|^2|^3", - "psr/log": "^1|^2|^3" - }, - "require-dev": { - "doctrine/coding-standard": "12.0.0", - "fig/log-test": "^1", - "jetbrains/phpstorm-stubs": "2023.1", - "phpstan/phpstan": "1.12.6", - "phpstan/phpstan-strict-rules": "^1.6", - "phpunit/phpunit": "9.6.20", - "psalm/plugin-phpunit": "0.18.4", - "slevomat/coding-standard": "8.13.1", - "squizlabs/php_codesniffer": "3.10.2", - "symfony/cache": "^5.4|^6.0|^7.0", - "symfony/console": "^4.4|^5.4|^6.0|^7.0", - "vimeo/psalm": "4.30.0" - }, - "suggest": { - "symfony/console": "For helpful console commands such as SQL execution and import of files." - }, - "bin": [ - "bin/doctrine-dbal" - ], - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\DBAL\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - } - ], - "description": "Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and management.", - "homepage": "https://www.doctrine-project.org/projects/dbal.html", - "keywords": [ - "abstraction", - "database", - "db2", - "dbal", - "mariadb", - "mssql", - "mysql", - "oci8", - "oracle", - "pdo", - "pgsql", - "postgresql", - "queryobject", - "sasql", - "sql", - "sqlite", - "sqlserver", - "sqlsrv" - ], - "support": { - "issues": "https://github.com/doctrine/dbal/issues", - "source": "https://github.com/doctrine/dbal/tree/3.9.3" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fdbal", - "type": "tidelift" - } - ], - "time": "2024-10-10T17:56:43+00:00" + "time": "2024-11-12T16:29:46+00:00" }, { "name": "doctrine/deprecations", - "version": "1.1.3", + "version": "1.1.4", "source": { "type": "git", "url": "https://github.com/doctrine/deprecations.git", - "reference": "dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab" + "reference": "31610dbb31faa98e6b5447b62340826f54fbc4e9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/deprecations/zipball/dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab", - "reference": "dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/31610dbb31faa98e6b5447b62340826f54fbc4e9", + "reference": "31610dbb31faa98e6b5447b62340826f54fbc4e9", "shasum": "" }, "require": { "php": "^7.1 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^9", - "phpstan/phpstan": "1.4.10 || 1.10.15", - "phpstan/phpstan-phpunit": "^1.0", + "doctrine/coding-standard": "^9 || ^12", + "phpstan/phpstan": "1.4.10 || 2.0.3", + "phpstan/phpstan-phpunit": "^1.0 || ^2", "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "psalm/plugin-phpunit": "0.18.4", - "psr/log": "^1 || ^2 || ^3", - "vimeo/psalm": "4.30.0 || 5.12.0" + "psr/log": "^1 || ^2 || ^3" }, "suggest": { "psr/log": "Allows logging deprecations via PSR-3 logger implementation" @@ -7434,7 +7413,7 @@ "type": "library", "autoload": { "psr-4": { - "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" + "Doctrine\\Deprecations\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -7445,113 +7424,22 @@ "homepage": "https://www.doctrine-project.org/", "support": { "issues": "https://github.com/doctrine/deprecations/issues", - "source": "https://github.com/doctrine/deprecations/tree/1.1.3" + "source": "https://github.com/doctrine/deprecations/tree/1.1.4" }, - "time": "2024-01-30T19:34:25+00:00" - }, - { - "name": "doctrine/event-manager", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://github.com/doctrine/event-manager.git", - "reference": "b680156fa328f1dfd874fd48c7026c41570b9c6e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/event-manager/zipball/b680156fa328f1dfd874fd48c7026c41570b9c6e", - "reference": "b680156fa328f1dfd874fd48c7026c41570b9c6e", - "shasum": "" - }, - "require": { - "php": "^8.1" - }, - "conflict": { - "doctrine/common": "<2.9" - }, - "require-dev": { - "doctrine/coding-standard": "^12", - "phpstan/phpstan": "^1.8.8", - "phpunit/phpunit": "^10.5", - "vimeo/psalm": "^5.24" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Common\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - }, - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com" - } - ], - "description": "The Doctrine Event Manager is a simple PHP event system that was built to be used with the various Doctrine projects.", - "homepage": "https://www.doctrine-project.org/projects/event-manager.html", - "keywords": [ - "event", - "event dispatcher", - "event manager", - "event system", - "events" - ], - "support": { - "issues": "https://github.com/doctrine/event-manager/issues", - "source": "https://github.com/doctrine/event-manager/tree/2.0.1" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fevent-manager", - "type": "tidelift" - } - ], - "time": "2024-05-22T20:47:39+00:00" + "time": "2024-12-07T21:18:45+00:00" }, { "name": "fakerphp/faker", - "version": "v1.23.1", + "version": "v1.24.1", "source": { "type": "git", "url": "https://github.com/FakerPHP/Faker.git", - "reference": "bfb4fe148adbf78eff521199619b93a52ae3554b" + "reference": "e0ee18eb1e6dc3cda3ce9fd97e5a0689a88a64b5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/bfb4fe148adbf78eff521199619b93a52ae3554b", - "reference": "bfb4fe148adbf78eff521199619b93a52ae3554b", + "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/e0ee18eb1e6dc3cda3ce9fd97e5a0689a88a64b5", + "reference": "e0ee18eb1e6dc3cda3ce9fd97e5a0689a88a64b5", "shasum": "" }, "require": { @@ -7599,80 +7487,9 @@ ], "support": { "issues": "https://github.com/FakerPHP/Faker/issues", - "source": "https://github.com/FakerPHP/Faker/tree/v1.23.1" + "source": "https://github.com/FakerPHP/Faker/tree/v1.24.1" }, - "time": "2024-01-02T13:46:09+00:00" - }, - { - "name": "filp/whoops", - "version": "2.16.0", - "source": { - "type": "git", - "url": "https://github.com/filp/whoops.git", - "reference": "befcdc0e5dce67252aa6322d82424be928214fa2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/befcdc0e5dce67252aa6322d82424be928214fa2", - "reference": "befcdc0e5dce67252aa6322d82424be928214fa2", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0", - "psr/log": "^1.0.1 || ^2.0 || ^3.0" - }, - "require-dev": { - "mockery/mockery": "^1.0", - "phpunit/phpunit": "^7.5.20 || ^8.5.8 || ^9.3.3", - "symfony/var-dumper": "^4.0 || ^5.0" - }, - "suggest": { - "symfony/var-dumper": "Pretty print complex values better with var-dumper available", - "whoops/soap": "Formats errors as SOAP responses" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.7-dev" - } - }, - "autoload": { - "psr-4": { - "Whoops\\": "src/Whoops/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Filipe Dobreira", - "homepage": "https://github.com/filp", - "role": "Developer" - } - ], - "description": "php error handling for cool kids", - "homepage": "https://filp.github.io/whoops/", - "keywords": [ - "error", - "exception", - "handling", - "library", - "throwable", - "whoops" - ], - "support": { - "issues": "https://github.com/filp/whoops/issues", - "source": "https://github.com/filp/whoops/tree/2.16.0" - }, - "funding": [ - { - "url": "https://github.com/denis-sokolov", - "type": "github" - } - ], - "time": "2024-09-25T12:00:00+00:00" + "time": "2024-11-21T13:46:39+00:00" }, { "name": "hamcrest/hamcrest-php", @@ -7727,16 +7544,16 @@ }, { "name": "laravel/pint", - "version": "v1.18.1", + "version": "v1.18.3", "source": { "type": "git", "url": "https://github.com/laravel/pint.git", - "reference": "35c00c05ec43e6b46d295efc0f4386ceb30d50d9" + "reference": "cef51821608239040ab841ad6e1c6ae502ae3026" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/pint/zipball/35c00c05ec43e6b46d295efc0f4386ceb30d50d9", - "reference": "35c00c05ec43e6b46d295efc0f4386ceb30d50d9", + "url": "https://api.github.com/repos/laravel/pint/zipball/cef51821608239040ab841ad6e1c6ae502ae3026", + "reference": "cef51821608239040ab841ad6e1c6ae502ae3026", "shasum": "" }, "require": { @@ -7747,13 +7564,13 @@ "php": "^8.1.0" }, "require-dev": { - "friendsofphp/php-cs-fixer": "^3.64.0", - "illuminate/view": "^10.48.20", - "larastan/larastan": "^2.9.8", + "friendsofphp/php-cs-fixer": "^3.65.0", + "illuminate/view": "^10.48.24", + "larastan/larastan": "^2.9.11", "laravel-zero/framework": "^10.4.0", "mockery/mockery": "^1.6.12", - "nunomaduro/termwind": "^1.15.1", - "pestphp/pest": "^2.35.1" + "nunomaduro/termwind": "^1.17.0", + "pestphp/pest": "^2.36.0" }, "bin": [ "builds/pint" @@ -7789,20 +7606,20 @@ "issues": "https://github.com/laravel/pint/issues", "source": "https://github.com/laravel/pint" }, - "time": "2024-09-24T17:22:50+00:00" + "time": "2024-11-26T15:34:00+00:00" }, { "name": "laravel/sail", - "version": "v1.37.1", + "version": "v1.39.1", "source": { "type": "git", "url": "https://github.com/laravel/sail.git", - "reference": "7efa151ea0d16f48233d6a6cd69f81270acc6e93" + "reference": "1a3c7291bc88de983b66688919a4d298d68ddec7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/sail/zipball/7efa151ea0d16f48233d6a6cd69f81270acc6e93", - "reference": "7efa151ea0d16f48233d6a6cd69f81270acc6e93", + "url": "https://api.github.com/repos/laravel/sail/zipball/1a3c7291bc88de983b66688919a4d298d68ddec7", + "reference": "1a3c7291bc88de983b66688919a4d298d68ddec7", "shasum": "" }, "require": { @@ -7852,7 +7669,7 @@ "issues": "https://github.com/laravel/sail/issues", "source": "https://github.com/laravel/sail" }, - "time": "2024-10-29T20:18:14+00:00" + "time": "2024-11-27T15:42:28+00:00" }, { "name": "mockery/mockery", @@ -7939,16 +7756,16 @@ }, { "name": "myclabs/deep-copy", - "version": "1.12.0", + "version": "1.12.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c" + "reference": "123267b2c49fbf30d78a7b2d333f6be754b94845" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", - "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/123267b2c49fbf30d78a7b2d333f6be754b94845", + "reference": "123267b2c49fbf30d78a7b2d333f6be754b94845", "shasum": "" }, "require": { @@ -7987,7 +7804,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.12.0" + "source": "https://github.com/myclabs/DeepCopy/tree/1.12.1" }, "funding": [ { @@ -7995,103 +7812,7 @@ "type": "tidelift" } ], - "time": "2024-06-12T14:39:25+00:00" - }, - { - "name": "nunomaduro/collision", - "version": "v7.11.0", - "source": { - "type": "git", - "url": "https://github.com/nunomaduro/collision.git", - "reference": "994ea93df5d4132f69d3f1bd74730509df6e8a05" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/collision/zipball/994ea93df5d4132f69d3f1bd74730509df6e8a05", - "reference": "994ea93df5d4132f69d3f1bd74730509df6e8a05", - "shasum": "" - }, - "require": { - "filp/whoops": "^2.16.0", - "nunomaduro/termwind": "^1.15.1", - "php": "^8.1.0", - "symfony/console": "^6.4.12" - }, - "conflict": { - "laravel/framework": ">=11.0.0" - }, - "require-dev": { - "brianium/paratest": "^7.3.1", - "laravel/framework": "^10.48.22", - "laravel/pint": "^1.18.1", - "laravel/sail": "^1.36.0", - "laravel/sanctum": "^3.3.3", - "laravel/tinker": "^2.10.0", - "nunomaduro/larastan": "^2.9.8", - "orchestra/testbench-core": "^8.28.3", - "pestphp/pest": "^2.35.1", - "phpunit/phpunit": "^10.5.36", - "sebastian/environment": "^6.1.0", - "spatie/laravel-ignition": "^2.8.0" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider" - ] - } - }, - "autoload": { - "files": [ - "./src/Adapters/Phpunit/Autoload.php" - ], - "psr-4": { - "NunoMaduro\\Collision\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nuno Maduro", - "email": "enunomaduro@gmail.com" - } - ], - "description": "Cli error handling for console/command-line PHP applications.", - "keywords": [ - "artisan", - "cli", - "command-line", - "console", - "error", - "handling", - "laravel", - "laravel-zero", - "php", - "symfony" - ], - "support": { - "issues": "https://github.com/nunomaduro/collision/issues", - "source": "https://github.com/nunomaduro/collision" - }, - "funding": [ - { - "url": "https://www.paypal.com/paypalme/enunomaduro", - "type": "custom" - }, - { - "url": "https://github.com/nunomaduro", - "type": "github" - }, - { - "url": "https://www.patreon.com/nunomaduro", - "type": "patreon" - } - ], - "time": "2024-10-15T15:12:40+00:00" + "time": "2024-11-08T17:47:46+00:00" }, { "name": "phar-io/manifest", @@ -8266,23 +7987,23 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.9.0", + "version": "1.10.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "1fb5ba8d045f5dd984ebded5b1cc66f29459422d" + "reference": "679e3ce485b99e84c775d28e2e96fade9a7fb50a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/1fb5ba8d045f5dd984ebded5b1cc66f29459422d", - "reference": "1fb5ba8d045f5dd984ebded5b1cc66f29459422d", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/679e3ce485b99e84c775d28e2e96fade9a7fb50a", + "reference": "679e3ce485b99e84c775d28e2e96fade9a7fb50a", "shasum": "" }, "require": { "doctrine/deprecations": "^1.0", "php": "^7.3 || ^8.0", "phpdocumentor/reflection-common": "^2.0", - "phpstan/phpdoc-parser": "^1.18" + "phpstan/phpdoc-parser": "^1.18|^2.0" }, "require-dev": { "ext-tokenizer": "*", @@ -8318,36 +8039,36 @@ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", "support": { "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.9.0" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.10.0" }, - "time": "2024-11-03T20:11:34+00:00" + "time": "2024-11-09T15:12:26+00:00" }, { "name": "phpstan/phpdoc-parser", - "version": "1.33.0", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/phpstan/phpdoc-parser.git", - "reference": "82a311fd3690fb2bf7b64d5c98f912b3dd746140" + "reference": "c00d78fb6b29658347f9d37ebe104bffadf36299" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/82a311fd3690fb2bf7b64d5c98f912b3dd746140", - "reference": "82a311fd3690fb2bf7b64d5c98f912b3dd746140", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/c00d78fb6b29658347f9d37ebe104bffadf36299", + "reference": "c00d78fb6b29658347f9d37ebe104bffadf36299", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0" + "php": "^7.4 || ^8.0" }, "require-dev": { "doctrine/annotations": "^2.0", - "nikic/php-parser": "^4.15", + "nikic/php-parser": "^5.3.0", "php-parallel-lint/php-parallel-lint": "^1.2", "phpstan/extension-installer": "^1.0", - "phpstan/phpstan": "^1.5", - "phpstan/phpstan-phpunit": "^1.1", - "phpstan/phpstan-strict-rules": "^1.0", - "phpunit/phpunit": "^9.5", + "phpstan/phpstan": "^2.0", + "phpstan/phpstan-phpunit": "^2.0", + "phpstan/phpstan-strict-rules": "^2.0", + "phpunit/phpunit": "^9.6", "symfony/process": "^5.2" }, "type": "library", @@ -8365,9 +8086,9 @@ "description": "PHPDoc parser with support for nullable, intersection and generic types", "support": { "issues": "https://github.com/phpstan/phpdoc-parser/issues", - "source": "https://github.com/phpstan/phpdoc-parser/tree/1.33.0" + "source": "https://github.com/phpstan/phpdoc-parser/tree/2.0.0" }, - "time": "2024-10-13T11:25:22+00:00" + "time": "2024-10-13T11:29:49+00:00" }, { "name": "phpunit/php-code-coverage", @@ -8692,16 +8413,16 @@ }, { "name": "phpunit/phpunit", - "version": "10.5.38", + "version": "10.5.40", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "a86773b9e887a67bc53efa9da9ad6e3f2498c132" + "reference": "e6ddda95af52f69c1e0c7b4f977cccb58048798c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a86773b9e887a67bc53efa9da9ad6e3f2498c132", - "reference": "a86773b9e887a67bc53efa9da9ad6e3f2498c132", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/e6ddda95af52f69c1e0c7b4f977cccb58048798c", + "reference": "e6ddda95af52f69c1e0c7b4f977cccb58048798c", "shasum": "" }, "require": { @@ -8711,7 +8432,7 @@ "ext-mbstring": "*", "ext-xml": "*", "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.12.0", + "myclabs/deep-copy": "^1.12.1", "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=8.1", @@ -8773,7 +8494,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.38" + "source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.40" }, "funding": [ { @@ -8789,56 +8510,7 @@ "type": "tidelift" } ], - "time": "2024-10-28T13:06:21+00:00" - }, - { - "name": "psr/cache", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/cache.git", - "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", - "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", - "shasum": "" - }, - "require": { - "php": ">=8.0.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Cache\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common interface for caching libraries", - "keywords": [ - "cache", - "psr", - "psr-6" - ], - "support": { - "source": "https://github.com/php-fig/cache/tree/3.0.0" - }, - "time": "2021-02-03T23:26:27+00:00" + "time": "2024-12-21T05:49:06+00:00" }, { "name": "sebastian/cli-parser", @@ -9758,27 +9430,27 @@ }, { "name": "spatie/backtrace", - "version": "1.6.2", + "version": "1.7.1", "source": { "type": "git", "url": "https://github.com/spatie/backtrace.git", - "reference": "1a9a145b044677ae3424693f7b06479fc8c137a9" + "reference": "0f2477c520e3729de58e061b8192f161c99f770b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/backtrace/zipball/1a9a145b044677ae3424693f7b06479fc8c137a9", - "reference": "1a9a145b044677ae3424693f7b06479fc8c137a9", + "url": "https://api.github.com/repos/spatie/backtrace/zipball/0f2477c520e3729de58e061b8192f161c99f770b", + "reference": "0f2477c520e3729de58e061b8192f161c99f770b", "shasum": "" }, "require": { - "php": "^7.3|^8.0" + "php": "^7.3 || ^8.0" }, "require-dev": { "ext-json": "*", - "laravel/serializable-closure": "^1.3", - "phpunit/phpunit": "^9.3", - "spatie/phpunit-snapshot-assertions": "^4.2", - "symfony/var-dumper": "^5.1" + "laravel/serializable-closure": "^1.3 || ^2.0", + "phpunit/phpunit": "^9.3 || ^11.4.3", + "spatie/phpunit-snapshot-assertions": "^4.2 || ^5.1.6", + "symfony/var-dumper": "^5.1 || ^6.0 || ^7.0" }, "type": "library", "autoload": { @@ -9805,7 +9477,7 @@ "spatie" ], "support": { - "source": "https://github.com/spatie/backtrace/tree/1.6.2" + "source": "https://github.com/spatie/backtrace/tree/1.7.1" }, "funding": [ { @@ -9817,20 +9489,20 @@ "type": "other" } ], - "time": "2024-07-22T08:21:24+00:00" + "time": "2024-12-02T13:28:15+00:00" }, { "name": "spatie/error-solutions", - "version": "1.1.1", + "version": "1.1.2", "source": { "type": "git", "url": "https://github.com/spatie/error-solutions.git", - "reference": "ae7393122eda72eed7cc4f176d1e96ea444f2d67" + "reference": "d239a65235a1eb128dfa0a4e4c4ef032ea11b541" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/error-solutions/zipball/ae7393122eda72eed7cc4f176d1e96ea444f2d67", - "reference": "ae7393122eda72eed7cc4f176d1e96ea444f2d67", + "url": "https://api.github.com/repos/spatie/error-solutions/zipball/d239a65235a1eb128dfa0a4e4c4ef032ea11b541", + "reference": "d239a65235a1eb128dfa0a4e4c4ef032ea11b541", "shasum": "" }, "require": { @@ -9883,7 +9555,7 @@ ], "support": { "issues": "https://github.com/spatie/error-solutions/issues", - "source": "https://github.com/spatie/error-solutions/tree/1.1.1" + "source": "https://github.com/spatie/error-solutions/tree/1.1.2" }, "funding": [ { @@ -9891,20 +9563,20 @@ "type": "github" } ], - "time": "2024-07-25T11:06:04+00:00" + "time": "2024-12-11T09:51:56+00:00" }, { "name": "spatie/flare-client-php", - "version": "1.8.0", + "version": "1.10.0", "source": { "type": "git", "url": "https://github.com/spatie/flare-client-php.git", - "reference": "180f8ca4c0d0d6fc51477bd8c53ce37ab5a96122" + "reference": "140a42b2c5d59ac4ecf8f5b493386a4f2eb28272" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/flare-client-php/zipball/180f8ca4c0d0d6fc51477bd8c53ce37ab5a96122", - "reference": "180f8ca4c0d0d6fc51477bd8c53ce37ab5a96122", + "url": "https://api.github.com/repos/spatie/flare-client-php/zipball/140a42b2c5d59ac4ecf8f5b493386a4f2eb28272", + "reference": "140a42b2c5d59ac4ecf8f5b493386a4f2eb28272", "shasum": "" }, "require": { @@ -9952,7 +9624,7 @@ ], "support": { "issues": "https://github.com/spatie/flare-client-php/issues", - "source": "https://github.com/spatie/flare-client-php/tree/1.8.0" + "source": "https://github.com/spatie/flare-client-php/tree/1.10.0" }, "funding": [ { @@ -9960,7 +9632,7 @@ "type": "github" } ], - "time": "2024-08-01T08:27:26+00:00" + "time": "2024-12-02T14:30:06+00:00" }, { "name": "spatie/ignition", @@ -10047,16 +9719,16 @@ }, { "name": "spatie/laravel-ignition", - "version": "2.8.0", + "version": "2.9.0", "source": { "type": "git", "url": "https://github.com/spatie/laravel-ignition.git", - "reference": "3c067b75bfb50574db8f7e2c3978c65eed71126c" + "reference": "62042df15314b829d0f26e02108f559018e2aad0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/3c067b75bfb50574db8f7e2c3978c65eed71126c", - "reference": "3c067b75bfb50574db8f7e2c3978c65eed71126c", + "url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/62042df15314b829d0f26e02108f559018e2aad0", + "reference": "62042df15314b829d0f26e02108f559018e2aad0", "shasum": "" }, "require": { @@ -10087,12 +9759,12 @@ "type": "library", "extra": { "laravel": { - "providers": [ - "Spatie\\LaravelIgnition\\IgnitionServiceProvider" - ], "aliases": { "Flare": "Spatie\\LaravelIgnition\\Facades\\Flare" - } + }, + "providers": [ + "Spatie\\LaravelIgnition\\IgnitionServiceProvider" + ] } }, "autoload": { @@ -10134,24 +9806,25 @@ "type": "github" } ], - "time": "2024-06-12T15:01:18+00:00" + "time": "2024-12-02T08:43:31+00:00" }, { "name": "symfony/yaml", - "version": "v7.1.6", + "version": "v7.2.0", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "3ced3f29e4f0d6bce2170ff26719f1fe9aacc671" + "reference": "099581e99f557e9f16b43c5916c26380b54abb22" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/3ced3f29e4f0d6bce2170ff26719f1fe9aacc671", - "reference": "3ced3f29e4f0d6bce2170ff26719f1fe9aacc671", + "url": "https://api.github.com/repos/symfony/yaml/zipball/099581e99f557e9f16b43c5916c26380b54abb22", + "reference": "099581e99f557e9f16b43c5916c26380b54abb22", "shasum": "" }, "require": { "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3.0", "symfony/polyfill-ctype": "^1.8" }, "conflict": { @@ -10189,7 +9862,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v7.1.6" + "source": "https://github.com/symfony/yaml/tree/v7.2.0" }, "funding": [ { @@ -10205,7 +9878,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-10-23T06:56:12+00:00" }, { "name": "theseer/tokenizer", diff --git a/dist/config/filesystems.php b/dist/config/filesystems.php index 6837cf0..0656bda 100644 --- a/dist/config/filesystems.php +++ b/dist/config/filesystems.php @@ -44,6 +44,12 @@ 'throw' => false, ], + 'logs' => [ + 'driver' => 'local', + 'root' => storage_path('logs'), + 'throw' => false, + ], + 'patches' => [ 'driver' => 'local', 'root' => storage_path('app/patches'), diff --git a/dist/config/logging.php b/dist/config/logging.php index b64fcdc..bc2be8e 100644 --- a/dist/config/logging.php +++ b/dist/config/logging.php @@ -59,7 +59,7 @@ ], 'single' => [ - 'driver' => 'single', + 'driver' => 'daily', 'path' => storage_path('logs/laravel.log'), 'level' => env('LOG_LEVEL', 'debug'), 'replace_placeholders' => true, @@ -135,6 +135,13 @@ 'replace_placeholders' => true, ], + 'challengeCreation' => [ + 'driver' => 'single', + 'path' => storage_path('logs/challengeCreation.log'), + 'level' => 'info', + 'replace_placeholders' => true, + ], + 'daily' => [ 'driver' => 'daily', 'path' => storage_path('logs/laravel.log'), diff --git a/dist/config/session.php b/dist/config/session.php index e738cb3..737e9bc 100644 --- a/dist/config/session.php +++ b/dist/config/session.php @@ -31,7 +31,7 @@ | */ - 'lifetime' => env('SESSION_LIFETIME', 120), + 'lifetime' => (int)env('SESSION_LIFETIME', 120), 'expire_on_close' => false, diff --git a/dist/database/migrations/2024_02_27_194551_create_catalog_item_challenge_table.php b/dist/database/migrations/2024_02_27_194551_create_catalog_item_challenge_table.php index c79944e..2ab54ef 100644 --- a/dist/database/migrations/2024_02_27_194551_create_catalog_item_challenge_table.php +++ b/dist/database/migrations/2024_02_27_194551_create_catalog_item_challenge_table.php @@ -25,6 +25,6 @@ public function up(): void */ public function down(): void { - Schema::dropIfExists('catalog_item_challenges'); + Schema::dropIfExists('catalog_item_challenge'); } }; diff --git a/dist/database/migrations/2024_04_15_222616_modify_game_files_table.php b/dist/database/migrations/2024_04_15_222616_modify_game_files_table.php index f2ad1ab..c649f48 100644 --- a/dist/database/migrations/2024_04_15_222616_modify_game_files_table.php +++ b/dist/database/migrations/2024_04_15_222616_modify_game_files_table.php @@ -11,8 +11,19 @@ */ public function up(): void { + if (Schema::hasIndex('game_files', ['name', 'hash', 'version'])) { + Schema::table('game_files', function (Blueprint $table) { + $table->dropUnique(['name', 'hash', 'version']); + }); + } + //Schema doesn't support tinyint DB::statement("ALTER TABLE `game_files` CHANGE `version` `patchline` TINYINT UNSIGNED NOT NULL DEFAULT '1';"); + + + Schema::table('game_files', function (Blueprint $table) { + $table->unique(['name', 'hash', 'patchline']); + }); } /** @@ -20,11 +31,19 @@ public function up(): void */ public function down(): void { + if (Schema::hasIndex('game_files', ['name', 'hash', 'patchline'])) { + Schema::table('game_files', function (Blueprint $table) { + $table->dropUnique(['name', 'hash', 'patchline']); + }); + } Schema::table('game_files', function (Blueprint $table) { $table->integer('patchline')->default(1)->change(); }); Schema::table('game_files', function (Blueprint $table) { $table->renameColumn('patchline', 'version'); }); + Schema::table('game_files', function (Blueprint $table) { + $table->unique(['name', 'hash', 'version']); + }); } }; diff --git a/dist/database/migrations/2024_09_21_203649_add_chat_messages_to_archived_game.php b/dist/database/migrations/2024_09_21_203649_add_chat_messages_to_archived_game.php new file mode 100644 index 0000000..cad3f12 --- /dev/null +++ b/dist/database/migrations/2024_09_21_203649_add_chat_messages_to_archived_game.php @@ -0,0 +1,28 @@ +json('chat_messages')->after('dominant_faction'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('archived_games', function (Blueprint $table) { + $table->dropColumn('chat_messages'); + }); + } +}; diff --git a/dist/database/migrations/2024_10_03_194557_add_match_id_to_bad_chat_message.php b/dist/database/migrations/2024_10_03_194557_add_match_id_to_bad_chat_message.php new file mode 100644 index 0000000..ed3ac9d --- /dev/null +++ b/dist/database/migrations/2024_10_03_194557_add_match_id_to_bad_chat_message.php @@ -0,0 +1,28 @@ +uuid('match_id')->after('id')->nullable(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('bad_chat_messages', function (Blueprint $table) { + $table->dropColumn('match_id'); + }); + } +}; diff --git a/dist/database/migrations/2024_10_19_232253_remove_equipped_bonuses_table.php b/dist/database/migrations/2024_10_19_232253_remove_equipped_bonuses_table.php new file mode 100644 index 0000000..442bb17 --- /dev/null +++ b/dist/database/migrations/2024_10_19_232253_remove_equipped_bonuses_table.php @@ -0,0 +1,29 @@ +id(); + $table->foreignId('character_data_id')->constrained('character_data')->cascadeOnDelete()->cascadeOnUpdate(); + $table->foreignUuid('catalog_item_id')->constrained()->cascadeOnDelete()->cascadeOnDelete(); + $table->timestamps(); + }); + } +}; diff --git a/dist/database/migrations/2024_11_04_212126_add_additional_column_to_game_files.php b/dist/database/migrations/2024_11_04_212126_add_additional_column_to_game_files.php index fe45968..23a7607 100644 --- a/dist/database/migrations/2024_11_04_212126_add_additional_column_to_game_files.php +++ b/dist/database/migrations/2024_11_04_212126_add_additional_column_to_game_files.php @@ -14,11 +14,11 @@ public function up(): void //Schema doesn't support tinyint DB::statement("ALTER TABLE `game_files` ADD COLUMN `is_additional` TINYINT UNSIGNED NOT NULL DEFAULT '0' AFTER `action`;"); - if (Schema::hasIndex('game_files', ['name', 'hash', 'version'])) { + if (Schema::hasIndex('game_files', ['name', 'hash', 'patchline'])) { Schema::table('game_files', function (Blueprint $table) { - $table->dropUnique(['name', 'hash', 'version']); + $table->dropUnique(['name', 'hash', 'patchline']); }); - } + } Schema::table('game_files', function (Blueprint $table) { $table->renameColumn('name', 'filename'); diff --git a/dist/database/migrations/2024_12_03_201112_create_timed_challenges_table.php b/dist/database/migrations/2024_12_03_201112_create_timed_challenges_table.php new file mode 100644 index 0000000..8bd2fef --- /dev/null +++ b/dist/database/migrations/2024_12_03_201112_create_timed_challenges_table.php @@ -0,0 +1,36 @@ +id(); + $table->enum('type', array_column(ChallengeType::cases(), 'value')); + $table->string('blueprint_path'); + $table->enum('faction', array_column(Faction::cases(), 'value')); + $table->integer('completion_value'); + $table->datetime('start_time'); + $table->datetime('end_time'); + $table->json('rewards')->nullable(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('timed_challenges'); + } +}; diff --git a/dist/database/migrations/2024_12_03_203904_create_player_data_timed_chalenge_table.php b/dist/database/migrations/2024_12_03_203904_create_player_data_timed_chalenge_table.php new file mode 100644 index 0000000..792f6a1 --- /dev/null +++ b/dist/database/migrations/2024_12_03_203904_create_player_data_timed_chalenge_table.php @@ -0,0 +1,33 @@ +foreignId('timed_challenge_id')->constrained()->cascadeOnDelete()->cascadeOnUpdate(); + $table->foreignId('player_data_id')->constrained('player_data')->cascadeOnDelete()->cascadeOnUpdate(); + $table->unsignedInteger('progress')->default(0); + $table->boolean('claimed')->default(false); + + $table->timestamps(); + + $table->unique(['timed_challenge_id', 'player_data_id'], 'unique_primary'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('player_data_timed_challenge'); + } +}; diff --git a/dist/database/migrations/2024_12_19_185927_currency_cap.php b/dist/database/migrations/2024_12_19_185927_currency_cap.php new file mode 100644 index 0000000..cb089fb --- /dev/null +++ b/dist/database/migrations/2024_12_19_185927_currency_cap.php @@ -0,0 +1,30 @@ +update([ + 'currency_a' => self::USER_MIGRATION_CURRENCY, + 'currency_b' => self::USER_MIGRATION_CURRENCY, + 'currency_c' => self::USER_MIGRATION_CURRENCY, + ]); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + // + } +}; diff --git a/dist/database/migrations/2025_08_02_183241_add_child_to_game_files_table.php b/dist/database/migrations/2025_08_02_183241_add_child_to_game_files_table.php new file mode 100644 index 0000000..b93423f --- /dev/null +++ b/dist/database/migrations/2025_08_02_183241_add_child_to_game_files_table.php @@ -0,0 +1,54 @@ +dropUnique(['filename', 'hash', 'patchline']); + }); + } + + if (Schema::hasIndex('game_files', ['name'])) { + Schema::table('game_files', function (Blueprint $table) { + $table->dropUnique(['name']); + }); + } + + Schema::table('game_files', function (Blueprint $table) { + $table->foreignId('child_id')->nullable()->after('id')->constrained('game_files')->cascadeOnDelete(); + $table->unique(['filename', 'hash', 'patchline', 'child_id']); + $table->unique(['name', 'child_id']); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + // Remove all child records + GameFile::whereNotNull('child_id')->each(function ($gameFile) { + $gameFile->delete(); + }); + + Schema::table('game_files', function (Blueprint $table) { + $table->dropUnique(['filename', 'hash', 'patchline', 'child_id']); + $table->dropUnique(['name', 'child_id']); + $table->dropForeign('game_files_child_id_foreign'); + $table->dropColumn('child_id'); + $table->unique(['filename', 'hash', 'patchline']); + $table->unique('name'); + }); + } +}; diff --git a/dist/database/seeders/MatchConfigSeeder.php b/dist/database/seeders/MatchConfigSeeder.php index 58eb90a..b99870f 100644 --- a/dist/database/seeders/MatchConfigSeeder.php +++ b/dist/database/seeders/MatchConfigSeeder.php @@ -14,47 +14,54 @@ class MatchConfigSeeder extends Seeder public function run(): void { DB::table('match_configurations')->delete(); + MatchConfiguration::Create([ + 'name' => 'Matchconfig_Dev - 1v1', + 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_HarvestYourExit_1v5.MatchConfig_Demo_HarvestYourExit_1v5', + 'hunters' => 1, + 'runners' => 1, + 'enabled' => false, + ]); + MatchConfiguration::Create([ + 'name' => 'Matchconfig - 1v5', + 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_HarvestYourExit_1v5.MatchConfig_Demo_HarvestYourExit_1v5', + 'enabled' => false, + ]); + MatchConfiguration::Create([ + 'name' => 'Matchconfig - 1v4', + 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_2v10_4Needles.MatchConfig_Demo_2v10_4Needles', + 'enabled' => true, + 'weight' => 40, + 'hunters' => 1, + 'runners' => 4, + ]); + MatchConfiguration::Create([ + 'name' => 'Matchconfig - 1v6', + 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_2v8_4Needles.MatchConfig_Demo_2v8_4Needles', + 'hunters' => 1, + 'runners' => 6, + 'enabled' => true, + 'weight' => 500, + ]); + MatchConfiguration::Create([ + 'name' => 'Halloween Mode - Survival', + 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_HarvestYourExit.MatchConfig_Demo_HarvestYourExit', + 'enabled' => false, + ]); MatchConfiguration::Create([ 'name' => 'Curefew 1v5 - Slums', 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_SLU_DownTown.MatchConfig_SLU_DownTown', 'enabled' => false, ]); MatchConfiguration::Create([ - 'name' => 'Harvest Your Exit - 1v5', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_HarvestYourExit_1v5.MatchConfig_Demo_HarvestYourExit_1v5', - 'enabled' => false, - ]); - MatchConfiguration::Create([ - 'name' => 'Harvest Your Exit - 1v4', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_HarvestYourExit_1v5.MatchConfig_Demo_HarvestYourExit_1v5', - 'enabled' => false, - 'hunters' => 1, - 'runners' => 4, - 'weight' => 10, - ]); - MatchConfiguration::Create([ - 'name' => 'Harvest Your Exit - 1v6', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_HarvestYourExit_1v5.MatchConfig_Demo_HarvestYourExit_1v5', - 'enabled' => false, - 'hunters' => 1, - 'runners' => 6, - 'weight' => 10, - ]); - MatchConfiguration::Create([ - 'name' => 'New Arctic Fortress', + 'name' => 'Frosthold Citadel', 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_ARC_Fortress.MatchConfig_ARC_Fortress', - 'enabled' => true, - 'weight' => 50, - ]); - MatchConfiguration::Create([ - 'name' => 'Survival 1v5 - All Maps', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo.MatchConfig_Demo', 'enabled' => false, + 'weight' => 50, ]); MatchConfiguration::Create([ 'name' => 'Fire in the Sky - 1v5', 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_ARC_BlastFurnace.MatchConfig_ARC_BlastFurnace', - 'enabled' => true, + 'enabled' => false, 'weight' => 200, ]); MatchConfiguration::Create([ @@ -100,51 +107,6 @@ public function run(): void 'hunters' => 2, 'runners' => 10, ]); - MatchConfiguration::Create([ - 'name' => 'Custom', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Custom.MatchConfig_Custom', - 'enabled' => false, - ]); - MatchConfiguration::Create([ - 'name' => 'Custom Match', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_CustomMatch.MatchConfig_CustomMatch', - 'enabled' => false, - ]); - MatchConfiguration::Create([ - 'name' => 'Survival 2v10 - 4 Needles', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_2v10_4Needles.MatchConfig_Demo_2v10_4Needles', - 'enabled' => false, - 'hunters' => 2, - 'runners' => 10, - ]); - MatchConfiguration::Create([ - 'name' => 'Survival 2v10 - 5 Needles', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_2v10_5Needles.MatchConfig_Demo_2v10_5Needles', - 'enabled' => false, - 'hunters' => 2, - 'runners' => 10, - ]); - MatchConfiguration::Create([ - 'name' => 'Survival 2v8 - 4 Needles', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_2v8_4Needles.MatchConfig_Demo_2v8_4Needles', - 'enabled' => false, - 'hunters' => 2, - 'runners' => 8, - ]); - MatchConfiguration::Create([ - 'name' => 'Survival 2v8 - 5 Needles', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_2v8_5Needles.MatchConfig_Demo_2v8_5Needles', - 'enabled' => false, - 'hunters' => 2, - 'runners' => 8, - ]); - MatchConfiguration::Create([ - 'name' => 'Harvest Your Exit - 2v10', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_HarvestYourExit.MatchConfig_Demo_HarvestYourExit', - 'enabled' => false, - 'hunters' => 2, - 'runners' => 10, - ]); MatchConfiguration::Create([ 'name' => 'Barren City - 1v5', 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_DES_City.MatchConfig_DES_City', @@ -160,7 +122,7 @@ public function run(): void MatchConfiguration::Create([ 'name' => 'Legions Rest - 1v5', 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_DES_Fortress.MatchConfig_DES_Fortress', - 'enabled' => true, + 'enabled' => false, 'weight' => 100, ]); MatchConfiguration::Create([ @@ -186,7 +148,7 @@ public function run(): void MatchConfiguration::Create([ 'name' => 'Dust & Blood - 1v5', 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_DES_Mayan.MatchConfig_DES_Mayan', - 'enabled' => true, + 'enabled' => false, 'weight' => 100, ]); MatchConfiguration::Create([ @@ -199,7 +161,7 @@ public function run(): void MatchConfiguration::Create([ 'name' => 'Blowout - 1v5', 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_DES_Oilfield.MatchConfig_DES_Oilfield', - 'enabled' => true, + 'enabled' => false, 'weight' => 100, ]); MatchConfiguration::Create([ @@ -212,7 +174,7 @@ public function run(): void MatchConfiguration::Create([ 'name' => 'Forest Citadel - 1v5', 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_JUN_Fortress.MatchConfig_JUN_Fortress', - 'enabled' => true, + 'enabled' => false, 'weight' => 50, ]); MatchConfiguration::Create([ @@ -222,20 +184,10 @@ public function run(): void 'hunters' => 2, 'runners' => 10, ]); - MatchConfiguration::Create([ - 'name' => 'New Maps', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_NewMaps.MatchConfig_NewMaps', - 'enabled' => false, - ]); - MatchConfiguration::Create([ - 'name' => 'All New Arctic Maps', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_PRM_Special.MatchConfig_PRM_Special', - 'enabled' => false, - ]); MatchConfiguration::Create([ 'name' => 'First Strike - 1v5', 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_RUI_All.MatchConfig_RUI_All', - 'enabled' => true, + 'enabled' => false, 'weight' => 100, ]); MatchConfiguration::Create([ @@ -246,13 +198,13 @@ public function run(): void 'runners' => 10, ]); MatchConfiguration::Create([ - 'name' => 'Tombstone - 1v5', + 'name' => 'Echoes From The Past - 1v5', 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_WA_Cemetery.MatchConfig_WA_Cemetery', - 'enabled' => true, + 'enabled' => false, 'weight' => 140, ]); MatchConfiguration::Create([ - 'name' => 'Tombstone - 2v10', + 'name' => 'Echoes From The Past - 2v10', 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_WA_Cemetery_2Hunters.MatchConfig_WA_Cemetery_2Hunters', 'enabled' => false, 'hunters' => 2, @@ -261,7 +213,7 @@ public function run(): void MatchConfiguration::Create([ 'name' => 'Salt Creek - 1v5', 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_WA_Rivers.MatchConfig_WA_Rivers', - 'enabled' => true, + 'enabled' => false, 'weight' => 200, ]); MatchConfiguration::Create([ @@ -271,19 +223,5 @@ public function run(): void 'hunters' => 2, 'runners' => 10, ]); - MatchConfiguration::Create([ - 'name' => 'Harvest Your Exit - 1v1 (DEV)', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_HarvestYourExit_1v5.MatchConfig_Demo_HarvestYourExit_1v5', - 'hunters' => 1, - 'runners' => 1, - 'enabled' => false, - ]); - MatchConfiguration::Create([ - 'name' => 'Harvest Your Exit - 1v6 (EXPERIMENTAL)', - 'asset_path' => '/Game/Configuration/MatchConfig/MatchConfig_Demo_HarvestYourExit_1v5.MatchConfig_Demo_HarvestYourExit_1v5', - 'hunters' => 1, - 'runners' => 6, - 'enabled' => false, - ]); } } diff --git a/dist/docker-compose.yml b/dist/docker-compose.yml index c83a560..9613377 100644 --- a/dist/docker-compose.yml +++ b/dist/docker-compose.yml @@ -18,7 +18,8 @@ services: XDEBUG_CONFIG: '${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}' IGNITION_LOCAL_SITES_PATH: '${PWD}' PHP_IDE_CONFIG: 'serverName=Docker' - SUPERVISOR_PHP_COMMAND: "/usr/bin/php -d variables_order=EGPCS /var/www/html/artisan octane:start --server=frankenphp --watch --host=0.0.0.0 --admin-port=2019 --port=80" + # Uncomment if you want to enable octane locally + #SUPERVISOR_PHP_COMMAND: "/usr/bin/php -d variables_order=EGPCS /var/www/html/artisan octane:start --server=frankenphp --watch --host=0.0.0.0 --admin-port=2019 --port=80" XDG_CONFIG_HOME: /var/www/html/config XDG_DATA_HOME: /var/www/html/data volumes: diff --git a/dist/package-lock.json b/dist/package-lock.json index c1eabea..94a9ded 100644 --- a/dist/package-lock.json +++ b/dist/package-lock.json @@ -5,8 +5,6 @@ "packages": { "": { "dependencies": { - "@inertiajs/vue3": "^1.0.14", - "@vitejs/plugin-vue": "^5.0.3", "alpinejs": "^3.13.7", "dotenv": "^16.4.2", "jquery": "^3.7.1", @@ -37,56 +35,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/helper-string-parser": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", - "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", - "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.26.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.2.tgz", - "integrity": "sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/types": "^7.26.0" - }, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/types": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.0.tgz", - "integrity": "sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/helper-string-parser": "^7.25.9", - "@babel/helper-validator-identifier": "^7.25.9" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@bbob/parser": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/@bbob/parser/-/parser-2.9.0.tgz", @@ -138,6 +86,7 @@ "cpu": [ "ppc64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -154,6 +103,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -170,6 +120,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -186,6 +137,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -202,6 +154,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -218,6 +171,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -234,6 +188,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -250,6 +205,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -266,6 +222,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -282,6 +239,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -298,6 +256,7 @@ "cpu": [ "ia32" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -314,6 +273,7 @@ "cpu": [ "loong64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -330,6 +290,7 @@ "cpu": [ "mips64el" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -346,6 +307,7 @@ "cpu": [ "ppc64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -362,6 +324,7 @@ "cpu": [ "riscv64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -378,6 +341,7 @@ "cpu": [ "s390x" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -394,6 +358,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -410,6 +375,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -426,6 +392,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -442,6 +409,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -458,6 +426,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -474,6 +443,7 @@ "cpu": [ "ia32" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -490,6 +460,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -579,10 +550,10 @@ } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", - "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", - "license": "MIT" + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true }, "node_modules/@jridgewell/trace-mapping": { "version": "0.3.25", @@ -993,12 +964,13 @@ "license": "BSD-3-Clause" }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.3.tgz", - "integrity": "sha512-ufb2CH2KfBWPJok95frEZZ82LtDl0A6QKTa8MoM+cWwDZvVGl5/jNb79pIhRvAalUu+7LD91VYR0nwRD799HkQ==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.27.2.tgz", + "integrity": "sha512-Tj+j7Pyzd15wAdSJswvs5CJzJNV+qqSUcr/aCD+jpQSBtXvGnV0pnrjoc8zFTe9fcKCatkpFpOO7yAzpO998HA==", "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1006,12 +978,13 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.3.tgz", - "integrity": "sha512-iAHpft/eQk9vkWIV5t22V77d90CRofgR2006UiCjHcHJFVI1E0oBkQIAbz+pLtthFw3hWEmVB4ilxGyBf48i2Q==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.27.2.tgz", + "integrity": "sha512-xsPeJgh2ThBpUqlLgRfiVYBEf/P1nWlWvReG+aBWfNv3XEBpa6ZCmxSVnxJgLgkNz4IbxpLy64h2gCmAAQLneQ==", "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1019,12 +992,13 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.3.tgz", - "integrity": "sha512-QPW2YmkWLlvqmOa2OwrfqLJqkHm7kJCIMq9kOz40Zo9Ipi40kf9ONG5Sz76zszrmIZZ4hgRIkez69YnTHgEz1w==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.27.2.tgz", + "integrity": "sha512-KnXU4m9MywuZFedL35Z3PuwiTSn/yqRIhrEA9j+7OSkji39NzVkgxuxTYg5F8ryGysq4iFADaU5osSizMXhU2A==", "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1032,12 +1006,13 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.3.tgz", - "integrity": "sha512-KO0pN5x3+uZm1ZXeIfDqwcvnQ9UEGN8JX5ufhmgH5Lz4ujjZMAnxQygZAVGemFWn+ZZC0FQopruV4lqmGMshow==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.27.2.tgz", + "integrity": "sha512-Hj77A3yTvUeCIx/Vi+4d4IbYhyTwtHj07lVzUgpUq9YpJSEiGJj4vXMKwzJ3w5zp5v3PFvpJNgc/J31smZey6g==", "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1045,12 +1020,13 @@ ] }, "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.24.3.tgz", - "integrity": "sha512-CsC+ZdIiZCZbBI+aRlWpYJMSWvVssPuWqrDy/zi9YfnatKKSLFCe6fjna1grHuo/nVaHG+kiglpRhyBQYRTK4A==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.27.2.tgz", + "integrity": "sha512-RjgKf5C3xbn8gxvCm5VgKZ4nn0pRAIe90J0/fdHUsgztd3+Zesb2lm2+r6uX4prV2eUByuxJNdt647/1KPRq5g==", "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1058,12 +1034,13 @@ ] }, "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.24.3.tgz", - "integrity": "sha512-F0nqiLThcfKvRQhZEzMIXOQG4EeX61im61VYL1jo4eBxv4aZRmpin6crnBJQ/nWnCsjH5F6J3W6Stdm0mBNqBg==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.27.2.tgz", + "integrity": "sha512-duq21FoXwQtuws+V9H6UZ+eCBc7fxSpMK1GQINKn3fAyd9DFYKPJNcUhdIKOrMFjLEJgQskoMoiuizMt+dl20g==", "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1071,12 +1048,13 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.3.tgz", - "integrity": "sha512-KRSFHyE/RdxQ1CSeOIBVIAxStFC/hnBgVcaiCkQaVC+EYDtTe4X7z5tBkFyRoBgUGtB6Xg6t9t2kulnX6wJc6A==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.27.2.tgz", + "integrity": "sha512-6npqOKEPRZkLrMcvyC/32OzJ2srdPzCylJjiTJT2c0bwwSGm7nz2F9mNQ1WrAqCBZROcQn91Fno+khFhVijmFA==", "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1084,12 +1062,13 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.3.tgz", - "integrity": "sha512-h6Q8MT+e05zP5BxEKz0vi0DhthLdrNEnspdLzkoFqGwnmOzakEHSlXfVyA4HJ322QtFy7biUAVFPvIDEDQa6rw==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.27.2.tgz", + "integrity": "sha512-V9Xg6eXtgBtHq2jnuQwM/jr2mwe2EycnopO8cbOvpzFuySCGtKlPCI3Hj9xup/pJK5Q0388qfZZy2DqV2J8ftw==", "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1097,12 +1076,13 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.3.tgz", - "integrity": "sha512-fKElSyXhXIJ9pqiYRqisfirIo2Z5pTTve5K438URf08fsypXrEkVmShkSfM8GJ1aUyvjakT+fn2W7Czlpd/0FQ==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.27.2.tgz", + "integrity": "sha512-uCFX9gtZJoQl2xDTpRdseYuNqyKkuMDtH6zSrBTA28yTfKyjN9hQ2B04N5ynR8ILCoSDOrG/Eg+J2TtJ1e/CSA==", "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1110,12 +1090,13 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.3.tgz", - "integrity": "sha512-YlddZSUk8G0px9/+V9PVilVDC6ydMz7WquxozToozSnfFK6wa6ne1ATUjUvjin09jp34p84milxlY5ikueoenw==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.27.2.tgz", + "integrity": "sha512-/PU9P+7Rkz8JFYDHIi+xzHabOu9qEWR07L5nWLIUsvserrxegZExKCi2jhMZRd0ATdboKylu/K5yAXbp7fYFvA==", "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1123,12 +1104,13 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.3.tgz", - "integrity": "sha512-yNaWw+GAO8JjVx3s3cMeG5Esz1cKVzz8PkTJSfYzE5u7A+NvGmbVFEHP+BikTIyYWuz0+DX9kaA3pH9Sqxp69g==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.27.2.tgz", + "integrity": "sha512-eCHmol/dT5odMYi/N0R0HC8V8QE40rEpkyje/ZAXJYNNoSfrObOvG/Mn+s1F/FJyB7co7UQZZf6FuWnN6a7f4g==", "cpu": [ "ppc64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1136,12 +1118,13 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.3.tgz", - "integrity": "sha512-lWKNQfsbpv14ZCtM/HkjCTm4oWTKTfxPmr7iPfp3AHSqyoTz5AgLemYkWLwOBWc+XxBbrU9SCokZP0WlBZM9lA==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.27.2.tgz", + "integrity": "sha512-DEP3Njr9/ADDln3kNi76PXonLMSSMiCir0VHXxmGSHxCxDfQ70oWjHcJGfiBugzaqmYdTC7Y+8Int6qbnxPBIQ==", "cpu": [ "riscv64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1149,12 +1132,13 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.3.tgz", - "integrity": "sha512-HoojGXTC2CgCcq0Woc/dn12wQUlkNyfH0I1ABK4Ni9YXyFQa86Fkt2Q0nqgLfbhkyfQ6003i3qQk9pLh/SpAYw==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.27.2.tgz", + "integrity": "sha512-NHGo5i6IE/PtEPh5m0yw5OmPMpesFnzMIS/lzvN5vknnC1sXM5Z/id5VgcNPgpD+wHmIcuYYgW+Q53v+9s96lQ==", "cpu": [ "s390x" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1162,12 +1146,13 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.3.tgz", - "integrity": "sha512-mnEOh4iE4USSccBOtcrjF5nj+5/zm6NcNhbSEfR3Ot0pxBwvEn5QVUXcuOwwPkapDtGZ6pT02xLoPaNv06w7KQ==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.27.2.tgz", + "integrity": "sha512-PaW2DY5Tan+IFvNJGHDmUrORadbe/Ceh8tQxi8cmdQVCCYsLoQo2cuaSj+AU+YRX8M4ivS2vJ9UGaxfuNN7gmg==", "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1175,12 +1160,13 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.3.tgz", - "integrity": "sha512-rMTzawBPimBQkG9NKpNHvquIUTQPzrnPxPbCY1Xt+mFkW7pshvyIS5kYgcf74goxXOQk0CP3EoOC1zcEezKXhw==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.27.2.tgz", + "integrity": "sha512-dOlWEMg2gI91Qx5I/HYqOD6iqlJspxLcS4Zlg3vjk1srE67z5T2Uz91yg/qA8sY0XcwQrFzWWiZhMNERylLrpQ==", "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1188,12 +1174,13 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.3.tgz", - "integrity": "sha512-2lg1CE305xNvnH3SyiKwPVsTVLCg4TmNCF1z7PSHX2uZY2VbUpdkgAllVoISD7JO7zu+YynpWNSKAtOrX3AiuA==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.27.2.tgz", + "integrity": "sha512-euMIv/4x5Y2/ImlbGl88mwKNXDsvzbWUlT7DFky76z2keajCtcbAsN9LUdmk31hAoVmJJYSThgdA0EsPeTr1+w==", "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1201,12 +1188,13 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.3.tgz", - "integrity": "sha512-9SjYp1sPyxJsPWuhOCX6F4jUMXGbVVd5obVpoVEi8ClZqo52ViZewA6eFz85y8ezuOA+uJMP5A5zo6Oz4S5rVQ==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.27.2.tgz", + "integrity": "sha512-RsnE6LQkUHlkC10RKngtHNLxb7scFykEbEwOFDjr3CeCMG+Rr+cKqlkKc2/wJ1u4u990urRHCbjz31x84PBrSQ==", "cpu": [ "ia32" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1214,12 +1202,13 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.3.tgz", - "integrity": "sha512-HGZgRFFYrMrP3TJlq58nR1xy8zHKId25vhmm5S9jETEfDf6xybPxsavFTJaufe2zgOGYJBskGlj49CwtEuFhWQ==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.27.2.tgz", + "integrity": "sha512-foJM5vv+z2KQmn7emYdDLyTbkoO5bkHZE1oth2tWbQNGW7mX32d46Hz6T0MqXdWS2vBZhaEtHqdy9WYwGfiliA==", "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1230,6 +1219,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true, "license": "MIT" }, "node_modules/@types/long": { @@ -1240,204 +1230,14 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "22.8.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.8.7.tgz", - "integrity": "sha512-LidcG+2UeYIWcMuMUpBKOnryBWG/rnmOHQR5apjn8myTQcx3rinFRn7DcIFhMnS0PPFSC6OafdIKEad0lj6U0Q==", - "devOptional": true, - "license": "MIT", + "version": "20.11.17", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.17.tgz", + "integrity": "sha512-QmgQZGWu1Yw9TDyAP9ZzpFJKynYNeOvwMJmaxABfieQoVoiVOS6MN1WSpqpRcbeA5+RW82kraAVxCCJg+780Qw==", + "dev": true, "dependencies": { "undici-types": "~6.19.8" } }, - "node_modules/@vitejs/plugin-vue": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.1.4.tgz", - "integrity": "sha512-N2XSI2n3sQqp5w7Y/AN/L2XDjBIRGqXko+eDp42sydYSBeJuSm5a1sLf8zakmo8u7tA8NmBgoDLA1HeOESjp9A==", - "license": "MIT", - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "peerDependencies": { - "vite": "^5.0.0", - "vue": "^3.2.25" - } - }, - "node_modules/@vue/compiler-core": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.12.tgz", - "integrity": "sha512-ISyBTRMmMYagUxhcpyEH0hpXRd/KqDU4ymofPgl2XAkY9ZhQ+h0ovEZJIiPop13UmR/54oA2cgMDjgroRelaEw==", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/parser": "^7.25.3", - "@vue/shared": "3.5.12", - "entities": "^4.5.0", - "estree-walker": "^2.0.2", - "source-map-js": "^1.2.0" - } - }, - "node_modules/@vue/compiler-core/node_modules/@vue/shared": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz", - "integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==", - "license": "MIT", - "peer": true - }, - "node_modules/@vue/compiler-dom": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.12.tgz", - "integrity": "sha512-9G6PbJ03uwxLHKQ3P42cMTi85lDRvGLB2rSGOiQqtXELat6uI4n8cNz9yjfVHRPIu+MsK6TE418Giruvgptckg==", - "license": "MIT", - "peer": true, - "dependencies": { - "@vue/compiler-core": "3.5.12", - "@vue/shared": "3.5.12" - } - }, - "node_modules/@vue/compiler-dom/node_modules/@vue/shared": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz", - "integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==", - "license": "MIT", - "peer": true - }, - "node_modules/@vue/compiler-sfc": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.12.tgz", - "integrity": "sha512-2k973OGo2JuAa5+ZlekuQJtitI5CgLMOwgl94BzMCsKZCX/xiqzJYzapl4opFogKHqwJk34vfsaKpfEhd1k5nw==", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/parser": "^7.25.3", - "@vue/compiler-core": "3.5.12", - "@vue/compiler-dom": "3.5.12", - "@vue/compiler-ssr": "3.5.12", - "@vue/shared": "3.5.12", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.11", - "postcss": "^8.4.47", - "source-map-js": "^1.2.0" - } - }, - "node_modules/@vue/compiler-sfc/node_modules/@vue/shared": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz", - "integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==", - "license": "MIT", - "peer": true - }, - "node_modules/@vue/compiler-ssr": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.12.tgz", - "integrity": "sha512-eLwc7v6bfGBSM7wZOGPmRavSWzNFF6+PdRhE+VFJhNCgHiF8AM7ccoqcv5kBXA2eWUfigD7byekvf/JsOfKvPA==", - "license": "MIT", - "peer": true, - "dependencies": { - "@vue/compiler-dom": "3.5.12", - "@vue/shared": "3.5.12" - } - }, - "node_modules/@vue/compiler-ssr/node_modules/@vue/shared": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz", - "integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==", - "license": "MIT", - "peer": true - }, - "node_modules/@vue/reactivity": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz", - "integrity": "sha512-1tdfLmNjWG6t/CsPldh+foumYFo3cpyCHgBYQ34ylaMsJ+SNHQ1kApMIa8jN+i593zQuaw3AdWH0nJTARzCFhg==", - "license": "MIT", - "dependencies": { - "@vue/shared": "3.1.5" - } - }, - "node_modules/@vue/runtime-core": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.12.tgz", - "integrity": "sha512-hrMUYV6tpocr3TL3Ad8DqxOdpDe4zuQY4HPY3X/VRh+L2myQO8MFXPAMarIOSGNu0bFAjh1yBkMPXZBqCk62Uw==", - "license": "MIT", - "peer": true, - "dependencies": { - "@vue/reactivity": "3.5.12", - "@vue/shared": "3.5.12" - } - }, - "node_modules/@vue/runtime-core/node_modules/@vue/reactivity": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.12.tgz", - "integrity": "sha512-UzaN3Da7xnJXdz4Okb/BGbAaomRHc3RdoWqTzlvd9+WBR5m3J39J1fGcHes7U3za0ruYn/iYy/a1euhMEHvTAg==", - "license": "MIT", - "peer": true, - "dependencies": { - "@vue/shared": "3.5.12" - } - }, - "node_modules/@vue/runtime-core/node_modules/@vue/shared": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz", - "integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==", - "license": "MIT", - "peer": true - }, - "node_modules/@vue/runtime-dom": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.12.tgz", - "integrity": "sha512-q8VFxR9A2MRfBr6/55Q3umyoN7ya836FzRXajPB6/Vvuv0zOPL+qltd9rIMzG/DbRLAIlREmnLsplEF/kotXKA==", - "license": "MIT", - "peer": true, - "dependencies": { - "@vue/reactivity": "3.5.12", - "@vue/runtime-core": "3.5.12", - "@vue/shared": "3.5.12", - "csstype": "^3.1.3" - } - }, - "node_modules/@vue/runtime-dom/node_modules/@vue/reactivity": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.12.tgz", - "integrity": "sha512-UzaN3Da7xnJXdz4Okb/BGbAaomRHc3RdoWqTzlvd9+WBR5m3J39J1fGcHes7U3za0ruYn/iYy/a1euhMEHvTAg==", - "license": "MIT", - "peer": true, - "dependencies": { - "@vue/shared": "3.5.12" - } - }, - "node_modules/@vue/runtime-dom/node_modules/@vue/shared": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz", - "integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==", - "license": "MIT", - "peer": true - }, - "node_modules/@vue/server-renderer": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.12.tgz", - "integrity": "sha512-I3QoeDDeEPZm8yR28JtY+rk880Oqmj43hreIBVTicisFTx/Dl7JpG72g/X7YF8hnQD3IFhkky5i2bPonwrTVPg==", - "license": "MIT", - "peer": true, - "dependencies": { - "@vue/compiler-ssr": "3.5.12", - "@vue/shared": "3.5.12" - }, - "peerDependencies": { - "vue": "3.5.12" - } - }, - "node_modules/@vue/server-renderer/node_modules/@vue/shared": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz", - "integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==", - "license": "MIT", - "peer": true - }, - "node_modules/@vue/shared": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz", - "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==", - "license": "MIT" - }, "node_modules/adm-zip": { "version": "0.5.16", "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz", @@ -1508,7 +1308,6 @@ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, - "license": "ISC", "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -1528,7 +1327,7 @@ "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "license": "MIT" + "dev": true }, "node_modules/autoprefixer": { "version": "10.4.20", @@ -1572,6 +1371,7 @@ "version": "1.7.7", "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", + "dev": true, "license": "MIT", "dependencies": { "follow-redirects": "^1.15.6", @@ -1587,11 +1387,10 @@ "license": "MIT" }, "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true, - "license": "MIT", "engines": { "node": ">=8" }, @@ -1635,7 +1434,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "devOptional": true, + "dev": true, "license": "MIT", "dependencies": { "fill-range": "^7.1.1" @@ -1690,25 +1489,6 @@ "node": ">=0.8" } }, - "node_modules/call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/camelcase-css": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", @@ -1741,11 +1521,10 @@ "license": "CC-BY-4.0" }, "node_modules/chokidar": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", - "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", - "devOptional": true, - "license": "MIT", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, "dependencies": { "readdirp": "^4.0.1" }, @@ -1754,6 +1533,21 @@ }, "funding": { "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" } }, "node_modules/color-convert": { @@ -1780,7 +1574,7 @@ "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "license": "MIT", + "dev": true, "dependencies": { "delayed-stream": "~1.0.0" }, @@ -1826,13 +1620,6 @@ "node": ">=4" } }, - "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", - "license": "MIT", - "peer": true - }, "node_modules/cuint": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", @@ -1858,37 +1645,11 @@ } } }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "license": "MIT", + "dev": true, "engines": { "node": ">=0.4.0" } @@ -1953,44 +1714,11 @@ "dev": true, "license": "MIT" }, - "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "license": "BSD-2-Clause", - "peer": true, - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, "node_modules/esbuild": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, "hasInstallScript": true, "license": "MIT", "bin": { @@ -2035,13 +1763,6 @@ "node": ">=6" } }, - "node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "license": "MIT", - "peer": true - }, "node_modules/fast-glob": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", @@ -2109,7 +1830,7 @@ "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "devOptional": true, + "dev": true, "license": "MIT", "dependencies": { "to-regex-range": "^5.0.1" @@ -2119,9 +1840,10 @@ } }, "node_modules/follow-redirects": { - "version": "1.15.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", - "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "dev": true, "funding": [ { "type": "individual", @@ -2156,10 +1878,10 @@ } }, "node_modules/form-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", - "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", - "license": "MIT", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dev": true, "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", @@ -2187,6 +1909,7 @@ "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, "hasInstallScript": true, "license": "MIT", "optional": true, @@ -2201,26 +1924,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" - }, - "engines": { - "node": ">= 0.4" - }, + "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -2259,59 +1963,11 @@ "node": ">=10.13.0" } }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", - "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dev": true, "dependencies": { "function-bind": "^1.1.2" }, @@ -2320,11 +1976,10 @@ } }, "node_modules/immutable": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", - "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", - "devOptional": true, - "license": "MIT" + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", + "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", + "dev": true }, "node_modules/ip-address": { "version": "9.0.5", @@ -2345,7 +2000,6 @@ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, - "license": "MIT", "dependencies": { "binary-extensions": "^2.0.0" }, @@ -2373,8 +2027,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "devOptional": true, - "license": "MIT", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -2393,8 +2046,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "devOptional": true, - "license": "MIT", + "dev": true, "dependencies": { "is-extglob": "^2.1.1" }, @@ -2406,7 +2058,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "devOptional": true, + "dev": true, "license": "MIT", "engines": { "node": ">=0.12.0" @@ -2511,18 +2163,6 @@ "dev": true, "license": "MIT" }, - "node_modules/lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==", - "license": "MIT" - }, - "node_modules/lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==", - "license": "MIT" - }, "node_modules/long": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz", @@ -2550,16 +2190,6 @@ "lzma.js": "bin/lzma.js" } }, - "node_modules/magic-string": { - "version": "0.30.12", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.12.tgz", - "integrity": "sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==", - "license": "MIT", - "peer": true, - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.0" - } - }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -2574,7 +2204,7 @@ "version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "devOptional": true, + "dev": true, "license": "MIT", "dependencies": { "braces": "^3.0.3", @@ -2588,7 +2218,7 @@ "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "license": "MIT", + "dev": true, "engines": { "node": ">= 0.6" } @@ -2597,7 +2227,7 @@ "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "license": "MIT", + "dev": true, "dependencies": { "mime-db": "1.52.0" }, @@ -2654,6 +2284,7 @@ "version": "3.3.7", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true, "funding": [ { "type": "github", @@ -2696,7 +2327,6 @@ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -2711,12 +2341,6 @@ "node": ">=0.10.0" } }, - "node_modules/nprogress": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", - "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==", - "license": "MIT" - }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -2737,25 +2361,6 @@ "node": ">= 6" } }, - "node_modules/object-inspect": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", - "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/package-json-from-dist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", - "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", - "dev": true, - "license": "BlueOak-1.0.0" - }, "node_modules/path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", @@ -2807,14 +2412,14 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, "license": "ISC" }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "devOptional": true, - "license": "MIT", + "dev": true, "engines": { "node": ">=8.6" }, @@ -2843,9 +2448,10 @@ } }, "node_modules/postcss": { - "version": "8.4.47", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", - "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", + "version": "8.4.49", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", + "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", + "dev": true, "funding": [ { "type": "opencollective", @@ -2863,7 +2469,7 @@ "license": "MIT", "dependencies": { "nanoid": "^3.3.7", - "picocolors": "^1.1.0", + "picocolors": "^1.1.1", "source-map-js": "^1.2.1" }, "engines": { @@ -3040,7 +2646,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", - "license": "MIT" + "dev": true }, "node_modules/psl": { "version": "1.9.0", @@ -3049,21 +2655,6 @@ "dev": true, "license": "MIT" }, - "node_modules/qs": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", - "license": "BSD-3-Clause", - "dependencies": { - "side-channel": "^1.0.6" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -3096,11 +2687,13 @@ } }, "node_modules/readdirp": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", - "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", - "devOptional": true, - "license": "MIT", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, "engines": { "node": ">= 14.16.0" }, @@ -3139,9 +2732,10 @@ } }, "node_modules/rollup": { - "version": "4.24.3", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.3.tgz", - "integrity": "sha512-HBW896xR5HGmoksbi3JBDtmVzWiPAYqp7wip50hjQ67JbDz61nyoMPdqu1DvVW9asYb2M65Z20ZHsyJCMqMyDg==", + "version": "4.27.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.27.2.tgz", + "integrity": "sha512-KreA+PzWmk2yaFmZVwe6GB2uBD86nXl86OsDkt1bJS9p3vqWuEQ6HnJJ+j/mZi/q0920P99/MVRlB4L3crpF5w==", + "dev": true, "license": "MIT", "dependencies": { "@types/estree": "1.0.6" @@ -3154,24 +2748,24 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.24.3", - "@rollup/rollup-android-arm64": "4.24.3", - "@rollup/rollup-darwin-arm64": "4.24.3", - "@rollup/rollup-darwin-x64": "4.24.3", - "@rollup/rollup-freebsd-arm64": "4.24.3", - "@rollup/rollup-freebsd-x64": "4.24.3", - "@rollup/rollup-linux-arm-gnueabihf": "4.24.3", - "@rollup/rollup-linux-arm-musleabihf": "4.24.3", - "@rollup/rollup-linux-arm64-gnu": "4.24.3", - "@rollup/rollup-linux-arm64-musl": "4.24.3", - "@rollup/rollup-linux-powerpc64le-gnu": "4.24.3", - "@rollup/rollup-linux-riscv64-gnu": "4.24.3", - "@rollup/rollup-linux-s390x-gnu": "4.24.3", - "@rollup/rollup-linux-x64-gnu": "4.24.3", - "@rollup/rollup-linux-x64-musl": "4.24.3", - "@rollup/rollup-win32-arm64-msvc": "4.24.3", - "@rollup/rollup-win32-ia32-msvc": "4.24.3", - "@rollup/rollup-win32-x64-msvc": "4.24.3", + "@rollup/rollup-android-arm-eabi": "4.27.2", + "@rollup/rollup-android-arm64": "4.27.2", + "@rollup/rollup-darwin-arm64": "4.27.2", + "@rollup/rollup-darwin-x64": "4.27.2", + "@rollup/rollup-freebsd-arm64": "4.27.2", + "@rollup/rollup-freebsd-x64": "4.27.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.27.2", + "@rollup/rollup-linux-arm-musleabihf": "4.27.2", + "@rollup/rollup-linux-arm64-gnu": "4.27.2", + "@rollup/rollup-linux-arm64-musl": "4.27.2", + "@rollup/rollup-linux-powerpc64le-gnu": "4.27.2", + "@rollup/rollup-linux-riscv64-gnu": "4.27.2", + "@rollup/rollup-linux-s390x-gnu": "4.27.2", + "@rollup/rollup-linux-x64-gnu": "4.27.2", + "@rollup/rollup-linux-x64-musl": "4.27.2", + "@rollup/rollup-win32-arm64-msvc": "4.27.2", + "@rollup/rollup-win32-ia32-msvc": "4.27.2", + "@rollup/rollup-win32-x64-msvc": "4.27.2", "fsevents": "~2.3.2" } }, @@ -3221,11 +2815,10 @@ "license": "MIT" }, "node_modules/sass": { - "version": "1.80.6", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.80.6.tgz", - "integrity": "sha512-ccZgdHNiBF1NHBsWvacvT5rju3y1d/Eu+8Ex6c21nHp2lZGLBEtuwc415QfiI1PJa1TpCo3iXwwSRjRpn2Ckjg==", - "devOptional": true, - "license": "MIT", + "version": "1.72.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.72.0.tgz", + "integrity": "sha512-Gpczt3WA56Ly0Mn8Sl21Vj94s1axi9hDIzDFn9Ph9x3C3p4nNyvsqJoQyVXKou6cBlfFWEgRW4rT8Tb4i3XnVA==", + "dev": true, "dependencies": { "chokidar": "^4.0.0", "immutable": "^4.0.0", @@ -3247,23 +2840,6 @@ "integrity": "sha512-Hr9TdhyHCZUtwznEH2CBf7967mEM0idtJ5nMtjvk3Up5tPukOLXbHUNmh10oRfeNIhj+3GD3niu+g6sVK+gK0A==", "license": "MIT" }, - "node_modules/set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -3287,24 +2863,6 @@ "node": ">=8" } }, - "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/signal-exit": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", @@ -3363,6 +2921,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" @@ -3779,7 +3338,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "devOptional": true, + "dev": true, "license": "MIT", "dependencies": { "is-number": "^7.0.0" @@ -3796,11 +3355,10 @@ "license": "Apache-2.0" }, "node_modules/undici-types": { - "version": "6.19.8", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", - "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", - "devOptional": true, - "license": "MIT" + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true }, "node_modules/update-browserslist-db": { "version": "1.1.1", @@ -3841,9 +3399,10 @@ "license": "MIT" }, "node_modules/vite": { - "version": "5.4.10", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.10.tgz", - "integrity": "sha512-1hvaPshuPUtxeQ0hsVH3Mud0ZanOLwVTneA1EgbAM5LhaZEqyPWGRQ7BtaMvUrTDeEaC8pxtj6a6jku3x4z6SQ==", + "version": "5.4.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz", + "integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==", + "dev": true, "license": "MIT", "dependencies": { "esbuild": "^0.21.3", @@ -3910,35 +3469,6 @@ "picomatch": "^2.3.1" } }, - "node_modules/vue": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.12.tgz", - "integrity": "sha512-CLVZtXtn2ItBIi/zHZ0Sg1Xkb7+PU32bJJ8Bmy7ts3jxXTcbfsEfBivFYYWz1Hur+lalqGAh65Coin0r+HRUfg==", - "license": "MIT", - "peer": true, - "dependencies": { - "@vue/compiler-dom": "3.5.12", - "@vue/compiler-sfc": "3.5.12", - "@vue/runtime-dom": "3.5.12", - "@vue/server-renderer": "3.5.12", - "@vue/shared": "3.5.12" - }, - "peerDependencies": { - "typescript": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/vue/node_modules/@vue/shared": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.12.tgz", - "integrity": "sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==", - "license": "MIT", - "peer": true - }, "node_modules/websocket-extensions": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", diff --git a/dist/package.json b/dist/package.json index e24806c..f7ca16d 100644 --- a/dist/package.json +++ b/dist/package.json @@ -17,8 +17,6 @@ "vite": "^5.0.0" }, "dependencies": { - "@inertiajs/vue3": "^1.0.14", - "@vitejs/plugin-vue": "^5.0.3", "alpinejs": "^3.13.7", "dotenv": "^16.4.2", "jquery": "^3.7.1", diff --git a/dist/public/img/launcher_img.png b/dist/public/img/launcher_img.png index 018139b..e599325 100644 Binary files a/dist/public/img/launcher_img.png and b/dist/public/img/launcher_img.png differ diff --git a/dist/public/img/logos/DG_Rebirth_Logo.png b/dist/public/img/logos/DG_Rebirth_Logo.png index 206f1b6..3a2ea48 100644 Binary files a/dist/public/img/logos/DG_Rebirth_Logo.png and b/dist/public/img/logos/DG_Rebirth_Logo.png differ diff --git a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_AutoCollect_002.json b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_AutoCollect_002.json index 3af1a0b..d916019 100644 --- a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_AutoCollect_002.json +++ b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_AutoCollect_002.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "400AE859-456112F4-EB7516A4-2821AEF3", - "ChallengeCompletionValue": 25.0, + "ChallengeCompletionValue": 20.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_Autocollect_Hunter.Challenge_Autocollect_Hunter", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_AutoCollect_006.json b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_AutoCollect_006.json index 485ae67..576cb18 100644 --- a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_AutoCollect_006.json +++ b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_AutoCollect_006.json @@ -53,7 +53,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "8DAE5C09-43DA33C2-8E82FC92-B9644702", - "ChallengeCompletionValue": 63.0, + "ChallengeCompletionValue": 50.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_Autocollect_Hunter.Challenge_Autocollect_Hunter", "SubPathString": "" @@ -110,4 +110,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_AutoCollect_010.json b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_AutoCollect_010.json index 195e7c5..8e7cdd4 100644 --- a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_AutoCollect_010.json +++ b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_AutoCollect_010.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "6DFAA855-48F1C349-CE1E6A9F-29188FCF", - "ChallengeCompletionValue": 250.0, + "ChallengeCompletionValue": 100.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_Autocollect_Hunter.Challenge_Autocollect_Hunter", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_Hacker_002.json b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_Hacker_002.json index 450ec65..6cf8c3b 100644 --- a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_Hacker_002.json +++ b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_Hacker_002.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "590D3041-42028901-1FB868A8-9A43F7CF", - "ChallengeCompletionValue": 15.0, + "ChallengeCompletionValue": 5.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_Hacker_Hunter.Challenge_Hacker_Hunter", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_Hacker_006.json b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_Hacker_006.json index 5a98978..16913d0 100644 --- a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_Hacker_006.json +++ b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_Hacker_006.json @@ -53,7 +53,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "CF29BA96-4B65E429-DD2B559A-4D335CD3", - "ChallengeCompletionValue": 38.0, + "ChallengeCompletionValue": 15.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_Hacker_Hunter.Challenge_Hacker_Hunter", "SubPathString": "" @@ -110,4 +110,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_Hacker_010.json b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_Hacker_010.json index 4bf2845..a7498b1 100644 --- a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_Hacker_010.json +++ b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/Inquisitor/HT_Perk_Hacker_010.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "32749AFC-47E7C872-933FC9AB-8E76AD61", - "ChallengeCompletionValue": 150.0, + "ChallengeCompletionValue": 30.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_Hacker_Hunter.Challenge_Hacker_Hunter", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/TheVeteran/HT_Perk_HackedCratesExplode_002.json b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/TheVeteran/HT_Perk_HackedCratesExplode_002.json index fef0b52..4adaf87 100644 --- a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/TheVeteran/HT_Perk_HackedCratesExplode_002.json +++ b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/TheVeteran/HT_Perk_HackedCratesExplode_002.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "0EAEAA3C-494F4F47-A35AF885-FDAD8939", - "ChallengeCompletionValue": 120.0, + "ChallengeCompletionValue": 90.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_HackedCratesExplode_Hunter.Challenge_HackedCratesExplode_Hunter", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/TheVeteran/HT_Perk_HackedCratesExplode_006.json b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/TheVeteran/HT_Perk_HackedCratesExplode_006.json index bc4d3b0..308ed98 100644 --- a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/TheVeteran/HT_Perk_HackedCratesExplode_006.json +++ b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/TheVeteran/HT_Perk_HackedCratesExplode_006.json @@ -53,7 +53,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "43AB4B23-4479F000-2C8D798F-583CF6F4", - "ChallengeCompletionValue": 300.0, + "ChallengeCompletionValue": 120.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_HackedCratesExplode_Hunter.Challenge_HackedCratesExplode_Hunter", "SubPathString": "" @@ -110,4 +110,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/TheVeteran/HT_Perk_HackedCratesExplode_010.json b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/TheVeteran/HT_Perk_HackedCratesExplode_010.json index cf60a79..3dd81ae 100644 --- a/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/TheVeteran/HT_Perk_HackedCratesExplode_010.json +++ b/dist/resources/js/signatureChallenges/Items/Hunters/Character/Items_Released/Perks/TheVeteran/HT_Perk_HackedCratesExplode_010.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "0DEBB341-41DD7D71-9EE5C199-707ED8E4", - "ChallengeCompletionValue": 1200.0, + "ChallengeCompletionValue": 150.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_HackedCratesExplode_Hunter.Challenge_HackedCratesExplode_Hunter", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Collector/RN_Perk_Collector_SuddenInsight_002.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Collector/RN_Perk_Collector_SuddenInsight_002.json index 511c961..64a7c62 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Collector/RN_Perk_Collector_SuddenInsight_002.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Collector/RN_Perk_Collector_SuddenInsight_002.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "21CBC39E-4B2D8C37-439881A5-879570EC", - "ChallengeCompletionValue": 15.0, + "ChallengeCompletionValue": 10.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_SuddenInsight_Runner.Challenge_SuddenInsight_Runner", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Collector/RN_Perk_Collector_SuddenInsight_006.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Collector/RN_Perk_Collector_SuddenInsight_006.json index 0836dae..d45ae29 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Collector/RN_Perk_Collector_SuddenInsight_006.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Collector/RN_Perk_Collector_SuddenInsight_006.json @@ -53,7 +53,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "9BB2D0A0-4B6B1683-25E9A080-E84EBD05", - "ChallengeCompletionValue": 38.0, + "ChallengeCompletionValue": 15.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_SuddenInsight_Runner.Challenge_SuddenInsight_Runner", "SubPathString": "" @@ -110,4 +110,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Collector/RN_Perk_Collector_SuddenInsight_010.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Collector/RN_Perk_Collector_SuddenInsight_010.json index 1a12932..2a070f2 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Collector/RN_Perk_Collector_SuddenInsight_010.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Collector/RN_Perk_Collector_SuddenInsight_010.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "CF611386-4077974B-00CD37B5-1736426B", - "ChallengeCompletionValue": 150.0, + "ChallengeCompletionValue": 20.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_SuddenInsight_Runner.Challenge_SuddenInsight_Runner", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_AmmoOpportunist_002.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_AmmoOpportunist_002.json index 26e8ba3..74c6be1 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_AmmoOpportunist_002.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_AmmoOpportunist_002.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "B4B156CC-47C8D987-B9BDBEB9-10B12C9E", - "ChallengeCompletionValue": 60.0, + "ChallengeCompletionValue": 50.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_AmmoOpportunist_Runner.Challenge_AmmoOpportunist_Runner", "SubPathString": "" @@ -115,4 +115,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_AmmoOpportunist_006.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_AmmoOpportunist_006.json index 98a94cb..5b25fe6 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_AmmoOpportunist_006.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_AmmoOpportunist_006.json @@ -53,7 +53,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "15C92554-4AA67E20-214C8AB0-9F5B33E9", - "ChallengeCompletionValue": 150.0, + "ChallengeCompletionValue": 75.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_AmmoOpportunist_Runner.Challenge_AmmoOpportunist_Runner", "SubPathString": "" @@ -119,4 +119,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_AmmoOpportunist_010.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_AmmoOpportunist_010.json index ea2e7b7..4f6405a 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_AmmoOpportunist_010.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_AmmoOpportunist_010.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "950524C1-44BE794A-ABFFED81-42C119B4", - "ChallengeCompletionValue": 600.0, + "ChallengeCompletionValue": 100.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_AmmoOpportunist_Runner.Challenge_AmmoOpportunist_Runner", "SubPathString": "" @@ -115,4 +115,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_FleetFeet_002.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_FleetFeet_002.json index a1d46ec..9c89031 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_FleetFeet_002.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_FleetFeet_002.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "FD314A69-4D049989-202D01BC-36269F44", - "ChallengeCompletionValue": 150.0, + "ChallengeCompletionValue": 100.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_FleetFeet_Runner.Challenge_FleetFeet_Runner", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_FleetFeet_006.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_FleetFeet_006.json index a621db7..bf5ac34 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_FleetFeet_006.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_FleetFeet_006.json @@ -53,7 +53,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "0A728AD5-4AF5EAB6-CB4356A0-74F01C1B", - "ChallengeCompletionValue": 375.0, + "ChallengeCompletionValue": 250.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_FleetFeet_Runner.Challenge_FleetFeet_Runner", "SubPathString": "" @@ -110,4 +110,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_FleetFeet_010.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_FleetFeet_010.json index 9bf3b28..cd27373 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_FleetFeet_010.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_FleetFeet_010.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "688EC170-4C4EA4BC-B18181AD-E23E2C3D", - "ChallengeCompletionValue": 1500.0, + "ChallengeCompletionValue": 500.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_FleetFeet_Runner.Challenge_FleetFeet_Runner", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_HeatOfTheMoment_002.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_HeatOfTheMoment_002.json index a9da46e..d9a0986 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_HeatOfTheMoment_002.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_HeatOfTheMoment_002.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "4F99C439-49B5CAC8-7BCEB487-7B7FAB64", - "ChallengeCompletionValue": 60.0, + "ChallengeCompletionValue": 50.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_HeatOfTheMoment_Runner.Challenge_HeatOfTheMoment_Runner", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_HeatOfTheMoment_006.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_HeatOfTheMoment_006.json index 884fe0b..c50d743 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_HeatOfTheMoment_006.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_HeatOfTheMoment_006.json @@ -53,7 +53,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "2ABDC29A-4D174CDC-114AEBAC-B898927E", - "ChallengeCompletionValue": 150.0, + "ChallengeCompletionValue": 75.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_HeatOfTheMoment_Runner.Challenge_HeatOfTheMoment_Runner", "SubPathString": "" @@ -110,4 +110,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_HeatOfTheMoment_010.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_HeatOfTheMoment_010.json index ff19eee..72d9b12 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_HeatOfTheMoment_010.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Fog/RN_Perk_HeatOfTheMoment_010.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "37B650F1-45BF27B3-B670CB9D-84D58111", - "ChallengeCompletionValue": 600.0, + "ChallengeCompletionValue": 100.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_HeatOfTheMoment_Runner.Challenge_HeatOfTheMoment_Runner", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Sawbones/RN_Perk_Sawbones_HealthFaster_002.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Sawbones/RN_Perk_Sawbones_HealthFaster_002.json index ce8c443..69fdd42 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Sawbones/RN_Perk_Sawbones_HealthFaster_002.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Sawbones/RN_Perk_Sawbones_HealthFaster_002.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "CA2FE47E-45EE792D-FA26FFA3-A30FC0A3", - "ChallengeCompletionValue": 60.0, + "ChallengeCompletionValue": 30.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_HealFaster_Runner.Challenge_HealFaster_Runner", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Sawbones/RN_Perk_Sawbones_HealthFaster_006.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Sawbones/RN_Perk_Sawbones_HealthFaster_006.json index 8a0bbd1..594ea27 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Sawbones/RN_Perk_Sawbones_HealthFaster_006.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Sawbones/RN_Perk_Sawbones_HealthFaster_006.json @@ -53,7 +53,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "0E514F8A-467DB3E7-DEBF99AB-AC2313A0", - "ChallengeCompletionValue": 150.0, + "ChallengeCompletionValue": 60.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_HealFaster_Runner.Challenge_HealFaster_Runner", "SubPathString": "" @@ -110,4 +110,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Sawbones/RN_Perk_Sawbones_HealthFaster_010.json b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Sawbones/RN_Perk_Sawbones_HealthFaster_010.json index 2cfa7ae..0959e19 100644 --- a/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Sawbones/RN_Perk_Sawbones_HealthFaster_010.json +++ b/dist/resources/js/signatureChallenges/Items/Runners/Character/Items_Released/Perks/Sawbones/RN_Perk_Sawbones_HealthFaster_010.json @@ -49,7 +49,7 @@ "RequiredChallengesToComplete": [ { "ChallengeId": "DE925104-43074D9D-B518B7A9-3A3A2FD9", - "ChallengeCompletionValue": 600.0, + "ChallengeCompletionValue": 90.0, "ChallengeAsset": { "AssetPathName": "/Game/Challenges/Progression/Challenge_HealFaster_Runner.Challenge_HealFaster_Runner", "SubPathString": "" @@ -106,4 +106,4 @@ "Version": 1 } } -] \ No newline at end of file +] diff --git a/dist/resources/views/admin/tools/file-manager.blade.php b/dist/resources/views/admin/tools/file-manager.blade.php index ceee412..dfa456f 100644 --- a/dist/resources/views/admin/tools/file-manager.blade.php +++ b/dist/resources/views/admin/tools/file-manager.blade.php @@ -6,81 +6,95 @@ /** @var Patchline $patchline */ @endphp - -
-

Deathgarden file manager

- -
-
-
- - -
-
- - -
+ +
+

Deathgarden file manager

+ +
+
+ +
- + +
+ + +
+
+ -
- - - @if($showAdditionalFiles) +
+
+ + + @if ($showAdditionalFiles) - @else + @else - @endif - - - - - - @foreach($files as $file) - $file->action === FileAction::ADD, - '!bg-red-600 hover:!bg-red-500' => $file->action === FileAction::DELETE - ]) - > - @if($showAdditionalFiles) + @endif + + + + + + @foreach ($files as $file) + $file->action === FileAction::ADD, + '!bg-red-600 hover:!bg-red-500' => $file->action === FileAction::DELETE, + ])> - - + @if ($showAdditionalFiles) + + + @else - - + + @endif - @endforeach - -
Name Description Filename / HashFilename HashSizeLast updateActions
SizeLast updateActions
- {{ $file->name }} - - {{ $file->description }} - - {{ $file->filename }}
- {{ $file->hash }} + @if ($file->children && $file->children->count() > 0) + + @endif
+ {{ $file->name }} + + {{ $file->description }} + + {{ $file->filename }}
+ {{ $file->hash }} +
- {{ $file->filename }} - - {{ $file->hash }} - + {{ $file->filename }} + {{ $file->parent }} + + {{ $file->hash }} + - @if($file->fileExists()) - {{ round($file->getFileSize() / 1000, 1) }} kB + @if ($file->fileExists()) + {{ round($file->getFileSize() / 1000, 1) }} kB @else - Error while fetching file + N/A @endif @@ -91,9 +105,11 @@ class="w-6 h-6 ml-4" method="POST"> @method('PUT') @csrf - + -
@method('DELETE') @csrf @@ -104,17 +120,58 @@ class="w-6 h-6 ml-4"
-
-
- - - @csrf -
- @if($showAdditionalFiles) + @if ($file->children && $file->children->count() > 0) + + + + + + + @if ($showAdditionalFiles) + + + @else + + @endif + + + + + @foreach ($file->children as $child) + $child->action === FileAction::ADD, + '' => $child->action === FileAction::DELETE, + ])> + + @if ($showAdditionalFiles) + + @endif + + + @endforeach + +
File uploadedDescriptionFile uploadedHash
+ {{ $child->created_at }} + + {{ $child->description }} + {{ $child->hash }}
+ + + @endif + @endforeach + + + +
+ + + + @csrf +
+ @if ($showAdditionalFiles)
@@ -123,35 +180,33 @@ class="w-6 h-6 ml-4"
- @endif -
-
- -
- -
- -
+ @endif +
+
+ +
+ +
+
-
- @if (!$showAdditionalFiles) +
+ @if (!$showAdditionalFiles)
Add More Files
- @endif -
- - Submit - -
+ @endif +
+ + Submit +
@@ -159,19 +214,34 @@ class="w-1/12 rounded-md h-[41.43px] bg-gray-800/75 border border-gray-600 text-
- - \ No newline at end of file + window.scrollTo(0, document.body.scrollHeight); + }); + @endif + + // Add event listener to file input of the initial input group + var initialFileInput = document.querySelector('input[name="files[]"]'); + addFileInputEventListener(initialFileInput); + + diff --git a/dist/resources/views/admin/tools/match-configuration.blade.php b/dist/resources/views/admin/tools/match-configuration.blade.php index 32f476e..3327224 100644 --- a/dist/resources/views/admin/tools/match-configuration.blade.php +++ b/dist/resources/views/admin/tools/match-configuration.blade.php @@ -3,14 +3,15 @@ $experienceMultipliers = \App\Models\Admin\ExperienceMultipliers::get(); $currencyMultipliers = \App\Models\Admin\CurrencyMultipliers::get(); + $matchmakingSettings = \App\Models\Admin\MatchmakingSettings::get(); @endphp
-
+ @csrf - + Experience Multipliers @@ -139,7 +140,7 @@ Save -
+ @csrf Currency Multipliers @@ -190,6 +191,29 @@ Save +
+ @csrf + + Matchmaking Settings + + +
+ + + +
+ + Save + +
\ No newline at end of file diff --git a/dist/resources/views/components/admin/chat-history.blade.php b/dist/resources/views/components/admin/chat-history.blade.php new file mode 100644 index 0000000..7f10372 --- /dev/null +++ b/dist/resources/views/components/admin/chat-history.blade.php @@ -0,0 +1,34 @@ +@php + /** @var \App\Classes\Frontend\ChatMessage[] $messages */ +@endphp + + + + + + + + + + + @foreach($messages as $message) + + + + + + @endforeach + +
+ Timestamp + + User + + Message +
+ {{ $message->messageTime }} + + + + {{ $message->message }} +
\ No newline at end of file diff --git a/dist/resources/views/components/admin/match-info.blade.php b/dist/resources/views/components/admin/match-info.blade.php new file mode 100644 index 0000000..d94e8c6 --- /dev/null +++ b/dist/resources/views/components/admin/match-info.blade.php @@ -0,0 +1,63 @@ +@php + use App\Models\User\User; + + /** @var \App\Models\Admin\Archive\ArchivedGame $game */ +/** @var \Illuminate\Database\Eloquent\Collection|\App\Models\Admin\Archive\ArchivedPlayerProgression[] $players */ +@endphp + +
+

+ MATCH ID: {{ $game->id }} +

+ + + + + + + + + + + @foreach($players as $user) + + + + + + + @endforeach + +
+ User + + Has Quit + + Played Character + + Character State +
+ + + @if($user->has_quit) +
+ +
+ @else +
+
+ +
+
+ @endif +
+ {{ $user->played_character }} + + {{ $user->character_state }} +
+ +

+ CHAT HISTORY +

+ +
\ No newline at end of file diff --git a/dist/resources/views/components/admin/tools/chat-message-entry.blade.php b/dist/resources/views/components/admin/tools/chat-message-entry.blade.php index a35faf2..1d6ccc3 100644 --- a/dist/resources/views/components/admin/tools/chat-message-entry.blade.php +++ b/dist/resources/views/components/admin/tools/chat-message-entry.blade.php @@ -1,6 +1,10 @@ @php + use App\Models\Admin\Archive\ArchivedGame; /** @var \App\Models\Admin\BadChatMessage $message */ + + $match = ArchivedGame::find($message->match_id); @endphp +
@csrf @@ -49,7 +53,28 @@ @if($message->handled) +
{{ $message->consequences ?? '---' }}
+ @if($match !== null) + + @if($match === null) + not found :( + @else + match chat + @endif + + + @endif +
@if($message->handledBy === null) @@ -88,6 +113,25 @@ class="save" + @if($match !== null) + + @if($match === null) + not found :( + @else + match chat + @endif + + + @endif
\ No newline at end of file diff --git a/dist/resources/views/components/web/sidebar/index.blade.php b/dist/resources/views/components/web/sidebar/index.blade.php index 89d3993..099a7bd 100644 --- a/dist/resources/views/components/web/sidebar/index.blade.php +++ b/dist/resources/views/components/web/sidebar/index.blade.php @@ -56,7 +56,11 @@ class="bg-slate-700 mx-4 p-2 rounded gap-4 flex justify-center outline outline-1 Download - + + Patch Notes + + + How to Play diff --git a/dist/resources/views/web/credits.blade.php b/dist/resources/views/web/credits.blade.php index 5bf4b9c..d65cf8f 100644 --- a/dist/resources/views/web/credits.blade.php +++ b/dist/resources/views/web/credits.blade.php @@ -2,34 +2,41 @@ Credits - + - Programmed the Backend and the Website. + Lead Programmer of Backend & Website - + - Programmed the launcher and DevOps. + Launcher Programmer and Dev Ops - + - Leads the Deathgarden: Rebirth team and manages balance changes. - - - - - - Project Rebirth is not affiliated with Deathgarden: Rebirth.
- Project Rebirth’s base code helped during the development of Deathgarden: Rebirth. -
-
- - - - Manages community communication and designs balance changes. + Responsible for the overall creative vision, team leadership, and project management + + + Focused on gameplay systems, mechanics, and game balancing + + + + + Focused on narrative content and designed analytics pipelines to support design decisions + + + + + Provided key observations on system behavior and architecture. + + + + + Manages community engagement and shares the game’s journey across social platforms + + Creates and designs graphics. Moderates the Discord and game. @@ -51,11 +58,11 @@ Moderates the Discord and game. - + - Moderates the Discord and game. + Improved and refined the French translation for Deathgarden: Rebirth. - \ No newline at end of file + diff --git a/dist/resources/views/web/patch-notes.blade.php b/dist/resources/views/web/patch-notes.blade.php new file mode 100644 index 0000000..6f75d60 --- /dev/null +++ b/dist/resources/views/web/patch-notes.blade.php @@ -0,0 +1,246 @@ + +
+ + Patch Notes History + + + Last Updated: 06/20/2025 + + + + Stay up to date with all the changes, improvements, and updates in Deathgarden: Rebirth. + Below is a complete archive of every patch since the mod's release. Click the links to view the full patch notes. + + + + + + Release Date: June 13, 2025 + + Balance patch with Scavenger Bolt nerfs, and tweaks to Stalker and Burst Rifle for fairer gameplay. + + + + View Full Patch Notes + + + + + + + + Release Date: March 29, 2025 + + This patch enhances Sawbones' role as a supportive team player. + + + + View Full Patch Notes + + + + + + + + Release Date: February 21, 2025 + + This patch adjust the balance of the Jasper 67V Auto Shotgun and improves Inked's support orientated Perks. + + + + View Full Patch Notes + + + + + + + + Release Date: December 29, 2024 + + As we wrap up 2024, we’re excited to bring you the last patch of the year, + featuring some key balance changes. We’ve increased the blood charges for Survival and Harvest Your Exit in 1v4 to ensure a more strategic challenge for Scavengers. + Additionally, we've made adjustments to weapons like the Wyvern's Breath ST22 Sniper Rifle and Mowzer 320 Auto Sniper to enhance consistency and smoothen gameplay + + + + View Full Patch Notes + + + + + + + + Release Date: December 22, 2024 + + The patch increases the "Unlimited Golden Crate" duration for Hunters to 20 seconds, + fixes progression issues with signature challenges, + resolves spawn and exit bugs in Survival 1v4, corrects a Wyvern's Breath ST22 spread penalty, + and addresses weapon change issues for The Veteran and The Inquisitor. + + + + View Full Patch Notes + + + + + + + + Release Date: December 19, 2024 + + Patch 1.2.0 brings back Steam Achievements, allowing players to track their progress. + Daily, Weekly, and Event Challenges return with fresh objectives. + The Tombstone Map gets a rework, offering a new look and feel. + The Veteran receives a major overhaul to enhance her gameplay, while the Stalker Kit sees updates for new strategies. + Additional balance adjustments improve the overall gameplay experience. + + + + View Full Patch Notes + + + + + + + + Release Date: October 31, 2024 + + Patch 1.1.8 introduces the Dark Harvest Halloween Event, featuring night weather state in the Deathgarden for all maps. Players can also unlock exclusive Halloween-themed masks during the event. + + + + View Full Patch Notes + + + + + + + + Release Date: October 3, 2024 + + The "Shield" Bolt duration has been reduced, while the "Wyvern’s Breath ST22" Sniper Rifle has received a damage increase. + + + + View Full Patch Notes + + + + + + + + Release Date: September 24, 2024 + + The "Heal" Bolt now takes longer to complete its healing across all levels. The "Anti-Personnel Turret" ability's detection range has been adjusted, + with an increase at lower levels and a decrease at higher levels. + + + + View Full Patch Notes + + + + + + + + Release Date: September 19, 2024 + + The "Active Camo" Bolt duration has been shortened at all levels. The "Quick Rescue" Sawbones Passive now has a longer rescue speed bonus. + The "Scavenger Invulnerability Window" has been reduced and now starts correctly when the Scavenger can move. The "Jasper 67V" Auto Shotgun has received several adjustments, + including slower reload speed, reduced magazine size, lower max ammo reserves, and less ammo from crates. + The "Prestige Cost" has been increased at higher tiers, with Tier 1 remaining the same. + + + + View Full Patch Notes + + + + + + + + Release Date: September 15, 2024 + + The "Rattler RX35" Grenade Launcher has a longer reload speed and no stagger effect. The Veteran Kit adjustments include reduced damage for the "Orbital Strike," + increased cooldown for the "I See You!" Melee, the addition of a "disrupt" effect to the Melee, and a smaller blast radius for the "Turn up the Heat" perk. + + + + View Full Patch Notes + + + + + + + + Release Date: September 12, 2024 + + The "Passam Hacksaw T24" Light Machine Gun has a reduced rate of fire, increased spread, and lower ammo reserves. The "Wyvern’s Breath ST22" Sniper Rifle has faster shots, + reduced close-range damage penalty, and a larger magazine and max ammo capacity. Drone changes reduce the total number of drones and increase activation time, + with randomized safe zones for Scavengers. The "Resource Rush" event boosts XP and currency rates for enhanced gameplay over the weekend. + + + + View Full Patch Notes + + + + + + + + Release Date: September 7, 2024 + + The "Speed Boost" and "Fleet Feet" bolts/perks have reduced movement speed durations at all levels. The Blood Needle deposit requirement has been increased to 60 Blood. + Progression adjustments include slower XP and currency gains, with standardized currency spend across all types. The currency required to max out abilities, weapons, vambraces, perks, + and cosmetics has been adjusted. Fixed issues include visual bugs with the "Trisynkt .45C" and "Heal" Bolt, as well as a matchmaking issue that briefly disabled the queue. + + + + View Full Patch Notes + + + + + + + + Release Date: September 6, 2024 + + The Launch Patch includes numerous changes to Powers, Vambraces, Weapons, Perks, and global vitality adjustments, improving overall gameplay balance and mechanics. + + + + View Full Patch Notes + + + + + + +
+ diff --git a/dist/routes/admin.php b/dist/routes/admin.php index 4b90d1a..9b367b0 100644 --- a/dist/routes/admin.php +++ b/dist/routes/admin.php @@ -56,6 +56,7 @@ Route::get('match-configuration', [MatchConfigurationController::class, 'index'])->name(MatchConfigurationController::class); Route::post('match-configuration/experience', [MatchConfigurationController::class, 'saveExperience'])->name('match-configuration.save.experience'); Route::post('match-configuration/currency', [MatchConfigurationController::class, 'saveCurrency'])->name('match-configuration.save.currency'); +Route::post('match-configuration/matchmaking', [MatchConfigurationController::class, 'saveMatchmaking'])->name('match-configuration.save.matchmaking'); Route::fallback(function () { return redirect(route('admin.dashboard')); diff --git a/dist/routes/web.php b/dist/routes/web.php index 4c487e7..172a252 100644 --- a/dist/routes/web.php +++ b/dist/routes/web.php @@ -37,6 +37,7 @@ Route::get('download', [HomepageController::class, 'download'])->name('download'); Route::get('download-launcher', [HomepageController::class, 'downloadLauncher'])->name('download.launcher'); +Route::get('patch-notes', [HomepageController::class, 'patchNotes'])->name('patch-notes'); Route::get('how-to-play', [HomepageController::class, 'howToPlay'])->name('how-to-play'); Route::get('known-issues', [HomepageController::class, 'knownIssues'])->name('known-issues'); Route::get('eula', [HomepageController::class, 'eula'])->name('eula'); diff --git a/dist/storage/app/catalog/catalog.json b/dist/storage/app/catalog/catalog.json index 565096e..95ae5dc 100644 --- a/dist/storage/app/catalog/catalog.json +++ b/dist/storage/app/catalog/catalog.json @@ -6036,6 +6036,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -6077,6 +6081,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -6118,6 +6126,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -6191,6 +6203,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -6332,6 +6348,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -6373,6 +6393,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -6742,6 +6766,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -6783,6 +6811,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -6824,6 +6856,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -7084,6 +7120,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -7125,6 +7165,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -7166,6 +7210,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -7207,6 +7255,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -7248,6 +7300,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -7289,6 +7345,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -7330,6 +7390,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -7371,6 +7435,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -7554,6 +7622,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -7595,6 +7667,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -7636,6 +7712,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -7677,6 +7757,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -7718,6 +7802,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -7865,6 +7953,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -7906,6 +7998,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -7947,6 +8043,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -7988,6 +8088,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -8029,6 +8133,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -8212,6 +8320,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -8253,6 +8365,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -8294,6 +8410,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -8335,6 +8455,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -8376,6 +8500,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -8555,6 +8683,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -8596,6 +8728,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -8637,6 +8773,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -8678,6 +8818,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -8719,6 +8863,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -9074,6 +9222,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -9115,6 +9267,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -9156,6 +9312,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -9197,6 +9357,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -9238,6 +9402,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -9356,6 +9524,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -9397,6 +9569,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -9438,6 +9614,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -9479,6 +9659,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -9520,6 +9704,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -9670,6 +9858,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -9711,6 +9903,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -9752,6 +9948,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -9793,6 +9993,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -9834,6 +10038,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -9989,6 +10197,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -10026,6 +10238,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -10065,6 +10281,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -10102,6 +10322,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -10139,6 +10363,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -10175,11 +10403,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -10218,11 +10450,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -10259,11 +10495,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -10300,11 +10540,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -10341,11 +10585,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -10417,6 +10665,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -10456,6 +10708,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -10493,6 +10749,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -10530,6 +10790,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -10566,11 +10830,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -10609,11 +10877,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -10650,11 +10922,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -10691,11 +10967,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -10732,11 +11012,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -10776,6 +11060,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -10813,6 +11101,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -10852,6 +11144,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -10889,6 +11185,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -10926,6 +11226,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -10962,11 +11266,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -11005,11 +11313,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -11046,11 +11358,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -11087,11 +11403,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -11128,11 +11448,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -11208,6 +11532,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -11251,6 +11579,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -11292,6 +11624,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -11333,6 +11669,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -11373,11 +11713,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -11420,11 +11764,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -11465,11 +11813,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -11510,11 +11862,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -11555,11 +11911,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -11639,6 +11999,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -11682,6 +12046,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -11723,6 +12091,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -11764,6 +12136,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -11804,11 +12180,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -11851,11 +12231,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -11896,11 +12280,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -11941,11 +12329,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -11986,11 +12378,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -12034,6 +12430,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -12075,6 +12475,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -12118,6 +12522,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -12159,6 +12567,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -12200,6 +12612,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -12240,11 +12656,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -12287,11 +12707,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -12332,11 +12756,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -12377,11 +12805,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -12422,11 +12854,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -12470,6 +12906,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -12511,6 +12951,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -12554,6 +12998,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -12595,6 +13043,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -12636,6 +13088,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -12676,11 +13132,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -12723,11 +13183,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -12768,11 +13232,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -12813,11 +13281,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -12858,11 +13330,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -12938,6 +13414,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -12977,6 +13457,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -13014,6 +13498,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -13051,6 +13539,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -13087,11 +13579,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -13130,11 +13626,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -13171,11 +13671,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -13212,11 +13716,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -13253,11 +13761,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -13297,6 +13809,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -13334,6 +13850,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -13373,6 +13893,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -13410,6 +13934,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -13447,6 +13975,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -13483,11 +14015,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -13526,11 +14062,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -13567,11 +14107,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -13608,11 +14152,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -13649,11 +14197,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -13693,6 +14245,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -13734,6 +14290,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -13777,6 +14337,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -13818,6 +14382,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -13859,6 +14427,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -13899,11 +14471,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -13946,11 +14522,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -13991,11 +14571,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -14036,11 +14620,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -14081,11 +14669,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -14129,6 +14721,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -14166,6 +14762,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -14205,6 +14805,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -14242,6 +14846,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -14279,6 +14887,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -14315,11 +14927,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -14358,11 +14974,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -14399,11 +15019,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -14440,11 +15064,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -14481,11 +15109,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -14557,6 +15189,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -14596,6 +15232,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -14633,6 +15273,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -14670,6 +15314,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -14706,11 +15354,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -14749,11 +15401,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -14790,11 +15446,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -14831,11 +15491,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -14872,11 +15536,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -14916,6 +15584,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -14953,6 +15625,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -14992,6 +15668,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -15029,6 +15709,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -15066,6 +15750,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -15102,11 +15790,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -15145,11 +15837,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -15186,11 +15882,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -15227,11 +15927,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -15268,11 +15972,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -15344,6 +16052,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -15383,6 +16095,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -15420,6 +16136,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -15457,6 +16177,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -15493,11 +16217,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -15536,11 +16264,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -15577,11 +16309,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -15618,11 +16354,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -15659,11 +16399,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -15703,6 +16447,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -15740,6 +16488,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -15779,6 +16531,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -15816,6 +16572,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -15853,6 +16613,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -15889,11 +16653,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -15932,11 +16700,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -15973,11 +16745,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -16014,11 +16790,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -16055,11 +16835,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -16099,6 +16883,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -16136,6 +16924,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -16175,6 +16967,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -16212,6 +17008,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -16249,6 +17049,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -16285,11 +17089,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -16328,11 +17136,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -16369,11 +17181,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -16410,11 +17226,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -16451,11 +17271,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -16495,6 +17319,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -16536,6 +17364,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -16579,6 +17411,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -16620,6 +17456,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -16661,6 +17501,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -16701,11 +17545,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -16748,11 +17596,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -16793,11 +17645,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -16838,11 +17694,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -16883,11 +17743,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -16931,6 +17795,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -16968,6 +17836,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -17007,6 +17879,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -17044,6 +17920,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -17081,6 +17961,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -17117,11 +18001,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -17160,11 +18048,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -17201,11 +18093,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -17242,11 +18138,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -17283,11 +18183,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -17327,6 +18231,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -17364,6 +18272,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -17403,6 +18315,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -17440,6 +18356,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -17477,6 +18397,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -17513,11 +18437,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -17556,11 +18484,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -17597,11 +18529,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -17638,11 +18574,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -17679,11 +18619,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -17755,6 +18699,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -17794,6 +18742,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -17831,6 +18783,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -17868,6 +18824,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -17904,11 +18864,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -17947,11 +18911,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -17988,11 +18956,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -18029,11 +19001,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -18070,11 +19046,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -18114,6 +19094,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -18151,6 +19135,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -18190,6 +19178,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -18227,6 +19219,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -18264,6 +19260,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -18300,11 +19300,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -18343,11 +19347,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -18384,11 +19392,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -18425,11 +19437,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -18466,11 +19482,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -18510,6 +19530,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -18547,6 +19571,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -18586,6 +19614,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -18623,6 +19655,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -18660,6 +19696,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -18696,11 +19736,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -18739,11 +19783,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -18780,11 +19828,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -18821,11 +19873,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -18862,11 +19918,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -18938,6 +19998,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -18977,6 +20041,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -19014,6 +20082,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -19051,6 +20123,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -19087,11 +20163,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -19130,11 +20210,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -19171,11 +20255,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -19212,11 +20300,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -19253,11 +20345,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -19297,6 +20393,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -19334,6 +20434,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -19373,6 +20477,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -19410,6 +20518,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -19447,6 +20559,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -19483,11 +20599,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -19526,11 +20646,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -19567,11 +20691,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -19608,11 +20736,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -19649,11 +20781,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -20374,6 +21510,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -20415,6 +21555,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -20456,6 +21600,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -20497,6 +21645,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -20538,6 +21690,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -20651,6 +21807,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -20692,6 +21852,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -20733,6 +21897,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -20774,6 +21942,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -20815,6 +21987,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -21028,6 +22204,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -21069,6 +22249,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -21110,6 +22294,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -21151,6 +22339,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -21192,6 +22384,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -21305,6 +22501,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -21346,6 +22546,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -21387,6 +22591,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -21428,6 +22636,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -21469,6 +22681,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -23165,6 +24381,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -23242,6 +24462,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -23559,6 +24783,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -23600,6 +24828,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -23754,6 +24986,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -23795,6 +25031,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -23836,6 +25076,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -23877,6 +25121,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -23918,6 +25166,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -24031,6 +25283,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -24072,6 +25328,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -24113,6 +25373,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -24154,6 +25418,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -24195,6 +25463,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -24272,6 +25544,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -24313,6 +25589,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -24426,6 +25706,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -24467,6 +25751,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -24508,6 +25796,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -24549,6 +25841,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -24590,6 +25886,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -26419,6 +27719,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -26460,6 +27764,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -26501,6 +27809,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -26542,6 +27854,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -26583,6 +27899,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -26624,6 +27944,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -26665,6 +27989,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -26706,6 +28034,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -26747,6 +28079,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -26788,6 +28124,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -27045,6 +28385,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -27086,6 +28430,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -27127,6 +28475,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -27168,6 +28520,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -27209,6 +28565,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -27358,6 +28718,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -27399,6 +28763,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -27440,6 +28808,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -27481,6 +28853,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -27522,6 +28898,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -28226,6 +29606,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -28267,6 +29651,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -28308,6 +29696,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 3250 + }, { "currencyId": "CurrencyC", "price": 4500 @@ -28349,6 +29741,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 3250 + }, { "currencyId": "CurrencyC", "price": 4500 @@ -28390,6 +29786,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -28431,6 +29831,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -28472,6 +29876,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -28513,6 +29921,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -28554,6 +29966,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -28595,6 +30011,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 3250 + }, { "currencyId": "CurrencyC", "price": 4500 @@ -28636,6 +30056,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 3250 + }, { "currencyId": "CurrencyC", "price": 4500 @@ -28677,6 +30101,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -28718,6 +30146,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -28759,6 +30191,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -29014,6 +30450,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -29055,6 +30495,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -29096,6 +30540,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 3250 + }, { "currencyId": "CurrencyC", "price": 4500 @@ -29137,6 +30585,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 3250 + }, { "currencyId": "CurrencyC", "price": 4500 @@ -29178,6 +30630,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -29219,6 +30675,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -29260,6 +30720,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -29445,6 +30909,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -29486,6 +30954,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -29527,6 +30999,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 3250 + }, { "currencyId": "CurrencyC", "price": 4500 @@ -29568,6 +31044,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 3250 + }, { "currencyId": "CurrencyC", "price": 4500 @@ -29609,6 +31089,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -29650,6 +31134,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -29691,6 +31179,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -30060,6 +31552,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -30133,6 +31629,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -30174,6 +31674,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -30215,6 +31719,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -30328,6 +31836,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -30369,6 +31881,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -30410,6 +31926,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -30451,6 +31971,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -30492,6 +32016,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -30533,6 +32061,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -30574,6 +32106,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -30615,6 +32151,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -30656,6 +32196,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -30697,6 +32241,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -30738,6 +32286,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -30779,6 +32331,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -30820,6 +32376,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -31001,6 +32561,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -31042,6 +32606,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -31083,6 +32651,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -31124,6 +32696,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -31165,6 +32741,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -31206,6 +32786,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -31247,6 +32831,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -31288,6 +32876,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -31465,6 +33057,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -31506,6 +33102,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -31547,6 +33147,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -31660,6 +33264,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -31701,6 +33309,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -31742,6 +33354,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -31783,6 +33399,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -31824,6 +33444,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -32324,6 +33948,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -32365,6 +33993,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -32406,6 +34038,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -32447,6 +34083,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -32488,6 +34128,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -32529,6 +34173,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -32570,6 +34218,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -32611,6 +34263,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -32652,6 +34308,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -32693,6 +34353,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -32838,6 +34502,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -32879,6 +34547,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -32920,6 +34592,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -32961,6 +34637,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -33002,6 +34682,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -33287,6 +34971,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -33328,6 +35016,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -33369,6 +35061,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -33410,6 +35106,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -33451,6 +35151,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -33527,6 +35231,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -33566,6 +35274,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -33603,6 +35315,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -33640,6 +35356,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -33676,11 +35396,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -33719,11 +35443,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -33760,11 +35488,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -33801,11 +35533,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -33842,11 +35578,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -33922,6 +35662,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -33965,6 +35709,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -34006,6 +35754,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -34047,6 +35799,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -34087,11 +35843,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -34134,11 +35894,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -34179,11 +35943,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -34224,11 +35992,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -34269,11 +36041,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -34317,6 +36093,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -34354,6 +36134,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -34393,6 +36177,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -34430,6 +36218,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -34467,6 +36259,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -34503,11 +36299,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -34546,11 +36346,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -34587,11 +36391,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -34628,11 +36436,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -34669,11 +36481,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -34713,6 +36529,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -34750,6 +36570,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -34789,6 +36613,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -34826,6 +36654,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -34863,6 +36695,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -34899,11 +36735,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -34942,11 +36782,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -34983,11 +36827,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -35024,11 +36872,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -35065,11 +36917,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -35109,6 +36965,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -35146,6 +37006,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -35185,6 +37049,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -35222,6 +37090,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -35259,6 +37131,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -35295,11 +37171,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -35338,11 +37218,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -35379,11 +37263,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -35420,11 +37308,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -35461,11 +37353,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -35537,6 +37433,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -35576,6 +37476,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -35613,6 +37517,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -35650,6 +37558,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -35686,11 +37598,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -35729,11 +37645,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -35770,11 +37690,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -35811,11 +37735,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -35852,11 +37780,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -35896,6 +37828,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -35933,6 +37869,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -35972,6 +37912,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -36009,6 +37953,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -36046,6 +37994,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -36082,11 +38034,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -36125,11 +38081,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -36166,11 +38126,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -36207,11 +38171,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -36248,11 +38216,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -36324,6 +38296,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -36363,6 +38339,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -36400,6 +38380,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -36437,6 +38421,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -36473,11 +38461,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -36516,11 +38508,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -36557,11 +38553,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -36598,11 +38598,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -36639,11 +38643,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -36683,6 +38691,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -36724,6 +38736,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -36767,6 +38783,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -36808,6 +38828,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -36849,6 +38873,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -36889,11 +38917,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -36936,11 +38968,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -36981,11 +39017,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -37026,11 +39066,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -37071,11 +39115,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -37119,6 +39167,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -37156,6 +39208,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -37195,6 +39251,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -37232,6 +39292,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -37269,6 +39333,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -37305,11 +39373,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -37348,11 +39420,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -37389,11 +39465,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -37430,11 +39510,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -37471,11 +39555,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -37551,6 +39639,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -37594,6 +39686,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -37635,6 +39731,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -37676,6 +39776,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -37716,11 +39820,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -37763,11 +39871,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -37808,11 +39920,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -37853,11 +39969,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -37898,11 +40018,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -37946,6 +40070,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -37987,6 +40115,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -38030,6 +40162,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -38071,6 +40207,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -38112,6 +40252,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -38152,11 +40296,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -38199,11 +40347,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -38244,11 +40396,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -38289,11 +40445,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -38334,11 +40494,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -38382,6 +40546,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -38419,6 +40587,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -38458,6 +40630,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -38495,6 +40671,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -38532,6 +40712,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -38568,11 +40752,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -38611,11 +40799,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -38652,11 +40844,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -38693,11 +40889,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -38734,11 +40934,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -38778,6 +40982,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -38815,6 +41023,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -38854,6 +41066,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -38891,6 +41107,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -38928,6 +41148,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -38964,11 +41188,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -39007,11 +41235,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -39048,11 +41280,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -39089,11 +41325,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -39130,11 +41370,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -39206,6 +41450,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -39245,6 +41493,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -39282,6 +41534,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -39319,6 +41575,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -39355,11 +41615,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -39398,11 +41662,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -39439,11 +41707,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -39480,11 +41752,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -39521,11 +41797,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -39565,6 +41845,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -39602,6 +41886,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -39641,6 +41929,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -39678,6 +41970,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -39715,6 +42011,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -39751,11 +42051,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -39794,11 +42098,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -39835,11 +42143,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -39876,11 +42188,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -39917,11 +42233,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -39961,6 +42281,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -39998,6 +42322,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -40037,6 +42365,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -40074,6 +42406,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -40111,6 +42447,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -40147,11 +42487,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -40190,11 +42534,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -40231,11 +42579,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -40272,11 +42624,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -40313,11 +42669,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -40357,6 +42717,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -40394,6 +42758,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -40433,6 +42801,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -40470,6 +42842,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -40507,6 +42883,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -40543,11 +42923,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -40586,11 +42970,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -40627,11 +43015,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -40668,11 +43060,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -40709,11 +43105,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -40753,6 +43153,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -40790,6 +43194,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -40829,6 +43237,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -40866,6 +43278,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -40903,6 +43319,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -40939,11 +43359,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -40982,11 +43406,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -41023,11 +43451,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -41064,11 +43496,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -41105,11 +43541,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -41181,6 +43621,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -41220,6 +43664,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -41257,6 +43705,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -41294,6 +43746,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -41330,11 +43786,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -41373,11 +43833,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -41414,11 +43878,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -41455,11 +43923,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -41496,11 +43968,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -41540,6 +44016,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -41577,6 +44057,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -41616,6 +44100,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -41653,6 +44141,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -41690,6 +44182,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -41726,11 +44222,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -41769,11 +44269,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -41810,11 +44314,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -41851,11 +44359,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -41892,11 +44404,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -41936,6 +44452,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -41973,6 +44493,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -42012,6 +44536,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -42049,6 +44577,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -42086,6 +44618,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -42122,11 +44658,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -42165,11 +44705,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -42206,11 +44750,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -42247,11 +44795,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -42288,11 +44840,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -42364,6 +44920,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -42403,6 +44963,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -42440,6 +45004,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -42477,6 +45045,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -42513,11 +45085,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -42556,11 +45132,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -42597,11 +45177,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -42638,11 +45222,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -42679,11 +45267,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -42723,6 +45315,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -42760,6 +45356,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -42799,6 +45399,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -42836,6 +45440,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -42873,6 +45481,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -42909,11 +45521,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -42952,11 +45568,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -42993,11 +45613,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -43034,11 +45658,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -43075,11 +45703,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -43119,6 +45751,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -43156,6 +45792,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -43195,6 +45835,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -43232,6 +45876,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -43269,6 +45917,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -43305,11 +45957,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -43348,11 +46004,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -43389,11 +46049,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -43430,11 +46094,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -43471,11 +46139,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -43515,6 +46187,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -43552,6 +46228,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -43591,6 +46271,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -43628,6 +46312,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -43665,6 +46353,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -43701,11 +46393,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -43744,11 +46440,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -43785,11 +46485,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -43826,11 +46530,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -43867,11 +46575,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -43911,6 +46623,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -43948,6 +46664,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -43987,6 +46707,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -44024,6 +46748,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -44061,6 +46789,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -44097,11 +46829,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -44140,11 +46876,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -44181,11 +46921,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -44222,11 +46966,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -44263,11 +47011,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -44307,6 +47059,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -44344,6 +47100,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -44383,6 +47143,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -44420,6 +47184,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -44457,6 +47225,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -44493,11 +47265,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -44536,11 +47312,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -44577,11 +47357,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -44618,11 +47402,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -44659,11 +47447,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -44735,6 +47527,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -44774,6 +47570,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -44811,6 +47611,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -44848,6 +47652,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -44884,11 +47692,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -44927,11 +47739,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -44968,11 +47784,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -45009,11 +47829,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -45050,11 +47874,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -45094,6 +47922,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -45131,6 +47963,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -45170,6 +48006,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -45207,6 +48047,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -45244,6 +48088,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -45280,11 +48128,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -45323,11 +48175,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -45364,11 +48220,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -45405,11 +48265,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -45446,11 +48310,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -45490,6 +48358,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -45527,6 +48399,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -45566,6 +48442,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -45603,6 +48483,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -45640,6 +48524,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -45676,11 +48564,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -45719,11 +48611,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -45760,11 +48656,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -45801,11 +48701,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -45842,11 +48746,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -45918,6 +48826,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -45957,6 +48869,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -45994,6 +48910,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -46031,6 +48951,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -46067,11 +48991,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -46110,11 +49038,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -46151,11 +49083,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -46192,11 +49128,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -46233,11 +49173,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -46277,6 +49221,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -46314,6 +49262,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -46353,6 +49305,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -46390,6 +49346,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -46427,6 +49387,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -46463,11 +49427,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -46506,11 +49474,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -46547,11 +49519,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -46588,11 +49564,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -46629,11 +49609,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -46705,6 +49689,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -46744,6 +49732,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -46781,6 +49773,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -46818,6 +49814,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -46854,11 +49854,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -46897,11 +49901,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -46938,11 +49946,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -46979,11 +49991,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -47020,11 +50036,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -47064,6 +50084,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -47105,6 +50129,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -47148,6 +50176,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -47189,6 +50221,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -47230,6 +50266,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -47270,11 +50310,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -47317,11 +50361,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -47362,11 +50410,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -47407,11 +50459,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -47452,11 +50508,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -47500,6 +50560,10 @@ { "currencyId": "CurrencyB", "price": 500 + }, + { + "currencyId": "CurrencyC", + "price": 125 } ], "eventCostList": [], @@ -47541,6 +50605,10 @@ { "currencyId": "CurrencyB", "price": 750 + }, + { + "currencyId": "CurrencyC", + "price": 750 } ], "eventCostList": [], @@ -47584,6 +50652,10 @@ { "currencyId": "CurrencyB", "price": 1000 + }, + { + "currencyId": "CurrencyC", + "price": 1000 } ], "eventCostList": [], @@ -47625,6 +50697,10 @@ { "currencyId": "CurrencyB", "price": 1250 + }, + { + "currencyId": "CurrencyC", + "price": 1250 } ], "eventCostList": [], @@ -47666,6 +50742,10 @@ { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -47706,11 +50786,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 425 + "price": 500 }, { "currencyId": "CurrencyB", "price": 1300 + }, + { + "currencyId": "CurrencyC", + "price": 1300 } ], "eventCostList": [], @@ -47753,11 +50837,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 525 + "price": 750 }, { "currencyId": "CurrencyB", "price": 1400 + }, + { + "currencyId": "CurrencyC", + "price": 1400 } ], "eventCostList": [], @@ -47798,11 +50886,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 625 + "price": 875 }, { "currencyId": "CurrencyB", "price": 1500 + }, + { + "currencyId": "CurrencyC", + "price": 1500 } ], "eventCostList": [], @@ -47843,11 +50935,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 725 + "price": 1000 }, { "currencyId": "CurrencyB", "price": 1600 + }, + { + "currencyId": "CurrencyC", + "price": 1600 } ], "eventCostList": [], @@ -47888,11 +50984,15 @@ "defaultCost": [ { "currencyId": "CurrencyA", - "price": 825 + "price": 1250 }, { "currencyId": "CurrencyB", "price": 1700 + }, + { + "currencyId": "CurrencyC", + "price": 1700 } ], "eventCostList": [], @@ -48365,6 +51465,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -48406,6 +51510,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -48447,6 +51555,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -48560,6 +51672,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -48601,6 +51717,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -48642,6 +51762,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -48683,6 +51807,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -48724,6 +51852,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -48765,6 +51897,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -48806,6 +51942,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -48847,6 +51987,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -48888,6 +52032,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -48929,6 +52077,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -49002,6 +52154,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -49043,6 +52199,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -49084,6 +52244,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -49197,6 +52361,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -49238,6 +52406,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -49279,6 +52451,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -49320,6 +52496,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -49361,6 +52541,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -49402,6 +52586,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -49443,6 +52631,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -49484,6 +52676,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -49557,6 +52753,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -49598,6 +52798,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -49639,6 +52843,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 5000 + }, { "currencyId": "CurrencyC", "price": 7500 @@ -49752,6 +52960,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -49793,6 +53005,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -49834,6 +53050,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -49875,6 +53095,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -49916,6 +53140,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -50483,6 +53711,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -50524,6 +53756,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -50565,6 +53801,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -50606,6 +53846,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -50647,6 +53891,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -50756,6 +54004,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -50797,6 +54049,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -50838,6 +54094,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -50879,6 +54139,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -50920,6 +54184,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -51029,6 +54297,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -51070,6 +54342,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -51111,6 +54387,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -51152,6 +54432,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -51193,6 +54477,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -51338,6 +54626,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -51379,6 +54671,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -51420,6 +54716,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 2500 + }, { "currencyId": "CurrencyC", "price": 3500 @@ -51461,6 +54761,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4000 + }, { "currencyId": "CurrencyC", "price": 5500 @@ -51502,6 +54806,10 @@ "consumable": false, "consumptionReward": [], "defaultCost": [ + { + "currencyId": "CurrencyA", + "price": 4500 + }, { "currencyId": "CurrencyC", "price": 6250 @@ -56217,6 +59525,285 @@ "unique": false, "nonSecure": false, "purchasable": true + }, + { + "id": "6794761A4595FCD3A1232E9378A0213C", + "displayName": "RN_Perk_HeadshotVampire_Headshot_Vampire", + "initialQuantity": 1, + "consumable": false, + "consumptionReward": [], + "defaultCost": [], + "eventCostList": [], + "metaData": { + "gameplayTags": [ + "Accessory.Bonus" + ], + "requiredChallengesToComplete": [], + "minPlayerLevel": 0, + "minCharacterLevel": 0, + "freeForUserCreatedAfter": 0, + "freeForUserCreatedBefore": 0, + "isUnbreakableFullset": false, + "origin": "None", + "quality": "Basic", + "groupType": "", + "followingItem": "", + "prerequisiteItem": "", + "autoUnlockItemIds": [], + "itemAssignments": [], + "prestigeLevelRewards": [] + }, + "unique": false, + "nonSecure": false, + "purchasable": true + }, + { + "id": "C0707BF54AF413F71D1D24A931053698", + "displayName": "RN_Perk_Revealing_Revealing", + "initialQuantity": 1, + "consumable": false, + "consumptionReward": [], + "defaultCost": [], + "eventCostList": [], + "metaData": { + "gameplayTags": [ + "Accessory.Bonus" + ], + "requiredChallengesToComplete": [], + "minPlayerLevel": 0, + "minCharacterLevel": 0, + "freeForUserCreatedAfter": 0, + "freeForUserCreatedBefore": 0, + "isUnbreakableFullset": false, + "origin": "None", + "quality": "Basic", + "groupType": "", + "followingItem": "", + "prerequisiteItem": "", + "autoUnlockItemIds": [], + "itemAssignments": [], + "prestigeLevelRewards": [] + }, + "unique": false, + "nonSecure": false, + "purchasable": true + }, + { + "id": "D8305B60C8455B51368681BFD337525A", + "displayName": "RN_Bonus_Resting_Resting", + "initialQuantity": 1, + "consumable": false, + "consumptionReward": [], + "defaultCost": [], + "eventCostList": [], + "metaData": { + "gameplayTags": [ + "Accessory.Bonus" + ], + "requiredChallengesToComplete": [], + "minPlayerLevel": 0, + "minCharacterLevel": 0, + "freeForUserCreatedAfter": 0, + "freeForUserCreatedBefore": 0, + "isUnbreakableFullset": false, + "origin": "None", + "quality": "Basic", + "groupType": "", + "followingItem": "", + "prerequisiteItem": "", + "autoUnlockItemIds": [], + "itemAssignments": [], + "prestigeLevelRewards": [] + }, + "unique": false, + "nonSecure": false, + "purchasable": true + }, + { + "id": "CBE325ABBD44C58723A7268F7FB90D49", + "displayName": "RN_Bonus_Underfoot_Underfoot", + "initialQuantity": 1, + "consumable": false, + "consumptionReward": [], + "defaultCost": [], + "eventCostList": [], + "metaData": { + "gameplayTags": [ + "Accessory.Bonus" + ], + "requiredChallengesToComplete": [], + "minPlayerLevel": 0, + "minCharacterLevel": 0, + "freeForUserCreatedAfter": 0, + "freeForUserCreatedBefore": 0, + "isUnbreakableFullset": false, + "origin": "None", + "quality": "Basic", + "groupType": "", + "followingItem": "", + "prerequisiteItem": "", + "autoUnlockItemIds": [], + "itemAssignments": [], + "prestigeLevelRewards": [] + }, + "unique": false, + "nonSecure": false, + "purchasable": true + }, + { + "id": "FD4297264927A33926F509ABD941E277", + "displayName": "RN_Perk_Inspired_Inspired", + "initialQuantity": 1, + "consumable": false, + "consumptionReward": [], + "defaultCost": [], + "eventCostList": [], + "metaData": { + "gameplayTags": [ + "Accessory.Bonus" + ], + "requiredChallengesToComplete": [], + "minPlayerLevel": 0, + "minCharacterLevel": 0, + "freeForUserCreatedAfter": 0, + "freeForUserCreatedBefore": 0, + "isUnbreakableFullset": false, + "origin": "None", + "quality": "Basic", + "groupType": "", + "followingItem": "", + "prerequisiteItem": "", + "autoUnlockItemIds": [], + "itemAssignments": [], + "prestigeLevelRewards": [] + }, + "unique": false, + "nonSecure": false, + "purchasable": true + }, + { + "id": "545F88D24EAD402513C4948DE31DD6AE", + "displayName": "HT_Bonus_Predatory_Instinct_Predatory_Instinct", + "initialQuantity": 1, + "consumable": false, + "consumptionReward": [], + "defaultCost": [], + "eventCostList": [], + "metaData": { + "gameplayTags": [ + "Accessory.Bonus" + ], + "requiredChallengesToComplete": [], + "minPlayerLevel": 0, + "minCharacterLevel": 0, + "freeForUserCreatedAfter": 0, + "freeForUserCreatedBefore": 0, + "isUnbreakableFullset": false, + "origin": "None", + "quality": "Basic", + "groupType": "", + "followingItem": "", + "prerequisiteItem": "", + "autoUnlockItemIds": [], + "itemAssignments": [], + "prestigeLevelRewards": [] + }, + "unique": false, + "nonSecure": false, + "purchasable": true + }, + { + "id": "03783FB54D88B7D88DD4509FCBBAFE68", + "displayName": "HT_Bonus_Tactical_Alarm_Tactical_Alarm", + "initialQuantity": 1, + "consumable": false, + "consumptionReward": [], + "defaultCost": [], + "eventCostList": [], + "metaData": { + "gameplayTags": [ + "Accessory.Bonus" + ], + "requiredChallengesToComplete": [], + "minPlayerLevel": 0, + "minCharacterLevel": 0, + "freeForUserCreatedAfter": 0, + "freeForUserCreatedBefore": 0, + "isUnbreakableFullset": false, + "origin": "None", + "quality": "Basic", + "groupType": "", + "followingItem": "", + "prerequisiteItem": "", + "autoUnlockItemIds": [], + "itemAssignments": [], + "prestigeLevelRewards": [] + }, + "unique": false, + "nonSecure": false, + "purchasable": true + }, + { + "id": "0FBE5C46F94E906875E84BA3C115B9B5", + "displayName": "HT_Bonus_HeyDownThere_Hey,_Down_There", + "initialQuantity": 1, + "consumable": false, + "consumptionReward": [], + "defaultCost": [], + "eventCostList": [], + "metaData": { + "gameplayTags": [ + "Accessory.Bonus" + ], + "requiredChallengesToComplete": [], + "minPlayerLevel": 0, + "minCharacterLevel": 0, + "freeForUserCreatedAfter": 0, + "freeForUserCreatedBefore": 0, + "isUnbreakableFullset": false, + "origin": "None", + "quality": "Basic", + "groupType": "", + "followingItem": "", + "prerequisiteItem": "", + "autoUnlockItemIds": [], + "itemAssignments": [], + "prestigeLevelRewards": [] + }, + "unique": false, + "nonSecure": false, + "purchasable": true + }, + { + "id": "FBC30B38CC44B9E99626D8B877E36D39", + "displayName": "HT_Bonus_ExtraTopping_Extra_Toppings", + "initialQuantity": 1, + "consumable": false, + "consumptionReward": [], + "defaultCost": [], + "eventCostList": [], + "metaData": { + "gameplayTags": [ + "Accessory.Bonus" + ], + "requiredChallengesToComplete": [], + "minPlayerLevel": 0, + "minCharacterLevel": 0, + "freeForUserCreatedAfter": 0, + "freeForUserCreatedBefore": 0, + "isUnbreakableFullset": false, + "origin": "None", + "quality": "Basic", + "groupType": "", + "followingItem": "", + "prerequisiteItem": "", + "autoUnlockItemIds": [], + "itemAssignments": [], + "prestigeLevelRewards": [] + }, + "unique": false, + "nonSecure": false, + "purchasable": true } ] } \ No newline at end of file