@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.
- package/LICENSE +1 -1
- package/README.MD +1 -0
- package/dist/gearn.js.client.js +47354 -0
- package/dist/gearn.js.client.min.js +2 -0
- package/dist/gearn.js.client.min.js.LICENSE.txt +14 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +34362 -339
- package/dist/runtime/GNNetwork.d.ts +1 -1
- package/dist/runtime/helper/GNSupport.d.ts +20 -0
- package/dist/runtime/{entity → helper}/OperationHelper.d.ts +1 -1
- package/dist/runtime/helper/StorageService.d.ts +18 -0
- package/dist/runtime/networking/NetworkingPeer.d.ts +1 -1
- package/dist/runtime/typescript/ServiceUpdate.d.ts +2 -0
- package/docs/COCOS_CREATOR_INTEGRATION.md +116 -0
- package/examples/cocos-creator/GearNExample.ts.txt +176 -0
- package/package.json +11 -10
- package/srcSwift/Package.swift +32 -0
- package/srcSwift/Sources/GearN/runtime/GNNetwork.swift +530 -0
- package/srcSwift/Sources/GearN/runtime/GNNetworkAuthenticateApi.swift +178 -0
- package/srcSwift/Sources/GearN/runtime/GNNetworkCharacterPlayerApi.swift +1162 -0
- package/srcSwift/Sources/GearN/runtime/GNNetworkCloudScriptApi.swift +154 -0
- package/srcSwift/Sources/GearN/runtime/GNNetworkContentApi.swift +208 -0
- package/srcSwift/Sources/GearN/runtime/GNNetworkDashboardApi.swift +240 -0
- package/srcSwift/Sources/GearN/runtime/GNNetworkGamePlayerApi.swift +1369 -0
- package/srcSwift/Sources/GearN/runtime/GNNetworkGroupApi.swift +1100 -0
- package/srcSwift/Sources/GearN/runtime/GNNetworkInventoryApi.swift +937 -0
- package/srcSwift/Sources/GearN/runtime/GNNetworkMasterPlayerApi.swift +2323 -0
- package/srcSwift/Sources/GearN/runtime/GNNetworkMultiplayerApi.swift +298 -0
- package/srcSwift/Sources/GearN/runtime/GNNetworkStoreInventoryApi.swift +397 -0
- package/srcSwift/Sources/GearN/runtime/common/Action0.swift +3 -0
- package/srcSwift/Sources/GearN/runtime/common/Action1.swift +3 -0
- package/srcSwift/Sources/GearN/runtime/common/Action2.swift +3 -0
- package/srcSwift/Sources/GearN/runtime/common/Action3.swift +3 -0
- package/srcSwift/Sources/GearN/runtime/common/Action4.swift +3 -0
- package/srcSwift/Sources/GearN/runtime/common/GNArray.swift +204 -0
- package/srcSwift/Sources/GearN/runtime/common/GNData.swift +108 -0
- package/srcSwift/Sources/GearN/runtime/common/GNHashtable.swift +200 -0
- package/srcSwift/Sources/GearN/runtime/config/GNServerSettings.swift +95 -0
- package/srcSwift/Sources/GearN/runtime/constant/Commands.swift +28 -0
- package/srcSwift/Sources/GearN/runtime/constant/EventCode.swift +10 -0
- package/srcSwift/Sources/GearN/runtime/constant/OperationCode.swift +252 -0
- package/srcSwift/Sources/GearN/runtime/constant/ReturnCode.swift +19 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/ExecuteResponseStatus.swift +9 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/FriendStatus.swift +8 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/GoogleLoginType.swift +6 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/GroupStatus.swift +8 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/InvalidMemberType.swift +19 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/ItemType.swift +6 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/MatchmakingMemberStatus.swift +7 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/MatchmakingTicketStatus.swift +9 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/OwnerType.swift +10 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/PermissionDataItem.swift +6 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/PushPlatformType.swift +6 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/RequestRole.swift +7 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/RequestType.swift +16 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/StoreItemType.swift +6 -0
- package/srcSwift/Sources/GearN/runtime/constant/enumType/StoreReceiveType.swift +9 -0
- package/srcSwift/Sources/GearN/runtime/constant/errorCode/ErrorCode.swift +58 -0
- package/srcSwift/Sources/GearN/runtime/constant/parameterCode/ParameterCode.swift +672 -0
- package/srcSwift/Sources/GearN/runtime/entity/DataMember.swift +196 -0
- package/srcSwift/Sources/GearN/runtime/entity/GNMetadata.swift +9 -0
- package/srcSwift/Sources/GearN/runtime/entity/InvalidMember.swift +11 -0
- package/srcSwift/Sources/GearN/runtime/entity/OperationEvent.swift +38 -0
- package/srcSwift/Sources/GearN/runtime/entity/OperationHelper.swift +28 -0
- package/srcSwift/Sources/GearN/runtime/entity/OperationRequest.swift +62 -0
- package/srcSwift/Sources/GearN/runtime/entity/OperationResponse.swift +98 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/AuthenticateModels.swift +351 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/AuthenticateRequestModels.swift +81 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/AuthenticateResponseModels.swift +108 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/CharacterPlayerModels.swift +1045 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/CharacterPlayerRequestModels.swift +821 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/CharacterPlayerResponseModels.swift +588 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/CloudScriptModels.swift +187 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/CloudScriptRequestModels.swift +84 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/CloudScriptResponseModels.swift +59 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/ContentModels.swift +195 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/ContentRequestModels.swift +116 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/ContentResponseModels.swift +81 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/DashboardModels.swift +426 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/DashboardRequestModels.swift +160 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/DashboardResponseModels.swift +82 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/GamePlayerModels.swift +1334 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/GamePlayerRequestModels.swift +643 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/GamePlayerResponseModels.swift +213 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/GenericModels.swift +171 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/GroupModels.swift +850 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/GroupRequestModels.swift +485 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/GroupResponseModels.swift +165 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/InventoryModels.swift +679 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/InventoryRequestModels.swift +413 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/InventoryResponseModels.swift +141 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/MasterPlayerModels.swift +378 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/MasterPlayerRequestModels.swift +147 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/MasterPlayerResponseModels.swift +318 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/MultiplayerModels.swift +319 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/MultiplayerRequestModels.swift +125 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/MultiplayerResponseModels.swift +45 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/StoreInventoryModels.swift +633 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/StoreInventoryRequestModels.swift +173 -0
- package/srcSwift/Sources/GearN/runtime/entity/models/StoreInventoryResponseModels.swift +61 -0
- package/srcSwift/Sources/GearN/runtime/entity/request/CustomOperationRequest.swift +42 -0
- package/srcSwift/Sources/GearN/runtime/entity/response/CustomOperationResponse.swift +49 -0
- package/srcSwift/Sources/GearN/runtime/entity/response/GetAuthInfoResponse.swift +43 -0
- package/srcSwift/Sources/GearN/runtime/entity/response/HealthCheckResponse.swift +86 -0
- package/srcSwift/Sources/GearN/runtime/entity/response/UploadFileResponse.swift +15 -0
- package/srcSwift/Sources/GearN/runtime/helper/CodeHelper.swift +107 -0
- package/srcSwift/Sources/GearN/runtime/helper/ConverterService.swift +98 -0
- package/srcSwift/Sources/GearN/runtime/helper/EnumUtility.swift +34 -0
- package/srcSwift/Sources/GearN/runtime/helper/GNSupport.swift +41 -0
- package/srcSwift/Sources/GearN/runtime/helper/GNUtils.swift +66 -0
- package/srcSwift/Sources/GearN/runtime/helper/MessagePackConverterService.swift +21 -0
- package/srcSwift/Sources/GearN/runtime/helper/StorageService.swift +29 -0
- package/srcSwift/Sources/GearN/runtime/logger/GNDebug.swift +33 -0
- package/srcSwift/Sources/GearN/runtime/networking/AuthenticateStatus.swift +24 -0
- package/srcSwift/Sources/GearN/runtime/networking/IPeer.swift +8 -0
- package/srcSwift/Sources/GearN/runtime/networking/NetworkingPeer.swift +368 -0
- package/srcSwift/Sources/GearN/runtime/networking/OperationPending.swift +81 -0
- package/srcSwift/Sources/GearN/runtime/networking/PeerBase.swift +228 -0
- package/srcSwift/Sources/GearN/runtime/networking/handler/IServerEventHandler.swift +20 -0
- package/srcSwift/Sources/GearN/runtime/networking/http/HttpPeer.swift +226 -0
- package/srcSwift/Sources/GearN/runtime/networking/http/HttpTypes.swift +24 -0
- package/srcSwift/Sources/GearN/runtime/networking/http/NetworkingHttpPeerBase.swift +13 -0
- package/srcSwift/Sources/GearN/runtime/networking/http/NetworkingPeerUrlSession.swift +125 -0
- package/srcSwift/Sources/GearN/runtime/networking/request/NetRequest.swift +19 -0
- package/srcSwift/Sources/GearN/runtime/networking/response/NetResponse.swift +13 -0
- package/srcSwift/Sources/GearN/runtime/networking/socket/NetworkingPeerSocketIOClient.swift +244 -0
- package/srcSwift/Sources/GearN/runtime/networking/socket/NetworkingSocketPeerBase.swift +59 -0
- package/srcSwift/Sources/GearN/runtime/networking/socket/SocketPeer.swift +136 -0
- package/tsconfig-build.cocos.json +31 -0
- package/webpack.config.cocos.mjs +78 -0
- package/dist/runtime/GNNetwork.js +0 -260
- package/dist/runtime/GNNetworkAuthenticateApi.js +0 -122
- package/dist/runtime/GNNetworkCharacterPlayerApi.js +0 -968
- package/dist/runtime/GNNetworkCloudScriptApi.js +0 -104
- package/dist/runtime/GNNetworkContentApi.js +0 -140
- package/dist/runtime/GNNetworkDashboardApi.js +0 -170
- package/dist/runtime/GNNetworkGamePlayerApi.js +0 -950
- package/dist/runtime/GNNetworkGroupApi.js +0 -734
- package/dist/runtime/GNNetworkInventoryApi.js +0 -626
- package/dist/runtime/GNNetworkMasterPlayerApi.js +0 -1550
- package/dist/runtime/GNNetworkMultiplayerApi.js +0 -194
- package/dist/runtime/GNNetworkStoreInventoryApi.js +0 -266
- package/dist/runtime/common/Action0.js +0 -1
- package/dist/runtime/common/Action1.js +0 -1
- package/dist/runtime/common/Action2.js +0 -1
- package/dist/runtime/common/Action3.js +0 -1
- package/dist/runtime/common/Action4.js +0 -1
- package/dist/runtime/common/GNData.js +0 -211
- package/dist/runtime/config/GNServerSettings.js +0 -156
- package/dist/runtime/constant/Commands.js +0 -20
- package/dist/runtime/constant/EventCode.js +0 -8
- package/dist/runtime/constant/OperationCode.js +0 -221
- package/dist/runtime/constant/ReturnCode.js +0 -14
- package/dist/runtime/constant/enumType/ExecuteResponseStatus.js +0 -8
- package/dist/runtime/constant/enumType/FriendStatus.js +0 -7
- package/dist/runtime/constant/enumType/GoogleLoginType.js +0 -5
- package/dist/runtime/constant/enumType/GroupStatus.js +0 -7
- package/dist/runtime/constant/enumType/InvalidMemberType.js +0 -18
- package/dist/runtime/constant/enumType/ItemType.js +0 -5
- package/dist/runtime/constant/enumType/MatchmakingMemberStatus.js +0 -6
- package/dist/runtime/constant/enumType/MatchmakingTicketStatus.js +0 -8
- package/dist/runtime/constant/enumType/OwnerType.js +0 -9
- package/dist/runtime/constant/enumType/PermissionDataItem.js +0 -5
- package/dist/runtime/constant/enumType/PushPlatformType.js +0 -5
- package/dist/runtime/constant/enumType/RequestRole.js +0 -6
- package/dist/runtime/constant/enumType/RequestType.js +0 -15
- package/dist/runtime/constant/enumType/StoreItemType.js +0 -5
- package/dist/runtime/constant/enumType/StoreReceiveType.js +0 -8
- package/dist/runtime/constant/errorCode/ErrorCode.js +0 -52
- package/dist/runtime/constant/parameterCode/ParameterCode.js +0 -617
- package/dist/runtime/entity/DataMember.js +0 -208
- package/dist/runtime/entity/GNMetadata.js +0 -11
- package/dist/runtime/entity/InvalidMember.js +0 -1
- package/dist/runtime/entity/OperationEvent.js +0 -24
- package/dist/runtime/entity/OperationHelper.js +0 -24
- package/dist/runtime/entity/OperationRequest.js +0 -42
- package/dist/runtime/entity/OperationResponse.js +0 -73
- package/dist/runtime/entity/models/AuthenticateModels.js +0 -426
- package/dist/runtime/entity/models/AuthenticateRequestModels.js +0 -188
- package/dist/runtime/entity/models/AuthenticateResponseModels.js +0 -131
- package/dist/runtime/entity/models/CharacterPlayerModels.js +0 -1433
- package/dist/runtime/entity/models/CharacterPlayerRequestModels.js +0 -1386
- package/dist/runtime/entity/models/CharacterPlayerResponseModels.js +0 -376
- package/dist/runtime/entity/models/CloudScriptModels.js +0 -197
- package/dist/runtime/entity/models/CloudScriptRequestModels.js +0 -138
- package/dist/runtime/entity/models/CloudScriptResponseModels.js +0 -40
- package/dist/runtime/entity/models/ContentModels.js +0 -203
- package/dist/runtime/entity/models/ContentRequestModels.js +0 -190
- package/dist/runtime/entity/models/ContentResponseModels.js +0 -54
- package/dist/runtime/entity/models/DashboardModels.js +0 -3002
- package/dist/runtime/entity/models/DashboardRequestModels.js +0 -268
- package/dist/runtime/entity/models/DashboardResponseModels.js +0 -187
- package/dist/runtime/entity/models/GamePlayerModels.js +0 -1591
- package/dist/runtime/entity/models/GamePlayerRequestModels.js +0 -1360
- package/dist/runtime/entity/models/GamePlayerResponseModels.js +0 -369
- package/dist/runtime/entity/models/GenericModels.js +0 -177
- package/dist/runtime/entity/models/GroupModels.js +0 -1135
- package/dist/runtime/entity/models/GroupRequestModels.js +0 -1048
- package/dist/runtime/entity/models/GroupResponseModels.js +0 -285
- package/dist/runtime/entity/models/InventoryModels.js +0 -915
- package/dist/runtime/entity/models/InventoryRequestModels.js +0 -892
- package/dist/runtime/entity/models/InventoryResponseModels.js +0 -243
- package/dist/runtime/entity/models/MasterPlayerModels.js +0 -2573
- package/dist/runtime/entity/models/MasterPlayerRequestModels.js +0 -2228
- package/dist/runtime/entity/models/MasterPlayerResponseModels.js +0 -607
- package/dist/runtime/entity/models/MultiplayerModels.js +0 -404
- package/dist/runtime/entity/models/MultiplayerRequestModels.js +0 -268
- package/dist/runtime/entity/models/MultiplayerResponseModels.js +0 -75
- package/dist/runtime/entity/models/StoreInventoryModels.js +0 -797
- package/dist/runtime/entity/models/StoreInventoryRequestModels.js +0 -372
- package/dist/runtime/entity/models/StoreInventoryResponseModels.js +0 -103
- package/dist/runtime/entity/request/CustomOperationRequest.js +0 -24
- package/dist/runtime/entity/response/CustomOperationResponse.js +0 -29
- package/dist/runtime/entity/response/GetAuthInfoResponse.js +0 -2
- package/dist/runtime/entity/response/HealthCheckResponse.js +0 -2
- package/dist/runtime/entity/response/UploadFileResponse.js +0 -2
- package/dist/runtime/helper/CodeHelper.js +0 -63
- package/dist/runtime/helper/ConverterService.js +0 -275
- package/dist/runtime/helper/EnumUtility.js +0 -33
- package/dist/runtime/helper/GNSupport.js +0 -8
- package/dist/runtime/helper/GNUtils.js +0 -72
- package/dist/runtime/helper/MessagePackConverterService.js +0 -9
- package/dist/runtime/logger/GNDebug.js +0 -29
- package/dist/runtime/networking/AuthenticateStatus.js +0 -14
- package/dist/runtime/networking/IPeer.js +0 -1
- package/dist/runtime/networking/NetworkingPeer.js +0 -208
- package/dist/runtime/networking/OperationPending.js +0 -53
- package/dist/runtime/networking/PeerBase.js +0 -161
- package/dist/runtime/networking/handler/IServerEventHandler.js +0 -13
- package/dist/runtime/networking/handler/OnCharacterPlayerFriendUpdateEventHandler.js +0 -39
- package/dist/runtime/networking/handler/OnCharacterPlayerGroupUpdateEventHandler.js +0 -39
- package/dist/runtime/networking/handler/OnGamePlayerFriendUpdateEventHandler.js +0 -39
- package/dist/runtime/networking/handler/OnGamePlayerGroupUpdateEventHandler.js +0 -39
- package/dist/runtime/networking/handler/OnGroupMemberUpdateEventHandler.js +0 -35
- package/dist/runtime/networking/handler/OnGroupMessageUpdateEventHandler.js +0 -43
- package/dist/runtime/networking/http/HttpPeer.js +0 -123
- package/dist/runtime/networking/http/NetworkingHttpPeerBase.js +0 -9
- package/dist/runtime/networking/http/NetworkingPeerAxiosRequest.js +0 -179
- package/dist/runtime/networking/socket/NetworkingPeerSocketIOClient.js +0 -130
- package/dist/runtime/networking/socket/NetworkingSocketPeerBase.js +0 -165
- package/dist/runtime/networking/socket/SocketPeer.js +0 -115
- 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():
|
|
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 "
|
|
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 "
|
|
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;
|
|
@@ -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.
|
|
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
|
|
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
|
-
"
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
"build": "rm -rf ./dist && npm run
|
|
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": "^
|
|
36
|
-
"axios": "^1.
|
|
36
|
+
"@msgpack/msgpack": "^3.1.3",
|
|
37
|
+
"axios": "^1.13.2",
|
|
37
38
|
"reflect-metadata": "^0.2.2",
|
|
38
|
-
"socket.io-client": "^4.8.
|
|
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
|
+
)
|