com.beamable 5.0.0-PREVIEW.RC5 → 5.0.0-PREVIEW.RC7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1865) hide show
  1. package/.attestation.p7m +0 -0
  2. package/CHANGELOG.md +3 -0
  3. package/Common/Runtime/AgnosticAttribute.cs +52 -52
  4. package/Common/Runtime/AgnosticAttribute.cs.meta +11 -11
  5. package/Common/Runtime/Api/AliasHelper.cs +55 -55
  6. package/Common/Runtime/Api/AliasHelper.cs.meta +11 -11
  7. package/Common/Runtime/Api/Analytics/AnalyticsEventRequest.cs +2 -2
  8. package/Common/Runtime/Api/Analytics/AnalyticsEventRequest.cs.meta +11 -11
  9. package/Common/Runtime/Api/Analytics/AnalyticsService.cs +2 -2
  10. package/Common/Runtime/Api/Analytics/AnalyticsService.cs.meta +11 -11
  11. package/Common/Runtime/Api/Analytics/IBeamAnalyticsService.cs +2 -2
  12. package/Common/Runtime/Api/Analytics/IBeamAnalyticsService.cs.meta +11 -11
  13. package/Common/Runtime/Api/Analytics/Models/CoreEvent.cs +2 -2
  14. package/Common/Runtime/Api/Analytics/Models/CoreEvent.cs.meta +11 -11
  15. package/Common/Runtime/Api/Analytics/Models/IAnalyticsEvent.cs +2 -2
  16. package/Common/Runtime/Api/Analytics/Models/IAnalyticsEvent.cs.meta +11 -11
  17. package/Common/Runtime/Api/Analytics/Models/SampleCustomEvent.cs +2 -2
  18. package/Common/Runtime/Api/Analytics/Models/SampleCustomEvent.cs.meta +11 -11
  19. package/Common/Runtime/Api/Analytics/Models.meta +11 -11
  20. package/Common/Runtime/Api/Analytics.meta +11 -11
  21. package/Common/Runtime/Api/Announcements/AbsAnnouncementsApi.cs +68 -68
  22. package/Common/Runtime/Api/Announcements/AbsAnnouncementsApi.cs.meta +11 -11
  23. package/Common/Runtime/Api/Announcements/IAnnouncementsApi.cs +388 -388
  24. package/Common/Runtime/Api/Announcements/IAnnouncementsApi.cs.meta +11 -11
  25. package/Common/Runtime/Api/Announcements.meta +11 -11
  26. package/Common/Runtime/Api/Auth/AuthApi.cs +981 -981
  27. package/Common/Runtime/Api/Auth/AuthApi.cs.meta +11 -11
  28. package/Common/Runtime/Api/Auth/IAuthApi.cs +343 -343
  29. package/Common/Runtime/Api/Auth/IAuthApi.cs.meta +11 -11
  30. package/Common/Runtime/Api/Auth.meta +11 -11
  31. package/Common/Runtime/Api/Calendars/AbsCalendarApi.cs +41 -41
  32. package/Common/Runtime/Api/Calendars/AbsCalendarApi.cs.meta +11 -11
  33. package/Common/Runtime/Api/Calendars/ICalendarApi.cs +120 -120
  34. package/Common/Runtime/Api/Calendars/ICalendarApi.cs.meta +11 -11
  35. package/Common/Runtime/Api/Calendars.meta +11 -11
  36. package/Common/Runtime/Api/Chat/ChatApi.cs +70 -70
  37. package/Common/Runtime/Api/Chat/ChatApi.cs.meta +11 -11
  38. package/Common/Runtime/Api/Chat/IChatApi.cs +184 -184
  39. package/Common/Runtime/Api/Chat/IChatApi.cs.meta +11 -11
  40. package/Common/Runtime/Api/Chat.meta +11 -11
  41. package/Common/Runtime/Api/CloudData/CloudDataApi.cs +127 -127
  42. package/Common/Runtime/Api/CloudData/CloudDataApi.cs.meta +11 -11
  43. package/Common/Runtime/Api/CloudData/ICloudDataApi.cs +42 -42
  44. package/Common/Runtime/Api/CloudData/ICloudDataApi.cs.meta +11 -11
  45. package/Common/Runtime/Api/CloudData.meta +11 -11
  46. package/Common/Runtime/Api/CometClientData.cs +69 -69
  47. package/Common/Runtime/Api/CometClientData.cs.meta +11 -11
  48. package/Common/Runtime/Api/Commerce/ICommerceApi.cs +10 -10
  49. package/Common/Runtime/Api/Commerce/ICommerceApi.cs.meta +11 -11
  50. package/Common/Runtime/Api/Commerce.meta +11 -11
  51. package/Common/Runtime/Api/Content/IContentApi.cs +167 -167
  52. package/Common/Runtime/Api/Content/IContentApi.cs.meta +11 -11
  53. package/Common/Runtime/Api/Content.meta +11 -11
  54. package/Common/Runtime/Api/Events/AbsEventsApi.cs +50 -50
  55. package/Common/Runtime/Api/Events/AbsEventsApi.cs.meta +11 -11
  56. package/Common/Runtime/Api/Events/IEventsApi.cs +166 -166
  57. package/Common/Runtime/Api/Events/IEventsApi.cs.meta +11 -11
  58. package/Common/Runtime/Api/Events.meta +11 -11
  59. package/Common/Runtime/Api/Groups/GroupsApi.cs +762 -762
  60. package/Common/Runtime/Api/Groups/GroupsApi.cs.meta +11 -11
  61. package/Common/Runtime/Api/Groups/IGroupsApi.cs +211 -211
  62. package/Common/Runtime/Api/Groups/IGroupsApi.cs.meta +11 -11
  63. package/Common/Runtime/Api/Groups.meta +11 -11
  64. package/Common/Runtime/Api/IAccessToken.cs +48 -48
  65. package/Common/Runtime/Api/IAccessToken.cs.meta +11 -11
  66. package/Common/Runtime/Api/IBeamableFilesystemAccessor.cs +13 -13
  67. package/Common/Runtime/Api/IBeamableFilesystemAccessor.cs.meta +11 -11
  68. package/Common/Runtime/Api/IBeamableRequester.cs +770 -770
  69. package/Common/Runtime/Api/IBeamableRequester.cs.meta +11 -11
  70. package/Common/Runtime/Api/IConnectivityChecker.cs +49 -49
  71. package/Common/Runtime/Api/IConnectivityChecker.cs.meta +11 -11
  72. package/Common/Runtime/Api/IHasBeamableRequester.cs +12 -12
  73. package/Common/Runtime/Api/IHasBeamableRequester.cs.meta +11 -11
  74. package/Common/Runtime/Api/IServiceRoutingStrategy.cs +123 -123
  75. package/Common/Runtime/Api/IServiceRoutingStrategy.cs.meta +11 -11
  76. package/Common/Runtime/Api/ISupportsGet.cs +160 -160
  77. package/Common/Runtime/Api/ISupportsGet.cs.meta +11 -11
  78. package/Common/Runtime/Api/IUserContext.cs +22 -22
  79. package/Common/Runtime/Api/IUserContext.cs.meta +11 -11
  80. package/Common/Runtime/Api/IUserDataCache.cs +88 -88
  81. package/Common/Runtime/Api/IUserDataCache.cs.meta +11 -11
  82. package/Common/Runtime/Api/Inventory/IInventoryApi.cs +796 -796
  83. package/Common/Runtime/Api/Inventory/IInventoryApi.cs.meta +11 -11
  84. package/Common/Runtime/Api/Inventory/InventoryApi.cs +308 -308
  85. package/Common/Runtime/Api/Inventory/InventoryApi.cs.meta +11 -11
  86. package/Common/Runtime/Api/Inventory/InventoryUpdateBuilder.cs +712 -712
  87. package/Common/Runtime/Api/Inventory/InventoryUpdateBuilder.cs.meta +11 -11
  88. package/Common/Runtime/Api/Inventory.meta +11 -11
  89. package/Common/Runtime/Api/Leaderboards/ILeaderboardApi.cs +509 -509
  90. package/Common/Runtime/Api/Leaderboards/ILeaderboardApi.cs.meta +11 -11
  91. package/Common/Runtime/Api/Leaderboards/LeaderboardApi.cs +237 -237
  92. package/Common/Runtime/Api/Leaderboards/LeaderboardApi.cs.meta +11 -11
  93. package/Common/Runtime/Api/Leaderboards.meta +11 -11
  94. package/Common/Runtime/Api/Lobbies/ILobbyApi.cs +153 -153
  95. package/Common/Runtime/Api/Lobbies/ILobbyApi.cs.meta +11 -11
  96. package/Common/Runtime/Api/Lobbies/Lobby.cs +92 -92
  97. package/Common/Runtime/Api/Lobbies/Lobby.cs.meta +11 -11
  98. package/Common/Runtime/Api/Lobbies/LobbyNotification.cs +15 -15
  99. package/Common/Runtime/Api/Lobbies/LobbyNotification.cs.meta +11 -11
  100. package/Common/Runtime/Api/Lobbies/LobbyPlayer.cs +59 -59
  101. package/Common/Runtime/Api/Lobbies/LobbyPlayer.cs.meta +11 -11
  102. package/Common/Runtime/Api/Lobbies/LobbyRestriction.cs +19 -19
  103. package/Common/Runtime/Api/Lobbies/LobbyRestriction.cs.meta +11 -11
  104. package/Common/Runtime/Api/Lobbies/LobbyService.cs +191 -191
  105. package/Common/Runtime/Api/Lobbies/LobbyService.cs.meta +11 -11
  106. package/Common/Runtime/Api/Lobbies/LobbyUtils.cs +157 -157
  107. package/Common/Runtime/Api/Lobbies/LobbyUtils.cs.meta +11 -11
  108. package/Common/Runtime/Api/Lobbies/NotInLobby.cs +12 -12
  109. package/Common/Runtime/Api/Lobbies/NotInLobby.cs.meta +11 -11
  110. package/Common/Runtime/Api/Lobbies/Requests/AddTagsRequest.cs +36 -36
  111. package/Common/Runtime/Api/Lobbies/Requests/AddTagsRequest.cs.meta +11 -11
  112. package/Common/Runtime/Api/Lobbies/Requests/CreateLobbyRequest.cs +70 -70
  113. package/Common/Runtime/Api/Lobbies/Requests/CreateLobbyRequest.cs.meta +11 -11
  114. package/Common/Runtime/Api/Lobbies/Requests/JoinByPasscodeRequest.cs +30 -30
  115. package/Common/Runtime/Api/Lobbies/Requests/JoinByPasscodeRequest.cs.meta +11 -11
  116. package/Common/Runtime/Api/Lobbies/Requests/JoinLobbyRequest.cs +24 -24
  117. package/Common/Runtime/Api/Lobbies/Requests/JoinLobbyRequest.cs.meta +11 -11
  118. package/Common/Runtime/Api/Lobbies/Requests/LobbyQueryRequest.cs +35 -35
  119. package/Common/Runtime/Api/Lobbies/Requests/LobbyQueryRequest.cs.meta +11 -11
  120. package/Common/Runtime/Api/Lobbies/Requests/LobbyQueryResponse.cs +19 -19
  121. package/Common/Runtime/Api/Lobbies/Requests/LobbyQueryResponse.cs.meta +11 -11
  122. package/Common/Runtime/Api/Lobbies/Requests/RemoveFromLobbyRequest.cs +24 -24
  123. package/Common/Runtime/Api/Lobbies/Requests/RemoveFromLobbyRequest.cs.meta +11 -11
  124. package/Common/Runtime/Api/Lobbies/Requests/RemoveTagsRequest.cs +30 -30
  125. package/Common/Runtime/Api/Lobbies/Requests/RemoveTagsRequest.cs.meta +11 -11
  126. package/Common/Runtime/Api/Lobbies/Requests/UpdateLobbyRequest.cs +62 -62
  127. package/Common/Runtime/Api/Lobbies/Requests/UpdateLobbyRequest.cs.meta +11 -11
  128. package/Common/Runtime/Api/Lobbies/Requests.meta +11 -11
  129. package/Common/Runtime/Api/Lobbies.meta +11 -11
  130. package/Common/Runtime/Api/Mail/AbsMailApi.cs +704 -704
  131. package/Common/Runtime/Api/Mail/AbsMailApi.cs.meta +11 -11
  132. package/Common/Runtime/Api/Mail/IMailApi.cs +48 -48
  133. package/Common/Runtime/Api/Mail/IMailApi.cs.meta +11 -11
  134. package/Common/Runtime/Api/Mail.meta +11 -11
  135. package/Common/Runtime/Api/Notifications/INotificationService.cs +113 -113
  136. package/Common/Runtime/Api/Notifications/INotificationService.cs.meta +11 -11
  137. package/Common/Runtime/Api/Notifications/PrimitiveStringPayload.cs +13 -13
  138. package/Common/Runtime/Api/Notifications/PrimitiveStringPayload.cs.meta +11 -11
  139. package/Common/Runtime/Api/Notifications.meta +11 -11
  140. package/Common/Runtime/Api/Parties/IPartyApi.cs +96 -96
  141. package/Common/Runtime/Api/Parties/IPartyApi.cs.meta +11 -11
  142. package/Common/Runtime/Api/Parties/NotInParty.cs +11 -11
  143. package/Common/Runtime/Api/Parties/NotInParty.cs.meta +11 -11
  144. package/Common/Runtime/Api/Parties/Party.cs +59 -59
  145. package/Common/Runtime/Api/Parties/Party.cs.meta +11 -11
  146. package/Common/Runtime/Api/Parties/PartyNotifications.cs +55 -55
  147. package/Common/Runtime/Api/Parties/PartyNotifications.cs.meta +11 -11
  148. package/Common/Runtime/Api/Parties/PartyRestriction.cs +13 -13
  149. package/Common/Runtime/Api/Parties/PartyRestriction.cs.meta +11 -11
  150. package/Common/Runtime/Api/Parties/PartyService.cs +124 -124
  151. package/Common/Runtime/Api/Parties/PartyService.cs.meta +11 -11
  152. package/Common/Runtime/Api/Parties/Requests/CreatePartyRequest.cs +43 -43
  153. package/Common/Runtime/Api/Parties/Requests/CreatePartyRequest.cs.meta +11 -11
  154. package/Common/Runtime/Api/Parties/Requests/PartyQueryResponse.cs +19 -19
  155. package/Common/Runtime/Api/Parties/Requests/PartyQueryResponse.cs.meta +11 -11
  156. package/Common/Runtime/Api/Parties/Requests/PlayerRequest.cs +24 -24
  157. package/Common/Runtime/Api/Parties/Requests/PlayerRequest.cs.meta +11 -11
  158. package/Common/Runtime/Api/Parties/Requests/UpdatePartyRequest.cs +37 -37
  159. package/Common/Runtime/Api/Parties/Requests/UpdatePartyRequest.cs.meta +11 -11
  160. package/Common/Runtime/Api/Parties/Requests.meta +11 -11
  161. package/Common/Runtime/Api/Parties.meta +11 -11
  162. package/Common/Runtime/Api/Payments/IPaymentsApi.cs +14 -14
  163. package/Common/Runtime/Api/Payments/IPaymentsApi.cs.meta +11 -11
  164. package/Common/Runtime/Api/Payments/PaymentsApi.cs +33 -33
  165. package/Common/Runtime/Api/Payments/PaymentsApi.cs.meta +11 -11
  166. package/Common/Runtime/Api/Payments.meta +11 -11
  167. package/Common/Runtime/Api/Presence/IPresenceApi.cs +31 -31
  168. package/Common/Runtime/Api/Presence/IPresenceApi.cs.meta +11 -11
  169. package/Common/Runtime/Api/Presence/PresenceService.cs +165 -165
  170. package/Common/Runtime/Api/Presence/PresenceService.cs.meta +11 -11
  171. package/Common/Runtime/Api/Presence.meta +11 -11
  172. package/Common/Runtime/Api/Push/IPushApi.cs +9 -9
  173. package/Common/Runtime/Api/Push/IPushApi.cs.meta +11 -11
  174. package/Common/Runtime/Api/Push.meta +11 -11
  175. package/Common/Runtime/Api/QueryBuilder.cs +85 -85
  176. package/Common/Runtime/Api/QueryBuilder.cs.meta +11 -11
  177. package/Common/Runtime/Api/Realms/IAliasService.cs +98 -98
  178. package/Common/Runtime/Api/Realms/IAliasService.cs.meta +11 -11
  179. package/Common/Runtime/Api/Realms/IRealmApi.cs +17 -17
  180. package/Common/Runtime/Api/Realms/IRealmApi.cs.meta +11 -11
  181. package/Common/Runtime/Api/Realms/RealmService.cs +378 -378
  182. package/Common/Runtime/Api/Realms/RealmService.cs.meta +11 -11
  183. package/Common/Runtime/Api/Realms.meta +11 -11
  184. package/Common/Runtime/Api/SignedRequesterHelper.cs +2 -2
  185. package/Common/Runtime/Api/SignedRequesterHelper.cs.meta +11 -11
  186. package/Common/Runtime/Api/Social/ISocialApi.cs +76 -76
  187. package/Common/Runtime/Api/Social/ISocialApi.cs.meta +11 -11
  188. package/Common/Runtime/Api/Social/SocialApi.cs +329 -329
  189. package/Common/Runtime/Api/Social/SocialApi.cs.meta +11 -11
  190. package/Common/Runtime/Api/Social.meta +11 -11
  191. package/Common/Runtime/Api/Stats/AbsStatsApi.cs +345 -345
  192. package/Common/Runtime/Api/Stats/AbsStatsApi.cs.meta +11 -11
  193. package/Common/Runtime/Api/Stats/IStatsApi.cs +199 -199
  194. package/Common/Runtime/Api/Stats/IStatsApi.cs.meta +11 -11
  195. package/Common/Runtime/Api/Stats/StatsAccessType.cs +2 -2
  196. package/Common/Runtime/Api/Stats/StatsAccessType.cs.meta +11 -11
  197. package/Common/Runtime/Api/Stats/StatsApiHelper.cs +2 -2
  198. package/Common/Runtime/Api/Stats/StatsApiHelper.cs.meta +11 -11
  199. package/Common/Runtime/Api/Stats/StatsDomainType.cs +2 -2
  200. package/Common/Runtime/Api/Stats/StatsDomainType.cs.meta +11 -11
  201. package/Common/Runtime/Api/Stats.meta +11 -11
  202. package/Common/Runtime/Api/Tournaments/ITournamentApi.cs +626 -626
  203. package/Common/Runtime/Api/Tournaments/ITournamentApi.cs.meta +11 -11
  204. package/Common/Runtime/Api/Tournaments/TournamentApi.cs +284 -284
  205. package/Common/Runtime/Api/Tournaments/TournamentApi.cs.meta +11 -11
  206. package/Common/Runtime/Api/Tournaments.meta +11 -11
  207. package/Common/Runtime/Api.meta +11 -11
  208. package/Common/Runtime/BeamCli/CliContractTypeAttribute.cs +12 -12
  209. package/Common/Runtime/BeamCli/CliContractTypeAttribute.cs.meta +11 -11
  210. package/Common/Runtime/BeamCli/CliOtelData.cs +25 -25
  211. package/Common/Runtime/BeamCli/CliOtelData.cs.meta +11 -11
  212. package/Common/Runtime/BeamCli/Contracts/CliLogMessage.cs +32 -32
  213. package/Common/Runtime/BeamCli/Contracts/CliLogMessage.cs.meta +11 -11
  214. package/Common/Runtime/BeamCli/Contracts/CollectorStatus.cs +2 -2
  215. package/Common/Runtime/BeamCli/Contracts/CollectorStatus.cs.meta +11 -11
  216. package/Common/Runtime/BeamCli/Contracts/Constants.cs +33 -33
  217. package/Common/Runtime/BeamCli/Contracts/Constants.cs.meta +11 -11
  218. package/Common/Runtime/BeamCli/Contracts/ContentService/AutoSnapshotActionType.cs +2 -2
  219. package/Common/Runtime/BeamCli/Contracts/ContentService/AutoSnapshotActionType.cs.meta +11 -11
  220. package/Common/Runtime/BeamCli/Contracts/ContentService/AutoSnapshotType.cs +2 -2
  221. package/Common/Runtime/BeamCli/Contracts/ContentService/AutoSnapshotType.cs.meta +11 -11
  222. package/Common/Runtime/BeamCli/Contracts/ContentService/ContentSnapshotType.cs +2 -2
  223. package/Common/Runtime/BeamCli/Contracts/ContentService/ContentSnapshotType.cs.meta +11 -11
  224. package/Common/Runtime/BeamCli/Contracts/ContentService/ContentStatus.cs +2 -2
  225. package/Common/Runtime/BeamCli/Contracts/ContentService/ContentStatus.cs.meta +11 -11
  226. package/Common/Runtime/BeamCli/Contracts/ContentService/LocalContentManifest.cs +2 -2
  227. package/Common/Runtime/BeamCli/Contracts/ContentService/LocalContentManifest.cs.meta +11 -11
  228. package/Common/Runtime/BeamCli/Contracts/ContentService/LocalContentManifestEntry.cs +2 -2
  229. package/Common/Runtime/BeamCli/Contracts/ContentService/LocalContentManifestEntry.cs.meta +11 -11
  230. package/Common/Runtime/BeamCli/Contracts/ContentService/ManifestAuthor.cs +2 -2
  231. package/Common/Runtime/BeamCli/Contracts/ContentService/ManifestAuthor.cs.meta +11 -11
  232. package/Common/Runtime/BeamCli/Contracts/ContentService/ManifestProjectData.cs +2 -2
  233. package/Common/Runtime/BeamCli/Contracts/ContentService/ManifestProjectData.cs.meta +11 -11
  234. package/Common/Runtime/BeamCli/Contracts/ContentService/TagStatus.cs +2 -2
  235. package/Common/Runtime/BeamCli/Contracts/ContentService/TagStatus.cs.meta +11 -11
  236. package/Common/Runtime/BeamCli/Contracts/ContentService.meta +11 -11
  237. package/Common/Runtime/BeamCli/Contracts/EnvironmentVersionData.cs +14 -14
  238. package/Common/Runtime/BeamCli/Contracts/EnvironmentVersionData.cs.meta +11 -11
  239. package/Common/Runtime/BeamCli/Contracts/GenerateEnvOutput.cs +23 -23
  240. package/Common/Runtime/BeamCli/Contracts/GenerateEnvOutput.cs.meta +11 -11
  241. package/Common/Runtime/BeamCli/Contracts/ServiceInfo.cs +15 -15
  242. package/Common/Runtime/BeamCli/Contracts/ServiceInfo.cs.meta +11 -11
  243. package/Common/Runtime/BeamCli/Contracts.meta +11 -11
  244. package/Common/Runtime/BeamCli/ErrorOutput.cs +38 -38
  245. package/Common/Runtime/BeamCli/ErrorOutput.cs.meta +11 -11
  246. package/Common/Runtime/BeamCli/IBeamCommand.cs +51 -51
  247. package/Common/Runtime/BeamCli/IBeamCommand.cs.meta +11 -11
  248. package/Common/Runtime/BeamCli/Reporting.cs +51 -51
  249. package/Common/Runtime/BeamCli/Reporting.cs.meta +11 -11
  250. package/Common/Runtime/BeamCli/ServiceInfoHelper.cs +31 -31
  251. package/Common/Runtime/BeamCli/ServiceInfoHelper.cs.meta +11 -11
  252. package/Common/Runtime/BeamCli.meta +11 -11
  253. package/Common/Runtime/BeamGenerateSchemaAttribute.cs +2 -2
  254. package/Common/Runtime/BeamGenerateSchemaAttribute.cs.meta +11 -11
  255. package/Common/Runtime/BeamableColorUtil.cs +25 -25
  256. package/Common/Runtime/BeamableColorUtil.cs.meta +11 -11
  257. package/Common/Runtime/BeamableEnumExtensions.cs +35 -35
  258. package/Common/Runtime/BeamableEnumExtensions.cs.meta +11 -11
  259. package/Common/Runtime/BeamableTaskExtensions.cs +27 -27
  260. package/Common/Runtime/BeamableTaskExtensions.cs.meta +11 -11
  261. package/Common/Runtime/Collections/ConcurrentBag.cs +49 -49
  262. package/Common/Runtime/Collections/ConcurrentBag.cs.meta +11 -11
  263. package/Common/Runtime/Collections/ConcurrentDictionary.cs +109 -109
  264. package/Common/Runtime/Collections/ConcurrentDictionary.cs.meta +11 -11
  265. package/Common/Runtime/Collections.meta +11 -11
  266. package/Common/Runtime/Constants/Constants.cs +184 -184
  267. package/Common/Runtime/Constants/Constants.cs.meta +11 -11
  268. package/Common/Runtime/Constants/Implementations/ArchiveConstants.cs +24 -24
  269. package/Common/Runtime/Constants/Implementations/ArchiveConstants.cs.meta +11 -11
  270. package/Common/Runtime/Constants/Implementations/ConfigConstants.cs +25 -25
  271. package/Common/Runtime/Constants/Implementations/ConfigConstants.cs.meta +11 -11
  272. package/Common/Runtime/Constants/Implementations/ContentConstants.cs +28 -28
  273. package/Common/Runtime/Constants/Implementations/ContentConstants.cs.meta +11 -11
  274. package/Common/Runtime/Constants/Implementations/ContentManagerConstants.cs +113 -113
  275. package/Common/Runtime/Constants/Implementations/ContentManagerConstants.cs.meta +11 -11
  276. package/Common/Runtime/Constants/Implementations/CronConstants.cs +19 -19
  277. package/Common/Runtime/Constants/Implementations/CronConstants.cs.meta +11 -11
  278. package/Common/Runtime/Constants/Implementations/DockerConstants.cs +21 -21
  279. package/Common/Runtime/Constants/Implementations/DockerConstants.cs.meta +11 -11
  280. package/Common/Runtime/Constants/Implementations/EnvironmentConstants.cs +23 -23
  281. package/Common/Runtime/Constants/Implementations/EnvironmentConstants.cs.meta +11 -11
  282. package/Common/Runtime/Constants/Implementations/LoginBaseConstants.cs +45 -45
  283. package/Common/Runtime/Constants/Implementations/LoginBaseConstants.cs.meta +11 -11
  284. package/Common/Runtime/Constants/Implementations/MigrationConstants.cs +14 -14
  285. package/Common/Runtime/Constants/Implementations/MigrationConstants.cs.meta +11 -11
  286. package/Common/Runtime/Constants/Implementations/NotificationConstants.cs +18 -18
  287. package/Common/Runtime/Constants/Implementations/NotificationConstants.cs.meta +11 -11
  288. package/Common/Runtime/Constants/Implementations/OtelConstants.cs +2 -2
  289. package/Common/Runtime/Constants/Implementations/OtelConstants.cs.meta +11 -11
  290. package/Common/Runtime/Constants/Implementations/RequesterConstants.cs +90 -90
  291. package/Common/Runtime/Constants/Implementations/RequesterConstants.cs.meta +11 -11
  292. package/Common/Runtime/Constants/Implementations/SchedulesConstants.cs +20 -20
  293. package/Common/Runtime/Constants/Implementations/SchedulesConstants.cs.meta +11 -11
  294. package/Common/Runtime/Constants/Implementations/ServiceConstants.cs +161 -161
  295. package/Common/Runtime/Constants/Implementations/ServiceConstants.cs.meta +11 -11
  296. package/Common/Runtime/Constants/Implementations/SpewConstants.cs +38 -38
  297. package/Common/Runtime/Constants/Implementations/SpewConstants.cs.meta +11 -11
  298. package/Common/Runtime/Constants/Implementations/TestingToolConstants.cs +40 -40
  299. package/Common/Runtime/Constants/Implementations/TestingToolConstants.cs.meta +11 -11
  300. package/Common/Runtime/Constants/Implementations/ToolbarConstants.cs +16 -16
  301. package/Common/Runtime/Constants/Implementations/ToolbarConstants.cs.meta +11 -11
  302. package/Common/Runtime/Constants/Implementations/ToolboxConstants.cs +25 -25
  303. package/Common/Runtime/Constants/Implementations/ToolboxConstants.cs.meta +11 -11
  304. package/Common/Runtime/Constants/Implementations/TooltipConstants.cs +82 -82
  305. package/Common/Runtime/Constants/Implementations/TooltipConstants.cs.meta +11 -11
  306. package/Common/Runtime/Constants/Implementations.meta +11 -11
  307. package/Common/Runtime/Constants.meta +11 -11
  308. package/Common/Runtime/Content/ClientContentSerializer.cs +45 -45
  309. package/Common/Runtime/Content/ClientContentSerializer.cs.meta +11 -11
  310. package/Common/Runtime/Content/ClientManifest.cs +303 -303
  311. package/Common/Runtime/Content/ClientManifest.cs.meta +11 -11
  312. package/Common/Runtime/Content/ClientPermissions.cs +30 -30
  313. package/Common/Runtime/Content/ClientPermissions.cs.meta +11 -11
  314. package/Common/Runtime/Content/ContentCorruptedException.cs +15 -15
  315. package/Common/Runtime/Content/ContentCorruptedException.cs.meta +11 -11
  316. package/Common/Runtime/Content/ContentDataInfo.cs +147 -147
  317. package/Common/Runtime/Content/ContentDataInfo.cs.meta +11 -11
  318. package/Common/Runtime/Content/ContentDeserializationException.cs +14 -14
  319. package/Common/Runtime/Content/ContentDeserializationException.cs.meta +11 -11
  320. package/Common/Runtime/Content/ContentFieldAttribute.cs +30 -30
  321. package/Common/Runtime/Content/ContentFieldAttribute.cs.meta +11 -11
  322. package/Common/Runtime/Content/ContentFilterType.cs +2 -2
  323. package/Common/Runtime/Content/ContentFilterType.cs.meta +11 -11
  324. package/Common/Runtime/Content/ContentNotFoundException.cs +19 -19
  325. package/Common/Runtime/Content/ContentNotFoundException.cs.meta +11 -11
  326. package/Common/Runtime/Content/ContentObject.cs +644 -644
  327. package/Common/Runtime/Content/ContentObject.cs.meta +11 -11
  328. package/Common/Runtime/Content/ContentQuery.cs +333 -333
  329. package/Common/Runtime/Content/ContentQuery.cs.meta +11 -11
  330. package/Common/Runtime/Content/ContentQueryExtensions.cs +42 -42
  331. package/Common/Runtime/Content/ContentQueryExtensions.cs.meta +11 -11
  332. package/Common/Runtime/Content/ContentRef.cs +307 -307
  333. package/Common/Runtime/Content/ContentRef.cs.meta +11 -11
  334. package/Common/Runtime/Content/ContentSerializer.cs +770 -770
  335. package/Common/Runtime/Content/ContentSerializer.cs.meta +11 -11
  336. package/Common/Runtime/Content/ContentTypeAttribute.cs +137 -137
  337. package/Common/Runtime/Content/ContentTypeAttribute.cs.meta +11 -11
  338. package/Common/Runtime/Content/ContentTypeReflectionCache.cs +601 -601
  339. package/Common/Runtime/Content/ContentTypeReflectionCache.cs.meta +11 -11
  340. package/Common/Runtime/Content/ContentVisibility.cs +24 -24
  341. package/Common/Runtime/Content/ContentVisibility.cs.meta +11 -11
  342. package/Common/Runtime/Content/Federation.cs +32 -32
  343. package/Common/Runtime/Content/Federation.cs.meta +11 -11
  344. package/Common/Runtime/Content/IContentObject.cs +51 -51
  345. package/Common/Runtime/Content/IContentObject.cs.meta +11 -11
  346. package/Common/Runtime/Content/IContentService.cs +20 -20
  347. package/Common/Runtime/Content/IContentService.cs.meta +11 -11
  348. package/Common/Runtime/Content/IIgnoreSerializationCallbacks.cs +10 -10
  349. package/Common/Runtime/Content/IIgnoreSerializationCallbacks.cs.meta +11 -11
  350. package/Common/Runtime/Content/IgnoreContentFieldAttribute.cs +24 -24
  351. package/Common/Runtime/Content/IgnoreContentFieldAttribute.cs.meta +11 -11
  352. package/Common/Runtime/Content/Optionals.cs +582 -582
  353. package/Common/Runtime/Content/Optionals.cs.meta +11 -11
  354. package/Common/Runtime/Content/PropertyAttributes/FilePathSelectorAttribute.cs +22 -22
  355. package/Common/Runtime/Content/PropertyAttributes/FilePathSelectorAttribute.cs.meta +11 -11
  356. package/Common/Runtime/Content/PropertyAttributes/HideUnlessServerPackageInstalled.cs +14 -14
  357. package/Common/Runtime/Content/PropertyAttributes/HideUnlessServerPackageInstalled.cs.meta +11 -11
  358. package/Common/Runtime/Content/PropertyAttributes/ReadonlyIfAttribute.cs +24 -24
  359. package/Common/Runtime/Content/PropertyAttributes/ReadonlyIfAttribute.cs.meta +11 -11
  360. package/Common/Runtime/Content/PropertyAttributes/ShowOnlyAttribute.cs +10 -10
  361. package/Common/Runtime/Content/PropertyAttributes/ShowOnlyAttribute.cs.meta +11 -11
  362. package/Common/Runtime/Content/PropertyAttributes.meta +11 -11
  363. package/Common/Runtime/Content/RenderAsRefAttribute.cs +33 -33
  364. package/Common/Runtime/Content/RenderAsRefAttribute.cs.meta +11 -11
  365. package/Common/Runtime/Content/SerializableDictionary.cs +183 -183
  366. package/Common/Runtime/Content/SerializableDictionary.cs.meta +11 -11
  367. package/Common/Runtime/Content/Utility/DateUtility.cs +120 -120
  368. package/Common/Runtime/Content/Utility/DateUtility.cs.meta +11 -11
  369. package/Common/Runtime/Content/Utility.meta +11 -11
  370. package/Common/Runtime/Content/Validation/AggregateContentValidationException.cs +12 -12
  371. package/Common/Runtime/Content/Validation/AggregateContentValidationException.cs.meta +11 -11
  372. package/Common/Runtime/Content/Validation/CannotBeBlank.cs +115 -115
  373. package/Common/Runtime/Content/Validation/CannotBeBlank.cs.meta +11 -11
  374. package/Common/Runtime/Content/Validation/CannotBeEmpty.cs +43 -43
  375. package/Common/Runtime/Content/Validation/CannotBeEmpty.cs.meta +11 -11
  376. package/Common/Runtime/Content/Validation/ContentValidationException.cs +122 -122
  377. package/Common/Runtime/Content/Validation/ContentValidationException.cs.meta +11 -11
  378. package/Common/Runtime/Content/Validation/FederationMustBeValid.cs +58 -58
  379. package/Common/Runtime/Content/Validation/FederationMustBeValid.cs.meta +11 -11
  380. package/Common/Runtime/Content/Validation/MustBeComparatorString.cs +29 -29
  381. package/Common/Runtime/Content/Validation/MustBeComparatorString.cs.meta +11 -11
  382. package/Common/Runtime/Content/Validation/MustBeCurrency.cs +25 -25
  383. package/Common/Runtime/Content/Validation/MustBeCurrency.cs.meta +11 -11
  384. package/Common/Runtime/Content/Validation/MustBeCurrencyOrItem.cs +25 -25
  385. package/Common/Runtime/Content/Validation/MustBeCurrencyOrItem.cs.meta +11 -11
  386. package/Common/Runtime/Content/Validation/MustBeDateString.cs +85 -85
  387. package/Common/Runtime/Content/Validation/MustBeDateString.cs.meta +11 -11
  388. package/Common/Runtime/Content/Validation/MustBeItem.cs +25 -25
  389. package/Common/Runtime/Content/Validation/MustBeItem.cs.meta +11 -11
  390. package/Common/Runtime/Content/Validation/MustBeLeaderboard.cs +26 -26
  391. package/Common/Runtime/Content/Validation/MustBeLeaderboard.cs.meta +11 -11
  392. package/Common/Runtime/Content/Validation/MustBeNonDefault.cs +30 -30
  393. package/Common/Runtime/Content/Validation/MustBeNonDefault.cs.meta +11 -11
  394. package/Common/Runtime/Content/Validation/MustBeNonNegative.cs +20 -20
  395. package/Common/Runtime/Content/Validation/MustBeNonNegative.cs.meta +11 -11
  396. package/Common/Runtime/Content/Validation/MustBeOneOf.cs +64 -64
  397. package/Common/Runtime/Content/Validation/MustBeOneOf.cs.meta +11 -11
  398. package/Common/Runtime/Content/Validation/MustBePositive.cs +106 -106
  399. package/Common/Runtime/Content/Validation/MustBePositive.cs.meta +11 -11
  400. package/Common/Runtime/Content/Validation/MustBeSlugString.cs +86 -86
  401. package/Common/Runtime/Content/Validation/MustBeSlugString.cs.meta +11 -11
  402. package/Common/Runtime/Content/Validation/MustBeTimeSpanDuration.cs +106 -106
  403. package/Common/Runtime/Content/Validation/MustBeTimeSpanDuration.cs.meta +11 -11
  404. package/Common/Runtime/Content/Validation/MustBeValidCron.cs +2 -2
  405. package/Common/Runtime/Content/Validation/MustBeValidCron.cs.meta +11 -11
  406. package/Common/Runtime/Content/Validation/MustContain.cs +53 -53
  407. package/Common/Runtime/Content/Validation/MustContain.cs.meta +11 -11
  408. package/Common/Runtime/Content/Validation/MustReferenceContent.cs +237 -237
  409. package/Common/Runtime/Content/Validation/MustReferenceContent.cs.meta +11 -11
  410. package/Common/Runtime/Content/Validation/RouteParametersMustBeValid.cs +51 -51
  411. package/Common/Runtime/Content/Validation/RouteParametersMustBeValid.cs.meta +11 -11
  412. package/Common/Runtime/Content/Validation/ServiceRouteMustBeValid.cs +43 -43
  413. package/Common/Runtime/Content/Validation/ServiceRouteMustBeValid.cs.meta +11 -11
  414. package/Common/Runtime/Content/Validation/TimeSpanDisplayAttribute.cs +18 -18
  415. package/Common/Runtime/Content/Validation/TimeSpanDisplayAttribute.cs.meta +11 -11
  416. package/Common/Runtime/Content/Validation/ValidationAttribute.cs +110 -110
  417. package/Common/Runtime/Content/Validation/ValidationAttribute.cs.meta +11 -11
  418. package/Common/Runtime/Content/Validation/ValidationContext.cs +104 -104
  419. package/Common/Runtime/Content/Validation/ValidationContext.cs.meta +11 -11
  420. package/Common/Runtime/Content/Validation.meta +11 -11
  421. package/Common/Runtime/Content.meta +11 -11
  422. package/Common/Runtime/CronExpression/CronLocale.cs +2 -2
  423. package/Common/Runtime/CronExpression/CronLocale.cs.meta +11 -11
  424. package/Common/Runtime/CronExpression/ErrorData.cs +2 -2
  425. package/Common/Runtime/CronExpression/ErrorData.cs.meta +11 -11
  426. package/Common/Runtime/CronExpression/ExpressionParser.cs +2 -2
  427. package/Common/Runtime/CronExpression/ExpressionParser.cs.meta +11 -11
  428. package/Common/Runtime/CronExpression/Options.cs +2 -2
  429. package/Common/Runtime/CronExpression/Options.cs.meta +11 -11
  430. package/Common/Runtime/CronExpression.meta +11 -11
  431. package/Common/Runtime/Debug.cs +180 -180
  432. package/Common/Runtime/Debug.cs.meta +11 -11
  433. package/Common/Runtime/DefaultQuery.cs +248 -248
  434. package/Common/Runtime/DefaultQuery.cs.meta +11 -11
  435. package/Common/Runtime/Dependencies/DependencyBuilder.cs +776 -776
  436. package/Common/Runtime/Dependencies/DependencyBuilder.cs.meta +11 -11
  437. package/Common/Runtime/Dependencies/DependencyProvider.cs +560 -560
  438. package/Common/Runtime/Dependencies/DependencyProvider.cs.meta +11 -11
  439. package/Common/Runtime/Dependencies/Exceptions.cs +21 -21
  440. package/Common/Runtime/Dependencies/Exceptions.cs.meta +11 -11
  441. package/Common/Runtime/Dependencies/IDependencyList.cs +23 -23
  442. package/Common/Runtime/Dependencies/IDependencyList.cs.meta +11 -11
  443. package/Common/Runtime/Dependencies/IDependencyNameProvider.cs +14 -14
  444. package/Common/Runtime/Dependencies/IDependencyNameProvider.cs.meta +11 -11
  445. package/Common/Runtime/Dependencies/RegisterBeamableDependenciesAttribute.cs +74 -74
  446. package/Common/Runtime/Dependencies/RegisterBeamableDependenciesAttribute.cs.meta +11 -11
  447. package/Common/Runtime/Dependencies/ServiceStorage.cs +258 -258
  448. package/Common/Runtime/Dependencies/ServiceStorage.cs.meta +11 -11
  449. package/Common/Runtime/Dependencies/Utils.cs +49 -49
  450. package/Common/Runtime/Dependencies/Utils.cs.meta +11 -11
  451. package/Common/Runtime/Dependencies.meta +11 -11
  452. package/Common/Runtime/DocUtils.cs +24 -24
  453. package/Common/Runtime/DocUtils.cs.meta +11 -11
  454. package/Common/Runtime/Environment/PackageVersion.cs +366 -366
  455. package/Common/Runtime/Environment/PackageVersion.cs.meta +11 -11
  456. package/Common/Runtime/Environment.meta +11 -11
  457. package/Common/Runtime/Federation/FederatedGameServer.cs +2 -2
  458. package/Common/Runtime/Federation/FederatedGameServer.cs.meta +11 -11
  459. package/Common/Runtime/Federation/FederatedInventory.cs +2 -2
  460. package/Common/Runtime/Federation/FederatedInventory.cs.meta +11 -11
  461. package/Common/Runtime/Federation/FederatedLogin.cs +2 -2
  462. package/Common/Runtime/Federation/FederatedLogin.cs.meta +11 -11
  463. package/Common/Runtime/Federation/FederatedPlayerInit.cs +36 -36
  464. package/Common/Runtime/Federation/FederatedPlayerInit.cs.meta +11 -11
  465. package/Common/Runtime/Federation/Federation.cs +2 -2
  466. package/Common/Runtime/Federation/Federation.cs.meta +11 -11
  467. package/Common/Runtime/Federation.meta +11 -11
  468. package/Common/Runtime/IRuntimeConfigProvider.cs +74 -74
  469. package/Common/Runtime/IRuntimeConfigProvider.cs.meta +11 -11
  470. package/Common/Runtime/ISearchableElement.cs +14 -14
  471. package/Common/Runtime/ISearchableElement.cs.meta +11 -11
  472. package/Common/Runtime/JsonSerializable/DeleteStream.cs +438 -438
  473. package/Common/Runtime/JsonSerializable/DeleteStream.cs.meta +11 -11
  474. package/Common/Runtime/JsonSerializable/DiffStream.cs +367 -367
  475. package/Common/Runtime/JsonSerializable/DiffStream.cs.meta +11 -11
  476. package/Common/Runtime/JsonSerializable/JsonData.cs +102 -102
  477. package/Common/Runtime/JsonSerializable/JsonData.cs.meta +11 -11
  478. package/Common/Runtime/JsonSerializable/JsonSaveStream.cs +765 -765
  479. package/Common/Runtime/JsonSerializable/JsonSaveStream.cs.meta +11 -11
  480. package/Common/Runtime/JsonSerializable/JsonSerializable.cs +386 -386
  481. package/Common/Runtime/JsonSerializable/JsonSerializable.cs.meta +11 -11
  482. package/Common/Runtime/JsonSerializable/LoadStream.cs +1103 -1103
  483. package/Common/Runtime/JsonSerializable/LoadStream.cs.meta +11 -11
  484. package/Common/Runtime/JsonSerializable/MessagePackStream.cs +2 -2
  485. package/Common/Runtime/JsonSerializable/MessagePackStream.cs.meta +11 -11
  486. package/Common/Runtime/JsonSerializable/SaveStream.cs +419 -419
  487. package/Common/Runtime/JsonSerializable/SaveStream.cs.meta +11 -11
  488. package/Common/Runtime/JsonSerializable/TypeLookupFactory.cs +58 -58
  489. package/Common/Runtime/JsonSerializable/TypeLookupFactory.cs.meta +11 -11
  490. package/Common/Runtime/JsonSerializable.meta +11 -11
  491. package/Common/Runtime/Modules/Announcements/AnnouncementApiContent.cs +42 -42
  492. package/Common/Runtime/Modules/Announcements/AnnouncementApiContent.cs.meta +11 -11
  493. package/Common/Runtime/Modules/Announcements/AnnouncementContent.cs +120 -120
  494. package/Common/Runtime/Modules/Announcements/AnnouncementContent.cs.meta +11 -11
  495. package/Common/Runtime/Modules/Announcements/AnnouncementRef.cs +96 -96
  496. package/Common/Runtime/Modules/Announcements/AnnouncementRef.cs.meta +11 -11
  497. package/Common/Runtime/Modules/Announcements.meta +11 -11
  498. package/Common/Runtime/Modules/Calendars/CalendarContent.cs +41 -41
  499. package/Common/Runtime/Modules/Calendars/CalendarContent.cs.meta +11 -11
  500. package/Common/Runtime/Modules/Calendars/CalendarRef.cs +67 -67
  501. package/Common/Runtime/Modules/Calendars/CalendarRef.cs.meta +11 -11
  502. package/Common/Runtime/Modules/Calendars.meta +11 -11
  503. package/Common/Runtime/Modules/Groups/GroupDonationContentRef.cs +76 -76
  504. package/Common/Runtime/Modules/Groups/GroupDonationContentRef.cs.meta +11 -11
  505. package/Common/Runtime/Modules/Groups/GroupDonationsContent.cs +39 -39
  506. package/Common/Runtime/Modules/Groups/GroupDonationsContent.cs.meta +11 -11
  507. package/Common/Runtime/Modules/Groups.meta +11 -11
  508. package/Common/Runtime/Modules/Inventory/CurrencyContent.cs +79 -79
  509. package/Common/Runtime/Modules/Inventory/CurrencyContent.cs.meta +11 -11
  510. package/Common/Runtime/Modules/Inventory/CurrencyRef.cs +82 -82
  511. package/Common/Runtime/Modules/Inventory/CurrencyRef.cs.meta +11 -11
  512. package/Common/Runtime/Modules/Inventory/ItemContent.cs +66 -66
  513. package/Common/Runtime/Modules/Inventory/ItemContent.cs.meta +11 -11
  514. package/Common/Runtime/Modules/Inventory/ItemRef.cs +79 -79
  515. package/Common/Runtime/Modules/Inventory/ItemRef.cs.meta +11 -11
  516. package/Common/Runtime/Modules/Inventory/VipContent.cs +103 -103
  517. package/Common/Runtime/Modules/Inventory/VipContent.cs.meta +11 -11
  518. package/Common/Runtime/Modules/Inventory.meta +11 -11
  519. package/Common/Runtime/Modules/Leaderboards/LeaderboardContent.cs +67 -67
  520. package/Common/Runtime/Modules/Leaderboards/LeaderboardContent.cs.meta +11 -11
  521. package/Common/Runtime/Modules/Leaderboards/LeaderboardRef.cs +77 -77
  522. package/Common/Runtime/Modules/Leaderboards/LeaderboardRef.cs.meta +11 -11
  523. package/Common/Runtime/Modules/Leaderboards.meta +11 -11
  524. package/Common/Runtime/Modules/SharedContent/ApiContent.cs +282 -282
  525. package/Common/Runtime/Modules/SharedContent/ApiContent.cs.meta +11 -11
  526. package/Common/Runtime/Modules/SharedContent/EmailContent.cs +104 -104
  527. package/Common/Runtime/Modules/SharedContent/EmailContent.cs.meta +11 -11
  528. package/Common/Runtime/Modules/SharedContent/EventContent.cs +273 -273
  529. package/Common/Runtime/Modules/SharedContent/EventContent.cs.meta +11 -11
  530. package/Common/Runtime/Modules/SharedContent/PlayerReward.cs +63 -63
  531. package/Common/Runtime/Modules/SharedContent/PlayerReward.cs.meta +11 -11
  532. package/Common/Runtime/Modules/SharedContent/ScheduleDefinition.cs +129 -129
  533. package/Common/Runtime/Modules/SharedContent/ScheduleDefinition.cs.meta +11 -11
  534. package/Common/Runtime/Modules/SharedContent/ScheduleExtensions.cs +35 -35
  535. package/Common/Runtime/Modules/SharedContent/ScheduleExtensions.cs.meta +11 -11
  536. package/Common/Runtime/Modules/SharedContent/SimGameType.cs +300 -300
  537. package/Common/Runtime/Modules/SharedContent/SimGameType.cs.meta +11 -11
  538. package/Common/Runtime/Modules/SharedContent.meta +11 -11
  539. package/Common/Runtime/Modules/Shop/ListingContent.cs +329 -329
  540. package/Common/Runtime/Modules/Shop/ListingContent.cs.meta +11 -11
  541. package/Common/Runtime/Modules/Shop/ListingLink.cs +23 -23
  542. package/Common/Runtime/Modules/Shop/ListingLink.cs.meta +11 -11
  543. package/Common/Runtime/Modules/Shop/ListingRef.cs +33 -33
  544. package/Common/Runtime/Modules/Shop/ListingRef.cs.meta +11 -11
  545. package/Common/Runtime/Modules/Shop/SKUContent.cs +105 -105
  546. package/Common/Runtime/Modules/Shop/SKUContent.cs.meta +11 -11
  547. package/Common/Runtime/Modules/Shop/SKURef.cs +49 -49
  548. package/Common/Runtime/Modules/Shop/SKURef.cs.meta +11 -11
  549. package/Common/Runtime/Modules/Shop/StoreContent.cs +47 -47
  550. package/Common/Runtime/Modules/Shop/StoreContent.cs.meta +11 -11
  551. package/Common/Runtime/Modules/Shop/StoreRef.cs +50 -50
  552. package/Common/Runtime/Modules/Shop/StoreRef.cs.meta +11 -11
  553. package/Common/Runtime/Modules/Shop.meta +11 -11
  554. package/Common/Runtime/Modules/Steam/ISteamService.cs +68 -68
  555. package/Common/Runtime/Modules/Steam/ISteamService.cs.meta +11 -11
  556. package/Common/Runtime/Modules/Steam.meta +11 -11
  557. package/Common/Runtime/Modules/Tournaments/TournamentColorConstants.cs +20 -20
  558. package/Common/Runtime/Modules/Tournaments/TournamentColorConstants.cs.meta +11 -11
  559. package/Common/Runtime/Modules/Tournaments/TournamentContent.cs +317 -317
  560. package/Common/Runtime/Modules/Tournaments/TournamentContent.cs.meta +11 -11
  561. package/Common/Runtime/Modules/Tournaments.meta +11 -11
  562. package/Common/Runtime/ObjectExtensions.cs +50 -50
  563. package/Common/Runtime/ObjectExtensions.cs.meta +11 -11
  564. package/Common/Runtime/OpenApi/AccountsBasic.gs.cs +2 -2
  565. package/Common/Runtime/OpenApi/AccountsBasic.gs.cs.meta +11 -11
  566. package/Common/Runtime/OpenApi/AccountsBasicCommon.gs.cs +2 -2
  567. package/Common/Runtime/OpenApi/AccountsBasicCommon.gs.cs.meta +11 -11
  568. package/Common/Runtime/OpenApi/AccountsObject.gs.cs +2 -2
  569. package/Common/Runtime/OpenApi/AccountsObject.gs.cs.meta +11 -11
  570. package/Common/Runtime/OpenApi/AnnouncementsBasic.gs.cs +2 -2
  571. package/Common/Runtime/OpenApi/AnnouncementsBasic.gs.cs.meta +11 -11
  572. package/Common/Runtime/OpenApi/AnnouncementsBasicCommon.gs.cs +2 -2
  573. package/Common/Runtime/OpenApi/AnnouncementsBasicCommon.gs.cs.meta +11 -11
  574. package/Common/Runtime/OpenApi/AnnouncementsObject.gs.cs +2 -2
  575. package/Common/Runtime/OpenApi/AnnouncementsObject.gs.cs.meta +11 -11
  576. package/Common/Runtime/OpenApi/AuthBasic.gs.cs +2 -2
  577. package/Common/Runtime/OpenApi/AuthBasic.gs.cs.meta +11 -11
  578. package/Common/Runtime/OpenApi/AuthBasicCommon.gs.cs +2 -2
  579. package/Common/Runtime/OpenApi/AuthBasicCommon.gs.cs.meta +11 -11
  580. package/Common/Runtime/OpenApi/BeamAdmin.gs.cs +2 -2
  581. package/Common/Runtime/OpenApi/BeamAdmin.gs.cs.meta +11 -11
  582. package/Common/Runtime/OpenApi/BeamAdminCommon.gs.cs +2 -2
  583. package/Common/Runtime/OpenApi/BeamAdminCommon.gs.cs.meta +11 -11
  584. package/Common/Runtime/OpenApi/BeamAuth.gs.cs +2 -2
  585. package/Common/Runtime/OpenApi/BeamAuth.gs.cs.meta +11 -11
  586. package/Common/Runtime/OpenApi/BeamAuthCommon.gs.cs +2 -2
  587. package/Common/Runtime/OpenApi/BeamAuthCommon.gs.cs.meta +11 -11
  588. package/Common/Runtime/OpenApi/BeamBeamo.gs.cs +2 -2
  589. package/Common/Runtime/OpenApi/BeamBeamo.gs.cs.meta +11 -11
  590. package/Common/Runtime/OpenApi/BeamBeamoCommon.gs.cs +2 -2
  591. package/Common/Runtime/OpenApi/BeamBeamoCommon.gs.cs.meta +11 -11
  592. package/Common/Runtime/OpenApi/BeamBeamootel.gs.cs +2 -2
  593. package/Common/Runtime/OpenApi/BeamBeamootel.gs.cs.meta +11 -11
  594. package/Common/Runtime/OpenApi/BeamBeamootelCommon.gs.cs +2 -2
  595. package/Common/Runtime/OpenApi/BeamBeamootelCommon.gs.cs.meta +11 -11
  596. package/Common/Runtime/OpenApi/BeamCustomer.gs.cs +2 -2
  597. package/Common/Runtime/OpenApi/BeamCustomer.gs.cs.meta +11 -11
  598. package/Common/Runtime/OpenApi/BeamCustomerCommon.gs.cs +2 -2
  599. package/Common/Runtime/OpenApi/BeamCustomerCommon.gs.cs.meta +11 -11
  600. package/Common/Runtime/OpenApi/BeamLobby.gs.cs +2 -2
  601. package/Common/Runtime/OpenApi/BeamLobby.gs.cs.meta +11 -11
  602. package/Common/Runtime/OpenApi/BeamLobbyCommon.gs.cs +2 -2
  603. package/Common/Runtime/OpenApi/BeamLobbyCommon.gs.cs.meta +11 -11
  604. package/Common/Runtime/OpenApi/BeamMailbox.gs.cs +2 -2
  605. package/Common/Runtime/OpenApi/BeamMailbox.gs.cs.meta +11 -11
  606. package/Common/Runtime/OpenApi/BeamMailboxCommon.gs.cs +2 -2
  607. package/Common/Runtime/OpenApi/BeamMailboxCommon.gs.cs.meta +11 -11
  608. package/Common/Runtime/OpenApi/BeamMatchmaking.gs.cs +2 -2
  609. package/Common/Runtime/OpenApi/BeamMatchmaking.gs.cs.meta +11 -11
  610. package/Common/Runtime/OpenApi/BeamMatchmakingCommon.gs.cs +2 -2
  611. package/Common/Runtime/OpenApi/BeamMatchmakingCommon.gs.cs.meta +11 -11
  612. package/Common/Runtime/OpenApi/BeamParty.gs.cs +2 -2
  613. package/Common/Runtime/OpenApi/BeamParty.gs.cs.meta +11 -11
  614. package/Common/Runtime/OpenApi/BeamPartyCommon.gs.cs +2 -2
  615. package/Common/Runtime/OpenApi/BeamPartyCommon.gs.cs.meta +11 -11
  616. package/Common/Runtime/OpenApi/BeamPlayer.gs.cs +2 -2
  617. package/Common/Runtime/OpenApi/BeamPlayer.gs.cs.meta +11 -11
  618. package/Common/Runtime/OpenApi/BeamPlayerCommon.gs.cs +2 -2
  619. package/Common/Runtime/OpenApi/BeamPlayerCommon.gs.cs.meta +11 -11
  620. package/Common/Runtime/OpenApi/BeamPlayerlobby.gs.cs +2 -2
  621. package/Common/Runtime/OpenApi/BeamPlayerlobby.gs.cs.meta +11 -11
  622. package/Common/Runtime/OpenApi/BeamPlayerlobbyCommon.gs.cs +2 -2
  623. package/Common/Runtime/OpenApi/BeamPlayerlobbyCommon.gs.cs.meta +11 -11
  624. package/Common/Runtime/OpenApi/BeamPlayerparty.gs.cs +2 -2
  625. package/Common/Runtime/OpenApi/BeamPlayerparty.gs.cs.meta +11 -11
  626. package/Common/Runtime/OpenApi/BeamPlayerpartyCommon.gs.cs +2 -2
  627. package/Common/Runtime/OpenApi/BeamPlayerpartyCommon.gs.cs.meta +11 -11
  628. package/Common/Runtime/OpenApi/BeamPlayerticket.gs.cs +2 -2
  629. package/Common/Runtime/OpenApi/BeamPlayerticket.gs.cs.meta +11 -11
  630. package/Common/Runtime/OpenApi/BeamPlayerticketCommon.gs.cs +2 -2
  631. package/Common/Runtime/OpenApi/BeamPlayerticketCommon.gs.cs.meta +11 -11
  632. package/Common/Runtime/OpenApi/BeamPresence.gs.cs +2 -2
  633. package/Common/Runtime/OpenApi/BeamPresence.gs.cs.meta +11 -11
  634. package/Common/Runtime/OpenApi/BeamPresenceCommon.gs.cs +2 -2
  635. package/Common/Runtime/OpenApi/BeamPresenceCommon.gs.cs.meta +11 -11
  636. package/Common/Runtime/OpenApi/BeamScheduler.gs.cs +2 -2
  637. package/Common/Runtime/OpenApi/BeamScheduler.gs.cs.meta +11 -11
  638. package/Common/Runtime/OpenApi/BeamSchedulerCommon.gs.cs +2 -2
  639. package/Common/Runtime/OpenApi/BeamSchedulerCommon.gs.cs.meta +11 -11
  640. package/Common/Runtime/OpenApi/BeamServiceplan.gs.cs +2 -2
  641. package/Common/Runtime/OpenApi/BeamServiceplan.gs.cs.meta +11 -11
  642. package/Common/Runtime/OpenApi/BeamServiceplanCommon.gs.cs +2 -2
  643. package/Common/Runtime/OpenApi/BeamServiceplanCommon.gs.cs.meta +11 -11
  644. package/Common/Runtime/OpenApi/BeamoBasic.gs.cs +2 -2
  645. package/Common/Runtime/OpenApi/BeamoBasic.gs.cs.meta +11 -11
  646. package/Common/Runtime/OpenApi/BeamoBasicCommon.gs.cs +2 -2
  647. package/Common/Runtime/OpenApi/BeamoBasicCommon.gs.cs.meta +11 -11
  648. package/Common/Runtime/OpenApi/CalendarsObject.gs.cs +2 -2
  649. package/Common/Runtime/OpenApi/CalendarsObject.gs.cs.meta +11 -11
  650. package/Common/Runtime/OpenApi/CalendarsObjectCommon.gs.cs +2 -2
  651. package/Common/Runtime/OpenApi/CalendarsObjectCommon.gs.cs.meta +11 -11
  652. package/Common/Runtime/OpenApi/CloudsavingBasic.gs.cs +2 -2
  653. package/Common/Runtime/OpenApi/CloudsavingBasic.gs.cs.meta +11 -11
  654. package/Common/Runtime/OpenApi/CloudsavingBasicCommon.gs.cs +2 -2
  655. package/Common/Runtime/OpenApi/CloudsavingBasicCommon.gs.cs.meta +11 -11
  656. package/Common/Runtime/OpenApi/CommerceBasic.gs.cs +2 -2
  657. package/Common/Runtime/OpenApi/CommerceBasic.gs.cs.meta +11 -11
  658. package/Common/Runtime/OpenApi/CommerceBasicCommon.gs.cs +2 -2
  659. package/Common/Runtime/OpenApi/CommerceBasicCommon.gs.cs.meta +11 -11
  660. package/Common/Runtime/OpenApi/CommerceObject.gs.cs +2 -2
  661. package/Common/Runtime/OpenApi/CommerceObject.gs.cs.meta +11 -11
  662. package/Common/Runtime/OpenApi/ContentBasic.gs.cs +2 -2
  663. package/Common/Runtime/OpenApi/ContentBasic.gs.cs.meta +11 -11
  664. package/Common/Runtime/OpenApi/ContentBasicCommon.gs.cs +2 -2
  665. package/Common/Runtime/OpenApi/ContentBasicCommon.gs.cs.meta +11 -11
  666. package/Common/Runtime/OpenApi/Event-playersObject.gs.cs +2 -2
  667. package/Common/Runtime/OpenApi/Event-playersObject.gs.cs.meta +11 -11
  668. package/Common/Runtime/OpenApi/Event-playersObjectCommon.gs.cs +2 -2
  669. package/Common/Runtime/OpenApi/Event-playersObjectCommon.gs.cs.meta +11 -11
  670. package/Common/Runtime/OpenApi/EventsBasic.gs.cs +2 -2
  671. package/Common/Runtime/OpenApi/EventsBasic.gs.cs.meta +11 -11
  672. package/Common/Runtime/OpenApi/EventsBasicCommon.gs.cs +2 -2
  673. package/Common/Runtime/OpenApi/EventsBasicCommon.gs.cs.meta +11 -11
  674. package/Common/Runtime/OpenApi/EventsObject.gs.cs +2 -2
  675. package/Common/Runtime/OpenApi/EventsObject.gs.cs.meta +11 -11
  676. package/Common/Runtime/OpenApi/Group-usersObject.gs.cs +2 -2
  677. package/Common/Runtime/OpenApi/Group-usersObject.gs.cs.meta +11 -11
  678. package/Common/Runtime/OpenApi/Group-usersObjectCommon.gs.cs +2 -2
  679. package/Common/Runtime/OpenApi/Group-usersObjectCommon.gs.cs.meta +11 -11
  680. package/Common/Runtime/OpenApi/GroupsObject.gs.cs +2 -2
  681. package/Common/Runtime/OpenApi/GroupsObject.gs.cs.meta +11 -11
  682. package/Common/Runtime/OpenApi/GroupsObjectCommon.gs.cs +2 -2
  683. package/Common/Runtime/OpenApi/GroupsObjectCommon.gs.cs.meta +11 -11
  684. package/Common/Runtime/OpenApi/InventoryBasic.gs.cs +2 -2
  685. package/Common/Runtime/OpenApi/InventoryBasic.gs.cs.meta +11 -11
  686. package/Common/Runtime/OpenApi/InventoryBasicCommon.gs.cs +2 -2
  687. package/Common/Runtime/OpenApi/InventoryBasicCommon.gs.cs.meta +11 -11
  688. package/Common/Runtime/OpenApi/InventoryObject.gs.cs +2 -2
  689. package/Common/Runtime/OpenApi/InventoryObject.gs.cs.meta +11 -11
  690. package/Common/Runtime/OpenApi/LeaderboardsBasic.gs.cs +2 -2
  691. package/Common/Runtime/OpenApi/LeaderboardsBasic.gs.cs.meta +11 -11
  692. package/Common/Runtime/OpenApi/LeaderboardsBasicCommon.gs.cs +2 -2
  693. package/Common/Runtime/OpenApi/LeaderboardsBasicCommon.gs.cs.meta +11 -11
  694. package/Common/Runtime/OpenApi/LeaderboardsObject.gs.cs +2 -2
  695. package/Common/Runtime/OpenApi/LeaderboardsObject.gs.cs.meta +11 -11
  696. package/Common/Runtime/OpenApi/MailBasic.gs.cs +2 -2
  697. package/Common/Runtime/OpenApi/MailBasic.gs.cs.meta +11 -11
  698. package/Common/Runtime/OpenApi/MailBasicCommon.gs.cs +2 -2
  699. package/Common/Runtime/OpenApi/MailBasicCommon.gs.cs.meta +11 -11
  700. package/Common/Runtime/OpenApi/MailObject.gs.cs +2 -2
  701. package/Common/Runtime/OpenApi/MailObject.gs.cs.meta +11 -11
  702. package/Common/Runtime/OpenApi/Models.gs.cs +2 -2
  703. package/Common/Runtime/OpenApi/Models.gs.cs.meta +11 -11
  704. package/Common/Runtime/OpenApi/NotificationBasic.gs.cs +2 -2
  705. package/Common/Runtime/OpenApi/NotificationBasic.gs.cs.meta +11 -11
  706. package/Common/Runtime/OpenApi/NotificationBasicCommon.gs.cs +2 -2
  707. package/Common/Runtime/OpenApi/NotificationBasicCommon.gs.cs.meta +11 -11
  708. package/Common/Runtime/OpenApi/PaymentsBasic.gs.cs +2 -2
  709. package/Common/Runtime/OpenApi/PaymentsBasic.gs.cs.meta +11 -11
  710. package/Common/Runtime/OpenApi/PaymentsBasicCommon.gs.cs +2 -2
  711. package/Common/Runtime/OpenApi/PaymentsBasicCommon.gs.cs.meta +11 -11
  712. package/Common/Runtime/OpenApi/PaymentsObject.gs.cs +2 -2
  713. package/Common/Runtime/OpenApi/PaymentsObject.gs.cs.meta +11 -11
  714. package/Common/Runtime/OpenApi/PushBasic.gs.cs +2 -2
  715. package/Common/Runtime/OpenApi/PushBasic.gs.cs.meta +11 -11
  716. package/Common/Runtime/OpenApi/PushBasicCommon.gs.cs +2 -2
  717. package/Common/Runtime/OpenApi/PushBasicCommon.gs.cs.meta +11 -11
  718. package/Common/Runtime/OpenApi/RealmsBasic.gs.cs +2 -2
  719. package/Common/Runtime/OpenApi/RealmsBasic.gs.cs.meta +11 -11
  720. package/Common/Runtime/OpenApi/RealmsBasicCommon.gs.cs +2 -2
  721. package/Common/Runtime/OpenApi/RealmsBasicCommon.gs.cs.meta +11 -11
  722. package/Common/Runtime/OpenApi/SessionBasic.gs.cs +2 -2
  723. package/Common/Runtime/OpenApi/SessionBasic.gs.cs.meta +11 -11
  724. package/Common/Runtime/OpenApi/SessionBasicCommon.gs.cs +2 -2
  725. package/Common/Runtime/OpenApi/SessionBasicCommon.gs.cs.meta +11 -11
  726. package/Common/Runtime/OpenApi/SocialBasic.gs.cs +2 -2
  727. package/Common/Runtime/OpenApi/SocialBasic.gs.cs.meta +11 -11
  728. package/Common/Runtime/OpenApi/SocialBasicCommon.gs.cs +2 -2
  729. package/Common/Runtime/OpenApi/SocialBasicCommon.gs.cs.meta +11 -11
  730. package/Common/Runtime/OpenApi/StatsBasic.gs.cs +2 -2
  731. package/Common/Runtime/OpenApi/StatsBasic.gs.cs.meta +11 -11
  732. package/Common/Runtime/OpenApi/StatsBasicCommon.gs.cs +2 -2
  733. package/Common/Runtime/OpenApi/StatsBasicCommon.gs.cs.meta +11 -11
  734. package/Common/Runtime/OpenApi/StatsObject.gs.cs +2 -2
  735. package/Common/Runtime/OpenApi/StatsObject.gs.cs.meta +11 -11
  736. package/Common/Runtime/OpenApi/TournamentsBasic.gs.cs +2 -2
  737. package/Common/Runtime/OpenApi/TournamentsBasic.gs.cs.meta +11 -11
  738. package/Common/Runtime/OpenApi/TournamentsBasicCommon.gs.cs +2 -2
  739. package/Common/Runtime/OpenApi/TournamentsBasicCommon.gs.cs.meta +11 -11
  740. package/Common/Runtime/OpenApi/TournamentsObject.gs.cs +2 -2
  741. package/Common/Runtime/OpenApi/TournamentsObject.gs.cs.meta +11 -11
  742. package/Common/Runtime/OpenApi/TrialsBasic.gs.cs +2 -2
  743. package/Common/Runtime/OpenApi/TrialsBasic.gs.cs.meta +11 -11
  744. package/Common/Runtime/OpenApi/TrialsBasicCommon.gs.cs +2 -2
  745. package/Common/Runtime/OpenApi/TrialsBasicCommon.gs.cs.meta +11 -11
  746. package/Common/Runtime/OpenApi.meta +11 -11
  747. package/Common/Runtime/OpenApiExtensions/BeamoExtensions.cs +48 -48
  748. package/Common/Runtime/OpenApiExtensions/BeamoExtensions.cs.meta +11 -11
  749. package/Common/Runtime/OpenApiExtensions/LegacyConverterExtensions.cs +2 -2
  750. package/Common/Runtime/OpenApiExtensions/LegacyConverterExtensions.cs.meta +11 -11
  751. package/Common/Runtime/OpenApiExtensions.meta +11 -11
  752. package/Common/Runtime/OpenApiSystem.cs +236 -236
  753. package/Common/Runtime/OpenApiSystem.cs.meta +11 -11
  754. package/Common/Runtime/Player/Lazy.cs +26 -26
  755. package/Common/Runtime/Player/Lazy.cs.meta +11 -11
  756. package/Common/Runtime/Player/Observables.cs +449 -449
  757. package/Common/Runtime/Player/Observables.cs.meta +11 -11
  758. package/Common/Runtime/Player.meta +11 -11
  759. package/Common/Runtime/Pooling/ClassPool.cs +142 -142
  760. package/Common/Runtime/Pooling/ClassPool.cs.meta +11 -11
  761. package/Common/Runtime/Pooling/StringBuilderPool.cs +171 -171
  762. package/Common/Runtime/Pooling/StringBuilderPool.cs.meta +11 -11
  763. package/Common/Runtime/Pooling.meta +11 -11
  764. package/Common/Runtime/Promise.cs +1329 -1329
  765. package/Common/Runtime/Promise.cs.meta +11 -11
  766. package/Common/Runtime/ReflectionCache/BeamContextSystemAttribute.cs +11 -11
  767. package/Common/Runtime/ReflectionCache/BeamContextSystemAttribute.cs.meta +11 -11
  768. package/Common/Runtime/ReflectionCache/INamingAttribute.cs +143 -143
  769. package/Common/Runtime/ReflectionCache/INamingAttribute.cs.meta +11 -11
  770. package/Common/Runtime/ReflectionCache/IReflectionAttribute.cs +154 -154
  771. package/Common/Runtime/ReflectionCache/IReflectionAttribute.cs.meta +11 -11
  772. package/Common/Runtime/ReflectionCache/PreserveAttribute.cs +22 -22
  773. package/Common/Runtime/ReflectionCache/PreserveAttribute.cs.meta +11 -11
  774. package/Common/Runtime/ReflectionCache/ReflectionCache.cs +457 -457
  775. package/Common/Runtime/ReflectionCache/ReflectionCache.cs.meta +11 -11
  776. package/Common/Runtime/ReflectionCache/ReflectionCache_Attributes.cs +289 -289
  777. package/Common/Runtime/ReflectionCache/ReflectionCache_Attributes.cs.meta +11 -11
  778. package/Common/Runtime/ReflectionCache/ReflectionCache_BaseTypes.cs +111 -111
  779. package/Common/Runtime/ReflectionCache/ReflectionCache_BaseTypes.cs.meta +11 -11
  780. package/Common/Runtime/ReflectionCache/ReflectionCache_SignatureMatching.cs +247 -247
  781. package/Common/Runtime/ReflectionCache/ReflectionCache_SignatureMatching.cs.meta +11 -11
  782. package/Common/Runtime/ReflectionCache.meta +11 -11
  783. package/Common/Runtime/Scheduler/BeamScheduler.cs +962 -962
  784. package/Common/Runtime/Scheduler/BeamScheduler.cs.meta +11 -11
  785. package/Common/Runtime/Scheduler/Cron.cs +557 -557
  786. package/Common/Runtime/Scheduler/Cron.cs.meta +11 -11
  787. package/Common/Runtime/Scheduler/CronValidation.cs +63 -63
  788. package/Common/Runtime/Scheduler/CronValidation.cs.meta +11 -11
  789. package/Common/Runtime/Scheduler.meta +11 -11
  790. package/Common/Runtime/Semantics/ServiceName.cs +38 -38
  791. package/Common/Runtime/Semantics/ServiceName.cs.meta +11 -11
  792. package/Common/Runtime/Semantics.meta +11 -11
  793. package/Common/Runtime/SmallerJSON/IRawJsonProvider.cs +41 -41
  794. package/Common/Runtime/SmallerJSON/IRawJsonProvider.cs.meta +11 -11
  795. package/Common/Runtime/SmallerJSON/SmallerJSON.ArrayDict.cs +479 -479
  796. package/Common/Runtime/SmallerJSON/SmallerJSON.ArrayDict.cs.meta +11 -11
  797. package/Common/Runtime/SmallerJSON/SmallerJSON.FromString.cs +627 -627
  798. package/Common/Runtime/SmallerJSON/SmallerJSON.FromString.cs.meta +11 -11
  799. package/Common/Runtime/SmallerJSON/SmallerJSON.cs +1056 -1056
  800. package/Common/Runtime/SmallerJSON/SmallerJSON.cs.meta +11 -11
  801. package/Common/Runtime/SmallerJSON.meta +11 -11
  802. package/Common/Runtime/Spew/Logger.cs +418 -418
  803. package/Common/Runtime/Spew/Logger.cs.meta +11 -11
  804. package/Common/Runtime/Spew/SpewLoggerAttribute.cs +14 -14
  805. package/Common/Runtime/Spew/SpewLoggerAttribute.cs.meta +11 -11
  806. package/Common/Runtime/Spew.meta +11 -11
  807. package/Common/Runtime/Trie.cs +463 -463
  808. package/Common/Runtime/Trie.cs.meta +11 -11
  809. package/Common/Runtime/TypeExtensions.cs +66 -66
  810. package/Common/Runtime/TypeExtensions.cs.meta +11 -11
  811. package/Common/Runtime/Util/BeamAssemblyVersionUtil.cs +52 -52
  812. package/Common/Runtime/Util/BeamAssemblyVersionUtil.cs.meta +11 -11
  813. package/Common/Runtime/Util/BeamFileUtil.cs +27 -27
  814. package/Common/Runtime/Util/BeamFileUtil.cs.meta +11 -11
  815. package/Common/Runtime/Util/DocsPageHelper.cs +2 -2
  816. package/Common/Runtime/Util/DocsPageHelper.cs.meta +11 -11
  817. package/Common/Runtime/Util/NaturalStringComparer.cs +2 -2
  818. package/Common/Runtime/Util/NaturalStringComparer.cs.meta +11 -11
  819. package/Common/Runtime/Util.meta +11 -11
  820. package/Common/Runtime.meta +11 -11
  821. package/Editor/3rdParty/Splitter/SplitterGUILayout2.cs +194 -194
  822. package/Editor/BeamCli/BeamCli.cs +419 -419
  823. package/Editor/BeamCli/BeamCliUtil.cs +254 -254
  824. package/Editor/BeamCli/BeamCommand.cs +555 -555
  825. package/Editor/BeamCli/BeamWebCommand.cs +534 -534
  826. package/Editor/BeamCli/BeamWebHistory.cs +267 -267
  827. package/Editor/BeamCli/CliSpewLogger.cs +17 -17
  828. package/Editor/BeamCli/Commands/Beam.cs.meta +11 -11
  829. package/Editor/BeamCli/Commands/BeamAccountMeCommandOutput.cs.meta +11 -11
  830. package/Editor/BeamCli/Commands/BeamAccountMeExternalIdentity.cs.meta +11 -11
  831. package/Editor/BeamCli/Commands/BeamBuildProjectCommandOutput.cs.meta +11 -11
  832. package/Editor/BeamCli/Commands/BeamBuildSolutionCommandResults.cs.meta +11 -11
  833. package/Editor/BeamCli/Commands/BeamCheckFixedResult.cs.meta +11 -11
  834. package/Editor/BeamCli/Commands/BeamCheckGrafanaCommandResults.cs.meta +11 -11
  835. package/Editor/BeamCli/Commands/BeamCheckPerfCommandOutput.cs.meta +11 -11
  836. package/Editor/BeamCli/Commands/BeamCheckRegistryCommandResults.cs.meta +11 -11
  837. package/Editor/BeamCli/Commands/BeamCheckResultsForBeamoId.cs.meta +11 -11
  838. package/Editor/BeamCli/Commands/BeamCheckStatusServiceResult.cs.meta +11 -11
  839. package/Editor/BeamCli/Commands/BeamChecksScan.cs.meta +11 -11
  840. package/Editor/BeamCli/Commands/BeamClearTempLogFilesCommandOutput.cs.meta +11 -11
  841. package/Editor/BeamCli/Commands/BeamCliServiceComponent.cs.meta +11 -11
  842. package/Editor/BeamCli/Commands/BeamCliServiceDependency.cs.meta +11 -11
  843. package/Editor/BeamCli/Commands/BeamCliServiceManifest.cs.meta +11 -11
  844. package/Editor/BeamCli/Commands/BeamCliServiceReference.cs.meta +11 -11
  845. package/Editor/BeamCli/Commands/BeamCliServiceStorageReference.cs.meta +11 -11
  846. package/Editor/BeamCli/Commands/BeamCollectorStatusResult.cs.meta +11 -11
  847. package/Editor/BeamCli/Commands/BeamConfig.cs.meta +11 -11
  848. package/Editor/BeamCli/Commands/BeamConfigCommandResult.cs.meta +11 -11
  849. package/Editor/BeamCli/Commands/BeamConfigRealm.cs.meta +11 -11
  850. package/Editor/BeamCli/Commands/BeamConfigRealmRemove.cs.meta +11 -11
  851. package/Editor/BeamCli/Commands/BeamConfigRealmSet.cs.meta +11 -11
  852. package/Editor/BeamCli/Commands/BeamConfigRoutes.cs.meta +11 -11
  853. package/Editor/BeamCli/Commands/BeamConfigRoutesCommandResults.cs.meta +11 -11
  854. package/Editor/BeamCli/Commands/BeamConfigRoutesCommandWebsocketResult.cs.meta +11 -11
  855. package/Editor/BeamCli/Commands/BeamConstructVersionOutput.cs.meta +11 -11
  856. package/Editor/BeamCli/Commands/BeamContentArchiveManifest.cs.meta +11 -11
  857. package/Editor/BeamCli/Commands/BeamContentArchiveManifestCommandResult.cs.meta +11 -11
  858. package/Editor/BeamCli/Commands/BeamContentCreateLocalManifestCommandResult.cs.meta +11 -11
  859. package/Editor/BeamCli/Commands/BeamContentListManifests.cs.meta +11 -11
  860. package/Editor/BeamCli/Commands/BeamContentListManifestsCommandResults.cs.meta +11 -11
  861. package/Editor/BeamCli/Commands/BeamContentNewManifest.cs.meta +11 -11
  862. package/Editor/BeamCli/Commands/BeamContentProgressUpdateData.cs.meta +11 -11
  863. package/Editor/BeamCli/Commands/BeamContentPs.cs.meta +11 -11
  864. package/Editor/BeamCli/Commands/BeamContentPsCommandEvent.cs.meta +11 -11
  865. package/Editor/BeamCli/Commands/BeamContentPsProgressMessage.cs.meta +11 -11
  866. package/Editor/BeamCli/Commands/BeamContentPublish.cs.meta +11 -11
  867. package/Editor/BeamCli/Commands/BeamContentPublishResult.cs.meta +11 -11
  868. package/Editor/BeamCli/Commands/BeamContentResolve.cs.meta +11 -11
  869. package/Editor/BeamCli/Commands/BeamContentResolveConflictResult.cs.meta +11 -11
  870. package/Editor/BeamCli/Commands/BeamContentRestore.cs.meta +11 -11
  871. package/Editor/BeamCli/Commands/BeamContentRestoreErrorReport.cs.meta +11 -11
  872. package/Editor/BeamCli/Commands/BeamContentRestoreResult.cs.meta +11 -11
  873. package/Editor/BeamCli/Commands/BeamContentSave.cs.meta +11 -11
  874. package/Editor/BeamCli/Commands/BeamContentSnapshot.cs.meta +11 -11
  875. package/Editor/BeamCli/Commands/BeamContentSnapshotList.cs.meta +11 -11
  876. package/Editor/BeamCli/Commands/BeamContentSnapshotListItem.cs.meta +11 -11
  877. package/Editor/BeamCli/Commands/BeamContentSnapshotListResult.cs.meta +11 -11
  878. package/Editor/BeamCli/Commands/BeamContentSnapshotResult.cs.meta +11 -11
  879. package/Editor/BeamCli/Commands/BeamContentSync.cs.meta +11 -11
  880. package/Editor/BeamCli/Commands/BeamContentSyncReport.cs.meta +11 -11
  881. package/Editor/BeamCli/Commands/BeamContentSyncResult.cs.meta +11 -11
  882. package/Editor/BeamCli/Commands/BeamContentTagAdd.cs.meta +11 -11
  883. package/Editor/BeamCli/Commands/BeamContentTagRm.cs.meta +11 -11
  884. package/Editor/BeamCli/Commands/BeamContentTagSet.cs.meta +11 -11
  885. package/Editor/BeamCli/Commands/BeamCopyProjectSrcToUnityCommandOutput.cs.meta +11 -11
  886. package/Editor/BeamCli/Commands/BeamDeleteProjectCommandOutput.cs.meta +11 -11
  887. package/Editor/BeamCli/Commands/BeamDependencyData.cs.meta +11 -11
  888. package/Editor/BeamCli/Commands/BeamDeployMode.cs.meta +11 -11
  889. package/Editor/BeamCli/Commands/BeamDeployablePlan.cs.meta +11 -11
  890. package/Editor/BeamCli/Commands/BeamDeploymentDiffSummary.cs.meta +11 -11
  891. package/Editor/BeamCli/Commands/BeamDeploymentGet.cs.meta +11 -11
  892. package/Editor/BeamCli/Commands/BeamDeploymentList.cs.meta +11 -11
  893. package/Editor/BeamCli/Commands/BeamDeploymentManifestJsonDiff.cs.meta +11 -11
  894. package/Editor/BeamCli/Commands/BeamDeploymentPlan.cs.meta +11 -11
  895. package/Editor/BeamCli/Commands/BeamDeploymentPlanMetadata.cs.meta +11 -11
  896. package/Editor/BeamCli/Commands/BeamDeploymentRegistry.cs.meta +11 -11
  897. package/Editor/BeamCli/Commands/BeamDeploymentRelease.cs.meta +11 -11
  898. package/Editor/BeamCli/Commands/BeamDeploymentStatus.cs.meta +11 -11
  899. package/Editor/BeamCli/Commands/BeamDeveloperUserData.cs.meta +11 -11
  900. package/Editor/BeamCli/Commands/BeamDeveloperUserManagerCleanCapturedUserBuffer.cs.meta +11 -11
  901. package/Editor/BeamCli/Commands/BeamDeveloperUserManagerCreateUser.cs.meta +11 -11
  902. package/Editor/BeamCli/Commands/BeamDeveloperUserManagerCreateUserBatch.cs.meta +11 -11
  903. package/Editor/BeamCli/Commands/BeamDeveloperUserManagerPs.cs.meta +11 -11
  904. package/Editor/BeamCli/Commands/BeamDeveloperUserManagerRemoveUser.cs.meta +11 -11
  905. package/Editor/BeamCli/Commands/BeamDeveloperUserManagerSaveUser.cs.meta +11 -11
  906. package/Editor/BeamCli/Commands/BeamDeveloperUserManagerUpdateInfo.cs.meta +11 -11
  907. package/Editor/BeamCli/Commands/BeamDeveloperUserPsCommandEvent.cs.meta +11 -11
  908. package/Editor/BeamCli/Commands/BeamDeveloperUserResult.cs.meta +11 -11
  909. package/Editor/BeamCli/Commands/BeamDisableFederationCommandOutput.cs.meta +11 -11
  910. package/Editor/BeamCli/Commands/BeamDockerServiceDescriptor.cs.meta +11 -11
  911. package/Editor/BeamCli/Commands/BeamDockerStatusCommandOutput.cs.meta +11 -11
  912. package/Editor/BeamCli/Commands/BeamDownloadAllNugetDepsToUnityCommandOutput.cs.meta +11 -11
  913. package/Editor/BeamCli/Commands/BeamDownloadCollectorCommandResults.cs.meta +11 -11
  914. package/Editor/BeamCli/Commands/BeamDownloadNugetDepToUnityCommandOutput.cs.meta +11 -11
  915. package/Editor/BeamCli/Commands/BeamEraseStorageObjectCommandOutput.cs.meta +11 -11
  916. package/Editor/BeamCli/Commands/BeamFederationDisable.cs.meta +11 -11
  917. package/Editor/BeamCli/Commands/BeamFederationEnable.cs.meta +11 -11
  918. package/Editor/BeamCli/Commands/BeamFederationEntry.cs.meta +11 -11
  919. package/Editor/BeamCli/Commands/BeamFederationList.cs.meta +11 -11
  920. package/Editor/BeamCli/Commands/BeamFederationLocalKey.cs.meta +11 -11
  921. package/Editor/BeamCli/Commands/BeamFederationLocalSettingsGetIFederatedGameServer.cs.meta +11 -11
  922. package/Editor/BeamCli/Commands/BeamFederationLocalSettingsSetIFederatedGameServer.cs.meta +11 -11
  923. package/Editor/BeamCli/Commands/BeamFetchCommandLogRecord.cs.meta +11 -11
  924. package/Editor/BeamCli/Commands/BeamFetchTelemetryLogsResult.cs.meta +11 -11
  925. package/Editor/BeamCli/Commands/BeamGameListCommandResults.cs.meta +11 -11
  926. package/Editor/BeamCli/Commands/BeamGenerateClientFileEvent.cs.meta +11 -11
  927. package/Editor/BeamCli/Commands/BeamGenerateClientOapiCommandArgsResult.cs.meta +11 -11
  928. package/Editor/BeamCli/Commands/BeamGenerateMkDocsCommandResult.cs.meta +11 -11
  929. package/Editor/BeamCli/Commands/BeamGenerateOApiCommandOutput.cs.meta +11 -11
  930. package/Editor/BeamCli/Commands/BeamGenerateWebClientCommandArgsResult.cs.meta +11 -11
  931. package/Editor/BeamCli/Commands/BeamGetBeamOtelConfigCommandResult.cs.meta +11 -11
  932. package/Editor/BeamCli/Commands/BeamGetClickhouseCredentialsResult.cs.meta +11 -11
  933. package/Editor/BeamCli/Commands/BeamGetDeploymentCommandOutput.cs.meta +11 -11
  934. package/Editor/BeamCli/Commands/BeamGetLocalRoutingKeyCommandOutput.cs.meta +11 -11
  935. package/Editor/BeamCli/Commands/BeamGetLogsUrlHeader.cs.meta +11 -11
  936. package/Editor/BeamCli/Commands/BeamGetSignedUrlResponse.cs.meta +11 -11
  937. package/Editor/BeamCli/Commands/BeamGetTokenDetailsCommandOutput.cs.meta +11 -11
  938. package/Editor/BeamCli/Commands/BeamGetTokenForGuestCommandOutput.cs.meta +11 -11
  939. package/Editor/BeamCli/Commands/BeamGetTokenListCommandOutput.cs.meta +11 -11
  940. package/Editor/BeamCli/Commands/BeamGetTokenListElement.cs.meta +11 -11
  941. package/Editor/BeamCli/Commands/BeamGetTokenViaRefreshCommandOutput.cs.meta +11 -11
  942. package/Editor/BeamCli/Commands/BeamGetUnityVersionInfoCommandOutput.cs.meta +11 -11
  943. package/Editor/BeamCli/Commands/BeamGrafanaOpen.cs.meta +11 -11
  944. package/Editor/BeamCli/Commands/BeamGrafanaPs.cs.meta +11 -11
  945. package/Editor/BeamCli/Commands/BeamGrafanaStop.cs.meta +11 -11
  946. package/Editor/BeamCli/Commands/BeamHostServiceDescriptor.cs.meta +11 -11
  947. package/Editor/BeamCli/Commands/BeamInit.cs.meta +11 -11
  948. package/Editor/BeamCli/Commands/BeamInitCommandResult.cs.meta +11 -11
  949. package/Editor/BeamCli/Commands/BeamInvalidCidError.cs.meta +11 -11
  950. package/Editor/BeamCli/Commands/BeamInvalidTokenError.cs.meta +11 -11
  951. package/Editor/BeamCli/Commands/BeamInvalidTokenErrorOutput.cs.meta +11 -11
  952. package/Editor/BeamCli/Commands/BeamListCommandResult.cs.meta +11 -11
  953. package/Editor/BeamCli/Commands/BeamListDeploymentsCommandOutput.cs.meta +11 -11
  954. package/Editor/BeamCli/Commands/BeamListDepsCommandResults.cs.meta +11 -11
  955. package/Editor/BeamCli/Commands/BeamListServicesCommandOutput.cs.meta +11 -11
  956. package/Editor/BeamCli/Commands/BeamListenPlayer.cs.meta +11 -11
  957. package/Editor/BeamCli/Commands/BeamListenServer.cs.meta +11 -11
  958. package/Editor/BeamCli/Commands/BeamLogin.cs.meta +11 -11
  959. package/Editor/BeamCli/Commands/BeamLoginFailedError.cs.meta +11 -11
  960. package/Editor/BeamCli/Commands/BeamLoginResults.cs.meta +11 -11
  961. package/Editor/BeamCli/Commands/BeamLogout.cs.meta +11 -11
  962. package/Editor/BeamCli/Commands/BeamLogoutCommandResult.cs.meta +11 -11
  963. package/Editor/BeamCli/Commands/BeamManifestChecksum.cs.meta +11 -11
  964. package/Editor/BeamCli/Commands/BeamManifestChecksums.cs.meta +11 -11
  965. package/Editor/BeamCli/Commands/BeamManifestServiceEntry.cs.meta +11 -11
  966. package/Editor/BeamCli/Commands/BeamManifestSnapshotItem.cs.meta +11 -11
  967. package/Editor/BeamCli/Commands/BeamManifestStorageEntry.cs.meta +11 -11
  968. package/Editor/BeamCli/Commands/BeamMe.cs.meta +11 -11
  969. package/Editor/BeamCli/Commands/BeamMkdocs.cs.meta +11 -11
  970. package/Editor/BeamCli/Commands/BeamNoTokenError.cs.meta +11 -11
  971. package/Editor/BeamCli/Commands/BeamNotificationPlayerOutput.cs.meta +11 -11
  972. package/Editor/BeamCli/Commands/BeamNotificationServerOutput.cs.meta +11 -11
  973. package/Editor/BeamCli/Commands/BeamOapiDownload.cs.meta +11 -11
  974. package/Editor/BeamCli/Commands/BeamOrgGames.cs.meta +11 -11
  975. package/Editor/BeamCli/Commands/BeamOrgRealmData.cs.meta +11 -11
  976. package/Editor/BeamCli/Commands/BeamOrgRealms.cs.meta +11 -11
  977. package/Editor/BeamCli/Commands/BeamPlanReleaseProgress.cs.meta +11 -11
  978. package/Editor/BeamCli/Commands/BeamProfileCheckCounters.cs.meta +11 -11
  979. package/Editor/BeamCli/Commands/BeamProfileCheckNbomber.cs.meta +11 -11
  980. package/Editor/BeamCli/Commands/BeamProjectAddPaths.cs.meta +11 -11
  981. package/Editor/BeamCli/Commands/BeamProjectAddUnityProject.cs.meta +11 -11
  982. package/Editor/BeamCli/Commands/BeamProjectBuild.cs.meta +11 -11
  983. package/Editor/BeamCli/Commands/BeamProjectBuildSln.cs.meta +11 -11
  984. package/Editor/BeamCli/Commands/BeamProjectDeps.cs.meta +11 -11
  985. package/Editor/BeamCli/Commands/BeamProjectDepsAdd.cs.meta +11 -11
  986. package/Editor/BeamCli/Commands/BeamProjectDepsList.cs.meta +11 -11
  987. package/Editor/BeamCli/Commands/BeamProjectDepsRemove.cs.meta +11 -11
  988. package/Editor/BeamCli/Commands/BeamProjectDisable.cs.meta +11 -11
  989. package/Editor/BeamCli/Commands/BeamProjectEnable.cs.meta +11 -11
  990. package/Editor/BeamCli/Commands/BeamProjectErrorReport.cs.meta +11 -11
  991. package/Editor/BeamCli/Commands/BeamProjectErrorResult.cs.meta +11 -11
  992. package/Editor/BeamCli/Commands/BeamProjectGenerateClient.cs.meta +11 -11
  993. package/Editor/BeamCli/Commands/BeamProjectGenerateClientOapi.cs.meta +11 -11
  994. package/Editor/BeamCli/Commands/BeamProjectGenerateEnv.cs.meta +11 -11
  995. package/Editor/BeamCli/Commands/BeamProjectGenerateProperties.cs +2 -2
  996. package/Editor/BeamCli/Commands/BeamProjectGenerateProperties.cs.meta +11 -11
  997. package/Editor/BeamCli/Commands/BeamProjectGenerateWebClient.cs.meta +11 -11
  998. package/Editor/BeamCli/Commands/BeamProjectList.cs.meta +11 -11
  999. package/Editor/BeamCli/Commands/BeamProjectLogs.cs.meta +11 -11
  1000. package/Editor/BeamCli/Commands/BeamProjectNewCommonLib.cs.meta +11 -11
  1001. package/Editor/BeamCli/Commands/BeamProjectNewService.cs.meta +11 -11
  1002. package/Editor/BeamCli/Commands/BeamProjectNewStorage.cs.meta +11 -11
  1003. package/Editor/BeamCli/Commands/BeamProjectOapi.cs.meta +11 -11
  1004. package/Editor/BeamCli/Commands/BeamProjectOpen.cs.meta +11 -11
  1005. package/Editor/BeamCli/Commands/BeamProjectOpenMongo.cs.meta +11 -11
  1006. package/Editor/BeamCli/Commands/BeamProjectOpenSwagger.cs.meta +11 -11
  1007. package/Editor/BeamCli/Commands/BeamProjectPs.cs.meta +11 -11
  1008. package/Editor/BeamCli/Commands/BeamProjectReadSettings.cs.meta +11 -11
  1009. package/Editor/BeamCli/Commands/BeamProjectRegenerate.cs.meta +11 -11
  1010. package/Editor/BeamCli/Commands/BeamProjectRemoteLogs.cs.meta +11 -11
  1011. package/Editor/BeamCli/Commands/BeamProjectRemove.cs.meta +11 -11
  1012. package/Editor/BeamCli/Commands/BeamProjectRun.cs.meta +11 -11
  1013. package/Editor/BeamCli/Commands/BeamProjectSettingsOutput.cs.meta +11 -11
  1014. package/Editor/BeamCli/Commands/BeamProjectStop.cs.meta +11 -11
  1015. package/Editor/BeamCli/Commands/BeamProjectStorageErase.cs.meta +11 -11
  1016. package/Editor/BeamCli/Commands/BeamProjectStorageRestore.cs.meta +11 -11
  1017. package/Editor/BeamCli/Commands/BeamProjectStorageSnapshot.cs.meta +11 -11
  1018. package/Editor/BeamCli/Commands/BeamProjectWriteSetting.cs.meta +11 -11
  1019. package/Editor/BeamCli/Commands/BeamReadProjectSettingsCommandOutput.cs.meta +11 -11
  1020. package/Editor/BeamCli/Commands/BeamRealmConfigOutput.cs.meta +11 -11
  1021. package/Editor/BeamCli/Commands/BeamRealmRole.cs.meta +11 -11
  1022. package/Editor/BeamCli/Commands/BeamRealmsListCommandOutput.cs.meta +11 -11
  1023. package/Editor/BeamCli/Commands/BeamReleaseSharedUnityCodeCommandOutput.cs.meta +11 -11
  1024. package/Editor/BeamCli/Commands/BeamRemoteServiceDescriptor.cs.meta +11 -11
  1025. package/Editor/BeamCli/Commands/BeamRemoteStorageDescriptor.cs.meta +11 -11
  1026. package/Editor/BeamCli/Commands/BeamReportTelemetryResult.cs.meta +11 -11
  1027. package/Editor/BeamCli/Commands/BeamRequestCliCommandOutput.cs.meta +11 -11
  1028. package/Editor/BeamCli/Commands/BeamRequiredFileEdit.cs.meta +11 -11
  1029. package/Editor/BeamCli/Commands/BeamRestoreProjectCommandOutput.cs.meta +11 -11
  1030. package/Editor/BeamCli/Commands/BeamRestoreStorageObjectCommandOutput.cs.meta +11 -11
  1031. package/Editor/BeamCli/Commands/BeamRunFailErrorOutput.cs.meta +11 -11
  1032. package/Editor/BeamCli/Commands/BeamRunProjectBuildErrorStream.cs.meta +11 -11
  1033. package/Editor/BeamCli/Commands/BeamRunProjectResultStream.cs.meta +11 -11
  1034. package/Editor/BeamCli/Commands/BeamSaveProjectPathsCommandResults.cs.meta +11 -11
  1035. package/Editor/BeamCli/Commands/BeamServeCliCommandOutput.cs.meta +11 -11
  1036. package/Editor/BeamCli/Commands/BeamServerClear.cs.meta +11 -11
  1037. package/Editor/BeamCli/Commands/BeamServerDescriptor.cs.meta +11 -11
  1038. package/Editor/BeamCli/Commands/BeamServerKillCommandResult.cs.meta +11 -11
  1039. package/Editor/BeamCli/Commands/BeamServerPs.cs.meta +11 -11
  1040. package/Editor/BeamCli/Commands/BeamServerPsCommandResult.cs.meta +11 -11
  1041. package/Editor/BeamCli/Commands/BeamServerReq.cs.meta +11 -11
  1042. package/Editor/BeamCli/Commands/BeamServerServe.cs.meta +11 -11
  1043. package/Editor/BeamCli/Commands/BeamServiceDependenciesPair.cs.meta +11 -11
  1044. package/Editor/BeamCli/Commands/BeamServiceDeployReportResult.cs.meta +11 -11
  1045. package/Editor/BeamCli/Commands/BeamServiceFederationChange.cs.meta +11 -11
  1046. package/Editor/BeamCli/Commands/BeamServiceFederations.cs.meta +11 -11
  1047. package/Editor/BeamCli/Commands/BeamServiceImageIdChange.cs.meta +11 -11
  1048. package/Editor/BeamCli/Commands/BeamServiceInstance.cs.meta +11 -11
  1049. package/Editor/BeamCli/Commands/BeamServiceListResult.cs.meta +11 -11
  1050. package/Editor/BeamCli/Commands/BeamServiceLogProviderChange.cs.meta +11 -11
  1051. package/Editor/BeamCli/Commands/BeamServiceManifestOutput.cs.meta +11 -11
  1052. package/Editor/BeamCli/Commands/BeamServiceRemoteDeployProgressResult.cs.meta +11 -11
  1053. package/Editor/BeamCli/Commands/BeamServiceRunProgressResult.cs.meta +11 -11
  1054. package/Editor/BeamCli/Commands/BeamServiceRunReportResult.cs.meta +11 -11
  1055. package/Editor/BeamCli/Commands/BeamServiceStatus.cs.meta +11 -11
  1056. package/Editor/BeamCli/Commands/BeamServiceTemplate.cs.meta +11 -11
  1057. package/Editor/BeamCli/Commands/BeamServicesBuild.cs.meta +11 -11
  1058. package/Editor/BeamCli/Commands/BeamServicesBuildCommandOutput.cs.meta +11 -11
  1059. package/Editor/BeamCli/Commands/BeamServicesBuiltProgress.cs.meta +11 -11
  1060. package/Editor/BeamCli/Commands/BeamServicesDeploy.cs.meta +11 -11
  1061. package/Editor/BeamCli/Commands/BeamServicesDockerStart.cs.meta +11 -11
  1062. package/Editor/BeamCli/Commands/BeamServicesDockerStatus.cs.meta +11 -11
  1063. package/Editor/BeamCli/Commands/BeamServicesForRouteCollection.cs.meta +11 -11
  1064. package/Editor/BeamCli/Commands/BeamServicesGetConnectionString.cs.meta +11 -11
  1065. package/Editor/BeamCli/Commands/BeamServicesGetConnectionStringCommandOutput.cs.meta +11 -11
  1066. package/Editor/BeamCli/Commands/BeamServicesManifests.cs.meta +11 -11
  1067. package/Editor/BeamCli/Commands/BeamServicesPromote.cs.meta +11 -11
  1068. package/Editor/BeamCli/Commands/BeamServicesPs.cs.meta +11 -11
  1069. package/Editor/BeamCli/Commands/BeamServicesRegistry.cs.meta +11 -11
  1070. package/Editor/BeamCli/Commands/BeamServicesRegistryOutput.cs.meta +11 -11
  1071. package/Editor/BeamCli/Commands/BeamServicesResetContainer.cs.meta +11 -11
  1072. package/Editor/BeamCli/Commands/BeamServicesResetContainerCommandOutput.cs.meta +11 -11
  1073. package/Editor/BeamCli/Commands/BeamServicesResetImage.cs.meta +11 -11
  1074. package/Editor/BeamCli/Commands/BeamServicesResetImageCommandOutput.cs.meta +11 -11
  1075. package/Editor/BeamCli/Commands/BeamServicesRun.cs.meta +11 -11
  1076. package/Editor/BeamCli/Commands/BeamServicesServiceLogs.cs.meta +11 -11
  1077. package/Editor/BeamCli/Commands/BeamServicesServiceMetrics.cs.meta +11 -11
  1078. package/Editor/BeamCli/Commands/BeamServicesStop.cs.meta +11 -11
  1079. package/Editor/BeamCli/Commands/BeamServicesTemplates.cs.meta +11 -11
  1080. package/Editor/BeamCli/Commands/BeamServicesTemplatesCommandOutput.cs.meta +11 -11
  1081. package/Editor/BeamCli/Commands/BeamServicesUpdateDockerfile.cs.meta +11 -11
  1082. package/Editor/BeamCli/Commands/BeamServicesUploadApi.cs.meta +11 -11
  1083. package/Editor/BeamCli/Commands/BeamServicesUploadApiOutput.cs.meta +11 -11
  1084. package/Editor/BeamCli/Commands/BeamSetBeamOtelConfigCommandResults.cs.meta +11 -11
  1085. package/Editor/BeamCli/Commands/BeamSetEnabledCommandArgsOutput.cs.meta +11 -11
  1086. package/Editor/BeamCli/Commands/BeamSetEnabledCommandComponent.cs.meta +11 -11
  1087. package/Editor/BeamCli/Commands/BeamSettingOutput.cs.meta +11 -11
  1088. package/Editor/BeamCli/Commands/BeamShowCurrentBeamoStatusCommandOutput.cs.meta +11 -11
  1089. package/Editor/BeamCli/Commands/BeamShowManifestCommandOutput.cs.meta +11 -11
  1090. package/Editor/BeamCli/Commands/BeamSnapshotStorageObjectCommandOutput.cs.meta +11 -11
  1091. package/Editor/BeamCli/Commands/BeamStartDockerCommandOutput.cs.meta +11 -11
  1092. package/Editor/BeamCli/Commands/BeamStartGrafanaCommandResults.cs.meta +11 -11
  1093. package/Editor/BeamCli/Commands/BeamStopProjectCommandOutput.cs.meta +11 -11
  1094. package/Editor/BeamCli/Commands/BeamTailLogMessageForClient.cs.meta +11 -11
  1095. package/Editor/BeamCli/Commands/BeamTelemetryCollector.cs.meta +11 -11
  1096. package/Editor/BeamCli/Commands/BeamTelemetryCollectorGet.cs.meta +11 -11
  1097. package/Editor/BeamCli/Commands/BeamTelemetryCollectorPs.cs.meta +11 -11
  1098. package/Editor/BeamCli/Commands/BeamTelemetryConfig.cs.meta +11 -11
  1099. package/Editor/BeamCli/Commands/BeamTelemetryGetCreds.cs.meta +11 -11
  1100. package/Editor/BeamCli/Commands/BeamTelemetryLogs.cs.meta +11 -11
  1101. package/Editor/BeamCli/Commands/BeamTelemetryPrune.cs.meta +11 -11
  1102. package/Editor/BeamCli/Commands/BeamTelemetryPush.cs.meta +11 -11
  1103. package/Editor/BeamCli/Commands/BeamTelemetryReport.cs.meta +11 -11
  1104. package/Editor/BeamCli/Commands/BeamTelemetrySetConfig.cs.meta +11 -11
  1105. package/Editor/BeamCli/Commands/BeamTempClearLogs.cs.meta +11 -11
  1106. package/Editor/BeamCli/Commands/BeamTokenFromRefresh.cs.meta +11 -11
  1107. package/Editor/BeamCli/Commands/BeamTokenInspect.cs.meta +11 -11
  1108. package/Editor/BeamCli/Commands/BeamTokenList.cs.meta +11 -11
  1109. package/Editor/BeamCli/Commands/BeamTokenNewGuest.cs.meta +11 -11
  1110. package/Editor/BeamCli/Commands/BeamUnityAssemblyReferenceData.cs.meta +11 -11
  1111. package/Editor/BeamCli/Commands/BeamUnityCopyDotnetSrc.cs.meta +11 -11
  1112. package/Editor/BeamCli/Commands/BeamUnityDownloadAllNugetPackages.cs.meta +11 -11
  1113. package/Editor/BeamCli/Commands/BeamUnityDownloadNugetPackage.cs.meta +11 -11
  1114. package/Editor/BeamCli/Commands/BeamUnityGetVersionInfo.cs.meta +11 -11
  1115. package/Editor/BeamCli/Commands/BeamUnityManifest.cs.meta +11 -11
  1116. package/Editor/BeamCli/Commands/BeamUnityReleaseSharedCode.cs.meta +11 -11
  1117. package/Editor/BeamCli/Commands/BeamUnityRestore.cs.meta +11 -11
  1118. package/Editor/BeamCli/Commands/BeamUnityUpdateDlls.cs.meta +11 -11
  1119. package/Editor/BeamCli/Commands/BeamUnityUpdateReferences.cs.meta +11 -11
  1120. package/Editor/BeamCli/Commands/BeamVersion.cs.meta +11 -11
  1121. package/Editor/BeamCli/Commands/BeamVersionConstruct.cs.meta +11 -11
  1122. package/Editor/BeamCli/Commands/BeamVersionResults.cs.meta +11 -11
  1123. package/Editor/BeamCli/Commands/BeamWriteProjectSettingsCommandOutput.cs.meta +11 -11
  1124. package/Editor/BeamCli/Extensions/BeamManifestServiceEntry_ComputedTypes.cs +53 -53
  1125. package/Editor/BeamCli/Extensions/BeamManifestStorageEntry_ComputedTypes.cs +10 -10
  1126. package/Editor/BeamCli/Extensions/DiscoveryExtensions.cs +57 -57
  1127. package/Editor/BeamCli/Extensions/FederationsConfig.cs +22 -22
  1128. package/Editor/BeamCli/UI/BeamCliJsonPopup.cs +29 -29
  1129. package/Editor/BeamCli/UI/BeamCliTextPopup.cs +32 -32
  1130. package/Editor/BeamCli/UI/BeamCliWindow.cs +174 -174
  1131. package/Editor/BeamCli/UI/BeamCliWindow_Commands.cs +539 -539
  1132. package/Editor/BeamCli/UI/BeamCliWindow_Overrides.cs +117 -117
  1133. package/Editor/BeamCli/UI/BeamCliWindow_Server.cs +156 -156
  1134. package/Editor/BeamCli/UI/BeamCliWindow_Terminal.cs +207 -207
  1135. package/Editor/BeamCli/UI/BeamCliWindow_Util.cs +336 -336
  1136. package/Editor/BeamCli/UI/JsonHighlighterUtil.cs +143 -143
  1137. package/Editor/BeamCli/UI/LogUtil/LogViewUtil.cs +727 -727
  1138. package/Editor/BeamCli/UI/TimeDisplayUtil.cs +22 -22
  1139. package/Editor/BeamEditor.cs +733 -733
  1140. package/Editor/BeamableLinker.cs +77 -77
  1141. package/Editor/BuildPostProcessor.cs +44 -44
  1142. package/Editor/BuildPreProcessor.cs +264 -264
  1143. package/Editor/ContentService/CliContentService.cs +44 -9
  1144. package/Editor/Dotnet/DotnetService.cs +193 -193
  1145. package/Editor/Dotnet/DotnetUtil.cs +296 -296
  1146. package/Editor/EditorAPI.cs +4 -4
  1147. package/Editor/EditorPlatformRequesterErrorHandler.cs +28 -28
  1148. package/Editor/EditorRuntimeConfigProvider.cs +19 -19
  1149. package/Editor/EditorStorageLayer.cs +40 -40
  1150. package/Editor/Eggs/EggEntry.cs +38 -38
  1151. package/Editor/Eggs/Serpent/EggSerpent.cs +209 -209
  1152. package/Editor/Environment/BeamableDiagnosticData.cs +198 -198
  1153. package/Editor/Environment/BeamableEditorWebRequester.cs +62 -62
  1154. package/Editor/Environment/BeamablePackages.cs +90 -90
  1155. package/Editor/Environment/IEditorHttpRequester.cs +49 -49
  1156. package/Editor/FileAssetModificationProcessor.cs +49 -49
  1157. package/Editor/LibraryService.cs +297 -297
  1158. package/Editor/Modules/Account/BeamableSocialsImporter.cs +59 -59
  1159. package/Editor/Modules/Account/EditorAuthService.cs +244 -244
  1160. package/Editor/Modules/Account/PortalCommand.cs +37 -37
  1161. package/Editor/Modules/Content/CalendarWindow.cs +185 -185
  1162. package/Editor/Modules/Content/ContentObjectPropertyDrawer.cs +26 -26
  1163. package/Editor/Modules/Content/ContentPropertyDrawer.cs +372 -372
  1164. package/Editor/Modules/Content/ContentValidationPropertyDrawer.cs +307 -307
  1165. package/Editor/Modules/Content/DatePropertyDrawer.cs +355 -355
  1166. package/Editor/Modules/Content/OptionalPropertyDrawer.cs +80 -80
  1167. package/Editor/Modules/Content/PropertyDrawerHelper.cs +44 -44
  1168. package/Editor/Modules/Content/ScheduleDefinitionPropertyDrawer.cs +554 -554
  1169. package/Editor/Modules/Content/SerializedContentObject.cs +12 -12
  1170. package/Editor/Modules/Content/UI/ContentObjectEditor.cs +395 -390
  1171. package/Editor/Modules/Content/UI/DisplayableListPropertyDrawer.cs +47 -47
  1172. package/Editor/Modules/Content/UI/EditorValidationContext.cs +7 -7
  1173. package/Editor/Modules/Content/UI/SerializedDictionaryEditor.cs +208 -208
  1174. package/Editor/Modules/ContentTypes/ContentTypesCreator.cs +58 -58
  1175. package/Editor/Modules/EditorConfig/EditorConfiguration.cs +209 -209
  1176. package/Editor/Modules/Input/InputActionPropertyDrawer.cs +138 -138
  1177. package/Editor/Modules/Player/ObservableReadonlyListPropertyDrawer.cs +21 -21
  1178. package/Editor/Modules/Purchasing/BeamablePurchaserImporter.cs +74 -74
  1179. package/Editor/Modules/Sessions/DeviceOptionPropertyDrawer.cs +56 -56
  1180. package/Editor/Modules/Sessions/SessionParameterProviderCreator.cs +111 -111
  1181. package/Editor/Modules/Sessions/SessionParameterProviderEditor.cs +25 -25
  1182. package/Editor/Modules/Stats/StatEditor.cs +18 -18
  1183. package/Editor/Modules/Theme/ButtonStyleObject.cs +9 -9
  1184. package/Editor/Modules/Theme/CanHideDrawer.cs +34 -34
  1185. package/Editor/Modules/Theme/ColorStyleObject.cs +9 -9
  1186. package/Editor/Modules/Theme/FilterSelection.cs +41 -41
  1187. package/Editor/Modules/Theme/FontStyleObject.cs +9 -9
  1188. package/Editor/Modules/Theme/GradientStyleObject.cs +9 -9
  1189. package/Editor/Modules/Theme/ImageStyleObject.cs +9 -9
  1190. package/Editor/Modules/Theme/LayoutStyleObject.cs +9 -9
  1191. package/Editor/Modules/Theme/PaletteStyleObject.cs +30 -30
  1192. package/Editor/Modules/Theme/SelectableStyleObject.cs +9 -9
  1193. package/Editor/Modules/Theme/SoundStyleObject.cs +9 -9
  1194. package/Editor/Modules/Theme/StringStyleObject.cs +9 -9
  1195. package/Editor/Modules/Theme/Style/ButtonStyleObjectPropertyDrawer.cs +61 -61
  1196. package/Editor/Modules/Theme/Style/GeneralPaletteBindingOptionDrawer.cs +25 -25
  1197. package/Editor/Modules/Theme/Style/ThemeSelectorEditor.cs +79 -79
  1198. package/Editor/Modules/Theme/TextStyleObject.cs +9 -9
  1199. package/Editor/Modules/Theme/ThemeConfigurationPropertyDrawer.cs +64 -64
  1200. package/Editor/Modules/Theme/TransformStyleObject.cs +9 -9
  1201. package/Editor/Modules/Theme/WindowStyleObject.cs +9 -9
  1202. package/Editor/NoOpAnalyticsTracker.cs +22 -22
  1203. package/Editor/ReflectionCache/ReflectionCacheAssetPostProcessor.cs +68 -68
  1204. package/Editor/ResetPlayerAccessTokenEditor.cs +63 -63
  1205. package/Editor/Server/AssemblyDefinitionHelper.cs +237 -237
  1206. package/Editor/Server/CommonAreaService.cs +198 -189
  1207. package/Editor/Server/DependencyResolver.cs +177 -177
  1208. package/Editor/Server/ExtensionMethods.cs +40 -40
  1209. package/Editor/Server/MicroserviceConfiguration.cs +87 -87
  1210. package/Editor/Server/RegisterDependencies.cs +33 -33
  1211. package/Editor/Server/UI/Configs/BeamFederationSetting.cs +160 -160
  1212. package/Editor/Server/UI/Configs/BeamStorageDependencySetting.cs +55 -55
  1213. package/Editor/Server/UI/Configs/BeamableMicroservicesSettings.cs +180 -180
  1214. package/Editor/Server/UI/Configs/BeamableStorageSettings.cs +83 -83
  1215. package/Editor/Server/UI/FederationPropertyDrawer.cs +209 -209
  1216. package/Editor/Server/UI/PublishWindow/UsamPublishWindow.cs +442 -442
  1217. package/Editor/Server/UI/PublishWindow/UsamPublishWindow_FatalError.cs +39 -39
  1218. package/Editor/Server/UI/PublishWindow/UsamPublishWindow_Plan.cs +125 -125
  1219. package/Editor/Server/UI/PublishWindow/UsamPublishWindow_Review.cs +247 -247
  1220. package/Editor/Server/UI/UsamWindow/ServicePickerWindow.cs +308 -308
  1221. package/Editor/Server/UI/UsamWindow/UsamWindow.cs +94 -94
  1222. package/Editor/Server/UI/UsamWindow/UsamWindow_Badges.cs +55 -55
  1223. package/Editor/Server/UI/UsamWindow/UsamWindow_Create.cs +325 -325
  1224. package/Editor/Server/UI/UsamWindow/UsamWindow_Docker.cs +111 -111
  1225. package/Editor/Server/UI/UsamWindow/UsamWindow_Main.cs +321 -321
  1226. package/Editor/Server/UI/UsamWindow/UsamWindow_Service.cs +313 -313
  1227. package/Editor/Server/UI/UsamWindow/UsamWindow_Settings.cs +405 -405
  1228. package/Editor/Server/UI/UsamWindow/UsamWindow_Storage.cs +237 -237
  1229. package/Editor/Server/Usam/AssemblyUtil.cs +136 -136
  1230. package/Editor/Server/Usam/CsProjUtil.cs +12 -12
  1231. package/Editor/Server/Usam/CsharpProjectUtil.cs +325 -325
  1232. package/Editor/Server/Usam/ServiceRoutingStrategy.cs +81 -81
  1233. package/Editor/Server/Usam/UsamLogger.cs +46 -46
  1234. package/Editor/Server/Usam/UsamService.cs +1152 -1152
  1235. package/Editor/Server/Usam/UsamService_GenerateClient.cs +243 -243
  1236. package/Editor/Server/Usam/UsamService_Reload.cs +119 -119
  1237. package/Editor/Server/WebhookContentEditor/RouteParametersPropertyDrawer.cs +309 -309
  1238. package/Editor/Server/WebhookContentEditor/RouteVariablesPropertyDrawer.cs +56 -56
  1239. package/Editor/Server/WebhookContentEditor/ServiceRoutePropertyDrawer.cs +137 -137
  1240. package/Editor/ServiceStorage.cs +128 -128
  1241. package/Editor/SessionStorageLayer.cs +29 -29
  1242. package/Editor/TextMeshProImporter.cs +101 -101
  1243. package/Editor/Toolbar/BeamableToolbarAssetPostProcessor.cs +32 -32
  1244. package/Editor/Toolbar/BeamableToolbarButton.cs +45 -45
  1245. package/Editor/Toolbar/BeamableToolbarCallbacks.cs +153 -153
  1246. package/Editor/Toolbar/BeamableToolbarExtender.cs +137 -137
  1247. package/Editor/Toolbar/BeamableToolbarMenuItem.cs +40 -40
  1248. package/Editor/Toolbar/MenuItems/AccountMenuItem.cs +51 -51
  1249. package/Editor/Toolbar/MenuItems/BeamableConfigurationManagerMenuItem.cs +21 -21
  1250. package/Editor/Toolbar/MenuItems/BeamableContentManagerMenuItem.cs +20 -20
  1251. package/Editor/Toolbar/MenuItems/BeamableMicroserviceManagerMenuItem.cs +20 -20
  1252. package/Editor/Toolbar/MenuItems/BeamablePortalMenuItem.cs +18 -18
  1253. package/Editor/Toolbar/MenuItems/BeamableRealmMenuItem.cs +100 -100
  1254. package/Editor/Toolbar/MenuItems/BeamableToolbarMenuItemSeparator.cs +17 -17
  1255. package/Editor/Toolbar/MenuItems/BeamableToolboxWindowMenuItem.cs +20 -20
  1256. package/Editor/Toolbar/ToolbarButtons/SampleBeamableButton.cs +27 -27
  1257. package/Editor/UI/BeamEditorWindow.cs +393 -393
  1258. package/Editor/UI/BeamGUI/BeamGUI_Dropdowns.cs +205 -205
  1259. package/Editor/UI/BeamGUI/BeamGUI_Enabled.cs +31 -31
  1260. package/Editor/UI/BeamGUI/BeamGUI_Header.cs +148 -148
  1261. package/Editor/UI/BeamGUI/BeamGUI_Icons.cs +330 -330
  1262. package/Editor/UI/BeamGUI/BeamGUI_LoadingBars.cs +105 -105
  1263. package/Editor/UI/BeamGUI/BeamGUI_PlaceholdTextField.cs +64 -64
  1264. package/Editor/UI/BeamGUI/BeamGUI_PrimaryButton.cs +178 -178
  1265. package/Editor/UI/BeamGUI/BeamGUI_Spinner.cs +30 -30
  1266. package/Editor/UI/BeamGUI/BeamGUI_StaticConstructor.cs +17 -17
  1267. package/Editor/UI/BeamGUI/BeamGUI_Toggle.cs +41 -41
  1268. package/Editor/UI/BeamGUI/PropertyDrawers/HelpBoxDecoratorDrawer.cs +32 -32
  1269. package/Editor/UI/Common/FormConstraint.cs +53 -53
  1270. package/Editor/UI/Common/MediaQueryObjectPropertyDrawer.cs +42 -42
  1271. package/Editor/UI/Common/ReparenterCustomEditor.cs +24 -24
  1272. package/Editor/UI/Config/BeamableSettingsProvider.cs +222 -222
  1273. package/Editor/UI/Config/BeamableSpewSettingsProvider.cs +163 -163
  1274. package/Editor/UI/Config/ConfigManager.cs +207 -207
  1275. package/Editor/UI/Config/Model/ConfigOption.cs +26 -26
  1276. package/Editor/UI/Config/Model/ConfigQuery.cs +114 -114
  1277. package/Editor/UI/ContentWindow/ContentWindow.cs +5 -1
  1278. package/Editor/UI/ContentWindow/ContentWindow_ItemsPanel.cs +3 -10
  1279. package/Editor/UI/ContentWindow/ContentWindow_SnapshotManager.cs +2 -2
  1280. package/Editor/UI/CronExpression/Common/Extensions.cs +23 -23
  1281. package/Editor/UI/CronExpression/DescriptionTypeEnum.cs +18 -18
  1282. package/Editor/UI/CronExpression/ExpressionDescriptor.cs +761 -761
  1283. package/Editor/UI/CronExpression/Localization/CronLocalizationData.cs +77 -77
  1284. package/Editor/UI/CronExpression/Localization/CronLocalizationDatabase.cs +15 -15
  1285. package/Editor/UI/HelpMenuItems.cs +29 -29
  1286. package/Editor/UI/IDelayedActionWindow.cs +10 -10
  1287. package/Editor/UI/LibraryWindow/BeamLibraryWindow.cs +71 -71
  1288. package/Editor/UI/LibraryWindow/BeamLibraryWindow_Main.cs +35 -35
  1289. package/Editor/UI/LibraryWindow/BeamLibraryWindow_Samples.cs +330 -330
  1290. package/Editor/UI/Toolbox/ToolboxWindow.cs +19 -19
  1291. package/Editor/Utility/BeamableAssetDatabase.cs +30 -30
  1292. package/Editor/Utility/BeamableDispatcher.cs +222 -222
  1293. package/Editor/Utility/EditorDebouncer.cs +78 -78
  1294. package/Editor/Utility/EditorFilesystemAccessor.cs +13 -13
  1295. package/Editor/Utility/EditorGUIExtension.cs +148 -148
  1296. package/Editor/Utility/EditorGUIRectController.cs +72 -72
  1297. package/Editor/Utility/FilePathSelectorDrawer.cs +81 -81
  1298. package/Editor/Utility/FileUtils.cs +76 -76
  1299. package/Editor/Utility/PlayerSettingsExtensions.cs +54 -54
  1300. package/Editor/Utility/PromiseEditor.cs +22 -22
  1301. package/Editor/Utility/PropertyDrawerFinder.cs +235 -235
  1302. package/Editor/Utility/ReadonlyIfDrawer.cs +56 -56
  1303. package/Editor/Utility/ShowOnlyDrawer.cs +36 -36
  1304. package/Editor/Utility/TaskUtil.cs +58 -58
  1305. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/BuildRequests.cs +961 -961
  1306. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/CoroutineClass.cs +1396 -1396
  1307. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/ExceptionHandlers.cs +295 -295
  1308. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/Helpers.cs +1337 -1337
  1309. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/IPubnubUnitTest.cs +31 -31
  1310. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/JSONSerializer.cs +62 -62
  1311. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/LoggingMethod.cs +661 -661
  1312. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/MD5.cs +723 -723
  1313. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/Pubnub.cs +1164 -1164
  1314. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/PubnubCallbacks.cs +464 -464
  1315. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/PubnubCrypto.cs +77 -77
  1316. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/PubnubUnity.cs +2080 -2080
  1317. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/ReconnectState.cs +180 -180
  1318. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/SafeDictionary.cs +204 -204
  1319. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/SharedStringBuilder.cs +23 -23
  1320. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/SharedStringBuilder.cs.meta +2 -2
  1321. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/SubscribeEnvelope.cs +226 -226
  1322. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/Subscription.cs +421 -421
  1323. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/Utility.cs +350 -350
  1324. package/Runtime/3rdParty/UnityUIExtensions/ExtentionMethods.cs +19 -19
  1325. package/Runtime/3rdParty/UnityUIExtensions/Gradient.cs +122 -122
  1326. package/Runtime/3rdParty/UnityUIExtensions/HorizontalScrollSnap.cs +317 -317
  1327. package/Runtime/3rdParty/UnityUIExtensions/IScrollSnap.cs +15 -15
  1328. package/Runtime/3rdParty/UnityUIExtensions/ScrollSnap.cs +573 -573
  1329. package/Runtime/3rdParty/UnityUIExtensions/ScrollSnapBase.cs +615 -615
  1330. package/Runtime/3rdParty/UnityUIExtensions/ScrollSnapScrollbarHelper.cs +56 -56
  1331. package/Runtime/3rdParty/UnityUIExtensions/UI_InfiniteScroll.cs +175 -175
  1332. package/Runtime/3rdParty/VirtualList/Editor/AbstractVirtualListEditor.cs +43 -43
  1333. package/Runtime/3rdParty/VirtualList/Runtime/AbstractVirtualList.cs +388 -388
  1334. package/Runtime/3rdParty/VirtualList/Runtime/IListSource.cs +50 -50
  1335. package/Runtime/3rdParty/VirtualList/Runtime/SimpleSource.cs +81 -81
  1336. package/Runtime/3rdParty/VirtualList/Runtime/VirtualGridList.cs +123 -123
  1337. package/Runtime/3rdParty/VirtualList/Runtime/VirtualHorizontalList.cs +84 -84
  1338. package/Runtime/3rdParty/VirtualList/Runtime/VirtualVerticalList.cs +84 -84
  1339. package/Runtime/3rdParty/WebSocket/WebSocket.cs +866 -866
  1340. package/Runtime/API.cs +267 -267
  1341. package/Runtime/Beam.cs +528 -528
  1342. package/Runtime/BeamContext.cs +1037 -1037
  1343. package/Runtime/Commands/CommandExtensions.cs +26 -26
  1344. package/Runtime/Commands/ICommand.cs +7 -7
  1345. package/Runtime/Connection/BeamableSubscriptionManager.cs +38 -38
  1346. package/Runtime/Connection/IBeamableConnection.cs +30 -30
  1347. package/Runtime/Connection/WebSocketConnection.cs +285 -285
  1348. package/Runtime/Connection/WebSocketConnectionException.cs +9 -9
  1349. package/Runtime/Core/Config/ConfigConsoleCommands.cs +69 -69
  1350. package/Runtime/Core/Config/ConfigConsoleCommands.cs.meta +2 -2
  1351. package/Runtime/Core/Config/ConfigDatabase.cs +253 -253
  1352. package/Runtime/Core/Config/RuntimeConfigProvider.cs +86 -86
  1353. package/Runtime/Core/ConsoleCommands/BeamableConsole.cs +169 -169
  1354. package/Runtime/Core/ConsoleCommands/BeamableConsole.cs.meta +2 -2
  1355. package/Runtime/Core/ConsoleCommands/BeamableConsoleCommandAttribute.cs +27 -27
  1356. package/Runtime/Core/ConsoleCommands/BeamableConsoleCommandProviderAttribute.cs +15 -15
  1357. package/Runtime/Core/ConsoleCommands/BeamableConsoleCommandProviderAttribute.cs.meta +2 -2
  1358. package/Runtime/Core/ConsoleCommands/DefaultConsoleCommands.cs +45 -45
  1359. package/Runtime/Core/ConsoleCommands/DefaultConsoleCommands.cs.meta +2 -2
  1360. package/Runtime/Core/Coroutines/CompletedYieldInstruction.cs +14 -14
  1361. package/Runtime/Core/Coroutines/CoroutineService.cs +115 -115
  1362. package/Runtime/Core/Coroutines/Debouncer.cs +147 -147
  1363. package/Runtime/Core/Coroutines/Yielders.cs +40 -40
  1364. package/Runtime/Core/Extensions/TransformExtensions.cs +118 -118
  1365. package/Runtime/Core/Platform/SDK/AccessToken.cs +151 -151
  1366. package/Runtime/Core/Platform/SDK/AccessTokenStorage.cs +225 -225
  1367. package/Runtime/Core/Platform/SDK/AdvertisingIdentifier/AdvertisingIdentifier.cs +30 -30
  1368. package/Runtime/Core/Platform/SDK/Analytics/AnalyticsTracker.cs +200 -200
  1369. package/Runtime/Core/Platform/SDK/Analytics/Batch/BatchContainer.cs +107 -107
  1370. package/Runtime/Core/Platform/SDK/Analytics/Batch/BatchManager.cs +207 -207
  1371. package/Runtime/Core/Platform/SDK/Analytics/Batch/IBatchContainer.cs +66 -66
  1372. package/Runtime/Core/Platform/SDK/Analytics/Batch/PersistentBatchManager.cs +143 -143
  1373. package/Runtime/Core/Platform/SDK/Analytics/Batch/SerializableBatch.cs +33 -33
  1374. package/Runtime/Core/Platform/SDK/Analytics/Models/BillerPurchaseFailedEvent.cs +16 -16
  1375. package/Runtime/Core/Platform/SDK/Analytics/Models/LoginPanicEvent.cs +19 -19
  1376. package/Runtime/Core/Platform/SDK/Announcements/AnnouncementsService.cs +121 -121
  1377. package/Runtime/Core/Platform/SDK/Auth/AuthService.cs +230 -230
  1378. package/Runtime/Core/Platform/SDK/Auth/DeviceIdResolver.cs +24 -24
  1379. package/Runtime/Core/Platform/SDK/Auth/GCIdentity.cs +24 -24
  1380. package/Runtime/Core/Platform/SDK/Auth/GoogleSignIn.cs +89 -89
  1381. package/Runtime/Core/Platform/SDK/Auth/SignInWithApple.cs +263 -263
  1382. package/Runtime/Core/Platform/SDK/Auth/SignInWithFacebookLimited.cs +112 -112
  1383. package/Runtime/Core/Platform/SDK/Auth/SignInWithGPG.cs +109 -109
  1384. package/Runtime/Core/Platform/SDK/Auth/SignInWithGameCenter.cs +107 -107
  1385. package/Runtime/Core/Platform/SDK/BeamableApiRequester.cs +112 -112
  1386. package/Runtime/Core/Platform/SDK/Caches/OfflineCache.cs +319 -319
  1387. package/Runtime/Core/Platform/SDK/Calendars/CalendarsService.cs +123 -123
  1388. package/Runtime/Core/Platform/SDK/Chat/ChatProvider.cs +190 -190
  1389. package/Runtime/Core/Platform/SDK/Chat/ChatService.cs +61 -61
  1390. package/Runtime/Core/Platform/SDK/Chat/ChatView.cs +292 -292
  1391. package/Runtime/Core/Platform/SDK/Chat/PubNubChatProvider.cs +51 -51
  1392. package/Runtime/Core/Platform/SDK/Chat/PubNubRoom.cs +135 -135
  1393. package/Runtime/Core/Platform/SDK/Chat/Room.cs +121 -121
  1394. package/Runtime/Core/Platform/SDK/CloudData/CloudDataConsoleCommands.cs +52 -52
  1395. package/Runtime/Core/Platform/SDK/CloudData/CloudDataService.cs +24 -24
  1396. package/Runtime/Core/Platform/SDK/CloudSaving/CloudSavingError.cs +14 -14
  1397. package/Runtime/Core/Platform/SDK/CloudSaving/CloudSavingExtensions.cs +82 -82
  1398. package/Runtime/Core/Platform/SDK/CometClientData.cs +44 -44
  1399. package/Runtime/Core/Platform/SDK/CometClientData.cs.meta +2 -2
  1400. package/Runtime/Core/Platform/SDK/Commerce/CommerceConsoleCommands.cs +45 -45
  1401. package/Runtime/Core/Platform/SDK/Commerce/CommerceService.cs +101 -101
  1402. package/Runtime/Core/Platform/SDK/Commerce/ICommerceConfig.cs +19 -19
  1403. package/Runtime/Core/Platform/SDK/Connectivity/Connectivity.cs +238 -238
  1404. package/Runtime/Core/Platform/SDK/Connectivity/IConnectivityChecker.cs +109 -109
  1405. package/Runtime/Core/Platform/SDK/ErrorCode.cs +62 -62
  1406. package/Runtime/Core/Platform/SDK/Events/EventsService.cs +129 -129
  1407. package/Runtime/Core/Platform/SDK/Groups/GroupsService.cs +58 -58
  1408. package/Runtime/Core/Platform/SDK/Gzip.cs +51 -51
  1409. package/Runtime/Core/Platform/SDK/Inventory/InventoryConsoleCommands.cs +65 -65
  1410. package/Runtime/Core/Platform/SDK/Inventory/InventoryService.cs +149 -149
  1411. package/Runtime/Core/Platform/SDK/Inventory/InventoryService.cs.meta +2 -2
  1412. package/Runtime/Core/Platform/SDK/Inventory.meta +2 -2
  1413. package/Runtime/Core/Platform/SDK/Leaderboard/LeaderboardService.cs +31 -31
  1414. package/Runtime/Core/Platform/SDK/Mail/MailService.cs +44 -44
  1415. package/Runtime/Core/Platform/SDK/Matchmaking/Match.cs +46 -46
  1416. package/Runtime/Core/Platform/SDK/Matchmaking/MatchmakingService.cs +450 -450
  1417. package/Runtime/Core/Platform/SDK/Matchmaking/Ticket.cs +36 -36
  1418. package/Runtime/Core/Platform/SDK/Matchmaking/TicketReservationRequest.cs +43 -43
  1419. package/Runtime/Core/Platform/SDK/Matchmaking/TicketReservationResponse.cs +21 -21
  1420. package/Runtime/Core/Platform/SDK/Notification/Internal/AppleLocalNotificationRelay.cs +117 -117
  1421. package/Runtime/Core/Platform/SDK/Notification/Internal/DummyLocalNotificationRelay.cs +33 -33
  1422. package/Runtime/Core/Platform/SDK/Notification/Internal/GoogleLocalNotificationRelay.cs +86 -86
  1423. package/Runtime/Core/Platform/SDK/Notification/Internal/ILocalNotificationRelay.cs +40 -40
  1424. package/Runtime/Core/Platform/SDK/Notification/Internal/IMessageHandler.cs +11 -11
  1425. package/Runtime/Core/Platform/SDK/Notification/Internal/InGameNotification.cs +39 -39
  1426. package/Runtime/Core/Platform/SDK/Notification/Internal/MultiChannelSubscriptionHandler.cs +90 -90
  1427. package/Runtime/Core/Platform/SDK/Notification/NotificationService.cs +505 -505
  1428. package/Runtime/Core/Platform/SDK/Notification/PubnubData.cs +50 -50
  1429. package/Runtime/Core/Platform/SDK/Notification/PubnubSubscriptionManager.cs +668 -668
  1430. package/Runtime/Core/Platform/SDK/Notification/PushProvider.cs +25 -25
  1431. package/Runtime/Core/Platform/SDK/Notification/PushService.cs +74 -74
  1432. package/Runtime/Core/Platform/SDK/Payments/IBeamablePurchaser.cs +62 -62
  1433. package/Runtime/Core/Platform/SDK/Payments/IPaymentServiceOptions.cs +38 -38
  1434. package/Runtime/Core/Platform/SDK/Payments/PaymentErrorCodes.cs +17 -17
  1435. package/Runtime/Core/Platform/SDK/Payments/PaymentModel.cs +75 -75
  1436. package/Runtime/Core/Platform/SDK/Payments/PaymentService.cs +445 -445
  1437. package/Runtime/Core/Platform/SDK/Payments/PaymentTransaction.cs +138 -138
  1438. package/Runtime/Core/Platform/SDK/Payments/TransactionManager.cs +348 -348
  1439. package/Runtime/Core/Platform/SDK/PlatformFilesystemAccessor.cs +14 -14
  1440. package/Runtime/Core/Platform/SDK/PlatformRequester.cs +761 -761
  1441. package/Runtime/Core/Platform/SDK/PlatformRequesterExceptions.cs +31 -31
  1442. package/Runtime/Core/Platform/SDK/PlatformRequesterExtensions.cs +21 -21
  1443. package/Runtime/Core/Platform/SDK/PlatformRequesterInterfaces.cs +29 -29
  1444. package/Runtime/Core/Platform/SDK/PlatformService.cs +81 -81
  1445. package/Runtime/Core/Platform/SDK/PlatformSubscribable.cs +621 -621
  1446. package/Runtime/Core/Platform/SDK/Polyfill.cs +25 -25
  1447. package/Runtime/Core/Platform/SDK/PubnubNotificationService.cs +42 -42
  1448. package/Runtime/Core/Platform/SDK/Session/Heartbeat.cs +127 -127
  1449. package/Runtime/Core/Platform/SDK/Session/SessionDeviceOptions.cs +213 -213
  1450. package/Runtime/Core/Platform/SDK/Session/SessionParameterProvider.cs +61 -61
  1451. package/Runtime/Core/Platform/SDK/Session/SessionService.cs +292 -292
  1452. package/Runtime/Core/Platform/SDK/Session/SessionServiceHelper.cs +192 -192
  1453. package/Runtime/Core/Platform/SDK/Sim/GameRelayService.cs +243 -243
  1454. package/Runtime/Core/Platform/SDK/Sim/SimBehavior.cs +73 -73
  1455. package/Runtime/Core/Platform/SDK/Sim/SimClient.cs +427 -427
  1456. package/Runtime/Core/Platform/SDK/Sim/SimEvent.cs +39 -39
  1457. package/Runtime/Core/Platform/SDK/Sim/SimFaultHandler.cs +172 -172
  1458. package/Runtime/Core/Platform/SDK/Sim/SimFrame.cs +76 -76
  1459. package/Runtime/Core/Platform/SDK/Sim/SimLog.cs +113 -113
  1460. package/Runtime/Core/Platform/SDK/Sim/SimNetworkInterface.cs +79 -79
  1461. package/Runtime/Core/Platform/SDK/Sim/network/eventStream/SimNetworkEventStream.cs +186 -186
  1462. package/Runtime/Core/Platform/SDK/Sim/network/local/SimNetworkLocal.cs +62 -62
  1463. package/Runtime/Core/Platform/SDK/Social/SocialService.cs +22 -22
  1464. package/Runtime/Core/Platform/SDK/Stats/StatsService.cs +96 -96
  1465. package/Runtime/Core/Platform/SDK/TokenAnalyticsUtil.cs +65 -65
  1466. package/Runtime/Core/Platform/SDK/Tournaments/TournamentConsoleCommands.cs +87 -87
  1467. package/Runtime/Core/Platform/SDK/Tournaments/TournamentService.cs +26 -26
  1468. package/Runtime/Core/Platform/SDK/UnityUserDataCache.cs +169 -169
  1469. package/Runtime/Core/Platform/TaskLikeExtensions.cs +26 -26
  1470. package/Runtime/Core/Pooling/DisablePool.cs +104 -104
  1471. package/Runtime/Core/Pooling/HidePool.cs +203 -203
  1472. package/Runtime/Core/Pooling/HidePoolObject.cs +15 -15
  1473. package/Runtime/Core/Pooling/HidePoolService.cs +64 -64
  1474. package/Runtime/Core/Pooling/StaticClassPool.cs +82 -82
  1475. package/Runtime/Core/Pooling/StringBuilderPool.cs +116 -116
  1476. package/Runtime/Dependencies/GameObjectContext.cs +36 -36
  1477. package/Runtime/Dependencies/ILoadWithContext.cs +12 -12
  1478. package/Runtime/Environment/BeamableEnvironment.cs +134 -134
  1479. package/Runtime/Environment/Resources/env-default.json +1 -1
  1480. package/Runtime/Environment/Resources/versions-default.json +1 -1
  1481. package/Runtime/ExperimentalAPI.cs +49 -49
  1482. package/Runtime/GlobalServices/BeamableGlobalGameObject.cs +37 -37
  1483. package/Runtime/HelpBoxDecoratorAttribute.cs +16 -16
  1484. package/Runtime/InventoryViewEx.cs +171 -171
  1485. package/Runtime/Modules/AccountManagement/Scripts/AccountAvatarBehaviour.cs +51 -51
  1486. package/Runtime/Modules/AccountManagement/Scripts/AccountCustomizationBehaviour.cs +185 -185
  1487. package/Runtime/Modules/AccountManagement/Scripts/AccountDisplayItem.cs +245 -245
  1488. package/Runtime/Modules/AccountManagement/Scripts/AccountEmailLogin.cs +126 -126
  1489. package/Runtime/Modules/AccountManagement/Scripts/AccountExistsSelect.cs +27 -27
  1490. package/Runtime/Modules/AccountManagement/Scripts/AccountForgotPassword.cs +63 -63
  1491. package/Runtime/Modules/AccountManagement/Scripts/AccountGeneralErrorBehaviour.cs +15 -15
  1492. package/Runtime/Modules/AccountManagement/Scripts/AccountMainMenu.cs +315 -315
  1493. package/Runtime/Modules/AccountManagement/Scripts/AccountManagementAdapter.cs +75 -75
  1494. package/Runtime/Modules/AccountManagement/Scripts/AccountManagementBehaviour.cs +68 -68
  1495. package/Runtime/Modules/AccountManagement/Scripts/AccountManagementCommands.cs +50 -50
  1496. package/Runtime/Modules/AccountManagement/Scripts/AccountManagementConfiguration.cs +172 -172
  1497. package/Runtime/Modules/AccountManagement/Scripts/AccountManagementHelper.cs +40 -40
  1498. package/Runtime/Modules/AccountManagement/Scripts/AccountManagementSignals.cs +716 -716
  1499. package/Runtime/Modules/AccountManagement/Scripts/AccountPlayerDataMenu.cs +94 -94
  1500. package/Runtime/Modules/AccountManagement/Scripts/AccountSwitch.cs +55 -55
  1501. package/Runtime/Modules/AccountManagement/Scripts/AccountThirdPartyWaitingMenu.cs +22 -22
  1502. package/Runtime/Modules/AccountManagement/Scripts/AppleSignInBehavior.cs +64 -64
  1503. package/Runtime/Modules/AccountManagement/Scripts/ForgotPasswordArguments.cs +10 -10
  1504. package/Runtime/Modules/AccountManagement/Scripts/GoogleGameServicesBehavior.cs +67 -67
  1505. package/Runtime/Modules/AccountManagement/Scripts/GoogleSignInBehavior.cs +70 -70
  1506. package/Runtime/Modules/AccountManagement/Scripts/LoadingPopup.cs +34 -34
  1507. package/Runtime/Modules/AccountManagement/Scripts/LoginArguments.cs +10 -10
  1508. package/Runtime/Modules/AccountManagement/Scripts/ThirdPartyLoginArgument.cs +10 -10
  1509. package/Runtime/Modules/AccountManagement/Scripts/TokenReference.cs +10 -10
  1510. package/Runtime/Modules/Announcements/Rework/AnnouncementsCollection.cs +53 -53
  1511. package/Runtime/Modules/Announcements/Rework/AnnouncementsPresenter.cs +70 -70
  1512. package/Runtime/Modules/Announcements/Scripts/AnnouncementBehavior.cs +22 -22
  1513. package/Runtime/Modules/Announcements/Scripts/AnnouncementMainMenu.cs +79 -79
  1514. package/Runtime/Modules/Announcements/Scripts/AnnouncementReadMenu.cs +47 -47
  1515. package/Runtime/Modules/Announcements/Scripts/AnnouncementSignals.cs +39 -39
  1516. package/Runtime/Modules/Announcements/Scripts/AnnouncementSummary.cs +19 -19
  1517. package/Runtime/Modules/Avatars/Scripts/AvatarConfiguration.cs +33 -33
  1518. package/Runtime/Modules/Avatars/Scripts/AvatarPickerBehaviour.cs +99 -99
  1519. package/Runtime/Modules/BeamableDisplayModule.cs +83 -83
  1520. package/Runtime/Modules/BeamableModule.cs +17 -17
  1521. package/Runtime/Modules/Calendars/Scripts/CalendarBehaviour.cs +85 -85
  1522. package/Runtime/Modules/Calendars/Scripts/CalendarFlowMainPage.cs +8 -8
  1523. package/Runtime/Modules/Calendars/Scripts/CalendarRewardsDay.cs +32 -32
  1524. package/Runtime/Modules/Console/ConsoleConfiguration.cs +25 -25
  1525. package/Runtime/Modules/Console/ConsoleFlow.cs +662 -662
  1526. package/Runtime/Modules/Content/ContentCache.cs +184 -184
  1527. package/Runtime/Modules/Content/ContentCommands.cs +161 -161
  1528. package/Runtime/Modules/Content/ContentConfiguration.cs +161 -161
  1529. package/Runtime/Modules/Content/ContentParameterProvider.cs +9 -9
  1530. package/Runtime/Modules/Content/ContentService.cs +739 -739
  1531. package/Runtime/Modules/Content/Extensions.cs +42 -42
  1532. package/Runtime/Modules/Content/IManifestResolver.cs +42 -42
  1533. package/Runtime/Modules/Content/Manifest.cs +22 -22
  1534. package/Runtime/Modules/CoreConfiguration.cs +285 -285
  1535. package/Runtime/Modules/CurrencyHUD/CurrencyHUDFlow.cs +74 -74
  1536. package/Runtime/Modules/Generics/CollectionPresenter.cs +9 -9
  1537. package/Runtime/Modules/Generics/DataCollection.cs +19 -19
  1538. package/Runtime/Modules/Generics/DataPresenter.cs +40 -40
  1539. package/Runtime/Modules/Generics/GenericButton.cs +21 -21
  1540. package/Runtime/Modules/Generics/Model.cs +26 -26
  1541. package/Runtime/Modules/Generics/ModelPresenter.cs +25 -25
  1542. package/Runtime/Modules/Input/BeamableInput.cs +45 -45
  1543. package/Runtime/Modules/Input/InputActionArg.cs +55 -55
  1544. package/Runtime/Modules/Inventory/Prototype/GenericComponents/GenericTextButton.cs +36 -36
  1545. package/Runtime/Modules/Inventory/Prototype/InventoryPresenter.cs +159 -159
  1546. package/Runtime/Modules/Inventory/Prototype/ItemPresenter.cs +29 -29
  1547. package/Runtime/Modules/Inventory/Prototype/ItemsCollection.cs +79 -79
  1548. package/Runtime/Modules/Inventory/Prototype/LanguageLocalization/LanguageLocalizationElement.cs +47 -47
  1549. package/Runtime/Modules/Inventory/Prototype/LanguageLocalization/LanguageLocalizationManager.cs +43 -43
  1550. package/Runtime/Modules/Inventory/Prototype/LanguageLocalization/LocalizationHelper.cs +15 -15
  1551. package/Runtime/Modules/Inventory/Scripts/InventoryBehaviour.cs +59 -59
  1552. package/Runtime/Modules/Inventory/Scripts/InventoryCommands.cs +190 -190
  1553. package/Runtime/Modules/Inventory/Scripts/InventoryConfiguration.cs +32 -32
  1554. package/Runtime/Modules/Inventory/Scripts/InventoryGroupUI.cs +56 -56
  1555. package/Runtime/Modules/Inventory/Scripts/InventoryMainMenu.cs +65 -65
  1556. package/Runtime/Modules/Inventory/Scripts/InventoryMenuBehaviour.cs +56 -56
  1557. package/Runtime/Modules/Inventory/Scripts/InventoryObjectUI.cs +38 -38
  1558. package/Runtime/Modules/Inventory/Scripts/InventorySignals.cs +43 -43
  1559. package/Runtime/Modules/Inventory/Scripts/ItemImageSetter.cs +41 -41
  1560. package/Runtime/Modules/Leaderboards/Scripts/LeaderboardBehavior.cs +32 -32
  1561. package/Runtime/Modules/Leaderboards/Scripts/LeaderboardItem.cs +24 -24
  1562. package/Runtime/Modules/Leaderboards/Scripts/LeaderboardMainMenu.cs +80 -80
  1563. package/Runtime/Modules/Leaderboards/Scripts/LeaderboardSignals.cs +33 -33
  1564. package/Runtime/Modules/ModuleConfigurationObject.cs +212 -212
  1565. package/Runtime/Modules/PackageUtil.cs +80 -80
  1566. package/Runtime/Modules/Purchasing/PaymentCommands.cs +55 -55
  1567. package/Runtime/Modules/Purchasing/Steam/SteamPurchasingModule.cs +20 -20
  1568. package/Runtime/Modules/Purchasing/Steam/SteamStore.cs +147 -147
  1569. package/Runtime/Modules/Purchasing/UnityBeamablePurchaser.cs +514 -514
  1570. package/Runtime/Modules/Sessions/SessionConfiguration.cs +16 -16
  1571. package/Runtime/Modules/Shop/Scripts/Defaults/BasicListingRenderer.cs +124 -124
  1572. package/Runtime/Modules/Shop/Scripts/Defaults/BasicStoreRenderer.cs +60 -60
  1573. package/Runtime/Modules/Shop/Scripts/Defaults/ObtainSummaryListCurrencyRenderer.cs +25 -25
  1574. package/Runtime/Modules/Shop/Scripts/Defaults/ObtainSummaryListItemRenderer.cs +23 -23
  1575. package/Runtime/Modules/Shop/Scripts/Defaults/ObtainSummaryListRenderer.cs +37 -37
  1576. package/Runtime/Modules/Shop/Scripts/ListingContent.cs +36 -36
  1577. package/Runtime/Modules/Shop/Scripts/ListingRenderer.cs +10 -10
  1578. package/Runtime/Modules/Shop/Scripts/ObtainRenderer.cs +10 -10
  1579. package/Runtime/Modules/Shop/Scripts/ShopConfiguration.cs +24 -24
  1580. package/Runtime/Modules/Shop/Scripts/ShopFlow.cs +124 -124
  1581. package/Runtime/Modules/Shop/Scripts/ShopLoadingMenu.cs +5 -5
  1582. package/Runtime/Modules/Shop/Scripts/ShopRewardRenderer.cs +26 -26
  1583. package/Runtime/Modules/Shop/Scripts/ShopSignals.cs +45 -45
  1584. package/Runtime/Modules/Signals/DeSignal.cs +68 -68
  1585. package/Runtime/Modules/Signals/DeSignalTower.cs +68 -68
  1586. package/Runtime/Modules/Sound/Scripts/SoundConfiguration.cs +52 -52
  1587. package/Runtime/Modules/Stats/StatBehaviour.cs +181 -181
  1588. package/Runtime/Modules/Stats/StatObject.cs +106 -106
  1589. package/Runtime/Modules/Stats/UserExtensions.cs +89 -89
  1590. package/Runtime/Modules/Theme/Appliers/ButtonStyleApplier.cs +59 -59
  1591. package/Runtime/Modules/Theme/Appliers/GradientStyleApplier.cs +32 -32
  1592. package/Runtime/Modules/Theme/Appliers/ImageStyleApplier.cs +30 -30
  1593. package/Runtime/Modules/Theme/Appliers/LayoutStyleApplier.cs +22 -22
  1594. package/Runtime/Modules/Theme/Appliers/SelectableStyleApplier.cs +32 -32
  1595. package/Runtime/Modules/Theme/Appliers/SoundStyleApplier.cs +27 -27
  1596. package/Runtime/Modules/Theme/Appliers/StringStyleApplier.cs +20 -20
  1597. package/Runtime/Modules/Theme/Appliers/StyleApplier.cs +28 -28
  1598. package/Runtime/Modules/Theme/Appliers/TextStyleApplier.cs +57 -57
  1599. package/Runtime/Modules/Theme/Appliers/TransformStyleApplier.cs +21 -21
  1600. package/Runtime/Modules/Theme/Appliers/WindowStyleApplier.cs +51 -51
  1601. package/Runtime/Modules/Theme/CanHideAttribute.cs +12 -12
  1602. package/Runtime/Modules/Theme/Objects/GradientStyleObject.cs +33 -33
  1603. package/Runtime/Modules/Theme/Objects/ImageStyleObject.cs +27 -27
  1604. package/Runtime/Modules/Theme/Objects/LayoutStyleObject.cs +20 -20
  1605. package/Runtime/Modules/Theme/Objects/SelectableStyleObject.cs +38 -38
  1606. package/Runtime/Modules/Theme/Objects/TextStyleObject.cs +34 -34
  1607. package/Runtime/Modules/Theme/Palette.cs +94 -94
  1608. package/Runtime/Modules/Theme/PaletteStyleCopier.cs +34 -34
  1609. package/Runtime/Modules/Theme/Palettes/ButtonPalette.cs +78 -78
  1610. package/Runtime/Modules/Theme/Palettes/ColorPalette.cs +27 -27
  1611. package/Runtime/Modules/Theme/Palettes/FontPalette.cs +28 -28
  1612. package/Runtime/Modules/Theme/Palettes/GradientPalette.cs +57 -57
  1613. package/Runtime/Modules/Theme/Palettes/ImagePalette.cs +31 -31
  1614. package/Runtime/Modules/Theme/Palettes/LayoutPalette.cs +28 -28
  1615. package/Runtime/Modules/Theme/Palettes/SelectablePalette.cs +36 -36
  1616. package/Runtime/Modules/Theme/Palettes/SoundPalette.cs +30 -30
  1617. package/Runtime/Modules/Theme/Palettes/StringPalette.cs +37 -37
  1618. package/Runtime/Modules/Theme/Palettes/TextPalette.cs +61 -61
  1619. package/Runtime/Modules/Theme/Palettes/TransformPalette.cs +29 -29
  1620. package/Runtime/Modules/Theme/Palettes/WindowPalette.cs +43 -43
  1621. package/Runtime/Modules/Theme/StyleBehaviour.cs +73 -73
  1622. package/Runtime/Modules/Theme/StyleObject.cs +46 -46
  1623. package/Runtime/Modules/Theme/ThemeConfiguration.cs +9 -9
  1624. package/Runtime/Modules/Theme/ThemeObject.cs +160 -160
  1625. package/Runtime/Modules/Tournaments/Scripts/CountdownTextBehaviour.cs +65 -65
  1626. package/Runtime/Modules/Tournaments/Scripts/FixedCharacterFitter.cs +49 -49
  1627. package/Runtime/Modules/Tournaments/Scripts/MockTournamentService.cs +221 -221
  1628. package/Runtime/Modules/Tournaments/Scripts/TabBehaviour.cs +97 -97
  1629. package/Runtime/Modules/Tournaments/Scripts/TournamenClaimableRewardBehaviour.cs +37 -37
  1630. package/Runtime/Modules/Tournaments/Scripts/TournamentColorConstraint.cs +62 -62
  1631. package/Runtime/Modules/Tournaments/Scripts/TournamentDataSource.cs +74 -74
  1632. package/Runtime/Modules/Tournaments/Scripts/TournamentEntryBehavior.cs +221 -221
  1633. package/Runtime/Modules/Tournaments/Scripts/TournamentEntryPlayerBehaviour.cs +152 -152
  1634. package/Runtime/Modules/Tournaments/Scripts/TournamentInfoBehaviour.cs +33 -33
  1635. package/Runtime/Modules/Tournaments/Scripts/TournamentInfoDetailBehaviour.cs +8 -8
  1636. package/Runtime/Modules/Tournaments/Scripts/TournamentInfoDetailContainerBehaviour.cs +32 -32
  1637. package/Runtime/Modules/Tournaments/Scripts/TournamentNumbersBehaviour.cs +20 -20
  1638. package/Runtime/Modules/Tournaments/Scripts/TournamentRewardBehaviour.cs +21 -21
  1639. package/Runtime/Modules/Tournaments/Scripts/TournamentRewardEntryBehaviour.cs +32 -32
  1640. package/Runtime/Modules/Tournaments/Scripts/TournamentRewardPanelBehaviour.cs +78 -78
  1641. package/Runtime/Modules/Tournaments/Scripts/TournamentScoreUtil.cs +77 -77
  1642. package/Runtime/Modules/Tournaments/Scripts/TournamentStageGainBehaviour.cs +25 -25
  1643. package/Runtime/Modules/Tournaments/Scripts/TournamentsBehaviour.cs +630 -630
  1644. package/Runtime/Modules/Tournaments/Scripts/TournamentsConfiguration.cs +32 -32
  1645. package/Runtime/PaymentExtensions.cs +16 -16
  1646. package/Runtime/PlatformConsoleCommands.cs +559 -559
  1647. package/Runtime/PlatformConsoleCommands.cs.meta +2 -2
  1648. package/Runtime/Player/ApiServices.cs +162 -162
  1649. package/Runtime/Player/BeamableBehaviour.cs +142 -142
  1650. package/Runtime/Player/Leaderboards/LeaderboardLists.cs +216 -216
  1651. package/Runtime/Player/Leaderboards/Lists/FriendScoresList.cs +76 -76
  1652. package/Runtime/Player/Leaderboards/Lists/NearbyScoresList.cs +67 -67
  1653. package/Runtime/Player/Leaderboards/Lists/PlayerCollectionScoresList.cs +52 -52
  1654. package/Runtime/Player/Leaderboards/Lists/TopScoresList.cs +41 -41
  1655. package/Runtime/Player/Leaderboards/PlayerLeaderboard.cs +774 -774
  1656. package/Runtime/Player/Leaderboards/PlayerLeaderboards.cs +95 -95
  1657. package/Runtime/Player/MonoBehaviourExtensions.cs +17 -17
  1658. package/Runtime/Player/ObservableAccessToken.cs +12 -12
  1659. package/Runtime/Player/ObservableUser.cs +30 -30
  1660. package/Runtime/Player/PlayerAccounts.cs +2132 -2132
  1661. package/Runtime/Player/PlayerAnnouncements.cs +239 -239
  1662. package/Runtime/Player/PlayerCurrencies.cs +157 -157
  1663. package/Runtime/Player/PlayerFriends.cs +661 -661
  1664. package/Runtime/Player/PlayerInventory.cs +893 -893
  1665. package/Runtime/Player/PlayerItemGroup.cs +200 -200
  1666. package/Runtime/Player/PlayerLobby.cs +328 -328
  1667. package/Runtime/Player/PlayerParty.cs +601 -601
  1668. package/Runtime/Player/PlayerStateService.cs +44 -44
  1669. package/Runtime/Player/PlayerStats.cs +238 -238
  1670. package/Runtime/Player/SdkEventService.cs +259 -259
  1671. package/Runtime/PromiseExtensions.cs +304 -304
  1672. package/Runtime/ReflectionCache/BeamReflectionCache.cs +186 -186
  1673. package/Runtime/ReflectionCache/ReflectionSystemObject.cs +55 -55
  1674. package/Runtime/ReflectionCache/ThirdPartyIdentityReflectionCache.cs +84 -84
  1675. package/Runtime/Server/BeamContextExtensions.cs +13 -13
  1676. package/Runtime/Server/Content/ApiContentExtensions.cs +88 -88
  1677. package/Runtime/Server/LegacyCommon/Mocks/MongoDB/Bson.meta +11 -11
  1678. package/Runtime/Server/MicroserviceClient.cs +415 -415
  1679. package/Runtime/Server/MicroserviceIndividualization.cs +80 -80
  1680. package/Runtime/Server/MicroservicePrefixService.cs +10 -10
  1681. package/Runtime/Server/ThirdPartyFederatedLoginExtensions.cs +60 -60
  1682. package/Runtime/UI/Buttons/DeButtonBehaviour.cs +33 -33
  1683. package/Runtime/UI/Layouts/MediaQueryBehaviour.cs +74 -74
  1684. package/Runtime/UI/Layouts/MediaQueryObject.cs +118 -118
  1685. package/Runtime/UI/Layouts/MediaSourceBehaviour.cs +49 -49
  1686. package/Runtime/UI/Layouts/ReparenterBehaviour.cs +86 -86
  1687. package/Runtime/UI/Layouts/StackLayout.cs +70 -70
  1688. package/Runtime/UI/Lightbeam/DependencyExtensions.cs +359 -359
  1689. package/Runtime/UI/Lightbeam/LightBeam.cs +155 -155
  1690. package/Runtime/UI/Lightbeam/UIExtensions.cs +182 -182
  1691. package/Runtime/UI/Prompt/DePromptBehaviour.cs +38 -38
  1692. package/Runtime/UI/Prompt/DePromptData.cs +14 -14
  1693. package/Runtime/UI/Scripts/AddressableImageBehaviour.cs +15 -15
  1694. package/Runtime/UI/Scripts/AddressableSpriteLoader.cs +107 -107
  1695. package/Runtime/UI/Scripts/BackButtonBehaviour.cs +14 -14
  1696. package/Runtime/UI/Scripts/BeamableAnimationUtil.cs +100 -100
  1697. package/Runtime/UI/Scripts/BeamableButton.cs +33 -33
  1698. package/Runtime/UI/Scripts/BeamableWindow.cs +15 -15
  1699. package/Runtime/UI/Scripts/ClickOffBehaviour.cs +42 -42
  1700. package/Runtime/UI/Scripts/CloseButtonBehaviour.cs +14 -14
  1701. package/Runtime/UI/Scripts/EventSoundBehaviour.cs +55 -55
  1702. package/Runtime/UI/Scripts/GameObjectToggler.cs +25 -25
  1703. package/Runtime/UI/Scripts/InputReference.cs +24 -24
  1704. package/Runtime/UI/Scripts/InputValidationBehaviour.cs +153 -153
  1705. package/Runtime/UI/Scripts/LoadingDisableBehaviour.cs +87 -87
  1706. package/Runtime/UI/Scripts/LoadingIndicator.cs +117 -117
  1707. package/Runtime/UI/Scripts/Menu.cs +47 -47
  1708. package/Runtime/UI/Scripts/MenuManagementBehaviour.cs +268 -268
  1709. package/Runtime/UI/Scripts/MobileUtilities.cs +84 -84
  1710. package/Runtime/UI/Scripts/OfflineNotificationBehaviour.cs +37 -37
  1711. package/Runtime/UI/Scripts/OfflineObject.cs +69 -69
  1712. package/Runtime/UI/Scripts/ScrollButton.cs +23 -23
  1713. package/Runtime/UI/Scripts/ScrollDotsBehaviour.cs +83 -83
  1714. package/Runtime/UI/Scripts/ScrollToAlphaBehaviour.cs +47 -47
  1715. package/Runtime/UI/Scripts/StickyScrollElement.cs +176 -176
  1716. package/Runtime/UI/Scripts/TextReference.cs +15 -15
  1717. package/Runtime/UI/Scripts/TextReferenceBase.cs +14 -14
  1718. package/Runtime/UI/Scripts/TransformOffsetBehaviour.cs +61 -61
  1719. package/Runtime/UI/TextField/DeTextFieldBehaviour.cs +48 -48
  1720. package/Runtime/VectorIntExtensions.cs +45 -45
  1721. package/Samples~/LightBeamSamples/AccountManager/AccountExampleConfig.cs +15 -15
  1722. package/Samples~/LightBeamSamples/AccountManager/AccountManager.cs +57 -57
  1723. package/Samples~/LightBeamSamples/AccountManager/Prefabs/AccountDetailsBehaviour/AccountDetailsBehaviour.cs +53 -53
  1724. package/Samples~/LightBeamSamples/AccountManager/Prefabs/AccountDisplayBehaviour/AccountDisplayBehaviour.cs +51 -51
  1725. package/Samples~/LightBeamSamples/AccountManager/Prefabs/AccountSwitchPage/AccountSwitchPage.cs +42 -42
  1726. package/Samples~/LightBeamSamples/AccountManager/Prefabs/AvatarDisplay/AvatarDisplayBehaviour.cs +21 -21
  1727. package/Samples~/LightBeamSamples/AccountManager/Prefabs/ForgotPasswordPage/ForgotPasswordPage.cs +64 -64
  1728. package/Samples~/LightBeamSamples/AccountManager/Prefabs/HomePage/HomePage.cs +70 -70
  1729. package/Samples~/LightBeamSamples/AccountManager/Prefabs/RecoverEmailPage/RecoverEmailPage.cs +131 -131
  1730. package/Samples~/LightBeamSamples/AccountManager/Prefabs/RegisterEmailPage/RegisterEmailPage.cs +79 -79
  1731. package/Samples~/LightBeamSamples/CurrencyHud/CurrencyHudManager.cs +40 -40
  1732. package/Samples~/LightBeamSamples/CurrencyHud/Prefabs/CurrencyView/CurrencyViewBehaviour.cs +50 -50
  1733. package/Samples~/LightBeamSamples/FriendsManager/FriendsExampleConfig.cs +13 -13
  1734. package/Samples~/LightBeamSamples/FriendsManager/FriendsManager.cs +32 -32
  1735. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/BlockedDisplay/BlockedPlayersDisplayBehaviour.cs +25 -25
  1736. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/FriendDisplay/FriendDisplayBehaviour.cs +31 -31
  1737. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/HomePage/HomePage.cs +31 -31
  1738. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/PlayerFriendsDisplay/PlayerFriendsBehaviour.cs +194 -194
  1739. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/ReceivedInvitesDisplay/ReceivedInviteDisplayBehaviour.cs +31 -31
  1740. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/Selector/Editor/SelectorButtonBehaviourEditor.cs +27 -27
  1741. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/Selector/SelectorButtonBehaviour.cs +13 -13
  1742. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/SentInvitesDisplay/SentInviteDisplayBehaviour.cs +25 -25
  1743. package/Samples~/LightBeamSamples/Inventory/InventoryExampleConfig.cs +12 -12
  1744. package/Samples~/LightBeamSamples/Inventory/InventoryManager.cs +32 -32
  1745. package/Samples~/LightBeamSamples/Inventory/Prefabs/CurrencyDisplay/CurrencyDisplayBehaviour.cs +48 -48
  1746. package/Samples~/LightBeamSamples/Inventory/Prefabs/CurrencyInfoPage/CurrencyInfoBehaviour.cs +70 -70
  1747. package/Samples~/LightBeamSamples/Inventory/Prefabs/HomePage/HomePage.cs +82 -82
  1748. package/Samples~/LightBeamSamples/Inventory/Prefabs/ItemDisplay/ItemDisplayBehaviour.cs +51 -51
  1749. package/Samples~/LightBeamSamples/Inventory/Prefabs/ItemInfoPage/ItemInfoPage.cs +74 -74
  1750. package/Samples~/LightBeamSamples/Inventory/Prefabs/PropertyDisplay/PropertyDisplayBehaviour.cs +21 -21
  1751. package/Samples~/LightBeamSamples/LobbyManager/LobbyExampleConfig.cs +14 -14
  1752. package/Samples~/LightBeamSamples/LobbyManager/LobbyManager.cs +36 -36
  1753. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/CreateLobbyDisplay/CreateLobbyDisplayBehaviour.cs +54 -54
  1754. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/FindLobbyDisplay/FindLobbyDisplayBehaviour.cs +36 -36
  1755. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/HomePage/HomePage.cs +71 -71
  1756. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/JoinLobbyDisplay/JoinLobbyDisplayBehaviour.cs +75 -75
  1757. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/LobbyDetailsDisplay/LobbyDetailsDisplayBehaviour.cs +80 -80
  1758. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/LobbyDisplay/LobbyDisplayBehaviour.cs +27 -27
  1759. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/PlayerDisplay/PlayerIdDisplayBehaviour.cs +17 -17
  1760. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/PlayerLobby/PlayerLobbyBehaviour.cs +112 -112
  1761. package/Samples~/LightBeamSamples/LootBox/BeamableServices~/LootBoxService/LootBoxService.cs +45 -45
  1762. package/Samples~/LightBeamSamples/LootBox/BeamableServices~/LootBoxService/Program.cs +20 -20
  1763. package/Samples~/LightBeamSamples/LootBox/LootBoxExampleConfig.cs +8 -8
  1764. package/Samples~/LightBeamSamples/LootBox/LootBoxManager.cs +30 -30
  1765. package/Samples~/LightBeamSamples/LootBox/Prefabs/LootBoxPage/LootBoxPage.cs +47 -47
  1766. package/Samples~/LightBeamSamples/SceneLoader/Config/LightBeamSceneConfigObject_Editor.cs +37 -37
  1767. package/Samples~/LightBeamSamples/SceneLoader/LightBeamBooter.cs +485 -485
  1768. package/Samples~/LightBeamSamples/SceneLoader/Prefabs/SceneDisplay/SceneDisplayBehaviour.cs +25 -25
  1769. package/Samples~/SampleProjectBase/Scripts/Editor/Beamable/Samples/SampleProjectBase/AutoOpenReadme.cs +46 -46
  1770. package/Samples~/SampleProjectBase/Scripts/Editor/Beamable/Samples/SampleProjectBase/BeamableReadmeEditor.cs +158 -158
  1771. package/Samples~/SampleProjectBase/Scripts/Runtime/Beamable/Samples/SampleProjectBase/Readme.cs +33 -33
  1772. package/Template/SharedSample.cs +19 -19
  1773. package/Tests/Editor/AliasHelperTests.cs +64 -64
  1774. package/Tests/Editor/CLI/DataTransferTests.cs +65 -65
  1775. package/Tests/Editor/Common/BeamUtil/SanitizeStringForPathTests.cs +18 -18
  1776. package/Tests/Editor/Common/TrieTests.cs +253 -253
  1777. package/Tests/Editor/Common/TryInvokeCallbackTests.cs +93 -93
  1778. package/Tests/Editor/ContentObjectTests.cs +65 -65
  1779. package/Tests/Editor/EditorDisruptorEngine/Content/ContentObjectFieldTests.cs +81 -81
  1780. package/Tests/Editor/EditorDisruptorEngine/Content/ContentObjectLinkRefTests.cs +81 -81
  1781. package/Tests/Editor/EditorDisruptorEngine/Content/ExampleContent.cs +10 -10
  1782. package/Tests/Editor/EditorDisruptorEngine/Content/Schedules/CronTests.cs +189 -189
  1783. package/Tests/Editor/EditorTest.cs +51 -51
  1784. package/Tests/Editor/JsonPerfTesting.cs +117 -117
  1785. package/Tests/Editor/JsonPerfTesting_PayloadSize.cs +96 -96
  1786. package/Tests/Editor/JsonTestHelp.cs +82 -82
  1787. package/Tests/Editor/MockLogProvider.cs +47 -47
  1788. package/Tests/Editor/PreserveAttributeTests.cs +26 -26
  1789. package/Tests/Editor/PromiseTests/ErrorTests.cs +582 -582
  1790. package/Tests/Editor/SmallerJSON/InfinityTests.cs +61 -61
  1791. package/Tests/Editor/SmallerJSON/JsonPathTests.cs +107 -107
  1792. package/Tests/Editor/SmallerJSON/JsonSerializeTest.cs +135 -135
  1793. package/Tests/Runtime/Beamable/BeamContextInitTests.cs +103 -103
  1794. package/Tests/Runtime/Beamable/BeamContextTest.cs +72 -72
  1795. package/Tests/Runtime/Beamable/BeamableTest.cs +46 -46
  1796. package/Tests/Runtime/Beamable/Content/ClientManifest/ParseCSVTests.cs +102 -102
  1797. package/Tests/Runtime/Beamable/Content/ContentRegistry/GetTypeFromIdTests.cs +164 -164
  1798. package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/DeserializeEmptyFields.cs +114 -114
  1799. package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/DeserializeTests.cs +1343 -1343
  1800. package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/EscapedStringTests.cs +119 -119
  1801. package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/GetNullStringForTypeTests.cs +104 -104
  1802. package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/SerializeFieldSubclassSerializeTests.cs +157 -157
  1803. package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/SerializeTests.cs +1066 -1066
  1804. package/Tests/Runtime/Beamable/Content/Serialization/TestContentRef.cs +66 -66
  1805. package/Tests/Runtime/Beamable/Content/Serialization/VipContentSerialization/VipContentSerializationTests.cs +34 -34
  1806. package/Tests/Runtime/Beamable/DebouncerTests.cs +110 -110
  1807. package/Tests/Runtime/Beamable/Dependencies/ScopingTests.cs +235 -235
  1808. package/Tests/Runtime/Beamable/Environment/PackageVersionTests/FromSemanticVersionStringTests.cs +161 -161
  1809. package/Tests/Runtime/Beamable/Environment/PackageVersionTests/ImplicitConversionTest.cs +24 -24
  1810. package/Tests/Runtime/Beamable/Environment/PackageVersionTests/RangeOperatorTests.cs +209 -209
  1811. package/Tests/Runtime/Beamable/Environment/PackageVersionTests/ToStringTests.cs +64 -64
  1812. package/Tests/Runtime/Beamable/MockAuthService.cs +218 -218
  1813. package/Tests/Runtime/Beamable/MockBeamContext.cs +171 -171
  1814. package/Tests/Runtime/Beamable/MockBeamableApi.cs +122 -122
  1815. package/Tests/Runtime/Beamable/MockConfigurationHelper.cs +19 -19
  1816. package/Tests/Runtime/Beamable/MockFileAccessor.cs +19 -19
  1817. package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/AcceptAccountSwitchTests.cs +95 -95
  1818. package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/CheckSignedInUserTests.cs +134 -134
  1819. package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/LoginTests.cs +108 -108
  1820. package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/TestHelperExtensions.cs +38 -38
  1821. package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/UpdateLoginEmailTests.cs +81 -81
  1822. package/Tests/Runtime/Beamable/Modules/Leaderboards/IncrementTests.cs +88 -88
  1823. package/Tests/Runtime/Beamable/Modules/Leaderboards/LeaderboardViewSerializeTests.cs +109 -109
  1824. package/Tests/Runtime/Beamable/Modules/Shop/ListingContentTests/ValidateListingTests.cs +66 -66
  1825. package/Tests/Runtime/Beamable/Modules/Stats/StatObjectTests/WriteTests.cs +42 -42
  1826. package/Tests/Runtime/Beamable/Modules/Tournaments/TournamentScoreUtilTests/GetShortScoreTests.cs +329 -329
  1827. package/Tests/Runtime/Beamable/Platform/AccessTokenStorageTests.cs +154 -154
  1828. package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/AuthServiceTestBase.cs +39 -39
  1829. package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/CustomDeviceIdTests.cs +51 -51
  1830. package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/GetUserTests.cs +33 -33
  1831. package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/IsEmailAvailableTests.cs +58 -58
  1832. package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/LoginTests.cs +37 -37
  1833. package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/RemoveDeviceIdTests.cs +69 -69
  1834. package/Tests/Runtime/Beamable/Platform/Connectivity/MockConnectivityService.cs +45 -45
  1835. package/Tests/Runtime/Beamable/Platform/Content/MockContentService.cs +140 -140
  1836. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryResponseTests/MergeViewTests.cs +245 -245
  1837. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryServiceTests/GetItemTests.cs +225 -225
  1838. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryServiceTests/InventoryServiceTestBase.cs +52 -52
  1839. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryServiceTests/UpdateTests.cs +73 -73
  1840. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryTestItem.cs +26 -26
  1841. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryUpdateBuilderTests/AddItemTests.cs +24 -24
  1842. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryUpdateBuilderTests/SerializationTests.cs +227 -227
  1843. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryUpdateBuilderTests/UnitySerializationTests.cs +215 -215
  1844. package/Tests/Runtime/Beamable/Platform/Mail/MailTests.cs +67 -67
  1845. package/Tests/Runtime/Beamable/Platform/MockConnectivityChecker.cs +24 -24
  1846. package/Tests/Runtime/Beamable/Platform/MockPlatformAPI.cs +398 -398
  1847. package/Tests/Runtime/Beamable/Platform/MockPlatformRequester.cs +78 -78
  1848. package/Tests/Runtime/Beamable/Platform/MockPlatformService.cs +47 -47
  1849. package/Tests/Runtime/Beamable/Platform/MockRequesterExtensions.cs +13 -13
  1850. package/Tests/Runtime/Beamable/Platform/TestUtil.cs +59 -59
  1851. package/Tests/Runtime/Beamable/Player/Accounts/ExternalIdentityQueryArgsTests.cs +132 -132
  1852. package/Tests/Runtime/Beamable/Player/Announcements/AnnouncementGiftSerialization.cs +117 -117
  1853. package/Tests/Runtime/Beamable/Player/Announcements/MockAnnouncementsApi.cs +45 -45
  1854. package/Tests/Runtime/Beamable/Player/Announcements/MockNotificationService.cs +70 -70
  1855. package/Tests/Runtime/Beamable/Player/Inventory/GetItemTests.cs +485 -485
  1856. package/Tests/Runtime/Beamable/Player/Inventory/MockInventoryApi.cs +77 -77
  1857. package/Tests/Runtime/Beamable/Player/Leaderboards/ResortTests.cs +236 -236
  1858. package/Tests/Runtime/Beamable/Pooling/StringBuilderPoolTests/SpawnTests.cs +55 -55
  1859. package/Tests/Runtime/Beamable/Promises/PromisePlayModeTests.cs +145 -145
  1860. package/Tests/Runtime/Beamable/Promises/SequenceTests.cs +45 -45
  1861. package/Tests/Runtime/Beamable/QueryBuilder/QueryBuilderTests.cs +94 -94
  1862. package/Tests/Runtime/Server/Runtime/MicroserviceClient/RequestTests.cs +374 -374
  1863. package/Tests/Runtime/Server/Runtime/MicroserviceClient/TestClient.cs +78 -78
  1864. package/Tests/Runtime/Server/Runtime/TestRegistrations.cs +22 -22
  1865. package/package.json +1 -1
@@ -1,1037 +1,1037 @@
1
- using Beamable.Api;
2
- using Beamable.Api.AdvertisingIdentifier;
3
- using Beamable.Api.Analytics;
4
- using Beamable.Api.Auth;
5
- using Beamable.Api.Autogenerated.Models;
6
- using Beamable.Api.Autogenerated.Realms;
7
- using Beamable.Api.Caches;
8
- using Beamable.Api.Connectivity;
9
- using Beamable.Api.Notification;
10
- using Beamable.Api.Payments;
11
- using Beamable.Api.Sessions;
12
- using Beamable.Common;
13
- using Beamable.Common.Api;
14
- using Beamable.Common.Api.Auth;
15
- using Beamable.Common.Api.Content;
16
- using Beamable.Common.Api.Notifications;
17
- using Beamable.Common.Api.Presence;
18
- using Beamable.Common.Content;
19
- using Beamable.Common.Dependencies;
20
- using Beamable.Common.Spew;
21
- using Beamable.Common.Util;
22
- using Beamable.Connection;
23
- using Beamable.Content.Utility;
24
- using Beamable.Coroutines;
25
- using Beamable.Player;
26
- using Beamable.Player.CloudSaving;
27
- using System;
28
- using System.Collections;
29
- using System.Collections.Generic;
30
- using System.Linq;
31
- using Beamable.Server;
32
- using UnityEngine;
33
- using Debug = UnityEngine.Debug;
34
- using EmptyResponse = Beamable.Common.Api.EmptyResponse;
35
- using ExternalIdentity = Beamable.Common.Api.Auth.ExternalIdentity;
36
- using Random = UnityEngine.Random;
37
- using TokenResponse = Beamable.Common.Api.Auth.TokenResponse;
38
-
39
- namespace Beamable
40
- {
41
-
42
- /// <summary>
43
- /// The observed player has a limited subset of functionality from the larger <see cref="BeamContext"/>.
44
- /// </summary>
45
- public interface IObservedPlayer : IUserContext
46
- {
47
- PlayerStats Stats { get; }
48
- PlayerLobby Lobby { get; }
49
- PlayerParty Party { get; }
50
- }
51
-
52
- /// <summary>
53
- /// <para>
54
- /// The <see cref="BeamContext"/> represents a player's session and is equipped with all required services.
55
- /// <see cref="BeamContext"/> instances are not tied to scene memory. Instead, <see cref="BeamContext"/> instances live in a static way.
56
- /// However, if a <see cref="BeamableBehaviour"/> is connected to a <see cref="BeamContext"/>, then the <see cref="BeamableBehaviour"/>'s lifecycle
57
- /// will control the `<see cref="BeamContext"/>'s lifecycle.
58
- /// Additionally, the <see cref="PlayerCode"/> variable is the unique id of the <see cref="BeamContext"/>.
59
- /// </para>
60
- ///
61
- /// <para>
62
- /// From Monobehaviours or Unity components, you should use the <see cref="InParent"/> method to access a <see cref="BeamContext"/>.
63
- /// The <see cref="InParent"/> will give you the closest context in the Unity object heirarchy from your script's location, or give you
64
- /// <see cref="Default"/> if no context exists. You can add <see cref="BeamableBehaviour"/> components to add a context to a GameObject.
65
- ///
66
- /// If you want to access an instance without using a context sensitive approach, you should use the <see cref="Instantiate"/> method.
67
- /// Finally, you can always use <see cref="Default"/>.
68
- /// </para>
69
- ///
70
- /// <para>
71
- /// Remember, there will only ever be one instance of <see cref="BeamContext"/> per <see cref="PlayerCode"/> value.
72
- /// The <see cref="Default"/> context has a <see cref="PlayerCode"/> value of an empty string.
73
- /// </para>
74
- /// </summary>
75
- [Serializable]
76
- public class BeamContext : IPlatformService, IGameObjectContext, IObservedPlayer, IBeamableDisposableOrder, IDependencyNameProvider, IDependencyScopeNameProvider
77
- {
78
- #region Internal State
79
- /// <summary>
80
- /// The <see cref="PlayerCode"/> is the name of a player's slot on the device. The <see cref="Default"/> context uses an empty string,
81
- /// but you could use values like "player1" and "player2" to enable a feature like couch-coop.
82
- /// </summary>
83
- public string PlayerCode { get; private set; }
84
-
85
- /// <summary>
86
- /// The User that this context is authenticated with. Any web-calls that are made from this <see cref="BeamContext"/> are made by this User
87
- /// </summary>
88
- public ObservableUser AuthorizedUser = new ObservableUser
89
- {
90
- Value = new User
91
- {
92
- thirdPartyAppAssociations = new List<string>(),
93
- external = new List<ExternalIdentity>(),
94
- deviceIds = new List<string>(),
95
- scopes = new List<string>()
96
- }
97
- };
98
-
99
- /// <summary>
100
- /// The <see cref="IDependencyProvider"/> is a collection of all services required to provide a Beamable SDK full funcitonality
101
- /// </summary>
102
- public IDependencyProvider ServiceProvider => _serviceScope;
103
-
104
- /// <summary>
105
- /// If the <see cref="Stop"/> method has been run, this property will return true. Once a context is disposed, you shouldn't use
106
- /// it anymore, and the <see cref="ServiceProvider"/> will throw exceptions if you do.
107
- /// You can re-initialize the context by using <see cref="InParent"/>
108
- /// </summary>
109
- public bool IsStopped => _isStopped;
110
-
111
- /// <summary>
112
- /// Each <see cref="BeamContext"/> has a set of components that need to live on a gameObject in the scene.
113
- /// </summary>
114
- public GameObject GameObject => _gob ? _gob : _parent?.GameObject;
115
-
116
- public bool IsInitialized => _initPromise != null;
117
-
118
- public bool IsDefault => IsDefaultPlayerCode(PlayerCode);
119
-
120
- private IDependencyProviderScope _serviceScope;
121
- private bool _isStopped;
122
- private GameObject _gob;
123
- private Promise _initPromise;
124
- private BeamContext _parent;
125
- private HashSet<BeamContext> _children = new HashSet<BeamContext>();
126
-
127
-
128
- #endregion
129
-
130
- #region Service Accessors
131
-
132
- public long PlayerId
133
- {
134
- get
135
- {
136
- var userContext = ServiceProvider.GetService<IUserContext>();
137
- if (userContext == this) return AuthorizedUser?.Value?.id ?? 0;
138
- return userContext.UserId;
139
- }
140
- }
141
-
142
- public string Cid => _requester.Cid;
143
-
144
- public string Pid => _requester.Pid; // TODO: rename to rid
145
-
146
- public AccessToken AccessToken => _requester.Token;
147
-
148
- public IBeamableRequester Requester => ServiceProvider.GetService<IBeamableRequester>();
149
- public CoroutineService CoroutineService => ServiceProvider.GetService<CoroutineService>();
150
-
151
-
152
- [SerializeField]
153
- private PlayerAnnouncements _announcements;
154
- // [SerializeField]
155
- // private PlayerCurrencyGroup _currency;
156
- [SerializeField]
157
- private PlayerStats _playerStats;
158
-
159
- [SerializeField] private PlayerLobby _playerLobby;
160
-
161
- public PlayerAnnouncements Announcements =>
162
- _announcements?.IsInitialized ?? false
163
- ? _announcements
164
- : (_announcements = _serviceScope.GetService<PlayerAnnouncements>());
165
-
166
- public PlayerStats Stats =>
167
- _playerStats?.IsInitialized ?? false
168
- ? _playerStats
169
- : (_playerStats = _serviceScope.GetService<PlayerStats>());
170
-
171
- public MicroserviceClients Microservices => _serviceScope.GetService<MicroserviceClients>();
172
-
173
- /// <summary>
174
- /// Access the <see cref="PlayerLobby"/> for this context.
175
- /// </summary>
176
- public PlayerLobby Lobby => _playerLobby = _playerLobby ?? _serviceScope.GetService<PlayerLobby>();
177
-
178
- /// <summary>
179
- /// Access the <see cref="PlayerParty"/> for this context.
180
- /// </summary>
181
- public PlayerParty Party => _serviceScope.GetService<PlayerParty>();
182
-
183
- /// <summary>
184
- /// Access the <see cref="IPresenceApi"/> for this context.
185
- /// </summary>
186
- public IPresenceApi Presence => _serviceScope.GetService<IPresenceApi>();
187
-
188
- /// <summary>
189
- /// Access the <see cref="PlayerAccounts"/> for this context.
190
- /// </summary>
191
- public PlayerAccounts Accounts
192
- {
193
- get
194
- {
195
- var service = _serviceScope.GetService<PlayerAccounts>();
196
- _playerAccounts = service;
197
- return service;
198
- }
199
- }
200
-
201
- private bool HasAccountsService => _playerAccounts != null;
202
- private PlayerAccounts _playerAccounts;
203
-
204
- /// <summary>
205
- /// <para>
206
- /// Access the player's inventory
207
- /// </para>
208
- /// <para>
209
- /// <inheritdoc cref="PlayerInventory"/>
210
- /// </para>
211
- /// </summary>
212
- public PlayerInventory Inventory => ServiceProvider.GetService<PlayerInventory>();
213
-
214
- public ICloudSavingService CloudSaving => ServiceProvider.GetService<ICloudSavingService>();
215
-
216
- public PlayerLeaderboards Leaderboards => ServiceProvider.GetService<PlayerLeaderboards>();
217
-
218
- /// <summary>
219
- /// Access the <see cref="IContentApi"/> for this player.
220
- /// </summary>
221
- public IContentApi Content => _contentService = _contentService ?? _serviceScope.GetService<IContentApi>();
222
-
223
- /// <summary>
224
- /// Access the <see cref="IBeamableAPI"/> for this player.
225
- /// </summary>
226
- public ApiServices Api => ServiceProvider.GetService<ApiServices>();
227
-
228
- /// <summary>
229
- /// Access the player's friends and blocked enemies.
230
- /// </summary>
231
- public PlayerSocial Social => _serviceScope.GetService<PlayerSocial>();
232
-
233
- public string TimeOverride
234
- {
235
- get => _requester.TimeOverride;
236
- set
237
- {
238
- if (value == null)
239
- {
240
- _requester.TimeOverride = null;
241
- TimeOverrideChanged?.Invoke();
242
- return;
243
- }
244
-
245
- var date = DateTime.Parse(value, null, System.Globalization.DateTimeStyles.RoundtripKind);
246
- var str = date.ToString(DateUtility.ISO_FORMAT);
247
- _requester.TimeOverride = str;
248
- TimeOverrideChanged?.Invoke();
249
- }
250
- }
251
-
252
- private AccessTokenStorage _tokenStorage;
253
- private EnvironmentData _environment;
254
- private IPlatformRequester _requester;
255
- private IBeamableApiRequester _beamableApiRequester;
256
-
257
- // TODO: Assess each of these as "do we need this as hard field state"
258
- private IAuthService _authService;
259
- private IContentApi _contentService;
260
- private IConnectivityService _connectivityService;
261
- private NotificationService _notification;
262
- private ISessionService _sessionService;
263
- private IHeartbeatService _heartbeatService;
264
- private BeamableBehaviour _behaviour;
265
- private OfflineCache _offlineCache;
266
- private RealmsBasicRealmConfiguration _realmConfig;
267
-
268
-
269
- private static bool IsDefaultPlayerCode(string code) => DefaultPlayerCode == code;
270
- #if BEAMABLE_ENABLE_BEAM_CONTEXT_DEFAULT_OVERRIDE
271
- private static string DefaultPlayerCode { get; set; } = string.Empty;
272
- #else
273
- private static string DefaultPlayerCode => string.Empty;
274
- #endif
275
- #endregion
276
-
277
- #region events
278
-
279
- public event Action OnShutdown;
280
- public event Action OnShutdownComplete;
281
- public event Action OnReloadUser;
282
- public event Action TimeOverrideChanged; // TODO: What to do with the time override?
283
-
284
- public event Action<User> OnUserLoggingOut;
285
- public event Action<User> OnUserLoggedIn;
286
-
287
- #endregion
288
-
289
- protected BeamContext()
290
- {
291
- AuthorizedUser.OnDataUpdated += user => OnUserLoggedIn?.Invoke(user);
292
- }
293
-
294
- /// <summary>
295
- /// A <see cref="BeamContext"/> is configured for one authorized user.
296
- /// You can get <see cref="Common.Api.Auth.TokenResponse"/> values from the <see cref="IAuthService"/> by calling various log in methods.
297
- ///
298
- /// This method will <i>create</i> new <see cref="BeamContext"/> instance using <see cref="Common.Api.Auth.TokenResponse"/> values
299
- /// </summary>
300
- /// <param name="playerCode">id for the <see cref="BeamContext"/></param>
301
- /// <param name="token">Authorization token</param>
302
- /// <returns>New instance of the <see cref="BeamContext"/></returns>
303
- public static BeamContext CreateAuthorizedContext(string playerCode, TokenResponse token)
304
- {
305
- bool isDefault = IsDefaultPlayerCode(playerCode);
306
- if (isDefault || _playerCodeToContext.ContainsKey(playerCode))
307
- {
308
- #if UNITY_EDITOR
309
- const string log =
310
- @"<b>BeamContext</b> with id <b>{0}</b> already exists. " +
311
- "In order to update existing BeamContext it is recommended to use <b>" +
312
- nameof(ChangeAuthorizedPlayer) + "</b> method instead.";
313
- Debug.LogError(string.Format(log, isDefault ? "Default" : playerCode));
314
- #endif
315
- throw new BeamContextInitException(_playerCodeToContext[playerCode],
316
- new[] { new Exception($"BeamContext with \"{playerCode}\" prefix already exist.") });
317
- }
318
-
319
-
320
- string cid = Beam.RuntimeConfigProvider.Cid;
321
- string pid = Beam.RuntimeConfigProvider.Pid;
322
-
323
- var accessToken = new AccessToken(new AccessTokenStorage(playerCode), cid, pid, token.access_token,
324
- token.refresh_token, token.expires_in);
325
- accessToken.Save();
326
- return ForPlayer(playerCode);
327
- }
328
-
329
-
330
- /// <summary>
331
- /// A <see cref="BeamContext"/> is configured for one authorized user. If you wish to change the user, you need to give it a new token.
332
- /// You can get <see cref="TokenResponse"/> values from the <see cref="IAuthService"/> by calling various log in methods.
333
- ///
334
- /// This method will <i>mutate</i> the current <see cref="BeamContext"/> instance itself, and returned the mutated object.
335
- /// </summary>
336
- /// <param name="token"></param>
337
- /// <returns>The same instance, but now mutated for the new authorized user</returns>
338
- public async Promise<BeamContext> ChangeAuthorizedPlayer(TokenResponse token)
339
- {
340
- if (AuthorizedUser != null)
341
- {
342
- OnUserLoggingOut?.Invoke(AuthorizedUser);
343
- }
344
-
345
- await SaveToken(token); // set the token so that it gets picked up on the next initialization
346
- var ctx = Instantiate(_behaviour, PlayerCode);
347
-
348
- await InitProcedure(silent: true);
349
-
350
- // before we broadcast the event; we'll ask the accounts to update if they exist...
351
- if (HasAccountsService)
352
- {
353
- await Accounts.Refresh();
354
- }
355
- OnReloadUser?.Invoke();
356
-
357
- return ctx;
358
- }
359
-
360
-
361
- /// <summary>
362
- /// Using the authorization associated with the current context, observe the public data of another player
363
- /// </summary>
364
- /// <param name="otherPlayerId"></param>
365
- [Obsolete("This will be removed in a future release.")]
366
- public IObservedPlayer ObservePlayer(long otherPlayerId)
367
- {
368
- return Fork(builder =>
369
- {
370
- builder
371
- .RemoveIfExists<IUserContext>()
372
- .AddScoped<IUserContext>(new SimpleUserContext(otherPlayerId))
373
- ;
374
- });
375
- }
376
-
377
- private BeamContext Fork(Action<IDependencyBuilder> configure)
378
- {
379
- var ctx = new BeamContext();
380
- ctx._parent = this;
381
- ctx.AuthorizedUser = AuthorizedUser;
382
- _children.Add(ctx);
383
-
384
- var subScope = _serviceScope.Fork(configure);
385
- ctx._serviceScope = subScope;
386
- ctx.InitServices(Cid, Pid);
387
- return ctx;
388
- }
389
-
390
- [Obsolete("You do not need to include the cid or pid anymore")]
391
- protected void Init(string cid,
392
- string pid,
393
- string playerCode,
394
- BeamableBehaviour behaviour,
395
- IDependencyBuilder builder)
396
- {
397
- Init(playerCode, behaviour, builder);
398
- }
399
-
400
- protected void Init(string playerCode,
401
- BeamableBehaviour behaviour,
402
- IDependencyBuilder builder)
403
- {
404
- #if UNITY_EDITOR
405
- if (!UnityEditor.EditorApplication.isPlaying)
406
- {
407
- _initPromise = new Promise();
408
- var exception = new Exception("BeamContext is meant to use only in play mode, not edit mode.");
409
- _initPromise.CompleteError(exception);
410
- return;
411
- }
412
- if (!UnityEditor.EditorApplication.isPlayingOrWillChangePlaymode)
413
- {
414
- // if the context is inside the editor, and something is trying to
415
- // get the context in a tight loop as the editor exits playmode, then
416
- // the GameObject will get destroyed soon, and services will start throwing
417
- // exceptions that the GameObject doesn't exist. Better to curb the init process all
418
- // together, since the application is exiting playmode anyway.
419
- _initPromise = new Promise(); // do not complete the promise...
420
- return;
421
- }
422
- #endif
423
-
424
- PlayerCode = playerCode;
425
- _isStopped = false;
426
-
427
- var shouldCreateGob = behaviour == null; // if there is no behaviour, then we definately need one
428
- if (!shouldCreateGob) // but also, if the object needs to be preserved, then it also needs to be at root level
429
- {
430
- shouldCreateGob = behaviour.transform.parent != null && behaviour.DontDestroyContext.IsTruthy();
431
- }
432
-
433
- if (shouldCreateGob)
434
- {
435
- var gob = new GameObject($"Beamable {playerCode}");
436
- var nextBehaviour = gob.AddComponent<BeamableBehaviour>();
437
-
438
- if (string.IsNullOrEmpty(playerCode) || (behaviour?.DontDestroyContext?.Value ?? false))
439
- {
440
- // the default context shouldn't destroy on load, unless again, it has already been specified.
441
- nextBehaviour.DontDestroyContext = new OptionalBoolean { HasValue = true, Value = true };
442
- }
443
-
444
- behaviour = nextBehaviour;
445
- }
446
-
447
- _gob = behaviour.gameObject;
448
- builder = builder.Clone();
449
-
450
- RegisterServices(builder);
451
-
452
- var oldScope = _serviceScope;
453
-
454
- _serviceScope = Beam.GlobalScope.Fork(builder);
455
-
456
- oldScope?.Hydrate(_serviceScope);
457
-
458
- var config = Beam.RuntimeConfigProvider;
459
- InitServices(config.Cid, config.Pid);
460
- _behaviour.Initialize(this);
461
- _initPromise = new Promise();
462
-
463
- IEnumerator Try()
464
- {
465
- var success = false;
466
- var attempt = 0;
467
- var coreConfig = ServiceProvider.GetService<CoreConfiguration>();
468
- var attemptDurations = coreConfig.ContextRetryDelays;
469
- var errors = new Exception[attemptDurations.Length];
470
- while (!success)
471
- {
472
- var attemptIndex = attempt;
473
- yield return InitProcedure()
474
- .Error(err =>
475
- {
476
- errors[attemptIndex] = err;
477
- switch (err)
478
- {
479
- case ServiceScopeDisposedException ex:
480
- PlatformLogger.Log($"Beamable is exiting early, and caught a {ex.GetType().Name} exception. msg=[{ex.Message}] stack=[{ex.StackTrace}]");
481
- break;
482
- default:
483
- Debug.LogException(err);
484
- break;
485
- }
486
- })
487
- .Then(__ =>
488
- {
489
- success = true;
490
- _initPromise.CompleteSuccess();
491
- }).ToYielder();
492
-
493
- if (success) break;
494
-
495
- if (attempt >= attemptDurations.Length - 1 && !coreConfig.EnableInfiniteContextRetries)
496
- {
497
- // we've failed, and we've been configured to exit early.
498
- _initPromise.CompleteError(new BeamContextInitException(this, errors));
499
- yield break;
500
- }
501
-
502
- var duration =
503
- attemptDurations[attempt >= attemptDurations.Length ? attemptDurations.Length - 1 : attempt];
504
- Debug.LogWarning($"Beamable couldn't start. playerCode=[{playerCode}] Will try again in {duration} seconds...");
505
- yield return new WaitForSecondsRealtime((float)duration);
506
- attempt++;
507
- }
508
- }
509
- CoroutineService.StartNew("context_init", Try());
510
- }
511
-
512
- protected virtual void RegisterServices(IDependencyBuilder builder)
513
- {
514
- builder.AddSingleton<PlatformRequester>(provider => new PlatformRequester(provider));
515
- builder.AddSingleton<IBeamableApiRequester>(provider => new BeamableApiRequester(provider));
516
- builder.AddSingleton<IPlatformRequester>(provider => provider.GetService<PlatformRequester>());
517
- builder.AddSingleton<IBeamableAPI>(provider => Api);
518
- builder.AddSingleton<BeamContext>(this);
519
- builder.AddSingleton<IPlatformService>(this);
520
- builder.AddSingleton<IGameObjectContext>(this);
521
- builder.AddScoped<IDependencyScopeNameProvider>(this);
522
- builder.AddSingleton<IDependencyNameProvider>(this);
523
- builder.AddSingleton(new AccessTokenStorage(PlayerCode));
524
- }
525
-
526
- protected virtual void InitServices(string cid, string pid)
527
- {
528
- _tokenStorage = ServiceProvider.GetService<AccessTokenStorage>();
529
- _environment = ServiceProvider.GetService<EnvironmentData>();
530
- _authService = ServiceProvider.GetService<IAuthService>();
531
-
532
- _requester = ServiceProvider.GetService<IPlatformRequester>();
533
- _beamableApiRequester = ServiceProvider.GetService<IBeamableApiRequester>();
534
- _requester.AuthService = _authService;
535
- _requester.Cid = cid;
536
- _requester.Pid = pid;
537
-
538
- _notification = ServiceProvider.GetService<NotificationService>();
539
- _sessionService = ServiceProvider.GetService<ISessionService>();
540
- _behaviour = ServiceProvider.GetService<BeamableBehaviour>();
541
- _offlineCache = ServiceProvider.GetService<OfflineCache>();
542
- _connectivityService = ServiceProvider.GetService<IConnectivityService>();
543
-
544
- var _ = _serviceScope.GetService<SingletonDependencyList<ILoadWithContext>>();
545
- }
546
-
547
- private async Promise UpdateAndSaveToken()
548
- {
549
- var oldToken = _requester.Token;
550
- await _beamableApiRequester.RefreshToken();
551
- var token = _beamableApiRequester.Token;
552
- ClearToken(eraseFromDisk: false);
553
- _requester.Token = token;
554
- _beamableApiRequester.Token = token;
555
- var settings = _serviceScope.GetService<ITokenEventSettings>();
556
- if (settings.EnableTokenAnalytics)
557
- {
558
- var analytics = _serviceScope.GetService<IAnalyticsTracker>();
559
- analytics.TrackEvent(
560
- TokenEvent.ChangingToken(playerId: PlayerId,
561
- newAccessToken: token?.Token,
562
- newRefreshToken: token?.RefreshToken,
563
- oldAccessToken: oldToken?.Token,
564
- oldRefreshToken: oldToken?.RefreshToken), true);
565
- }
566
- _ = _beamableApiRequester.Token.Save();
567
- }
568
-
569
- private async Promise SaveToken(TokenResponse rsp)
570
- {
571
- var oldToken = _requester.Token;
572
- ClearToken(eraseFromDisk: false);
573
- var token = new AccessToken(_tokenStorage,
574
- Cid,
575
- Pid,
576
- rsp.access_token,
577
- rsp.refresh_token,
578
- rsp.expires_in);
579
-
580
- _requester.Token = token;
581
- _beamableApiRequester.Token = token;
582
- var settings = _serviceScope.GetService<ITokenEventSettings>();
583
- if (settings.EnableTokenAnalytics)
584
- {
585
- var analytics = _serviceScope.GetService<IAnalyticsTracker>();
586
- analytics.TrackEvent(
587
- TokenEvent.ChangingToken(playerId: PlayerId,
588
- newAccessToken: token?.Token,
589
- newRefreshToken: token?.RefreshToken,
590
- oldAccessToken: oldToken?.Token,
591
- oldRefreshToken: oldToken?.RefreshToken), true);
592
- }
593
-
594
- await _requester.Token.Save();
595
- }
596
-
597
- private void ClearToken(bool eraseFromDisk=true)
598
- {
599
- _requester.DeleteToken(eraseFromDisk);
600
- }
601
-
602
- private async Promise InitStep_StartPubnub()
603
- {
604
- try
605
- {
606
- // when using pubnub,
607
- // the heartbeat is required to keep a presence connection alive to beamable.
608
- _heartbeatService = _serviceScope.GetService<IHeartbeatService>();
609
-
610
- var pubnubSubscriptionManager = ServiceProvider.GetService<IPubnubSubscriptionManager>();
611
- pubnubSubscriptionManager.UnsubscribeAll();
612
- await pubnubSubscriptionManager.SubscribeToProvider();
613
- }
614
- catch (NoConnectivityException)
615
- {
616
- // let it go..
617
- }
618
- }
619
-
620
- private async Promise InitStep_StartWebsocket(string socketUri)
621
- {
622
- // Need to get this in order to subscribe the message callbacks.
623
- var _ = _serviceScope.GetService<BeamableSubscriptionManager>();
624
- var connection = _serviceScope.GetService<IBeamableConnection>();
625
-
626
- // the connection doubles as
627
- // - the legacy heartbeat concept.
628
- _heartbeatService = connection;
629
-
630
- await connection.Connect(socketUri);
631
- }
632
-
633
-
634
- private async Promise InitProcedure(bool silent = false)
635
- {
636
- #region resolve routing key
637
- if (_serviceScope.CanBuildService<IServiceRoutingResolution>())
638
- {
639
- var resolution = _serviceScope.GetService<IServiceRoutingResolution>();
640
- await resolution.Init();
641
- }
642
- #endregion
643
-
644
- #region load token from storage
645
- _requester.Token = _tokenStorage.LoadTokenForRealmImmediate(Cid, Pid);
646
- _beamableApiRequester.Token = _requester.Token;
647
- #endregion
648
-
649
-
650
- #region make decisions about the current account
651
- var hasNoToken = AccessToken == null;
652
- var hasOfflineToken = AccessToken?.Token == Constants.Commons.OFFLINE;
653
- var needsToken = hasNoToken || hasOfflineToken;
654
- #endregion
655
-
656
- #region wait for connectivity...
657
- var checker = _serviceScope.GetService<IConnectivityChecker>();
658
- checker.ConnectivityCheckingEnabled = true;
659
- var hasInternet = _connectivityService.HasConnectivity;
660
- if (hasInternet)
661
- {
662
- var baseUserJob = GetBaseUser();
663
- var configJob = SetupGetConfigRealms();
664
- await Promise.Sequence(baseUserJob, configJob).RecoverFromNoConnectivity(_ =>
665
- {
666
- hasInternet = false;
667
- return new List<Unit>();
668
- });
669
- }
670
- #endregion
671
-
672
-
673
- if (!hasInternet)
674
- {
675
- await SetupWithoutConnection();
676
- // when internet reconnects, re-run the init.
677
- _connectivityService.OnReconnectOnce(() => InitProcedure(), -100);
678
- }
679
- else
680
- {
681
- try
682
- {
683
- await SetupWithConnection();
684
- }
685
- catch (NoConnectivityException)
686
- {
687
- // we tried so hard to avoid this.
688
- Debug.LogWarning("Lost internet during Beamable initiation. unpredictable behaviour may occur.");
689
- }
690
- }
691
-
692
-
693
- async Promise SetupBeamableNotificationChannel(RealmsBasicRealmConfiguration config)
694
- {
695
- if (config.IsUsingBeamableNotifications())
696
- {
697
- await InitStep_StartWebsocket(config.websocketConfig.uri);
698
- }
699
- else
700
- {
701
- await InitStep_StartPubnub();
702
- }
703
- }
704
-
705
- async Promise SetupGetUser()
706
- {
707
- var user = await _authService.GetUser();
708
- AuthorizedUser.Value = user;
709
- }
710
-
711
- async Promise SetupNewSession(RealmsBasicRealmConfiguration config)
712
- {
713
- string id = await AdvertisingIdentifier.GetIdentifier();
714
- var promise = _sessionService.StartSession(AuthorizedUser.Value, id);
715
- await promise.RecoverFromNoConnectivity(_ => new EmptyResponse());
716
-
717
- bool sendHeartbeat = config.IsUsingPubnubNotifications();
718
- if (CoreConfiguration.Instance.SendLegacyHeartbeat.TryGet(out var overrideSendHeartbeat))
719
- {
720
- sendHeartbeat = overrideSendHeartbeat;
721
- }
722
- if (sendHeartbeat)
723
- {
724
- _heartbeatService.Start();
725
- }
726
- }
727
-
728
- async Promise SetupPurchaser()
729
- {
730
- if (ServiceProvider.CanBuildService<IBeamablePurchaser>())
731
- {
732
- var purchaser = ServiceProvider.GetService<IBeamablePurchaser>();
733
- Promise<Unit> promise = purchaser.Initialize(ServiceProvider);
734
- await promise.Recover(err =>
735
- {
736
- Debug.LogError(err);
737
- return PromiseBase.Unit;
738
- });
739
- ServiceProvider.GetService<Promise<IBeamablePurchaser>>().CompleteSuccess(purchaser);
740
- }
741
- else
742
- {
743
- ServiceProvider.GetService<Promise<IBeamablePurchaser>>().CompleteSuccess(new DummyPurchaser());
744
- }
745
- }
746
-
747
-
748
- async Promise SetupGetConfigRealms()
749
- {
750
- var realmConfiguration = await ServiceProvider.GetService<IRealmsApi>().GetClientDefaults(false);
751
- _realmConfig = realmConfiguration;
752
- }
753
-
754
- void SetupEmitEvents()
755
- {
756
- if (silent) return;
757
- // allow the content refs to update
758
- ContentApi.Instance.CompleteSuccess(Content);
759
- OnReloadUser?.Invoke();
760
- }
761
-
762
- async Promise SetupWithoutConnection()
763
- {
764
- if (needsToken)
765
- {
766
- var offlineToken = new TokenResponse
767
- {
768
- token_type = Constants.Commons.OFFLINE,
769
- access_token = Constants.Commons.OFFLINE,
770
- refresh_token = Constants.Commons.OFFLINE,
771
- expires_in = long.MaxValue - 1
772
- };
773
- await SaveToken(offlineToken);
774
-
775
- if (_offlineCache.UseOfflineCache)
776
- {
777
- var dbid = Random.Range(int.MinValue, 0);
778
- _offlineCache.Set<User>(AuthApi.ACCOUNT_URL + "/me",
779
- new User
780
- {
781
- id = dbid,
782
- scopes = new List<string>(),
783
- thirdPartyAppAssociations = new List<string>(),
784
- deviceIds = new List<string>()
785
- }, Requester.AccessToken, true);
786
- _offlineCache.Merge("stats", Requester.AccessToken, new Dictionary<long, Dictionary<string, string>>
787
- {
788
- [dbid] = new Dictionary<string, string>()
789
- });
790
- }
791
- }
792
-
793
- await SetupGetUser();
794
- SetupEmitEvents();
795
- }
796
-
797
- async Promise GetBaseUser()
798
- {
799
- if (needsToken)
800
- {
801
- var rsp = await _authService.CreateUser();
802
- await SaveToken(rsp);
803
- }
804
-
805
- // Let's make sure that we get a fresh new JWT before attempting to connect.
806
- await UpdateAndSaveToken();
807
- }
808
-
809
- async Promise SetupWithConnection()
810
- {
811
- Promise userInfo = SetupGetUser();
812
- var connection = SetupBeamableNotificationChannel(_realmConfig);
813
- var purchase = SetupPurchaser();
814
-
815
- await userInfo;
816
-
817
- var session = SetupNewSession(_realmConfig);
818
- await Promise.Sequence( connection, session, purchase);
819
- SetupEmitEvents();
820
- }
821
- }
822
-
823
-
824
-
825
- /// <summary>
826
- /// Create or retrieve a <see cref="BeamContext"/> for the given <see cref="PlayerCode"/>. There is only one instance of a context per <see cref="PlayerCode"/>.
827
- /// A <see cref="BeamableBehaviour"/> is required because the context needs to attach specific Unity components to a GameObject, and the given <see cref="BeamableBehaviour"/>'s GameObject will be used.
828
- /// If no <see cref="BeamableBehaviour"/> is given, then a new GameObject will be instantiated at the root transform level named, "Beamable (playerCode)"
829
- /// </summary>
830
- /// <param name="beamable">A component that will invite other Beamable components to exist on its GameObject</param>
831
- /// <param name="playerCode">A named code that represents a player slot on the device. The <see cref="Default"/> context uses an empty string. </param>
832
- /// <returns></returns>
833
- public static BeamContext Instantiate(
834
- BeamableBehaviour beamable = null,
835
- string playerCode = null,
836
- IDependencyBuilder dependencyBuilder = null
837
- )
838
- {
839
-
840
- dependencyBuilder = dependencyBuilder ?? Beam.DependencyBuilder;
841
-
842
- playerCode ??= DefaultPlayerCode;
843
-
844
- // there should only be one context per playerCode.
845
- if (_playerCodeToContext.TryGetValue(playerCode, out var existingContext))
846
- {
847
- if (existingContext.IsStopped)
848
- {
849
- existingContext.Init(playerCode, beamable, dependencyBuilder);
850
- }
851
-
852
- return existingContext;
853
- }
854
-
855
- #if BEAMABLE_ENABLE_BEAM_CONTEXT_DEFAULT_OVERRIDE
856
- if (_playerCodeToContext.Count == 0)
857
- {
858
- DefaultPlayerCode = playerCode;
859
- }
860
- #endif
861
-
862
- var ctx = new BeamContext();
863
- ctx.Init(playerCode, beamable, dependencyBuilder);
864
- _playerCodeToContext[playerCode] = ctx;
865
- return ctx;
866
- }
867
-
868
- private static Dictionary<string, BeamContext> _playerCodeToContext = new Dictionary<string, BeamContext>();
869
-
870
- /// <summary>
871
- /// A static <see cref="BeamContext"/> that uses a <see cref="PlayerCode"/> of an empty string.
872
- /// By default, the default context will persist between scene reloads. If you need to dispose it, you'll
873
- /// need to manually invoke <see cref="Stop"/>
874
- /// </summary>
875
- public static BeamContext Default => Instantiate();
876
-
877
-
878
- /// <summary>
879
- /// Find the first <see cref="BeamableBehaviour.Context"/> in the parent lineage of the current component, or <see cref="BeamContext.Default"/> if no <see cref="BeamableBehaviour"/> components exist
880
- /// </summary>
881
- public static BeamContext InParent(Component c) => c.GetBeamable();
882
-
883
- /// <summary>
884
- /// Finds or creates the first <see cref="BeamContext"/> that matches the given <see cref="BeamContext.PlayerCode"/> value
885
- /// </summary>
886
- public static BeamContext ForPlayer(string playerCode = "") => Instantiate(playerCode: playerCode);
887
-
888
- /// <summary>
889
- /// Finds all <see cref="BeamContext"/>s that have been created. This may include disposed contexts.
890
- /// </summary>
891
- public static IEnumerable<BeamContext> All => _playerCodeToContext.Values;
892
-
893
- #if UNITY_2019_3_OR_NEWER
894
- [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.SubsystemRegistration)]
895
- private static async void HandleDomainReset()
896
- {
897
- // tear down all instances, and let them reboot normally.
898
- await Beam.StopAllContexts();
899
- }
900
- #endif
901
-
902
- /// <summary>
903
- /// After a context has been Stopped with the <see cref="Stop"/> method, this method can restart the instance.
904
- /// <para>
905
- /// If the context hasn't been stopped, this method won't do anything meaningful.
906
- /// </para>
907
- /// </summary>
908
- /// <returns>The same context instance</returns>
909
- public BeamContext Start() => Instantiate(playerCode: PlayerCode);
910
-
911
- /// <summary>
912
- /// This method will tear down a <see cref="BeamContext"/> and notify all internal services that the context should be destroyed.
913
- /// All coroutines associated with the context will stop.
914
- /// No notifications will be received internal to the context.
915
- /// No services will be accessible from the <see cref="ServiceProvider"/> after <see cref="Stop"/> has been called.
916
- /// <para>
917
- /// After a context has been disposed, if a call is made to <see cref="Start"/> or <see cref="Instantiate"/> with the disposed context's <see cref="PlayerCode"/>,
918
- /// then the disposed instance will be reinitialized and rehydrated and returned to the <see cref="Instantiate"/>'s callsite.
919
- /// </para>
920
- /// </summary>
921
- public async Promise Stop()
922
- {
923
-
924
-
925
- if (_isStopped) return;
926
-
927
- // when there are no running contexts, there can be no
928
- // assigned content singleton proxy. When a new context
929
- // gets started, this will be re-assigned to the new context's
930
- // content api.
931
- if (ContentApi.Instance.GetResult() == Content)
932
- {
933
- ContentApi.Instance = new Promise<IContentApi>();
934
- }
935
-
936
- _isStopped = true;
937
-
938
- // clear all events...
939
- OnShutdown?.Invoke();
940
-
941
- OnReloadUser = null;
942
- OnShutdown = null;
943
- TimeOverrideChanged = null;
944
- OnUserLoggedIn = null;
945
- OnUserLoggingOut = null;
946
-
947
- await _serviceScope.Dispose();
948
-
949
- _contentService = null;
950
- _announcements = null;
951
- _playerStats = null;
952
-
953
- OnShutdownComplete?.Invoke();
954
- OnShutdownComplete = null;
955
- }
956
-
957
-
958
- /// <summary>
959
- /// Clear the authorization token for the <see cref="PlayerCode"/>, then internally calls <see cref="Stop"/>
960
- /// </summary>
961
- public async Promise ClearPlayerAndStop()
962
- {
963
- ClearToken(eraseFromDisk: true);
964
- await Stop();
965
- }
966
-
967
- public void ChangeTime()
968
- {
969
- TimeOverrideChanged?.Invoke();
970
- }
971
-
972
- long IUserContext.UserId => PlayerId;
973
-
974
- User IPlatformService.User => AuthorizedUser.Value;
975
- public Promise<Unit> OnReady => _initPromise;
976
-
977
- /// <summary>
978
- /// A <see cref="Promise{T}"/> that is completed when the <see cref="BeamContext"/> is ready to be used.
979
- /// This promise happens immediately after the <see cref="OnReady"/> promise, but returns the current instance
980
- /// of the context.
981
- ///
982
- /// Suggested usage.
983
- /// <code>
984
- /// var ctx = await BeamContext.Default.Instance;
985
- /// </code>
986
- /// </summary>
987
- public Promise<BeamContext> Instance => OnReady?.Map(_ => this);
988
-
989
- INotificationService IPlatformService.Notification => _notification;
990
-
991
- IPubnubNotificationService IPlatformService.PubnubNotificationService =>
992
- ServiceProvider.GetService<IPubnubNotificationService>();
993
- IConnectivityService IPlatformService.ConnectivityService => _connectivityService;
994
- IHeartbeatService IPlatformService.Heartbeat => _heartbeatService;
995
-
996
-
997
- public Promise OnDispose()
998
- {
999
- if (GameObject)
1000
- {
1001
- UnityEngine.Object.Destroy(GameObject);
1002
- _behaviour = null;
1003
- _gob = null;
1004
- }
1005
-
1006
-
1007
- return Promise.Success;
1008
- }
1009
-
1010
- string IDependencyNameProvider.DependencyProviderName => BeamUtil.SanitizeStringForPath(PlayerCode);
1011
- string IDependencyScopeNameProvider.DependencyScopeName => PlayerId.ToString();
1012
- int IBeamableDisposableOrder.DisposeOrder => 100;
1013
- }
1014
-
1015
- [Serializable]
1016
- public class BeamContextInitException : Exception
1017
- {
1018
- /// <summary>
1019
- /// The <see cref="BeamContext"/> that couldn't start.
1020
- /// </summary>
1021
- public BeamContext Ctx { get; }
1022
-
1023
- /// <summary>
1024
- /// A set of exceptions that map to each failed initialization attempt.
1025
- /// There will be the same count of errors as there is in the <see cref="CoreConfiguration.ContextRetryDelays"/> array
1026
- /// </summary>
1027
- public Exception[] Exceptions { get; }
1028
-
1029
- public BeamContextInitException(BeamContext ctx, Exception[] exceptions) : base($"Could not initialize " +
1030
- $"BeamContext=[{ctx?.PlayerCode}]. " +
1031
- $"Errors=[{string.Join("\n", exceptions.Where(e => e != null).Select(e => e.Message))}]")
1032
- {
1033
- Ctx = ctx;
1034
- Exceptions = exceptions;
1035
- }
1036
- }
1037
- }
1
+ using Beamable.Api;
2
+ using Beamable.Api.AdvertisingIdentifier;
3
+ using Beamable.Api.Analytics;
4
+ using Beamable.Api.Auth;
5
+ using Beamable.Api.Autogenerated.Models;
6
+ using Beamable.Api.Autogenerated.Realms;
7
+ using Beamable.Api.Caches;
8
+ using Beamable.Api.Connectivity;
9
+ using Beamable.Api.Notification;
10
+ using Beamable.Api.Payments;
11
+ using Beamable.Api.Sessions;
12
+ using Beamable.Common;
13
+ using Beamable.Common.Api;
14
+ using Beamable.Common.Api.Auth;
15
+ using Beamable.Common.Api.Content;
16
+ using Beamable.Common.Api.Notifications;
17
+ using Beamable.Common.Api.Presence;
18
+ using Beamable.Common.Content;
19
+ using Beamable.Common.Dependencies;
20
+ using Beamable.Common.Spew;
21
+ using Beamable.Common.Util;
22
+ using Beamable.Connection;
23
+ using Beamable.Content.Utility;
24
+ using Beamable.Coroutines;
25
+ using Beamable.Player;
26
+ using Beamable.Player.CloudSaving;
27
+ using System;
28
+ using System.Collections;
29
+ using System.Collections.Generic;
30
+ using System.Linq;
31
+ using Beamable.Server;
32
+ using UnityEngine;
33
+ using Debug = UnityEngine.Debug;
34
+ using EmptyResponse = Beamable.Common.Api.EmptyResponse;
35
+ using ExternalIdentity = Beamable.Common.Api.Auth.ExternalIdentity;
36
+ using Random = UnityEngine.Random;
37
+ using TokenResponse = Beamable.Common.Api.Auth.TokenResponse;
38
+
39
+ namespace Beamable
40
+ {
41
+
42
+ /// <summary>
43
+ /// The observed player has a limited subset of functionality from the larger <see cref="BeamContext"/>.
44
+ /// </summary>
45
+ public interface IObservedPlayer : IUserContext
46
+ {
47
+ PlayerStats Stats { get; }
48
+ PlayerLobby Lobby { get; }
49
+ PlayerParty Party { get; }
50
+ }
51
+
52
+ /// <summary>
53
+ /// <para>
54
+ /// The <see cref="BeamContext"/> represents a player's session and is equipped with all required services.
55
+ /// <see cref="BeamContext"/> instances are not tied to scene memory. Instead, <see cref="BeamContext"/> instances live in a static way.
56
+ /// However, if a <see cref="BeamableBehaviour"/> is connected to a <see cref="BeamContext"/>, then the <see cref="BeamableBehaviour"/>'s lifecycle
57
+ /// will control the `<see cref="BeamContext"/>'s lifecycle.
58
+ /// Additionally, the <see cref="PlayerCode"/> variable is the unique id of the <see cref="BeamContext"/>.
59
+ /// </para>
60
+ ///
61
+ /// <para>
62
+ /// From Monobehaviours or Unity components, you should use the <see cref="InParent"/> method to access a <see cref="BeamContext"/>.
63
+ /// The <see cref="InParent"/> will give you the closest context in the Unity object heirarchy from your script's location, or give you
64
+ /// <see cref="Default"/> if no context exists. You can add <see cref="BeamableBehaviour"/> components to add a context to a GameObject.
65
+ ///
66
+ /// If you want to access an instance without using a context sensitive approach, you should use the <see cref="Instantiate"/> method.
67
+ /// Finally, you can always use <see cref="Default"/>.
68
+ /// </para>
69
+ ///
70
+ /// <para>
71
+ /// Remember, there will only ever be one instance of <see cref="BeamContext"/> per <see cref="PlayerCode"/> value.
72
+ /// The <see cref="Default"/> context has a <see cref="PlayerCode"/> value of an empty string.
73
+ /// </para>
74
+ /// </summary>
75
+ [Serializable]
76
+ public class BeamContext : IPlatformService, IGameObjectContext, IObservedPlayer, IBeamableDisposableOrder, IDependencyNameProvider, IDependencyScopeNameProvider
77
+ {
78
+ #region Internal State
79
+ /// <summary>
80
+ /// The <see cref="PlayerCode"/> is the name of a player's slot on the device. The <see cref="Default"/> context uses an empty string,
81
+ /// but you could use values like "player1" and "player2" to enable a feature like couch-coop.
82
+ /// </summary>
83
+ public string PlayerCode { get; private set; }
84
+
85
+ /// <summary>
86
+ /// The User that this context is authenticated with. Any web-calls that are made from this <see cref="BeamContext"/> are made by this User
87
+ /// </summary>
88
+ public ObservableUser AuthorizedUser = new ObservableUser
89
+ {
90
+ Value = new User
91
+ {
92
+ thirdPartyAppAssociations = new List<string>(),
93
+ external = new List<ExternalIdentity>(),
94
+ deviceIds = new List<string>(),
95
+ scopes = new List<string>()
96
+ }
97
+ };
98
+
99
+ /// <summary>
100
+ /// The <see cref="IDependencyProvider"/> is a collection of all services required to provide a Beamable SDK full funcitonality
101
+ /// </summary>
102
+ public IDependencyProvider ServiceProvider => _serviceScope;
103
+
104
+ /// <summary>
105
+ /// If the <see cref="Stop"/> method has been run, this property will return true. Once a context is disposed, you shouldn't use
106
+ /// it anymore, and the <see cref="ServiceProvider"/> will throw exceptions if you do.
107
+ /// You can re-initialize the context by using <see cref="InParent"/>
108
+ /// </summary>
109
+ public bool IsStopped => _isStopped;
110
+
111
+ /// <summary>
112
+ /// Each <see cref="BeamContext"/> has a set of components that need to live on a gameObject in the scene.
113
+ /// </summary>
114
+ public GameObject GameObject => _gob ? _gob : _parent?.GameObject;
115
+
116
+ public bool IsInitialized => _initPromise != null;
117
+
118
+ public bool IsDefault => IsDefaultPlayerCode(PlayerCode);
119
+
120
+ private IDependencyProviderScope _serviceScope;
121
+ private bool _isStopped;
122
+ private GameObject _gob;
123
+ private Promise _initPromise;
124
+ private BeamContext _parent;
125
+ private HashSet<BeamContext> _children = new HashSet<BeamContext>();
126
+
127
+
128
+ #endregion
129
+
130
+ #region Service Accessors
131
+
132
+ public long PlayerId
133
+ {
134
+ get
135
+ {
136
+ var userContext = ServiceProvider.GetService<IUserContext>();
137
+ if (userContext == this) return AuthorizedUser?.Value?.id ?? 0;
138
+ return userContext.UserId;
139
+ }
140
+ }
141
+
142
+ public string Cid => _requester.Cid;
143
+
144
+ public string Pid => _requester.Pid; // TODO: rename to rid
145
+
146
+ public AccessToken AccessToken => _requester.Token;
147
+
148
+ public IBeamableRequester Requester => ServiceProvider.GetService<IBeamableRequester>();
149
+ public CoroutineService CoroutineService => ServiceProvider.GetService<CoroutineService>();
150
+
151
+
152
+ [SerializeField]
153
+ private PlayerAnnouncements _announcements;
154
+ // [SerializeField]
155
+ // private PlayerCurrencyGroup _currency;
156
+ [SerializeField]
157
+ private PlayerStats _playerStats;
158
+
159
+ [SerializeField] private PlayerLobby _playerLobby;
160
+
161
+ public PlayerAnnouncements Announcements =>
162
+ _announcements?.IsInitialized ?? false
163
+ ? _announcements
164
+ : (_announcements = _serviceScope.GetService<PlayerAnnouncements>());
165
+
166
+ public PlayerStats Stats =>
167
+ _playerStats?.IsInitialized ?? false
168
+ ? _playerStats
169
+ : (_playerStats = _serviceScope.GetService<PlayerStats>());
170
+
171
+ public MicroserviceClients Microservices => _serviceScope.GetService<MicroserviceClients>();
172
+
173
+ /// <summary>
174
+ /// Access the <see cref="PlayerLobby"/> for this context.
175
+ /// </summary>
176
+ public PlayerLobby Lobby => _playerLobby = _playerLobby ?? _serviceScope.GetService<PlayerLobby>();
177
+
178
+ /// <summary>
179
+ /// Access the <see cref="PlayerParty"/> for this context.
180
+ /// </summary>
181
+ public PlayerParty Party => _serviceScope.GetService<PlayerParty>();
182
+
183
+ /// <summary>
184
+ /// Access the <see cref="IPresenceApi"/> for this context.
185
+ /// </summary>
186
+ public IPresenceApi Presence => _serviceScope.GetService<IPresenceApi>();
187
+
188
+ /// <summary>
189
+ /// Access the <see cref="PlayerAccounts"/> for this context.
190
+ /// </summary>
191
+ public PlayerAccounts Accounts
192
+ {
193
+ get
194
+ {
195
+ var service = _serviceScope.GetService<PlayerAccounts>();
196
+ _playerAccounts = service;
197
+ return service;
198
+ }
199
+ }
200
+
201
+ private bool HasAccountsService => _playerAccounts != null;
202
+ private PlayerAccounts _playerAccounts;
203
+
204
+ /// <summary>
205
+ /// <para>
206
+ /// Access the player's inventory
207
+ /// </para>
208
+ /// <para>
209
+ /// <inheritdoc cref="PlayerInventory"/>
210
+ /// </para>
211
+ /// </summary>
212
+ public PlayerInventory Inventory => ServiceProvider.GetService<PlayerInventory>();
213
+
214
+ public ICloudSavingService CloudSaving => ServiceProvider.GetService<ICloudSavingService>();
215
+
216
+ public PlayerLeaderboards Leaderboards => ServiceProvider.GetService<PlayerLeaderboards>();
217
+
218
+ /// <summary>
219
+ /// Access the <see cref="IContentApi"/> for this player.
220
+ /// </summary>
221
+ public IContentApi Content => _contentService = _contentService ?? _serviceScope.GetService<IContentApi>();
222
+
223
+ /// <summary>
224
+ /// Access the <see cref="IBeamableAPI"/> for this player.
225
+ /// </summary>
226
+ public ApiServices Api => ServiceProvider.GetService<ApiServices>();
227
+
228
+ /// <summary>
229
+ /// Access the player's friends and blocked enemies.
230
+ /// </summary>
231
+ public PlayerSocial Social => _serviceScope.GetService<PlayerSocial>();
232
+
233
+ public string TimeOverride
234
+ {
235
+ get => _requester.TimeOverride;
236
+ set
237
+ {
238
+ if (value == null)
239
+ {
240
+ _requester.TimeOverride = null;
241
+ TimeOverrideChanged?.Invoke();
242
+ return;
243
+ }
244
+
245
+ var date = DateTime.Parse(value, null, System.Globalization.DateTimeStyles.RoundtripKind);
246
+ var str = date.ToString(DateUtility.ISO_FORMAT);
247
+ _requester.TimeOverride = str;
248
+ TimeOverrideChanged?.Invoke();
249
+ }
250
+ }
251
+
252
+ private AccessTokenStorage _tokenStorage;
253
+ private EnvironmentData _environment;
254
+ private IPlatformRequester _requester;
255
+ private IBeamableApiRequester _beamableApiRequester;
256
+
257
+ // TODO: Assess each of these as "do we need this as hard field state"
258
+ private IAuthService _authService;
259
+ private IContentApi _contentService;
260
+ private IConnectivityService _connectivityService;
261
+ private NotificationService _notification;
262
+ private ISessionService _sessionService;
263
+ private IHeartbeatService _heartbeatService;
264
+ private BeamableBehaviour _behaviour;
265
+ private OfflineCache _offlineCache;
266
+ private RealmsBasicRealmConfiguration _realmConfig;
267
+
268
+
269
+ private static bool IsDefaultPlayerCode(string code) => DefaultPlayerCode == code;
270
+ #if BEAMABLE_ENABLE_BEAM_CONTEXT_DEFAULT_OVERRIDE
271
+ private static string DefaultPlayerCode { get; set; } = string.Empty;
272
+ #else
273
+ private static string DefaultPlayerCode => string.Empty;
274
+ #endif
275
+ #endregion
276
+
277
+ #region events
278
+
279
+ public event Action OnShutdown;
280
+ public event Action OnShutdownComplete;
281
+ public event Action OnReloadUser;
282
+ public event Action TimeOverrideChanged; // TODO: What to do with the time override?
283
+
284
+ public event Action<User> OnUserLoggingOut;
285
+ public event Action<User> OnUserLoggedIn;
286
+
287
+ #endregion
288
+
289
+ protected BeamContext()
290
+ {
291
+ AuthorizedUser.OnDataUpdated += user => OnUserLoggedIn?.Invoke(user);
292
+ }
293
+
294
+ /// <summary>
295
+ /// A <see cref="BeamContext"/> is configured for one authorized user.
296
+ /// You can get <see cref="Common.Api.Auth.TokenResponse"/> values from the <see cref="IAuthService"/> by calling various log in methods.
297
+ ///
298
+ /// This method will <i>create</i> new <see cref="BeamContext"/> instance using <see cref="Common.Api.Auth.TokenResponse"/> values
299
+ /// </summary>
300
+ /// <param name="playerCode">id for the <see cref="BeamContext"/></param>
301
+ /// <param name="token">Authorization token</param>
302
+ /// <returns>New instance of the <see cref="BeamContext"/></returns>
303
+ public static BeamContext CreateAuthorizedContext(string playerCode, TokenResponse token)
304
+ {
305
+ bool isDefault = IsDefaultPlayerCode(playerCode);
306
+ if (isDefault || _playerCodeToContext.ContainsKey(playerCode))
307
+ {
308
+ #if UNITY_EDITOR
309
+ const string log =
310
+ @"<b>BeamContext</b> with id <b>{0}</b> already exists. " +
311
+ "In order to update existing BeamContext it is recommended to use <b>" +
312
+ nameof(ChangeAuthorizedPlayer) + "</b> method instead.";
313
+ Debug.LogError(string.Format(log, isDefault ? "Default" : playerCode));
314
+ #endif
315
+ throw new BeamContextInitException(_playerCodeToContext[playerCode],
316
+ new[] { new Exception($"BeamContext with \"{playerCode}\" prefix already exist.") });
317
+ }
318
+
319
+
320
+ string cid = Beam.RuntimeConfigProvider.Cid;
321
+ string pid = Beam.RuntimeConfigProvider.Pid;
322
+
323
+ var accessToken = new AccessToken(new AccessTokenStorage(playerCode), cid, pid, token.access_token,
324
+ token.refresh_token, token.expires_in);
325
+ accessToken.Save();
326
+ return ForPlayer(playerCode);
327
+ }
328
+
329
+
330
+ /// <summary>
331
+ /// A <see cref="BeamContext"/> is configured for one authorized user. If you wish to change the user, you need to give it a new token.
332
+ /// You can get <see cref="TokenResponse"/> values from the <see cref="IAuthService"/> by calling various log in methods.
333
+ ///
334
+ /// This method will <i>mutate</i> the current <see cref="BeamContext"/> instance itself, and returned the mutated object.
335
+ /// </summary>
336
+ /// <param name="token"></param>
337
+ /// <returns>The same instance, but now mutated for the new authorized user</returns>
338
+ public async Promise<BeamContext> ChangeAuthorizedPlayer(TokenResponse token)
339
+ {
340
+ if (AuthorizedUser != null)
341
+ {
342
+ OnUserLoggingOut?.Invoke(AuthorizedUser);
343
+ }
344
+
345
+ await SaveToken(token); // set the token so that it gets picked up on the next initialization
346
+ var ctx = Instantiate(_behaviour, PlayerCode);
347
+
348
+ await InitProcedure(silent: true);
349
+
350
+ // before we broadcast the event; we'll ask the accounts to update if they exist...
351
+ if (HasAccountsService)
352
+ {
353
+ await Accounts.Refresh();
354
+ }
355
+ OnReloadUser?.Invoke();
356
+
357
+ return ctx;
358
+ }
359
+
360
+
361
+ /// <summary>
362
+ /// Using the authorization associated with the current context, observe the public data of another player
363
+ /// </summary>
364
+ /// <param name="otherPlayerId"></param>
365
+ [Obsolete("This will be removed in a future release.")]
366
+ public IObservedPlayer ObservePlayer(long otherPlayerId)
367
+ {
368
+ return Fork(builder =>
369
+ {
370
+ builder
371
+ .RemoveIfExists<IUserContext>()
372
+ .AddScoped<IUserContext>(new SimpleUserContext(otherPlayerId))
373
+ ;
374
+ });
375
+ }
376
+
377
+ private BeamContext Fork(Action<IDependencyBuilder> configure)
378
+ {
379
+ var ctx = new BeamContext();
380
+ ctx._parent = this;
381
+ ctx.AuthorizedUser = AuthorizedUser;
382
+ _children.Add(ctx);
383
+
384
+ var subScope = _serviceScope.Fork(configure);
385
+ ctx._serviceScope = subScope;
386
+ ctx.InitServices(Cid, Pid);
387
+ return ctx;
388
+ }
389
+
390
+ [Obsolete("You do not need to include the cid or pid anymore")]
391
+ protected void Init(string cid,
392
+ string pid,
393
+ string playerCode,
394
+ BeamableBehaviour behaviour,
395
+ IDependencyBuilder builder)
396
+ {
397
+ Init(playerCode, behaviour, builder);
398
+ }
399
+
400
+ protected void Init(string playerCode,
401
+ BeamableBehaviour behaviour,
402
+ IDependencyBuilder builder)
403
+ {
404
+ #if UNITY_EDITOR
405
+ if (!UnityEditor.EditorApplication.isPlaying)
406
+ {
407
+ _initPromise = new Promise();
408
+ var exception = new Exception("BeamContext is meant to use only in play mode, not edit mode.");
409
+ _initPromise.CompleteError(exception);
410
+ return;
411
+ }
412
+ if (!UnityEditor.EditorApplication.isPlayingOrWillChangePlaymode)
413
+ {
414
+ // if the context is inside the editor, and something is trying to
415
+ // get the context in a tight loop as the editor exits playmode, then
416
+ // the GameObject will get destroyed soon, and services will start throwing
417
+ // exceptions that the GameObject doesn't exist. Better to curb the init process all
418
+ // together, since the application is exiting playmode anyway.
419
+ _initPromise = new Promise(); // do not complete the promise...
420
+ return;
421
+ }
422
+ #endif
423
+
424
+ PlayerCode = playerCode;
425
+ _isStopped = false;
426
+
427
+ var shouldCreateGob = behaviour == null; // if there is no behaviour, then we definately need one
428
+ if (!shouldCreateGob) // but also, if the object needs to be preserved, then it also needs to be at root level
429
+ {
430
+ shouldCreateGob = behaviour.transform.parent != null && behaviour.DontDestroyContext.IsTruthy();
431
+ }
432
+
433
+ if (shouldCreateGob)
434
+ {
435
+ var gob = new GameObject($"Beamable {playerCode}");
436
+ var nextBehaviour = gob.AddComponent<BeamableBehaviour>();
437
+
438
+ if (string.IsNullOrEmpty(playerCode) || (behaviour?.DontDestroyContext?.Value ?? false))
439
+ {
440
+ // the default context shouldn't destroy on load, unless again, it has already been specified.
441
+ nextBehaviour.DontDestroyContext = new OptionalBoolean { HasValue = true, Value = true };
442
+ }
443
+
444
+ behaviour = nextBehaviour;
445
+ }
446
+
447
+ _gob = behaviour.gameObject;
448
+ builder = builder.Clone();
449
+
450
+ RegisterServices(builder);
451
+
452
+ var oldScope = _serviceScope;
453
+
454
+ _serviceScope = Beam.GlobalScope.Fork(builder);
455
+
456
+ oldScope?.Hydrate(_serviceScope);
457
+
458
+ var config = Beam.RuntimeConfigProvider;
459
+ InitServices(config.Cid, config.Pid);
460
+ _behaviour.Initialize(this);
461
+ _initPromise = new Promise();
462
+
463
+ IEnumerator Try()
464
+ {
465
+ var success = false;
466
+ var attempt = 0;
467
+ var coreConfig = ServiceProvider.GetService<CoreConfiguration>();
468
+ var attemptDurations = coreConfig.ContextRetryDelays;
469
+ var errors = new Exception[attemptDurations.Length];
470
+ while (!success)
471
+ {
472
+ var attemptIndex = attempt;
473
+ yield return InitProcedure()
474
+ .Error(err =>
475
+ {
476
+ errors[attemptIndex] = err;
477
+ switch (err)
478
+ {
479
+ case ServiceScopeDisposedException ex:
480
+ PlatformLogger.Log($"Beamable is exiting early, and caught a {ex.GetType().Name} exception. msg=[{ex.Message}] stack=[{ex.StackTrace}]");
481
+ break;
482
+ default:
483
+ Debug.LogException(err);
484
+ break;
485
+ }
486
+ })
487
+ .Then(__ =>
488
+ {
489
+ success = true;
490
+ _initPromise.CompleteSuccess();
491
+ }).ToYielder();
492
+
493
+ if (success) break;
494
+
495
+ if (attempt >= attemptDurations.Length - 1 && !coreConfig.EnableInfiniteContextRetries)
496
+ {
497
+ // we've failed, and we've been configured to exit early.
498
+ _initPromise.CompleteError(new BeamContextInitException(this, errors));
499
+ yield break;
500
+ }
501
+
502
+ var duration =
503
+ attemptDurations[attempt >= attemptDurations.Length ? attemptDurations.Length - 1 : attempt];
504
+ Debug.LogWarning($"Beamable couldn't start. playerCode=[{playerCode}] Will try again in {duration} seconds...");
505
+ yield return new WaitForSecondsRealtime((float)duration);
506
+ attempt++;
507
+ }
508
+ }
509
+ CoroutineService.StartNew("context_init", Try());
510
+ }
511
+
512
+ protected virtual void RegisterServices(IDependencyBuilder builder)
513
+ {
514
+ builder.AddSingleton<PlatformRequester>(provider => new PlatformRequester(provider));
515
+ builder.AddSingleton<IBeamableApiRequester>(provider => new BeamableApiRequester(provider));
516
+ builder.AddSingleton<IPlatformRequester>(provider => provider.GetService<PlatformRequester>());
517
+ builder.AddSingleton<IBeamableAPI>(provider => Api);
518
+ builder.AddSingleton<BeamContext>(this);
519
+ builder.AddSingleton<IPlatformService>(this);
520
+ builder.AddSingleton<IGameObjectContext>(this);
521
+ builder.AddScoped<IDependencyScopeNameProvider>(this);
522
+ builder.AddSingleton<IDependencyNameProvider>(this);
523
+ builder.AddSingleton(new AccessTokenStorage(PlayerCode));
524
+ }
525
+
526
+ protected virtual void InitServices(string cid, string pid)
527
+ {
528
+ _tokenStorage = ServiceProvider.GetService<AccessTokenStorage>();
529
+ _environment = ServiceProvider.GetService<EnvironmentData>();
530
+ _authService = ServiceProvider.GetService<IAuthService>();
531
+
532
+ _requester = ServiceProvider.GetService<IPlatformRequester>();
533
+ _beamableApiRequester = ServiceProvider.GetService<IBeamableApiRequester>();
534
+ _requester.AuthService = _authService;
535
+ _requester.Cid = cid;
536
+ _requester.Pid = pid;
537
+
538
+ _notification = ServiceProvider.GetService<NotificationService>();
539
+ _sessionService = ServiceProvider.GetService<ISessionService>();
540
+ _behaviour = ServiceProvider.GetService<BeamableBehaviour>();
541
+ _offlineCache = ServiceProvider.GetService<OfflineCache>();
542
+ _connectivityService = ServiceProvider.GetService<IConnectivityService>();
543
+
544
+ var _ = _serviceScope.GetService<SingletonDependencyList<ILoadWithContext>>();
545
+ }
546
+
547
+ private async Promise UpdateAndSaveToken()
548
+ {
549
+ var oldToken = _requester.Token;
550
+ await _beamableApiRequester.RefreshToken();
551
+ var token = _beamableApiRequester.Token;
552
+ ClearToken(eraseFromDisk: false);
553
+ _requester.Token = token;
554
+ _beamableApiRequester.Token = token;
555
+ var settings = _serviceScope.GetService<ITokenEventSettings>();
556
+ if (settings.EnableTokenAnalytics)
557
+ {
558
+ var analytics = _serviceScope.GetService<IAnalyticsTracker>();
559
+ analytics.TrackEvent(
560
+ TokenEvent.ChangingToken(playerId: PlayerId,
561
+ newAccessToken: token?.Token,
562
+ newRefreshToken: token?.RefreshToken,
563
+ oldAccessToken: oldToken?.Token,
564
+ oldRefreshToken: oldToken?.RefreshToken), true);
565
+ }
566
+ _ = _beamableApiRequester.Token.Save();
567
+ }
568
+
569
+ private async Promise SaveToken(TokenResponse rsp)
570
+ {
571
+ var oldToken = _requester.Token;
572
+ ClearToken(eraseFromDisk: false);
573
+ var token = new AccessToken(_tokenStorage,
574
+ Cid,
575
+ Pid,
576
+ rsp.access_token,
577
+ rsp.refresh_token,
578
+ rsp.expires_in);
579
+
580
+ _requester.Token = token;
581
+ _beamableApiRequester.Token = token;
582
+ var settings = _serviceScope.GetService<ITokenEventSettings>();
583
+ if (settings.EnableTokenAnalytics)
584
+ {
585
+ var analytics = _serviceScope.GetService<IAnalyticsTracker>();
586
+ analytics.TrackEvent(
587
+ TokenEvent.ChangingToken(playerId: PlayerId,
588
+ newAccessToken: token?.Token,
589
+ newRefreshToken: token?.RefreshToken,
590
+ oldAccessToken: oldToken?.Token,
591
+ oldRefreshToken: oldToken?.RefreshToken), true);
592
+ }
593
+
594
+ await _requester.Token.Save();
595
+ }
596
+
597
+ private void ClearToken(bool eraseFromDisk=true)
598
+ {
599
+ _requester.DeleteToken(eraseFromDisk);
600
+ }
601
+
602
+ private async Promise InitStep_StartPubnub()
603
+ {
604
+ try
605
+ {
606
+ // when using pubnub,
607
+ // the heartbeat is required to keep a presence connection alive to beamable.
608
+ _heartbeatService = _serviceScope.GetService<IHeartbeatService>();
609
+
610
+ var pubnubSubscriptionManager = ServiceProvider.GetService<IPubnubSubscriptionManager>();
611
+ pubnubSubscriptionManager.UnsubscribeAll();
612
+ await pubnubSubscriptionManager.SubscribeToProvider();
613
+ }
614
+ catch (NoConnectivityException)
615
+ {
616
+ // let it go..
617
+ }
618
+ }
619
+
620
+ private async Promise InitStep_StartWebsocket(string socketUri)
621
+ {
622
+ // Need to get this in order to subscribe the message callbacks.
623
+ var _ = _serviceScope.GetService<BeamableSubscriptionManager>();
624
+ var connection = _serviceScope.GetService<IBeamableConnection>();
625
+
626
+ // the connection doubles as
627
+ // - the legacy heartbeat concept.
628
+ _heartbeatService = connection;
629
+
630
+ await connection.Connect(socketUri);
631
+ }
632
+
633
+
634
+ private async Promise InitProcedure(bool silent = false)
635
+ {
636
+ #region resolve routing key
637
+ if (_serviceScope.CanBuildService<IServiceRoutingResolution>())
638
+ {
639
+ var resolution = _serviceScope.GetService<IServiceRoutingResolution>();
640
+ await resolution.Init();
641
+ }
642
+ #endregion
643
+
644
+ #region load token from storage
645
+ _requester.Token = _tokenStorage.LoadTokenForRealmImmediate(Cid, Pid);
646
+ _beamableApiRequester.Token = _requester.Token;
647
+ #endregion
648
+
649
+
650
+ #region make decisions about the current account
651
+ var hasNoToken = AccessToken == null;
652
+ var hasOfflineToken = AccessToken?.Token == Constants.Commons.OFFLINE;
653
+ var needsToken = hasNoToken || hasOfflineToken;
654
+ #endregion
655
+
656
+ #region wait for connectivity...
657
+ var checker = _serviceScope.GetService<IConnectivityChecker>();
658
+ checker.ConnectivityCheckingEnabled = true;
659
+ var hasInternet = _connectivityService.HasConnectivity;
660
+ if (hasInternet)
661
+ {
662
+ var baseUserJob = GetBaseUser();
663
+ var configJob = SetupGetConfigRealms();
664
+ await Promise.Sequence(baseUserJob, configJob).RecoverFromNoConnectivity(_ =>
665
+ {
666
+ hasInternet = false;
667
+ return new List<Unit>();
668
+ });
669
+ }
670
+ #endregion
671
+
672
+
673
+ if (!hasInternet)
674
+ {
675
+ await SetupWithoutConnection();
676
+ // when internet reconnects, re-run the init.
677
+ _connectivityService.OnReconnectOnce(() => InitProcedure(), -100);
678
+ }
679
+ else
680
+ {
681
+ try
682
+ {
683
+ await SetupWithConnection();
684
+ }
685
+ catch (NoConnectivityException)
686
+ {
687
+ // we tried so hard to avoid this.
688
+ Debug.LogWarning("Lost internet during Beamable initiation. unpredictable behaviour may occur.");
689
+ }
690
+ }
691
+
692
+
693
+ async Promise SetupBeamableNotificationChannel(RealmsBasicRealmConfiguration config)
694
+ {
695
+ if (config.IsUsingBeamableNotifications())
696
+ {
697
+ await InitStep_StartWebsocket(config.websocketConfig.uri);
698
+ }
699
+ else
700
+ {
701
+ await InitStep_StartPubnub();
702
+ }
703
+ }
704
+
705
+ async Promise SetupGetUser()
706
+ {
707
+ var user = await _authService.GetUser();
708
+ AuthorizedUser.Value = user;
709
+ }
710
+
711
+ async Promise SetupNewSession(RealmsBasicRealmConfiguration config)
712
+ {
713
+ string id = await AdvertisingIdentifier.GetIdentifier();
714
+ var promise = _sessionService.StartSession(AuthorizedUser.Value, id);
715
+ await promise.RecoverFromNoConnectivity(_ => new EmptyResponse());
716
+
717
+ bool sendHeartbeat = config.IsUsingPubnubNotifications();
718
+ if (CoreConfiguration.Instance.SendLegacyHeartbeat.TryGet(out var overrideSendHeartbeat))
719
+ {
720
+ sendHeartbeat = overrideSendHeartbeat;
721
+ }
722
+ if (sendHeartbeat)
723
+ {
724
+ _heartbeatService.Start();
725
+ }
726
+ }
727
+
728
+ async Promise SetupPurchaser()
729
+ {
730
+ if (ServiceProvider.CanBuildService<IBeamablePurchaser>())
731
+ {
732
+ var purchaser = ServiceProvider.GetService<IBeamablePurchaser>();
733
+ Promise<Unit> promise = purchaser.Initialize(ServiceProvider);
734
+ await promise.Recover(err =>
735
+ {
736
+ Debug.LogError(err);
737
+ return PromiseBase.Unit;
738
+ });
739
+ ServiceProvider.GetService<Promise<IBeamablePurchaser>>().CompleteSuccess(purchaser);
740
+ }
741
+ else
742
+ {
743
+ ServiceProvider.GetService<Promise<IBeamablePurchaser>>().CompleteSuccess(new DummyPurchaser());
744
+ }
745
+ }
746
+
747
+
748
+ async Promise SetupGetConfigRealms()
749
+ {
750
+ var realmConfiguration = await ServiceProvider.GetService<IRealmsApi>().GetClientDefaults(false);
751
+ _realmConfig = realmConfiguration;
752
+ }
753
+
754
+ void SetupEmitEvents()
755
+ {
756
+ if (silent) return;
757
+ // allow the content refs to update
758
+ ContentApi.Instance.CompleteSuccess(Content);
759
+ OnReloadUser?.Invoke();
760
+ }
761
+
762
+ async Promise SetupWithoutConnection()
763
+ {
764
+ if (needsToken)
765
+ {
766
+ var offlineToken = new TokenResponse
767
+ {
768
+ token_type = Constants.Commons.OFFLINE,
769
+ access_token = Constants.Commons.OFFLINE,
770
+ refresh_token = Constants.Commons.OFFLINE,
771
+ expires_in = long.MaxValue - 1
772
+ };
773
+ await SaveToken(offlineToken);
774
+
775
+ if (_offlineCache.UseOfflineCache)
776
+ {
777
+ var dbid = Random.Range(int.MinValue, 0);
778
+ _offlineCache.Set<User>(AuthApi.ACCOUNT_URL + "/me",
779
+ new User
780
+ {
781
+ id = dbid,
782
+ scopes = new List<string>(),
783
+ thirdPartyAppAssociations = new List<string>(),
784
+ deviceIds = new List<string>()
785
+ }, Requester.AccessToken, true);
786
+ _offlineCache.Merge("stats", Requester.AccessToken, new Dictionary<long, Dictionary<string, string>>
787
+ {
788
+ [dbid] = new Dictionary<string, string>()
789
+ });
790
+ }
791
+ }
792
+
793
+ await SetupGetUser();
794
+ SetupEmitEvents();
795
+ }
796
+
797
+ async Promise GetBaseUser()
798
+ {
799
+ if (needsToken)
800
+ {
801
+ var rsp = await _authService.CreateUser();
802
+ await SaveToken(rsp);
803
+ }
804
+
805
+ // Let's make sure that we get a fresh new JWT before attempting to connect.
806
+ await UpdateAndSaveToken();
807
+ }
808
+
809
+ async Promise SetupWithConnection()
810
+ {
811
+ Promise userInfo = SetupGetUser();
812
+ var connection = SetupBeamableNotificationChannel(_realmConfig);
813
+ var purchase = SetupPurchaser();
814
+
815
+ await userInfo;
816
+
817
+ var session = SetupNewSession(_realmConfig);
818
+ await Promise.Sequence( connection, session, purchase);
819
+ SetupEmitEvents();
820
+ }
821
+ }
822
+
823
+
824
+
825
+ /// <summary>
826
+ /// Create or retrieve a <see cref="BeamContext"/> for the given <see cref="PlayerCode"/>. There is only one instance of a context per <see cref="PlayerCode"/>.
827
+ /// A <see cref="BeamableBehaviour"/> is required because the context needs to attach specific Unity components to a GameObject, and the given <see cref="BeamableBehaviour"/>'s GameObject will be used.
828
+ /// If no <see cref="BeamableBehaviour"/> is given, then a new GameObject will be instantiated at the root transform level named, "Beamable (playerCode)"
829
+ /// </summary>
830
+ /// <param name="beamable">A component that will invite other Beamable components to exist on its GameObject</param>
831
+ /// <param name="playerCode">A named code that represents a player slot on the device. The <see cref="Default"/> context uses an empty string. </param>
832
+ /// <returns></returns>
833
+ public static BeamContext Instantiate(
834
+ BeamableBehaviour beamable = null,
835
+ string playerCode = null,
836
+ IDependencyBuilder dependencyBuilder = null
837
+ )
838
+ {
839
+
840
+ dependencyBuilder = dependencyBuilder ?? Beam.DependencyBuilder;
841
+
842
+ playerCode ??= DefaultPlayerCode;
843
+
844
+ // there should only be one context per playerCode.
845
+ if (_playerCodeToContext.TryGetValue(playerCode, out var existingContext))
846
+ {
847
+ if (existingContext.IsStopped)
848
+ {
849
+ existingContext.Init(playerCode, beamable, dependencyBuilder);
850
+ }
851
+
852
+ return existingContext;
853
+ }
854
+
855
+ #if BEAMABLE_ENABLE_BEAM_CONTEXT_DEFAULT_OVERRIDE
856
+ if (_playerCodeToContext.Count == 0)
857
+ {
858
+ DefaultPlayerCode = playerCode;
859
+ }
860
+ #endif
861
+
862
+ var ctx = new BeamContext();
863
+ ctx.Init(playerCode, beamable, dependencyBuilder);
864
+ _playerCodeToContext[playerCode] = ctx;
865
+ return ctx;
866
+ }
867
+
868
+ private static Dictionary<string, BeamContext> _playerCodeToContext = new Dictionary<string, BeamContext>();
869
+
870
+ /// <summary>
871
+ /// A static <see cref="BeamContext"/> that uses a <see cref="PlayerCode"/> of an empty string.
872
+ /// By default, the default context will persist between scene reloads. If you need to dispose it, you'll
873
+ /// need to manually invoke <see cref="Stop"/>
874
+ /// </summary>
875
+ public static BeamContext Default => Instantiate();
876
+
877
+
878
+ /// <summary>
879
+ /// Find the first <see cref="BeamableBehaviour.Context"/> in the parent lineage of the current component, or <see cref="BeamContext.Default"/> if no <see cref="BeamableBehaviour"/> components exist
880
+ /// </summary>
881
+ public static BeamContext InParent(Component c) => c.GetBeamable();
882
+
883
+ /// <summary>
884
+ /// Finds or creates the first <see cref="BeamContext"/> that matches the given <see cref="BeamContext.PlayerCode"/> value
885
+ /// </summary>
886
+ public static BeamContext ForPlayer(string playerCode = "") => Instantiate(playerCode: playerCode);
887
+
888
+ /// <summary>
889
+ /// Finds all <see cref="BeamContext"/>s that have been created. This may include disposed contexts.
890
+ /// </summary>
891
+ public static IEnumerable<BeamContext> All => _playerCodeToContext.Values;
892
+
893
+ #if UNITY_2019_3_OR_NEWER
894
+ [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.SubsystemRegistration)]
895
+ private static async void HandleDomainReset()
896
+ {
897
+ // tear down all instances, and let them reboot normally.
898
+ await Beam.StopAllContexts();
899
+ }
900
+ #endif
901
+
902
+ /// <summary>
903
+ /// After a context has been Stopped with the <see cref="Stop"/> method, this method can restart the instance.
904
+ /// <para>
905
+ /// If the context hasn't been stopped, this method won't do anything meaningful.
906
+ /// </para>
907
+ /// </summary>
908
+ /// <returns>The same context instance</returns>
909
+ public BeamContext Start() => Instantiate(playerCode: PlayerCode);
910
+
911
+ /// <summary>
912
+ /// This method will tear down a <see cref="BeamContext"/> and notify all internal services that the context should be destroyed.
913
+ /// All coroutines associated with the context will stop.
914
+ /// No notifications will be received internal to the context.
915
+ /// No services will be accessible from the <see cref="ServiceProvider"/> after <see cref="Stop"/> has been called.
916
+ /// <para>
917
+ /// After a context has been disposed, if a call is made to <see cref="Start"/> or <see cref="Instantiate"/> with the disposed context's <see cref="PlayerCode"/>,
918
+ /// then the disposed instance will be reinitialized and rehydrated and returned to the <see cref="Instantiate"/>'s callsite.
919
+ /// </para>
920
+ /// </summary>
921
+ public async Promise Stop()
922
+ {
923
+
924
+
925
+ if (_isStopped) return;
926
+
927
+ // when there are no running contexts, there can be no
928
+ // assigned content singleton proxy. When a new context
929
+ // gets started, this will be re-assigned to the new context's
930
+ // content api.
931
+ if (ContentApi.Instance.GetResult() == Content)
932
+ {
933
+ ContentApi.Instance = new Promise<IContentApi>();
934
+ }
935
+
936
+ _isStopped = true;
937
+
938
+ // clear all events...
939
+ OnShutdown?.Invoke();
940
+
941
+ OnReloadUser = null;
942
+ OnShutdown = null;
943
+ TimeOverrideChanged = null;
944
+ OnUserLoggedIn = null;
945
+ OnUserLoggingOut = null;
946
+
947
+ await _serviceScope.Dispose();
948
+
949
+ _contentService = null;
950
+ _announcements = null;
951
+ _playerStats = null;
952
+
953
+ OnShutdownComplete?.Invoke();
954
+ OnShutdownComplete = null;
955
+ }
956
+
957
+
958
+ /// <summary>
959
+ /// Clear the authorization token for the <see cref="PlayerCode"/>, then internally calls <see cref="Stop"/>
960
+ /// </summary>
961
+ public async Promise ClearPlayerAndStop()
962
+ {
963
+ ClearToken(eraseFromDisk: true);
964
+ await Stop();
965
+ }
966
+
967
+ public void ChangeTime()
968
+ {
969
+ TimeOverrideChanged?.Invoke();
970
+ }
971
+
972
+ long IUserContext.UserId => PlayerId;
973
+
974
+ User IPlatformService.User => AuthorizedUser.Value;
975
+ public Promise<Unit> OnReady => _initPromise;
976
+
977
+ /// <summary>
978
+ /// A <see cref="Promise{T}"/> that is completed when the <see cref="BeamContext"/> is ready to be used.
979
+ /// This promise happens immediately after the <see cref="OnReady"/> promise, but returns the current instance
980
+ /// of the context.
981
+ ///
982
+ /// Suggested usage.
983
+ /// <code>
984
+ /// var ctx = await BeamContext.Default.Instance;
985
+ /// </code>
986
+ /// </summary>
987
+ public Promise<BeamContext> Instance => OnReady?.Map(_ => this);
988
+
989
+ INotificationService IPlatformService.Notification => _notification;
990
+
991
+ IPubnubNotificationService IPlatformService.PubnubNotificationService =>
992
+ ServiceProvider.GetService<IPubnubNotificationService>();
993
+ IConnectivityService IPlatformService.ConnectivityService => _connectivityService;
994
+ IHeartbeatService IPlatformService.Heartbeat => _heartbeatService;
995
+
996
+
997
+ public Promise OnDispose()
998
+ {
999
+ if (GameObject)
1000
+ {
1001
+ UnityEngine.Object.Destroy(GameObject);
1002
+ _behaviour = null;
1003
+ _gob = null;
1004
+ }
1005
+
1006
+
1007
+ return Promise.Success;
1008
+ }
1009
+
1010
+ string IDependencyNameProvider.DependencyProviderName => BeamUtil.SanitizeStringForPath(PlayerCode);
1011
+ string IDependencyScopeNameProvider.DependencyScopeName => PlayerId.ToString();
1012
+ int IBeamableDisposableOrder.DisposeOrder => 100;
1013
+ }
1014
+
1015
+ [Serializable]
1016
+ public class BeamContextInitException : Exception
1017
+ {
1018
+ /// <summary>
1019
+ /// The <see cref="BeamContext"/> that couldn't start.
1020
+ /// </summary>
1021
+ public BeamContext Ctx { get; }
1022
+
1023
+ /// <summary>
1024
+ /// A set of exceptions that map to each failed initialization attempt.
1025
+ /// There will be the same count of errors as there is in the <see cref="CoreConfiguration.ContextRetryDelays"/> array
1026
+ /// </summary>
1027
+ public Exception[] Exceptions { get; }
1028
+
1029
+ public BeamContextInitException(BeamContext ctx, Exception[] exceptions) : base($"Could not initialize " +
1030
+ $"BeamContext=[{ctx?.PlayerCode}]. " +
1031
+ $"Errors=[{string.Join("\n", exceptions.Where(e => e != null).Select(e => e.Message))}]")
1032
+ {
1033
+ Ctx = ctx;
1034
+ Exceptions = exceptions;
1035
+ }
1036
+ }
1037
+ }