com.beamable 5.0.0-PREVIEW.RC1 → 5.0.0-PREVIEW.RC10

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 (1869) hide show
  1. package/.attestation.p7m +0 -0
  2. package/CHANGELOG.md +11 -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 +776 -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 +157 -85
  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 +320 -318
  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 +169 -169
  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 +270 -219
  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 +6 -6
  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 +7 -7
  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 +7 -7
  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 +54 -34
  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 +366 -187
  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 +4 -4
  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 +6 -6
  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 +449 -417
  823. package/Editor/BeamCli/BeamCliUtil.cs +254 -254
  824. package/Editor/BeamCli/BeamCommand.cs +555 -552
  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 +1 -0
  924. package/Editor/BeamCli/Commands/BeamFetchCommandLogRecord.cs.meta +11 -11
  925. package/Editor/BeamCli/Commands/BeamFetchTelemetryLogsResult.cs.meta +11 -11
  926. package/Editor/BeamCli/Commands/BeamGameListCommandResults.cs.meta +11 -11
  927. package/Editor/BeamCli/Commands/BeamGenerateClientFileEvent.cs.meta +11 -11
  928. package/Editor/BeamCli/Commands/BeamGenerateClientOapiCommandArgsResult.cs.meta +11 -11
  929. package/Editor/BeamCli/Commands/BeamGenerateMkDocsCommandResult.cs.meta +11 -11
  930. package/Editor/BeamCli/Commands/BeamGenerateOApiCommandOutput.cs.meta +11 -11
  931. package/Editor/BeamCli/Commands/BeamGenerateWebClientCommandArgsResult.cs.meta +11 -11
  932. package/Editor/BeamCli/Commands/BeamGetBeamOtelConfigCommandResult.cs.meta +11 -11
  933. package/Editor/BeamCli/Commands/BeamGetClickhouseCredentialsResult.cs.meta +11 -11
  934. package/Editor/BeamCli/Commands/BeamGetDeploymentCommandOutput.cs.meta +11 -11
  935. package/Editor/BeamCli/Commands/BeamGetLocalRoutingKeyCommandOutput.cs.meta +11 -11
  936. package/Editor/BeamCli/Commands/BeamGetLogsUrlHeader.cs.meta +11 -11
  937. package/Editor/BeamCli/Commands/BeamGetSignedUrlResponse.cs.meta +11 -11
  938. package/Editor/BeamCli/Commands/BeamGetTokenDetailsCommandOutput.cs.meta +11 -11
  939. package/Editor/BeamCli/Commands/BeamGetTokenForGuestCommandOutput.cs.meta +11 -11
  940. package/Editor/BeamCli/Commands/BeamGetTokenListCommandOutput.cs.meta +11 -11
  941. package/Editor/BeamCli/Commands/BeamGetTokenListElement.cs.meta +11 -11
  942. package/Editor/BeamCli/Commands/BeamGetTokenViaRefreshCommandOutput.cs.meta +11 -11
  943. package/Editor/BeamCli/Commands/BeamGetUnityVersionInfoCommandOutput.cs.meta +11 -11
  944. package/Editor/BeamCli/Commands/BeamGrafanaOpen.cs.meta +11 -11
  945. package/Editor/BeamCli/Commands/BeamGrafanaPs.cs.meta +11 -11
  946. package/Editor/BeamCli/Commands/BeamGrafanaStop.cs.meta +11 -11
  947. package/Editor/BeamCli/Commands/BeamHostServiceDescriptor.cs.meta +11 -11
  948. package/Editor/BeamCli/Commands/BeamInit.cs.meta +11 -11
  949. package/Editor/BeamCli/Commands/BeamInitCommandResult.cs.meta +11 -11
  950. package/Editor/BeamCli/Commands/BeamInvalidCidError.cs.meta +11 -11
  951. package/Editor/BeamCli/Commands/BeamInvalidTokenError.cs.meta +11 -11
  952. package/Editor/BeamCli/Commands/BeamInvalidTokenErrorOutput.cs.meta +11 -11
  953. package/Editor/BeamCli/Commands/BeamListCommandResult.cs.meta +11 -11
  954. package/Editor/BeamCli/Commands/BeamListDeploymentsCommandOutput.cs.meta +11 -11
  955. package/Editor/BeamCli/Commands/BeamListDepsCommandResults.cs.meta +11 -11
  956. package/Editor/BeamCli/Commands/BeamListServicesCommandOutput.cs.meta +11 -11
  957. package/Editor/BeamCli/Commands/BeamListenPlayer.cs.meta +11 -11
  958. package/Editor/BeamCli/Commands/BeamListenServer.cs.meta +11 -11
  959. package/Editor/BeamCli/Commands/BeamLogin.cs.meta +11 -11
  960. package/Editor/BeamCli/Commands/BeamLoginFailedError.cs.meta +11 -11
  961. package/Editor/BeamCli/Commands/BeamLoginResults.cs.meta +11 -11
  962. package/Editor/BeamCli/Commands/BeamLogout.cs.meta +11 -11
  963. package/Editor/BeamCli/Commands/BeamLogoutCommandResult.cs.meta +11 -11
  964. package/Editor/BeamCli/Commands/BeamManifestChecksum.cs.meta +11 -11
  965. package/Editor/BeamCli/Commands/BeamManifestChecksums.cs.meta +11 -11
  966. package/Editor/BeamCli/Commands/BeamManifestServiceEntry.cs.meta +11 -11
  967. package/Editor/BeamCli/Commands/BeamManifestSnapshotItem.cs.meta +11 -11
  968. package/Editor/BeamCli/Commands/BeamManifestStorageEntry.cs.meta +11 -11
  969. package/Editor/BeamCli/Commands/BeamMe.cs.meta +11 -11
  970. package/Editor/BeamCli/Commands/BeamMkdocs.cs.meta +11 -11
  971. package/Editor/BeamCli/Commands/BeamNoTokenError.cs.meta +11 -11
  972. package/Editor/BeamCli/Commands/BeamNotificationPlayerOutput.cs.meta +11 -11
  973. package/Editor/BeamCli/Commands/BeamNotificationServerOutput.cs.meta +11 -11
  974. package/Editor/BeamCli/Commands/BeamOapiDownload.cs.meta +11 -11
  975. package/Editor/BeamCli/Commands/BeamOrgGames.cs.meta +11 -11
  976. package/Editor/BeamCli/Commands/BeamOrgRealmData.cs.meta +11 -11
  977. package/Editor/BeamCli/Commands/BeamOrgRealms.cs.meta +11 -11
  978. package/Editor/BeamCli/Commands/BeamPlanReleaseProgress.cs.meta +11 -11
  979. package/Editor/BeamCli/Commands/BeamProfileCheckCounters.cs.meta +11 -11
  980. package/Editor/BeamCli/Commands/BeamProfileCheckNbomber.cs.meta +11 -11
  981. package/Editor/BeamCli/Commands/BeamProjectAddPaths.cs.meta +11 -11
  982. package/Editor/BeamCli/Commands/BeamProjectAddUnityProject.cs.meta +11 -11
  983. package/Editor/BeamCli/Commands/BeamProjectBuild.cs.meta +11 -11
  984. package/Editor/BeamCli/Commands/BeamProjectBuildSln.cs.meta +11 -11
  985. package/Editor/BeamCli/Commands/BeamProjectDeps.cs.meta +11 -11
  986. package/Editor/BeamCli/Commands/BeamProjectDepsAdd.cs.meta +11 -11
  987. package/Editor/BeamCli/Commands/BeamProjectDepsList.cs.meta +11 -11
  988. package/Editor/BeamCli/Commands/BeamProjectDepsRemove.cs.meta +11 -11
  989. package/Editor/BeamCli/Commands/BeamProjectDisable.cs.meta +11 -11
  990. package/Editor/BeamCli/Commands/BeamProjectEnable.cs.meta +11 -11
  991. package/Editor/BeamCli/Commands/BeamProjectErrorReport.cs.meta +11 -11
  992. package/Editor/BeamCli/Commands/BeamProjectErrorResult.cs.meta +11 -11
  993. package/Editor/BeamCli/Commands/BeamProjectGenerateClient.cs.meta +11 -11
  994. package/Editor/BeamCli/Commands/BeamProjectGenerateClientOapi.cs.meta +11 -11
  995. package/Editor/BeamCli/Commands/BeamProjectGenerateEnv.cs +7 -0
  996. package/Editor/BeamCli/Commands/BeamProjectGenerateEnv.cs.meta +11 -11
  997. package/Editor/BeamCli/Commands/BeamProjectGenerateProperties.cs +2 -2
  998. package/Editor/BeamCli/Commands/BeamProjectGenerateProperties.cs.meta +11 -11
  999. package/Editor/BeamCli/Commands/BeamProjectGenerateWebClient.cs.meta +11 -11
  1000. package/Editor/BeamCli/Commands/BeamProjectList.cs.meta +11 -11
  1001. package/Editor/BeamCli/Commands/BeamProjectLogs.cs.meta +11 -11
  1002. package/Editor/BeamCli/Commands/BeamProjectNewCommonLib.cs.meta +11 -11
  1003. package/Editor/BeamCli/Commands/BeamProjectNewService.cs.meta +11 -11
  1004. package/Editor/BeamCli/Commands/BeamProjectNewStorage.cs.meta +11 -11
  1005. package/Editor/BeamCli/Commands/BeamProjectOapi.cs.meta +11 -11
  1006. package/Editor/BeamCli/Commands/BeamProjectOpen.cs.meta +11 -11
  1007. package/Editor/BeamCli/Commands/BeamProjectOpenMongo.cs.meta +11 -11
  1008. package/Editor/BeamCli/Commands/BeamProjectOpenSwagger.cs.meta +11 -11
  1009. package/Editor/BeamCli/Commands/BeamProjectPs.cs.meta +11 -11
  1010. package/Editor/BeamCli/Commands/BeamProjectReadSettings.cs.meta +11 -11
  1011. package/Editor/BeamCli/Commands/BeamProjectRegenerate.cs.meta +11 -11
  1012. package/Editor/BeamCli/Commands/BeamProjectRemoteLogs.cs.meta +11 -11
  1013. package/Editor/BeamCli/Commands/BeamProjectRemove.cs.meta +11 -11
  1014. package/Editor/BeamCli/Commands/BeamProjectRun.cs.meta +11 -11
  1015. package/Editor/BeamCli/Commands/BeamProjectSettingsOutput.cs.meta +11 -11
  1016. package/Editor/BeamCli/Commands/BeamProjectStop.cs.meta +11 -11
  1017. package/Editor/BeamCli/Commands/BeamProjectStorageErase.cs.meta +11 -11
  1018. package/Editor/BeamCli/Commands/BeamProjectStorageRestore.cs.meta +11 -11
  1019. package/Editor/BeamCli/Commands/BeamProjectStorageSnapshot.cs.meta +11 -11
  1020. package/Editor/BeamCli/Commands/BeamProjectWriteSetting.cs.meta +11 -11
  1021. package/Editor/BeamCli/Commands/BeamReadProjectSettingsCommandOutput.cs.meta +11 -11
  1022. package/Editor/BeamCli/Commands/BeamRealmConfigOutput.cs.meta +11 -11
  1023. package/Editor/BeamCli/Commands/BeamRealmRole.cs.meta +11 -11
  1024. package/Editor/BeamCli/Commands/BeamRealmsListCommandOutput.cs.meta +11 -11
  1025. package/Editor/BeamCli/Commands/BeamReleaseSharedUnityCodeCommandOutput.cs.meta +11 -11
  1026. package/Editor/BeamCli/Commands/BeamRemoteServiceDescriptor.cs.meta +11 -11
  1027. package/Editor/BeamCli/Commands/BeamRemoteStorageDescriptor.cs.meta +11 -11
  1028. package/Editor/BeamCli/Commands/BeamReportTelemetryResult.cs.meta +11 -11
  1029. package/Editor/BeamCli/Commands/BeamRequestCliCommandOutput.cs.meta +11 -11
  1030. package/Editor/BeamCli/Commands/BeamRequiredFileEdit.cs.meta +11 -11
  1031. package/Editor/BeamCli/Commands/BeamRestoreProjectCommandOutput.cs.meta +11 -11
  1032. package/Editor/BeamCli/Commands/BeamRestoreStorageObjectCommandOutput.cs.meta +11 -11
  1033. package/Editor/BeamCli/Commands/BeamRunFailErrorOutput.cs.meta +11 -11
  1034. package/Editor/BeamCli/Commands/BeamRunProjectBuildErrorStream.cs.meta +11 -11
  1035. package/Editor/BeamCli/Commands/BeamRunProjectResultStream.cs.meta +11 -11
  1036. package/Editor/BeamCli/Commands/BeamSaveProjectPathsCommandResults.cs.meta +11 -11
  1037. package/Editor/BeamCli/Commands/BeamServeCliCommandOutput.cs.meta +11 -11
  1038. package/Editor/BeamCli/Commands/BeamServerClear.cs.meta +11 -11
  1039. package/Editor/BeamCli/Commands/BeamServerDescriptor.cs.meta +11 -11
  1040. package/Editor/BeamCli/Commands/BeamServerKillCommandResult.cs.meta +11 -11
  1041. package/Editor/BeamCli/Commands/BeamServerPs.cs.meta +11 -11
  1042. package/Editor/BeamCli/Commands/BeamServerPsCommandResult.cs.meta +11 -11
  1043. package/Editor/BeamCli/Commands/BeamServerReq.cs.meta +11 -11
  1044. package/Editor/BeamCli/Commands/BeamServerServe.cs.meta +11 -11
  1045. package/Editor/BeamCli/Commands/BeamServiceDependenciesPair.cs.meta +11 -11
  1046. package/Editor/BeamCli/Commands/BeamServiceDeployReportResult.cs.meta +11 -11
  1047. package/Editor/BeamCli/Commands/BeamServiceFederationChange.cs.meta +11 -11
  1048. package/Editor/BeamCli/Commands/BeamServiceFederations.cs.meta +11 -11
  1049. package/Editor/BeamCli/Commands/BeamServiceImageIdChange.cs.meta +11 -11
  1050. package/Editor/BeamCli/Commands/BeamServiceInstance.cs.meta +11 -11
  1051. package/Editor/BeamCli/Commands/BeamServiceListResult.cs.meta +11 -11
  1052. package/Editor/BeamCli/Commands/BeamServiceLogProviderChange.cs.meta +11 -11
  1053. package/Editor/BeamCli/Commands/BeamServiceManifestOutput.cs.meta +11 -11
  1054. package/Editor/BeamCli/Commands/BeamServiceRemoteDeployProgressResult.cs.meta +11 -11
  1055. package/Editor/BeamCli/Commands/BeamServiceRunProgressResult.cs.meta +11 -11
  1056. package/Editor/BeamCli/Commands/BeamServiceRunReportResult.cs.meta +11 -11
  1057. package/Editor/BeamCli/Commands/BeamServiceStatus.cs.meta +11 -11
  1058. package/Editor/BeamCli/Commands/BeamServiceTemplate.cs.meta +11 -11
  1059. package/Editor/BeamCli/Commands/BeamServicesBuild.cs.meta +11 -11
  1060. package/Editor/BeamCli/Commands/BeamServicesBuildCommandOutput.cs.meta +11 -11
  1061. package/Editor/BeamCli/Commands/BeamServicesBuiltProgress.cs.meta +11 -11
  1062. package/Editor/BeamCli/Commands/BeamServicesDeploy.cs.meta +11 -11
  1063. package/Editor/BeamCli/Commands/BeamServicesDockerStart.cs.meta +11 -11
  1064. package/Editor/BeamCli/Commands/BeamServicesDockerStatus.cs.meta +11 -11
  1065. package/Editor/BeamCli/Commands/BeamServicesForRouteCollection.cs.meta +11 -11
  1066. package/Editor/BeamCli/Commands/BeamServicesGetConnectionString.cs.meta +11 -11
  1067. package/Editor/BeamCli/Commands/BeamServicesGetConnectionStringCommandOutput.cs.meta +11 -11
  1068. package/Editor/BeamCli/Commands/BeamServicesManifests.cs.meta +11 -11
  1069. package/Editor/BeamCli/Commands/BeamServicesPromote.cs.meta +11 -11
  1070. package/Editor/BeamCli/Commands/BeamServicesPs.cs.meta +11 -11
  1071. package/Editor/BeamCli/Commands/BeamServicesRegistry.cs.meta +11 -11
  1072. package/Editor/BeamCli/Commands/BeamServicesRegistryOutput.cs.meta +11 -11
  1073. package/Editor/BeamCli/Commands/BeamServicesResetContainer.cs.meta +11 -11
  1074. package/Editor/BeamCli/Commands/BeamServicesResetContainerCommandOutput.cs.meta +11 -11
  1075. package/Editor/BeamCli/Commands/BeamServicesResetImage.cs.meta +11 -11
  1076. package/Editor/BeamCli/Commands/BeamServicesResetImageCommandOutput.cs.meta +11 -11
  1077. package/Editor/BeamCli/Commands/BeamServicesRun.cs.meta +11 -11
  1078. package/Editor/BeamCli/Commands/BeamServicesServiceLogs.cs.meta +11 -11
  1079. package/Editor/BeamCli/Commands/BeamServicesServiceMetrics.cs.meta +11 -11
  1080. package/Editor/BeamCli/Commands/BeamServicesStop.cs.meta +11 -11
  1081. package/Editor/BeamCli/Commands/BeamServicesTemplates.cs.meta +11 -11
  1082. package/Editor/BeamCli/Commands/BeamServicesTemplatesCommandOutput.cs.meta +11 -11
  1083. package/Editor/BeamCli/Commands/BeamServicesUpdateDockerfile.cs.meta +11 -11
  1084. package/Editor/BeamCli/Commands/BeamServicesUploadApi.cs.meta +11 -11
  1085. package/Editor/BeamCli/Commands/BeamServicesUploadApiOutput.cs.meta +11 -11
  1086. package/Editor/BeamCli/Commands/BeamSetBeamOtelConfigCommandResults.cs.meta +11 -11
  1087. package/Editor/BeamCli/Commands/BeamSetEnabledCommandArgsOutput.cs.meta +11 -11
  1088. package/Editor/BeamCli/Commands/BeamSetEnabledCommandComponent.cs.meta +11 -11
  1089. package/Editor/BeamCli/Commands/BeamSettingOutput.cs.meta +11 -11
  1090. package/Editor/BeamCli/Commands/BeamShowCurrentBeamoStatusCommandOutput.cs.meta +11 -11
  1091. package/Editor/BeamCli/Commands/BeamShowManifestCommandOutput.cs.meta +11 -11
  1092. package/Editor/BeamCli/Commands/BeamSnapshotStorageObjectCommandOutput.cs.meta +11 -11
  1093. package/Editor/BeamCli/Commands/BeamStartDockerCommandOutput.cs.meta +11 -11
  1094. package/Editor/BeamCli/Commands/BeamStartGrafanaCommandResults.cs.meta +11 -11
  1095. package/Editor/BeamCli/Commands/BeamStopProjectCommandOutput.cs.meta +11 -11
  1096. package/Editor/BeamCli/Commands/BeamTailLogMessageForClient.cs.meta +11 -11
  1097. package/Editor/BeamCli/Commands/BeamTelemetryCollector.cs.meta +11 -11
  1098. package/Editor/BeamCli/Commands/BeamTelemetryCollectorGet.cs.meta +11 -11
  1099. package/Editor/BeamCli/Commands/BeamTelemetryCollectorPs.cs.meta +11 -11
  1100. package/Editor/BeamCli/Commands/BeamTelemetryConfig.cs.meta +11 -11
  1101. package/Editor/BeamCli/Commands/BeamTelemetryGetCreds.cs.meta +11 -11
  1102. package/Editor/BeamCli/Commands/BeamTelemetryLogs.cs.meta +11 -11
  1103. package/Editor/BeamCli/Commands/BeamTelemetryPrune.cs.meta +11 -11
  1104. package/Editor/BeamCli/Commands/BeamTelemetryPush.cs.meta +11 -11
  1105. package/Editor/BeamCli/Commands/BeamTelemetryReport.cs.meta +11 -11
  1106. package/Editor/BeamCli/Commands/BeamTelemetrySetConfig.cs.meta +11 -11
  1107. package/Editor/BeamCli/Commands/BeamTempClearLogs.cs.meta +11 -11
  1108. package/Editor/BeamCli/Commands/BeamTokenFromRefresh.cs.meta +11 -11
  1109. package/Editor/BeamCli/Commands/BeamTokenInspect.cs.meta +11 -11
  1110. package/Editor/BeamCli/Commands/BeamTokenList.cs.meta +11 -11
  1111. package/Editor/BeamCli/Commands/BeamTokenNewGuest.cs.meta +11 -11
  1112. package/Editor/BeamCli/Commands/BeamUnityAssemblyReferenceData.cs.meta +11 -11
  1113. package/Editor/BeamCli/Commands/BeamUnityCopyDotnetSrc.cs.meta +11 -11
  1114. package/Editor/BeamCli/Commands/BeamUnityDownloadAllNugetPackages.cs.meta +11 -11
  1115. package/Editor/BeamCli/Commands/BeamUnityDownloadNugetPackage.cs.meta +11 -11
  1116. package/Editor/BeamCli/Commands/BeamUnityGetVersionInfo.cs.meta +11 -11
  1117. package/Editor/BeamCli/Commands/BeamUnityManifest.cs.meta +11 -11
  1118. package/Editor/BeamCli/Commands/BeamUnityReleaseSharedCode.cs.meta +11 -11
  1119. package/Editor/BeamCli/Commands/BeamUnityRestore.cs.meta +11 -11
  1120. package/Editor/BeamCli/Commands/BeamUnityUpdateDlls.cs.meta +11 -11
  1121. package/Editor/BeamCli/Commands/BeamUnityUpdateReferences.cs.meta +11 -11
  1122. package/Editor/BeamCli/Commands/BeamVersion.cs.meta +11 -11
  1123. package/Editor/BeamCli/Commands/BeamVersionConstruct.cs.meta +11 -11
  1124. package/Editor/BeamCli/Commands/BeamVersionResults.cs.meta +11 -11
  1125. package/Editor/BeamCli/Commands/BeamWriteProjectSettingsCommandOutput.cs.meta +11 -11
  1126. package/Editor/BeamCli/Extensions/BeamManifestServiceEntry_ComputedTypes.cs +53 -53
  1127. package/Editor/BeamCli/Extensions/BeamManifestStorageEntry_ComputedTypes.cs +10 -10
  1128. package/Editor/BeamCli/Extensions/DiscoveryExtensions.cs +57 -41
  1129. package/Editor/BeamCli/Extensions/FederationsConfig.cs +22 -22
  1130. package/Editor/BeamCli/UI/BeamCliJsonPopup.cs +29 -29
  1131. package/Editor/BeamCli/UI/BeamCliTextPopup.cs +32 -32
  1132. package/Editor/BeamCli/UI/BeamCliWindow.cs +174 -174
  1133. package/Editor/BeamCli/UI/BeamCliWindow_Commands.cs +539 -512
  1134. package/Editor/BeamCli/UI/BeamCliWindow_Overrides.cs +117 -117
  1135. package/Editor/BeamCli/UI/BeamCliWindow_Server.cs +156 -156
  1136. package/Editor/BeamCli/UI/BeamCliWindow_Terminal.cs +207 -207
  1137. package/Editor/BeamCli/UI/BeamCliWindow_Util.cs +336 -336
  1138. package/Editor/BeamCli/UI/JsonHighlighterUtil.cs +143 -143
  1139. package/Editor/BeamCli/UI/LogUtil/LogViewUtil.cs +727 -727
  1140. package/Editor/BeamCli/UI/TimeDisplayUtil.cs +22 -22
  1141. package/Editor/BeamEditor.cs +733 -733
  1142. package/Editor/BeamableLinker.cs +77 -77
  1143. package/Editor/BuildPostProcessor.cs +44 -44
  1144. package/Editor/BuildPreProcessor.cs +264 -264
  1145. package/Editor/ContentService/CliContentService.cs +49 -18
  1146. package/Editor/Dotnet/DotnetService.cs +193 -193
  1147. package/Editor/Dotnet/DotnetUtil.cs +296 -296
  1148. package/Editor/EditorAPI.cs +4 -4
  1149. package/Editor/EditorPlatformRequesterErrorHandler.cs +28 -28
  1150. package/Editor/EditorRuntimeConfigProvider.cs +19 -19
  1151. package/Editor/EditorStorageLayer.cs +40 -40
  1152. package/Editor/Eggs/EggEntry.cs +38 -38
  1153. package/Editor/Eggs/Serpent/EggSerpent.cs +209 -209
  1154. package/Editor/Environment/BeamableDiagnosticData.cs +198 -198
  1155. package/Editor/Environment/BeamableEditorWebRequester.cs +62 -62
  1156. package/Editor/Environment/BeamablePackages.cs +90 -90
  1157. package/Editor/Environment/IEditorHttpRequester.cs +49 -49
  1158. package/Editor/FileAssetModificationProcessor.cs +49 -49
  1159. package/Editor/LibraryService.cs +297 -297
  1160. package/Editor/Modules/Account/BeamableSocialsImporter.cs +59 -59
  1161. package/Editor/Modules/Account/EditorAuthService.cs +244 -244
  1162. package/Editor/Modules/Account/PortalCommand.cs +37 -37
  1163. package/Editor/Modules/Content/CalendarWindow.cs +185 -185
  1164. package/Editor/Modules/Content/ContentObjectPropertyDrawer.cs +26 -26
  1165. package/Editor/Modules/Content/ContentPropertyDrawer.cs +372 -372
  1166. package/Editor/Modules/Content/ContentValidationPropertyDrawer.cs +307 -307
  1167. package/Editor/Modules/Content/DatePropertyDrawer.cs +355 -355
  1168. package/Editor/Modules/Content/OptionalPropertyDrawer.cs +80 -80
  1169. package/Editor/Modules/Content/PropertyDrawerHelper.cs +44 -44
  1170. package/Editor/Modules/Content/ScheduleDefinitionPropertyDrawer.cs +554 -554
  1171. package/Editor/Modules/Content/SerializedContentObject.cs +12 -12
  1172. package/Editor/Modules/Content/UI/ContentObjectEditor.cs +395 -390
  1173. package/Editor/Modules/Content/UI/DisplayableListPropertyDrawer.cs +47 -47
  1174. package/Editor/Modules/Content/UI/EditorValidationContext.cs +7 -7
  1175. package/Editor/Modules/Content/UI/SerializedDictionaryEditor.cs +208 -208
  1176. package/Editor/Modules/ContentTypes/ContentTypesCreator.cs +58 -58
  1177. package/Editor/Modules/EditorConfig/EditorConfiguration.cs +209 -209
  1178. package/Editor/Modules/Input/InputActionPropertyDrawer.cs +138 -138
  1179. package/Editor/Modules/Player/ObservableReadonlyListPropertyDrawer.cs +21 -21
  1180. package/Editor/Modules/Purchasing/BeamablePurchaserImporter.cs +74 -74
  1181. package/Editor/Modules/Sessions/DeviceOptionPropertyDrawer.cs +56 -56
  1182. package/Editor/Modules/Sessions/SessionParameterProviderCreator.cs +111 -111
  1183. package/Editor/Modules/Sessions/SessionParameterProviderEditor.cs +25 -25
  1184. package/Editor/Modules/Stats/StatEditor.cs +18 -18
  1185. package/Editor/Modules/Theme/ButtonStyleObject.cs +9 -9
  1186. package/Editor/Modules/Theme/CanHideDrawer.cs +34 -34
  1187. package/Editor/Modules/Theme/ColorStyleObject.cs +9 -9
  1188. package/Editor/Modules/Theme/FilterSelection.cs +41 -41
  1189. package/Editor/Modules/Theme/FontStyleObject.cs +9 -9
  1190. package/Editor/Modules/Theme/GradientStyleObject.cs +9 -9
  1191. package/Editor/Modules/Theme/ImageStyleObject.cs +9 -9
  1192. package/Editor/Modules/Theme/LayoutStyleObject.cs +9 -9
  1193. package/Editor/Modules/Theme/PaletteStyleObject.cs +30 -30
  1194. package/Editor/Modules/Theme/SelectableStyleObject.cs +9 -9
  1195. package/Editor/Modules/Theme/SoundStyleObject.cs +9 -9
  1196. package/Editor/Modules/Theme/StringStyleObject.cs +9 -9
  1197. package/Editor/Modules/Theme/Style/ButtonStyleObjectPropertyDrawer.cs +61 -61
  1198. package/Editor/Modules/Theme/Style/GeneralPaletteBindingOptionDrawer.cs +25 -25
  1199. package/Editor/Modules/Theme/Style/ThemeSelectorEditor.cs +79 -79
  1200. package/Editor/Modules/Theme/TextStyleObject.cs +9 -9
  1201. package/Editor/Modules/Theme/ThemeConfigurationPropertyDrawer.cs +64 -64
  1202. package/Editor/Modules/Theme/TransformStyleObject.cs +9 -9
  1203. package/Editor/Modules/Theme/WindowStyleObject.cs +9 -9
  1204. package/Editor/NoOpAnalyticsTracker.cs +22 -22
  1205. package/Editor/ReflectionCache/ReflectionCacheAssetPostProcessor.cs +68 -68
  1206. package/Editor/ResetPlayerAccessTokenEditor.cs +63 -63
  1207. package/Editor/Server/AssemblyDefinitionHelper.cs +237 -237
  1208. package/Editor/Server/CommonAreaService.cs +198 -189
  1209. package/Editor/Server/DependencyResolver.cs +177 -177
  1210. package/Editor/Server/ExtensionMethods.cs +40 -40
  1211. package/Editor/Server/MicroserviceConfiguration.cs +87 -87
  1212. package/Editor/Server/RegisterDependencies.cs +33 -33
  1213. package/Editor/Server/UI/Configs/BeamFederationSetting.cs +160 -160
  1214. package/Editor/Server/UI/Configs/BeamStorageDependencySetting.cs +55 -55
  1215. package/Editor/Server/UI/Configs/BeamableMicroservicesSettings.cs +180 -180
  1216. package/Editor/Server/UI/Configs/BeamableStorageSettings.cs +83 -83
  1217. package/Editor/Server/UI/FederationPropertyDrawer.cs +209 -209
  1218. package/Editor/Server/UI/PublishWindow/UsamPublishWindow.cs +442 -442
  1219. package/Editor/Server/UI/PublishWindow/UsamPublishWindow_FatalError.cs +39 -39
  1220. package/Editor/Server/UI/PublishWindow/UsamPublishWindow_Plan.cs +125 -125
  1221. package/Editor/Server/UI/PublishWindow/UsamPublishWindow_Review.cs +247 -247
  1222. package/Editor/Server/UI/UsamWindow/ServicePickerWindow.cs +308 -308
  1223. package/Editor/Server/UI/UsamWindow/UsamWindow.cs +94 -94
  1224. package/Editor/Server/UI/UsamWindow/UsamWindow_Badges.cs +55 -55
  1225. package/Editor/Server/UI/UsamWindow/UsamWindow_Create.cs +325 -325
  1226. package/Editor/Server/UI/UsamWindow/UsamWindow_Docker.cs +111 -111
  1227. package/Editor/Server/UI/UsamWindow/UsamWindow_Main.cs +321 -321
  1228. package/Editor/Server/UI/UsamWindow/UsamWindow_Service.cs +313 -313
  1229. package/Editor/Server/UI/UsamWindow/UsamWindow_Settings.cs +405 -405
  1230. package/Editor/Server/UI/UsamWindow/UsamWindow_Storage.cs +237 -237
  1231. package/Editor/Server/Usam/AssemblyUtil.cs +136 -136
  1232. package/Editor/Server/Usam/CsProjUtil.cs +12 -12
  1233. package/Editor/Server/Usam/CsharpProjectUtil.cs +325 -325
  1234. package/Editor/Server/Usam/ServiceRoutingStrategy.cs +81 -81
  1235. package/Editor/Server/Usam/UsamLogger.cs +46 -46
  1236. package/Editor/Server/Usam/UsamService.cs +1152 -1150
  1237. package/Editor/Server/Usam/UsamService_GenerateClient.cs +243 -243
  1238. package/Editor/Server/Usam/UsamService_Reload.cs +119 -119
  1239. package/Editor/Server/WebhookContentEditor/RouteParametersPropertyDrawer.cs +309 -309
  1240. package/Editor/Server/WebhookContentEditor/RouteVariablesPropertyDrawer.cs +56 -56
  1241. package/Editor/Server/WebhookContentEditor/ServiceRoutePropertyDrawer.cs +137 -137
  1242. package/Editor/ServiceStorage.cs +128 -128
  1243. package/Editor/SessionStorageLayer.cs +29 -29
  1244. package/Editor/TextMeshProImporter.cs +101 -101
  1245. package/Editor/Toolbar/BeamableToolbarAssetPostProcessor.cs +32 -32
  1246. package/Editor/Toolbar/BeamableToolbarButton.cs +45 -45
  1247. package/Editor/Toolbar/BeamableToolbarCallbacks.cs +153 -153
  1248. package/Editor/Toolbar/BeamableToolbarExtender.cs +137 -137
  1249. package/Editor/Toolbar/BeamableToolbarMenuItem.cs +40 -40
  1250. package/Editor/Toolbar/MenuItems/AccountMenuItem.cs +51 -51
  1251. package/Editor/Toolbar/MenuItems/BeamableConfigurationManagerMenuItem.cs +21 -21
  1252. package/Editor/Toolbar/MenuItems/BeamableContentManagerMenuItem.cs +20 -20
  1253. package/Editor/Toolbar/MenuItems/BeamableMicroserviceManagerMenuItem.cs +20 -20
  1254. package/Editor/Toolbar/MenuItems/BeamablePortalMenuItem.cs +18 -18
  1255. package/Editor/Toolbar/MenuItems/BeamableRealmMenuItem.cs +100 -100
  1256. package/Editor/Toolbar/MenuItems/BeamableToolbarMenuItemSeparator.cs +17 -17
  1257. package/Editor/Toolbar/MenuItems/BeamableToolboxWindowMenuItem.cs +20 -20
  1258. package/Editor/Toolbar/ToolbarButtons/SampleBeamableButton.cs +27 -27
  1259. package/Editor/UI/AccountWindow/AccountWindow.cs +3 -2
  1260. package/Editor/UI/BeamEditorWindow.cs +393 -393
  1261. package/Editor/UI/BeamGUI/BeamGUI_Dropdowns.cs +205 -205
  1262. package/Editor/UI/BeamGUI/BeamGUI_Enabled.cs +31 -31
  1263. package/Editor/UI/BeamGUI/BeamGUI_Header.cs +148 -148
  1264. package/Editor/UI/BeamGUI/BeamGUI_Icons.cs +330 -330
  1265. package/Editor/UI/BeamGUI/BeamGUI_LoadingBars.cs +105 -105
  1266. package/Editor/UI/BeamGUI/BeamGUI_PlaceholdTextField.cs +64 -64
  1267. package/Editor/UI/BeamGUI/BeamGUI_PrimaryButton.cs +178 -178
  1268. package/Editor/UI/BeamGUI/BeamGUI_Spinner.cs +30 -30
  1269. package/Editor/UI/BeamGUI/BeamGUI_StaticConstructor.cs +17 -17
  1270. package/Editor/UI/BeamGUI/BeamGUI_Toggle.cs +41 -41
  1271. package/Editor/UI/BeamGUI/PropertyDrawers/HelpBoxDecoratorDrawer.cs +32 -32
  1272. package/Editor/UI/Common/FormConstraint.cs +53 -53
  1273. package/Editor/UI/Common/MediaQueryObjectPropertyDrawer.cs +42 -42
  1274. package/Editor/UI/Common/ReparenterCustomEditor.cs +24 -24
  1275. package/Editor/UI/Config/BeamableSettingsProvider.cs +222 -222
  1276. package/Editor/UI/Config/BeamableSpewSettingsProvider.cs +163 -163
  1277. package/Editor/UI/Config/ConfigManager.cs +207 -207
  1278. package/Editor/UI/Config/Model/ConfigOption.cs +26 -26
  1279. package/Editor/UI/Config/Model/ConfigQuery.cs +114 -114
  1280. package/Editor/UI/ContentWindow/ContentWindow.cs +6 -2
  1281. package/Editor/UI/ContentWindow/ContentWindow_ItemsPanel.cs +24 -19
  1282. package/Editor/UI/ContentWindow/ContentWindow_SnapshotManager.cs +2 -2
  1283. package/Editor/UI/CronExpression/Common/Extensions.cs +23 -23
  1284. package/Editor/UI/CronExpression/DescriptionTypeEnum.cs +18 -18
  1285. package/Editor/UI/CronExpression/ExpressionDescriptor.cs +761 -761
  1286. package/Editor/UI/CronExpression/Localization/CronLocalizationData.cs +77 -77
  1287. package/Editor/UI/CronExpression/Localization/CronLocalizationDatabase.cs +15 -15
  1288. package/Editor/UI/HelpMenuItems.cs +29 -29
  1289. package/Editor/UI/IDelayedActionWindow.cs +10 -10
  1290. package/Editor/UI/LibraryWindow/BeamLibraryWindow.cs +71 -71
  1291. package/Editor/UI/LibraryWindow/BeamLibraryWindow_Main.cs +35 -35
  1292. package/Editor/UI/LibraryWindow/BeamLibraryWindow_Samples.cs +330 -330
  1293. package/Editor/UI/Toolbox/ToolboxWindow.cs +19 -19
  1294. package/Editor/Utility/BeamableAssetDatabase.cs +30 -30
  1295. package/Editor/Utility/BeamableDispatcher.cs +222 -222
  1296. package/Editor/Utility/EditorDebouncer.cs +78 -78
  1297. package/Editor/Utility/EditorFilesystemAccessor.cs +13 -13
  1298. package/Editor/Utility/EditorGUIExtension.cs +148 -148
  1299. package/Editor/Utility/EditorGUIRectController.cs +72 -72
  1300. package/Editor/Utility/FilePathSelectorDrawer.cs +81 -81
  1301. package/Editor/Utility/FileUtils.cs +76 -76
  1302. package/Editor/Utility/PlayerSettingsExtensions.cs +54 -54
  1303. package/Editor/Utility/PromiseEditor.cs +22 -22
  1304. package/Editor/Utility/PropertyDrawerFinder.cs +235 -235
  1305. package/Editor/Utility/ReadonlyIfDrawer.cs +56 -56
  1306. package/Editor/Utility/ShowOnlyDrawer.cs +36 -36
  1307. package/Editor/Utility/TaskUtil.cs +58 -58
  1308. package/Editor/Utility/UnityOtelManager.cs +8 -4
  1309. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/BuildRequests.cs +961 -961
  1310. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/CoroutineClass.cs +1396 -1396
  1311. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/ExceptionHandlers.cs +295 -295
  1312. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/Helpers.cs +1337 -1337
  1313. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/IPubnubUnitTest.cs +31 -31
  1314. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/JSONSerializer.cs +62 -62
  1315. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/LoggingMethod.cs +661 -661
  1316. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/MD5.cs +723 -723
  1317. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/Pubnub.cs +1164 -1164
  1318. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/PubnubCallbacks.cs +464 -464
  1319. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/PubnubCrypto.cs +77 -77
  1320. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/PubnubUnity.cs +2080 -2080
  1321. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/ReconnectState.cs +180 -180
  1322. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/SafeDictionary.cs +204 -204
  1323. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/SharedStringBuilder.cs +23 -23
  1324. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/SharedStringBuilder.cs.meta +2 -2
  1325. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/SubscribeEnvelope.cs +226 -226
  1326. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/Subscription.cs +421 -421
  1327. package/Runtime/3rdParty/PubNub/Scripts/Pubnub/Utility.cs +350 -350
  1328. package/Runtime/3rdParty/UnityUIExtensions/ExtentionMethods.cs +19 -19
  1329. package/Runtime/3rdParty/UnityUIExtensions/Gradient.cs +122 -122
  1330. package/Runtime/3rdParty/UnityUIExtensions/HorizontalScrollSnap.cs +317 -317
  1331. package/Runtime/3rdParty/UnityUIExtensions/IScrollSnap.cs +15 -15
  1332. package/Runtime/3rdParty/UnityUIExtensions/ScrollSnap.cs +573 -573
  1333. package/Runtime/3rdParty/UnityUIExtensions/ScrollSnapBase.cs +615 -615
  1334. package/Runtime/3rdParty/UnityUIExtensions/ScrollSnapScrollbarHelper.cs +56 -56
  1335. package/Runtime/3rdParty/UnityUIExtensions/UI_InfiniteScroll.cs +175 -175
  1336. package/Runtime/3rdParty/VirtualList/Editor/AbstractVirtualListEditor.cs +43 -43
  1337. package/Runtime/3rdParty/VirtualList/Runtime/AbstractVirtualList.cs +388 -388
  1338. package/Runtime/3rdParty/VirtualList/Runtime/IListSource.cs +50 -50
  1339. package/Runtime/3rdParty/VirtualList/Runtime/SimpleSource.cs +81 -81
  1340. package/Runtime/3rdParty/VirtualList/Runtime/VirtualGridList.cs +123 -123
  1341. package/Runtime/3rdParty/VirtualList/Runtime/VirtualHorizontalList.cs +84 -84
  1342. package/Runtime/3rdParty/VirtualList/Runtime/VirtualVerticalList.cs +84 -84
  1343. package/Runtime/3rdParty/WebSocket/WebSocket.cs +866 -866
  1344. package/Runtime/API.cs +267 -267
  1345. package/Runtime/Beam.cs +528 -528
  1346. package/Runtime/BeamContext.cs +1037 -1037
  1347. package/Runtime/Commands/CommandExtensions.cs +26 -26
  1348. package/Runtime/Commands/ICommand.cs +7 -7
  1349. package/Runtime/Connection/BeamableSubscriptionManager.cs +38 -38
  1350. package/Runtime/Connection/IBeamableConnection.cs +30 -30
  1351. package/Runtime/Connection/WebSocketConnection.cs +285 -285
  1352. package/Runtime/Connection/WebSocketConnectionException.cs +9 -9
  1353. package/Runtime/Core/Config/ConfigConsoleCommands.cs +69 -69
  1354. package/Runtime/Core/Config/ConfigConsoleCommands.cs.meta +2 -2
  1355. package/Runtime/Core/Config/ConfigDatabase.cs +253 -253
  1356. package/Runtime/Core/Config/RuntimeConfigProvider.cs +86 -86
  1357. package/Runtime/Core/ConsoleCommands/BeamableConsole.cs +169 -169
  1358. package/Runtime/Core/ConsoleCommands/BeamableConsole.cs.meta +2 -2
  1359. package/Runtime/Core/ConsoleCommands/BeamableConsoleCommandAttribute.cs +27 -27
  1360. package/Runtime/Core/ConsoleCommands/BeamableConsoleCommandProviderAttribute.cs +15 -15
  1361. package/Runtime/Core/ConsoleCommands/BeamableConsoleCommandProviderAttribute.cs.meta +2 -2
  1362. package/Runtime/Core/ConsoleCommands/DefaultConsoleCommands.cs +45 -45
  1363. package/Runtime/Core/ConsoleCommands/DefaultConsoleCommands.cs.meta +2 -2
  1364. package/Runtime/Core/Coroutines/CompletedYieldInstruction.cs +14 -14
  1365. package/Runtime/Core/Coroutines/CoroutineService.cs +115 -115
  1366. package/Runtime/Core/Coroutines/Debouncer.cs +147 -147
  1367. package/Runtime/Core/Coroutines/Yielders.cs +40 -40
  1368. package/Runtime/Core/Extensions/TransformExtensions.cs +118 -118
  1369. package/Runtime/Core/Platform/SDK/AccessToken.cs +151 -151
  1370. package/Runtime/Core/Platform/SDK/AccessTokenStorage.cs +225 -225
  1371. package/Runtime/Core/Platform/SDK/AdvertisingIdentifier/AdvertisingIdentifier.cs +30 -30
  1372. package/Runtime/Core/Platform/SDK/Analytics/AnalyticsTracker.cs +200 -200
  1373. package/Runtime/Core/Platform/SDK/Analytics/Batch/BatchContainer.cs +107 -107
  1374. package/Runtime/Core/Platform/SDK/Analytics/Batch/BatchManager.cs +207 -207
  1375. package/Runtime/Core/Platform/SDK/Analytics/Batch/IBatchContainer.cs +66 -66
  1376. package/Runtime/Core/Platform/SDK/Analytics/Batch/PersistentBatchManager.cs +143 -143
  1377. package/Runtime/Core/Platform/SDK/Analytics/Batch/SerializableBatch.cs +33 -33
  1378. package/Runtime/Core/Platform/SDK/Analytics/Models/BillerPurchaseFailedEvent.cs +16 -16
  1379. package/Runtime/Core/Platform/SDK/Analytics/Models/LoginPanicEvent.cs +19 -19
  1380. package/Runtime/Core/Platform/SDK/Announcements/AnnouncementsService.cs +121 -121
  1381. package/Runtime/Core/Platform/SDK/Auth/AuthService.cs +230 -230
  1382. package/Runtime/Core/Platform/SDK/Auth/DeviceIdResolver.cs +24 -24
  1383. package/Runtime/Core/Platform/SDK/Auth/GCIdentity.cs +24 -24
  1384. package/Runtime/Core/Platform/SDK/Auth/GoogleSignIn.cs +89 -89
  1385. package/Runtime/Core/Platform/SDK/Auth/SignInWithApple.cs +263 -263
  1386. package/Runtime/Core/Platform/SDK/Auth/SignInWithFacebookLimited.cs +112 -112
  1387. package/Runtime/Core/Platform/SDK/Auth/SignInWithGPG.cs +109 -109
  1388. package/Runtime/Core/Platform/SDK/Auth/SignInWithGameCenter.cs +107 -107
  1389. package/Runtime/Core/Platform/SDK/BeamableApiRequester.cs +112 -112
  1390. package/Runtime/Core/Platform/SDK/Caches/OfflineCache.cs +319 -319
  1391. package/Runtime/Core/Platform/SDK/Calendars/CalendarsService.cs +123 -123
  1392. package/Runtime/Core/Platform/SDK/Chat/ChatProvider.cs +190 -190
  1393. package/Runtime/Core/Platform/SDK/Chat/ChatService.cs +61 -61
  1394. package/Runtime/Core/Platform/SDK/Chat/ChatView.cs +292 -292
  1395. package/Runtime/Core/Platform/SDK/Chat/PubNubChatProvider.cs +51 -51
  1396. package/Runtime/Core/Platform/SDK/Chat/PubNubRoom.cs +135 -135
  1397. package/Runtime/Core/Platform/SDK/Chat/Room.cs +121 -121
  1398. package/Runtime/Core/Platform/SDK/CloudData/CloudDataConsoleCommands.cs +52 -52
  1399. package/Runtime/Core/Platform/SDK/CloudData/CloudDataService.cs +24 -24
  1400. package/Runtime/Core/Platform/SDK/CloudSaving/CloudSavingError.cs +14 -14
  1401. package/Runtime/Core/Platform/SDK/CloudSaving/CloudSavingExtensions.cs +82 -82
  1402. package/Runtime/Core/Platform/SDK/CometClientData.cs +44 -44
  1403. package/Runtime/Core/Platform/SDK/CometClientData.cs.meta +2 -2
  1404. package/Runtime/Core/Platform/SDK/Commerce/CommerceConsoleCommands.cs +45 -45
  1405. package/Runtime/Core/Platform/SDK/Commerce/CommerceService.cs +101 -101
  1406. package/Runtime/Core/Platform/SDK/Commerce/ICommerceConfig.cs +19 -19
  1407. package/Runtime/Core/Platform/SDK/Connectivity/Connectivity.cs +238 -238
  1408. package/Runtime/Core/Platform/SDK/Connectivity/IConnectivityChecker.cs +109 -109
  1409. package/Runtime/Core/Platform/SDK/ErrorCode.cs +62 -62
  1410. package/Runtime/Core/Platform/SDK/Events/EventsService.cs +129 -129
  1411. package/Runtime/Core/Platform/SDK/Groups/GroupsService.cs +58 -58
  1412. package/Runtime/Core/Platform/SDK/Gzip.cs +51 -51
  1413. package/Runtime/Core/Platform/SDK/Inventory/InventoryConsoleCommands.cs +65 -65
  1414. package/Runtime/Core/Platform/SDK/Inventory/InventoryService.cs +149 -149
  1415. package/Runtime/Core/Platform/SDK/Inventory/InventoryService.cs.meta +2 -2
  1416. package/Runtime/Core/Platform/SDK/Inventory.meta +2 -2
  1417. package/Runtime/Core/Platform/SDK/Leaderboard/LeaderboardService.cs +31 -31
  1418. package/Runtime/Core/Platform/SDK/Mail/MailService.cs +44 -44
  1419. package/Runtime/Core/Platform/SDK/Matchmaking/Match.cs +46 -46
  1420. package/Runtime/Core/Platform/SDK/Matchmaking/MatchmakingService.cs +450 -450
  1421. package/Runtime/Core/Platform/SDK/Matchmaking/Ticket.cs +36 -36
  1422. package/Runtime/Core/Platform/SDK/Matchmaking/TicketReservationRequest.cs +43 -43
  1423. package/Runtime/Core/Platform/SDK/Matchmaking/TicketReservationResponse.cs +21 -21
  1424. package/Runtime/Core/Platform/SDK/Notification/Internal/AppleLocalNotificationRelay.cs +117 -117
  1425. package/Runtime/Core/Platform/SDK/Notification/Internal/DummyLocalNotificationRelay.cs +33 -33
  1426. package/Runtime/Core/Platform/SDK/Notification/Internal/GoogleLocalNotificationRelay.cs +86 -86
  1427. package/Runtime/Core/Platform/SDK/Notification/Internal/ILocalNotificationRelay.cs +40 -40
  1428. package/Runtime/Core/Platform/SDK/Notification/Internal/IMessageHandler.cs +11 -11
  1429. package/Runtime/Core/Platform/SDK/Notification/Internal/InGameNotification.cs +39 -39
  1430. package/Runtime/Core/Platform/SDK/Notification/Internal/MultiChannelSubscriptionHandler.cs +90 -90
  1431. package/Runtime/Core/Platform/SDK/Notification/NotificationService.cs +505 -505
  1432. package/Runtime/Core/Platform/SDK/Notification/PubnubData.cs +50 -50
  1433. package/Runtime/Core/Platform/SDK/Notification/PubnubSubscriptionManager.cs +668 -668
  1434. package/Runtime/Core/Platform/SDK/Notification/PushProvider.cs +25 -25
  1435. package/Runtime/Core/Platform/SDK/Notification/PushService.cs +74 -74
  1436. package/Runtime/Core/Platform/SDK/Payments/IBeamablePurchaser.cs +62 -62
  1437. package/Runtime/Core/Platform/SDK/Payments/IPaymentServiceOptions.cs +38 -38
  1438. package/Runtime/Core/Platform/SDK/Payments/PaymentErrorCodes.cs +17 -17
  1439. package/Runtime/Core/Platform/SDK/Payments/PaymentModel.cs +75 -75
  1440. package/Runtime/Core/Platform/SDK/Payments/PaymentService.cs +445 -445
  1441. package/Runtime/Core/Platform/SDK/Payments/PaymentTransaction.cs +138 -138
  1442. package/Runtime/Core/Platform/SDK/Payments/TransactionManager.cs +348 -348
  1443. package/Runtime/Core/Platform/SDK/PlatformFilesystemAccessor.cs +14 -14
  1444. package/Runtime/Core/Platform/SDK/PlatformRequester.cs +761 -761
  1445. package/Runtime/Core/Platform/SDK/PlatformRequesterExceptions.cs +31 -31
  1446. package/Runtime/Core/Platform/SDK/PlatformRequesterExtensions.cs +21 -21
  1447. package/Runtime/Core/Platform/SDK/PlatformRequesterInterfaces.cs +29 -29
  1448. package/Runtime/Core/Platform/SDK/PlatformService.cs +81 -81
  1449. package/Runtime/Core/Platform/SDK/PlatformSubscribable.cs +621 -621
  1450. package/Runtime/Core/Platform/SDK/Polyfill.cs +25 -25
  1451. package/Runtime/Core/Platform/SDK/PubnubNotificationService.cs +42 -42
  1452. package/Runtime/Core/Platform/SDK/Session/Heartbeat.cs +127 -127
  1453. package/Runtime/Core/Platform/SDK/Session/SessionDeviceOptions.cs +213 -213
  1454. package/Runtime/Core/Platform/SDK/Session/SessionParameterProvider.cs +61 -61
  1455. package/Runtime/Core/Platform/SDK/Session/SessionService.cs +292 -292
  1456. package/Runtime/Core/Platform/SDK/Session/SessionServiceHelper.cs +192 -192
  1457. package/Runtime/Core/Platform/SDK/Sim/GameRelayService.cs +243 -243
  1458. package/Runtime/Core/Platform/SDK/Sim/SimBehavior.cs +73 -73
  1459. package/Runtime/Core/Platform/SDK/Sim/SimClient.cs +427 -427
  1460. package/Runtime/Core/Platform/SDK/Sim/SimEvent.cs +39 -39
  1461. package/Runtime/Core/Platform/SDK/Sim/SimFaultHandler.cs +172 -172
  1462. package/Runtime/Core/Platform/SDK/Sim/SimFrame.cs +76 -76
  1463. package/Runtime/Core/Platform/SDK/Sim/SimLog.cs +113 -113
  1464. package/Runtime/Core/Platform/SDK/Sim/SimNetworkInterface.cs +79 -79
  1465. package/Runtime/Core/Platform/SDK/Sim/network/eventStream/SimNetworkEventStream.cs +186 -186
  1466. package/Runtime/Core/Platform/SDK/Sim/network/local/SimNetworkLocal.cs +62 -62
  1467. package/Runtime/Core/Platform/SDK/Social/SocialService.cs +22 -22
  1468. package/Runtime/Core/Platform/SDK/Stats/StatsService.cs +96 -96
  1469. package/Runtime/Core/Platform/SDK/TokenAnalyticsUtil.cs +65 -65
  1470. package/Runtime/Core/Platform/SDK/Tournaments/TournamentConsoleCommands.cs +87 -87
  1471. package/Runtime/Core/Platform/SDK/Tournaments/TournamentService.cs +26 -26
  1472. package/Runtime/Core/Platform/SDK/UnityUserDataCache.cs +169 -169
  1473. package/Runtime/Core/Platform/TaskLikeExtensions.cs +26 -26
  1474. package/Runtime/Core/Pooling/DisablePool.cs +104 -104
  1475. package/Runtime/Core/Pooling/HidePool.cs +203 -203
  1476. package/Runtime/Core/Pooling/HidePoolObject.cs +15 -15
  1477. package/Runtime/Core/Pooling/HidePoolService.cs +64 -64
  1478. package/Runtime/Core/Pooling/StaticClassPool.cs +82 -82
  1479. package/Runtime/Core/Pooling/StringBuilderPool.cs +116 -116
  1480. package/Runtime/Dependencies/GameObjectContext.cs +36 -36
  1481. package/Runtime/Dependencies/ILoadWithContext.cs +12 -12
  1482. package/Runtime/Environment/BeamableEnvironment.cs +134 -134
  1483. package/Runtime/Environment/Resources/env-default.json +1 -1
  1484. package/Runtime/Environment/Resources/versions-default.json +1 -1
  1485. package/Runtime/ExperimentalAPI.cs +49 -49
  1486. package/Runtime/GlobalServices/BeamableGlobalGameObject.cs +37 -37
  1487. package/Runtime/HelpBoxDecoratorAttribute.cs +16 -16
  1488. package/Runtime/InventoryViewEx.cs +171 -171
  1489. package/Runtime/Modules/AccountManagement/Scripts/AccountAvatarBehaviour.cs +51 -51
  1490. package/Runtime/Modules/AccountManagement/Scripts/AccountCustomizationBehaviour.cs +185 -185
  1491. package/Runtime/Modules/AccountManagement/Scripts/AccountDisplayItem.cs +245 -245
  1492. package/Runtime/Modules/AccountManagement/Scripts/AccountEmailLogin.cs +126 -126
  1493. package/Runtime/Modules/AccountManagement/Scripts/AccountExistsSelect.cs +27 -27
  1494. package/Runtime/Modules/AccountManagement/Scripts/AccountForgotPassword.cs +63 -63
  1495. package/Runtime/Modules/AccountManagement/Scripts/AccountGeneralErrorBehaviour.cs +15 -15
  1496. package/Runtime/Modules/AccountManagement/Scripts/AccountMainMenu.cs +315 -315
  1497. package/Runtime/Modules/AccountManagement/Scripts/AccountManagementAdapter.cs +75 -75
  1498. package/Runtime/Modules/AccountManagement/Scripts/AccountManagementBehaviour.cs +68 -68
  1499. package/Runtime/Modules/AccountManagement/Scripts/AccountManagementCommands.cs +50 -50
  1500. package/Runtime/Modules/AccountManagement/Scripts/AccountManagementConfiguration.cs +172 -172
  1501. package/Runtime/Modules/AccountManagement/Scripts/AccountManagementHelper.cs +40 -40
  1502. package/Runtime/Modules/AccountManagement/Scripts/AccountManagementSignals.cs +716 -716
  1503. package/Runtime/Modules/AccountManagement/Scripts/AccountPlayerDataMenu.cs +94 -94
  1504. package/Runtime/Modules/AccountManagement/Scripts/AccountSwitch.cs +55 -55
  1505. package/Runtime/Modules/AccountManagement/Scripts/AccountThirdPartyWaitingMenu.cs +22 -22
  1506. package/Runtime/Modules/AccountManagement/Scripts/AppleSignInBehavior.cs +64 -64
  1507. package/Runtime/Modules/AccountManagement/Scripts/ForgotPasswordArguments.cs +10 -10
  1508. package/Runtime/Modules/AccountManagement/Scripts/GoogleGameServicesBehavior.cs +67 -67
  1509. package/Runtime/Modules/AccountManagement/Scripts/GoogleSignInBehavior.cs +70 -70
  1510. package/Runtime/Modules/AccountManagement/Scripts/LoadingPopup.cs +34 -34
  1511. package/Runtime/Modules/AccountManagement/Scripts/LoginArguments.cs +10 -10
  1512. package/Runtime/Modules/AccountManagement/Scripts/ThirdPartyLoginArgument.cs +10 -10
  1513. package/Runtime/Modules/AccountManagement/Scripts/TokenReference.cs +10 -10
  1514. package/Runtime/Modules/Announcements/Rework/AnnouncementsCollection.cs +53 -53
  1515. package/Runtime/Modules/Announcements/Rework/AnnouncementsPresenter.cs +70 -70
  1516. package/Runtime/Modules/Announcements/Scripts/AnnouncementBehavior.cs +22 -22
  1517. package/Runtime/Modules/Announcements/Scripts/AnnouncementMainMenu.cs +79 -79
  1518. package/Runtime/Modules/Announcements/Scripts/AnnouncementReadMenu.cs +47 -47
  1519. package/Runtime/Modules/Announcements/Scripts/AnnouncementSignals.cs +39 -39
  1520. package/Runtime/Modules/Announcements/Scripts/AnnouncementSummary.cs +19 -19
  1521. package/Runtime/Modules/Avatars/Scripts/AvatarConfiguration.cs +33 -33
  1522. package/Runtime/Modules/Avatars/Scripts/AvatarPickerBehaviour.cs +99 -99
  1523. package/Runtime/Modules/BeamableDisplayModule.cs +83 -83
  1524. package/Runtime/Modules/BeamableModule.cs +17 -17
  1525. package/Runtime/Modules/Calendars/Scripts/CalendarBehaviour.cs +85 -85
  1526. package/Runtime/Modules/Calendars/Scripts/CalendarFlowMainPage.cs +8 -8
  1527. package/Runtime/Modules/Calendars/Scripts/CalendarRewardsDay.cs +32 -32
  1528. package/Runtime/Modules/Console/ConsoleConfiguration.cs +25 -25
  1529. package/Runtime/Modules/Console/ConsoleFlow.cs +662 -662
  1530. package/Runtime/Modules/Content/ContentCache.cs +184 -184
  1531. package/Runtime/Modules/Content/ContentCommands.cs +161 -161
  1532. package/Runtime/Modules/Content/ContentConfiguration.cs +161 -161
  1533. package/Runtime/Modules/Content/ContentParameterProvider.cs +9 -9
  1534. package/Runtime/Modules/Content/ContentService.cs +739 -739
  1535. package/Runtime/Modules/Content/Extensions.cs +42 -42
  1536. package/Runtime/Modules/Content/IManifestResolver.cs +42 -42
  1537. package/Runtime/Modules/Content/Manifest.cs +22 -22
  1538. package/Runtime/Modules/CoreConfiguration.cs +285 -285
  1539. package/Runtime/Modules/CurrencyHUD/CurrencyHUDFlow.cs +74 -74
  1540. package/Runtime/Modules/Generics/CollectionPresenter.cs +9 -9
  1541. package/Runtime/Modules/Generics/DataCollection.cs +19 -19
  1542. package/Runtime/Modules/Generics/DataPresenter.cs +40 -40
  1543. package/Runtime/Modules/Generics/GenericButton.cs +21 -21
  1544. package/Runtime/Modules/Generics/Model.cs +26 -26
  1545. package/Runtime/Modules/Generics/ModelPresenter.cs +25 -25
  1546. package/Runtime/Modules/Input/BeamableInput.cs +45 -45
  1547. package/Runtime/Modules/Input/InputActionArg.cs +55 -55
  1548. package/Runtime/Modules/Inventory/Prototype/GenericComponents/GenericTextButton.cs +36 -36
  1549. package/Runtime/Modules/Inventory/Prototype/InventoryPresenter.cs +159 -159
  1550. package/Runtime/Modules/Inventory/Prototype/ItemPresenter.cs +29 -29
  1551. package/Runtime/Modules/Inventory/Prototype/ItemsCollection.cs +79 -79
  1552. package/Runtime/Modules/Inventory/Prototype/LanguageLocalization/LanguageLocalizationElement.cs +47 -47
  1553. package/Runtime/Modules/Inventory/Prototype/LanguageLocalization/LanguageLocalizationManager.cs +43 -43
  1554. package/Runtime/Modules/Inventory/Prototype/LanguageLocalization/LocalizationHelper.cs +15 -15
  1555. package/Runtime/Modules/Inventory/Scripts/InventoryBehaviour.cs +59 -59
  1556. package/Runtime/Modules/Inventory/Scripts/InventoryCommands.cs +190 -190
  1557. package/Runtime/Modules/Inventory/Scripts/InventoryConfiguration.cs +32 -32
  1558. package/Runtime/Modules/Inventory/Scripts/InventoryGroupUI.cs +56 -56
  1559. package/Runtime/Modules/Inventory/Scripts/InventoryMainMenu.cs +65 -65
  1560. package/Runtime/Modules/Inventory/Scripts/InventoryMenuBehaviour.cs +56 -56
  1561. package/Runtime/Modules/Inventory/Scripts/InventoryObjectUI.cs +38 -38
  1562. package/Runtime/Modules/Inventory/Scripts/InventorySignals.cs +43 -43
  1563. package/Runtime/Modules/Inventory/Scripts/ItemImageSetter.cs +41 -41
  1564. package/Runtime/Modules/Leaderboards/Scripts/LeaderboardBehavior.cs +32 -32
  1565. package/Runtime/Modules/Leaderboards/Scripts/LeaderboardItem.cs +24 -24
  1566. package/Runtime/Modules/Leaderboards/Scripts/LeaderboardMainMenu.cs +80 -80
  1567. package/Runtime/Modules/Leaderboards/Scripts/LeaderboardSignals.cs +33 -33
  1568. package/Runtime/Modules/ModuleConfigurationObject.cs +212 -212
  1569. package/Runtime/Modules/PackageUtil.cs +80 -80
  1570. package/Runtime/Modules/Purchasing/PaymentCommands.cs +55 -55
  1571. package/Runtime/Modules/Purchasing/Steam/SteamPurchasingModule.cs +20 -20
  1572. package/Runtime/Modules/Purchasing/Steam/SteamStore.cs +147 -147
  1573. package/Runtime/Modules/Purchasing/UnityBeamablePurchaser.cs +514 -514
  1574. package/Runtime/Modules/Sessions/SessionConfiguration.cs +16 -16
  1575. package/Runtime/Modules/Shop/Scripts/Defaults/BasicListingRenderer.cs +124 -124
  1576. package/Runtime/Modules/Shop/Scripts/Defaults/BasicStoreRenderer.cs +60 -60
  1577. package/Runtime/Modules/Shop/Scripts/Defaults/ObtainSummaryListCurrencyRenderer.cs +25 -25
  1578. package/Runtime/Modules/Shop/Scripts/Defaults/ObtainSummaryListItemRenderer.cs +23 -23
  1579. package/Runtime/Modules/Shop/Scripts/Defaults/ObtainSummaryListRenderer.cs +37 -37
  1580. package/Runtime/Modules/Shop/Scripts/ListingContent.cs +36 -36
  1581. package/Runtime/Modules/Shop/Scripts/ListingRenderer.cs +10 -10
  1582. package/Runtime/Modules/Shop/Scripts/ObtainRenderer.cs +10 -10
  1583. package/Runtime/Modules/Shop/Scripts/ShopConfiguration.cs +24 -24
  1584. package/Runtime/Modules/Shop/Scripts/ShopFlow.cs +124 -124
  1585. package/Runtime/Modules/Shop/Scripts/ShopLoadingMenu.cs +5 -5
  1586. package/Runtime/Modules/Shop/Scripts/ShopRewardRenderer.cs +26 -26
  1587. package/Runtime/Modules/Shop/Scripts/ShopSignals.cs +45 -45
  1588. package/Runtime/Modules/Signals/DeSignal.cs +68 -68
  1589. package/Runtime/Modules/Signals/DeSignalTower.cs +68 -68
  1590. package/Runtime/Modules/Sound/Scripts/SoundConfiguration.cs +52 -52
  1591. package/Runtime/Modules/Stats/StatBehaviour.cs +181 -181
  1592. package/Runtime/Modules/Stats/StatObject.cs +106 -106
  1593. package/Runtime/Modules/Stats/UserExtensions.cs +89 -89
  1594. package/Runtime/Modules/Theme/Appliers/ButtonStyleApplier.cs +59 -59
  1595. package/Runtime/Modules/Theme/Appliers/GradientStyleApplier.cs +32 -32
  1596. package/Runtime/Modules/Theme/Appliers/ImageStyleApplier.cs +30 -30
  1597. package/Runtime/Modules/Theme/Appliers/LayoutStyleApplier.cs +22 -22
  1598. package/Runtime/Modules/Theme/Appliers/SelectableStyleApplier.cs +32 -32
  1599. package/Runtime/Modules/Theme/Appliers/SoundStyleApplier.cs +27 -27
  1600. package/Runtime/Modules/Theme/Appliers/StringStyleApplier.cs +20 -20
  1601. package/Runtime/Modules/Theme/Appliers/StyleApplier.cs +28 -28
  1602. package/Runtime/Modules/Theme/Appliers/TextStyleApplier.cs +57 -57
  1603. package/Runtime/Modules/Theme/Appliers/TransformStyleApplier.cs +21 -21
  1604. package/Runtime/Modules/Theme/Appliers/WindowStyleApplier.cs +51 -51
  1605. package/Runtime/Modules/Theme/CanHideAttribute.cs +12 -12
  1606. package/Runtime/Modules/Theme/Objects/GradientStyleObject.cs +33 -33
  1607. package/Runtime/Modules/Theme/Objects/ImageStyleObject.cs +27 -27
  1608. package/Runtime/Modules/Theme/Objects/LayoutStyleObject.cs +20 -20
  1609. package/Runtime/Modules/Theme/Objects/SelectableStyleObject.cs +38 -38
  1610. package/Runtime/Modules/Theme/Objects/TextStyleObject.cs +34 -34
  1611. package/Runtime/Modules/Theme/Palette.cs +94 -94
  1612. package/Runtime/Modules/Theme/PaletteStyleCopier.cs +34 -34
  1613. package/Runtime/Modules/Theme/Palettes/ButtonPalette.cs +78 -78
  1614. package/Runtime/Modules/Theme/Palettes/ColorPalette.cs +27 -27
  1615. package/Runtime/Modules/Theme/Palettes/FontPalette.cs +28 -28
  1616. package/Runtime/Modules/Theme/Palettes/GradientPalette.cs +57 -57
  1617. package/Runtime/Modules/Theme/Palettes/ImagePalette.cs +31 -31
  1618. package/Runtime/Modules/Theme/Palettes/LayoutPalette.cs +28 -28
  1619. package/Runtime/Modules/Theme/Palettes/SelectablePalette.cs +36 -36
  1620. package/Runtime/Modules/Theme/Palettes/SoundPalette.cs +30 -30
  1621. package/Runtime/Modules/Theme/Palettes/StringPalette.cs +37 -37
  1622. package/Runtime/Modules/Theme/Palettes/TextPalette.cs +61 -61
  1623. package/Runtime/Modules/Theme/Palettes/TransformPalette.cs +29 -29
  1624. package/Runtime/Modules/Theme/Palettes/WindowPalette.cs +43 -43
  1625. package/Runtime/Modules/Theme/StyleBehaviour.cs +73 -73
  1626. package/Runtime/Modules/Theme/StyleObject.cs +46 -46
  1627. package/Runtime/Modules/Theme/ThemeConfiguration.cs +9 -9
  1628. package/Runtime/Modules/Theme/ThemeObject.cs +160 -160
  1629. package/Runtime/Modules/Tournaments/Scripts/CountdownTextBehaviour.cs +65 -65
  1630. package/Runtime/Modules/Tournaments/Scripts/FixedCharacterFitter.cs +49 -49
  1631. package/Runtime/Modules/Tournaments/Scripts/MockTournamentService.cs +221 -221
  1632. package/Runtime/Modules/Tournaments/Scripts/TabBehaviour.cs +97 -97
  1633. package/Runtime/Modules/Tournaments/Scripts/TournamenClaimableRewardBehaviour.cs +37 -37
  1634. package/Runtime/Modules/Tournaments/Scripts/TournamentColorConstraint.cs +62 -62
  1635. package/Runtime/Modules/Tournaments/Scripts/TournamentDataSource.cs +74 -74
  1636. package/Runtime/Modules/Tournaments/Scripts/TournamentEntryBehavior.cs +221 -221
  1637. package/Runtime/Modules/Tournaments/Scripts/TournamentEntryPlayerBehaviour.cs +152 -152
  1638. package/Runtime/Modules/Tournaments/Scripts/TournamentInfoBehaviour.cs +33 -33
  1639. package/Runtime/Modules/Tournaments/Scripts/TournamentInfoDetailBehaviour.cs +8 -8
  1640. package/Runtime/Modules/Tournaments/Scripts/TournamentInfoDetailContainerBehaviour.cs +32 -32
  1641. package/Runtime/Modules/Tournaments/Scripts/TournamentNumbersBehaviour.cs +20 -20
  1642. package/Runtime/Modules/Tournaments/Scripts/TournamentRewardBehaviour.cs +21 -21
  1643. package/Runtime/Modules/Tournaments/Scripts/TournamentRewardEntryBehaviour.cs +32 -32
  1644. package/Runtime/Modules/Tournaments/Scripts/TournamentRewardPanelBehaviour.cs +78 -78
  1645. package/Runtime/Modules/Tournaments/Scripts/TournamentScoreUtil.cs +77 -77
  1646. package/Runtime/Modules/Tournaments/Scripts/TournamentStageGainBehaviour.cs +25 -25
  1647. package/Runtime/Modules/Tournaments/Scripts/TournamentsBehaviour.cs +630 -630
  1648. package/Runtime/Modules/Tournaments/Scripts/TournamentsConfiguration.cs +32 -32
  1649. package/Runtime/PaymentExtensions.cs +16 -16
  1650. package/Runtime/PlatformConsoleCommands.cs +559 -559
  1651. package/Runtime/PlatformConsoleCommands.cs.meta +2 -2
  1652. package/Runtime/Player/ApiServices.cs +162 -162
  1653. package/Runtime/Player/BeamableBehaviour.cs +142 -142
  1654. package/Runtime/Player/Leaderboards/LeaderboardLists.cs +216 -216
  1655. package/Runtime/Player/Leaderboards/Lists/FriendScoresList.cs +76 -76
  1656. package/Runtime/Player/Leaderboards/Lists/NearbyScoresList.cs +67 -67
  1657. package/Runtime/Player/Leaderboards/Lists/PlayerCollectionScoresList.cs +52 -52
  1658. package/Runtime/Player/Leaderboards/Lists/TopScoresList.cs +41 -41
  1659. package/Runtime/Player/Leaderboards/PlayerLeaderboard.cs +774 -774
  1660. package/Runtime/Player/Leaderboards/PlayerLeaderboards.cs +95 -95
  1661. package/Runtime/Player/MonoBehaviourExtensions.cs +17 -17
  1662. package/Runtime/Player/ObservableAccessToken.cs +12 -12
  1663. package/Runtime/Player/ObservableUser.cs +30 -30
  1664. package/Runtime/Player/PlayerAccounts.cs +2132 -2132
  1665. package/Runtime/Player/PlayerAnnouncements.cs +239 -239
  1666. package/Runtime/Player/PlayerCurrencies.cs +157 -157
  1667. package/Runtime/Player/PlayerFriends.cs +661 -661
  1668. package/Runtime/Player/PlayerInventory.cs +893 -893
  1669. package/Runtime/Player/PlayerItemGroup.cs +200 -200
  1670. package/Runtime/Player/PlayerLobby.cs +328 -328
  1671. package/Runtime/Player/PlayerParty.cs +601 -601
  1672. package/Runtime/Player/PlayerStateService.cs +44 -44
  1673. package/Runtime/Player/PlayerStats.cs +238 -238
  1674. package/Runtime/Player/SdkEventService.cs +259 -259
  1675. package/Runtime/PromiseExtensions.cs +304 -304
  1676. package/Runtime/ReflectionCache/BeamReflectionCache.cs +186 -186
  1677. package/Runtime/ReflectionCache/ReflectionSystemObject.cs +55 -55
  1678. package/Runtime/ReflectionCache/ThirdPartyIdentityReflectionCache.cs +84 -84
  1679. package/Runtime/Server/BeamContextExtensions.cs +13 -13
  1680. package/Runtime/Server/Content/ApiContentExtensions.cs +88 -88
  1681. package/Runtime/Server/LegacyCommon/Mocks/MongoDB/Bson.meta +11 -11
  1682. package/Runtime/Server/MicroserviceClient.cs +415 -415
  1683. package/Runtime/Server/MicroserviceIndividualization.cs +80 -80
  1684. package/Runtime/Server/MicroservicePrefixService.cs +10 -10
  1685. package/Runtime/Server/ThirdPartyFederatedLoginExtensions.cs +60 -60
  1686. package/Runtime/UI/Buttons/DeButtonBehaviour.cs +33 -33
  1687. package/Runtime/UI/Layouts/MediaQueryBehaviour.cs +74 -74
  1688. package/Runtime/UI/Layouts/MediaQueryObject.cs +118 -118
  1689. package/Runtime/UI/Layouts/MediaSourceBehaviour.cs +49 -49
  1690. package/Runtime/UI/Layouts/ReparenterBehaviour.cs +86 -86
  1691. package/Runtime/UI/Layouts/StackLayout.cs +70 -70
  1692. package/Runtime/UI/Lightbeam/DependencyExtensions.cs +359 -359
  1693. package/Runtime/UI/Lightbeam/LightBeam.cs +155 -155
  1694. package/Runtime/UI/Lightbeam/UIExtensions.cs +182 -182
  1695. package/Runtime/UI/Prompt/DePromptBehaviour.cs +38 -38
  1696. package/Runtime/UI/Prompt/DePromptData.cs +14 -14
  1697. package/Runtime/UI/Scripts/AddressableImageBehaviour.cs +15 -15
  1698. package/Runtime/UI/Scripts/AddressableSpriteLoader.cs +107 -107
  1699. package/Runtime/UI/Scripts/BackButtonBehaviour.cs +14 -14
  1700. package/Runtime/UI/Scripts/BeamableAnimationUtil.cs +100 -100
  1701. package/Runtime/UI/Scripts/BeamableButton.cs +33 -33
  1702. package/Runtime/UI/Scripts/BeamableWindow.cs +15 -15
  1703. package/Runtime/UI/Scripts/ClickOffBehaviour.cs +42 -42
  1704. package/Runtime/UI/Scripts/CloseButtonBehaviour.cs +14 -14
  1705. package/Runtime/UI/Scripts/EventSoundBehaviour.cs +55 -55
  1706. package/Runtime/UI/Scripts/GameObjectToggler.cs +25 -25
  1707. package/Runtime/UI/Scripts/InputReference.cs +24 -24
  1708. package/Runtime/UI/Scripts/InputValidationBehaviour.cs +153 -153
  1709. package/Runtime/UI/Scripts/LoadingDisableBehaviour.cs +87 -87
  1710. package/Runtime/UI/Scripts/LoadingIndicator.cs +117 -117
  1711. package/Runtime/UI/Scripts/Menu.cs +47 -47
  1712. package/Runtime/UI/Scripts/MenuManagementBehaviour.cs +268 -268
  1713. package/Runtime/UI/Scripts/MobileUtilities.cs +84 -84
  1714. package/Runtime/UI/Scripts/OfflineNotificationBehaviour.cs +37 -37
  1715. package/Runtime/UI/Scripts/OfflineObject.cs +69 -69
  1716. package/Runtime/UI/Scripts/ScrollButton.cs +23 -23
  1717. package/Runtime/UI/Scripts/ScrollDotsBehaviour.cs +83 -83
  1718. package/Runtime/UI/Scripts/ScrollToAlphaBehaviour.cs +47 -47
  1719. package/Runtime/UI/Scripts/StickyScrollElement.cs +176 -176
  1720. package/Runtime/UI/Scripts/TextReference.cs +15 -15
  1721. package/Runtime/UI/Scripts/TextReferenceBase.cs +14 -14
  1722. package/Runtime/UI/Scripts/TransformOffsetBehaviour.cs +61 -61
  1723. package/Runtime/UI/TextField/DeTextFieldBehaviour.cs +48 -48
  1724. package/Runtime/VectorIntExtensions.cs +45 -45
  1725. package/Samples~/LightBeamSamples/AccountManager/AccountExampleConfig.cs +15 -15
  1726. package/Samples~/LightBeamSamples/AccountManager/AccountManager.cs +57 -57
  1727. package/Samples~/LightBeamSamples/AccountManager/Prefabs/AccountDetailsBehaviour/AccountDetailsBehaviour.cs +53 -53
  1728. package/Samples~/LightBeamSamples/AccountManager/Prefabs/AccountDisplayBehaviour/AccountDisplayBehaviour.cs +51 -51
  1729. package/Samples~/LightBeamSamples/AccountManager/Prefabs/AccountSwitchPage/AccountSwitchPage.cs +42 -42
  1730. package/Samples~/LightBeamSamples/AccountManager/Prefabs/AvatarDisplay/AvatarDisplayBehaviour.cs +21 -21
  1731. package/Samples~/LightBeamSamples/AccountManager/Prefabs/ForgotPasswordPage/ForgotPasswordPage.cs +64 -64
  1732. package/Samples~/LightBeamSamples/AccountManager/Prefabs/HomePage/HomePage.cs +70 -70
  1733. package/Samples~/LightBeamSamples/AccountManager/Prefabs/RecoverEmailPage/RecoverEmailPage.cs +131 -131
  1734. package/Samples~/LightBeamSamples/AccountManager/Prefabs/RegisterEmailPage/RegisterEmailPage.cs +79 -79
  1735. package/Samples~/LightBeamSamples/CurrencyHud/CurrencyHudManager.cs +40 -40
  1736. package/Samples~/LightBeamSamples/CurrencyHud/Prefabs/CurrencyView/CurrencyViewBehaviour.cs +50 -50
  1737. package/Samples~/LightBeamSamples/FriendsManager/FriendsExampleConfig.cs +13 -13
  1738. package/Samples~/LightBeamSamples/FriendsManager/FriendsManager.cs +32 -32
  1739. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/BlockedDisplay/BlockedPlayersDisplayBehaviour.cs +25 -25
  1740. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/FriendDisplay/FriendDisplayBehaviour.cs +31 -31
  1741. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/HomePage/HomePage.cs +31 -31
  1742. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/PlayerFriendsDisplay/PlayerFriendsBehaviour.cs +194 -194
  1743. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/ReceivedInvitesDisplay/ReceivedInviteDisplayBehaviour.cs +31 -31
  1744. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/Selector/Editor/SelectorButtonBehaviourEditor.cs +27 -27
  1745. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/Selector/SelectorButtonBehaviour.cs +13 -13
  1746. package/Samples~/LightBeamSamples/FriendsManager/Prefabs/SentInvitesDisplay/SentInviteDisplayBehaviour.cs +25 -25
  1747. package/Samples~/LightBeamSamples/Inventory/InventoryExampleConfig.cs +12 -12
  1748. package/Samples~/LightBeamSamples/Inventory/InventoryManager.cs +32 -32
  1749. package/Samples~/LightBeamSamples/Inventory/Prefabs/CurrencyDisplay/CurrencyDisplayBehaviour.cs +48 -48
  1750. package/Samples~/LightBeamSamples/Inventory/Prefabs/CurrencyInfoPage/CurrencyInfoBehaviour.cs +70 -70
  1751. package/Samples~/LightBeamSamples/Inventory/Prefabs/HomePage/HomePage.cs +82 -82
  1752. package/Samples~/LightBeamSamples/Inventory/Prefabs/ItemDisplay/ItemDisplayBehaviour.cs +51 -51
  1753. package/Samples~/LightBeamSamples/Inventory/Prefabs/ItemInfoPage/ItemInfoPage.cs +74 -74
  1754. package/Samples~/LightBeamSamples/Inventory/Prefabs/PropertyDisplay/PropertyDisplayBehaviour.cs +21 -21
  1755. package/Samples~/LightBeamSamples/LobbyManager/LobbyExampleConfig.cs +14 -14
  1756. package/Samples~/LightBeamSamples/LobbyManager/LobbyManager.cs +36 -36
  1757. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/CreateLobbyDisplay/CreateLobbyDisplayBehaviour.cs +54 -54
  1758. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/FindLobbyDisplay/FindLobbyDisplayBehaviour.cs +36 -36
  1759. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/HomePage/HomePage.cs +71 -71
  1760. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/JoinLobbyDisplay/JoinLobbyDisplayBehaviour.cs +75 -75
  1761. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/LobbyDetailsDisplay/LobbyDetailsDisplayBehaviour.cs +80 -80
  1762. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/LobbyDisplay/LobbyDisplayBehaviour.cs +27 -27
  1763. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/PlayerDisplay/PlayerIdDisplayBehaviour.cs +17 -17
  1764. package/Samples~/LightBeamSamples/LobbyManager/Prefabs/PlayerLobby/PlayerLobbyBehaviour.cs +112 -112
  1765. package/Samples~/LightBeamSamples/LootBox/BeamableServices~/LootBoxService/LootBoxService.cs +45 -45
  1766. package/Samples~/LightBeamSamples/LootBox/BeamableServices~/LootBoxService/Program.cs +20 -20
  1767. package/Samples~/LightBeamSamples/LootBox/LootBoxExampleConfig.cs +8 -8
  1768. package/Samples~/LightBeamSamples/LootBox/LootBoxManager.cs +30 -30
  1769. package/Samples~/LightBeamSamples/LootBox/Prefabs/LootBoxPage/LootBoxPage.cs +47 -47
  1770. package/Samples~/LightBeamSamples/SceneLoader/Config/LightBeamSceneConfigObject_Editor.cs +37 -37
  1771. package/Samples~/LightBeamSamples/SceneLoader/LightBeamBooter.cs +485 -485
  1772. package/Samples~/LightBeamSamples/SceneLoader/Prefabs/SceneDisplay/SceneDisplayBehaviour.cs +25 -25
  1773. package/Samples~/SampleProjectBase/Scripts/Editor/Beamable/Samples/SampleProjectBase/AutoOpenReadme.cs +46 -46
  1774. package/Samples~/SampleProjectBase/Scripts/Editor/Beamable/Samples/SampleProjectBase/BeamableReadmeEditor.cs +158 -158
  1775. package/Samples~/SampleProjectBase/Scripts/Runtime/Beamable/Samples/SampleProjectBase/Readme.cs +33 -33
  1776. package/Template/SharedSample.cs +19 -19
  1777. package/Tests/Editor/AliasHelperTests.cs +64 -64
  1778. package/Tests/Editor/CLI/DataTransferTests.cs +65 -65
  1779. package/Tests/Editor/Common/BeamUtil/SanitizeStringForPathTests.cs +18 -18
  1780. package/Tests/Editor/Common/TrieTests.cs +253 -253
  1781. package/Tests/Editor/Common/TryInvokeCallbackTests.cs +93 -93
  1782. package/Tests/Editor/ContentObjectTests.cs +65 -65
  1783. package/Tests/Editor/EditorDisruptorEngine/Content/ContentObjectFieldTests.cs +81 -81
  1784. package/Tests/Editor/EditorDisruptorEngine/Content/ContentObjectLinkRefTests.cs +81 -81
  1785. package/Tests/Editor/EditorDisruptorEngine/Content/ExampleContent.cs +10 -10
  1786. package/Tests/Editor/EditorDisruptorEngine/Content/Schedules/CronTests.cs +189 -189
  1787. package/Tests/Editor/EditorTest.cs +51 -51
  1788. package/Tests/Editor/JsonPerfTesting.cs +117 -117
  1789. package/Tests/Editor/JsonPerfTesting_PayloadSize.cs +96 -96
  1790. package/Tests/Editor/JsonTestHelp.cs +82 -82
  1791. package/Tests/Editor/MockLogProvider.cs +47 -47
  1792. package/Tests/Editor/PreserveAttributeTests.cs +26 -26
  1793. package/Tests/Editor/PromiseTests/ErrorTests.cs +582 -582
  1794. package/Tests/Editor/SmallerJSON/InfinityTests.cs +61 -61
  1795. package/Tests/Editor/SmallerJSON/JsonPathTests.cs +107 -107
  1796. package/Tests/Editor/SmallerJSON/JsonSerializeTest.cs +135 -135
  1797. package/Tests/Runtime/Beamable/BeamContextInitTests.cs +103 -103
  1798. package/Tests/Runtime/Beamable/BeamContextTest.cs +72 -72
  1799. package/Tests/Runtime/Beamable/BeamableTest.cs +46 -46
  1800. package/Tests/Runtime/Beamable/Content/ClientManifest/ParseCSVTests.cs +102 -102
  1801. package/Tests/Runtime/Beamable/Content/ContentRegistry/GetTypeFromIdTests.cs +164 -164
  1802. package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/DeserializeEmptyFields.cs +114 -114
  1803. package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/DeserializeTests.cs +1343 -1343
  1804. package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/EscapedStringTests.cs +119 -119
  1805. package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/GetNullStringForTypeTests.cs +104 -104
  1806. package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/SerializeFieldSubclassSerializeTests.cs +157 -157
  1807. package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/SerializeTests.cs +1066 -1066
  1808. package/Tests/Runtime/Beamable/Content/Serialization/TestContentRef.cs +66 -66
  1809. package/Tests/Runtime/Beamable/Content/Serialization/VipContentSerialization/VipContentSerializationTests.cs +34 -34
  1810. package/Tests/Runtime/Beamable/DebouncerTests.cs +110 -110
  1811. package/Tests/Runtime/Beamable/Dependencies/ScopingTests.cs +235 -235
  1812. package/Tests/Runtime/Beamable/Environment/PackageVersionTests/FromSemanticVersionStringTests.cs +161 -161
  1813. package/Tests/Runtime/Beamable/Environment/PackageVersionTests/ImplicitConversionTest.cs +24 -24
  1814. package/Tests/Runtime/Beamable/Environment/PackageVersionTests/RangeOperatorTests.cs +209 -209
  1815. package/Tests/Runtime/Beamable/Environment/PackageVersionTests/ToStringTests.cs +64 -64
  1816. package/Tests/Runtime/Beamable/MockAuthService.cs +218 -218
  1817. package/Tests/Runtime/Beamable/MockBeamContext.cs +171 -171
  1818. package/Tests/Runtime/Beamable/MockBeamableApi.cs +122 -122
  1819. package/Tests/Runtime/Beamable/MockConfigurationHelper.cs +19 -19
  1820. package/Tests/Runtime/Beamable/MockFileAccessor.cs +19 -19
  1821. package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/AcceptAccountSwitchTests.cs +95 -95
  1822. package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/CheckSignedInUserTests.cs +134 -134
  1823. package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/LoginTests.cs +108 -108
  1824. package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/TestHelperExtensions.cs +38 -38
  1825. package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/UpdateLoginEmailTests.cs +81 -81
  1826. package/Tests/Runtime/Beamable/Modules/Leaderboards/IncrementTests.cs +88 -88
  1827. package/Tests/Runtime/Beamable/Modules/Leaderboards/LeaderboardViewSerializeTests.cs +109 -109
  1828. package/Tests/Runtime/Beamable/Modules/Shop/ListingContentTests/ValidateListingTests.cs +66 -66
  1829. package/Tests/Runtime/Beamable/Modules/Stats/StatObjectTests/WriteTests.cs +42 -42
  1830. package/Tests/Runtime/Beamable/Modules/Tournaments/TournamentScoreUtilTests/GetShortScoreTests.cs +329 -329
  1831. package/Tests/Runtime/Beamable/Platform/AccessTokenStorageTests.cs +154 -154
  1832. package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/AuthServiceTestBase.cs +39 -39
  1833. package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/CustomDeviceIdTests.cs +51 -51
  1834. package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/GetUserTests.cs +33 -33
  1835. package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/IsEmailAvailableTests.cs +58 -58
  1836. package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/LoginTests.cs +37 -37
  1837. package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/RemoveDeviceIdTests.cs +69 -69
  1838. package/Tests/Runtime/Beamable/Platform/Connectivity/MockConnectivityService.cs +45 -45
  1839. package/Tests/Runtime/Beamable/Platform/Content/MockContentService.cs +140 -140
  1840. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryResponseTests/MergeViewTests.cs +245 -245
  1841. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryServiceTests/GetItemTests.cs +225 -225
  1842. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryServiceTests/InventoryServiceTestBase.cs +52 -52
  1843. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryServiceTests/UpdateTests.cs +73 -73
  1844. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryTestItem.cs +26 -26
  1845. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryUpdateBuilderTests/AddItemTests.cs +24 -24
  1846. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryUpdateBuilderTests/SerializationTests.cs +227 -227
  1847. package/Tests/Runtime/Beamable/Platform/Inventory/InventoryUpdateBuilderTests/UnitySerializationTests.cs +215 -215
  1848. package/Tests/Runtime/Beamable/Platform/Mail/MailTests.cs +67 -67
  1849. package/Tests/Runtime/Beamable/Platform/MockConnectivityChecker.cs +24 -24
  1850. package/Tests/Runtime/Beamable/Platform/MockPlatformAPI.cs +398 -398
  1851. package/Tests/Runtime/Beamable/Platform/MockPlatformRequester.cs +78 -78
  1852. package/Tests/Runtime/Beamable/Platform/MockPlatformService.cs +47 -47
  1853. package/Tests/Runtime/Beamable/Platform/MockRequesterExtensions.cs +13 -13
  1854. package/Tests/Runtime/Beamable/Platform/TestUtil.cs +59 -59
  1855. package/Tests/Runtime/Beamable/Player/Accounts/ExternalIdentityQueryArgsTests.cs +132 -132
  1856. package/Tests/Runtime/Beamable/Player/Announcements/AnnouncementGiftSerialization.cs +117 -117
  1857. package/Tests/Runtime/Beamable/Player/Announcements/MockAnnouncementsApi.cs +45 -45
  1858. package/Tests/Runtime/Beamable/Player/Announcements/MockNotificationService.cs +70 -70
  1859. package/Tests/Runtime/Beamable/Player/Inventory/GetItemTests.cs +485 -485
  1860. package/Tests/Runtime/Beamable/Player/Inventory/MockInventoryApi.cs +77 -77
  1861. package/Tests/Runtime/Beamable/Player/Leaderboards/ResortTests.cs +236 -236
  1862. package/Tests/Runtime/Beamable/Pooling/StringBuilderPoolTests/SpawnTests.cs +55 -55
  1863. package/Tests/Runtime/Beamable/Promises/PromisePlayModeTests.cs +145 -145
  1864. package/Tests/Runtime/Beamable/Promises/SequenceTests.cs +45 -45
  1865. package/Tests/Runtime/Beamable/QueryBuilder/QueryBuilderTests.cs +94 -94
  1866. package/Tests/Runtime/Server/Runtime/MicroserviceClient/RequestTests.cs +374 -374
  1867. package/Tests/Runtime/Server/Runtime/MicroserviceClient/TestClient.cs +78 -78
  1868. package/Tests/Runtime/Server/Runtime/TestRegistrations.cs +22 -22
  1869. 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
+ }