@kestack/kabuki 0.0.1 → 0.0.2
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/README.md +156 -33
- package/dist/core/actor/actor.d.ts +24 -13
- package/dist/core/actor/actor.d.ts.map +1 -1
- package/dist/core/actor/actor.js +37 -26
- package/dist/core/actor/index.d.ts +2 -2
- package/dist/core/actor/index.d.ts.map +1 -1
- package/dist/core/actor/types.d.ts +91 -47
- package/dist/core/actor/types.d.ts.map +1 -1
- package/dist/core/history/history.d.ts +11 -3
- package/dist/core/history/history.d.ts.map +1 -1
- package/dist/core/history/history.js +106 -27
- package/dist/core/history/replay.d.ts +2 -0
- package/dist/core/history/replay.d.ts.map +1 -1
- package/dist/core/history/replay.js +1 -0
- package/dist/core/history/saved.d.ts +1 -1
- package/dist/core/history/saved.d.ts.map +1 -1
- package/dist/core/history/saved.js +13 -9
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/snapshot/invoke.d.ts +2 -3
- package/dist/core/snapshot/invoke.d.ts.map +1 -1
- package/dist/core/snapshot/invoke.js +42 -49
- package/dist/core/snapshot/restore.js +8 -7
- package/dist/core/snapshot/tree.d.ts +1 -1
- package/dist/core/snapshot/tree.d.ts.map +1 -1
- package/dist/core/snapshot/tree.js +1 -1
- package/dist/react/app.d.ts +30 -3
- package/dist/react/app.d.ts.map +1 -1
- package/dist/react/app.js +119 -40
- package/dist/react/drawn.d.ts +1 -1
- package/dist/react/drawn.d.ts.map +1 -1
- package/dist/react/drawn.js +2 -1
- package/dist/react/index.d.ts +3 -0
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +2 -0
- package/dist/react/lazy.d.ts +30 -0
- package/dist/react/lazy.d.ts.map +1 -0
- package/dist/react/lazy.js +56 -0
- package/dist/react/live.d.ts +7 -0
- package/dist/react/live.d.ts.map +1 -0
- package/dist/react/live.js +13 -0
- package/dist/react/view.d.ts +26 -6
- package/dist/react/view.d.ts.map +1 -1
- package/dist/react/view.js +17 -5
- package/dist/routing/adapter/adapter.d.ts +38 -0
- package/dist/routing/adapter/adapter.d.ts.map +1 -0
- package/dist/routing/adapter/adapter.js +10 -0
- package/dist/routing/adapter/browser/browser.d.ts +8 -0
- package/dist/routing/adapter/browser/browser.d.ts.map +1 -0
- package/dist/routing/adapter/browser/browser.js +33 -0
- package/dist/routing/adapter/browser/index.d.ts +2 -0
- package/dist/routing/adapter/browser/index.d.ts.map +1 -0
- package/dist/routing/adapter/browser/index.js +1 -0
- package/dist/routing/adapter/index.d.ts +3 -0
- package/dist/routing/adapter/index.d.ts.map +1 -0
- package/dist/routing/adapter/index.js +1 -0
- package/dist/routing/adapter/tanstack/index.d.ts +3 -0
- package/dist/routing/adapter/tanstack/index.d.ts.map +1 -0
- package/dist/routing/adapter/tanstack/index.js +1 -0
- package/dist/routing/adapter/tanstack/tanstack.d.ts +27 -0
- package/dist/routing/adapter/tanstack/tanstack.d.ts.map +1 -0
- package/dist/routing/adapter/tanstack/tanstack.js +38 -0
- package/dist/routing/capability/cache.d.ts +12 -0
- package/dist/routing/capability/cache.d.ts.map +1 -0
- package/dist/routing/capability/cache.js +170 -0
- package/dist/routing/capability/index.d.ts +6 -0
- package/dist/routing/capability/index.d.ts.map +1 -0
- package/dist/routing/capability/index.js +3 -0
- package/dist/routing/capability/loading.d.ts +82 -0
- package/dist/routing/capability/loading.d.ts.map +1 -0
- package/dist/routing/capability/loading.js +53 -0
- package/dist/routing/capability/navigation.d.ts +66 -0
- package/dist/routing/capability/navigation.d.ts.map +1 -0
- package/dist/routing/capability/navigation.js +65 -0
- package/dist/routing/index.d.ts +10 -0
- package/dist/routing/index.d.ts.map +1 -0
- package/dist/routing/index.js +4 -0
- package/dist/routing/page/index.d.ts +5 -0
- package/dist/routing/page/index.d.ts.map +1 -0
- package/dist/routing/page/index.js +2 -0
- package/dist/routing/page/page.d.ts +151 -0
- package/dist/routing/page/page.d.ts.map +1 -0
- package/dist/routing/page/page.js +121 -0
- package/dist/routing/page/status.d.ts +121 -0
- package/dist/routing/page/status.d.ts.map +1 -0
- package/dist/routing/page/status.js +69 -0
- package/dist/routing/route/index.d.ts +11 -0
- package/dist/routing/route/index.d.ts.map +1 -0
- package/dist/routing/route/index.js +6 -0
- package/dist/routing/route/loader.d.ts +98 -0
- package/dist/routing/route/loader.d.ts.map +1 -0
- package/dist/routing/route/loader.js +17 -0
- package/dist/routing/route/metadata.d.ts +44 -0
- package/dist/routing/route/metadata.d.ts.map +1 -0
- package/dist/routing/route/metadata.js +53 -0
- package/dist/routing/route/node.d.ts +162 -0
- package/dist/routing/route/node.d.ts.map +1 -0
- package/dist/routing/route/node.js +3 -0
- package/dist/routing/route/places.d.ts +15 -0
- package/dist/routing/route/places.d.ts.map +1 -0
- package/dist/routing/route/places.js +87 -0
- package/dist/routing/route/route.d.ts +53 -0
- package/dist/routing/route/route.d.ts.map +1 -0
- package/dist/routing/route/route.js +148 -0
- package/dist/routing/route/url.d.ts +13 -0
- package/dist/routing/route/url.d.ts.map +1 -0
- package/dist/routing/route/url.js +79 -0
- package/dist/routing/route/values.d.ts +12 -0
- package/dist/routing/route/values.d.ts.map +1 -0
- package/dist/routing/route/values.js +47 -0
- package/dist/routing/router/context.d.ts +123 -0
- package/dist/routing/router/context.d.ts.map +1 -0
- package/dist/routing/router/context.js +156 -0
- package/dist/routing/router/data.d.ts +117 -0
- package/dist/routing/router/data.d.ts.map +1 -0
- package/dist/routing/router/data.js +247 -0
- package/dist/routing/router/define.d.ts +52 -0
- package/dist/routing/router/define.d.ts.map +1 -0
- package/dist/routing/router/define.js +48 -0
- package/dist/routing/router/frame.d.ts +10 -0
- package/dist/routing/router/frame.d.ts.map +1 -0
- package/dist/routing/router/frame.js +10 -0
- package/dist/routing/router/index.d.ts +7 -0
- package/dist/routing/router/index.d.ts.map +1 -0
- package/dist/routing/router/index.js +3 -0
- package/dist/routing/router/router.d.ts +165 -0
- package/dist/routing/router/router.d.ts.map +1 -0
- package/dist/routing/router/router.js +801 -0
- package/dist/routing/routing.d.ts +72 -0
- package/dist/routing/routing.d.ts.map +1 -0
- package/dist/routing/routing.js +53 -0
- package/dist/routing/scroll/index.d.ts +4 -0
- package/dist/routing/scroll/index.d.ts.map +1 -0
- package/dist/routing/scroll/index.js +2 -0
- package/dist/routing/scroll/script.d.ts +6 -0
- package/dist/routing/scroll/script.d.ts.map +1 -0
- package/dist/routing/scroll/script.js +52 -0
- package/dist/routing/scroll/scroll.d.ts +75 -0
- package/dist/routing/scroll/scroll.d.ts.map +1 -0
- package/dist/routing/scroll/scroll.js +201 -0
- package/dist/routing/scroll/selector.d.ts +14 -0
- package/dist/routing/scroll/selector.d.ts.map +1 -0
- package/dist/routing/scroll/selector.js +40 -0
- package/dist/routing/scroll/session.d.ts +6 -0
- package/dist/routing/scroll/session.d.ts.map +1 -0
- package/dist/routing/scroll/session.js +23 -0
- package/dist/start/client/client.d.ts +11 -0
- package/dist/start/client/client.d.ts.map +1 -0
- package/dist/start/client/client.js +24 -0
- package/dist/start/client/index.d.ts +3 -0
- package/dist/start/client/index.d.ts.map +1 -0
- package/dist/start/client/index.js +2 -0
- package/dist/start/client/rpc.d.ts +14 -0
- package/dist/start/client/rpc.d.ts.map +1 -0
- package/dist/start/client/rpc.js +70 -0
- package/dist/start/common/app.d.ts +66 -0
- package/dist/start/common/app.d.ts.map +1 -0
- package/dist/start/common/app.js +23 -0
- package/dist/start/common/common.d.ts +26 -0
- package/dist/start/common/common.d.ts.map +1 -0
- package/dist/start/common/common.js +19 -0
- package/dist/start/common/document.d.ts +44 -0
- package/dist/start/common/document.d.ts.map +1 -0
- package/dist/start/common/document.js +58 -0
- package/dist/start/common/index.d.ts +9 -0
- package/dist/start/common/index.d.ts.map +1 -0
- package/dist/start/common/index.js +5 -0
- package/dist/start/common/page.d.ts +67 -0
- package/dist/start/common/page.d.ts.map +1 -0
- package/dist/start/common/page.js +29 -0
- package/dist/start/common/wire.d.ts +37 -0
- package/dist/start/common/wire.d.ts.map +1 -0
- package/dist/start/common/wire.js +73 -0
- package/dist/start/platform/cloudflare/cloudflare.d.ts +8 -0
- package/dist/start/platform/cloudflare/cloudflare.d.ts.map +1 -0
- package/dist/start/platform/cloudflare/cloudflare.js +31 -0
- package/dist/start/platform/cloudflare/index.d.ts +2 -0
- package/dist/start/platform/cloudflare/index.d.ts.map +1 -0
- package/dist/start/platform/cloudflare/index.js +1 -0
- package/dist/start/platform/index.d.ts +2 -0
- package/dist/start/platform/index.d.ts.map +1 -0
- package/dist/start/platform/index.js +1 -0
- package/dist/start/platform/platform.d.ts +31 -0
- package/dist/start/platform/platform.d.ts.map +1 -0
- package/dist/start/platform/platform.js +13 -0
- package/dist/start/server/cache.d.ts +4 -0
- package/dist/start/server/cache.d.ts.map +1 -0
- package/dist/start/server/cache.js +26 -0
- package/dist/start/server/draw.d.ts +10 -0
- package/dist/start/server/draw.d.ts.map +1 -0
- package/dist/start/server/draw.js +75 -0
- package/dist/start/server/index.d.ts +3 -0
- package/dist/start/server/index.d.ts.map +1 -0
- package/dist/start/server/index.js +2 -0
- package/dist/start/server/layers.d.ts +97 -0
- package/dist/start/server/layers.d.ts.map +1 -0
- package/dist/start/server/layers.js +37 -0
- package/dist/start/server/respond.d.ts +15 -0
- package/dist/start/server/respond.d.ts.map +1 -0
- package/dist/start/server/respond.js +35 -0
- package/dist/start/server/rpc.d.ts +11 -0
- package/dist/start/server/rpc.d.ts.map +1 -0
- package/dist/start/server/rpc.js +51 -0
- package/dist/start/server/server.d.ts +13 -0
- package/dist/start/server/server.d.ts.map +1 -0
- package/dist/start/server/server.js +138 -0
- package/dist/start/server/tiers.d.ts +14 -0
- package/dist/start/server/tiers.d.ts.map +1 -0
- package/dist/start/server/tiers.js +31 -0
- package/dist/start/vite/dev.d.ts +5 -0
- package/dist/start/vite/dev.d.ts.map +1 -0
- package/dist/start/vite/dev.js +56 -0
- package/dist/start/vite/entries.d.ts +27 -0
- package/dist/start/vite/entries.d.ts.map +1 -0
- package/dist/start/vite/entries.js +66 -0
- package/dist/start/vite/files.d.ts +22 -0
- package/dist/start/vite/files.d.ts.map +1 -0
- package/dist/start/vite/files.js +23 -0
- package/dist/start/vite/index.d.ts +2 -0
- package/dist/start/vite/index.d.ts.map +1 -0
- package/dist/start/vite/index.js +1 -0
- package/dist/start/vite/lazy.d.ts +4 -0
- package/dist/start/vite/lazy.d.ts.map +1 -0
- package/dist/start/vite/lazy.js +30 -0
- package/dist/start/vite/manifest.d.ts +18 -0
- package/dist/start/vite/manifest.d.ts.map +1 -0
- package/dist/start/vite/manifest.js +42 -0
- package/dist/start/vite/styles.d.ts +7 -0
- package/dist/start/vite/styles.d.ts.map +1 -0
- package/dist/start/vite/styles.js +58 -0
- package/dist/start/vite/vite.d.ts +11 -0
- package/dist/start/vite/vite.d.ts.map +1 -0
- package/dist/start/vite/vite.js +217 -0
- package/package.json +53 -3
|
@@ -87,64 +87,96 @@ export type Worker<Model, State, Msg, R extends Requires, Props = void> = {
|
|
|
87
87
|
};
|
|
88
88
|
/** Every Worker of one level, by name. */
|
|
89
89
|
export type Workers<Model, State, Msg, R extends Requires, Props = void> = Readonly<Record<string, Worker<Model, State, Msg, R, Props>>>;
|
|
90
|
-
/**
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
readonly
|
|
90
|
+
/**
|
|
91
|
+
* When a Child exists, written as a Worker's Condition is: always, `while` a
|
|
92
|
+
* test is true, or once per key `each` names. Where it is written is part of
|
|
93
|
+
* it too: at the top for as long as the Instance lives, in a State's block
|
|
94
|
+
* while that State lasts. A Child that is one, always or `while`, may name a
|
|
95
|
+
* `key`: when it changes, the Child is Invoked again, a fresh Instance.
|
|
96
|
+
*/
|
|
97
|
+
type Condition<Model, State, Props> = {
|
|
98
|
+
readonly while?: never;
|
|
99
|
+
readonly each?: never;
|
|
100
|
+
readonly key?: (data: Data<Model, State, Props>) => string;
|
|
101
|
+
} | {
|
|
102
|
+
readonly while: (data: Data<Model, State, Props>) => boolean;
|
|
103
|
+
readonly each?: never;
|
|
104
|
+
readonly key?: (data: Data<Model, State, Props>) => string;
|
|
105
|
+
} | {
|
|
106
|
+
readonly while?: never;
|
|
107
|
+
readonly each: (data: Data<Model, State, Props>) => ReadonlyArray<string>;
|
|
108
|
+
readonly key?: never;
|
|
109
|
+
};
|
|
110
|
+
/**
|
|
111
|
+
* What a parent hands one Child, worked out from its data and the Child's
|
|
112
|
+
* key, `''` unless it is one of `each`: its Input, read once, and its Props,
|
|
113
|
+
* read live. Each is required once the Child declares it.
|
|
114
|
+
*/
|
|
115
|
+
type Given<A, Model, State, Props> = ([Types<A>['input']] extends [void] ? {
|
|
116
|
+
readonly input?: (data: Data<Model, State, Props>, key: string) => Types<A>['input'];
|
|
101
117
|
} : {
|
|
102
|
-
readonly input: Types<A>['input'];
|
|
118
|
+
readonly input: (data: Data<Model, State, Props>, key: string) => Types<A>['input'];
|
|
103
119
|
}) & ([Types<A>['props']] extends [void] ? {
|
|
104
|
-
readonly props?: Types<A>['props'];
|
|
120
|
+
readonly props?: (data: Data<Model, State, Props>, key: string) => Types<A>['props'];
|
|
105
121
|
} : {
|
|
106
|
-
readonly props: Types<A>['props'];
|
|
122
|
+
readonly props: (data: Data<Model, State, Props>, key: string) => Types<A>['props'];
|
|
107
123
|
});
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
readonly
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
readonly [K in
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
+
/**
|
|
125
|
+
* One Child, checked against the Actor written in it: when it exists, and
|
|
126
|
+
* what it is handed. `C` is the Child as written.
|
|
127
|
+
*/
|
|
128
|
+
export type Child<Model, State, Props, C> = C extends {
|
|
129
|
+
readonly actor: infer A extends AnyActor;
|
|
130
|
+
} ? {
|
|
131
|
+
readonly actor: A;
|
|
132
|
+
} & Given<A, Model, State, Props> & Condition<Model, State, Props> : {
|
|
133
|
+
readonly actor: AnyActor;
|
|
134
|
+
};
|
|
135
|
+
/** Every Child of one level, by name, each checked against its own Actor. */
|
|
136
|
+
export type Children<Model, State, Props, C> = {
|
|
137
|
+
readonly [K in keyof C]: Child<Model, State, Props, C[K]>;
|
|
138
|
+
};
|
|
139
|
+
/** A Child as written, loosely: what the engine and Views read it as. */
|
|
140
|
+
export interface AnyChild {
|
|
141
|
+
readonly actor: AnyActor;
|
|
142
|
+
readonly while?: Function;
|
|
143
|
+
readonly each?: Function;
|
|
144
|
+
readonly key?: Function;
|
|
145
|
+
readonly input?: Function;
|
|
146
|
+
readonly props?: Function;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Any Child, read only for what its functions are handed: so they are typed
|
|
150
|
+
* from the parent's data even while the Children themselves are inferred.
|
|
151
|
+
*/
|
|
152
|
+
type Loose<Model, State, Props> = {
|
|
153
|
+
readonly actor: AnyActor;
|
|
154
|
+
readonly while?: (data: Data<Model, State, Props>) => boolean;
|
|
155
|
+
readonly each?: (data: Data<Model, State, Props>) => ReadonlyArray<string>;
|
|
156
|
+
readonly key?: (data: Data<Model, State, Props>) => string;
|
|
157
|
+
readonly input?: (data: Data<Model, State, Props>, key: string) => unknown;
|
|
158
|
+
readonly props?: (data: Data<Model, State, Props>, key: string) => unknown;
|
|
124
159
|
};
|
|
125
|
-
|
|
160
|
+
export type ActorOf<C> = C extends {
|
|
161
|
+
readonly actor: infer A;
|
|
162
|
+
} ? A : never;
|
|
163
|
+
/** The Children of a level, as written. */
|
|
126
164
|
type KidsOf<L> = L extends {
|
|
127
165
|
readonly children: infer C;
|
|
128
166
|
} ? C : {};
|
|
129
|
-
/** `invoke` is required once a level has a Child that needs keys or Input. */
|
|
130
|
-
type InvokePart<Model, State, Props, C> = {} extends Invocation<C> ? {
|
|
131
|
-
readonly invoke?: (data: Data<Model, State, Props>) => Invocation<C>;
|
|
132
|
-
} : {
|
|
133
|
-
readonly invoke: (data: Data<Model, State, Props>) => Invocation<C>;
|
|
134
|
-
};
|
|
135
167
|
/**
|
|
136
168
|
* One level of an Actor's behavior: the top, for as long as the Instance
|
|
137
169
|
* lives, or one State's block, for as long as that State lasts. `L` is the
|
|
138
|
-
* level as written, so
|
|
170
|
+
* level as written, so each Child is checked against the Actor written in it.
|
|
139
171
|
*/
|
|
140
172
|
type Level<Model, State, Props, Msg extends Tagged, R extends Requires, Next, L> = {
|
|
141
173
|
/** The Capabilities this level gives everything below it, as one Layer. */
|
|
142
174
|
readonly provides?: (self: Self<Model, State, Msg, Props>) => Layer.Layer<any, never, IdsOf<R>>;
|
|
143
|
-
readonly children?: Children
|
|
175
|
+
readonly children?: Children<Model, State, Props, KidsOf<L>> & Readonly<Record<string, Loose<Model, State, Props>>>;
|
|
144
176
|
/** The Updates: per Message, the next Model and State and the Commands. */
|
|
145
177
|
readonly on?: Rules<Model, State, Props, Msg, R, Next>;
|
|
146
178
|
readonly workers?: Workers<Model, State, Msg, R, Props>;
|
|
147
|
-
}
|
|
179
|
+
};
|
|
148
180
|
type ModelInit<Model> = {} extends Model ? {
|
|
149
181
|
readonly model?: Model;
|
|
150
182
|
} : {
|
|
@@ -159,9 +191,9 @@ type BlockOf<B, T extends PropertyKey> = B extends {
|
|
|
159
191
|
/** An Actor declared without a `state` Schema has one State, and no State blocks. */
|
|
160
192
|
export type IsSingle<State> = [State] extends [Single] ? true : false;
|
|
161
193
|
/**
|
|
162
|
-
* How an Actor is built. `B` is the behavior as written: each
|
|
163
|
-
*
|
|
164
|
-
*
|
|
194
|
+
* How an Actor is built. `B` is the behavior as written: each Child is
|
|
195
|
+
* checked against the Actor written in it, and what the levels Provide and
|
|
196
|
+
* Invoke becomes the Actor's type.
|
|
165
197
|
*/
|
|
166
198
|
export type Behavior<Input, Props, Model, State extends Tagged, Msg extends Tagged, R extends Requires, B> = IsSingle<State> extends true ? Level<Model, Single, Props, Msg, R, never, B> & {
|
|
167
199
|
readonly state?: never;
|
|
@@ -211,10 +243,22 @@ export interface Encoding {
|
|
|
211
243
|
readonly encode: (value: unknown) => unknown;
|
|
212
244
|
readonly decode: (value: unknown) => unknown;
|
|
213
245
|
}
|
|
214
|
-
/** One Child slot, as the engine sees it. */
|
|
246
|
+
/** One Child slot, as the engine sees it: when it exists, and what each of its Instances is handed. */
|
|
215
247
|
export interface SlotDefinition {
|
|
216
248
|
readonly definition: ActorDefinition;
|
|
217
|
-
|
|
249
|
+
/**
|
|
250
|
+
* `always` is held as one Instance; `while`, as one or none; `each`, as a
|
|
251
|
+
* list in the order of its keys.
|
|
252
|
+
*/
|
|
253
|
+
readonly kind: 'always' | 'while' | 'each';
|
|
254
|
+
/** Whether its one Instance is held under a key, and Invoked again when it changes. */
|
|
255
|
+
readonly keyed: boolean;
|
|
256
|
+
/** The keys its Condition names for this data; `''` for the one unkeyed Instance of the other kinds. */
|
|
257
|
+
readonly keys: (data: Data<unknown, Tagged, unknown>) => ReadonlyArray<string>;
|
|
258
|
+
/** The Input of a new Instance with this key; read once, as it is Invoked. */
|
|
259
|
+
readonly input: (data: Data<unknown, Tagged, unknown>, key: string) => unknown;
|
|
260
|
+
/** The Props of the Instance with this key, worked out again after each of the parent's Updates. */
|
|
261
|
+
readonly props: (data: Data<unknown, Tagged, unknown>, key: string) => unknown;
|
|
218
262
|
}
|
|
219
263
|
/** One Worker, as the engine sees it: which keys its Condition names, and what runs for each. */
|
|
220
264
|
export interface WorkerDefinition {
|
|
@@ -262,8 +306,6 @@ export interface ActorDefinition {
|
|
|
262
306
|
readonly children: Readonly<Record<string, Readonly<Record<string, SlotDefinition>> | undefined>>;
|
|
263
307
|
/** The slots written at the top: they last as long as the Instance. */
|
|
264
308
|
readonly lasting: ReadonlyArray<string>;
|
|
265
|
-
/** What each State Invokes, the top-level Invocation included. */
|
|
266
|
-
readonly invoke: Readonly<Record<string, Function | undefined>>;
|
|
267
309
|
}
|
|
268
310
|
declare const types: unique symbol;
|
|
269
311
|
export interface Actor<out Name extends string, out Input, out Props, out Model, out State extends Tagged, out Msg extends Tagged, out Kids, out Needs> {
|
|
@@ -280,6 +322,8 @@ export interface Actor<out Name extends string, out Input, out Props, out Model,
|
|
|
280
322
|
};
|
|
281
323
|
}
|
|
282
324
|
export type AnyActor = Actor<string, any, any, any, any, any, any, any>;
|
|
325
|
+
/** The Actor interface, by a name that does not clash with the `Actor` value: for code that builds Actors on top of `Actor.build`. */
|
|
326
|
+
export type ActorType<Name extends string, Input, Props, Model, State extends Tagged, Msg extends Tagged, Kids, Needs> = Actor<Name, Input, Props, Model, State, Msg, Kids, Needs>;
|
|
283
327
|
/** Everything an Actor's types say, for the Runtime and Views. */
|
|
284
328
|
export type Types<A> = A extends Actor<any, infer Input, infer Props, infer Model, infer State, infer Msg, infer Kids, infer Needs> ? {
|
|
285
329
|
input: Input;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/actor/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/actor/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import type { Envelope, Handled, Snapshot } from '../snapshot/index.ts';
|
|
|
4
4
|
import type { ReplayOptions } from './replay.ts';
|
|
5
5
|
/** One entry: an Envelope, and where it sits. */
|
|
6
6
|
export interface Entry extends Envelope {
|
|
7
|
-
/**
|
|
7
|
+
/** Larger than every id before it; never reused while the History lives. */
|
|
8
8
|
readonly id: number;
|
|
9
9
|
/** The entry before it, or `null` right after init. */
|
|
10
10
|
readonly parent: number | null;
|
|
@@ -14,7 +14,7 @@ export interface Entry extends Envelope {
|
|
|
14
14
|
* Instance of a Restore's Snapshot, as its Actor's Schemas encode it.
|
|
15
15
|
*/
|
|
16
16
|
export interface SavedHistory {
|
|
17
|
-
/**
|
|
17
|
+
/** Oldest first, by id. */
|
|
18
18
|
readonly entries: ReadonlyArray<Entry>;
|
|
19
19
|
/** The entry the next Message goes after, or `null` right after init. */
|
|
20
20
|
readonly head: number | null;
|
|
@@ -22,12 +22,16 @@ export interface SavedHistory {
|
|
|
22
22
|
export interface HistoryOptions extends ReplayOptions {
|
|
23
23
|
/** The root's Input. */
|
|
24
24
|
readonly input?: unknown;
|
|
25
|
+
/** How many entries to keep on the Head's Branch; `null`, the default, keeps everything. */
|
|
26
|
+
readonly window?: number | null;
|
|
25
27
|
}
|
|
26
28
|
export interface History<A = AnyActor> {
|
|
27
29
|
readonly actor: A;
|
|
28
30
|
/** The History as plain JSON: the same object until it changes, and never changed itself. */
|
|
29
31
|
readonly save: () => SavedHistory;
|
|
30
32
|
readonly head: () => number | null;
|
|
33
|
+
/** Whether an entry is still in the History. */
|
|
34
|
+
readonly has: (entry: number) => boolean;
|
|
31
35
|
/** The entries from the first to `to`, the Head by default. */
|
|
32
36
|
readonly branch: (to?: number | null) => ReadonlyArray<Entry>;
|
|
33
37
|
/** The entries that follow an entry (`null`: init), oldest first. */
|
|
@@ -36,8 +40,12 @@ export interface History<A = AnyActor> {
|
|
|
36
40
|
readonly append: (envelope: Envelope, handled: Handled) => Entry;
|
|
37
41
|
/** Move the Head to an entry (`null`: init). */
|
|
38
42
|
readonly moveHead: (to: number | null) => void;
|
|
39
|
-
/** Forget every entry, on every Branch. */
|
|
43
|
+
/** Forget every entry, on every Branch. The Window stays. */
|
|
40
44
|
readonly clear: () => void;
|
|
45
|
+
/** How many entries are kept on the Head's Branch, or `null` for every one. */
|
|
46
|
+
readonly window: () => number | null;
|
|
47
|
+
/** Change the Window, and Compact to it now. Allowed while a Runtime runs. */
|
|
48
|
+
readonly keep: (window: number | null) => void;
|
|
41
49
|
/** The Snapshot right after an entry, the Head by default, yielding to the page as it plays. */
|
|
42
50
|
readonly seek: (entry?: number | null) => Effect.Effect<Snapshot>;
|
|
43
51
|
/** The Snapshot right after an entry (`null`: init), played now. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../src/core/history/history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAExE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../src/core/history/history.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { restore } from '../snapshot/index.js';
|
|
1
|
+
import { isRestore, restore } from '../snapshot/index.js';
|
|
2
2
|
import { Replay, outcomeOf } from './replay.js';
|
|
3
3
|
import { checkSaved, decodeEntry, encodeEntry } from './saved.js';
|
|
4
4
|
const EMPTY = { entries: [], head: null };
|
|
@@ -18,12 +18,14 @@ const open = (actor, from, saved, options = {}) => {
|
|
|
18
18
|
const children = new Map();
|
|
19
19
|
const outcomes = new Map();
|
|
20
20
|
const listeners = new Set();
|
|
21
|
-
|
|
21
|
+
const entries = new Map();
|
|
22
|
+
let next = 0;
|
|
22
23
|
/** Each entry as saved, encoded once, when first saved or as it was loaded. */
|
|
23
|
-
|
|
24
|
+
const encoded = new Map(saved.map((entry) => [entry.id, entry]));
|
|
24
25
|
let replay = Replay.make(root, options.input, options);
|
|
25
26
|
let branches = new Map();
|
|
26
27
|
let head = from.head;
|
|
28
|
+
let window = checkWindow(options.window ?? null);
|
|
27
29
|
let state;
|
|
28
30
|
let locks = 0;
|
|
29
31
|
const change = (to) => {
|
|
@@ -37,8 +39,15 @@ const open = (actor, from, saved, options = {}) => {
|
|
|
37
39
|
if (locks > 0)
|
|
38
40
|
throw new Error(`[@kestack/kabuki] stop the Runtime before ${what} its History`);
|
|
39
41
|
};
|
|
42
|
+
const entryAt = (id) => {
|
|
43
|
+
const entry = entries.get(id);
|
|
44
|
+
if (!entry)
|
|
45
|
+
throw new RangeError(`[@kestack/kabuki] no History entry ${id}`);
|
|
46
|
+
return entry;
|
|
47
|
+
};
|
|
40
48
|
const add = (entry) => {
|
|
41
|
-
entries.
|
|
49
|
+
entries.set(entry.id, entry);
|
|
50
|
+
next = entry.id + 1;
|
|
42
51
|
const siblings = children.get(entry.parent) ?? [];
|
|
43
52
|
children.set(entry.parent, siblings);
|
|
44
53
|
siblings.push(entry);
|
|
@@ -47,23 +56,26 @@ const open = (actor, from, saved, options = {}) => {
|
|
|
47
56
|
from.entries.forEach(add);
|
|
48
57
|
// 1. Append
|
|
49
58
|
const append = (envelope, handled) => {
|
|
50
|
-
const entry = add({ id:
|
|
59
|
+
const entry = add({ id: next, parent: head, ...envelope });
|
|
51
60
|
outcomes.set(entry.id, handled.outcome);
|
|
52
61
|
replay.remember(entry.id, handled.snapshot);
|
|
53
|
-
|
|
62
|
+
head = entry.id;
|
|
63
|
+
compact();
|
|
64
|
+
change(head);
|
|
54
65
|
return entry;
|
|
55
66
|
};
|
|
56
67
|
// 2. Move
|
|
57
68
|
const moveHead = (to) => {
|
|
58
69
|
unlocked('moving the Head of');
|
|
59
|
-
if (to !== null
|
|
60
|
-
|
|
70
|
+
if (to !== null)
|
|
71
|
+
entryAt(to);
|
|
61
72
|
change(to);
|
|
62
73
|
};
|
|
63
74
|
const clear = () => {
|
|
64
75
|
unlocked('clearing');
|
|
65
|
-
entries
|
|
66
|
-
encoded
|
|
76
|
+
entries.clear();
|
|
77
|
+
encoded.clear();
|
|
78
|
+
next = 0;
|
|
67
79
|
children.clear();
|
|
68
80
|
outcomes.clear();
|
|
69
81
|
replay = Replay.make(root, options.input, options);
|
|
@@ -75,13 +87,13 @@ const open = (actor, from, saved, options = {}) => {
|
|
|
75
87
|
if (known)
|
|
76
88
|
return known;
|
|
77
89
|
const path = [];
|
|
78
|
-
for (let at = to; at !== null; at =
|
|
79
|
-
path.unshift(
|
|
90
|
+
for (let at = to; at !== null; at = entryAt(at).parent)
|
|
91
|
+
path.unshift(entryAt(at));
|
|
80
92
|
branches.set(to, path);
|
|
81
93
|
return path;
|
|
82
94
|
};
|
|
83
95
|
const outcome = (id) => {
|
|
84
|
-
const entry = entries
|
|
96
|
+
const entry = entries.get(id);
|
|
85
97
|
if (!entry)
|
|
86
98
|
throw new RangeError(`[@kestack/kabuki] no History entry ${id}`);
|
|
87
99
|
const known = outcomes.get(id) ??
|
|
@@ -92,13 +104,78 @@ const open = (actor, from, saved, options = {}) => {
|
|
|
92
104
|
// 4. Save
|
|
93
105
|
/** A new array on every change, so one saved before never grows. */
|
|
94
106
|
const save = () => (state ??= {
|
|
95
|
-
entries: Object.freeze(entries.map((entry) =>
|
|
107
|
+
entries: Object.freeze([...entries.values()].map((entry) => {
|
|
108
|
+
const known = encoded.get(entry.id);
|
|
109
|
+
if (known)
|
|
110
|
+
return known;
|
|
111
|
+
const written = encodeEntry(root, entry);
|
|
112
|
+
encoded.set(entry.id, written);
|
|
113
|
+
return written;
|
|
114
|
+
})),
|
|
96
115
|
head,
|
|
97
116
|
});
|
|
117
|
+
// 5. Compact
|
|
118
|
+
/** The oldest entry the Window keeps on the Head's Branch, or none when the whole Branch fits. */
|
|
119
|
+
const floor = () => {
|
|
120
|
+
const path = branch(head);
|
|
121
|
+
return window === null || path.length <= window
|
|
122
|
+
? undefined
|
|
123
|
+
: path[path.length - window];
|
|
124
|
+
};
|
|
125
|
+
/** Make an entry the start of the History: a Restore of the Snapshot right after it, at its Time, after init. */
|
|
126
|
+
const fold = (entry) => {
|
|
127
|
+
if (entry.parent === null && isRestore(entry.message))
|
|
128
|
+
return;
|
|
129
|
+
const snapshot = replay.at(branch(entry.id));
|
|
130
|
+
const folded = restoreAt(root.name, snapshot, entry.id, entry.at);
|
|
131
|
+
entries.set(entry.id, folded);
|
|
132
|
+
const siblings = children.get(entry.parent) ?? [];
|
|
133
|
+
siblings.splice(siblings.indexOf(entry), 1);
|
|
134
|
+
children.set(null, [...(children.get(null) ?? []), folded]);
|
|
135
|
+
encoded.delete(entry.id);
|
|
136
|
+
outcomes.delete(entry.id);
|
|
137
|
+
};
|
|
138
|
+
/** Forget every entry that does not grow from `from`, on any Branch. */
|
|
139
|
+
const sweep = (from) => {
|
|
140
|
+
const kept = new Set();
|
|
141
|
+
for (const waiting = [from.id]; waiting.length > 0;) {
|
|
142
|
+
const id = waiting.pop();
|
|
143
|
+
kept.add(id);
|
|
144
|
+
for (const child of children.get(id) ?? [])
|
|
145
|
+
waiting.push(child.id);
|
|
146
|
+
}
|
|
147
|
+
for (const id of entries.keys())
|
|
148
|
+
if (!kept.has(id)) {
|
|
149
|
+
entries.delete(id);
|
|
150
|
+
encoded.delete(id);
|
|
151
|
+
outcomes.delete(id);
|
|
152
|
+
children.delete(id);
|
|
153
|
+
replay.forget(id);
|
|
154
|
+
}
|
|
155
|
+
children.set(null, [entries.get(from.id)]);
|
|
156
|
+
};
|
|
157
|
+
/** Keep only the Window: idempotent, and it never touches the Head. */
|
|
158
|
+
const compact = () => {
|
|
159
|
+
const from = floor();
|
|
160
|
+
if (!from)
|
|
161
|
+
return;
|
|
162
|
+
fold(from);
|
|
163
|
+
sweep(entries.get(from.id));
|
|
164
|
+
branches = new Map();
|
|
165
|
+
};
|
|
166
|
+
const keep = (to) => {
|
|
167
|
+
window = checkWindow(to);
|
|
168
|
+
compact();
|
|
169
|
+
change(head);
|
|
170
|
+
};
|
|
171
|
+
compact();
|
|
98
172
|
return {
|
|
99
173
|
actor,
|
|
100
174
|
save,
|
|
101
175
|
head: () => head,
|
|
176
|
+
has: (id) => entries.has(id),
|
|
177
|
+
window: () => window,
|
|
178
|
+
keep,
|
|
102
179
|
branch,
|
|
103
180
|
children: (of) => children.get(of) ?? [],
|
|
104
181
|
append,
|
|
@@ -127,19 +204,21 @@ const open = (actor, from, saved, options = {}) => {
|
|
|
127
204
|
* The lightest History an app can be saved as: right after init, one Restore
|
|
128
205
|
* of `snapshot` at Time `at`. Nothing before it can be travelled to but init.
|
|
129
206
|
*/
|
|
130
|
-
const restored = (actor, snapshot, at, options) => open(actor, {
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
207
|
+
const restored = (actor, snapshot, at, options) => open(actor, { entries: [restoreAt(actor.definition.name, snapshot, 0, at)], head: 0 }, [], options);
|
|
208
|
+
/** An entry right after init that puts `snapshot` in place at Time `at`. */
|
|
209
|
+
const restoreAt = (root, snapshot, id, at) => ({
|
|
210
|
+
id,
|
|
211
|
+
parent: null,
|
|
212
|
+
destination: root,
|
|
213
|
+
message: restore(snapshot),
|
|
214
|
+
source: { kind: 'restore' },
|
|
215
|
+
at,
|
|
216
|
+
});
|
|
217
|
+
const checkWindow = (window) => {
|
|
218
|
+
if (window !== null && !(Number.isInteger(window) && window >= 1))
|
|
219
|
+
throw new RangeError(`[@kestack/kabuki] a Window keeps at least 1 entry, not ${window}`);
|
|
220
|
+
return window;
|
|
221
|
+
};
|
|
143
222
|
export const History = { make, load, restored };
|
|
144
223
|
/** Tells a History from an Actor. */
|
|
145
224
|
export const isHistory = (value) => 'actor' in value;
|
|
@@ -16,6 +16,8 @@ export interface Replay {
|
|
|
16
16
|
readonly seek: (branch: ReadonlyArray<Entry>) => Effect.Effect<Snapshot>;
|
|
17
17
|
/** Remember the Snapshot right after an entry. */
|
|
18
18
|
readonly remember: (entry: number, snapshot: Snapshot) => void;
|
|
19
|
+
/** Forget the Snapshot right after an entry the History no longer has. */
|
|
20
|
+
readonly forget: (entry: number) => void;
|
|
19
21
|
}
|
|
20
22
|
declare const make: (root: ActorDefinition, input: unknown, { budget, every }?: ReplayOptions) => Replay;
|
|
21
23
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../../src/core/history/replay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAS1C,MAAM,WAAW,aAAa;IAC5B,sEAAsE;IACtE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,2GAA2G;AAC3G,MAAM,WAAW,MAAM;IACrB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC;IACxD,qFAAqF;IACrF,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACzE,kDAAkD;IAClD,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../../src/core/history/replay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAS1C,MAAM,WAAW,aAAa;IAC5B,sEAAsE;IACtE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,2GAA2G;AAC3G,MAAM,WAAW,MAAM;IACrB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC;IACxD,qFAAqF;IACrF,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACzE,kDAAkD;IAClD,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC/D,0EAA0E;IAC1E,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C;AAED,QAAA,MAAM,IAAI,SACF,eAAe,SACd,OAAO,sBACe,aAAa,KACzC,MAyCF,CAAC;AAqBF;;;;GAIG;AACH,eAAO,MAAM,SAAS,SACd,eAAe,YACX,QAAQ,YACR,QAAQ,KACjB,OAAO,CAAC,SAAS,CAMnB,CAAC;AAgBF,2FAA2F;AAC3F,QAAA,MAAM,IAAI,SACF,eAAe,UACb,aAAa,CAAC,KAAK,CAAC,UACpB,OAAO,KACd,QAIA,CAAC;AAEJ,eAAO,MAAM,MAAM;;;CAAiB,CAAC"}
|
|
@@ -2,6 +2,6 @@ import type { ActorDefinition } from '../actor/index.ts';
|
|
|
2
2
|
import type { Entry, SavedHistory } from './history.ts';
|
|
3
3
|
export declare const encodeEntry: (root: ActorDefinition, entry: Entry) => Entry;
|
|
4
4
|
export declare const decodeEntry: (root: ActorDefinition, entry: Entry) => Entry;
|
|
5
|
-
/** Throws, saying what is wrong, unless `saved` is a History's shape: entries by
|
|
5
|
+
/** Throws, saying what is wrong, unless `saved` is a History's shape: entries by rising id, each after an earlier one, and a Head among them. */
|
|
6
6
|
export declare const checkSaved: (saved: SavedHistory) => void;
|
|
7
7
|
//# sourceMappingURL=saved.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"saved.d.ts","sourceRoot":"","sources":["../../../src/core/history/saved.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,mBAAmB,CAAC;AAG3E,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"saved.d.ts","sourceRoot":"","sources":["../../../src/core/history/saved.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,mBAAmB,CAAC;AAG3E,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAgBxD,eAAO,MAAM,WAAW,SAAU,eAAe,SAAS,KAAK,KAAG,KAqBjE,CAAC;AAGF,eAAO,MAAM,WAAW,SAAU,eAAe,SAAS,KAAK,KAAG,KAmBjE,CAAC;AAwDF,iJAAiJ;AACjJ,eAAO,MAAM,UAAU,UAAW,YAAY,KAAG,IAsBhD,CAAC"}
|
|
@@ -8,7 +8,8 @@ import { isMany, isRestore, restore } from '../snapshot/index.js';
|
|
|
8
8
|
* does not fit is saved as it is: it never plays.
|
|
9
9
|
* 2. Decode an entry read back. One that no longer fits the code is kept
|
|
10
10
|
* as it was saved: Replay warns of it and skips it.
|
|
11
|
-
* 3. Check a saved History's shape before it is read
|
|
11
|
+
* 3. Check a saved History's shape before it is read: ids rise, but
|
|
12
|
+
* need not start at 0 or follow on, once it is Compacted.
|
|
12
13
|
*/
|
|
13
14
|
// 1. Encode
|
|
14
15
|
export const encodeEntry = (root, entry) => {
|
|
@@ -104,23 +105,26 @@ const actorsAt = (root, id) => {
|
|
|
104
105
|
return at;
|
|
105
106
|
};
|
|
106
107
|
// 3. Check
|
|
107
|
-
/** Throws, saying what is wrong, unless `saved` is a History's shape: entries by
|
|
108
|
+
/** Throws, saying what is wrong, unless `saved` is a History's shape: entries by rising id, each after an earlier one, and a Head among them. */
|
|
108
109
|
export const checkSaved = (saved) => {
|
|
109
110
|
const fail = (why) => {
|
|
110
111
|
throw new TypeError(`[@kestack/kabuki] the saved History is corrupt: ${why}`);
|
|
111
112
|
};
|
|
112
113
|
if (!saved || !Array.isArray(saved.entries))
|
|
113
114
|
fail('it has no entries');
|
|
115
|
+
const seen = new Set();
|
|
116
|
+
let last = -1;
|
|
114
117
|
saved.entries.forEach((entry, index) => {
|
|
115
|
-
|
|
116
|
-
|
|
118
|
+
const id = entry?.id;
|
|
119
|
+
if (!(Number.isInteger(id) && id > last))
|
|
120
|
+
fail(`entry ${index} has the id ${id}, not one after ${last}`);
|
|
117
121
|
const { parent } = entry;
|
|
118
|
-
if (parent !== null &&
|
|
119
|
-
|
|
120
|
-
|
|
122
|
+
if (parent !== null && !seen.has(parent))
|
|
123
|
+
fail(`entry ${id} follows ${parent}, not an entry before it`);
|
|
124
|
+
seen.add(id);
|
|
125
|
+
last = id;
|
|
121
126
|
});
|
|
122
127
|
const { head } = saved;
|
|
123
|
-
if (head !== null &&
|
|
124
|
-
!(Number.isInteger(head) && head >= 0 && head < saved.entries.length))
|
|
128
|
+
if (head !== null && !seen.has(head))
|
|
125
129
|
fail(`its Head ${head} is not one of its ${saved.entries.length} entries`);
|
|
126
130
|
};
|
package/dist/core/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { Actor, Command } from './actor/index.ts';
|
|
2
|
-
export type { ActorOf, AnyActor, Data, Defined, ActorDefinition,
|
|
2
|
+
export type { ActorOf, ActorType, AnyActor, Behavior, Child, Data, AnyDefined, Defined, ActorDefinition, KidsByState, Only, OpenOfBehavior, Requires, Self, Tagged, Types, Worker, WorkerDefinition, Workers, } from './actor/index.ts';
|
|
3
3
|
export { RESTORE, handle, init, instanceAt, isMany, isRestore, restore, } from './snapshot/index.ts';
|
|
4
4
|
export type { Envelope, Handled, Instance, Restore, Snapshot, Source, } from './snapshot/index.ts';
|
|
5
5
|
export { History, Replay, outcomeOf } from './history/index.ts';
|
package/dist/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EACV,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,eAAe,EACf,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EACV,OAAO,EACP,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,UAAU,EACV,OAAO,EACP,eAAe,EACf,WAAW,EACX,IAAI,EACJ,cAAc,EACd,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,KAAK,EACL,MAAM,EACN,gBAAgB,EAChB,OAAO,GACR,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,OAAO,EACP,MAAM,EACN,IAAI,EACJ,UAAU,EACV,MAAM,EACN,SAAS,EACT,OAAO,GACR,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,MAAM,GACP,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAChE,YAAY,EACV,KAAK,EACL,cAAc,EACd,aAAa,EACb,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
|