@react-text-game/core 0.5.1 → 0.5.3

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 { InitVarsType } from "../types";
1
+ import { AssertNoOptionals, InitVarsType } from "../types";
2
2
  import { SimpleObject } from "./simpleObject";
3
3
  /**
4
4
  * Convenience factory that wraps {@link SimpleObject} creation.
@@ -9,11 +9,39 @@ import { SimpleObject } from "./simpleObject";
9
9
  * `BaseGameObject` constructor and exposes its variables as direct
10
10
  * properties.
11
11
  *
12
+ * **IMPORTANT:** All properties in `variables` must be required (non-optional).
13
+ * The `AssertNoOptionals` type enforces this at compile time. Optional properties
14
+ * are not supported because the Proxy-based implementation cannot distinguish
15
+ * between undefined optional values and missing properties. If you need optional-like
16
+ * behavior, use explicit `undefined` with a union type (e.g., `field: undefined as string | undefined`).
17
+ *
12
18
  * @param id - Unique identifier used for registry lookups and persistence.
13
19
  * @param variables - Initial reactive state for the entity. Nested objects and
14
- * arrays are supported and proxied.
20
+ * arrays are supported and proxied. Must not contain optional properties.
15
21
  * @returns A `SimpleObject` instance that can be used anywhere a
16
22
  * `BaseGameObject` is expected.
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * // ✅ Correct - All properties are required
27
+ * const player = createEntity('player', {
28
+ * health: 100,
29
+ * name: 'Hero',
30
+ * inventory: [] as string[]
31
+ * });
32
+ *
33
+ * // ✅ Correct - Use explicit undefined for optional-like behavior
34
+ * const character = createEntity('character', {
35
+ * name: 'NPC',
36
+ * quest: undefined as string | undefined
37
+ * });
38
+ *
39
+ * // ❌ Wrong - Optional properties will cause compilation error
40
+ * const player = createEntity('player', {
41
+ * health: 100,
42
+ * mana?: 50 // TypeScript error: optional keys not allowed
43
+ * });
44
+ * ```
17
45
  */
18
- export declare const createEntity: <Vars extends InitVarsType>(id: string, variables: Vars) => SimpleObject<Vars>;
46
+ export declare const createEntity: <Vars extends InitVarsType>(id: string, variables: Vars & AssertNoOptionals<Vars>) => SimpleObject<Vars & AssertNoOptionals<Vars>>;
19
47
  //# sourceMappingURL=fabric.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fabric.d.ts","sourceRoot":"","sources":["../../src/gameObjects/fabric.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,YAAY,GAAI,IAAI,SAAS,YAAY,EAClD,IAAI,MAAM,EACV,WAAW,IAAI,uBACqB,CAAC"}
1
+ {"version":3,"file":"fabric.d.ts","sourceRoot":"","sources":["../../src/gameObjects/fabric.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,eAAO,MAAM,YAAY,GAAI,IAAI,SAAS,YAAY,EAClD,IAAI,MAAM,EACV,WAAW,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,iDACL,CAAC"}
@@ -8,11 +8,39 @@ import { SimpleObject } from "./simpleObject";
8
8
  * `BaseGameObject` constructor and exposes its variables as direct
9
9
  * properties.
10
10
  *
11
+ * **IMPORTANT:** All properties in `variables` must be required (non-optional).
12
+ * The `AssertNoOptionals` type enforces this at compile time. Optional properties
13
+ * are not supported because the Proxy-based implementation cannot distinguish
14
+ * between undefined optional values and missing properties. If you need optional-like
15
+ * behavior, use explicit `undefined` with a union type (e.g., `field: undefined as string | undefined`).
16
+ *
11
17
  * @param id - Unique identifier used for registry lookups and persistence.
12
18
  * @param variables - Initial reactive state for the entity. Nested objects and
13
- * arrays are supported and proxied.
19
+ * arrays are supported and proxied. Must not contain optional properties.
14
20
  * @returns A `SimpleObject` instance that can be used anywhere a
15
21
  * `BaseGameObject` is expected.
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * // ✅ Correct - All properties are required
26
+ * const player = createEntity('player', {
27
+ * health: 100,
28
+ * name: 'Hero',
29
+ * inventory: [] as string[]
30
+ * });
31
+ *
32
+ * // ✅ Correct - Use explicit undefined for optional-like behavior
33
+ * const character = createEntity('character', {
34
+ * name: 'NPC',
35
+ * quest: undefined as string | undefined
36
+ * });
37
+ *
38
+ * // ❌ Wrong - Optional properties will cause compilation error
39
+ * const player = createEntity('player', {
40
+ * health: 100,
41
+ * mana?: 50 // TypeScript error: optional keys not allowed
42
+ * });
43
+ * ```
16
44
  */
17
45
  export const createEntity = (id, variables) => new SimpleObject({ id, variables });
18
46
  //# sourceMappingURL=fabric.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fabric.js","sourceRoot":"","sources":["../../src/gameObjects/fabric.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CACxB,EAAU,EACV,SAAe,EACjB,EAAE,CAAC,IAAI,YAAY,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"fabric.js","sourceRoot":"","sources":["../../src/gameObjects/fabric.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CACxB,EAAU,EACV,SAAyC,EAC3C,EAAE,CAAC,IAAI,YAAY,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC"}
@@ -39,12 +39,17 @@ export type SimpleObject<VariablesType extends InitVarsType> = SimpleObjectImpl<
39
39
  * SimpleObject provides direct property access to game entity variables.
40
40
  *
41
41
  * Instead of accessing `entity._variables.health`, you can use `entity.health` directly.
42
- * Supports nested objects with deep reactivity.
42
+ * Supports nested objects with deep reactivity using Valtio proxies.
43
43
  *
44
- * @template VariablesType - The type of variables stored in this object
44
+ * **IMPORTANT:** All properties in `variables` must be required (non-optional).
45
+ * Optional properties are not supported because the Proxy-based implementation
46
+ * cannot distinguish between undefined optional values and missing properties.
47
+ *
48
+ * @template VariablesType - The type of variables stored in this object (must not contain optional properties)
45
49
  *
46
50
  * @example
47
51
  * ```typescript
52
+ * // ✅ Correct - All properties are required
48
53
  * const player = new SimpleObject({
49
54
  * id: 'player',
50
55
  * variables: { health: 100, mana: 50 }
@@ -52,6 +57,24 @@ export type SimpleObject<VariablesType extends InitVarsType> = SimpleObjectImpl<
52
57
  *
53
58
  * player.health = 75; // Direct access
54
59
  * player.health += 25; // Operators work
60
+ *
61
+ * // ✅ Correct - Use explicit undefined for optional-like behavior
62
+ * const player = new SimpleObject({
63
+ * id: 'player',
64
+ * variables: {
65
+ * health: 100,
66
+ * special: undefined as string | undefined // Explicit type
67
+ * }
68
+ * });
69
+ *
70
+ * // ❌ Wrong - Optional properties cause TypeScript errors
71
+ * const player = new SimpleObject({
72
+ * id: 'player',
73
+ * variables: {
74
+ * health: 100,
75
+ * mana?: 50 // This will not compile
76
+ * }
77
+ * });
55
78
  * ```
56
79
  */
57
80
  export declare const SimpleObject: new <VariablesType extends InitVarsType>(props: {
@@ -1 +1 @@
1
- {"version":3,"file":"simpleObject.d.ts","sourceRoot":"","sources":["../../src/gameObjects/simpleObject.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;;;;GAOG;AACH,cAAM,gBAAgB,CAAC,aAAa,SAAS,YAAY,CAAE,SAAQ,cAAc,CAAC,aAAa,CAAC;IAC5F,OAAO,CAAC,UAAU,CAAiC;gBAEvC,KAAK,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,aAAa,CAAA;KAAE;IAgC5D;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAWzB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAYvB;;;OAGG;IACH,IAAI,IAAI,IAAI;CAKf;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,aAAa,SAAS,YAAY,IACvD,gBAAgB,CAAC,aAAa,CAAC,GAAG,aAAa,CAAC;AAEpD;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,YAAY,EAAuB,KAC5C,aAAa,SAAS,YAAY,EAElC,KAAK,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,aAAa,CAAA;CAAE,KAC/C,YAAY,CAAC,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"simpleObject.d.ts","sourceRoot":"","sources":["../../src/gameObjects/simpleObject.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;;;;GAOG;AACH,cAAM,gBAAgB,CAAC,aAAa,SAAS,YAAY,CAAE,SAAQ,cAAc,CAAC,aAAa,CAAC;IAC5F,OAAO,CAAC,UAAU,CAAiC;gBAEvC,KAAK,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,aAAa,CAAA;KAAE;IAgC5D;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAWzB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAYvB;;;OAGG;IACH,IAAI,IAAI,IAAI;CAKf;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,aAAa,SAAS,YAAY,IACvD,gBAAgB,CAAC,aAAa,CAAC,GAAG,aAAa,CAAC;AAEpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,eAAO,MAAM,YAAY,EAAuB,KAC5C,aAAa,SAAS,YAAY,EAElC,KAAK,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,aAAa,CAAA;CAAE,KAC/C,YAAY,CAAC,aAAa,CAAC,CAAC"}
@@ -79,12 +79,17 @@ class SimpleObjectImpl extends BaseGameObject {
79
79
  * SimpleObject provides direct property access to game entity variables.
80
80
  *
81
81
  * Instead of accessing `entity._variables.health`, you can use `entity.health` directly.
82
- * Supports nested objects with deep reactivity.
82
+ * Supports nested objects with deep reactivity using Valtio proxies.
83
83
  *
84
- * @template VariablesType - The type of variables stored in this object
84
+ * **IMPORTANT:** All properties in `variables` must be required (non-optional).
85
+ * Optional properties are not supported because the Proxy-based implementation
86
+ * cannot distinguish between undefined optional values and missing properties.
87
+ *
88
+ * @template VariablesType - The type of variables stored in this object (must not contain optional properties)
85
89
  *
86
90
  * @example
87
91
  * ```typescript
92
+ * // ✅ Correct - All properties are required
88
93
  * const player = new SimpleObject({
89
94
  * id: 'player',
90
95
  * variables: { health: 100, mana: 50 }
@@ -92,6 +97,24 @@ class SimpleObjectImpl extends BaseGameObject {
92
97
  *
93
98
  * player.health = 75; // Direct access
94
99
  * player.health += 25; // Operators work
100
+ *
101
+ * // ✅ Correct - Use explicit undefined for optional-like behavior
102
+ * const player = new SimpleObject({
103
+ * id: 'player',
104
+ * variables: {
105
+ * health: 100,
106
+ * special: undefined as string | undefined // Explicit type
107
+ * }
108
+ * });
109
+ *
110
+ * // ❌ Wrong - Optional properties cause TypeScript errors
111
+ * const player = new SimpleObject({
112
+ * id: 'player',
113
+ * variables: {
114
+ * health: 100,
115
+ * mana?: 50 // This will not compile
116
+ * }
117
+ * });
95
118
  * ```
96
119
  */
97
120
  export const SimpleObject = SimpleObjectImpl;
@@ -1 +1 @@
1
- {"version":3,"file":"simpleObject.js","sourceRoot":"","sources":["../../src/gameObjects/simpleObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAI/B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;;;;GAOG;AACH,MAAM,gBAAqD,SAAQ,cAA6B;IACpF,UAAU,GAAG,IAAI,OAAO,EAAkB,CAAC;IAEnD,YAAY,KAAgD;QACxD,KAAK,CAAC,KAAK,CAAC,CAAC;QAEb,4EAA4E;QAC5E,iFAAiF;QACjF,sBAAsB;QACtB,oCAAoC;QACpC,gCAAgC;QAChC,0GAA0G;QAC1G,8BAA8B;QAC9B,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YAClB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7C,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE;oBAC7B,GAAG,EAAE,GAAG,EAAE;wBACN,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAA0B,CAAC,CAAC;wBAC1D,mFAAmF;wBACnF,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;4BAChC,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;wBACvC,CAAC;wBACD,OAAO,KAAK,CAAC;oBACjB,CAAC;oBACD,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE;wBACX,IAAI,CAAC,UAAU,CAAC,GAA0B,CAAC,GAAG,KAAK,CAAC;wBACpD,qEAAqE;oBACzE,CAAC;oBACD,UAAU,EAAE,IAAI;oBAChB,YAAY,EAAE,IAAI;iBACrB,CAAC,CAAC;YACP,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,iBAAiB,CAAC,KAAc;QACpC,OAAO,CACH,KAAK,KAAK,IAAI;YACd,OAAO,KAAK,KAAK,QAAQ;YACzB,CAAC,CAAC,KAAK,YAAY,IAAI,CAAC;YACxB,CAAC,CAAC,KAAK,YAAY,MAAM,CAAC;YAC1B,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC;YACvB,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAC1B,CAAC;IACN,CAAC;IAED;;;OAGG;IACK,eAAe,CAAC,GAAW;QAC/B,0FAA0F;QAC1F,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;QACrC,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAEjC,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,IAAI;QACA,KAAK,CAAC,IAAI,EAAE,CAAC;QACb,uEAAuE;QACvE,IAAI,CAAC,UAAU,GAAG,IAAI,OAAO,EAAkB,CAAC;IACpD,CAAC;CACJ;AASD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,gBAII,CAAC"}
1
+ {"version":3,"file":"simpleObject.js","sourceRoot":"","sources":["../../src/gameObjects/simpleObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAI/B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;;;;GAOG;AACH,MAAM,gBAAqD,SAAQ,cAA6B;IACpF,UAAU,GAAG,IAAI,OAAO,EAAkB,CAAC;IAEnD,YAAY,KAAgD;QACxD,KAAK,CAAC,KAAK,CAAC,CAAC;QAEb,4EAA4E;QAC5E,iFAAiF;QACjF,sBAAsB;QACtB,oCAAoC;QACpC,gCAAgC;QAChC,0GAA0G;QAC1G,8BAA8B;QAC9B,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YAClB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7C,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE;oBAC7B,GAAG,EAAE,GAAG,EAAE;wBACN,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAA0B,CAAC,CAAC;wBAC1D,mFAAmF;wBACnF,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;4BAChC,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;wBACvC,CAAC;wBACD,OAAO,KAAK,CAAC;oBACjB,CAAC;oBACD,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE;wBACX,IAAI,CAAC,UAAU,CAAC,GAA0B,CAAC,GAAG,KAAK,CAAC;wBACpD,qEAAqE;oBACzE,CAAC;oBACD,UAAU,EAAE,IAAI;oBAChB,YAAY,EAAE,IAAI;iBACrB,CAAC,CAAC;YACP,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,iBAAiB,CAAC,KAAc;QACpC,OAAO,CACH,KAAK,KAAK,IAAI;YACd,OAAO,KAAK,KAAK,QAAQ;YACzB,CAAC,CAAC,KAAK,YAAY,IAAI,CAAC;YACxB,CAAC,CAAC,KAAK,YAAY,MAAM,CAAC;YAC1B,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC;YACvB,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAC1B,CAAC;IACN,CAAC;IAED;;;OAGG;IACK,eAAe,CAAC,GAAW;QAC/B,0FAA0F;QAC1F,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;QACrC,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAEjC,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,IAAI;QACA,KAAK,CAAC,IAAI,EAAE,CAAC;QACb,uEAAuE;QACvE,IAAI,CAAC,UAAU,GAAG,IAAI,OAAO,EAAkB,CAAC;IACpD,CAAC;CACJ;AASD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,gBAII,CAAC"}
@@ -291,20 +291,6 @@ describe("SimpleObject", () => {
291
291
  expect(player.pattern).toBeInstanceOf(RegExp);
292
292
  expect(player.pattern.test("TEST")).toBe(true);
293
293
  });
294
- test("should handle null values", () => {
295
- const player = new SimpleObject({
296
- id: "player",
297
- variables: { weapon: null },
298
- });
299
- expect(player.weapon).toBeNull();
300
- });
301
- test("should handle undefined values", () => {
302
- const player = new SimpleObject({
303
- id: "player",
304
- variables: { optionalField: undefined },
305
- });
306
- expect(player.optionalField).toBeUndefined();
307
- });
308
294
  test("should handle boolean values", () => {
309
295
  const player = new SimpleObject({
310
296
  id: "player",
@@ -1 +1 @@
1
- {"version":3,"file":"simpleObject.test.js","sourceRoot":"","sources":["../../src/tests/simpleObject.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simpleObject.test.js","sourceRoot":"","sources":["../../src/tests/simpleObject.test.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -7,6 +7,25 @@ export type Identity<T> = {
7
7
  export type Replace<T, K extends keyof T, TReplace> = Identity<Pick<T, Exclude<keyof T, K>> & {
8
8
  [P in K]: TReplace;
9
9
  }>;
10
+ export type OptionalKeys<T> = {
11
+ [K in keyof T]-?: object extends Pick<T, K> ? K : never;
12
+ }[keyof T];
13
+ /**
14
+ * A utility type that enforces the absence of optional keys in a given type `T`.
15
+ * If `T` contains any optional keys, it will produce a compile-time error listing the keys
16
+ * that need to be removed or made required.
17
+ *
18
+ * @template T - The object type to be validated for optional keys.
19
+ */
20
+ export type AssertNoOptionals<T> = [
21
+ OptionalKeys<T>
22
+ ] extends [never] ? unknown : {
23
+ /**
24
+ * ❌ Optional keys are not allowed.
25
+ * Remove or make required these keys:
26
+ */
27
+ "Error: no optional keys": OptionalKeys<T>;
28
+ };
10
29
  export type GameSaveState = Record<string, unknown>;
11
30
  export type PassageType = "story" | "interactiveMap" | "widget";
12
31
  export type Callable<T> = () => T;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAEhD,MAAM,MAAM,QAAQ,GAAG,KAAK,MAAM,EAAE,CAAC;AAErC,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEnD,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC;AACnD,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,QAAQ,IAAI,QAAQ,CAC1D,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;KAC1B,CAAC,IAAI,CAAC,GAAG,QAAQ;CACrB,CACJ,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEpD,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,gBAAgB,GAAG,QAAQ,CAAC;AAEhE,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC;AAClC,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC/C,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;AAC1D,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAE/D,MAAM,MAAM,aAAa,GACnB,OAAO,GACP,OAAO,GACP,UAAU,GACV,OAAO,GACP,MAAM,GACN,OAAO,GACP,QAAQ,CAAC;AAEf,MAAM,MAAM,WAAW,GACjB,SAAS,GACT,SAAS,GACT,WAAW,GACX,SAAS,GACT,SAAS,GACT,QAAQ,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAEhD,MAAM,MAAM,QAAQ,GAAG,KAAK,MAAM,EAAE,CAAC;AAErC,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEnD,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC;AACnD,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,QAAQ,IAAI,QAAQ,CAC1D,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;KAC1B,CAAC,IAAI,CAAC,GAAG,QAAQ;CACrB,CACJ,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;KACzB,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CAC1D,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAC3B;IAAC,YAAY,CAAC,CAAC,CAAC;CAAC,SAAS,CAAC,KAAK,CAAC,GAC3B,OAAO,GACP;IACE;;;OAGG;IACH,yBAAyB,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;CAC9C,CAAC;AAEV,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEpD,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,gBAAgB,GAAG,QAAQ,CAAC;AAEhE,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC;AAClC,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC/C,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;AAC1D,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAE/D,MAAM,MAAM,aAAa,GACnB,OAAO,GACP,OAAO,GACP,UAAU,GACV,OAAO,GACP,MAAM,GACN,OAAO,GACP,QAAQ,CAAC;AAEf,MAAM,MAAM,WAAW,GACjB,SAAS,GACT,SAAS,GACT,WAAW,GACX,SAAS,GACT,SAAS,GACT,QAAQ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-text-game/core",
3
- "version": "0.5.1",
3
+ "version": "0.5.3",
4
4
  "description": "A powerful React-based text game engine with reactive state management, passage-based navigation, and persistent save system for building interactive narrative experiences",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",