@typeonce/ritmo 0.7.0 → 0.9.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.
Files changed (141) hide show
  1. package/README.md +3 -2
  2. package/dist/Clock.d.ts +19 -4
  3. package/dist/Clock.d.ts.map +1 -1
  4. package/dist/Clock.js +18 -2
  5. package/dist/Clock.js.map +1 -1
  6. package/dist/Command.d.ts +181 -40
  7. package/dist/Command.d.ts.map +1 -1
  8. package/dist/Command.js +31 -11
  9. package/dist/Command.js.map +1 -1
  10. package/dist/Condition.d.ts +12 -1
  11. package/dist/Condition.d.ts.map +1 -1
  12. package/dist/Condition.js.map +1 -1
  13. package/dist/Debug.d.ts +127 -13
  14. package/dist/Debug.d.ts.map +1 -1
  15. package/dist/Descriptor.d.ts +61 -10
  16. package/dist/Descriptor.d.ts.map +1 -1
  17. package/dist/Descriptor.js +22 -10
  18. package/dist/Descriptor.js.map +1 -1
  19. package/dist/Entity.d.ts +22 -7
  20. package/dist/Entity.d.ts.map +1 -1
  21. package/dist/Entity.js.map +1 -1
  22. package/dist/EntityScope.d.ts +20 -1
  23. package/dist/EntityScope.d.ts.map +1 -1
  24. package/dist/EntityScope.js +8 -2
  25. package/dist/EntityScope.js.map +1 -1
  26. package/dist/FixedLoop.d.ts +106 -0
  27. package/dist/FixedLoop.d.ts.map +1 -0
  28. package/dist/FixedLoop.js +97 -0
  29. package/dist/FixedLoop.js.map +1 -0
  30. package/dist/HostClock.d.ts +1 -1
  31. package/dist/HostClock.d.ts.map +1 -1
  32. package/dist/HostClock.js +2 -1
  33. package/dist/HostClock.js.map +1 -1
  34. package/dist/Machine.d.ts +59 -34
  35. package/dist/Machine.d.ts.map +1 -1
  36. package/dist/Machine.js +10 -3
  37. package/dist/Machine.js.map +1 -1
  38. package/dist/Query.d.ts +100 -14
  39. package/dist/Query.d.ts.map +1 -1
  40. package/dist/Query.js +34 -5
  41. package/dist/Query.js.map +1 -1
  42. package/dist/Relation.d.ts +5 -14
  43. package/dist/Relation.d.ts.map +1 -1
  44. package/dist/Relation.js +0 -32
  45. package/dist/Relation.js.map +1 -1
  46. package/dist/Runtime.d.ts +61 -15
  47. package/dist/Runtime.d.ts.map +1 -1
  48. package/dist/Runtime.js +594 -70
  49. package/dist/Runtime.js.map +1 -1
  50. package/dist/Schedule.d.ts +24 -15
  51. package/dist/Schedule.d.ts.map +1 -1
  52. package/dist/Schedule.js +2 -1
  53. package/dist/Schedule.js.map +1 -1
  54. package/dist/Schema.d.ts +233 -48
  55. package/dist/Schema.d.ts.map +1 -1
  56. package/dist/Schema.js +33 -7
  57. package/dist/Schema.js.map +1 -1
  58. package/dist/Snapshot.d.ts +90 -1
  59. package/dist/Snapshot.d.ts.map +1 -1
  60. package/dist/Snapshot.js +42 -1
  61. package/dist/Snapshot.js.map +1 -1
  62. package/dist/System.d.ts +132 -31
  63. package/dist/System.d.ts.map +1 -1
  64. package/dist/System.js +32 -0
  65. package/dist/System.js.map +1 -1
  66. package/dist/index.d.ts +4 -0
  67. package/dist/index.d.ts.map +1 -1
  68. package/dist/index.js +4 -0
  69. package/dist/index.js.map +1 -1
  70. package/dist/internal/cells.d.ts +2 -0
  71. package/dist/internal/cells.d.ts.map +1 -1
  72. package/dist/internal/cells.js +34 -8
  73. package/dist/internal/cells.js.map +1 -1
  74. package/dist/internal/debug.d.ts +10 -0
  75. package/dist/internal/debug.d.ts.map +1 -1
  76. package/dist/internal/debug.js +171 -12
  77. package/dist/internal/debug.js.map +1 -1
  78. package/dist/internal/equal.d.ts +8 -0
  79. package/dist/internal/equal.d.ts.map +1 -0
  80. package/dist/internal/equal.js +38 -0
  81. package/dist/internal/equal.js.map +1 -0
  82. package/dist/internal/fragments.d.ts +2 -6
  83. package/dist/internal/fragments.d.ts.map +1 -1
  84. package/dist/internal/fragments.js +36 -3
  85. package/dist/internal/fragments.js.map +1 -1
  86. package/dist/internal/game.d.ts +2 -0
  87. package/dist/internal/game.d.ts.map +1 -1
  88. package/dist/internal/game.js +48 -7
  89. package/dist/internal/game.js.map +1 -1
  90. package/dist/internal/order.d.ts.map +1 -1
  91. package/dist/internal/order.js +4 -2
  92. package/dist/internal/order.js.map +1 -1
  93. package/dist/internal/queries.d.ts.map +1 -1
  94. package/dist/internal/queries.js +57 -26
  95. package/dist/internal/queries.js.map +1 -1
  96. package/dist/internal/relations.d.ts +10 -0
  97. package/dist/internal/relations.d.ts.map +1 -0
  98. package/dist/internal/relations.js +32 -0
  99. package/dist/internal/relations.js.map +1 -0
  100. package/dist/internal/requirements.d.ts +26 -0
  101. package/dist/internal/requirements.d.ts.map +1 -0
  102. package/dist/internal/requirements.js +46 -0
  103. package/dist/internal/requirements.js.map +1 -0
  104. package/dist/internal/streams.d.ts +2 -0
  105. package/dist/internal/streams.d.ts.map +1 -1
  106. package/dist/internal/streams.js +10 -0
  107. package/dist/internal/streams.js.map +1 -1
  108. package/dist/internal/world.d.ts +7 -1
  109. package/dist/internal/world.d.ts.map +1 -1
  110. package/dist/internal/world.js +53 -3
  111. package/dist/internal/world.js.map +1 -1
  112. package/package.json +1 -1
  113. package/src/Clock.ts +29 -4
  114. package/src/Command.ts +281 -67
  115. package/src/Condition.ts +17 -1
  116. package/src/Debug.ts +124 -15
  117. package/src/Descriptor.ts +92 -21
  118. package/src/Entity.ts +23 -7
  119. package/src/EntityScope.ts +21 -2
  120. package/src/FixedLoop.ts +218 -0
  121. package/src/HostClock.ts +2 -1
  122. package/src/Machine.ts +72 -35
  123. package/src/Query.ts +118 -17
  124. package/src/Relation.ts +5 -67
  125. package/src/Runtime.ts +659 -85
  126. package/src/Schedule.ts +31 -19
  127. package/src/Schema.ts +297 -57
  128. package/src/Snapshot.ts +94 -2
  129. package/src/System.ts +151 -29
  130. package/src/index.ts +4 -0
  131. package/src/internal/cells.ts +42 -10
  132. package/src/internal/debug.ts +179 -14
  133. package/src/internal/equal.ts +31 -0
  134. package/src/internal/fragments.ts +35 -5
  135. package/src/internal/game.ts +69 -7
  136. package/src/internal/order.ts +8 -4
  137. package/src/internal/queries.ts +62 -12
  138. package/src/internal/relations.ts +52 -0
  139. package/src/internal/requirements.ts +71 -0
  140. package/src/internal/streams.ts +11 -0
  141. package/src/internal/world.ts +60 -4
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../src/Schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../src/Schema.ts"],"names":[],"mappings":"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"}
package/dist/Schema.js CHANGED
@@ -1,5 +1,33 @@
1
1
  import { buildSchema, emptySchema, mergeSchemas } from "./internal/fragments.js";
2
2
  import { makeGame } from "./internal/game.js";
3
+ /**
4
+ * Declares that every entity holding `component` also holds each of
5
+ * `required`. List it in a fragment's `requires`.
6
+ *
7
+ * The compiler then rejects every command that would break it:
8
+ * `commands.spawn` / `spawnIn` of a draft missing a required entry,
9
+ * `commands.insert` of `component` on an entity not proven to hold the
10
+ * rest, and `commands.remove` of a required component while a requirer may
11
+ * stay. `Game.System.spawns(component)` also allows spawning what it
12
+ * requires. Nothing is ever filled in with a default: the draft must carry
13
+ * every value.
14
+ *
15
+ * Requirements chain (`A` requires `B`, `B` requires `C`) and may name
16
+ * components of other fragments of the same `Schema.bind`.
17
+ *
18
+ * A saved component cannot require a transient one (`Schema.bind` rejects
19
+ * it): a restore would bring the requirer back without it. A transient
20
+ * requirer may require a transient component.
21
+ *
22
+ * @example
23
+ * ```ts
24
+ * const Gameplay = Schema.fragment({
25
+ * components: { Player, Position, Velocity },
26
+ * requires: [Schema.requires(Player, Position, Velocity)]
27
+ * })
28
+ * ```
29
+ */
30
+ export const requires = (component, ...required) => ({ kind: "requires", component, required });
3
31
  const schemaRootTypeId = "~ritmo/SchemaRoot";
4
32
  const isRootToken = (value) => typeof value === "object"
5
33
  && value !== null
@@ -27,10 +55,6 @@ export const defineRoot = (name) => ({
27
55
  _Name: (_) => undefined
28
56
  }
29
57
  });
30
- /**
31
- * Creates an empty schema.
32
- */
33
- export const empty = () => emptySchema();
34
58
  /**
35
59
  * Creates a schema fragment.
36
60
  *
@@ -41,8 +65,9 @@ export const empty = () => emptySchema();
41
65
  * @example
42
66
  * ```ts
43
67
  * const Combat = Schema.fragment({
44
- * components: { Health, Damage },
45
- * events: { Hit }
68
+ * components: { Health, Damage, Enemy },
69
+ * events: { Hit },
70
+ * requires: [Schema.requires(Enemy, Health)]
46
71
  * })
47
72
  * ```
48
73
  */
@@ -50,7 +75,8 @@ export const fragment = (definition) => mergeSchemas(emptySchema(), {
50
75
  components: definition.components ?? {},
51
76
  resources: definition.resources ?? {},
52
77
  events: definition.events ?? {},
53
- relations: definition.relations ?? {}
78
+ relations: definition.relations ?? {},
79
+ requires: definition.requires ?? []
54
80
  });
55
81
  export function bind(...args) {
56
82
  const maybeRoot = args[args.length - 1];
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.js","sourceRoot":"","sources":["../src/Schema.ts"],"names":[],"mappings":"AAuDA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAmC7C,MAAM,gBAAgB,GAAG,mBAA4B,CAAA;AAUrD,MAAM,WAAW,GAAG,CAAC,KAAc,EAAsB,EAAE,CACzD,OAAO,KAAK,KAAK,QAAQ;OACtB,KAAK,KAAK,IAAI;OACd,MAAM,IAAI,KAAK;OACf,KAAK,CAAC,IAAI,KAAK,YAAY,CAAA;AAmFhC;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAA4B,IAAU,EAAmB,EAAE,CAAC,CAAC;IACrF,IAAI,EAAE,YAAY;IAClB,IAAI;IACJ,CAAC,gBAAgB,CAAC,EAAE;QAClB,KAAK,EAAE,CAAC,CAAQ,EAAE,EAAE,CAAC,SAA4B;KAClD;CACF,CAAoB,CAAA;AAErB;;GAEG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,GAAqB,EAAE,CAAC,WAAW,EAAE,CAAA;AAE1D;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAKtB,UAKiF,EAA8D,EAAE,CACjJ,YAAY,CAAC,WAAW,EAAE,EAAE;IAC1B,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,EAAE;IACvC,SAAS,EAAE,UAAU,CAAC,SAAS,IAAI,EAAE;IACrC,MAAM,EAAE,UAAU,CAAC,MAAM,IAAI,EAAE;IAC/B,SAAS,EAAE,UAAU,CAAC,SAAS,IAAI,EAAE;CACtC,CAA+D,CAAA;AA6BlE,MAAM,UAAU,IAAI,CAAC,GAAG,IAA2C;IACjE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACvC,MAAM,SAAS,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAsB,CAAA;IAC1F,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,CAAA;IACrC,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AACxF,CAAC"}
1
+ {"version":3,"file":"Schema.js","sourceRoot":"","sources":["../src/Schema.ts"],"names":[],"mappings":"AAuDA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAChF,OAAO,EAAiC,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAsF5E;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAItB,SAAY,EACZ,GAAG,QAAkB,EACwD,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAA;AAE7H,MAAM,gBAAgB,GAAG,mBAA4B,CAAA;AAUrD,MAAM,WAAW,GAAG,CAAC,KAAc,EAAsB,EAAE,CACzD,OAAO,KAAK,KAAK,QAAQ;OACtB,KAAK,KAAK,IAAI;OACd,MAAM,IAAI,KAAK;OACf,KAAK,CAAC,IAAI,KAAK,YAAY,CAAA;AAsHhC;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAA4B,IAAU,EAAmB,EAAE,CAAC,CAAC;IACrF,IAAI,EAAE,YAAY;IAClB,IAAI;IACJ,CAAC,gBAAgB,CAAC,EAAE;QAClB,KAAK,EAAE,CAAC,CAAQ,EAAE,EAAE,CAAC,SAA4B;KAClD;CACF,CAAoB,CAAA;AAErB;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAMtB,UAMiF,EAAyF,EAAE,CAC5K,YAAY,CAAC,WAAW,EAAE,EAAE;IAC1B,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,EAAE;IACvC,SAAS,EAAE,UAAU,CAAC,SAAS,IAAI,EAAE;IACrC,MAAM,EAAE,UAAU,CAAC,MAAM,IAAI,EAAE;IAC/B,SAAS,EAAE,UAAU,CAAC,SAAS,IAAI,EAAE;IACrC,QAAQ,EAAE,UAAU,CAAC,QAAQ,IAAI,EAAE;CACpC,CAA0F,CAAA;AA6B7F,MAAM,UAAU,IAAI,CAAC,GAAG,IAA2C;IACjE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACvC,MAAM,SAAS,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAsB,CAAA;IAC1F,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,CAAA;IACrC,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AACxF,CAAC"}
@@ -24,10 +24,17 @@
24
24
  *
25
25
  * Restoring despawns every current entity and spawns the saved ones with their
26
26
  * original ids, so change detection and renderer sync see a restore as normal
27
- * despawns and spawns. Pending commands and events are dropped. Transient
27
+ * despawns and spawns. Pending commands and events emitted by systems are
28
+ * dropped; events the host sent with `runtime.send` and no system has read
29
+ * yet are kept, since they are input that has not been handled. Transient
28
30
  * components are absent from restored entities; transient resources keep their
29
31
  * current value.
30
32
  *
33
+ * When the game's save format changes, give the runtime its migrations
34
+ * (`Game.Runtime.make({ saves: Snapshot.migrations(...) })`): saves carry a
35
+ * `gameVersion`, and `restore` upgrades older ones step by step before
36
+ * validating them.
37
+ *
31
38
  * @module Snapshot
32
39
  * @docGroup runtime
33
40
  *
@@ -78,6 +85,12 @@ export interface EntitySnapshot {
78
85
  export declare const version = 2;
79
86
  export interface WorldSnapshot {
80
87
  readonly version: typeof version;
88
+ /**
89
+ * The game's own save version: the last `Snapshot.migration` the runtime
90
+ * that wrote it was given (0 without migrations, and for saves written
91
+ * before game versions existed).
92
+ */
93
+ readonly gameVersion: number;
81
94
  /** The next id the runtime will allocate. */
82
95
  readonly nextEntity: number;
83
96
  readonly entities: ReadonlyArray<EntitySnapshot>;
@@ -103,6 +116,12 @@ export type RestoreError = {
103
116
  } | {
104
117
  readonly _tag: "UnsupportedVersion";
105
118
  readonly version: unknown;
119
+ }
120
+ /** A save written by a newer game than this runtime's migrations reach. */
121
+ | {
122
+ readonly _tag: "NewerGameVersion";
123
+ readonly gameVersion: number;
124
+ readonly latest: number;
106
125
  } | {
107
126
  readonly _tag: "UnknownComponent";
108
127
  readonly entityId: number;
@@ -112,6 +131,13 @@ export type RestoreError = {
112
131
  readonly entityId: number;
113
132
  readonly name: string;
114
133
  readonly error: unknown;
134
+ }
135
+ /** A saved entity holds `requiredBy` but lacks `name`, which `Schema.requires` says it needs. */
136
+ | {
137
+ readonly _tag: "MissingRequiredComponent";
138
+ readonly entityId: number;
139
+ readonly name: string;
140
+ readonly requiredBy: string;
115
141
  } | {
116
142
  readonly _tag: "UnknownResource";
117
143
  readonly name: string;
@@ -134,10 +160,22 @@ export type RestoreError = {
134
160
  readonly _tag: "InvalidMachineState";
135
161
  readonly name: string;
136
162
  readonly value: unknown;
163
+ }
164
+ /** A saved sub-state value while its parent machine is not in the state the sub-state exists in. */
165
+ | {
166
+ readonly _tag: "InactiveSubState";
167
+ readonly name: string;
168
+ readonly parent: string;
169
+ readonly requires: unknown;
137
170
  } | {
138
171
  readonly _tag: "DuplicateEntity";
139
172
  readonly entityId: number;
140
173
  }
174
+ /** A scope name that no `Game.EntityScope(...)` of this game defines. */
175
+ | {
176
+ readonly _tag: "UnknownScope";
177
+ readonly name: string;
178
+ }
141
179
  /** A scope member that is not a saved entity, or is already in another scope. */
142
180
  | {
143
181
  readonly _tag: "InvalidScope";
@@ -152,5 +190,56 @@ export type RestoreError = {
152
190
  * checked against the schema by the runtime.
153
191
  */
154
192
  export declare const parse: (data: unknown) => Result.Result<WorldSnapshot, RestoreError>;
193
+ /**
194
+ * One step of a game's save format: turns a save of version `to - 1` into
195
+ * version `to`. A pure function on the save's plain data, tested like one.
196
+ */
197
+ export interface Migration<To extends number = number> {
198
+ readonly to: To;
199
+ readonly migrate: (save: WorldSnapshot) => WorldSnapshot;
200
+ }
201
+ /** A game's save migrations, given to `Game.Runtime.make({ saves })`. Built with {@link migrations}. */
202
+ export interface Migrations<Latest extends number = number> {
203
+ readonly kind: "SnapshotMigrations";
204
+ /** The game version `snapshot()` writes. */
205
+ readonly latest: Latest;
206
+ readonly steps: ReadonlyArray<Migration>;
207
+ }
208
+ /**
209
+ * Declares the step that upgrades saves to game version `to` (from `to - 1`).
210
+ *
211
+ * @example
212
+ * ```ts
213
+ * Snapshot.migration(2, (save) => ({ ...save, resources: { ...save.resources, "Town/Gold": 0 } }))
214
+ * ```
215
+ */
216
+ export declare const migration: <const To extends number>(to: To, migrate: (save: WorldSnapshot) => WorldSnapshot) => Migration<To>;
217
+ type Last<Steps> = Steps extends readonly [...Array<unknown>, infer L extends Migration] ? L["to"] : number;
218
+ /** `unknown` when the steps are numbered 1, 2, 3, ... in order; otherwise the message naming the misplaced one. */
219
+ type Consecutive<Steps, Count extends Array<0> = []> = Steps extends readonly [infer Head extends Migration, ...infer Tail] ? number extends Head["to"] ? unknown : Head["to"] extends [...Count, 0]["length"] ? Consecutive<Tail, [...Count, 0]> : {
220
+ readonly __fixMigrations__: `migration ${Head["to"]} is listed where migration ${[...Count, 0]["length"]} belongs: number migrations 1, 2, 3, ... in order`;
221
+ } : unknown;
222
+ /**
223
+ * A game's save migrations, numbered 1, 2, 3, ... in order (checked at
224
+ * compile time for literal numbers, and at runtime). Pass them to
225
+ * `Game.Runtime.make({ saves })`: `snapshot()` then writes the last number as
226
+ * the save's `gameVersion`, and `restore(data)` runs every step after the
227
+ * save's version, in order, before validating it as usual. A save newer than
228
+ * the last step fails with `NewerGameVersion`. Use it instead of editing raw
229
+ * save data before `restore`.
230
+ *
231
+ * @example
232
+ * ```ts
233
+ * const runtime = Game.Runtime.make({
234
+ * services,
235
+ * saves: Snapshot.migrations(
236
+ * Snapshot.migration(1, (save) => ({ ...save, scopes: {} })),
237
+ * Snapshot.migration(2, renameGold)
238
+ * )
239
+ * }).value
240
+ * runtime.restore(raw)
241
+ * ```
242
+ */
243
+ export declare const migrations: <const Steps extends readonly [Migration, ...Array<Migration>]>(...steps: Steps & Consecutive<Steps>) => Migrations<Last<Steps>>;
155
244
  export {};
156
245
  //# sourceMappingURL=Snapshot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Snapshot.d.ts","sourceRoot":"","sources":["../src/Snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Snapshot.d.ts","sourceRoot":"","sources":["../src/Snapshot.ts"],"names":[],"mappings":"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"}
package/dist/Snapshot.js CHANGED
@@ -17,6 +17,9 @@ export const parse = (data) => {
17
17
  return invalid("$");
18
18
  if (data["version"] !== version)
19
19
  return Result.failure({ _tag: "UnsupportedVersion", version: data["version"] });
20
+ const gameVersion = data["gameVersion"] ?? 0;
21
+ if (typeof gameVersion !== "number" || !Number.isSafeInteger(gameVersion) || gameVersion < 0)
22
+ return invalid("$.gameVersion");
20
23
  if (!isEntityId(data["nextEntity"]))
21
24
  return invalid("$.nextEntity");
22
25
  const entities = data["entities"];
@@ -60,6 +63,44 @@ export const parse = (data) => {
60
63
  if (!Array.isArray(members) || !members.every(isEntityId))
61
64
  return invalid(`$.scopes.${name}`);
62
65
  }
63
- return Result.success(data);
66
+ return Result.success({ ...data, gameVersion });
67
+ };
68
+ /**
69
+ * Declares the step that upgrades saves to game version `to` (from `to - 1`).
70
+ *
71
+ * @example
72
+ * ```ts
73
+ * Snapshot.migration(2, (save) => ({ ...save, resources: { ...save.resources, "Town/Gold": 0 } }))
74
+ * ```
75
+ */
76
+ export const migration = (to, migrate) => ({ to, migrate });
77
+ /**
78
+ * A game's save migrations, numbered 1, 2, 3, ... in order (checked at
79
+ * compile time for literal numbers, and at runtime). Pass them to
80
+ * `Game.Runtime.make({ saves })`: `snapshot()` then writes the last number as
81
+ * the save's `gameVersion`, and `restore(data)` runs every step after the
82
+ * save's version, in order, before validating it as usual. A save newer than
83
+ * the last step fails with `NewerGameVersion`. Use it instead of editing raw
84
+ * save data before `restore`.
85
+ *
86
+ * @example
87
+ * ```ts
88
+ * const runtime = Game.Runtime.make({
89
+ * services,
90
+ * saves: Snapshot.migrations(
91
+ * Snapshot.migration(1, (save) => ({ ...save, scopes: {} })),
92
+ * Snapshot.migration(2, renameGold)
93
+ * )
94
+ * }).value
95
+ * runtime.restore(raw)
96
+ * ```
97
+ */
98
+ export const migrations = (...steps) => {
99
+ steps.forEach((step, index) => {
100
+ if (step.to !== index + 1) {
101
+ throw new Error(`migration ${step.to} is listed where migration ${index + 1} belongs: number migrations 1, 2, 3, ... in order`);
102
+ }
103
+ });
104
+ return { kind: "SnapshotMigrations", latest: steps.length, steps };
64
105
  };
65
106
  //# sourceMappingURL=Snapshot.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Snapshot.js","sourceRoot":"","sources":["../src/Snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Snapshot.js","sourceRoot":"","sources":["../src/Snapshot.ts"],"names":[],"mappings":"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"}