foldkit 0.148.2 → 0.149.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 (80) hide show
  1. package/README.md +15 -24
  2. package/dist/message/index.d.ts +2 -1
  3. package/dist/message/index.d.ts.map +1 -1
  4. package/dist/message/index.js +1 -1
  5. package/dist/message/public.d.ts +2 -1
  6. package/dist/message/public.d.ts.map +1 -1
  7. package/dist/message/public.js +1 -1
  8. package/dist/runtime/runtime.d.ts +1 -2
  9. package/dist/runtime/runtime.d.ts.map +1 -1
  10. package/dist/schema/index.d.ts +53 -8
  11. package/dist/schema/index.d.ts.map +1 -1
  12. package/dist/schema/index.js +179 -21
  13. package/dist/subscription/subscription.d.ts +1 -1
  14. package/dist/subscription/subscription.js +1 -1
  15. package/dist/test/apps/attributes.d.ts +7 -4
  16. package/dist/test/apps/attributes.d.ts.map +1 -1
  17. package/dist/test/apps/attributes.js +6 -6
  18. package/dist/test/apps/bubbling.d.ts +8 -2
  19. package/dist/test/apps/bubbling.d.ts.map +1 -1
  20. package/dist/test/apps/bubbling.js +10 -9
  21. package/dist/test/apps/colorPicker.d.ts +7 -6
  22. package/dist/test/apps/colorPicker.d.ts.map +1 -1
  23. package/dist/test/apps/colorPicker.js +8 -7
  24. package/dist/test/apps/contextMenu.d.ts +14 -4
  25. package/dist/test/apps/contextMenu.d.ts.map +1 -1
  26. package/dist/test/apps/contextMenu.js +8 -9
  27. package/dist/test/apps/counter.d.ts +52 -24
  28. package/dist/test/apps/counter.d.ts.map +1 -1
  29. package/dist/test/apps/counter.js +23 -34
  30. package/dist/test/apps/crashOnRender.d.ts +44 -28
  31. package/dist/test/apps/crashOnRender.d.ts.map +1 -1
  32. package/dist/test/apps/crashOnRender.js +17 -20
  33. package/dist/test/apps/drafts.d.ts +19 -8
  34. package/dist/test/apps/drafts.d.ts.map +1 -1
  35. package/dist/test/apps/drafts.js +10 -11
  36. package/dist/test/apps/feedSocket.d.ts +13 -13
  37. package/dist/test/apps/feedSocket.d.ts.map +1 -1
  38. package/dist/test/apps/feedSocket.js +17 -28
  39. package/dist/test/apps/fileUpload.d.ts +7 -6
  40. package/dist/test/apps/fileUpload.d.ts.map +1 -1
  41. package/dist/test/apps/fileUpload.js +9 -8
  42. package/dist/test/apps/formChild.d.ts +40 -24
  43. package/dist/test/apps/formChild.d.ts.map +1 -1
  44. package/dist/test/apps/formChild.js +31 -32
  45. package/dist/test/apps/interactions.d.ts +16 -11
  46. package/dist/test/apps/interactions.d.ts.map +1 -1
  47. package/dist/test/apps/interactions.js +21 -24
  48. package/dist/test/apps/keypress.d.ts +11 -11
  49. package/dist/test/apps/keypress.d.ts.map +1 -1
  50. package/dist/test/apps/keypress.js +12 -12
  51. package/dist/test/apps/login.d.ts +43 -23
  52. package/dist/test/apps/login.d.ts.map +1 -1
  53. package/dist/test/apps/login.js +17 -25
  54. package/dist/test/apps/logoutButton.d.ts +12 -6
  55. package/dist/test/apps/logoutButton.d.ts.map +1 -1
  56. package/dist/test/apps/logoutButton.js +15 -11
  57. package/dist/test/apps/mountPanel.d.ts +19 -20
  58. package/dist/test/apps/mountPanel.d.ts.map +1 -1
  59. package/dist/test/apps/mountPanel.js +22 -24
  60. package/dist/test/apps/multiRole.d.ts +6 -3
  61. package/dist/test/apps/multiRole.d.ts.map +1 -1
  62. package/dist/test/apps/multiRole.js +8 -7
  63. package/dist/test/apps/pointer.d.ts +13 -6
  64. package/dist/test/apps/pointer.d.ts.map +1 -1
  65. package/dist/test/apps/pointer.js +11 -10
  66. package/dist/test/apps/resumeUpload.d.ts +11 -14
  67. package/dist/test/apps/resumeUpload.d.ts.map +1 -1
  68. package/dist/test/apps/resumeUpload.js +17 -27
  69. package/dist/test/apps/scorePanel.d.ts +6 -3
  70. package/dist/test/apps/scorePanel.d.ts.map +1 -1
  71. package/dist/test/apps/scorePanel.js +8 -7
  72. package/dist/test/apps/selectiveKeys.d.ts +5 -1
  73. package/dist/test/apps/selectiveKeys.d.ts.map +1 -1
  74. package/dist/test/apps/selectiveKeys.js +13 -12
  75. package/dist/test/apps/uploads.d.ts +52 -30
  76. package/dist/test/apps/uploads.d.ts.map +1 -1
  77. package/dist/test/apps/uploads.js +20 -30
  78. package/dist/update/update.d.ts +4 -7
  79. package/dist/update/update.d.ts.map +1 -1
  80. package/package.json +1 -1
package/README.md CHANGED
@@ -41,10 +41,10 @@ A complete Foldkit program. State lives in a single Model, events become Message
41
41
 
42
42
  ```ts
43
43
  // src/main.ts
44
- import { Match as M, Schema as S } from 'effect'
44
+ import { Schema as S } from 'effect'
45
45
  import { Command, Runtime } from 'foldkit'
46
46
  import { Document, HtmlBuilder } from 'foldkit/html'
47
- import { m } from 'foldkit/message'
47
+ import { defineMessageUnion } from 'foldkit/message'
48
48
  import { evo } from 'foldkit/struct'
49
49
 
50
50
  // MODEL
@@ -54,32 +54,23 @@ export type Model = typeof Model.Type
54
54
 
55
55
  // MESSAGE
56
56
 
57
- const ClickedDecrement = m('ClickedDecrement')
58
- const ClickedIncrement = m('ClickedIncrement')
59
- const ClickedReset = m('ClickedReset')
60
-
61
- export const Message = S.Union([
62
- ClickedDecrement,
63
- ClickedIncrement,
64
- ClickedReset,
65
- ])
57
+ export const Message = defineMessageUnion({
58
+ ClickedDecrement: {},
59
+ ClickedIncrement: {},
60
+ ClickedReset: {},
61
+ })
66
62
  export type Message = typeof Message.Type
67
63
 
68
64
  // UPDATE
69
65
 
70
- export const update = (
71
- model: Model,
72
- message: Message,
73
- ): readonly [Model, ReadonlyArray<Command.Command<Message>>] =>
74
- M.value(message).pipe(
75
- M.withReturnType<
76
- readonly [Model, ReadonlyArray<Command.Command<Message>>]
77
- >(),
78
- M.tagsExhaustive({
66
+ export const update = (model: Model, message: Message) =>
67
+ Message.match<readonly [Model, ReadonlyArray<Command.Command<Message>>]>(
68
+ message,
69
+ {
79
70
  ClickedDecrement: () => [evo(model, { count: count => count - 1 }), []],
80
71
  ClickedIncrement: () => [evo(model, { count: count => count + 1 }), []],
81
72
  ClickedReset: () => [evo(model, { count: () => 0 }), []],
82
- }),
73
+ },
83
74
  )
84
75
 
85
76
  // INIT
@@ -97,9 +88,9 @@ export const view = (model: Model, h: HtmlBuilder<Message>): Document => ({
97
88
  [],
98
89
  [
99
90
  h.p([], [model.count.toString()]),
100
- h.button([h.OnClick(ClickedDecrement())], ['-']),
101
- h.button([h.OnClick(ClickedReset())], ['Reset']),
102
- h.button([h.OnClick(ClickedIncrement())], ['+']),
91
+ h.button([h.OnClick(Message.ClickedDecrement())], ['-']),
92
+ h.button([h.OnClick(Message.ClickedReset())], ['Reset']),
93
+ h.button([h.OnClick(Message.ClickedIncrement())], ['+']),
103
94
  ],
104
95
  ),
105
96
  })
@@ -1,2 +1,3 @@
1
- export { m } from '../schema/index.js';
1
+ export { defineMessageUnion } from '../schema/index.js';
2
+ export type { MessageUnion } from '../schema/index.js';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/message/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/message/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACvD,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA"}
@@ -1 +1 @@
1
- export { m } from '../schema/index.js';
1
+ export { defineMessageUnion } from '../schema/index.js';
@@ -1,2 +1,3 @@
1
- export { m } from './index.js';
1
+ export { defineMessageUnion } from './index.js';
2
+ export type { MessageUnion } from './index.js';
2
3
  //# sourceMappingURL=public.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/message/public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/message/public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC/C,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA"}
@@ -1 +1 @@
1
- export { m } from './index.js';
1
+ export { defineMessageUnion } from './index.js';
@@ -298,7 +298,6 @@ export type RoutingApplicationInit<Model, Message, Flags = void, Resources = nev
298
298
  * `ApplicationInit`: argless, or receiving Flags when `Flags` is set. */
299
299
  export type ElementInit<Model, Message, Flags = void, Resources = never, ManagedResourceServices = never> = ApplicationInit<Model, Message, Flags, Resources, ManagedResourceServices>;
300
300
  type BootMode = 'Fresh' | 'Hydrate';
301
- declare const RuntimeBootTypeId: unique symbol;
302
301
  /** Client-only startup input for an application that declares Flags. Pass it
303
302
  * to `run` or `embed`; `hydrate` instead decodes the exact Flags value
304
303
  * embedded by the server render.
@@ -318,7 +317,7 @@ export type MakeRuntimeReturn<P extends Ports | undefined = undefined, Flags = v
318
317
  runtimeId: string;
319
318
  start: (hmrModel?: unknown) => Effect.Effect<void>;
320
319
  ports: P;
321
- [RuntimeBootTypeId]?: Readonly<{
320
+ '~foldkit/RuntimeBoot'?: Readonly<{
322
321
  Flags: (flags: Flags) => Flags;
323
322
  Resources: (resources: Resources) => Resources;
324
323
  Kind: Kind;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime.ts"],"names":[],"mappings":"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"}
@@ -5,21 +5,65 @@ export type CallableTaggedStruct<Tag extends string, Fields extends S.Struct.Fie
5
5
  } & Fields>> : (value: Parameters<S.TaggedStruct<Tag, Fields>['make']>[0]) => Types.Simplify<S.Struct.Type<{
6
6
  readonly _tag: S.tag<Tag>;
7
7
  } & Fields>>);
8
+ type TaggedUnionProperty = keyof S.TaggedUnion<{}>;
9
+ type MessageVariantNameCollision<Name extends PropertyKey> = Readonly<{
10
+ 'Message variant names must not conflict with Schema.TaggedUnion properties': Name;
11
+ }>;
12
+ type ValidateMessageVariantNames<CasesByTag extends Record<string, S.Struct.Fields>> = Extract<keyof CasesByTag, TaggedUnionProperty> extends infer Name ? [Name] extends [never] ? unknown : MessageVariantNameCollision<Name & PropertyKey> : never;
13
+ type TaggedMessageUnion<CasesByTag extends Record<string, S.Struct.Fields>> = S.TaggedUnion<{
14
+ readonly [Tag in keyof CasesByTag & string]: S.TaggedStruct<Tag, CasesByTag[Tag]>;
15
+ }>;
16
+ interface MessageSchema<CasesByTag extends Record<string, S.Struct.Fields>> extends S.BottomLazy<TaggedMessageUnion<CasesByTag>['ast'], MessageSchema<CasesByTag>> {
17
+ readonly Type: TaggedMessageUnion<CasesByTag>['Type'];
18
+ readonly Encoded: TaggedMessageUnion<CasesByTag>['Encoded'];
19
+ readonly DecodingServices: TaggedMessageUnion<CasesByTag>['DecodingServices'];
20
+ readonly EncodingServices: TaggedMessageUnion<CasesByTag>['EncodingServices'];
21
+ readonly '~type.make.in': TaggedMessageUnion<CasesByTag>['~type.make.in'];
22
+ readonly '~type.make': TaggedMessageUnion<CasesByTag>['~type.make'];
23
+ readonly Iso: TaggedMessageUnion<CasesByTag>['Iso'];
24
+ readonly match: TaggedMessageUnion<CasesByTag>['match'];
25
+ }
26
+ /** The union `defineMessageUnion` returns. A Schema with exhaustive matching
27
+ * and one callable constructor per variant, reachable by tag. */
28
+ export type MessageUnion<CasesByTag extends Record<string, S.Struct.Fields>> = MessageSchema<CasesByTag> & {
29
+ readonly [Tag in keyof CasesByTag & string]: CallableTaggedStruct<Tag, CasesByTag[Tag]>;
30
+ };
8
31
  /**
9
- * Wraps `Schema.TaggedStruct` to create a message variant you can call directly as a constructor.
10
- * Use `m` for message types enabling `ClickedReset()` instead of `ClickedReset.make()`.
32
+ * Declares a whole Message union from one record of fields per variant, naming
33
+ * each variant once instead of once per constructor and once in the union list.
34
+ *
35
+ * The result is a Schema, so it decodes and nests in a Model. Its focused
36
+ * Message surface is exhaustive `match` plus one callable constructor per
37
+ * variant. Each constructor is itself a schema, which is what `Command.define`
38
+ * needs for its `messages` list.
39
+ *
40
+ * Use `Message.match` for exhaustive dispatch. The values are ordinary tagged
41
+ * objects, so Effect `Match` remains available for partial matching, one
42
+ * handler over several tags, and fallbacks.
43
+ *
44
+ * A Submodel's OutMessage is declared the same way, with variants of its own. A
45
+ * Message is a fact the Submodel handles; an OutMessage is a fact it reports to
46
+ * its parent. Sharing one variant between the two unions puts the child's
47
+ * internal vocabulary in the parent's contract, so declare them separately even
48
+ * when a pair happens to carry the same fields.
49
+ *
50
+ * A variant may not be named after the schema surface it would shadow, such as
51
+ * `make`, `match`, `cases`, or `ast`. TypeScript reports the conflicting names,
52
+ * and untyped calls fail with a runtime error.
11
53
  *
12
54
  * @example
13
55
  * ```typescript
14
- * const ClickedReset = m('ClickedReset')
15
- * ClickedReset() // { _tag: 'ClickedReset' }
56
+ * export const Message = defineMessageUnion({
57
+ * ClickedReset: {},
58
+ * ChangedCount: { count: S.Number },
59
+ * })
60
+ * export type Message = typeof Message.Type
16
61
  *
17
- * const ChangedCount = m('ChangedCount', { count: S.Number })
18
- * ChangedCount({ count: 1 }) // { _tag: 'ChangedCount', count: 1 }
62
+ * Message.ClickedReset() // { _tag: 'ClickedReset' }
63
+ * Message.ChangedCount({ count: 1 }) // { _tag: 'ChangedCount', count: 1 }
19
64
  * ```
20
65
  */
21
- export declare function m<Tag extends string>(tag: Tag): CallableTaggedStruct<Tag, {}>;
22
- export declare function m<Tag extends string, Fields extends S.Struct.Fields>(tag: Tag, fields: Fields): CallableTaggedStruct<Tag, Fields>;
66
+ export declare function defineMessageUnion<const CasesByTag extends Record<string, S.Struct.Fields>>(casesByTag: CasesByTag & ValidateMessageVariantNames<CasesByTag>): MessageUnion<CasesByTag>;
23
67
  /**
24
68
  * Wraps `Schema.TaggedStruct` to create a route variant you can call directly as a constructor.
25
69
  * Use `r` for route types — enabling `Home()` instead of `Home.make()`.
@@ -51,4 +95,5 @@ export declare function r<Tag extends string, Fields extends S.Struct.Fields>(ta
51
95
  */
52
96
  export declare function ts<Tag extends string>(tag: Tag): CallableTaggedStruct<Tag, {}>;
53
97
  export declare function ts<Tag extends string, Fields extends S.Struct.Fields>(tag: Tag, fields: Fields): CallableTaggedStruct<Tag, Fields>;
98
+ export {};
54
99
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAE3C,qIAAqI;AACrI,MAAM,MAAM,oBAAoB,CAC9B,GAAG,SAAS,MAAM,EAClB,MAAM,SAAS,CAAC,CAAC,MAAM,CAAC,MAAM,IAC5B,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,GAC7B,CAAC,MAAM,MAAM,SAAS,KAAK,GACvB,CACE,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,KAC9D,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;CAAE,GAAG,MAAM,CAAC,CAAC,GAC1E,CACE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KACtD,KAAK,CAAC,QAAQ,CACjB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;CAAE,GAAG,MAAM,CAAC,CACtD,CAAC,CAAA;AAqBR;;;;;;;;;;;;GAYG;AACH,wBAAgB,CAAC,CAAC,GAAG,SAAS,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,oBAAoB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;AAC9E,wBAAgB,CAAC,CAAC,GAAG,SAAS,MAAM,EAAE,MAAM,SAAS,CAAC,CAAC,MAAM,CAAC,MAAM,EAClE,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,GACb,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;AAKpC;;;;;;;;;;;;GAYG;AACH,wBAAgB,CAAC,CAAC,GAAG,SAAS,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,oBAAoB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;AAC9E,wBAAgB,CAAC,CAAC,GAAG,SAAS,MAAM,EAAE,MAAM,SAAS,CAAC,CAAC,MAAM,CAAC,MAAM,EAClE,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,GACb,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;AAKpC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,EAAE,CAAC,GAAG,SAAS,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,oBAAoB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;AAC/E,wBAAgB,EAAE,CAAC,GAAG,SAAS,MAAM,EAAE,MAAM,SAAS,CAAC,CAAC,MAAM,CAAC,MAAM,EACnE,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,GACb,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"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"}
@@ -1,26 +1,184 @@
1
- import { Schema as S } from 'effect';
2
- const makeCallable = (schema) =>
3
- /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
4
- new Proxy(function () { }, {
5
- apply(_target, _thisArg, argumentsList) {
6
- return schema.make(argumentsList[0] ?? {});
7
- },
8
- get(_target, property, receiver) {
9
- return Reflect.get(schema, property, receiver);
10
- },
11
- has(_target, property) {
12
- return Reflect.has(schema, property);
13
- },
14
- getPrototypeOf() {
15
- return Reflect.getPrototypeOf(schema);
16
- },
17
- });
18
- export function m(tag, fields = {}) {
19
- return makeCallable(S.TaggedStruct(tag, fields));
1
+ import { Array, Match as M, Schema as S, SchemaAST } from 'effect';
2
+ const assignPlainProperty = (output, name, value) => {
3
+ if (name === '__proto__') {
4
+ Object.defineProperty(output, name, {
5
+ value,
6
+ writable: true,
7
+ enumerable: true,
8
+ configurable: true,
9
+ });
10
+ }
11
+ else {
12
+ output[name] = value;
13
+ }
14
+ };
15
+ const isDirectlyCopyable = (ast) => {
16
+ if (ast.checks !== undefined ||
17
+ ast.encoding !== undefined ||
18
+ ast.context !== undefined ||
19
+ ast.annotations?.['parseOptions'] !== undefined) {
20
+ return false;
21
+ }
22
+ return M.value(ast).pipe(M.withReturnType(), M.tagsExhaustive({
23
+ Declaration: () => false,
24
+ Null: () => true,
25
+ Undefined: () => true,
26
+ Void: () => true,
27
+ Never: () => true,
28
+ Unknown: () => true,
29
+ Any: () => true,
30
+ String: () => true,
31
+ Number: () => true,
32
+ Boolean: () => true,
33
+ BigInt: () => true,
34
+ Symbol: () => true,
35
+ Literal: () => true,
36
+ UniqueSymbol: () => true,
37
+ ObjectKeyword: () => true,
38
+ Enum: () => true,
39
+ TemplateLiteral: ({ parts }) => parts.every(isDirectlyCopyable),
40
+ Arrays: () => false,
41
+ Objects: () => false,
42
+ Union: ({ mode, types }) => mode !== 'oneOf' && types.every(isDirectlyCopyable),
43
+ Suspend: () => false,
44
+ }));
45
+ };
46
+ const getDirectPropertyNames = (propertySignatures) => {
47
+ const names = [];
48
+ for (const { name, type } of propertySignatures) {
49
+ if (name !== '_tag' && !isDirectlyCopyable(SchemaAST.toType(type))) {
50
+ return undefined;
51
+ }
52
+ names.push(name);
53
+ }
54
+ return names;
55
+ };
56
+ const makeCallable = (tag, fields) => {
57
+ const schema = S.TaggedStruct(tag, fields);
58
+ const propertyNames = Object.hasOwn(fields, '_tag')
59
+ ? undefined
60
+ : getDirectPropertyNames(schema.ast.propertySignatures);
61
+ const make = (value) => schema.make(
62
+ /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
63
+ (value ?? {}));
64
+ const construct = propertyNames !== undefined
65
+ ? (value) => {
66
+ /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
67
+ const input = (value ?? {});
68
+ if (Object(input) !== input) {
69
+ return make(value);
70
+ }
71
+ const output = {};
72
+ for (const name of propertyNames) {
73
+ const descriptor = Object.getOwnPropertyDescriptor(input, name);
74
+ if (name !== '_tag' &&
75
+ descriptor === undefined &&
76
+ Reflect.has(input, name)) {
77
+ return make(value);
78
+ }
79
+ if (descriptor !== undefined && !('value' in descriptor)) {
80
+ return make(value);
81
+ }
82
+ const inputValue = descriptor === undefined ? undefined : input[name];
83
+ if (name === '_tag') {
84
+ if (inputValue !== undefined && inputValue !== tag) {
85
+ return make(value);
86
+ }
87
+ if (descriptor !== undefined && inputValue === undefined) {
88
+ assignPlainProperty(output, name, inputValue);
89
+ }
90
+ assignPlainProperty(output, name, tag);
91
+ }
92
+ else {
93
+ assignPlainProperty(output, name, inputValue);
94
+ }
95
+ }
96
+ return output;
97
+ }
98
+ : make;
99
+ /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
100
+ return new Proxy(function () { }, {
101
+ apply(_target, _thisArg, argumentsList) {
102
+ return construct(argumentsList[0]);
103
+ },
104
+ get(_target, property, receiver) {
105
+ return Reflect.get(schema, property, receiver);
106
+ },
107
+ has(_target, property) {
108
+ return Reflect.has(schema, property);
109
+ },
110
+ getPrototypeOf() {
111
+ return Reflect.getPrototypeOf(schema);
112
+ },
113
+ });
114
+ };
115
+ const taggedUnionTypeOnlyPropertyNames = new Set([
116
+ 'Rebuild',
117
+ '~type.parameters',
118
+ 'Type',
119
+ 'Encoded',
120
+ 'DecodingServices',
121
+ 'EncodingServices',
122
+ '~type.make.in',
123
+ '~type.make',
124
+ '~type.constructor.default',
125
+ 'Iso',
126
+ '~type.mutability',
127
+ '~type.optionality',
128
+ '~encoded.mutability',
129
+ '~encoded.optionality',
130
+ ]);
131
+ /**
132
+ * Declares a whole Message union from one record of fields per variant, naming
133
+ * each variant once instead of once per constructor and once in the union list.
134
+ *
135
+ * The result is a Schema, so it decodes and nests in a Model. Its focused
136
+ * Message surface is exhaustive `match` plus one callable constructor per
137
+ * variant. Each constructor is itself a schema, which is what `Command.define`
138
+ * needs for its `messages` list.
139
+ *
140
+ * Use `Message.match` for exhaustive dispatch. The values are ordinary tagged
141
+ * objects, so Effect `Match` remains available for partial matching, one
142
+ * handler over several tags, and fallbacks.
143
+ *
144
+ * A Submodel's OutMessage is declared the same way, with variants of its own. A
145
+ * Message is a fact the Submodel handles; an OutMessage is a fact it reports to
146
+ * its parent. Sharing one variant between the two unions puts the child's
147
+ * internal vocabulary in the parent's contract, so declare them separately even
148
+ * when a pair happens to carry the same fields.
149
+ *
150
+ * A variant may not be named after the schema surface it would shadow, such as
151
+ * `make`, `match`, `cases`, or `ast`. TypeScript reports the conflicting names,
152
+ * and untyped calls fail with a runtime error.
153
+ *
154
+ * @example
155
+ * ```typescript
156
+ * export const Message = defineMessageUnion({
157
+ * ClickedReset: {},
158
+ * ChangedCount: { count: S.Number },
159
+ * })
160
+ * export type Message = typeof Message.Type
161
+ *
162
+ * Message.ClickedReset() // { _tag: 'ClickedReset' }
163
+ * Message.ChangedCount({ count: 1 }) // { _tag: 'ChangedCount', count: 1 }
164
+ * ```
165
+ */
166
+ export function defineMessageUnion(casesByTag) {
167
+ const union = S.TaggedUnion(casesByTag);
168
+ const conflictingNames = Array.filter(Object.keys(casesByTag), name => Reflect.has(union, name) || taggedUnionTypeOnlyPropertyNames.has(name));
169
+ if (Array.isArrayNonEmpty(conflictingNames)) {
170
+ throw new Error(`Message variant names conflict with Schema.TaggedUnion properties: ${conflictingNames.join(', ')}`);
171
+ }
172
+ const callables = {};
173
+ for (const [tag, fields] of Object.entries(casesByTag)) {
174
+ callables[tag] = makeCallable(tag, fields);
175
+ }
176
+ /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
177
+ return Object.assign(union, callables);
20
178
  }
21
179
  export function r(tag, fields = {}) {
22
- return makeCallable(S.TaggedStruct(tag, fields));
180
+ return makeCallable(tag, fields);
23
181
  }
24
182
  export function ts(tag, fields = {}) {
25
- return makeCallable(S.TaggedStruct(tag, fields));
183
+ return makeCallable(tag, fields);
26
184
  }
@@ -225,7 +225,7 @@ type PerEntryGatedLiftedSubscriptions<ParentModel, ParentMessage, Subscriptions,
225
225
  *
226
226
  * const roomSubscriptions = Subscription.lift(Room.subscriptions)({
227
227
  * toChildModel: (model: Model) => model.room,
228
- * toParentMessage: (message: Room.Message.Message): Message =>
228
+ * toParentMessage: (message: Room.Message): Message =>
229
229
  * GotRoomMessage({ message }),
230
230
  * when: { roomKeyboard: ({ route }) => route._tag === 'Room' },
231
231
  * })
@@ -164,7 +164,7 @@ const toGatedEntry = (subscription, config, when) => {
164
164
  *
165
165
  * const roomSubscriptions = Subscription.lift(Room.subscriptions)({
166
166
  * toChildModel: (model: Model) => model.room,
167
- * toParentMessage: (message: Room.Message.Message): Message =>
167
+ * toParentMessage: (message: Room.Message): Message =>
168
168
  * GotRoomMessage({ message }),
169
169
  * when: { roomKeyboard: ({ route }) => route._tag === 'Room' },
170
170
  * })
@@ -1,13 +1,16 @@
1
- import { Schema as S } from 'effect';
2
1
  import type { Attribute, Html, HtmlBuilder } from '../../html/index.js';
3
- export declare const IgnoredInteraction: import("../../schema/index.js").CallableTaggedStruct<"IgnoredInteraction", {}>;
4
- export declare const Message: S.Union<readonly [import("../../schema/index.js").CallableTaggedStruct<"IgnoredInteraction", {}>]>;
2
+ export declare const Message: import("../../schema/index.js").MessageUnion<{
3
+ readonly IgnoredInteraction: {};
4
+ }>;
5
5
  export type Message = typeof Message.Type;
6
6
  export type Model = Readonly<{
7
7
  attribute: Attribute<Message>;
8
8
  tagName?: string;
9
9
  }>;
10
- export declare const update: (model: Model, message: Message) => readonly [Model, ReadonlyArray<never>];
10
+ export declare const update: (model: Model, message: Message) => readonly [Readonly<{
11
+ attribute: Attribute<Message>;
12
+ tagName?: string;
13
+ }>, readonly never[]];
11
14
  export declare const testId = "attribute-host";
12
15
  export declare const view: (model: Model, h: HtmlBuilder<Message>) => Html;
13
16
  //# sourceMappingURL=attributes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../../src/test/apps/attributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAGhD,OAAO,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAKvE,eAAO,MAAM,kBAAkB,gFAA0B,CAAA;AAEzD,eAAO,MAAM,OAAO,oGAAgC,CAAA;AACpD,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,MAAM,MAAM,KAAK,GAAG,QAAQ,CAAC;IAC3B,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAC,CAAA;AAIF,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAMrC,CAAA;AAMH,eAAO,MAAM,MAAM,mBAAU,CAAA;AAE7B,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,KAAG,IAO5D,CAAA"}
1
+ {"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../../src/test/apps/attributes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAKvE,eAAO,MAAM,OAAO;;EAElB,CAAA;AAEF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,MAAM,MAAM,KAAK,GAAG,QAAQ,CAAC;IAC3B,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAC,CAAA;AAIF,eAAO,MAAM,MAAM,GAAI,OAAO,KAAK,EAAE,SAAS,OAAO;eANxC,SAAS,CAAC,OAAO,CAAC;cACnB,MAAM;qBAQd,CAAA;AAMJ,eAAO,MAAM,MAAM,mBAAU,CAAA;AAE7B,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,KAAG,IAO5D,CAAA"}
@@ -1,13 +1,13 @@
1
- import { Match as M, Schema as S } from 'effect';
2
1
  import { customElement } from '../../html/index.js';
3
- import { m } from '../../message/index.js';
2
+ import { defineMessageUnion } from '../../message/index.js';
4
3
  // MESSAGE
5
- export const IgnoredInteraction = m('IgnoredInteraction');
6
- export const Message = S.Union([IgnoredInteraction]);
4
+ export const Message = defineMessageUnion({
5
+ IgnoredInteraction: {},
6
+ });
7
7
  // UPDATE
8
- export const update = (model, message) => M.value(message).pipe(M.withReturnType(), M.tagsExhaustive({
8
+ export const update = (model, message) => Message.match(message, {
9
9
  IgnoredInteraction: () => [model, []],
10
- }));
10
+ });
11
11
  // VIEW
12
12
  const TEST_ID = 'attribute-host';
13
13
  export const testId = TEST_ID;
@@ -5,10 +5,16 @@ export declare const Model: S.Struct<{
5
5
  readonly doubleClicks: S.Number;
6
6
  }>;
7
7
  export type Model = typeof Model.Type;
8
- declare const Message: S.Union<readonly [import("../../schema/index.js").CallableTaggedStruct<"ClickedContainer", {}>, import("../../schema/index.js").CallableTaggedStruct<"DoubleClickedContainer", {}>]>;
8
+ declare const Message: import("../../schema/index.js").MessageUnion<{
9
+ readonly ClickedContainer: {};
10
+ readonly DoubleClickedContainer: {};
11
+ }>;
9
12
  type Message = typeof Message.Type;
10
13
  export declare const initialModel: Model;
11
- export declare const update: (model: Model, message: Message) => readonly [Model, ReadonlyArray<never>];
14
+ export declare const update: (model: Model, message: Message) => readonly [{
15
+ readonly clicks: number;
16
+ readonly doubleClicks: number;
17
+ }, readonly never[]];
12
18
  export declare const view: (model: Model, h: HtmlBuilder<Message>) => Html;
13
19
  export {};
14
20
  //# sourceMappingURL=bubbling.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bubbling.d.ts","sourceRoot":"","sources":["../../../src/test/apps/bubbling.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEhD,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAK5D,eAAO,MAAM,KAAK;;;EAGhB,CAAA;AACF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAOrC,QAAA,MAAM,OAAO,sLAAsD,CAAA;AACnE,KAAK,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIlC,eAAO,MAAM,YAAY,EAAE,KAG1B,CAAA;AAID,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAUrC,CAAA;AAIH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,KAAG,IAc5D,CAAA"}
1
+ {"version":3,"file":"bubbling.d.ts","sourceRoot":"","sources":["../../../src/test/apps/bubbling.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEpC,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAK5D,eAAO,MAAM,KAAK;;;EAGhB,CAAA;AACF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,QAAA,MAAM,OAAO;;;EAGX,CAAA;AACF,KAAK,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIlC,eAAO,MAAM,YAAY,EAAE,KAG1B,CAAA;AAID,eAAO,MAAM,MAAM,GAAI,OAAO,KAAK,EAAE,SAAS,OAAO;;;oBAOjD,CAAA;AAIJ,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,KAAG,IAc5D,CAAA"}