Semantics Details Page
v0.6.13Semantics pipeline details page: a review queue of pipelines in single-source and multi-source layouts, with shared stages, a completed tab, version history, and an add-source dialog.
Preview
Install & usage
npx shadcn@latest add @signalos/semantics-details-01Pulls the page source plus its widget dependencies (@signalos/tokens, @signalos/utils, @signalos/button, @signalos/page-header, @signalos/textarea, @signalos/badge, @signalos/checkbox, @signalos/command, @signalos/form-dialog, @signalos/popover, @signalos/progress, @signalos/select, @signalos/skeleton, @signalos/tooltip, @signalos/signal-rules-01, @signalos/cross-source-01, @signalos/glossary-01, @signalos/questionnaire-01, @signalos/relationships-01, @signalos/metrics-01) into your app - you own the copy. Requires access.
usage
// after: npx shadcn@latest add @signalos/semantics-details-01
// mount the pulled page in a route, e.g. src/app/semantics-01/page.tsx
import { ReviewQueueView } from "@/components/blocks/semantics-details-01/SemanticsDetails01"
export default function Page() {
return <ReviewQueueView />
}Props
AddSourceDialogProps
| Prop | Type | Default | Description |
|---|---|---|---|
| open* | boolean | - | |
| onOpenChange* | (open: boolean) => void | - | |
| availableConnections* | TConnection[] | - | Connections that can be selected and added. |
| alreadyAddedConnections | TConnection[] | undefined | - | Connections already present in the pipeline (shown as read-only). |
| isLoadingConnections | boolean | undefined | - | Show a spinner in place of the connection list. |
| isSubmitting | boolean | undefined | - | Disable the submit button and show a spinner on it. |
| errorMessage | string | null | undefined | - | Error message rendered inside the dialog. |
| selectedIds | string[] | undefined | - | Currently selected connection ids — controlled by the parent. |
| onSelectedIdsChange | ((ids: string[]) => void) | undefined | - | Called when the selected ids change. |
| onSubmit* | (selectedIds: string[]) => void | - | Called with the array of selected connection ids when the user confirms. |
| data-testid | string | undefined | - | Test identifier rendered as `data-testid` on the dialog content element. |
ReviewQueueViewProps
| Prop | Type | Default | Description |
|---|---|---|---|
| viewTab* | QueueViewTab | - | |
| onTabChange* | (tab: QueueViewTab) => void | - | |
| onNavigate* | (path: string) => void | - | Called when any card action button navigates to a stage review page |
| inQueuePerSource* | QueueItem[] | - | |
| inQueueShared* | QueueItem[] | - | |
| completedPerSource* | QueueItem[] | - | |
| completedShared* | QueueItem[] | - | |
| isMultiSource* | boolean | - | |
| isLoading | boolean | undefined | - | |
| isEmpty | boolean | undefined | - | |
| semanticVersion | number | undefined | - | Current semantic version number shown in the version toggle button. |
| versionHistory | VersionHistoryPanelProps | undefined | - | When provided, renders the version history panel inline and passes these props to `VersionHistoryPanel`. The parent owns all version state. |
| addSourceDialog | AddSourceDialogProps<TConnection> | undefined | - | When provided, renders the AddSourceDialog and passes these props to it. The parent owns open state, connection lists, loading, and submission. |
| className | string | undefined | - | |
| data-testid | string | undefined | - | Test identifier rendered as `data-testid` on the root element. |
VersionHistoryPanelProps
| Prop | Type | Default | Description |
|---|---|---|---|
| versions* | PipelineVersion[] | - | |
| currentVersion* | number | - | |
| isOpen | boolean | undefined | - | |
| isLoading | boolean | undefined | - | |
| isRestoring | boolean | undefined | - | |
| onRestore* | (version: number) => void | - | |
| onOpen* | () => void | - | |
| onClose* | () => void | - |
Supporting types
export type SemanticsDetails01View = "review_queue" | "questionnaire"
Changelog
0.6.13
- Replace the copied placeholder description with one that actually describes this block; the registry description is what the agent skill shows as "pick it when".
0.6.12
- Replace raw scale token classes with semantic tokens (text-text-error, bg-bg-success, border-border-warning, etc.) to respect client theme overrides.
0.6.11
- Fix cross-item imports to use canonical @/components paths; add missing signalos.category to manifests.
0.6.10
Pipeline.types.ts: rename stagemetrics_baselines→functionsinSemanticsStageNameunion.Pipeline.types.ts: expandSemanticsPipelineStatustoKnownPipelineStatus | (string & {})union with additional known states (created,awaiting_connectors,in_progress).Pipeline.types.ts: addKnownPipelineTypeandSemanticsPipelineTypeunion types; removeMetricCatalog/MetricsFdeInputimports frommetrics-01.SemanticsDetails01.tsx: updateSTAGE_ROUTE_SEGMENTSandisPipelineTransitioningto usefunctionsinstead ofmetrics_baselines; addas SemanticsStageNamecast wherecurrent_stageis used.CompletedStageCard.tsx: renamemetrics_baselines→functionsinSHARED_STEPSandSTAGE_ICONS; update label to "Functions & Workflow".SemanticsDetails01.types.ts: remove stale commented-out import lines.
0.6.9
- Update ReviewQueueView: refine section layout, tab button styles, and empty/loading state presentation in SemanticsDetails01.
0.6.8
- Replace raw Dialog/DialogFooter with FormDialog in AddSourceDialog; custom footer carries cancel/submit buttons with original data-testids.
- Remove unused Plus icon import (was only used in DialogTitle decoration).
- Swap @signalos/dialog + @signalos/input + @signalos/label → @signalos/form-dialog (no text inputs exist in this block).
0.6.3
- Fix file casing: rename Metrics.types.ts and Relationships.types.ts to match PascalCase import paths.
0.6.2
- Lift AddSourceDialog selectedIds to controlled props (selectedIds, onSelectedIdsChange). Parent now owns selection state.
semantics-details-01
0.5.0
- Breaking:
onToggleVersionsandonAddSourceprops removed fromReviewQueueViewProps. Replace them with the newversionHistoryandaddSourceDialogprop groups — the parent now owns all state and data for both panels. AddSourceDialogrewritten as a pure props-in/events-out component. It no longer imports from@/storeor@/types; all connection lists, loading flags, error state, and the submit callback are passed as props. The component is now generic overTConnection extends { id, name, status }so callers can supply any connection shape.VersionHistoryPanelnow importsVersionHistoryPanelPropsfrom the shared types file instead of declaring a local interface.ReviewQueueViewPropsis generic overTConnection(defaults to the built-inPlatformConnectionshape), allowing typedaddSourceDialogprops without casting.- Register
AddSourceDialog.tsxandVersionHistoryPanel.tsxinregistry-item.jsonso consumers receive both files on install.
0.4.0
- Register all 54 component files in
registry-item.jsonso consumers receive the full component tree on install.
0.3.0
- Remove legacy
components/semantics/folder; all components now live in per-stage directories (glossary/,relationships/,cross-source/,metrics/,signal-rules/,equilibrium/,content-profile/). - Register all migrated component files in
registry-item.jsonso consumers receive the full component tree.
0.2.0
- Lift navigation out of card sub-components:
ReviewQueueCard,SharedStageCard, andCompletedStageCardno longer calluseRouter— they now accept anonNavigate: (path: string) => voidprop and call it instead. - Add
onNavigatetoReviewQueueViewProps;ReviewQueueViewthreads it throughQueueSectionto each card. - Replace
@/typesimports in card components andStepProgresswith relative imports from../../pipeline.types(removes the forbidden app-level alias from shipped files). - Remove
StageActionDialogimport fromSharedStageCard(pointed to@/components/features/…, a forbidden app-side path).
0.1.0
- Initial block: review queue view with per-source and shared stage sections, tab navigation, and questionnaire view.