@xmobitea/gn-typescript-client 2.6.12 → 2.6.13-tsc

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 (241) hide show
  1. package/dist/index.d.ts +2 -2
  2. package/dist/index.js +339 -34236
  3. package/dist/runtime/GNNetwork.d.ts +1 -1
  4. package/dist/runtime/GNNetwork.js +273 -0
  5. package/dist/runtime/GNNetworkAuthenticateApi.js +122 -0
  6. package/dist/runtime/GNNetworkCharacterPlayerApi.js +968 -0
  7. package/dist/runtime/GNNetworkCloudScriptApi.js +104 -0
  8. package/dist/runtime/GNNetworkContentApi.js +140 -0
  9. package/dist/runtime/GNNetworkDashboardApi.js +170 -0
  10. package/dist/runtime/GNNetworkGamePlayerApi.js +950 -0
  11. package/dist/runtime/GNNetworkGroupApi.js +734 -0
  12. package/dist/runtime/GNNetworkInventoryApi.js +626 -0
  13. package/dist/runtime/GNNetworkMasterPlayerApi.js +1550 -0
  14. package/dist/runtime/GNNetworkMultiplayerApi.js +194 -0
  15. package/dist/runtime/GNNetworkStoreInventoryApi.js +266 -0
  16. package/dist/runtime/common/Action0.js +1 -0
  17. package/dist/runtime/common/Action1.js +1 -0
  18. package/dist/runtime/common/Action2.js +1 -0
  19. package/dist/runtime/common/Action3.js +1 -0
  20. package/dist/runtime/common/Action4.js +1 -0
  21. package/dist/runtime/common/GNData.js +209 -0
  22. package/dist/runtime/config/GNServerSettings.js +156 -0
  23. package/dist/runtime/constant/Commands.js +20 -0
  24. package/dist/runtime/constant/EventCode.js +8 -0
  25. package/dist/runtime/constant/OperationCode.js +221 -0
  26. package/dist/runtime/constant/ReturnCode.js +14 -0
  27. package/dist/runtime/constant/enumType/ExecuteResponseStatus.js +8 -0
  28. package/dist/runtime/constant/enumType/FriendStatus.js +7 -0
  29. package/dist/runtime/constant/enumType/GoogleLoginType.js +5 -0
  30. package/dist/runtime/constant/enumType/GroupStatus.js +7 -0
  31. package/dist/runtime/constant/enumType/InvalidMemberType.js +18 -0
  32. package/dist/runtime/constant/enumType/ItemType.js +5 -0
  33. package/dist/runtime/constant/enumType/MatchmakingMemberStatus.js +6 -0
  34. package/dist/runtime/constant/enumType/MatchmakingTicketStatus.js +8 -0
  35. package/dist/runtime/constant/enumType/OwnerType.js +9 -0
  36. package/dist/runtime/constant/enumType/PermissionDataItem.js +5 -0
  37. package/dist/runtime/constant/enumType/PushPlatformType.js +5 -0
  38. package/dist/runtime/constant/enumType/RequestRole.js +6 -0
  39. package/dist/runtime/constant/enumType/RequestType.js +15 -0
  40. package/dist/runtime/constant/enumType/StoreItemType.js +5 -0
  41. package/dist/runtime/constant/enumType/StoreReceiveType.js +8 -0
  42. package/dist/runtime/constant/errorCode/ErrorCode.js +52 -0
  43. package/dist/runtime/constant/parameterCode/ParameterCode.js +617 -0
  44. package/dist/runtime/entity/DataMember.js +208 -0
  45. package/dist/runtime/entity/GNMetadata.js +11 -0
  46. package/dist/runtime/entity/InvalidMember.js +1 -0
  47. package/dist/runtime/entity/OperationEvent.js +24 -0
  48. package/dist/runtime/entity/OperationRequest.js +42 -0
  49. package/dist/runtime/entity/OperationResponse.js +73 -0
  50. package/dist/runtime/entity/models/AuthenticateModels.js +426 -0
  51. package/dist/runtime/entity/models/AuthenticateRequestModels.js +188 -0
  52. package/dist/runtime/entity/models/AuthenticateResponseModels.js +131 -0
  53. package/dist/runtime/entity/models/CharacterPlayerModels.js +1433 -0
  54. package/dist/runtime/entity/models/CharacterPlayerRequestModels.js +1386 -0
  55. package/dist/runtime/entity/models/CharacterPlayerResponseModels.js +376 -0
  56. package/dist/runtime/entity/models/CloudScriptModels.js +197 -0
  57. package/dist/runtime/entity/models/CloudScriptRequestModels.js +138 -0
  58. package/dist/runtime/entity/models/CloudScriptResponseModels.js +40 -0
  59. package/dist/runtime/entity/models/ContentModels.js +203 -0
  60. package/dist/runtime/entity/models/ContentRequestModels.js +190 -0
  61. package/dist/runtime/entity/models/ContentResponseModels.js +54 -0
  62. package/dist/runtime/entity/models/DashboardModels.js +3002 -0
  63. package/dist/runtime/entity/models/DashboardRequestModels.js +268 -0
  64. package/dist/runtime/entity/models/DashboardResponseModels.js +187 -0
  65. package/dist/runtime/entity/models/GamePlayerModels.js +1591 -0
  66. package/dist/runtime/entity/models/GamePlayerRequestModels.js +1360 -0
  67. package/dist/runtime/entity/models/GamePlayerResponseModels.js +369 -0
  68. package/dist/runtime/entity/models/GenericModels.js +177 -0
  69. package/dist/runtime/entity/models/GroupModels.js +1135 -0
  70. package/dist/runtime/entity/models/GroupRequestModels.js +1048 -0
  71. package/dist/runtime/entity/models/GroupResponseModels.js +285 -0
  72. package/dist/runtime/entity/models/InventoryModels.js +915 -0
  73. package/dist/runtime/entity/models/InventoryRequestModels.js +892 -0
  74. package/dist/runtime/entity/models/InventoryResponseModels.js +243 -0
  75. package/dist/runtime/entity/models/MasterPlayerModels.js +2573 -0
  76. package/dist/runtime/entity/models/MasterPlayerRequestModels.js +2228 -0
  77. package/dist/runtime/entity/models/MasterPlayerResponseModels.js +607 -0
  78. package/dist/runtime/entity/models/MultiplayerModels.js +404 -0
  79. package/dist/runtime/entity/models/MultiplayerRequestModels.js +268 -0
  80. package/dist/runtime/entity/models/MultiplayerResponseModels.js +75 -0
  81. package/dist/runtime/entity/models/StoreInventoryModels.js +797 -0
  82. package/dist/runtime/entity/models/StoreInventoryRequestModels.js +372 -0
  83. package/dist/runtime/entity/models/StoreInventoryResponseModels.js +103 -0
  84. package/dist/runtime/entity/request/CustomOperationRequest.js +24 -0
  85. package/dist/runtime/entity/response/CustomOperationResponse.js +29 -0
  86. package/dist/runtime/entity/response/GetAuthInfoResponse.js +2 -0
  87. package/dist/runtime/entity/response/HealthCheckResponse.js +2 -0
  88. package/dist/runtime/entity/response/UploadFileResponse.js +2 -0
  89. package/dist/runtime/helper/CodeHelper.js +63 -0
  90. package/dist/runtime/helper/ConverterService.js +275 -0
  91. package/dist/runtime/helper/EnumUtility.js +33 -0
  92. package/dist/runtime/helper/GNSupport.d.ts +20 -0
  93. package/dist/runtime/helper/GNSupport.js +47 -0
  94. package/dist/runtime/helper/GNUtils.js +72 -0
  95. package/dist/runtime/helper/MessagePackConverterService.js +9 -0
  96. package/dist/runtime/{entity → helper}/OperationHelper.d.ts +1 -1
  97. package/dist/runtime/helper/OperationHelper.js +24 -0
  98. package/dist/runtime/helper/StorageService.d.ts +18 -0
  99. package/dist/runtime/helper/StorageService.js +62 -0
  100. package/dist/runtime/logger/GNDebug.js +29 -0
  101. package/dist/runtime/networking/AuthenticateStatus.js +14 -0
  102. package/dist/runtime/networking/IPeer.js +1 -0
  103. package/dist/runtime/networking/NetworkingPeer.d.ts +1 -1
  104. package/dist/runtime/networking/NetworkingPeer.js +210 -0
  105. package/dist/runtime/networking/OperationPending.js +53 -0
  106. package/dist/runtime/networking/PeerBase.js +161 -0
  107. package/dist/runtime/networking/handler/IServerEventHandler.js +13 -0
  108. package/dist/runtime/networking/handler/OnCharacterPlayerFriendUpdateEventHandler.js +39 -0
  109. package/dist/runtime/networking/handler/OnCharacterPlayerGroupUpdateEventHandler.js +39 -0
  110. package/dist/runtime/networking/handler/OnGamePlayerFriendUpdateEventHandler.js +39 -0
  111. package/dist/runtime/networking/handler/OnGamePlayerGroupUpdateEventHandler.js +39 -0
  112. package/dist/runtime/networking/handler/OnGroupMemberUpdateEventHandler.js +35 -0
  113. package/dist/runtime/networking/handler/OnGroupMessageUpdateEventHandler.js +43 -0
  114. package/dist/runtime/networking/http/HttpPeer.js +123 -0
  115. package/dist/runtime/networking/http/NetworkingHttpPeerBase.js +9 -0
  116. package/dist/runtime/networking/http/NetworkingPeerAxiosRequest.js +179 -0
  117. package/dist/runtime/networking/socket/NetworkingPeerSocketIOClient.js +130 -0
  118. package/dist/runtime/networking/socket/NetworkingSocketPeerBase.js +165 -0
  119. package/dist/runtime/networking/socket/SocketPeer.js +115 -0
  120. package/dist/runtime/typescript/ServiceUpdate.d.ts +2 -0
  121. package/dist/runtime/typescript/ServiceUpdate.js +22 -0
  122. package/docs/COCOS_CREATOR_INTEGRATION.md +116 -0
  123. package/examples/cocos-creator/GearNExample.ts.txt +176 -0
  124. package/package.json +4 -3
  125. package/srcSwift/Package.swift +32 -0
  126. package/srcSwift/Sources/GearN/runtime/GNNetwork.swift +530 -0
  127. package/srcSwift/Sources/GearN/runtime/GNNetworkAuthenticateApi.swift +178 -0
  128. package/srcSwift/Sources/GearN/runtime/GNNetworkCharacterPlayerApi.swift +1162 -0
  129. package/srcSwift/Sources/GearN/runtime/GNNetworkCloudScriptApi.swift +154 -0
  130. package/srcSwift/Sources/GearN/runtime/GNNetworkContentApi.swift +208 -0
  131. package/srcSwift/Sources/GearN/runtime/GNNetworkDashboardApi.swift +240 -0
  132. package/srcSwift/Sources/GearN/runtime/GNNetworkGamePlayerApi.swift +1369 -0
  133. package/srcSwift/Sources/GearN/runtime/GNNetworkGroupApi.swift +1100 -0
  134. package/srcSwift/Sources/GearN/runtime/GNNetworkInventoryApi.swift +937 -0
  135. package/srcSwift/Sources/GearN/runtime/GNNetworkMasterPlayerApi.swift +2323 -0
  136. package/srcSwift/Sources/GearN/runtime/GNNetworkMultiplayerApi.swift +298 -0
  137. package/srcSwift/Sources/GearN/runtime/GNNetworkStoreInventoryApi.swift +397 -0
  138. package/srcSwift/Sources/GearN/runtime/common/Action0.swift +3 -0
  139. package/srcSwift/Sources/GearN/runtime/common/Action1.swift +3 -0
  140. package/srcSwift/Sources/GearN/runtime/common/Action2.swift +3 -0
  141. package/srcSwift/Sources/GearN/runtime/common/Action3.swift +3 -0
  142. package/srcSwift/Sources/GearN/runtime/common/Action4.swift +3 -0
  143. package/srcSwift/Sources/GearN/runtime/common/GNArray.swift +204 -0
  144. package/srcSwift/Sources/GearN/runtime/common/GNData.swift +108 -0
  145. package/srcSwift/Sources/GearN/runtime/common/GNHashtable.swift +200 -0
  146. package/srcSwift/Sources/GearN/runtime/config/GNServerSettings.swift +95 -0
  147. package/srcSwift/Sources/GearN/runtime/constant/Commands.swift +28 -0
  148. package/srcSwift/Sources/GearN/runtime/constant/EventCode.swift +10 -0
  149. package/srcSwift/Sources/GearN/runtime/constant/OperationCode.swift +252 -0
  150. package/srcSwift/Sources/GearN/runtime/constant/ReturnCode.swift +19 -0
  151. package/srcSwift/Sources/GearN/runtime/constant/enumType/ExecuteResponseStatus.swift +9 -0
  152. package/srcSwift/Sources/GearN/runtime/constant/enumType/FriendStatus.swift +8 -0
  153. package/srcSwift/Sources/GearN/runtime/constant/enumType/GoogleLoginType.swift +6 -0
  154. package/srcSwift/Sources/GearN/runtime/constant/enumType/GroupStatus.swift +8 -0
  155. package/srcSwift/Sources/GearN/runtime/constant/enumType/InvalidMemberType.swift +19 -0
  156. package/srcSwift/Sources/GearN/runtime/constant/enumType/ItemType.swift +6 -0
  157. package/srcSwift/Sources/GearN/runtime/constant/enumType/MatchmakingMemberStatus.swift +7 -0
  158. package/srcSwift/Sources/GearN/runtime/constant/enumType/MatchmakingTicketStatus.swift +9 -0
  159. package/srcSwift/Sources/GearN/runtime/constant/enumType/OwnerType.swift +10 -0
  160. package/srcSwift/Sources/GearN/runtime/constant/enumType/PermissionDataItem.swift +6 -0
  161. package/srcSwift/Sources/GearN/runtime/constant/enumType/PushPlatformType.swift +6 -0
  162. package/srcSwift/Sources/GearN/runtime/constant/enumType/RequestRole.swift +7 -0
  163. package/srcSwift/Sources/GearN/runtime/constant/enumType/RequestType.swift +16 -0
  164. package/srcSwift/Sources/GearN/runtime/constant/enumType/StoreItemType.swift +6 -0
  165. package/srcSwift/Sources/GearN/runtime/constant/enumType/StoreReceiveType.swift +9 -0
  166. package/srcSwift/Sources/GearN/runtime/constant/errorCode/ErrorCode.swift +58 -0
  167. package/srcSwift/Sources/GearN/runtime/constant/parameterCode/ParameterCode.swift +672 -0
  168. package/srcSwift/Sources/GearN/runtime/entity/DataMember.swift +196 -0
  169. package/srcSwift/Sources/GearN/runtime/entity/GNMetadata.swift +9 -0
  170. package/srcSwift/Sources/GearN/runtime/entity/InvalidMember.swift +11 -0
  171. package/srcSwift/Sources/GearN/runtime/entity/OperationEvent.swift +38 -0
  172. package/srcSwift/Sources/GearN/runtime/entity/OperationHelper.swift +28 -0
  173. package/srcSwift/Sources/GearN/runtime/entity/OperationRequest.swift +62 -0
  174. package/srcSwift/Sources/GearN/runtime/entity/OperationResponse.swift +98 -0
  175. package/srcSwift/Sources/GearN/runtime/entity/models/AuthenticateModels.swift +351 -0
  176. package/srcSwift/Sources/GearN/runtime/entity/models/AuthenticateRequestModels.swift +81 -0
  177. package/srcSwift/Sources/GearN/runtime/entity/models/AuthenticateResponseModels.swift +108 -0
  178. package/srcSwift/Sources/GearN/runtime/entity/models/CharacterPlayerModels.swift +1045 -0
  179. package/srcSwift/Sources/GearN/runtime/entity/models/CharacterPlayerRequestModels.swift +821 -0
  180. package/srcSwift/Sources/GearN/runtime/entity/models/CharacterPlayerResponseModels.swift +588 -0
  181. package/srcSwift/Sources/GearN/runtime/entity/models/CloudScriptModels.swift +187 -0
  182. package/srcSwift/Sources/GearN/runtime/entity/models/CloudScriptRequestModels.swift +84 -0
  183. package/srcSwift/Sources/GearN/runtime/entity/models/CloudScriptResponseModels.swift +59 -0
  184. package/srcSwift/Sources/GearN/runtime/entity/models/ContentModels.swift +195 -0
  185. package/srcSwift/Sources/GearN/runtime/entity/models/ContentRequestModels.swift +116 -0
  186. package/srcSwift/Sources/GearN/runtime/entity/models/ContentResponseModels.swift +81 -0
  187. package/srcSwift/Sources/GearN/runtime/entity/models/DashboardModels.swift +426 -0
  188. package/srcSwift/Sources/GearN/runtime/entity/models/DashboardRequestModels.swift +160 -0
  189. package/srcSwift/Sources/GearN/runtime/entity/models/DashboardResponseModels.swift +82 -0
  190. package/srcSwift/Sources/GearN/runtime/entity/models/GamePlayerModels.swift +1334 -0
  191. package/srcSwift/Sources/GearN/runtime/entity/models/GamePlayerRequestModels.swift +643 -0
  192. package/srcSwift/Sources/GearN/runtime/entity/models/GamePlayerResponseModels.swift +213 -0
  193. package/srcSwift/Sources/GearN/runtime/entity/models/GenericModels.swift +171 -0
  194. package/srcSwift/Sources/GearN/runtime/entity/models/GroupModels.swift +850 -0
  195. package/srcSwift/Sources/GearN/runtime/entity/models/GroupRequestModels.swift +485 -0
  196. package/srcSwift/Sources/GearN/runtime/entity/models/GroupResponseModels.swift +165 -0
  197. package/srcSwift/Sources/GearN/runtime/entity/models/InventoryModels.swift +679 -0
  198. package/srcSwift/Sources/GearN/runtime/entity/models/InventoryRequestModels.swift +413 -0
  199. package/srcSwift/Sources/GearN/runtime/entity/models/InventoryResponseModels.swift +141 -0
  200. package/srcSwift/Sources/GearN/runtime/entity/models/MasterPlayerModels.swift +378 -0
  201. package/srcSwift/Sources/GearN/runtime/entity/models/MasterPlayerRequestModels.swift +147 -0
  202. package/srcSwift/Sources/GearN/runtime/entity/models/MasterPlayerResponseModels.swift +318 -0
  203. package/srcSwift/Sources/GearN/runtime/entity/models/MultiplayerModels.swift +319 -0
  204. package/srcSwift/Sources/GearN/runtime/entity/models/MultiplayerRequestModels.swift +125 -0
  205. package/srcSwift/Sources/GearN/runtime/entity/models/MultiplayerResponseModels.swift +45 -0
  206. package/srcSwift/Sources/GearN/runtime/entity/models/StoreInventoryModels.swift +633 -0
  207. package/srcSwift/Sources/GearN/runtime/entity/models/StoreInventoryRequestModels.swift +173 -0
  208. package/srcSwift/Sources/GearN/runtime/entity/models/StoreInventoryResponseModels.swift +61 -0
  209. package/srcSwift/Sources/GearN/runtime/entity/request/CustomOperationRequest.swift +42 -0
  210. package/srcSwift/Sources/GearN/runtime/entity/response/CustomOperationResponse.swift +49 -0
  211. package/srcSwift/Sources/GearN/runtime/entity/response/GetAuthInfoResponse.swift +43 -0
  212. package/srcSwift/Sources/GearN/runtime/entity/response/HealthCheckResponse.swift +86 -0
  213. package/srcSwift/Sources/GearN/runtime/entity/response/UploadFileResponse.swift +15 -0
  214. package/srcSwift/Sources/GearN/runtime/helper/CodeHelper.swift +107 -0
  215. package/srcSwift/Sources/GearN/runtime/helper/ConverterService.swift +98 -0
  216. package/srcSwift/Sources/GearN/runtime/helper/EnumUtility.swift +34 -0
  217. package/srcSwift/Sources/GearN/runtime/helper/GNSupport.swift +41 -0
  218. package/srcSwift/Sources/GearN/runtime/helper/GNUtils.swift +66 -0
  219. package/srcSwift/Sources/GearN/runtime/helper/MessagePackConverterService.swift +21 -0
  220. package/srcSwift/Sources/GearN/runtime/helper/StorageService.swift +29 -0
  221. package/srcSwift/Sources/GearN/runtime/logger/GNDebug.swift +33 -0
  222. package/srcSwift/Sources/GearN/runtime/networking/AuthenticateStatus.swift +24 -0
  223. package/srcSwift/Sources/GearN/runtime/networking/IPeer.swift +8 -0
  224. package/srcSwift/Sources/GearN/runtime/networking/NetworkingPeer.swift +368 -0
  225. package/srcSwift/Sources/GearN/runtime/networking/OperationPending.swift +81 -0
  226. package/srcSwift/Sources/GearN/runtime/networking/PeerBase.swift +228 -0
  227. package/srcSwift/Sources/GearN/runtime/networking/handler/IServerEventHandler.swift +20 -0
  228. package/srcSwift/Sources/GearN/runtime/networking/http/HttpPeer.swift +226 -0
  229. package/srcSwift/Sources/GearN/runtime/networking/http/HttpTypes.swift +24 -0
  230. package/srcSwift/Sources/GearN/runtime/networking/http/NetworkingHttpPeerBase.swift +13 -0
  231. package/srcSwift/Sources/GearN/runtime/networking/http/NetworkingPeerUrlSession.swift +125 -0
  232. package/srcSwift/Sources/GearN/runtime/networking/request/NetRequest.swift +19 -0
  233. package/srcSwift/Sources/GearN/runtime/networking/response/NetResponse.swift +13 -0
  234. package/srcSwift/Sources/GearN/runtime/networking/socket/NetworkingPeerSocketIOClient.swift +244 -0
  235. package/srcSwift/Sources/GearN/runtime/networking/socket/NetworkingSocketPeerBase.swift +59 -0
  236. package/srcSwift/Sources/GearN/runtime/networking/socket/SocketPeer.swift +136 -0
  237. package/tsconfig-build.cocos.json +31 -0
  238. package/webpack.config.cocos.mjs +78 -0
  239. package/dist/gearn.js.client.js +0 -47228
  240. package/dist/gearn.js.client.min.js +0 -2
  241. package/dist/gearn.js.client.min.js.LICENSE.txt +0 -14
@@ -0,0 +1,115 @@
1
+ import { OperationEvent } from "./../../entity/OperationEvent";
2
+ import { GNNetwork } from "./../../GNNetwork";
3
+ import { GNDebug } from "./../../logger/GNDebug";
4
+ import { IServerEventHandler } from "./../handler/IServerEventHandler";
5
+ import { NetworkingPeerSocketIOClient } from "./NetworkingPeerSocketIOClient";
6
+ import { PeerBase } from "./../PeerBase";
7
+ import { ParameterCode } from "./../../constant/parameterCode/ParameterCode";
8
+ import { OperationRequest } from "./../../entity/OperationRequest";
9
+ export class SocketPeer extends PeerBase {
10
+ getClientId() {
11
+ return this.networkingSocketPeerBase.clientId;
12
+ }
13
+ isConnected() {
14
+ return this.networkingSocketPeerBase.isWsConnected;
15
+ }
16
+ sendRequestAuthSocket() {
17
+ this.networkingSocketPeerBase.sendRequestAuthSocket();
18
+ }
19
+ subscriberServerEventHandler() {
20
+ this.serverEventHandlersDict = {};
21
+ let serverEventHandlers = IServerEventHandler.getImplementations();
22
+ for (let i = 0; i < serverEventHandlers.length; i++) {
23
+ let serverEventHandler = new serverEventHandlers[i]();
24
+ if (serverEventHandler != null) {
25
+ let serverEventHandlers2 = this.serverEventHandlersDict[serverEventHandler.getEventCode()];
26
+ if (serverEventHandlers2 == null) {
27
+ serverEventHandlers2 = [];
28
+ this.serverEventHandlersDict[serverEventHandler.getEventCode()] = serverEventHandlers2;
29
+ }
30
+ serverEventHandlers2.push(serverEventHandler);
31
+ }
32
+ }
33
+ }
34
+ subscriberAServerEventHandler(serverEventHandler) {
35
+ let serverEventHandlers2 = this.serverEventHandlersDict[serverEventHandler.getEventCode()];
36
+ if (serverEventHandlers2 == null) {
37
+ serverEventHandlers2 = [];
38
+ this.serverEventHandlersDict[serverEventHandler.getEventCode()] = serverEventHandlers2;
39
+ }
40
+ serverEventHandlers2.push(serverEventHandler);
41
+ }
42
+ initGNSocketObject() {
43
+ let gnServerSettings = GNNetwork.getGNServerSettings();
44
+ if (gnServerSettings == null)
45
+ throw new Error("Where is GN Server Settings");
46
+ this.isUse = gnServerSettings.isUseSocket();
47
+ this.networkingSocketPeerBase = new NetworkingPeerSocketIOClient();
48
+ this.networkingSocketPeerBase.init(gnServerSettings.getSocketUrl(), gnServerSettings.getReconnectDelay(), gnServerSettings.getPingInterval(), gnServerSettings.getPingTimeout());
49
+ this.networkingSocketPeerBase.reInitNewSocket();
50
+ let thiz = this;
51
+ this.networkingSocketPeerBase.setOnEventHandler((t1) => {
52
+ thiz.onEventHandler(t1);
53
+ });
54
+ this.networkingSocketPeerBase.setOnResponseHandler((t1) => {
55
+ thiz.onResponseHandler(t1);
56
+ });
57
+ this.subscriberServerEventHandler();
58
+ }
59
+ setOnConnectHandler(_onConnectHandler) {
60
+ this.networkingSocketPeerBase.setOnConnectHandler(_onConnectHandler);
61
+ }
62
+ setOnDisconnectHandler(_onDisconnectHandler) {
63
+ this.networkingSocketPeerBase.setOnDisconnectHandler(_onDisconnectHandler);
64
+ }
65
+ removeOnConnectHandler(_onConnectHandler) {
66
+ this.networkingSocketPeerBase.removeOnConnectHandler(_onConnectHandler);
67
+ }
68
+ removeOnDisconnectHandler(_onDisconnectHandler) {
69
+ this.networkingSocketPeerBase.removeOnDisconnectHandler(_onDisconnectHandler);
70
+ }
71
+ connect(_onSocketConnect) {
72
+ this.networkingSocketPeerBase.connect(_onSocketConnect);
73
+ }
74
+ disconnect(_onSocketDisconnect) {
75
+ this.networkingSocketPeerBase.close(_onSocketDisconnect);
76
+ }
77
+ setOnEventHandler(_onEventHandler) {
78
+ this._onEventHandler = _onEventHandler;
79
+ }
80
+ send(operationPending) {
81
+ let gnServerSettings = GNNetwork.getGNServerSettings();
82
+ let operationRequest = operationPending.getOperationRequest();
83
+ if (operationRequest.getTimeout() == OperationRequest.defaultTimeOut)
84
+ operationRequest.setTimeout(gnServerSettings.getDefaultTimeoutInSeconds());
85
+ super.send(operationPending);
86
+ GNDebug.log("[GN Socket SEND] " + operationPending.getOperationRequest().toString());
87
+ let authToken = operationPending.getAuthToken();
88
+ let secretKey = operationPending.getSecretKey();
89
+ let gameId = operationPending.getGameId();
90
+ let customTags = operationPending.getCustomTags();
91
+ this.networkingSocketPeerBase.send(operationPending.getRequestType(), operationPending.getRole(), operationPending.getOperationRequest(), authToken, secretKey, customTags, gameId);
92
+ }
93
+ onEnqueue(operationPending) {
94
+ GNDebug.log("[GN Socket ENQUEUE] " + operationPending.getOperationRequest().toString());
95
+ }
96
+ onEventHandler(obj) {
97
+ let eventCode = obj.getString(ParameterCode.EventCode);
98
+ let operationEvent = new OperationEvent(eventCode, obj.getGNHashtable(ParameterCode.Parameters));
99
+ GNDebug.log("[GN Socket EVENT] " + operationEvent.toString());
100
+ if (this._onEventHandler != null)
101
+ this._onEventHandler(operationEvent);
102
+ let serverEventHandlers = this.serverEventHandlersDict[eventCode];
103
+ if (serverEventHandlers == null)
104
+ return;
105
+ serverEventHandlers.forEach(serverEventHandler => {
106
+ if (serverEventHandler != null) {
107
+ serverEventHandler.handle(operationEvent);
108
+ }
109
+ });
110
+ }
111
+ service() {
112
+ super.service();
113
+ this.networkingSocketPeerBase.service();
114
+ }
115
+ }
@@ -1,6 +1,8 @@
1
1
  import { NetworkingPeer } from "./../networking/NetworkingPeer";
2
2
  export declare class ServiceUpdate {
3
+ private intervalId;
3
4
  peer: NetworkingPeer;
4
5
  run(): void;
6
+ stop(): void;
5
7
  private update;
6
8
  }
@@ -0,0 +1,22 @@
1
+ export class ServiceUpdate {
2
+ constructor() {
3
+ this.intervalId = null;
4
+ }
5
+ run() {
6
+ if (this.intervalId)
7
+ return;
8
+ this.intervalId = setInterval(() => {
9
+ this.update();
10
+ }, 50);
11
+ }
12
+ stop() {
13
+ if (!this.intervalId)
14
+ return;
15
+ clearInterval(this.intervalId);
16
+ this.intervalId = null;
17
+ }
18
+ update() {
19
+ if (this.peer != null)
20
+ this.peer.service();
21
+ }
22
+ }
@@ -0,0 +1,116 @@
1
+ # GearN SDK - Cocos Creator 3.x Integration Guide
2
+
3
+ ## Overview
4
+
5
+ GearN TypeScript SDK hỗ trợ đầy đủ Cocos Creator 3.x thông qua npm package.
6
+
7
+ ## Installation
8
+
9
+ ### 1. Cài đặt qua npm
10
+
11
+ Trong thư mục project Cocos Creator của bạn:
12
+
13
+ ```bash
14
+ npm install @xmobitea/gn-typescript-client
15
+ ```
16
+
17
+ ### 2. TypeScript Configuration
18
+
19
+ Đảm bảo `tsconfig.json` của Cocos Creator project có cài đặt tương thích:
20
+
21
+ ```json
22
+ {
23
+ "compilerOptions": {
24
+ "esModuleInterop": true,
25
+ "experimentalDecorators": true,
26
+ "emitDecoratorMetadata": true
27
+ }
28
+ }
29
+ ```
30
+
31
+ ## Basic Usage
32
+
33
+ ### Initialize SDK
34
+
35
+ ```typescript
36
+ import { GNNetwork, GNServerSettings, LogType, MessageType } from '@xmobitea/gn-typescript-client';
37
+
38
+ // Tạo server settings
39
+ const settings = new GNServerSettings({
40
+ httpUrl: "http://your-server:8080",
41
+ socketUrl: "ws://your-server:8080",
42
+ secretKey: "your-secret-key",
43
+ useSocket: true,
44
+ useHttp: true,
45
+ logType: LogType.All,
46
+ sendRate: 30,
47
+ messageType: MessageType.MsgPack,
48
+ });
49
+
50
+ // Initialize
51
+ GNNetwork.init(settings);
52
+ ```
53
+
54
+ ### Authentication
55
+
56
+ ```typescript
57
+ // Login với Device ID
58
+ const response = await GNNetwork.authenticate.loginDeviceIdAsync({
59
+ deviceId: "unique-device-id",
60
+ createAccount: true,
61
+ });
62
+
63
+ if (!response.hasError()) {
64
+ console.log("User ID:", GNNetwork.getAuthenticateStatus().getUserId());
65
+ }
66
+ ```
67
+
68
+ ### Socket Connection
69
+
70
+ ```typescript
71
+ // Subscribe events
72
+ GNNetwork.subscriberOnConnectHandler(() => {
73
+ console.log("Connected!");
74
+ GNNetwork.sendRequestAuthSocket();
75
+ });
76
+
77
+ GNNetwork.subscriberOnDisconnectHandler(() => {
78
+ console.log("Disconnected!");
79
+ });
80
+
81
+ // Connect
82
+ GNNetwork.connectSocket();
83
+ ```
84
+
85
+ ## Example Component
86
+
87
+ Xem file mẫu hoàn chỉnh tại: [examples/cocos-creator/GearNExample.ts](../examples/cocos-creator/GearNExample.ts)
88
+
89
+ ## Platform Detection
90
+
91
+ SDK tự động phát hiện Cocos Creator environment:
92
+
93
+ ```typescript
94
+ import { GNSupport } from '@xmobitea/gn-typescript-client';
95
+
96
+ if (GNSupport.isCocosCreator()) {
97
+ console.log("Running in Cocos Creator");
98
+ }
99
+ ```
100
+
101
+ ## Storage
102
+
103
+ SDK tự động sử dụng `cc.sys.localStorage` trong Cocos Creator để lưu auth token.
104
+
105
+ ## Troubleshooting
106
+
107
+ ### Module not found
108
+ Đảm bảo đã chạy `npm install` trong project folder.
109
+
110
+ ### Build errors
111
+ Kiểm tra `tsconfig.json` có `esModuleInterop: true`.
112
+
113
+ ## Support
114
+
115
+ - GitHub Issues: https://github.com/XmobiTea-Family/GearN-typescript-client-sdk/issues
116
+ - Homepage: https://gearn.net
@@ -0,0 +1,176 @@
1
+ /**
2
+ * GearNExample.ts - Example Cocos Creator 3.x Component using GearN SDK
3
+ *
4
+ * This component demonstrates how to integrate the GearN SDK
5
+ * with a Cocos Creator 3.x project.
6
+ *
7
+ * Installation:
8
+ * 1. npm install @xmobitea/gn-typescript-client
9
+ * 2. Copy this file to your Cocos Creator project's scripts folder
10
+ * 3. Attach to a Node in your scene
11
+ */
12
+
13
+ import { _decorator, Component, log, warn, error } from 'cc';
14
+
15
+ // Import GearN SDK
16
+ import {
17
+ GNNetwork,
18
+ GNServerSettings,
19
+ GNServerSettingsOptions,
20
+ LogType,
21
+ MessageType
22
+ } from '@xmobitea/gn-typescript-client';
23
+
24
+ const { ccclass, property } = _decorator;
25
+
26
+ @ccclass('GearNExample')
27
+ export class GearNExample extends Component {
28
+
29
+ @property({ tooltip: "GearN Server HTTP URL" })
30
+ httpUrl: string = "http://localhost:8080";
31
+
32
+ @property({ tooltip: "GearN Server Socket URL" })
33
+ socketUrl: string = "ws://localhost:8080";
34
+
35
+ @property({ tooltip: "Your Game/App Secret Key" })
36
+ secretKey: string = "";
37
+
38
+ @property({ tooltip: "Enable debug logging" })
39
+ enableDebugLog: boolean = true;
40
+
41
+ start() {
42
+ this.initializeGearN();
43
+ }
44
+
45
+ /**
46
+ * Initialize GearN SDK
47
+ */
48
+ private initializeGearN(): void {
49
+ try {
50
+ // Create server settings
51
+ const settings: GNServerSettingsOptions = {
52
+ httpUrl: this.httpUrl,
53
+ socketUrl: this.socketUrl,
54
+ secretKey: this.secretKey,
55
+ useSocket: true,
56
+ useHttp: true,
57
+ logType: this.enableDebugLog ? LogType.All : LogType.None,
58
+ sendRate: 30,
59
+ messageType: MessageType.MsgPack,
60
+ socketReconnectDelay: 1000,
61
+ socketPingInterval: 3000,
62
+ socketPingTimeout: 5000,
63
+ httpRequestTimeout: 10,
64
+ };
65
+
66
+ const gnServerSettings = new GNServerSettings(settings);
67
+
68
+ // Initialize GearN
69
+ GNNetwork.init(gnServerSettings);
70
+
71
+ log('[GearN] SDK initialized successfully!');
72
+ log('[GearN] Platform:', GNNetwork.getPlatform());
73
+
74
+ // Subscribe to connection events
75
+ this.setupConnectionHandlers();
76
+
77
+ } catch (err) {
78
+ error('[GearN] Failed to initialize SDK:', err);
79
+ }
80
+ }
81
+
82
+ /**
83
+ * Setup socket connection event handlers
84
+ */
85
+ private setupConnectionHandlers(): void {
86
+ GNNetwork.subscriberOnConnectHandler(() => {
87
+ log('[GearN] Socket connected! SID:', GNNetwork.getSocketSId());
88
+
89
+ // Authenticate after connection
90
+ this.onSocketConnected();
91
+ });
92
+
93
+ GNNetwork.subscriberOnDisconnectHandler(() => {
94
+ warn('[GearN] Socket disconnected!');
95
+ });
96
+ }
97
+
98
+ /**
99
+ * Called when socket is connected
100
+ */
101
+ private onSocketConnected(): void {
102
+ // Example: Send auth token if already logged in
103
+ const authStatus = GNNetwork.getAuthenticateStatus();
104
+ if (authStatus.getAuthToken()) {
105
+ GNNetwork.sendRequestAuthSocket();
106
+ log('[GearN] Auth token sent to socket');
107
+ }
108
+ }
109
+
110
+ /**
111
+ * Connect to socket server
112
+ */
113
+ public connectSocket(): void {
114
+ log('[GearN] Connecting to socket...');
115
+ GNNetwork.connectSocket(() => {
116
+ log('[GearN] Socket connection initiated');
117
+ });
118
+ }
119
+
120
+ /**
121
+ * Disconnect from socket server
122
+ */
123
+ public disconnectSocket(): void {
124
+ log('[GearN] Disconnecting from socket...');
125
+ GNNetwork.disconnectSocket(() => {
126
+ log('[GearN] Socket disconnected');
127
+ });
128
+ }
129
+
130
+ /**
131
+ * Example: Login with device ID
132
+ */
133
+ public async loginWithDeviceId(deviceId: string): Promise<void> {
134
+ try {
135
+ log('[GearN] Logging in with device ID:', deviceId);
136
+
137
+ const response = await GNNetwork.authenticate.loginDeviceIdAsync({
138
+ deviceId: deviceId,
139
+ createAccount: true,
140
+ });
141
+
142
+ if (response.hasError()) {
143
+ error('[GearN] Login failed:', response.getDebugMessage());
144
+ return;
145
+ }
146
+
147
+ log('[GearN] Login successful!');
148
+ log('[GearN] User ID:', GNNetwork.getAuthenticateStatus().getUserId());
149
+
150
+ // Connect socket after successful login
151
+ this.connectSocket();
152
+
153
+ } catch (err) {
154
+ error('[GearN] Login error:', err);
155
+ }
156
+ }
157
+
158
+ /**
159
+ * Example: Get server health status
160
+ */
161
+ public async checkServerHealth(): Promise<void> {
162
+ try {
163
+ const response = await GNNetwork.healthCheckAsync();
164
+ log('[GearN] Server health:', response);
165
+ } catch (err) {
166
+ error('[GearN] Health check failed:', err);
167
+ }
168
+ }
169
+
170
+ onDestroy() {
171
+ // Cleanup: disconnect socket when component is destroyed
172
+ if (GNNetwork.isSocketConnected()) {
173
+ GNNetwork.disconnectSocket();
174
+ }
175
+ }
176
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xmobitea/gn-typescript-client",
3
- "version": "2.6.12",
3
+ "version": "2.6.13-tsc",
4
4
  "description": "GearN Typescript Client SDK by XmobiTea (Pro)",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",
@@ -12,7 +12,8 @@
12
12
  "build:udm": "webpack --config webpack.config.udm.mjs --mode production --stats-modules",
13
13
  "build:minudm": "webpack --config webpack.config.min.udm.mjs --mode production --stats-modules",
14
14
  "build": "rm -rf ./dist && npm run build:node && npm run build:udm && npm run build:minudm",
15
- "build:withoutwebpack": "rm -rf ./dist && tsc",
15
+ "build:tsc": "rm -rf ./dist && tsc",
16
+ "build:cocos": "rm -rf ./dist && webpack --config webpack.config.cocos.mjs --mode production --stats-modules",
16
17
  "push": "npm run build && npm publish && git push"
17
18
  },
18
19
  "author": "changx.develop@gmail.com (https://xmobitea.com)",
@@ -62,4 +63,4 @@
62
63
  "engines": {
63
64
  "node": ">=20.0.0"
64
65
  }
65
- }
66
+ }
@@ -0,0 +1,32 @@
1
+ // swift-tools-version: 5.7
2
+ // The swift-tools-version declares the minimum version of Swift required to build this package.
3
+
4
+ import PackageDescription
5
+
6
+ let package = Package(
7
+ name: "GearN",
8
+ products: [
9
+ // Products define the executables and libraries a package produces, making them visible to other packages.
10
+ .library(
11
+ name: "GearN",
12
+ targets: ["GearN"]),
13
+ ],
14
+ dependencies: [
15
+ // Dependencies declare other packages that this package depends on.
16
+ .package(url: "https://github.com/socketio/socket.io-client-swift", from: "16.1.1"),
17
+ ],
18
+ targets: [
19
+ // Targets are the basic building blocks of a package, defining a module or a test suite.
20
+ // Targets can depend on other targets in this package and products from dependencies.
21
+ .target(
22
+ name: "GearN",
23
+ dependencies: [
24
+ .product(name: "SocketIO", package: "socket.io-client-swift")
25
+ ],
26
+ path: "Sources/GearN"),
27
+ .testTarget(
28
+ name: "GearNTests",
29
+ dependencies: ["GearN"],
30
+ path: "Tests/GearNTests"),
31
+ ]
32
+ )