def-game 2.3.0 → 3.0.1

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.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=example.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../src/example.ts"],"names":[],"mappings":""}
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const helper_1 = require("./helper");
4
+ const customEventHander = (r) => {
5
+ switch (r.type) {
6
+ case "login":
7
+ return [
8
+ {
9
+ type: "authorize",
10
+ payload: {
11
+ name: "a",
12
+ password: "b",
13
+ },
14
+ },
15
+ {
16
+ type: "authenticate",
17
+ payload: {
18
+ name: "a",
19
+ level: 1,
20
+ },
21
+ }
22
+ ];
23
+ case "complicatedReq":
24
+ return [
25
+ {
26
+ type: "task1",
27
+ payload: {
28
+ name: "a",
29
+ password: "b",
30
+ },
31
+ },
32
+ {
33
+ type: "task2",
34
+ payload: {
35
+ name: "a",
36
+ level: 1,
37
+ },
38
+ },
39
+ {
40
+ type: "task3",
41
+ payload: {
42
+ name: "a",
43
+ level: 1,
44
+ },
45
+ }
46
+ ];
47
+ default:
48
+ return [];
49
+ }
50
+ };
51
+ // no need to write process that handles simple requests
52
+ const _sampleGenerateTasks = (0, helper_1.simplify)(customEventHander);
53
+ // ------------------------------------------------------------
54
+ // this is how you handle tasks
55
+ // task cases are composed
56
+ // - keyof SimpleOnlyPayload<Req>
57
+ // - keyof Tasks
58
+ const _switchTask = (task) => {
59
+ switch (task.type) {
60
+ case "move":
61
+ return moveTaskHandler(task.payload);
62
+ // login is a custom request, so we need to handle it differently
63
+ case "authorize":
64
+ return authorizeTaskHandler(task.payload);
65
+ case "authenticate":
66
+ return authenticateTaskHandler(task.payload);
67
+ case "task1":
68
+ return task1Handler(task.payload);
69
+ case "task2":
70
+ return task2Handler(task.payload);
71
+ case "task3":
72
+ return task3Handler(task.payload);
73
+ default:
74
+ const _exhaustiveCheck = task;
75
+ console.log("unknown event", task);
76
+ }
77
+ };
78
+ const moveTaskHandler = (payload) => {
79
+ console.log(payload);
80
+ };
81
+ const authorizeTaskHandler = (payload) => {
82
+ console.log(payload);
83
+ };
84
+ const authenticateTaskHandler = (payload) => {
85
+ console.log(payload);
86
+ };
87
+ const task1Handler = (payload) => {
88
+ console.log(payload);
89
+ };
90
+ const task2Handler = (payload) => {
91
+ console.log(payload);
92
+ };
93
+ const task3Handler = (payload) => {
94
+ console.log(payload);
95
+ };
96
+ // ------------------------------------------------------------
@@ -0,0 +1,6 @@
1
+ import { Custom, CustomOnly, ReqMap, ReqPayload, Simple, Task, ToServer } from "./types";
2
+ export declare const simple: <T extends ReqPayload>(payload: T) => Simple<T>;
3
+ export declare const custom: <T extends ReqPayload>(payload: T) => Custom<T>;
4
+ export type CustomEventHander<A extends ReqMap, B extends Record<string, any>> = (r: ToServer<CustomOnly<A>>) => Task<A, B>[];
5
+ export declare const simplify: <A extends ReqMap, B extends Record<string, any>>(h: CustomEventHander<A, B>) => (a: ToServer<A>) => Task<A, B>[];
6
+ //# sourceMappingURL=helper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAqB,IAAI,EAAe,QAAQ,EAAE,MAAM,SAAS,CAAA;AAExH,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,UAAU,EAAE,SAAS,CAAC,KAAG,MAAM,CAAC,CAAC,CAKjE,CAAA;AAED,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,UAAU,EAAE,SAAS,CAAC,KAAG,MAAM,CAAC,CAAC,CAKjE,CAAA;AAED,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IACvE,CAAC,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAA;AAGlD,eAAO,MAAM,QAAQ,GAChB,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,MACvE,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAe3B,CAAA"}
package/dist/helper.js ADDED
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.simplify = exports.custom = exports.simple = void 0;
4
+ const simple = (payload) => {
5
+ return {
6
+ kind: "simple",
7
+ value: payload
8
+ };
9
+ };
10
+ exports.simple = simple;
11
+ const custom = (payload) => {
12
+ return {
13
+ kind: "custom",
14
+ value: payload
15
+ };
16
+ };
17
+ exports.custom = custom;
18
+ const simplify = (h) => (a) => {
19
+ switch (a.payload.kind) {
20
+ case "simple":
21
+ const key = a.type;
22
+ const payload = a.payload.value;
23
+ return [
24
+ {
25
+ type: key,
26
+ payload,
27
+ }
28
+ ];
29
+ case "custom":
30
+ const b = a;
31
+ return h(b);
32
+ }
33
+ };
34
+ exports.simplify = simplify;
@@ -1,11 +1,11 @@
1
- import { DefaultGameLogicState, GameParameters, GameRule, GameState, Player, ToServer } from "./types";
2
- export declare class GameEngine<T extends Record<string, any>, S extends Record<string, any>, C extends Record<string, any>, L extends DefaultGameLogicState<S, C>, P extends GameParameters> {
1
+ import { DefaultGameLogicState, GameParameters, GameRule, GameState, Player, ReqMap, ToServer } from "./types";
2
+ export declare class GameEngine<T extends Record<string, any>, S extends Record<string, any>, C extends ReqMap, L extends DefaultGameLogicState<S>, P extends GameParameters> {
3
3
  private rules;
4
4
  private storage;
5
5
  constructor(rules: GameRule<T, S, C, L, P>);
6
6
  createRoom(p: P): void;
7
7
  join(player: Player): void;
8
- executeAction(action: ToServer<S, C>): GameState<T, S, C, L, P>;
8
+ executeAction(action: ToServer<C>): GameState<T, S, C, L, P>;
9
9
  getState(): GameState<T, S, C, L, P>;
10
10
  setState(state: GameState<T, S, C, L, P>): void;
11
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"simulator.d.ts","sourceRoot":"","sources":["../src/simulator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAU,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAG/G,qBAAa,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,SAAS,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,SAAS,cAAc;IAChL,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,OAAO,CAAkC;gBAErC,KAAK,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAa1C,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI;IAMtB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM1B,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAc/D,QAAQ,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAIpC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI;CAGlD"}
1
+ {"version":3,"file":"simulator.d.ts","sourceRoot":"","sources":["../src/simulator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAU,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGvH,qBAAa,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,cAAc;IAChK,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,OAAO,CAAkC;gBAErC,KAAK,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAa1C,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI;IAMtB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM1B,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAc5D,QAAQ,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAIpC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI;CAGlD"}
package/dist/types.d.ts CHANGED
@@ -1,13 +1,34 @@
1
1
  type Map = Record<string, any>;
2
+ type Merge<A, B> = {
3
+ [K in keyof A | keyof B]: K extends keyof B ? B[K] : K extends keyof A ? A[K] : never;
4
+ };
5
+ export interface ReqPayload {
6
+ senderId: PlayerId;
7
+ }
8
+ export type ReqMap = Record<string, Simple<ReqPayload> | Custom<ReqPayload>>;
9
+ export type Simple<T extends ReqPayload> = {
10
+ kind: "simple";
11
+ value: T;
12
+ };
13
+ export type Custom<T extends ReqPayload> = {
14
+ kind: "custom";
15
+ value: T;
16
+ };
2
17
  export type FromServerMap<T extends Map> = T;
3
- export type ToServerMap<T extends Map> = T;
4
- export type TaskMap<T extends Map> = T;
5
- export type InteractionMapType<S extends Map, C extends Map> = {
6
- [key in InteractionKey<S, C>]: {
7
- fromServer: FromServerMap<S>[key];
8
- toServer: ToServerMap<C>[key];
9
- };
18
+ export type ToServerMap<T extends ReqMap> = T;
19
+ export type CustomTaskMap<T extends Map> = T;
20
+ export type ExtractSimplePayload<T> = T extends Simple<infer U> ? U : never;
21
+ export type ExtractCustomPayload<T> = T extends Custom<infer U> ? U : never;
22
+ export type SimpleOnlyPayload<T extends ReqMap> = {
23
+ [K in keyof T as T[K] extends Simple<any> ? K : never]: ExtractSimplePayload<T[K]>;
24
+ };
25
+ export type CustomOnlyPayload<T extends ReqMap> = {
26
+ [K in keyof T as T[K] extends Custom<any> ? K : never]: ExtractCustomPayload<T[K]>;
10
27
  };
28
+ export type CustomOnly<T extends ReqMap> = {
29
+ [K in keyof T as T[K] extends Custom<any> ? K : never]: T[K];
30
+ };
31
+ export type TaskMapType<A extends ReqMap, B extends Map> = Merge<SimpleOnlyPayload<A>, CustomTaskMap<B>>;
11
32
  export type Player = {
12
33
  id: PlayerId;
13
34
  name: string;
@@ -20,57 +41,54 @@ export interface GameParameters {
20
41
  owner: Player;
21
42
  joiner: Joiner;
22
43
  }
23
- export interface DefaultGameLogicState<S extends Map, C extends Map> {
24
- forClient: ForClient<S, C>;
44
+ export interface DefaultGameLogicState<S extends Map> {
45
+ forClient: ForClient<S>;
25
46
  }
26
47
  export type FromServerDataType<T extends Map> = keyof FromServerMap<T>;
27
48
  export type ToServerDataType<T extends Map> = keyof ToServerMap<T>;
28
49
  export type FromServerData<T extends Map> = {
29
- type: FromServerDataType<T>;
30
- payload: FromServerMap<T>[FromServerDataType<T>];
31
- };
32
- export type ToServerData<T extends Map> = {
33
- type: ToServerDataType<T>;
34
- payload: ToServerMap<T>[ToServerDataType<T>];
35
- };
36
- export type InteractionKey<S extends Map, C extends Map> = Extract<keyof FromServerMap<S>, keyof ToServerMap<C>>;
37
- export type InteractionFromServerData<S extends Map, C extends Map> = {
38
- type: InteractionKey<S, C>;
39
- payload: InteractionMapType<S, C>[InteractionKey<S, C>]["fromServer"];
40
- };
41
- export type InteractionToServerData<S extends Map, C extends Map> = {
42
- type: InteractionKey<S, C>;
43
- payload: InteractionMapType<S, C>[InteractionKey<S, C>]["toServer"];
44
- };
45
- export type FromServer<S extends Map, C extends Map> = FromServerData<S> | InteractionFromServerData<S, C>;
46
- export type ToServer<S extends Map, C extends Map> = ToServerData<C> | InteractionToServerData<S, C>;
50
+ [K in keyof T]: {
51
+ type: K;
52
+ payload: T[K];
53
+ };
54
+ }[keyof T];
55
+ export type ToServerData<T extends ReqMap> = {
56
+ [K in keyof T]: {
57
+ type: K;
58
+ payload: T[K];
59
+ };
60
+ }[keyof T];
61
+ export type FromServer<S extends Map> = FromServerData<S>;
62
+ export type ToServer<C extends ReqMap> = ToServerData<C>;
47
63
  export type PlayerId = string;
48
- export type ForUI<S extends Map, C extends Map> = {
49
- requiredAction: FromServer<S, C> | null;
50
- notifications: FromServer<S, C>[];
51
- };
52
- export type ForClient<S extends Map, C extends Map> = {
53
- [key: PlayerId]: ForUI<S, C>;
64
+ export type ForUI<S extends Map> = {
65
+ requiredAction: FromServer<S> | null;
66
+ notifications: FromServer<S>[];
54
67
  };
55
- export type Task<T extends Map> = {
56
- type: keyof TaskMap<T>;
57
- args: TaskMap<T>[keyof TaskMap<T>];
68
+ export type ForClient<S extends Map> = {
69
+ [key: PlayerId]: ForUI<S>;
58
70
  };
59
- export interface TaskResult<S extends Map, C extends Map, L extends DefaultGameLogicState<S, C>> {
71
+ export type Task<A extends ReqMap, B extends Map> = {
72
+ [K in keyof TaskMapType<A, B>]: {
73
+ type: K;
74
+ payload: TaskMapType<A, B>[K];
75
+ };
76
+ }[keyof TaskMapType<A, B>];
77
+ export interface TaskResult<S extends Map, L extends DefaultGameLogicState<S>> {
60
78
  type: string;
61
79
  state: L;
62
80
  }
63
- export type GameState<T extends Map, S extends Map, C extends Map, L extends DefaultGameLogicState<S, C>, P extends GameParameters> = {
81
+ export type GameState<T extends Map, S extends Map, C extends ReqMap, L extends DefaultGameLogicState<S>, P extends GameParameters> = {
64
82
  gameLogicState: L;
65
- taskQueue: Task<T>[];
83
+ taskQueue: Task<C, T>[];
66
84
  gameParameters: P | null;
67
85
  };
68
- export interface GameRule<T extends Map, S extends Map, C extends Map, L extends DefaultGameLogicState<S, C>, P extends GameParameters> {
86
+ export interface GameRule<T extends Map, S extends Map, C extends ReqMap, L extends DefaultGameLogicState<S>, P extends GameParameters> {
69
87
  initialGameLogicState: () => L;
70
- createRoom: (state: GameState<T, S, C, L, P>, param: P) => GameState<T, S, C, L, P>;
88
+ createRoom: (state: GameState<T, S, C, L, P>, param: GameParameters) => GameState<T, S, C, L, P>;
71
89
  onStartGame: (state: GameState<T, S, C, L, P>, joiner: Player) => GameState<T, S, C, L, P>;
72
- generateTasks(state: GameState<T, S, C, L, P>, event: ToServer<S, C>): Task<T>[];
73
- prioritizeTasks(newTasks: Task<T>[], gameState: GameState<T, S, C, L, P>): GameState<T, S, C, L, P>;
90
+ generateTasks(state: GameState<T, S, C, L, P>, event: ToServer<C>): Task<T, S>[];
91
+ prioritizeTasks(newTasks: Task<T, S>[], gameState: GameState<T, S, C, L, P>): GameState<T, S, C, L, P>;
74
92
  doTasks(state: GameState<T, S, C, L, P>): GameState<T, S, C, L, P>;
75
93
  }
76
94
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC/B,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI;KACd,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GACzC,CAAC,CAAC,CAAC,CAAC,GACJ,CAAC,SAAS,MAAM,CAAC,GACjB,CAAC,CAAC,CAAC,CAAC,GACJ,KAAK;CACV,CAAC;AAEF,MAAM,WAAW,UAAU;IACvB,QAAQ,EAAE,QAAQ,CAAC;CACtB;AACD,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;AAC7E,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,UAAU,IAAI;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC;AACxE,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,UAAU,IAAI;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC;AACxE,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;AAC7C,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,CAAC;AAC9C,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;AAE7C,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAC5E,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAE5E,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,MAAM,IAAI;KAC7C,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACrF,CAAC;AACF,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,MAAM,IAAI;KAC7C,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACrF,CAAC;AAEF,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,MAAM,IAAI;KACtC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;CAC/D,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,GAAG,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AAEzG,MAAM,MAAM,MAAM,GAAG;IACjB,EAAE,EAAE,QAAQ,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAA;AAED,MAAM,WAAW,cAAc;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,GAAG;IAChD,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;CAC3B;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,GAAG,IAAI,MAAM,aAAa,CAAC,CAAC,CAAC,CAAC;AACvE,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,GAAG,IAAI,MAAM,WAAW,CAAC,CAAC,CAAC,CAAC;AAEnE,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,GAAG,IAAI;KACvC,CAAC,IAAI,MAAM,CAAC,GAAG;QACZ,IAAI,EAAE,CAAC,CAAC;QACR,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;KACjB;CACJ,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,MAAM,IAAI;KACxC,CAAC,IAAI,MAAM,CAAC,GAAG;QACZ,IAAI,EAAE,CAAC,CAAC;QACR,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;KACjB;CACJ,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,GAAG,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC;AAC1D,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,MAAM,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;AAEzD,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC9B,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,GAAG,IAAI;IAC/B,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACrC,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;CAClC,CAAC;AACF,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,GAAG,IAAI;IAAE,CAAC,GAAG,EAAE,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC;AAEtE,MAAM,MAAM,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,GAAG,IAAI;KAC/C,CAAC,IAAI,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAC5B,IAAI,EAAE,CAAC,CAAC;QACR,OAAO,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACjC;CACJ,CAAC,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAE3B,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,SAAS,qBAAqB,CAAC,CAAC,CAAC;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,CAAC,CAAC;CACZ;AACD,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,cAAc,IAAI;IAClI,cAAc,EAAE,CAAC,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IACxB,cAAc,EAAE,CAAC,GAAG,IAAI,CAAC;CAC5B,CAAC;AACF,MAAM,WAAW,QAAQ,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,cAAc;IAClI,qBAAqB,EAAE,MAAM,CAAC,CAAC;IAC/B,UAAU,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjG,WAAW,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3F,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IACjF,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACvG,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;CACtE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "def-game",
3
- "version": "2.3.0",
3
+ "version": "3.0.1",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",