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

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 (242) hide show
  1. package/LICENSE +1 -1
  2. package/README.MD +1 -0
  3. package/dist/gearn.js.client.js +47354 -0
  4. package/dist/gearn.js.client.min.js +2 -0
  5. package/dist/gearn.js.client.min.js.LICENSE.txt +14 -0
  6. package/dist/index.d.ts +2 -2
  7. package/dist/index.js +34362 -339
  8. package/dist/runtime/GNNetwork.d.ts +1 -1
  9. package/dist/runtime/helper/GNSupport.d.ts +20 -0
  10. package/dist/runtime/{entity → helper}/OperationHelper.d.ts +1 -1
  11. package/dist/runtime/helper/StorageService.d.ts +18 -0
  12. package/dist/runtime/networking/NetworkingPeer.d.ts +1 -1
  13. package/dist/runtime/typescript/ServiceUpdate.d.ts +2 -0
  14. package/docs/COCOS_CREATOR_INTEGRATION.md +116 -0
  15. package/examples/cocos-creator/GearNExample.ts.txt +176 -0
  16. package/package.json +11 -10
  17. package/srcSwift/Package.swift +32 -0
  18. package/srcSwift/Sources/GearN/runtime/GNNetwork.swift +530 -0
  19. package/srcSwift/Sources/GearN/runtime/GNNetworkAuthenticateApi.swift +178 -0
  20. package/srcSwift/Sources/GearN/runtime/GNNetworkCharacterPlayerApi.swift +1162 -0
  21. package/srcSwift/Sources/GearN/runtime/GNNetworkCloudScriptApi.swift +154 -0
  22. package/srcSwift/Sources/GearN/runtime/GNNetworkContentApi.swift +208 -0
  23. package/srcSwift/Sources/GearN/runtime/GNNetworkDashboardApi.swift +240 -0
  24. package/srcSwift/Sources/GearN/runtime/GNNetworkGamePlayerApi.swift +1369 -0
  25. package/srcSwift/Sources/GearN/runtime/GNNetworkGroupApi.swift +1100 -0
  26. package/srcSwift/Sources/GearN/runtime/GNNetworkInventoryApi.swift +937 -0
  27. package/srcSwift/Sources/GearN/runtime/GNNetworkMasterPlayerApi.swift +2323 -0
  28. package/srcSwift/Sources/GearN/runtime/GNNetworkMultiplayerApi.swift +298 -0
  29. package/srcSwift/Sources/GearN/runtime/GNNetworkStoreInventoryApi.swift +397 -0
  30. package/srcSwift/Sources/GearN/runtime/common/Action0.swift +3 -0
  31. package/srcSwift/Sources/GearN/runtime/common/Action1.swift +3 -0
  32. package/srcSwift/Sources/GearN/runtime/common/Action2.swift +3 -0
  33. package/srcSwift/Sources/GearN/runtime/common/Action3.swift +3 -0
  34. package/srcSwift/Sources/GearN/runtime/common/Action4.swift +3 -0
  35. package/srcSwift/Sources/GearN/runtime/common/GNArray.swift +204 -0
  36. package/srcSwift/Sources/GearN/runtime/common/GNData.swift +108 -0
  37. package/srcSwift/Sources/GearN/runtime/common/GNHashtable.swift +200 -0
  38. package/srcSwift/Sources/GearN/runtime/config/GNServerSettings.swift +95 -0
  39. package/srcSwift/Sources/GearN/runtime/constant/Commands.swift +28 -0
  40. package/srcSwift/Sources/GearN/runtime/constant/EventCode.swift +10 -0
  41. package/srcSwift/Sources/GearN/runtime/constant/OperationCode.swift +252 -0
  42. package/srcSwift/Sources/GearN/runtime/constant/ReturnCode.swift +19 -0
  43. package/srcSwift/Sources/GearN/runtime/constant/enumType/ExecuteResponseStatus.swift +9 -0
  44. package/srcSwift/Sources/GearN/runtime/constant/enumType/FriendStatus.swift +8 -0
  45. package/srcSwift/Sources/GearN/runtime/constant/enumType/GoogleLoginType.swift +6 -0
  46. package/srcSwift/Sources/GearN/runtime/constant/enumType/GroupStatus.swift +8 -0
  47. package/srcSwift/Sources/GearN/runtime/constant/enumType/InvalidMemberType.swift +19 -0
  48. package/srcSwift/Sources/GearN/runtime/constant/enumType/ItemType.swift +6 -0
  49. package/srcSwift/Sources/GearN/runtime/constant/enumType/MatchmakingMemberStatus.swift +7 -0
  50. package/srcSwift/Sources/GearN/runtime/constant/enumType/MatchmakingTicketStatus.swift +9 -0
  51. package/srcSwift/Sources/GearN/runtime/constant/enumType/OwnerType.swift +10 -0
  52. package/srcSwift/Sources/GearN/runtime/constant/enumType/PermissionDataItem.swift +6 -0
  53. package/srcSwift/Sources/GearN/runtime/constant/enumType/PushPlatformType.swift +6 -0
  54. package/srcSwift/Sources/GearN/runtime/constant/enumType/RequestRole.swift +7 -0
  55. package/srcSwift/Sources/GearN/runtime/constant/enumType/RequestType.swift +16 -0
  56. package/srcSwift/Sources/GearN/runtime/constant/enumType/StoreItemType.swift +6 -0
  57. package/srcSwift/Sources/GearN/runtime/constant/enumType/StoreReceiveType.swift +9 -0
  58. package/srcSwift/Sources/GearN/runtime/constant/errorCode/ErrorCode.swift +58 -0
  59. package/srcSwift/Sources/GearN/runtime/constant/parameterCode/ParameterCode.swift +672 -0
  60. package/srcSwift/Sources/GearN/runtime/entity/DataMember.swift +196 -0
  61. package/srcSwift/Sources/GearN/runtime/entity/GNMetadata.swift +9 -0
  62. package/srcSwift/Sources/GearN/runtime/entity/InvalidMember.swift +11 -0
  63. package/srcSwift/Sources/GearN/runtime/entity/OperationEvent.swift +38 -0
  64. package/srcSwift/Sources/GearN/runtime/entity/OperationHelper.swift +28 -0
  65. package/srcSwift/Sources/GearN/runtime/entity/OperationRequest.swift +62 -0
  66. package/srcSwift/Sources/GearN/runtime/entity/OperationResponse.swift +98 -0
  67. package/srcSwift/Sources/GearN/runtime/entity/models/AuthenticateModels.swift +351 -0
  68. package/srcSwift/Sources/GearN/runtime/entity/models/AuthenticateRequestModels.swift +81 -0
  69. package/srcSwift/Sources/GearN/runtime/entity/models/AuthenticateResponseModels.swift +108 -0
  70. package/srcSwift/Sources/GearN/runtime/entity/models/CharacterPlayerModels.swift +1045 -0
  71. package/srcSwift/Sources/GearN/runtime/entity/models/CharacterPlayerRequestModels.swift +821 -0
  72. package/srcSwift/Sources/GearN/runtime/entity/models/CharacterPlayerResponseModels.swift +588 -0
  73. package/srcSwift/Sources/GearN/runtime/entity/models/CloudScriptModels.swift +187 -0
  74. package/srcSwift/Sources/GearN/runtime/entity/models/CloudScriptRequestModels.swift +84 -0
  75. package/srcSwift/Sources/GearN/runtime/entity/models/CloudScriptResponseModels.swift +59 -0
  76. package/srcSwift/Sources/GearN/runtime/entity/models/ContentModels.swift +195 -0
  77. package/srcSwift/Sources/GearN/runtime/entity/models/ContentRequestModels.swift +116 -0
  78. package/srcSwift/Sources/GearN/runtime/entity/models/ContentResponseModels.swift +81 -0
  79. package/srcSwift/Sources/GearN/runtime/entity/models/DashboardModels.swift +426 -0
  80. package/srcSwift/Sources/GearN/runtime/entity/models/DashboardRequestModels.swift +160 -0
  81. package/srcSwift/Sources/GearN/runtime/entity/models/DashboardResponseModels.swift +82 -0
  82. package/srcSwift/Sources/GearN/runtime/entity/models/GamePlayerModels.swift +1334 -0
  83. package/srcSwift/Sources/GearN/runtime/entity/models/GamePlayerRequestModels.swift +643 -0
  84. package/srcSwift/Sources/GearN/runtime/entity/models/GamePlayerResponseModels.swift +213 -0
  85. package/srcSwift/Sources/GearN/runtime/entity/models/GenericModels.swift +171 -0
  86. package/srcSwift/Sources/GearN/runtime/entity/models/GroupModels.swift +850 -0
  87. package/srcSwift/Sources/GearN/runtime/entity/models/GroupRequestModels.swift +485 -0
  88. package/srcSwift/Sources/GearN/runtime/entity/models/GroupResponseModels.swift +165 -0
  89. package/srcSwift/Sources/GearN/runtime/entity/models/InventoryModels.swift +679 -0
  90. package/srcSwift/Sources/GearN/runtime/entity/models/InventoryRequestModels.swift +413 -0
  91. package/srcSwift/Sources/GearN/runtime/entity/models/InventoryResponseModels.swift +141 -0
  92. package/srcSwift/Sources/GearN/runtime/entity/models/MasterPlayerModels.swift +378 -0
  93. package/srcSwift/Sources/GearN/runtime/entity/models/MasterPlayerRequestModels.swift +147 -0
  94. package/srcSwift/Sources/GearN/runtime/entity/models/MasterPlayerResponseModels.swift +318 -0
  95. package/srcSwift/Sources/GearN/runtime/entity/models/MultiplayerModels.swift +319 -0
  96. package/srcSwift/Sources/GearN/runtime/entity/models/MultiplayerRequestModels.swift +125 -0
  97. package/srcSwift/Sources/GearN/runtime/entity/models/MultiplayerResponseModels.swift +45 -0
  98. package/srcSwift/Sources/GearN/runtime/entity/models/StoreInventoryModels.swift +633 -0
  99. package/srcSwift/Sources/GearN/runtime/entity/models/StoreInventoryRequestModels.swift +173 -0
  100. package/srcSwift/Sources/GearN/runtime/entity/models/StoreInventoryResponseModels.swift +61 -0
  101. package/srcSwift/Sources/GearN/runtime/entity/request/CustomOperationRequest.swift +42 -0
  102. package/srcSwift/Sources/GearN/runtime/entity/response/CustomOperationResponse.swift +49 -0
  103. package/srcSwift/Sources/GearN/runtime/entity/response/GetAuthInfoResponse.swift +43 -0
  104. package/srcSwift/Sources/GearN/runtime/entity/response/HealthCheckResponse.swift +86 -0
  105. package/srcSwift/Sources/GearN/runtime/entity/response/UploadFileResponse.swift +15 -0
  106. package/srcSwift/Sources/GearN/runtime/helper/CodeHelper.swift +107 -0
  107. package/srcSwift/Sources/GearN/runtime/helper/ConverterService.swift +98 -0
  108. package/srcSwift/Sources/GearN/runtime/helper/EnumUtility.swift +34 -0
  109. package/srcSwift/Sources/GearN/runtime/helper/GNSupport.swift +41 -0
  110. package/srcSwift/Sources/GearN/runtime/helper/GNUtils.swift +66 -0
  111. package/srcSwift/Sources/GearN/runtime/helper/MessagePackConverterService.swift +21 -0
  112. package/srcSwift/Sources/GearN/runtime/helper/StorageService.swift +29 -0
  113. package/srcSwift/Sources/GearN/runtime/logger/GNDebug.swift +33 -0
  114. package/srcSwift/Sources/GearN/runtime/networking/AuthenticateStatus.swift +24 -0
  115. package/srcSwift/Sources/GearN/runtime/networking/IPeer.swift +8 -0
  116. package/srcSwift/Sources/GearN/runtime/networking/NetworkingPeer.swift +368 -0
  117. package/srcSwift/Sources/GearN/runtime/networking/OperationPending.swift +81 -0
  118. package/srcSwift/Sources/GearN/runtime/networking/PeerBase.swift +228 -0
  119. package/srcSwift/Sources/GearN/runtime/networking/handler/IServerEventHandler.swift +20 -0
  120. package/srcSwift/Sources/GearN/runtime/networking/http/HttpPeer.swift +226 -0
  121. package/srcSwift/Sources/GearN/runtime/networking/http/HttpTypes.swift +24 -0
  122. package/srcSwift/Sources/GearN/runtime/networking/http/NetworkingHttpPeerBase.swift +13 -0
  123. package/srcSwift/Sources/GearN/runtime/networking/http/NetworkingPeerUrlSession.swift +125 -0
  124. package/srcSwift/Sources/GearN/runtime/networking/request/NetRequest.swift +19 -0
  125. package/srcSwift/Sources/GearN/runtime/networking/response/NetResponse.swift +13 -0
  126. package/srcSwift/Sources/GearN/runtime/networking/socket/NetworkingPeerSocketIOClient.swift +244 -0
  127. package/srcSwift/Sources/GearN/runtime/networking/socket/NetworkingSocketPeerBase.swift +59 -0
  128. package/srcSwift/Sources/GearN/runtime/networking/socket/SocketPeer.swift +136 -0
  129. package/tsconfig-build.cocos.json +31 -0
  130. package/webpack.config.cocos.mjs +78 -0
  131. package/dist/runtime/GNNetwork.js +0 -260
  132. package/dist/runtime/GNNetworkAuthenticateApi.js +0 -122
  133. package/dist/runtime/GNNetworkCharacterPlayerApi.js +0 -968
  134. package/dist/runtime/GNNetworkCloudScriptApi.js +0 -104
  135. package/dist/runtime/GNNetworkContentApi.js +0 -140
  136. package/dist/runtime/GNNetworkDashboardApi.js +0 -170
  137. package/dist/runtime/GNNetworkGamePlayerApi.js +0 -950
  138. package/dist/runtime/GNNetworkGroupApi.js +0 -734
  139. package/dist/runtime/GNNetworkInventoryApi.js +0 -626
  140. package/dist/runtime/GNNetworkMasterPlayerApi.js +0 -1550
  141. package/dist/runtime/GNNetworkMultiplayerApi.js +0 -194
  142. package/dist/runtime/GNNetworkStoreInventoryApi.js +0 -266
  143. package/dist/runtime/common/Action0.js +0 -1
  144. package/dist/runtime/common/Action1.js +0 -1
  145. package/dist/runtime/common/Action2.js +0 -1
  146. package/dist/runtime/common/Action3.js +0 -1
  147. package/dist/runtime/common/Action4.js +0 -1
  148. package/dist/runtime/common/GNData.js +0 -211
  149. package/dist/runtime/config/GNServerSettings.js +0 -156
  150. package/dist/runtime/constant/Commands.js +0 -20
  151. package/dist/runtime/constant/EventCode.js +0 -8
  152. package/dist/runtime/constant/OperationCode.js +0 -221
  153. package/dist/runtime/constant/ReturnCode.js +0 -14
  154. package/dist/runtime/constant/enumType/ExecuteResponseStatus.js +0 -8
  155. package/dist/runtime/constant/enumType/FriendStatus.js +0 -7
  156. package/dist/runtime/constant/enumType/GoogleLoginType.js +0 -5
  157. package/dist/runtime/constant/enumType/GroupStatus.js +0 -7
  158. package/dist/runtime/constant/enumType/InvalidMemberType.js +0 -18
  159. package/dist/runtime/constant/enumType/ItemType.js +0 -5
  160. package/dist/runtime/constant/enumType/MatchmakingMemberStatus.js +0 -6
  161. package/dist/runtime/constant/enumType/MatchmakingTicketStatus.js +0 -8
  162. package/dist/runtime/constant/enumType/OwnerType.js +0 -9
  163. package/dist/runtime/constant/enumType/PermissionDataItem.js +0 -5
  164. package/dist/runtime/constant/enumType/PushPlatformType.js +0 -5
  165. package/dist/runtime/constant/enumType/RequestRole.js +0 -6
  166. package/dist/runtime/constant/enumType/RequestType.js +0 -15
  167. package/dist/runtime/constant/enumType/StoreItemType.js +0 -5
  168. package/dist/runtime/constant/enumType/StoreReceiveType.js +0 -8
  169. package/dist/runtime/constant/errorCode/ErrorCode.js +0 -52
  170. package/dist/runtime/constant/parameterCode/ParameterCode.js +0 -617
  171. package/dist/runtime/entity/DataMember.js +0 -208
  172. package/dist/runtime/entity/GNMetadata.js +0 -11
  173. package/dist/runtime/entity/InvalidMember.js +0 -1
  174. package/dist/runtime/entity/OperationEvent.js +0 -24
  175. package/dist/runtime/entity/OperationHelper.js +0 -24
  176. package/dist/runtime/entity/OperationRequest.js +0 -42
  177. package/dist/runtime/entity/OperationResponse.js +0 -73
  178. package/dist/runtime/entity/models/AuthenticateModels.js +0 -426
  179. package/dist/runtime/entity/models/AuthenticateRequestModels.js +0 -188
  180. package/dist/runtime/entity/models/AuthenticateResponseModels.js +0 -131
  181. package/dist/runtime/entity/models/CharacterPlayerModels.js +0 -1433
  182. package/dist/runtime/entity/models/CharacterPlayerRequestModels.js +0 -1386
  183. package/dist/runtime/entity/models/CharacterPlayerResponseModels.js +0 -376
  184. package/dist/runtime/entity/models/CloudScriptModels.js +0 -197
  185. package/dist/runtime/entity/models/CloudScriptRequestModels.js +0 -138
  186. package/dist/runtime/entity/models/CloudScriptResponseModels.js +0 -40
  187. package/dist/runtime/entity/models/ContentModels.js +0 -203
  188. package/dist/runtime/entity/models/ContentRequestModels.js +0 -190
  189. package/dist/runtime/entity/models/ContentResponseModels.js +0 -54
  190. package/dist/runtime/entity/models/DashboardModels.js +0 -3002
  191. package/dist/runtime/entity/models/DashboardRequestModels.js +0 -268
  192. package/dist/runtime/entity/models/DashboardResponseModels.js +0 -187
  193. package/dist/runtime/entity/models/GamePlayerModels.js +0 -1591
  194. package/dist/runtime/entity/models/GamePlayerRequestModels.js +0 -1360
  195. package/dist/runtime/entity/models/GamePlayerResponseModels.js +0 -369
  196. package/dist/runtime/entity/models/GenericModels.js +0 -177
  197. package/dist/runtime/entity/models/GroupModels.js +0 -1135
  198. package/dist/runtime/entity/models/GroupRequestModels.js +0 -1048
  199. package/dist/runtime/entity/models/GroupResponseModels.js +0 -285
  200. package/dist/runtime/entity/models/InventoryModels.js +0 -915
  201. package/dist/runtime/entity/models/InventoryRequestModels.js +0 -892
  202. package/dist/runtime/entity/models/InventoryResponseModels.js +0 -243
  203. package/dist/runtime/entity/models/MasterPlayerModels.js +0 -2573
  204. package/dist/runtime/entity/models/MasterPlayerRequestModels.js +0 -2228
  205. package/dist/runtime/entity/models/MasterPlayerResponseModels.js +0 -607
  206. package/dist/runtime/entity/models/MultiplayerModels.js +0 -404
  207. package/dist/runtime/entity/models/MultiplayerRequestModels.js +0 -268
  208. package/dist/runtime/entity/models/MultiplayerResponseModels.js +0 -75
  209. package/dist/runtime/entity/models/StoreInventoryModels.js +0 -797
  210. package/dist/runtime/entity/models/StoreInventoryRequestModels.js +0 -372
  211. package/dist/runtime/entity/models/StoreInventoryResponseModels.js +0 -103
  212. package/dist/runtime/entity/request/CustomOperationRequest.js +0 -24
  213. package/dist/runtime/entity/response/CustomOperationResponse.js +0 -29
  214. package/dist/runtime/entity/response/GetAuthInfoResponse.js +0 -2
  215. package/dist/runtime/entity/response/HealthCheckResponse.js +0 -2
  216. package/dist/runtime/entity/response/UploadFileResponse.js +0 -2
  217. package/dist/runtime/helper/CodeHelper.js +0 -63
  218. package/dist/runtime/helper/ConverterService.js +0 -275
  219. package/dist/runtime/helper/EnumUtility.js +0 -33
  220. package/dist/runtime/helper/GNSupport.js +0 -8
  221. package/dist/runtime/helper/GNUtils.js +0 -72
  222. package/dist/runtime/helper/MessagePackConverterService.js +0 -9
  223. package/dist/runtime/logger/GNDebug.js +0 -29
  224. package/dist/runtime/networking/AuthenticateStatus.js +0 -14
  225. package/dist/runtime/networking/IPeer.js +0 -1
  226. package/dist/runtime/networking/NetworkingPeer.js +0 -208
  227. package/dist/runtime/networking/OperationPending.js +0 -53
  228. package/dist/runtime/networking/PeerBase.js +0 -161
  229. package/dist/runtime/networking/handler/IServerEventHandler.js +0 -13
  230. package/dist/runtime/networking/handler/OnCharacterPlayerFriendUpdateEventHandler.js +0 -39
  231. package/dist/runtime/networking/handler/OnCharacterPlayerGroupUpdateEventHandler.js +0 -39
  232. package/dist/runtime/networking/handler/OnGamePlayerFriendUpdateEventHandler.js +0 -39
  233. package/dist/runtime/networking/handler/OnGamePlayerGroupUpdateEventHandler.js +0 -39
  234. package/dist/runtime/networking/handler/OnGroupMemberUpdateEventHandler.js +0 -35
  235. package/dist/runtime/networking/handler/OnGroupMessageUpdateEventHandler.js +0 -43
  236. package/dist/runtime/networking/http/HttpPeer.js +0 -123
  237. package/dist/runtime/networking/http/NetworkingHttpPeerBase.js +0 -9
  238. package/dist/runtime/networking/http/NetworkingPeerAxiosRequest.js +0 -179
  239. package/dist/runtime/networking/socket/NetworkingPeerSocketIOClient.js +0 -130
  240. package/dist/runtime/networking/socket/NetworkingSocketPeerBase.js +0 -165
  241. package/dist/runtime/networking/socket/SocketPeer.js +0 -115
  242. package/dist/runtime/typescript/ServiceUpdate.js +0 -12
@@ -41,7 +41,7 @@ export declare class GNNetwork {
41
41
  static getServerTimestamp(): number;
42
42
  static getAuthenticateStatus(): AuthenticateStatus;
43
43
  static getGameId(): string;
44
- static getPlatform(): number;
44
+ static getPlatform(): string;
45
45
  static authenticate: AuthenticateApi;
46
46
  static characterPlayer: CharacterPlayerApi;
47
47
  static content: ContentApi;
@@ -1,5 +1,25 @@
1
+ type PlatformType = "cocos" | "browser" | "nodejs";
1
2
  export declare class GNSupport {
2
3
  private static _isBrowser;
4
+ private static _isCocosCreator;
5
+ private static _platformType;
6
+ private static _initialized;
3
7
  static init(): void;
8
+ /**
9
+ * Check if running in standard browser environment
10
+ */
4
11
  static isBrowser(): boolean;
12
+ /**
13
+ * Check if running in Cocos Creator 3.x environment
14
+ */
15
+ static isCocosCreator(): boolean;
16
+ /**
17
+ * Check if running in Node.js environment
18
+ */
19
+ static isNodeJS(): boolean;
20
+ /**
21
+ * Get the current platform type
22
+ */
23
+ static getPlatformType(): PlatformType;
5
24
  }
25
+ export {};
@@ -1,6 +1,6 @@
1
1
  import { RequestRole } from "./../constant/enumType/RequestRole";
2
2
  import { RequestType } from "./../constant/enumType/RequestType";
3
- import { OperationRequest } from "./OperationRequest";
3
+ import { OperationRequest } from "./../entity/OperationRequest";
4
4
  export declare class OperationHelper {
5
5
  static toSocketData(requestType: RequestType, role: RequestRole, request: OperationRequest): any;
6
6
  static toHttpData(requestType: RequestType, role: RequestRole, request: OperationRequest): any;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * StorageService - Cross-platform storage abstraction for GearN SDK
3
+ * Supports: Browser localStorage, Node.js, Cocos Creator 3.x
4
+ */
5
+ export declare class StorageService {
6
+ /**
7
+ * Get a value from storage
8
+ * @param key Storage key
9
+ * @param defaultValue Default value if key doesn't exist
10
+ */
11
+ static getString(key: string, defaultValue?: string): any;
12
+ /**
13
+ * Set a value in storage
14
+ * @param key Storage key
15
+ * @param value Value to store
16
+ */
17
+ static setString(key: string, value: string): void;
18
+ }
@@ -10,7 +10,7 @@ import { RequestType } from "./../constant/enumType/RequestType";
10
10
  import { RequestRole } from "./../constant/enumType/RequestRole";
11
11
  import { GetAuthInfoResponse } from "./../entity/response/GetAuthInfoResponse";
12
12
  import { UploadFileResponse } from "./../entity/response/UploadFileResponse";
13
- import { HealthCheckResponse } from "../entity/response/HealthCheckResponse";
13
+ import { HealthCheckResponse } from "./../entity/response/HealthCheckResponse";
14
14
  export declare class NetworkingPeer {
15
15
  static readonly SYNC_TS: string;
16
16
  static readonly GET_AUTH_INFO: string;
@@ -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,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,18 +1,19 @@
1
1
  {
2
2
  "name": "@xmobitea/gn-typescript-client",
3
- "version": "2.6.12-tsc",
3
+ "version": "2.6.13",
4
4
  "description": "GearN Typescript Client SDK by XmobiTea (Pro)",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",
7
7
  "scripts": {
8
- "dev": "rm -rf ./dist && npm run buildnode && npm run debug",
8
+ "dev": "rm -rf ./dist && npm run build:node && npm run debug",
9
9
  "debug": "node index.js",
10
10
  "test": "mocha -r ts-node/register ./test/**/*.test.ts",
11
- "buildnode": "webpack --config webpack.config.mjs --mode production --stats-modules",
12
- "buildudm": "webpack --config webpack.config.udm.mjs --mode production --stats-modules",
13
- "buildminudm": "webpack --config webpack.config.min.udm.mjs --mode production --stats-modules",
14
- "build": "rm -rf ./dist && npm run buildnode && npm run buildudm && npm run buildminudm",
11
+ "build:node": "webpack --config webpack.config.mjs --mode production --stats-modules",
12
+ "build:udm": "webpack --config webpack.config.udm.mjs --mode production --stats-modules",
13
+ "build:minudm": "webpack --config webpack.config.min.udm.mjs --mode production --stats-modules",
14
+ "build": "rm -rf ./dist && npm run build:node && npm run build:udm && npm run build:minudm",
15
15
  "build:withoutwebpack": "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)",
@@ -32,10 +33,10 @@
32
33
  "webpack-node-externals": "^3.0.0"
33
34
  },
34
35
  "dependencies": {
35
- "@msgpack/msgpack": "^2.8.0",
36
- "axios": "^1.10.0",
36
+ "@msgpack/msgpack": "^3.1.3",
37
+ "axios": "^1.13.2",
37
38
  "reflect-metadata": "^0.2.2",
38
- "socket.io-client": "^4.8.1",
39
+ "socket.io-client": "^4.8.3",
39
40
  "store": "^2.0.12"
40
41
  },
41
42
  "directories": {
@@ -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
+ )