@zhin.js/game-kit 2.0.4 → 3.0.0
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.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type PluginMetadata, type PluginDatabaseHost, type PluginSetupContext, type Token } from '@zhin.js/plugin-runtime';
|
|
2
2
|
import { type InMemoryGameDb } from './memory-db.js';
|
|
3
3
|
import { type RuntimeRegisteredGame } from './runtime-hub.js';
|
|
4
4
|
import type { BaseGameSessionRow, BaseSessionService } from './base-session-service.js';
|
|
@@ -12,7 +12,8 @@ export interface DefineGamePluginOptions<TServices, TRow extends BaseGameSession
|
|
|
12
12
|
readonly game: RuntimeRegisteredGame;
|
|
13
13
|
readonly tables: readonly string[];
|
|
14
14
|
readonly servicesToken: Token<TServices>;
|
|
15
|
-
|
|
15
|
+
/** Receives the owning plugin's logical database namespace, never the raw process host. */
|
|
16
|
+
readonly defineHostTables: (host: PluginDatabaseHost) => void;
|
|
16
17
|
readonly createServices: (database: InMemoryGameDb) => TServices;
|
|
17
18
|
readonly session: (services: TServices) => GamePluginSession<TRow> | BaseSessionService<TRow>;
|
|
18
19
|
readonly stale?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define-game-plugin.d.ts","sourceRoot":"","sources":["../src/define-game-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,
|
|
1
|
+
{"version":3,"file":"define-game-plugin.d.ts","sourceRoot":"","sources":["../src/define-game-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,KAAK,EACX,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AAOxB,OAAO,EAIL,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACV,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,2BAA2B,CAAC;AAEnC,MAAM,WAAW,iBAAiB,CAChC,IAAI,SAAS,kBAAkB,GAAG,kBAAkB;IAEpD,UAAU,CACR,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAClD,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,mBAAmB,CAAC,IAAI,MAAM,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,uBAAuB,CACtC,SAAS,EACT,IAAI,SAAS,kBAAkB,GAAG,kBAAkB,EACpD,OAAO,GAAG,OAAO;IAEjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACzC,2FAA2F;IAC3F,QAAQ,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC9D,QAAQ,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,SAAS,CAAC;IACjE,QAAQ,CAAC,OAAO,EAAE,CAChB,QAAQ,EAAE,SAAS,KAChB,iBAAiB,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACxD,QAAQ,CAAC,KAAK,CAAC,EAAE;QACf,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC;QACxD,QAAQ,CAAC,SAAS,CAAC,EAAE,CACnB,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,KACjC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KAC3B,GAAG,KAAK,CAAC;IACV,QAAQ,CAAC,KAAK,CAAC,EAAE,CACf,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,EACpC,QAAQ,EAAE,SAAS,KAChB,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;CACzD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EACT,IAAI,SAAS,kBAAkB,GAAG,kBAAkB,EACpD,OAAO,GAAG,OAAO,EAEjB,OAAO,EAAE,uBAAuB,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,yEA+E3D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define-game-plugin.js","sourceRoot":"","sources":["../src/define-game-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,GAKlB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,gBAAgB,EAChB,oBAAoB,GAErB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,kBAAkB,EAClB,iBAAiB,GAElB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,mBAAmB,GAEpB,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"define-game-plugin.js","sourceRoot":"","sources":["../src/define-game-plugin.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhin.js/game-kit",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"description": "Zhin.js 游戏插件通用工具包",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./lib/index.js",
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
}
|
|
14
14
|
},
|
|
15
15
|
"peerDependencies": {
|
|
16
|
-
"zhin.js": "^
|
|
17
|
-
"@zhin.js/html-renderer": "
|
|
16
|
+
"zhin.js": "^6.0.0",
|
|
17
|
+
"@zhin.js/html-renderer": "3.0.0"
|
|
18
18
|
},
|
|
19
19
|
"peerDependenciesMeta": {
|
|
20
20
|
"@zhin.js/html-renderer": {
|
|
@@ -22,14 +22,14 @@
|
|
|
22
22
|
}
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@zhin.js/core": "1.
|
|
25
|
+
"@zhin.js/core": "1.5.0",
|
|
26
26
|
"@zhin.js/middleware": "1.0.4",
|
|
27
27
|
"@zhin.js/plugin-runtime": "1.1.1",
|
|
28
28
|
"@zhin.js/satori": "1.0.17"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"typescript": "^6.0.3",
|
|
32
|
-
"zhin.js": "
|
|
32
|
+
"zhin.js": "6.0.0"
|
|
33
33
|
},
|
|
34
34
|
"files": [
|
|
35
35
|
"lib",
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
definePlugin,
|
|
4
4
|
outboundHostToken,
|
|
5
5
|
scheduleHostToken,
|
|
6
|
-
type DatabaseHost,
|
|
7
6
|
type PluginMetadata,
|
|
7
|
+
type PluginDatabaseHost,
|
|
8
8
|
type PluginSetupContext,
|
|
9
9
|
type Token,
|
|
10
10
|
} from '@zhin.js/plugin-runtime';
|
|
@@ -50,7 +50,8 @@ export interface DefineGamePluginOptions<
|
|
|
50
50
|
readonly game: RuntimeRegisteredGame;
|
|
51
51
|
readonly tables: readonly string[];
|
|
52
52
|
readonly servicesToken: Token<TServices>;
|
|
53
|
-
|
|
53
|
+
/** Receives the owning plugin's logical database namespace, never the raw process host. */
|
|
54
|
+
readonly defineHostTables: (host: PluginDatabaseHost) => void;
|
|
54
55
|
readonly createServices: (database: InMemoryGameDb) => TServices;
|
|
55
56
|
readonly session: (
|
|
56
57
|
services: TServices,
|
|
@@ -92,7 +93,7 @@ export function defineGamePlugin<
|
|
|
92
93
|
options.defineHostTables(host);
|
|
93
94
|
database = createHostGameDb(host, options.tables);
|
|
94
95
|
context.lifecycle.add(
|
|
95
|
-
initGameRecordHost(host as
|
|
96
|
+
initGameRecordHost(host as GameRecordDatabaseHost),
|
|
96
97
|
);
|
|
97
98
|
} else {
|
|
98
99
|
database = createInMemoryGameDb(options.tables);
|