@playfast/reform 1.4.0 → 1.4.1

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.
@@ -2,7 +2,7 @@ import { Effect, Layer, Option, Schema } from 'effect';
2
2
  import { type Manifest } from '../definition/definition.js';
3
3
  import { Bus, type Tagged } from '../runtime/bus.js';
4
4
  import type { Source } from '../state/token.js';
5
- import type { Trigger } from '../ui/trigger.js';
5
+ import { type Trigger } from '../ui/trigger.js';
6
6
  export type EventOf<N extends string, P> = Tagged & {
7
7
  readonly _tag: N;
8
8
  } & P;
@@ -1 +1 @@
1
- {"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../src/event/event.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../src/event/event.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { definitionClass } from '../definition/definition.js';
3
3
  import { resolveScheduler, withInlineNotifications } from '../internal/scheduler.js';
4
4
  import { Bus, publish } from '../runtime/bus.js';
5
5
  import { applyReducers, Reducers } from '../runtime/loop.js';
6
+ import { taggedTrigger } from '../ui/trigger.js';
6
7
  export const make = (name, schema) => {
7
8
  const build = (payload) => ({ ...payload, _tag: name });
8
9
  // Payloads at existential boundaries are already-decoded domain values, so
@@ -24,7 +25,7 @@ export const make = (name, schema) => {
24
25
  // some test layers), and those keep the original deferred behaviour.
25
26
  const reducers = yield* Effect.serviceOption(Reducers);
26
27
  const runtime = yield* Effect.runtime();
27
- return (payload) => {
28
+ return taggedTrigger(name, (payload) => {
28
29
  const built = build(payload);
29
30
  const reduced = Option.match(reducers, {
30
31
  onNone: () => false,
@@ -35,7 +36,7 @@ export const make = (name, schema) => {
35
36
  }),
36
37
  });
37
38
  Runtime.runSync(runtime)(PubSub.publish(bus, { priority: 'High', event: built, reduced }));
38
- };
39
+ });
39
40
  });
40
41
  const event = definitionClass({
41
42
  manifest: { kind: 'Event', name, schema },
@@ -1 +1 @@
1
- {"version":3,"file":"event.js","sourceRoot":"","sources":["../../src/event/event.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event.js","sourceRoot":"","sources":["../../src/event/event.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,7 @@ export * as Wire from './wire/tree.js';
25
25
  export type { WireNode, WirePatch, WireProp, WireTree } from './wire/tree.js';
26
26
  export * as Triggers from './wire/triggers.js';
27
27
  export { type TriggerHandle, TriggerRegistry, type TriggerRegistryApi, UnknownTrigger, } from './wire/triggers.js';
28
+ export { triggerEventTag } from './ui/trigger.js';
28
29
  export { type AnyFeatureBinding, type AnyLoadedModule, type CapturedFeatureBinding, type FeatureBinding, type FeatureBindingCapture, FeatureBindingTypeId, type FeatureDefinition, FeatureGraphValidTypeId, type FeatureIdentityToken, FeatureInput, type FeatureManifest, featureModuleFromInput, type FeatureMountProps, type FeatureOpenServices, type FeatureRequirement, type FeatureSupportOpenServices, type FeatureToken, type FeatureTreeCarrier, type LoadedModule, type LoadedModuleCapture, mountFeature, type ProvideableFeature, type ProvidedBy, type RequireCarrier, } from './feature/feature.js';
29
30
  export { type CompositionChildSummary, CompositionChildSummaryTypeId, type DescendantOpenServices, type FeatureChildSummary, FeatureChildSummaryTypeId, type ModuleOpenServices, type OpenServicesFromFeatureSlotWitnesses, type SlotBindingSummary, SlotBindingSummaryTypeId, type ValidateFeatureGraphLayer, } from './graph/closure.js';
30
31
  export { type AnyScene, type AnySceneCapture, type SceneCapture, seedAnyScene } from './scene/scene.js';
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"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"}
package/dist/internal.js CHANGED
@@ -30,6 +30,9 @@ export * as Wire from './wire/tree.js';
30
30
  // back to live triggers, decoding payloads via the event schema. See REMOTE_UI.md §4.
31
31
  export * as Triggers from './wire/triggers.js';
32
32
  export { TriggerRegistry, UnknownTrigger, } from './wire/triggers.js';
33
+ // The domain Event a UI trigger publishes, for harnesses that must tell two
34
+ // same-named actions apart. None for triggers built outside `Event.trigger`.
35
+ export { triggerEventTag } from './ui/trigger.js';
33
36
  export { FeatureBindingTypeId, FeatureGraphValidTypeId, FeatureInput, featureModuleFromInput, mountFeature, } from './feature/feature.js';
34
37
  export { CompositionChildSummaryTypeId, FeatureChildSummaryTypeId, SlotBindingSummaryTypeId, } from './graph/closure.js';
35
38
  export { seedAnyScene } from './scene/scene.js';
@@ -1 +1 @@
1
- {"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,5 @@
1
+ import { Option } from 'effect';
1
2
  export type Trigger<P> = (payload: P) => void;
3
+ export declare const taggedTrigger: <P>(tag: string, trigger: Trigger<P>) => Trigger<P>;
4
+ export declare const triggerEventTag: (trigger: Trigger<never>) => Option.Option<string>;
2
5
  //# sourceMappingURL=trigger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"trigger.d.ts","sourceRoot":"","sources":["../../src/ui/trigger.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,CAAA"}
1
+ {"version":3,"file":"trigger.d.ts","sourceRoot":"","sources":["../../src/ui/trigger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,CAAA;AAQ7C,eAAO,MAAM,aAAa,GAAI,CAAC,EAAE,KAAK,MAAM,EAAE,SAAS,OAAO,CAAC,CAAC,CAAC,KAAG,OAAO,CAAC,CAAC,CAG5E,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,SAAS,OAAO,CAAC,KAAK,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAG7E,CAAA"}
@@ -1,2 +1,15 @@
1
- export {};
1
+ import { Option } from 'effect';
2
+ // A trigger is an opaque closure by the time it reaches a UI contract, so the domain
3
+ // Event it publishes is otherwise unrecoverable. Proofs need it: two compositions can
4
+ // expose an action of the same name, and only the Event says whether they are the same
5
+ // behaviour or a coincidence of spelling.
6
+ const EventTag = Symbol.for('reform/Trigger/event');
7
+ export const taggedTrigger = (tag, trigger) => {
8
+ Object.defineProperty(trigger, EventTag, { value: tag, enumerable: false });
9
+ return trigger;
10
+ };
11
+ export const triggerEventTag = (trigger) => {
12
+ const tag = Reflect.get(trigger, EventTag);
13
+ return typeof tag === 'string' ? Option.some(tag) : Option.none();
14
+ };
2
15
  //# sourceMappingURL=trigger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"trigger.js","sourceRoot":"","sources":["../../src/ui/trigger.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"trigger.js","sourceRoot":"","sources":["../../src/ui/trigger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAI/B,qFAAqF;AACrF,sFAAsF;AACtF,uFAAuF;AACvF,0CAA0C;AAC1C,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;AAEnD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAI,GAAW,EAAE,OAAmB,EAAc,EAAE;IAC/E,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3E,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAuB,EAAyB,EAAE;IAChF,MAAM,GAAG,GAAY,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACnD,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;AACnE,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@playfast/reform",
3
- "version": "1.4.0",
3
+ "version": "1.4.1",
4
4
  "description": "The renderer-neutral core of the reform framework — typed, headless state, events, reducers, derived values, async/remote data, and compositions built on Effect.",
5
5
  "keywords": [
6
6
  "effect",
@@ -4,7 +4,7 @@ import { resolveScheduler, withInlineNotifications } from '../internal/scheduler
4
4
  import { Bus, publish, type Tagged } from '../runtime/bus'
5
5
  import { applyReducers, Reducers } from '../runtime/loop'
6
6
  import type { Source } from '../state/token'
7
- import type { Trigger } from '../ui/trigger'
7
+ import { taggedTrigger, type Trigger } from '../ui/trigger'
8
8
 
9
9
  export type EventOf<N extends string, P> = Tagged & { readonly _tag: N } & P
10
10
 
@@ -67,7 +67,7 @@ export const make = <const N extends string, P, Encoded>(
67
67
  // some test layers), and those keep the original deferred behaviour.
68
68
  const reducers = yield* Effect.serviceOption(Reducers)
69
69
  const runtime = yield* Effect.runtime<never>()
70
- return (payload: P) => {
70
+ return taggedTrigger(name, (payload: P) => {
71
71
  const built = build(payload)
72
72
  const reduced = Option.match(reducers, {
73
73
  onNone: () => false,
@@ -86,7 +86,7 @@ export const make = <const N extends string, P, Encoded>(
86
86
  }),
87
87
  })
88
88
  Runtime.runSync(runtime)(PubSub.publish(bus, { priority: 'High', event: built, reduced }))
89
- }
89
+ })
90
90
  })
91
91
  const event: EventClass<N, P> = definitionClass<EventClass<N, P>>({
92
92
  manifest: { kind: 'Event' as const, name, schema },
package/src/internal.ts CHANGED
@@ -133,6 +133,9 @@ export {
133
133
  type TriggerRegistryApi,
134
134
  UnknownTrigger,
135
135
  } from './wire/triggers'
136
+ // The domain Event a UI trigger publishes, for harnesses that must tell two
137
+ // same-named actions apart. None for triggers built outside `Event.trigger`.
138
+ export { triggerEventTag } from './ui/trigger'
136
139
 
137
140
  export {
138
141
  type AnyFeatureBinding,
package/src/ui/trigger.ts CHANGED
@@ -1 +1,19 @@
1
+ import { Option } from 'effect'
2
+
1
3
  export type Trigger<P> = (payload: P) => void
4
+
5
+ // A trigger is an opaque closure by the time it reaches a UI contract, so the domain
6
+ // Event it publishes is otherwise unrecoverable. Proofs need it: two compositions can
7
+ // expose an action of the same name, and only the Event says whether they are the same
8
+ // behaviour or a coincidence of spelling.
9
+ const EventTag = Symbol.for('reform/Trigger/event')
10
+
11
+ export const taggedTrigger = <P>(tag: string, trigger: Trigger<P>): Trigger<P> => {
12
+ Object.defineProperty(trigger, EventTag, { value: tag, enumerable: false })
13
+ return trigger
14
+ }
15
+
16
+ export const triggerEventTag = (trigger: Trigger<never>): Option.Option<string> => {
17
+ const tag: unknown = Reflect.get(trigger, EventTag)
18
+ return typeof tag === 'string' ? Option.some(tag) : Option.none()
19
+ }