foldkit 0.135.0 → 0.137.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.
- package/dist/asyncData/asyncData.d.ts +4 -6
- package/dist/asyncData/asyncData.d.ts.map +1 -1
- package/dist/asyncData/asyncData.js +4 -6
- package/dist/command/brand.d.ts +9 -0
- package/dist/command/brand.d.ts.map +1 -0
- package/dist/command/brand.js +15 -0
- package/dist/command/index.d.ts +124 -24
- package/dist/command/index.d.ts.map +1 -1
- package/dist/command/index.js +76 -26
- package/dist/command/interruptible/interruptible.d.ts +9 -94
- package/dist/command/interruptible/interruptible.d.ts.map +1 -1
- package/dist/command/interruptible/interruptible.js +9 -75
- package/dist/command/interruptible/public.d.ts +1 -1
- package/dist/command/interruptible/public.d.ts.map +1 -1
- package/dist/command/interruptible/public.js +1 -1
- package/dist/command/public.d.ts +1 -1
- package/dist/command/public.d.ts.map +1 -1
- package/dist/file/select.d.ts +2 -2
- package/dist/file/select.js +2 -2
- package/dist/http/http.d.ts +4 -7
- package/dist/http/http.d.ts.map +1 -1
- package/dist/http/http.js +4 -7
- package/dist/port/port.d.ts +8 -9
- package/dist/port/port.d.ts.map +1 -1
- package/dist/port/port.js +8 -9
- package/dist/test/apps/counter.d.ts.map +1 -1
- package/dist/test/apps/counter.js +9 -2
- package/dist/test/apps/crashOnRender.d.ts +3 -3
- package/dist/test/apps/crashOnRender.d.ts.map +1 -1
- package/dist/test/apps/crashOnRender.js +9 -4
- package/dist/test/apps/drafts.d.ts +1 -2
- package/dist/test/apps/drafts.d.ts.map +1 -1
- package/dist/test/apps/drafts.js +7 -2
- package/dist/test/apps/formChild.d.ts +5 -5
- package/dist/test/apps/formChild.d.ts.map +1 -1
- package/dist/test/apps/formChild.js +11 -5
- package/dist/test/apps/login.d.ts.map +1 -1
- package/dist/test/apps/login.js +4 -1
- package/dist/test/apps/resumeUpload.d.ts +3 -3
- package/dist/test/apps/resumeUpload.d.ts.map +1 -1
- package/dist/test/apps/resumeUpload.js +15 -8
- package/dist/test/apps/uploads.d.ts +4 -4
- package/dist/test/apps/uploads.d.ts.map +1 -1
- package/dist/test/apps/uploads.js +10 -1
- package/dist/test/internal.d.ts +2 -2
- package/dist/test/internal.js +1 -1
- package/dist/test/scene.d.ts +1 -1
- package/dist/test/story.d.ts +1 -1
- package/package.json +1 -1
|
@@ -396,16 +396,14 @@ export declare const all: <const Inputs extends Iterable<AsyncData<any, any>> |
|
|
|
396
396
|
* import { AsyncData, Command } from 'foldkit'
|
|
397
397
|
*
|
|
398
398
|
* // The Command settles the fetch into a Result instead of throwing:
|
|
399
|
-
* const LoadNotes = Command.define(
|
|
400
|
-
*
|
|
401
|
-
*
|
|
402
|
-
* )(
|
|
403
|
-
* pipe(
|
|
399
|
+
* const LoadNotes = Command.define('LoadNotes', {
|
|
400
|
+
* messages: [SettledLoadNotes],
|
|
401
|
+
* execute: pipe(
|
|
404
402
|
* fetchNotes,
|
|
405
403
|
* Effect.result,
|
|
406
404
|
* Effect.map(result => SettledLoadNotes({ result })),
|
|
407
405
|
* ),
|
|
408
|
-
* )
|
|
406
|
+
* })
|
|
409
407
|
*
|
|
410
408
|
* // One update arm folds it in, whatever the previous state was:
|
|
411
409
|
* SettledLoadNotes: ({ result }) => [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asyncData.d.ts","sourceRoot":"","sources":["../../src/asyncData/asyncData.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"asyncData.d.ts","sourceRoot":"","sources":["../../src/asyncData/asyncData.ts"],"names":[],"mappings":"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"}
|
|
@@ -404,16 +404,14 @@ export const all = (inputs) => {
|
|
|
404
404
|
* import { AsyncData, Command } from 'foldkit'
|
|
405
405
|
*
|
|
406
406
|
* // The Command settles the fetch into a Result instead of throwing:
|
|
407
|
-
* const LoadNotes = Command.define(
|
|
408
|
-
*
|
|
409
|
-
*
|
|
410
|
-
* )(
|
|
411
|
-
* pipe(
|
|
407
|
+
* const LoadNotes = Command.define('LoadNotes', {
|
|
408
|
+
* messages: [SettledLoadNotes],
|
|
409
|
+
* execute: pipe(
|
|
412
410
|
* fetchNotes,
|
|
413
411
|
* Effect.result,
|
|
414
412
|
* Effect.map(result => SettledLoadNotes({ result })),
|
|
415
413
|
* ),
|
|
416
|
-
* )
|
|
414
|
+
* })
|
|
417
415
|
*
|
|
418
416
|
* // One update arm folds it in, whatever the previous state was:
|
|
419
417
|
* SettledLoadNotes: ({ result }) => [
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** Type-level brand for CommandDefinition values. */
|
|
2
|
+
export declare const CommandDefinitionTypeId: unique symbol;
|
|
3
|
+
/** Type-level brand for CommandDefinition values. */
|
|
4
|
+
export type CommandDefinitionTypeId = typeof CommandDefinitionTypeId;
|
|
5
|
+
/** @internal Stamps a callable Definition with its Command name and the
|
|
6
|
+
* {@link CommandDefinitionTypeId} brand, so `Story`/`Scene` matchers and the
|
|
7
|
+
* runtime recognise it. Internal to the Command module. */
|
|
8
|
+
export declare const brandAsDefinition: (definition: unknown, name: string) => void;
|
|
9
|
+
//# sourceMappingURL=brand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brand.d.ts","sourceRoot":"","sources":["../../src/command/brand.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAErD,eAAO,MAAM,uBAAuB,EAAE,OAAO,MAEN,CAAA;AAEvC,qDAAqD;AACrD,MAAM,MAAM,uBAAuB,GAAG,OAAO,uBAAuB,CAAA;AAEpE;;4DAE4D;AAC5D,eAAO,MAAM,iBAAiB,GAAI,YAAY,OAAO,EAAE,MAAM,MAAM,KAAG,IAQrE,CAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** Type-level brand for CommandDefinition values. */
|
|
2
|
+
/* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
|
|
3
|
+
export const CommandDefinitionTypeId = Symbol.for('foldkit/CommandDefinition');
|
|
4
|
+
/** @internal Stamps a callable Definition with its Command name and the
|
|
5
|
+
* {@link CommandDefinitionTypeId} brand, so `Story`/`Scene` matchers and the
|
|
6
|
+
* runtime recognise it. Internal to the Command module. */
|
|
7
|
+
export const brandAsDefinition = (definition, name) => {
|
|
8
|
+
Object.defineProperty(definition, 'name', {
|
|
9
|
+
value: name,
|
|
10
|
+
configurable: true,
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(definition, CommandDefinitionTypeId, {
|
|
13
|
+
value: CommandDefinitionTypeId,
|
|
14
|
+
});
|
|
15
|
+
};
|
package/dist/command/index.d.ts
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { Effect, Schema } from 'effect';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
export type CommandDefinitionTypeId = typeof CommandDefinitionTypeId;
|
|
1
|
+
import { Array, Effect, Schema } from 'effect';
|
|
2
|
+
import { CommandDefinitionTypeId } from './brand.js';
|
|
3
|
+
import * as Interruptible from './interruptible/index.js';
|
|
4
|
+
export { CommandDefinitionTypeId };
|
|
6
5
|
/** A named Effect that produces a message, optionally carrying the args used
|
|
7
6
|
* to construct it. `key` is present on Commands built by
|
|
8
|
-
* `
|
|
7
|
+
* `define` with `interrupt`: it addresses the invocation in the runtime's
|
|
9
8
|
* interrupt registry so a later Interrupt Command can stop it. */
|
|
10
9
|
export type Command<T, E = never, R = never> = [T] extends [Schema.Top] ? Readonly<{
|
|
11
10
|
name: string;
|
|
@@ -39,39 +38,140 @@ export interface CommandDefinitionWithArgs<Name extends string, Fields extends S
|
|
|
39
38
|
}
|
|
40
39
|
/** A Command definition created with `Command.define`. Union over the no-args and with-args shapes; consumers that only need name/identity can accept this. */
|
|
41
40
|
export type CommandDefinition<Name extends string = string, ResultMessage = any> = CommandDefinitionNoArgs<Name, Effect.Effect<ResultMessage, any, any>> | CommandDefinitionWithArgs<Name, any, Effect.Effect<ResultMessage, any, any>>;
|
|
41
|
+
/** Makes a Command interruptible. `true` keys every invocation by the Command
|
|
42
|
+
* name, which is what you want when at most one invocation is meaningfully in
|
|
43
|
+
* flight. `{ keyFields, toKey }` derives the key part from declared args, so
|
|
44
|
+
* invocations that run concurrently can be interrupted independently.
|
|
45
|
+
* `keyFields` declares the exact args the Interrupt constructor requires.
|
|
46
|
+
* Derive the key part from the Model identity that owns the in-flight work (a
|
|
47
|
+
* list item id, an entity id), never from a generated value: update is pure,
|
|
48
|
+
* and any invocation you can meaningfully target is already distinguished by
|
|
49
|
+
* data in the Model. */
|
|
50
|
+
export type InterruptOption<Args, KeyField extends keyof Args & string = keyof Args & string> = true | Readonly<{
|
|
51
|
+
keyFields: Array.NonEmptyReadonlyArray<KeyField>;
|
|
52
|
+
toKey: (keyArgs: Pick<Args, KeyField>) => string;
|
|
53
|
+
}>;
|
|
42
54
|
/**
|
|
43
|
-
* Defines a Command.
|
|
44
|
-
*
|
|
55
|
+
* Defines a Command. Every input is a named field: `args` declares the args
|
|
56
|
+
* Schema, `messages` lists the Messages this Command can produce, `execute`
|
|
57
|
+
* holds the Effect, and `interrupt` opts into interruption.
|
|
58
|
+
*
|
|
59
|
+
* `args` is optional. Omit it and `execute` is a bare Effect and the Definition
|
|
60
|
+
* is callable as `Definition()`; declare it and `execute` receives the args and
|
|
61
|
+
* the Definition is callable as `Definition(args)`.
|
|
62
|
+
*
|
|
63
|
+
* Constructing a Command never runs `execute`. When `args` is declared the body
|
|
64
|
+
* is deferred until the runtime executes the Command, so no side effect the
|
|
65
|
+
* body performs and no exception it raises can reach update, and a Command that
|
|
66
|
+
* update builds and then discards runs nothing at all.
|
|
67
|
+
*
|
|
68
|
+
* With `interrupt`, every invocation registers under a key in the runtime's
|
|
69
|
+
* interrupt registry for the duration of its Effect, and the returned Definition
|
|
70
|
+
* carries an `Interrupt` constructor that builds an ordinary Command to stop it.
|
|
71
|
+
* See {@link InterruptOption} for how the key is chosen. Semantics:
|
|
45
72
|
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
73
|
+
* - A key is an address, not a lock. Any number of invocations may run under one
|
|
74
|
+
* key concurrently, and dispatching never interrupts anything. Interruption
|
|
75
|
+
* only happens when update returns an Interrupt Command.
|
|
76
|
+
* - `Definition.Interrupt` interrupts every current holder of the key and
|
|
77
|
+
* results in `toMessage(outcome)`. The outcome is `Interrupted` when at least
|
|
78
|
+
* one holder was stopped (their Messages are guaranteed never to dispatch) or
|
|
79
|
+
* `NotFound` when nothing held the key. Name the Message
|
|
80
|
+
* `CompletedCancel<CommandName>`.
|
|
81
|
+
* - To dispatch a replacement after cancelling, sequence through the Interrupt's
|
|
82
|
+
* result Message. Commands in one batch run concurrently with no
|
|
83
|
+
* execution-order guarantee, so `[Interrupt, Next]` in one list is a race.
|
|
84
|
+
*
|
|
85
|
+
* Interruption is for one-shot async work that is structurally a Command (an
|
|
86
|
+
* in-flight HTTP request, a file read, an upload), fired once and normally left
|
|
87
|
+
* to finish, where stopping it is the exception. Work whose lifetime is derived
|
|
88
|
+
* from the Model belongs in a Subscription or ManagedResource instead: the
|
|
89
|
+
* runtime starts and tears those down as the Model declares them, so there is
|
|
90
|
+
* no in-flight Command to interrupt.
|
|
49
91
|
*
|
|
50
92
|
* @example No args
|
|
51
93
|
* ```ts
|
|
52
|
-
* const LockScroll = Command.define('LockScroll',
|
|
53
|
-
*
|
|
54
|
-
* )
|
|
94
|
+
* const LockScroll = Command.define('LockScroll', {
|
|
95
|
+
* messages: [CompletedLockScroll],
|
|
96
|
+
* execute: Dom.lockScroll.pipe(Effect.as(CompletedLockScroll())),
|
|
97
|
+
* })
|
|
55
98
|
* // Call site:
|
|
56
99
|
* LockScroll()
|
|
57
100
|
* ```
|
|
58
101
|
*
|
|
59
102
|
* @example With args
|
|
60
103
|
* ```ts
|
|
61
|
-
* const FetchWeather = Command.define(
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
* )(({ zipCode }) =>
|
|
67
|
-
* Effect.gen(function* () { ... }),
|
|
68
|
-
* )
|
|
104
|
+
* const FetchWeather = Command.define('FetchWeather', {
|
|
105
|
+
* args: { zipCode: S.String },
|
|
106
|
+
* messages: [SucceededFetchWeather, FailedFetchWeather],
|
|
107
|
+
* execute: ({ zipCode }) => Effect.gen(function* () { ... }),
|
|
108
|
+
* })
|
|
69
109
|
* // Call site:
|
|
70
110
|
* FetchWeather({ zipCode: '90210' })
|
|
71
111
|
* ```
|
|
112
|
+
*
|
|
113
|
+
* @example Interruptible, keyed by the Command name
|
|
114
|
+
* ```ts
|
|
115
|
+
* const SaveDraft = Command.define('SaveDraft', {
|
|
116
|
+
* args: { draftId: S.String, body: S.String },
|
|
117
|
+
* messages: [SucceededSaveDraft, FailedSaveDraft],
|
|
118
|
+
* interrupt: true,
|
|
119
|
+
* execute: ({ draftId, body }) => Effect.gen(function* () { ... }),
|
|
120
|
+
* })
|
|
121
|
+
* // Call sites:
|
|
122
|
+
* SaveDraft({ draftId: 'abc', body })
|
|
123
|
+
* SaveDraft.Interrupt(outcome => CompletedCancelSaveDraft({ outcome }))
|
|
124
|
+
* ```
|
|
125
|
+
*
|
|
126
|
+
* @example Interruptible, keyed by args
|
|
127
|
+
* ```ts
|
|
128
|
+
* const UploadFile = Command.define('UploadFile', {
|
|
129
|
+
* args: { uploadId: S.Number, file: S.instanceOf(File) },
|
|
130
|
+
* messages: [SucceededUploadFile, FailedUploadFile],
|
|
131
|
+
* interrupt: {
|
|
132
|
+
* keyFields: ['uploadId'],
|
|
133
|
+
* toKey: ({ uploadId }) => String(uploadId),
|
|
134
|
+
* },
|
|
135
|
+
* execute: ({ uploadId, file }) => Effect.gen(function* () { ... }),
|
|
136
|
+
* })
|
|
137
|
+
* // Call sites:
|
|
138
|
+
* UploadFile({ uploadId: 1, file })
|
|
139
|
+
* UploadFile.Interrupt({ uploadId: 1 }, outcome =>
|
|
140
|
+
* CompletedCancelUploadFile({ uploadId: 1, outcome }),
|
|
141
|
+
* )
|
|
142
|
+
* ```
|
|
72
143
|
*/
|
|
73
|
-
export declare function define<const Name extends string,
|
|
74
|
-
|
|
144
|
+
export declare function define<const Name extends string, Fields extends Schema.Struct.Fields, const Messages extends ReadonlyArray<Schema.Top>, const KeyField extends keyof Schema.Schema.Type<Schema.Struct<Fields>> & string, Eff extends Effect.Effect<Schema.Schema.Type<Messages[number]>, any, any>>(name: Name, config: Readonly<{
|
|
145
|
+
args: Fields;
|
|
146
|
+
messages: Messages;
|
|
147
|
+
interrupt: Readonly<{
|
|
148
|
+
keyFields: Array.NonEmptyReadonlyArray<KeyField>;
|
|
149
|
+
toKey: (keyArgs: Pick<Schema.Schema.Type<Schema.Struct<Fields>>, KeyField>) => string;
|
|
150
|
+
}>;
|
|
151
|
+
execute: (args: Schema.Schema.Type<Schema.Struct<Fields>>) => Eff;
|
|
152
|
+
}>): Interruptible.DefinitionWithArgs<Name, Fields, Pick<Schema.Schema.Type<Schema.Struct<Fields>>, KeyField>, Eff>;
|
|
153
|
+
export declare function define<const Name extends string, Fields extends Schema.Struct.Fields, const Messages extends ReadonlyArray<Schema.Top>, Eff extends Effect.Effect<Schema.Schema.Type<Messages[number]>, any, any>>(name: Name, config: Readonly<{
|
|
154
|
+
args: Fields;
|
|
155
|
+
messages: Messages;
|
|
156
|
+
interrupt: true;
|
|
157
|
+
execute: (args: Schema.Schema.Type<Schema.Struct<Fields>>) => Eff;
|
|
158
|
+
}>): Interruptible.DefinitionWithArgsNameKeyed<Name, Fields, Eff>;
|
|
159
|
+
export declare function define<const Name extends string, Fields extends Schema.Struct.Fields, const Messages extends ReadonlyArray<Schema.Top>, Eff extends Effect.Effect<Schema.Schema.Type<Messages[number]>, any, any>>(name: Name, config: Readonly<{
|
|
160
|
+
args: Fields;
|
|
161
|
+
messages: Messages;
|
|
162
|
+
interrupt?: never;
|
|
163
|
+
execute: (args: Schema.Schema.Type<Schema.Struct<Fields>>) => Eff;
|
|
164
|
+
}>): CommandDefinitionWithArgs<Name, Fields, Eff>;
|
|
165
|
+
export declare function define<const Name extends string, const Messages extends ReadonlyArray<Schema.Top>, Eff extends Effect.Effect<Schema.Schema.Type<Messages[number]>, any, any>>(name: Name, config: Readonly<{
|
|
166
|
+
messages: Messages;
|
|
167
|
+
interrupt: true;
|
|
168
|
+
execute: Eff;
|
|
169
|
+
}>): Interruptible.DefinitionNoArgs<Name, Eff>;
|
|
170
|
+
export declare function define<const Name extends string, const Messages extends ReadonlyArray<Schema.Top>, Eff extends Effect.Effect<Schema.Schema.Type<Messages[number]>, any, any>>(name: Name, config: Readonly<{
|
|
171
|
+
messages: Messages;
|
|
172
|
+
interrupt?: never;
|
|
173
|
+
execute: Eff;
|
|
174
|
+
}>): CommandDefinitionNoArgs<Name, Eff>;
|
|
75
175
|
/** Transforms the Effect inside a Command while preserving its name, args, and
|
|
76
176
|
* message-mapping chain. Reach for this to adjust the Effect itself (provide a
|
|
77
177
|
* service, add a delay or retry), not to lift the result Message. Never use it
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/command/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/command/index.ts"],"names":[],"mappings":"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"}
|
package/dist/command/index.js
CHANGED
|
@@ -1,41 +1,91 @@
|
|
|
1
|
-
import { Array, Effect, Function,
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import { Array, Effect, Function, Option, Predicate } from 'effect';
|
|
2
|
+
import { CommandDefinitionTypeId, brandAsDefinition } from './brand.js';
|
|
3
|
+
import * as Interruptible from './interruptible/index.js';
|
|
4
|
+
export { CommandDefinitionTypeId };
|
|
5
|
+
// NOTE: The suspend is load bearing, not a redundant wrapper. Without it the
|
|
6
|
+
// `execute` body runs the moment update constructs the Command, so any
|
|
7
|
+
// expression it evaluates on the way to returning its Effect runs inside a pure
|
|
8
|
+
// reducer. Every side effect the body performs runs there, and every exception
|
|
9
|
+
// it raises escapes update, even when update discards the Command instead of
|
|
10
|
+
// returning it. Reading a missing browser global is one instance, the one that
|
|
11
|
+
// surfaced this, not the boundary of it. Suspending defers the body to
|
|
12
|
+
// execution, where the runtime can contain any failure it produces.
|
|
13
|
+
// A no-args `execute` is already an Effect value and needs no equivalent.
|
|
14
|
+
const suspendExecute = (config, args) => Effect.suspend(() => config.execute(args));
|
|
15
|
+
export function define(name, config) {
|
|
16
|
+
const isArgsDeclared = Predicate.isNotUndefined(config.args);
|
|
17
|
+
const maybeInterrupt = Option.fromNullishOr(config.interrupt);
|
|
18
|
+
if (Option.isNone(maybeInterrupt)) {
|
|
19
|
+
if (isArgsDeclared) {
|
|
10
20
|
const definition = (args) => ({
|
|
11
21
|
name,
|
|
12
22
|
args,
|
|
13
|
-
effect:
|
|
23
|
+
effect: suspendExecute(config, args),
|
|
14
24
|
messageMappers: [],
|
|
15
25
|
});
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
26
|
+
brandAsDefinition(definition, name);
|
|
27
|
+
return definition;
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
const definition = () => ({
|
|
31
|
+
name,
|
|
32
|
+
effect: config.execute,
|
|
33
|
+
messageMappers: [],
|
|
22
34
|
});
|
|
23
|
-
|
|
35
|
+
brandAsDefinition(definition, name);
|
|
24
36
|
return definition;
|
|
25
|
-
}
|
|
37
|
+
}
|
|
26
38
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
39
|
+
const interrupt = maybeInterrupt.value;
|
|
40
|
+
const maybeToKey = Predicate.isObject(interrupt) &&
|
|
41
|
+
Predicate.hasProperty(interrupt, 'toKey') &&
|
|
42
|
+
Predicate.isFunction(interrupt.toKey)
|
|
43
|
+
? Option.some(interrupt.toKey)
|
|
44
|
+
: Option.none();
|
|
45
|
+
if (!isArgsDeclared) {
|
|
46
|
+
const definition = () => ({
|
|
47
|
+
name,
|
|
48
|
+
key: name,
|
|
49
|
+
effect: Interruptible.__registerKeyWhileRunning(name, config.execute),
|
|
50
|
+
messageMappers: [],
|
|
32
51
|
});
|
|
33
|
-
|
|
34
|
-
|
|
52
|
+
brandAsDefinition(definition, name);
|
|
53
|
+
Object.defineProperty(definition, 'Interrupt', {
|
|
54
|
+
value: Interruptible.__makeInterruptDefinitionNoArgs(name, name),
|
|
35
55
|
});
|
|
36
|
-
/* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
|
|
37
56
|
return definition;
|
|
57
|
+
}
|
|
58
|
+
if (Option.isNone(maybeToKey)) {
|
|
59
|
+
const definition = (args) => ({
|
|
60
|
+
name,
|
|
61
|
+
args,
|
|
62
|
+
key: name,
|
|
63
|
+
effect: Interruptible.__registerKeyWhileRunning(name, suspendExecute(config, args)),
|
|
64
|
+
messageMappers: [],
|
|
65
|
+
});
|
|
66
|
+
brandAsDefinition(definition, name);
|
|
67
|
+
Object.defineProperty(definition, 'Interrupt', {
|
|
68
|
+
value: Interruptible.__makeInterruptDefinitionNoArgs(name, name),
|
|
69
|
+
});
|
|
70
|
+
return definition;
|
|
71
|
+
}
|
|
72
|
+
const toKey = maybeToKey.value;
|
|
73
|
+
const toFullKey = (keyArgs) => `${name}:${toKey(keyArgs)}`;
|
|
74
|
+
const definition = (args) => {
|
|
75
|
+
const key = toFullKey(args);
|
|
76
|
+
return {
|
|
77
|
+
name,
|
|
78
|
+
args,
|
|
79
|
+
key,
|
|
80
|
+
effect: Interruptible.__registerKeyWhileRunning(key, suspendExecute(config, args)),
|
|
81
|
+
messageMappers: [],
|
|
82
|
+
};
|
|
38
83
|
};
|
|
84
|
+
brandAsDefinition(definition, name);
|
|
85
|
+
Object.defineProperty(definition, 'Interrupt', {
|
|
86
|
+
value: Interruptible.__makeInterruptDefinitionWithArgs(name, toFullKey),
|
|
87
|
+
});
|
|
88
|
+
return definition;
|
|
39
89
|
}
|
|
40
90
|
/** Transforms the Effect inside a Command while preserving its name, args, and
|
|
41
91
|
* message-mapping chain. Reach for this to adjust the Effect itself (provide a
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Context, Effect, Fiber, Schema } from 'effect';
|
|
2
|
-
import { CommandDefinitionTypeId } from '../
|
|
2
|
+
import { CommandDefinitionTypeId } from '../brand.js';
|
|
3
3
|
/** At least one in-flight Command held the interrupt key, and every holder
|
|
4
4
|
* has been stopped. Their declared result Messages are guaranteed never to
|
|
5
5
|
* dispatch. */
|
|
@@ -51,6 +51,7 @@ export declare const __CurrentRegistry: Context.Reference<Readonly<{
|
|
|
51
51
|
release: (key: string, fiber: Fiber.Fiber<unknown, unknown>) => void;
|
|
52
52
|
interrupt: (key: string) => Effect.Effect<Outcome>;
|
|
53
53
|
}>>;
|
|
54
|
+
export declare const __registerKeyWhileRunning: <A, E, R>(key: string, effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
54
55
|
/** An Interrupt Command definition derived from an interruptible Command
|
|
55
56
|
* definition with no declared args. Call as `Definition.Interrupt(toMessage)`
|
|
56
57
|
* to produce a Command that interrupts every holder of the definition's key. */
|
|
@@ -94,7 +95,7 @@ export interface DefinitionNoArgs<Name extends string, Eff extends Effect.Effect
|
|
|
94
95
|
* from them, namespaced by the Command name. Call as `Definition(args)` to
|
|
95
96
|
* produce a Command instance; use `Definition.Interrupt` to build the
|
|
96
97
|
* Command that stops every holder of a specific key. */
|
|
97
|
-
export interface DefinitionWithArgs<Name extends string, Fields extends Schema.Struct.Fields, KeyArgs extends
|
|
98
|
+
export interface DefinitionWithArgs<Name extends string, Fields extends Schema.Struct.Fields, KeyArgs extends object, Eff extends Effect.Effect<any, any, any>> {
|
|
98
99
|
readonly [CommandDefinitionTypeId]: CommandDefinitionTypeId;
|
|
99
100
|
readonly name: Name;
|
|
100
101
|
readonly Interrupt: InterruptDefinitionWithArgs<Name, KeyArgs>;
|
|
@@ -122,96 +123,10 @@ export interface DefinitionWithArgsNameKeyed<Name extends string, Fields extends
|
|
|
122
123
|
effect: Eff;
|
|
123
124
|
}>;
|
|
124
125
|
}
|
|
125
|
-
/**
|
|
126
|
-
*
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
*
|
|
130
|
-
|
|
131
|
-
* Keys are namespaced by the Command name automatically. With no declared
|
|
132
|
-
* args the key is the Command name itself. With declared args, `toKey` maps
|
|
133
|
-
* them to the part that distinguishes invocations, and the full key becomes
|
|
134
|
-
* `` `${name}:${toKey(args)}` ``, so keys never collide across definitions
|
|
135
|
-
* and call sites never restate the name. Derive the key part from the Model
|
|
136
|
-
* identity that owns the in-flight work (a list item id, an entity id), never
|
|
137
|
-
* from a generated value: the update function is pure, and any invocation you
|
|
138
|
-
* can meaningfully target is already distinguished by data in the Model.
|
|
139
|
-
*
|
|
140
|
-
* `toKey` is optional on the with-args form. Omit it when at most one
|
|
141
|
-
* invocation is meaningfully in flight (a single-instance submit flow), and the
|
|
142
|
-
* key is the Command name, exactly like the no-args form, with `Interrupt`
|
|
143
|
-
* taking only `toMessage`. Provide it, deriving the key from the owning Model
|
|
144
|
-
* identity, when invocations run concurrently and must be interrupted
|
|
145
|
-
* independently.
|
|
146
|
-
*
|
|
147
|
-
* Semantics:
|
|
148
|
-
*
|
|
149
|
-
* - A key is an address, not a lock. Any number of invocations may run under
|
|
150
|
-
* one key concurrently, and dispatching never interrupts anything.
|
|
151
|
-
* Interruption only happens when update returns an Interrupt Command.
|
|
152
|
-
* - `Definition.Interrupt` produces a Command whose Effect interrupts every
|
|
153
|
-
* current holder of the key and results in `toMessage(outcome)`. The
|
|
154
|
-
* outcome is `Interrupted` when at least one holder was stopped (the
|
|
155
|
-
* stopped holders' result Messages are guaranteed never to dispatch) or
|
|
156
|
-
* `NotFound` when nothing held the key. Name the result Message
|
|
157
|
-
* `CompletedCancel<CommandName>`.
|
|
158
|
-
* - To dispatch a replacement after cancelling, sequence through the
|
|
159
|
-
* Interrupt's result Message: return the new Command from the
|
|
160
|
-
* `CompletedCancel<CommandName>` handler. Commands in one batch run
|
|
161
|
-
* concurrently with no execution-order guarantee, so `[Interrupt, Next]`
|
|
162
|
-
* in a single list is a race, not a sequence.
|
|
163
|
-
*
|
|
164
|
-
* For work that should stop when the Model says so, reach for a Subscription
|
|
165
|
-
* or ManagedResource instead; interruption is for one-shot async work that is
|
|
166
|
-
* structurally a Command (for example an in-flight HTTP request, a file read,
|
|
167
|
-
* or an upload).
|
|
168
|
-
*
|
|
169
|
-
* @example No args
|
|
170
|
-
* ```ts
|
|
171
|
-
* const SyncLibrary = Command.Interruptible.define(
|
|
172
|
-
* 'SyncLibrary',
|
|
173
|
-
* SucceededSyncLibrary,
|
|
174
|
-
* FailedSyncLibrary,
|
|
175
|
-
* )(Effect.gen(function* () { ... }))
|
|
176
|
-
* // Call sites:
|
|
177
|
-
* SyncLibrary()
|
|
178
|
-
* SyncLibrary.Interrupt(outcome => CompletedCancelSyncLibrary({ outcome }))
|
|
179
|
-
* ```
|
|
180
|
-
*
|
|
181
|
-
* @example With args, key derived from them
|
|
182
|
-
* ```ts
|
|
183
|
-
* const UploadFile = Command.Interruptible.define(
|
|
184
|
-
* 'UploadFile',
|
|
185
|
-
* { uploadId: S.Number, file: S.instanceOf(File) },
|
|
186
|
-
* ({ uploadId }: { uploadId: number }) => String(uploadId),
|
|
187
|
-
* SucceededUploadFile,
|
|
188
|
-
* FailedUploadFile,
|
|
189
|
-
* )(({ uploadId, file }) =>
|
|
190
|
-
* Effect.gen(function* () { ... }),
|
|
191
|
-
* )
|
|
192
|
-
* // Call sites:
|
|
193
|
-
* UploadFile({ uploadId: 1, file })
|
|
194
|
-
* UploadFile.Interrupt({ uploadId: 1 }, outcome =>
|
|
195
|
-
* CompletedCancelUploadFile({ uploadId: 1, outcome }),
|
|
196
|
-
* )
|
|
197
|
-
* ```
|
|
198
|
-
*
|
|
199
|
-
* @example With args, keyed by name (one invocation in flight)
|
|
200
|
-
* ```ts
|
|
201
|
-
* const SaveDraft = Command.Interruptible.define(
|
|
202
|
-
* 'SaveDraft',
|
|
203
|
-
* { draftId: S.String, body: S.String },
|
|
204
|
-
* SucceededSaveDraft,
|
|
205
|
-
* FailedSaveDraft,
|
|
206
|
-
* )(({ draftId, body }) =>
|
|
207
|
-
* Effect.gen(function* () { ... }),
|
|
208
|
-
* )
|
|
209
|
-
* // Call sites:
|
|
210
|
-
* SaveDraft({ draftId: 'abc', body })
|
|
211
|
-
* SaveDraft.Interrupt(outcome => CompletedCancelSaveDraft({ outcome }))
|
|
212
|
-
* ```
|
|
213
|
-
*/
|
|
214
|
-
export declare function define<const Name extends string, Results extends ReadonlyArray<Schema.Top>>(name: Name, ...results: Results): <Eff extends Effect.Effect<Schema.Schema.Type<Results[number]>, any, any>>(effect: Eff) => DefinitionNoArgs<Name, Eff>;
|
|
215
|
-
export declare function define<const Name extends string, Fields extends Schema.Struct.Fields, KeyArgs extends Partial<Schema.Schema.Type<Schema.Struct<Fields>>>, Results extends ReadonlyArray<Schema.Top>>(name: Name, args: Fields, toKey: (keyArgs: KeyArgs) => string, ...results: Results): <Eff extends Effect.Effect<Schema.Schema.Type<Results[number]>, any, any>>(effectBuilder: (args: Schema.Schema.Type<Schema.Struct<Fields>>) => Eff) => DefinitionWithArgs<Name, Fields, KeyArgs, Eff>;
|
|
216
|
-
export declare function define<const Name extends string, Fields extends Schema.Struct.Fields, Results extends ReadonlyArray<Schema.Top>>(name: Name, args: Fields, ...results: Results): <Eff extends Effect.Effect<Schema.Schema.Type<Results[number]>, any, any>>(effectBuilder: (args: Schema.Schema.Type<Schema.Struct<Fields>>) => Eff) => DefinitionWithArgsNameKeyed<Name, Fields, Eff>;
|
|
126
|
+
/** @internal Builds the `Interrupt` constructor for an interruptible definition
|
|
127
|
+
* whose key is the Command name. Internal to the Command module. */
|
|
128
|
+
export declare const __makeInterruptDefinitionNoArgs: (name: string, key: string) => unknown;
|
|
129
|
+
/** @internal Builds the `Interrupt` constructor for an interruptible definition
|
|
130
|
+
* whose key is derived from its args. Internal to the Command module. */
|
|
131
|
+
export declare const __makeInterruptDefinitionWithArgs: (name: string, toFullKey: (keyArgs: any) => string) => unknown;
|
|
217
132
|
//# sourceMappingURL=interruptible.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interruptible.d.ts","sourceRoot":"","sources":["../../../src/command/interruptible/interruptible.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"interruptible.d.ts","sourceRoot":"","sources":["../../../src/command/interruptible/interruptible.ts"],"names":[],"mappings":"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"}
|