@elaraai/e3-ui 1.0.10 → 1.0.12

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.
@@ -0,0 +1,177 @@
1
+ import { jsx as _jsx } from "@elaraai/e3-ui/jsx-runtime";
2
+ /**
3
+ * Copyright (c) 2025 Elara AI Pty Ltd
4
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
5
+ */
6
+ /** @jsxImportSource @elaraai/e3-ui */
7
+ /**
8
+ * Experiment component example — an interactive causal-experiment surface over a
9
+ * generic manufacturing process. The worked question is *"did `slow_cure` change
10
+ * `bond_strength`?"* — a confounding-by-indication story: the optional slow-cure
11
+ * step is applied to the weaker incoming material, so the raw average makes it
12
+ * look worse (−3.1) while the like-for-like estimate flips it positive (+5.2).
13
+ *
14
+ * Pattern (the real, interactive shape — not a mock):
15
+ * 1. `e3.input('batches', Array(BatchRow), [...])` — the **input dataset**. The
16
+ * renderer introspects this row struct to drive the treatment / outcome /
17
+ * confounder pickers, exactly like `Table`.
18
+ * 2. `e3.input('experiment_spec', Experiment.Types.Spec, {...})` — the staged
19
+ * experiment the pickers edit.
20
+ * 3. Three `e3.function`s — `estimate` / `refute` / `dose` — that return the
21
+ * `Experiment.Types.*` numeric contract. In production their bodies call
22
+ * east-py-datascience's (generic) Causal functions; here they are pure-East
23
+ * fixtures returning the constants the real estimator would (mirroring the
24
+ * `causalEffectConfounding` example), so the surface runs offline with no
25
+ * datascience dependency. The numbers the snapshot harness seeds for these
26
+ * functions live in `e3-ui-components/snapshot/main.tsx`, imported from here
27
+ * so the two copies cannot drift.
28
+ * 4. `<Experiment data spec estimate refute dose journal />`. The renderer
29
+ * auto-runs on mount, derives every word / colour / bar from the returned
30
+ * numbers, and re-runs when the user edits the spec.
31
+ */
32
+ import { East, ArrayType, StructType, BooleanType, FloatType, IntegerType, StringType, DateTimeType, some, none, variant, example, } from '@elaraai/east';
33
+ import { Reactive, UIComponentType } from '@elaraai/east-ui';
34
+ import { Data, Experiment, Func } from '@elaraai/e3-ui';
35
+ import e3 from '@elaraai/e3';
36
+ // ============================================================================
37
+ // Input dataset — the bonded-panel batches. The surface frames over these
38
+ // columns; the estimators ignore the rows (they return fixtures).
39
+ // ============================================================================
40
+ /** One production batch — the row struct the pickers are generic over. */
41
+ export const BatchRow = StructType({
42
+ slow_cure: BooleanType, // treatment (yes / no)
43
+ bond_strength: FloatType, // outcome (MPa)
44
+ incoming_grade: FloatType, // confounder — the cure is applied to weaker stock
45
+ mix_viscosity: FloatType, // confounder
46
+ supplier: IntegerType, // confounder (categorical code)
47
+ line: StringType, // population filter dimension
48
+ product: StringType, // population filter dimension
49
+ run_date: DateTimeType, // suggested-but-unused column
50
+ });
51
+ export const batchesInput = e3.input('batches', ArrayType(BatchRow), [
52
+ { slow_cure: false, bond_strength: 9.0, incoming_grade: 9.0, mix_viscosity: 24.1, supplier: 0n, line: 'A', product: 'panel', run_date: new Date('2026-05-02') },
53
+ { slow_cure: false, bond_strength: 8.6, incoming_grade: 8.5, mix_viscosity: 24.0, supplier: 0n, line: 'B', product: 'panel', run_date: new Date('2026-05-03') },
54
+ { slow_cure: false, bond_strength: 8.2, incoming_grade: 8.0, mix_viscosity: 24.2, supplier: 1n, line: 'A', product: 'panel', run_date: new Date('2026-05-04') },
55
+ { slow_cure: false, bond_strength: 7.7, incoming_grade: 7.5, mix_viscosity: 23.9, supplier: 0n, line: 'B', product: 'panel', run_date: new Date('2026-05-05') },
56
+ { slow_cure: false, bond_strength: 7.3, incoming_grade: 7.0, mix_viscosity: 24.3, supplier: 1n, line: 'A', product: 'panel', run_date: new Date('2026-05-06') },
57
+ { slow_cure: false, bond_strength: 6.8, incoming_grade: 6.5, mix_viscosity: 24.0, supplier: 0n, line: 'B', product: 'panel', run_date: new Date('2026-05-07') },
58
+ { slow_cure: true, bond_strength: 7.1, incoming_grade: 5.0, mix_viscosity: 24.7, supplier: 1n, line: 'A', product: 'panel', run_date: new Date('2026-05-08') },
59
+ { slow_cure: true, bond_strength: 6.6, incoming_grade: 4.5, mix_viscosity: 24.6, supplier: 1n, line: 'B', product: 'panel', run_date: new Date('2026-05-09') },
60
+ { slow_cure: true, bond_strength: 6.2, incoming_grade: 4.0, mix_viscosity: 24.8, supplier: 1n, line: 'A', product: 'panel', run_date: new Date('2026-05-10') },
61
+ { slow_cure: true, bond_strength: 5.7, incoming_grade: 3.5, mix_viscosity: 24.5, supplier: 0n, line: 'B', product: 'panel', run_date: new Date('2026-05-11') },
62
+ { slow_cure: true, bond_strength: 5.3, incoming_grade: 3.0, mix_viscosity: 24.9, supplier: 1n, line: 'A', product: 'panel', run_date: new Date('2026-05-12') },
63
+ { slow_cure: true, bond_strength: 4.8, incoming_grade: 2.5, mix_viscosity: 24.7, supplier: 1n, line: 'B', product: 'panel', run_date: new Date('2026-05-13') },
64
+ ]);
65
+ // ============================================================================
66
+ // Staged spec — the experiment the user framed (the pickers edit this).
67
+ // ============================================================================
68
+ export const experimentSpecInput = e3.input('experiment_spec', Experiment.Types.Spec, {
69
+ treatment: 'slow_cure',
70
+ outcome: 'bond_strength',
71
+ confounders: ['incoming_grade', 'mix_viscosity', 'supplier'],
72
+ categorical: ['supplier'],
73
+ population: some([
74
+ variant('string', { fieldId: 'line', op: variant('in', new Set(['A', 'B'])) }),
75
+ variant('string', { fieldId: 'product', op: variant('eq', 'panel') }),
76
+ ]),
77
+ method: some(variant('propensity_score_weighting', { weighting_scheme: some(variant('ips_stabilized_weight', null)) })),
78
+ targetUnits: some(variant('ate', null)),
79
+ trim: some(variant('overlap', null)),
80
+ });
81
+ // ============================================================================
82
+ // Estimator functions — pure-East fixtures returning the numeric contract.
83
+ // Exported so the snapshot harness seeds the *same* numbers (no drift).
84
+ // ============================================================================
85
+ export const estimateFn = e3.function('estimate', East.function([ArrayType(BatchRow), Experiment.Types.Spec], Experiment.Types.Result, (_$, _data, _spec) => ({
86
+ effect: 5.2,
87
+ ci: some({ lower: 3.1, upper: 7.4 }),
88
+ naive: -3.1,
89
+ naiveCi: some({ lower: -6.0, upper: -0.2 }),
90
+ nTotal: 480n, nTreated: 240n, nControl: 240n, nDropped: 31n,
91
+ balance: [
92
+ { column: 'incoming_grade', treatedMean: 6.1, controlMean: 8.0, stdDiff: 0.90 },
93
+ { column: 'supplier', treatedMean: 0.61, controlMean: 0.33, stdDiff: 0.55 },
94
+ { column: 'mix_viscosity', treatedMean: 24.6, controlMean: 24.1, stdDiff: 0.24 },
95
+ ],
96
+ })));
97
+ export const refuteFn = e3.function('refute', East.function([ArrayType(BatchRow), Experiment.Types.Spec], Experiment.Types.Refute, (_$, _data, _spec) => ({
98
+ checks: [
99
+ { kind: variant('placebo', null), estimatedEffect: 5.2, newEffects: new Float64Array([0.0]), strengths: none, pValue: some(0.92) },
100
+ { kind: variant('data_subset', null), estimatedEffect: 5.2, newEffects: new Float64Array([4.6, 5.0, 5.4]), strengths: none, pValue: none },
101
+ { kind: variant('random_common_cause', null), estimatedEffect: 5.2, newEffects: new Float64Array([5.1]), strengths: none, pValue: none },
102
+ { kind: variant('unobserved', null), estimatedEffect: 5.2, newEffects: new Float64Array([5.2, 4.4, 3.4, 2.2, 0.8, -0.8]), strengths: some(new Float64Array([0.0, 0.2, 0.4, 0.6, 0.8, 1.0])), pValue: none },
103
+ ],
104
+ })));
105
+ export const doseFn = e3.function('dose', East.function([ArrayType(BatchRow), Experiment.Types.Spec, StringType], Experiment.Types.Dose, (_$, _data, _spec, _feature) => ({
106
+ feature: 'days of slow cure',
107
+ grid: new Float64Array([0.0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0]),
108
+ effect: new Float64Array([0.0, 1.5, 2.6, 3.4, 4.0, 4.4, 4.6, 4.72, 4.8]),
109
+ lower: some(new Float64Array([-0.1, 1.0, 2.0, 2.7, 3.3, 3.7, 3.9, 4.0, 4.1])),
110
+ upper: some(new Float64Array([0.3, 2.0, 3.2, 4.1, 4.7, 5.1, 5.3, 5.45, 5.5])),
111
+ size: new BigInt64Array([40n, 52n, 61n, 66n, 70n, 58n, 44n, 30n, 18n]),
112
+ segments: none,
113
+ })));
114
+ // ============================================================================
115
+ // Journal — committed experiments (newest first). The verdict words / tone are
116
+ // derived from each row's effect + CI, not stored.
117
+ // ============================================================================
118
+ export const experimentJournalInput = e3.input('experiment_journal', Experiment.Types.Journal, [
119
+ {
120
+ spec: { treatment: 'slow_cure', outcome: 'bond_strength', confounders: ['incoming_grade', 'mix_viscosity', 'supplier'], categorical: [], population: none, method: none, targetUnits: none, trim: none },
121
+ effect: 5.2, ci: some({ lower: 3.1, upper: 7.4 }), committedAt: new Date('2026-06-13T08:00:00Z'), committedBy: 'M. Kerr',
122
+ },
123
+ {
124
+ spec: { treatment: 'extra_anneal', outcome: 'hardness', confounders: ['line', 'mix_viscosity'], categorical: [], population: none, method: none, targetUnits: none, trim: none },
125
+ effect: 0.4, ci: some({ lower: -0.3, upper: 1.1 }), committedAt: new Date('2026-06-09T08:00:00Z'), committedBy: 'M. Kerr',
126
+ },
127
+ {
128
+ spec: { treatment: 'new_nozzle', outcome: 'throughput', confounders: ['line', 'batch_size'], categorical: [], population: none, method: none, targetUnits: none, trim: none },
129
+ effect: 38.0, ci: some({ lower: 20.0, upper: 56.0 }), committedAt: new Date('2026-06-02T08:00:00Z'), committedBy: 'T. Ode',
130
+ },
131
+ ]);
132
+ // ============================================================================
133
+ // Scene — the full surface bound to the dataset, spec, estimators and journal.
134
+ // ============================================================================
135
+ export const experimentSurface = example({
136
+ keywords: ['Experiment', 'causal', 'effect', 'confounding', 'forest', 'dose', 'Data', 'Func', 'bind', 'generic'],
137
+ description: 'An interactive causal-experiment surface: "did slow_cure change bond_strength?" — confounding by indication, with the raw-vs-adjusted sign flip. The "Answer" tab. Generic over the bound dataset; results come from bound estimator functions and every word is derived from the numbers.',
138
+ fn: East.function([], UIComponentType, (_$) => (_jsx(Reactive, { children: $ => {
139
+ const data = $.let(Data.bind(batchesInput));
140
+ const spec = $.let(Data.bind(experimentSpecInput, { mode: 'staged' }));
141
+ const journal = $.let(Data.bind(experimentJournalInput));
142
+ const estimate = $.let(Func.bind(estimateFn));
143
+ const refute = $.let(Func.bind(refuteFn));
144
+ const dose = $.let(Func.bind(doseFn));
145
+ return (_jsx(Experiment, { data: data, spec: spec, estimate: estimate, refute: refute, dose: dose, journal: journal, columns: { bond_strength: { unit: 'MPa' } } }));
146
+ } }))),
147
+ inputs: [],
148
+ });
149
+ export const experimentTrust = example({
150
+ keywords: ['Experiment', 'causal', 'refute', 'trust', 'sensitivity', 'robustness'],
151
+ description: 'The Experiment "Can we trust it?" tab — the refutation checklist (placebo / subset / decoy / hidden-cause) and the unobserved-confounder sensitivity curve.',
152
+ fn: East.function([], UIComponentType, (_$) => (_jsx(Reactive, { children: $ => {
153
+ const data = $.let(Data.bind(batchesInput));
154
+ const spec = $.let(Data.bind(experimentSpecInput, { mode: 'staged' }));
155
+ const journal = $.let(Data.bind(experimentJournalInput));
156
+ const estimate = $.let(Func.bind(estimateFn));
157
+ const refute = $.let(Func.bind(refuteFn));
158
+ const dose = $.let(Func.bind(doseFn));
159
+ return (_jsx(Experiment, { data: data, spec: spec, estimate: estimate, refute: refute, dose: dose, journal: journal, columns: { bond_strength: { unit: 'MPa' } }, defaultTab: "trust" }));
160
+ } }))),
161
+ inputs: [],
162
+ });
163
+ export const experimentDose = example({
164
+ keywords: ['Experiment', 'causal', 'dose', 'ale', 'response', 'marginal'],
165
+ description: 'The Experiment "How much?" tab — the ALE dose-response curve (with recommended point) and the marginal-gain-per-step bars.',
166
+ fn: East.function([], UIComponentType, (_$) => (_jsx(Reactive, { children: $ => {
167
+ const data = $.let(Data.bind(batchesInput));
168
+ const spec = $.let(Data.bind(experimentSpecInput, { mode: 'staged' }));
169
+ const journal = $.let(Data.bind(experimentJournalInput));
170
+ const estimate = $.let(Func.bind(estimateFn));
171
+ const refute = $.let(Func.bind(refuteFn));
172
+ const dose = $.let(Func.bind(doseFn));
173
+ return (_jsx(Experiment, { data: data, spec: spec, estimate: estimate, refute: refute, dose: dose, journal: journal, columns: { bond_strength: { unit: 'MPa' } }, defaultTab: "dose" }));
174
+ } }))),
175
+ inputs: [],
176
+ });
177
+ //# sourceMappingURL=experiment.examples.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"experiment.examples.js","sourceRoot":"","sources":["../../../test/experiment/experiment.examples.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elaraai/e3-ui",
3
- "version": "1.0.10",
3
+ "version": "1.0.12",
4
4
  "description": "e3 + UI bridge — Data bindings, ui() task, manifest",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",
@@ -56,12 +56,12 @@
56
56
  "node": ">=22.0.0"
57
57
  },
58
58
  "dependencies": {
59
- "@elaraai/e3-types": "1.0.10"
59
+ "@elaraai/e3-types": "1.0.12"
60
60
  },
61
61
  "peerDependencies": {
62
- "@elaraai/east": "1.0.10",
63
- "@elaraai/e3": "1.0.10",
64
- "@elaraai/east-ui": "1.0.10"
62
+ "@elaraai/e3": "1.0.12",
63
+ "@elaraai/east": "1.0.12",
64
+ "@elaraai/east-ui": "1.0.12"
65
65
  },
66
66
  "devDependencies": {
67
67
  "@types/node": "^22",
@@ -69,8 +69,8 @@
69
69
  "@typescript-eslint/parser": "^8",
70
70
  "eslint": "^9",
71
71
  "typescript": "~5.9.2",
72
- "@elaraai/e3": "1.0.10",
73
- "@elaraai/east-node-std": "1.0.10"
72
+ "@elaraai/e3": "1.0.12",
73
+ "@elaraai/east-node-std": "1.0.12"
74
74
  },
75
75
  "scripts": {
76
76
  "build": "tsc",
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=buttons.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buttons.d.ts","sourceRoot":"","sources":["../../src/buttons.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=buttons.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buttons.js","sourceRoot":"","sources":["../../src/buttons.ts"],"names":[],"mappings":""}