@validation-os/dashboard 0.8.0 → 0.9.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/index.d.ts +53 -5
- package/dist/index.js +848 -559
- package/dist/index.js.map +1 -1
- package/dist/styles.css +120 -0
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
|
-
import { Collection, AnyRecord, Result, Relation, BarLine } from '@validation-os/core';
|
|
3
|
+
import { Collection, AnyRecord, Result, Rung, MagnitudeBand, Relation, BarLine } from '@validation-os/core';
|
|
4
4
|
import { PortfolioProgress, StageExperimentInput, MoveKind, NextMoveInput, BeliefStage, JourneyEvent, NextMove, JourneyEventKind, ConfSign, StageKey, Progress, MoverKind, TrajectoryPoint } from '@validation-os/core/derivation';
|
|
5
5
|
export { StageKey } from '@validation-os/core/derivation';
|
|
6
6
|
|
|
@@ -243,7 +243,9 @@ interface GroupBucket {
|
|
|
243
243
|
* risk band by severity, everything else first-appearance.
|
|
244
244
|
*/
|
|
245
245
|
declare function groupRecords(records: AnyRecord[], axis: GroupByAxis): GroupBucket[];
|
|
246
|
-
/** Case-insensitive substring filter over Title + Description.
|
|
246
|
+
/** Case-insensitive substring filter over Title + Description + Source. Source
|
|
247
|
+
* (a reading's generator — person / dataset / cohort) is searchable so a
|
|
248
|
+
* teammate can pull every reading from one source by typing its name. */
|
|
247
249
|
declare function filterRecords(records: AnyRecord[], query: string): AnyRecord[];
|
|
248
250
|
/** A stable sort by one key; numbers compare numerically, everything else by
|
|
249
251
|
* locale string. Missing values sort last regardless of direction. */
|
|
@@ -1040,6 +1042,9 @@ interface RegisterTableProps {
|
|
|
1040
1042
|
onRowClick?: (id: string) => void;
|
|
1041
1043
|
/** The id of the currently-open record, highlighted in the list. */
|
|
1042
1044
|
selectedId?: string | null;
|
|
1045
|
+
/** Assumption id → title, so a reading row's belief chips read as titles
|
|
1046
|
+
* rather than ids (OPS-1305). Omitted → chips fall back to the bare ids. */
|
|
1047
|
+
assumptionTitles?: Map<string, string>;
|
|
1043
1048
|
}
|
|
1044
1049
|
/**
|
|
1045
1050
|
* A list table for one register — a row per record, the register's key fields
|
|
@@ -1049,7 +1054,7 @@ interface RegisterTableProps {
|
|
|
1049
1054
|
* the treatment stays testable at the columns seam and this component stays a
|
|
1050
1055
|
* dumb renderer. Presentational: the caller supplies the rows.
|
|
1051
1056
|
*/
|
|
1052
|
-
declare function RegisterTable({ register, records, onRowClick, selectedId, }: RegisterTableProps): react.JSX.Element;
|
|
1057
|
+
declare function RegisterTable({ register, records, onRowClick, selectedId, assumptionTitles, }: RegisterTableProps): react.JSX.Element;
|
|
1053
1058
|
|
|
1054
1059
|
/**
|
|
1055
1060
|
* The record-page view-model (OPS-1286) — the pure join behind the canonical
|
|
@@ -1119,6 +1124,27 @@ interface HumanText {
|
|
|
1119
1124
|
}
|
|
1120
1125
|
/** The human-input fields a register carries text for (empty ones dropped). */
|
|
1121
1126
|
declare function humanInputFields(register: Collection, record: AnyRecord): HumanText[];
|
|
1127
|
+
/** One belief a reading grades, prepared for the reading detail's verdict list
|
|
1128
|
+
* (OPS-1305). Modelled on the experiment bar-line view: the assumption resolved
|
|
1129
|
+
* to a title + navigable id, plus this belief's own Rung / Result / derived
|
|
1130
|
+
* Strength / magnitude band and the grading justification. */
|
|
1131
|
+
interface BeliefVerdict {
|
|
1132
|
+
assumptionId: string;
|
|
1133
|
+
/** The belief's title if it's in the loaded set, else its bare id. */
|
|
1134
|
+
title: string;
|
|
1135
|
+
/** True when the assumption resolved — drives whether the title links. */
|
|
1136
|
+
linked: boolean;
|
|
1137
|
+
rung: Rung | null;
|
|
1138
|
+
result: Result | null;
|
|
1139
|
+
/** Derived per-belief strength (signed −100…100). */
|
|
1140
|
+
strength: number | null;
|
|
1141
|
+
magnitudeBand: MagnitudeBand | null;
|
|
1142
|
+
justification: string;
|
|
1143
|
+
}
|
|
1144
|
+
/** The per-belief verdicts a reading carries, in stored order — the reading
|
|
1145
|
+
* detail's answer to "what did this artifact say about each belief?". Pure:
|
|
1146
|
+
* resolves each belief-score against the loaded assumptions for its title. */
|
|
1147
|
+
declare function readingBeliefVerdicts(reading: AnyRecord, assumptions?: AnyRecord[]): BeliefVerdict[];
|
|
1122
1148
|
/** A glance-readable score chip for a linked record (story 9). */
|
|
1123
1149
|
interface ScoreChip {
|
|
1124
1150
|
label: string;
|
|
@@ -1263,7 +1289,10 @@ declare function UnderstandingPanel({ assumption, basePath, }: {
|
|
|
1263
1289
|
* also moves the number, and the Confidence-over-time trajectory.
|
|
1264
1290
|
*
|
|
1265
1291
|
* The record → derivation-input mapping is `@validation-os/core`'s shared
|
|
1266
|
-
* `
|
|
1292
|
+
* `readingBeliefInputs`, which fans a reading row out into one input per belief;
|
|
1293
|
+
* we keep this belief's inputs, so a reading is read here exactly as it is
|
|
1294
|
+
* server-side. Archived experiments never surface here (OPS-1305) — the "Why?"
|
|
1295
|
+
* only ever shows a live plan or direct evidence.
|
|
1267
1296
|
*/
|
|
1268
1297
|
|
|
1269
1298
|
/** An experiment testing this assumption: how hard it moves Confidence, and
|
|
@@ -1537,6 +1566,14 @@ interface ColumnDef {
|
|
|
1537
1566
|
}
|
|
1538
1567
|
/** The columns to render for a register. */
|
|
1539
1568
|
declare function columnsFor(register: Collection): ColumnDef[];
|
|
1569
|
+
/** A one-line, length-capped preview of a reading's free-text `body` (its
|
|
1570
|
+
* quote), for the readings table. Collapses whitespace and ellipsises; a
|
|
1571
|
+
* missing/empty body reads as the empty string (formatted to an em dash). */
|
|
1572
|
+
declare function bodyPreview(value: unknown, max?: number): string;
|
|
1573
|
+
/** The belief chips for a reading row — the assumptions it grades, resolved to
|
|
1574
|
+
* titles when a lookup is given, else their bare ids. Disambiguates readings
|
|
1575
|
+
* that share a Title by showing which belief(s) each one actually scored. */
|
|
1576
|
+
declare function readingAssumptionChips(record: AnyRecord, titleById?: Map<string, string>): string[];
|
|
1540
1577
|
/** Read a column's raw value from a record (accessor, else `record[key]`). */
|
|
1541
1578
|
declare function cellValue(column: ColumnDef, record: AnyRecord): unknown;
|
|
1542
1579
|
/** Format any stored value for display; empty/missing reads as an em dash. */
|
|
@@ -1544,6 +1581,17 @@ declare function formatValue(value: unknown): string;
|
|
|
1544
1581
|
/** The record's headline for a row/drawer: Title, else Name, else its id. */
|
|
1545
1582
|
declare function primaryLabel(record: AnyRecord): string;
|
|
1546
1583
|
|
|
1584
|
+
/** Render Markdown `text` into the package's prose styling. Empty → nothing. */
|
|
1585
|
+
declare function Markdown({ text }: {
|
|
1586
|
+
text: string;
|
|
1587
|
+
}): react.JSX.Element | null;
|
|
1588
|
+
|
|
1589
|
+
declare function BeliefVerdicts({ reading, assumptions, onOpenRecord, }: {
|
|
1590
|
+
reading: AnyRecord;
|
|
1591
|
+
assumptions: AnyRecord[];
|
|
1592
|
+
onOpenRecord?: (id: string) => void;
|
|
1593
|
+
}): react.JSX.Element;
|
|
1594
|
+
|
|
1547
1595
|
/**
|
|
1548
1596
|
* The editable-field spec for the "new record" form, per register — kept as
|
|
1549
1597
|
* pure data + functions (like `columns.ts`) so the create form is unit-testable
|
|
@@ -1755,4 +1803,4 @@ declare const REGISTER_GROUPS: {
|
|
|
1755
1803
|
registers: Collection[];
|
|
1756
1804
|
}[];
|
|
1757
1805
|
|
|
1758
|
-
export { type BacklinkItem, BeliefJourney, type BeliefJourneyProps, CONFLICT_MESSAGE, type CellKind, type ColdStart, type ColumnDef, ConfidenceCell, ConnectClaudeCode, type ConnectClaudeCodeProps, type ConnectCommandInput, type Counts, type CycleReadingView, type CycleView, DEFAULT_TOKEN_ENV, DIRECT_CYCLE_KEY, type DashboardConfig, type DetailRelationItem, type DetailRow, type DetailRowKind, type Draft, EditBeliefForm, type EditBeliefFormProps, EditFields, type ExperimentView, FIRST_RUN_LINE, type FieldEditor, FieldInput, type FieldKind, type FormField, type GlossaryTerm, GlossaryText, type GlossaryTextProps, type GroupBucket, type GroupByAxis, type HumanText, type JourneyColdState, type JourneyEventView, type JourneyView, type LinkArgs, type LinkChoice, type LinkifyNode, type LinkifyOptions, type Meter, type MeterKind, type MovePresentation, type NeedsHumanByRegister, type NeedsHumanCounts, type NeighbourChip, type NestedGroup, type NextColdStart, type NextMoveRecords, NextMoveSurface, type NextMoveSurfaceProps, type OtherMover, type Pill, type PipelineColdStart, type PipelineRow, PipelineSurface, type PipelineView, REGISTER_GROUPS, REGISTER_ICON, REGISTER_LABEL, REGISTER_ORDER, REGISTER_SINGULAR, REGISTER_SUBTITLE, RISK_CRIT, RISK_WARN, RecordDrawer, type RecordDrawerProps, RecordForm, type RecordFormProps, RecordPage, type RecordPageModel, type RecordPageProps, type RecordTabId, RegisterBrowser, type RegisterBrowserProps, type RegisterContext, RegisterCounts, type RegisterCountsProps, RegisterTable, type RegisterTableProps, type RelatedSet, RelationEditor, type RelationEditorProps, type RelationPanel, type ResolvedBarLine, type ResolvedRow, type RiskBand, RiskBar, type Route, type SaveResult, type SavedView, type ScoreChip, ScoreImpactForm, type ScoreImpactFormProps, type ShapedRegister, SidebarNav, type SidebarNavProps, type SortSpec, Sparkline, type StageMeterInput, type StageMeterView, StatTile, StatusPill, type StepInForm, type StoryStepIn, SurfacePlaceholder, type SurfacePlaceholderProps, type TabDef, type TermPreview, type Tone, type Understanding, UnderstandingPanel, type UseCountsResult, type UseCreateResult, type UseLinkResult, type UseListResult, type UseNeedsHumanResult, type UseRecordResult, type UseSavedViewsResult, type UseUpdateResult, ValidationOSDashboard, type ValidationOSDashboardProps, type ViewDescriptor, WriteDecisionForm, type WriteDecisionFormProps, backlinkPanels, buildCycles, buildJourney, buildPatch, buildPipeline, buildRecordPage, buildUnderstanding, cellValue, coldStartFor, columnsFor, composeConnectCommand, confidenceTone, configureRiskBands, defaultTabId, detailRows, dontConfuseWith, draftFrom, editableFields, emptyDraft, eventStepIn, eventTone, filterRecords, formFieldsFor, formatCount, formatRoute, formatSigned, formatValue, groupByAxesFor, groupRecords, hasEdits, headerPills, humanInputFields, interpretSave, journeyColdState, leadingMeters, linkChoicesFrom, linkify, missingRequired, movePresentation, needsHumanCounts, nestReadingsByPlan, ownerNames, parseRoute, primaryLabel, resolveBarLines, riskBand, riskFraction, riskLevel, scoreChip, shapeRegister, sortRecords, sparklinePath, stageMeters, statusTone, tabsFor, toCreatePayload, toGlossaryTerms, toNextMoveInput, toStageExperimentInput, useCounts, useCreate, useLink, useList, useNeedsHuman, useRecord, useSavedViews, useUpdate, weekOverWeekDelta };
|
|
1806
|
+
export { type BacklinkItem, BeliefJourney, type BeliefJourneyProps, type BeliefVerdict, BeliefVerdicts, CONFLICT_MESSAGE, type CellKind, type ColdStart, type ColumnDef, ConfidenceCell, ConnectClaudeCode, type ConnectClaudeCodeProps, type ConnectCommandInput, type Counts, type CycleReadingView, type CycleView, DEFAULT_TOKEN_ENV, DIRECT_CYCLE_KEY, type DashboardConfig, type DetailRelationItem, type DetailRow, type DetailRowKind, type Draft, EditBeliefForm, type EditBeliefFormProps, EditFields, type ExperimentView, FIRST_RUN_LINE, type FieldEditor, FieldInput, type FieldKind, type FormField, type GlossaryTerm, GlossaryText, type GlossaryTextProps, type GroupBucket, type GroupByAxis, type HumanText, type JourneyColdState, type JourneyEventView, type JourneyView, type LinkArgs, type LinkChoice, type LinkifyNode, type LinkifyOptions, Markdown, type Meter, type MeterKind, type MovePresentation, type NeedsHumanByRegister, type NeedsHumanCounts, type NeighbourChip, type NestedGroup, type NextColdStart, type NextMoveRecords, NextMoveSurface, type NextMoveSurfaceProps, type OtherMover, type Pill, type PipelineColdStart, type PipelineRow, PipelineSurface, type PipelineView, REGISTER_GROUPS, REGISTER_ICON, REGISTER_LABEL, REGISTER_ORDER, REGISTER_SINGULAR, REGISTER_SUBTITLE, RISK_CRIT, RISK_WARN, RecordDrawer, type RecordDrawerProps, RecordForm, type RecordFormProps, RecordPage, type RecordPageModel, type RecordPageProps, type RecordTabId, RegisterBrowser, type RegisterBrowserProps, type RegisterContext, RegisterCounts, type RegisterCountsProps, RegisterTable, type RegisterTableProps, type RelatedSet, RelationEditor, type RelationEditorProps, type RelationPanel, type ResolvedBarLine, type ResolvedRow, type RiskBand, RiskBar, type Route, type SaveResult, type SavedView, type ScoreChip, ScoreImpactForm, type ScoreImpactFormProps, type ShapedRegister, SidebarNav, type SidebarNavProps, type SortSpec, Sparkline, type StageMeterInput, type StageMeterView, StatTile, StatusPill, type StepInForm, type StoryStepIn, SurfacePlaceholder, type SurfacePlaceholderProps, type TabDef, type TermPreview, type Tone, type Understanding, UnderstandingPanel, type UseCountsResult, type UseCreateResult, type UseLinkResult, type UseListResult, type UseNeedsHumanResult, type UseRecordResult, type UseSavedViewsResult, type UseUpdateResult, ValidationOSDashboard, type ValidationOSDashboardProps, type ViewDescriptor, WriteDecisionForm, type WriteDecisionFormProps, backlinkPanels, bodyPreview, buildCycles, buildJourney, buildPatch, buildPipeline, buildRecordPage, buildUnderstanding, cellValue, coldStartFor, columnsFor, composeConnectCommand, confidenceTone, configureRiskBands, defaultTabId, detailRows, dontConfuseWith, draftFrom, editableFields, emptyDraft, eventStepIn, eventTone, filterRecords, formFieldsFor, formatCount, formatRoute, formatSigned, formatValue, groupByAxesFor, groupRecords, hasEdits, headerPills, humanInputFields, interpretSave, journeyColdState, leadingMeters, linkChoicesFrom, linkify, missingRequired, movePresentation, needsHumanCounts, nestReadingsByPlan, ownerNames, parseRoute, primaryLabel, readingAssumptionChips, readingBeliefVerdicts, resolveBarLines, riskBand, riskFraction, riskLevel, scoreChip, shapeRegister, sortRecords, sparklinePath, stageMeters, statusTone, tabsFor, toCreatePayload, toGlossaryTerms, toNextMoveInput, toStageExperimentInput, useCounts, useCreate, useLink, useList, useNeedsHuman, useRecord, useSavedViews, useUpdate, weekOverWeekDelta };
|