Glossary Page

v0.2.8

Glossary review page: a split panel listing a pipeline's glossary terms beside a per-term editor, with accept/reject decisions, inline edits, deletion, and an add-term dialog.

View as Markdown

Preview

Open full page ↗

Install & usage

npx shadcn@latest add @signalos/glossary-01

Pulls 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/input, @signalos/label, @signalos/popover, @signalos/progress, @signalos/select, @signalos/skeleton, @signalos/tooltip, @signalos/split-panel, @signalos/dialog) into your app - you own the copy. Requires access.

usage
// after: npx shadcn@latest add @signalos/glossary-01
// mount the pulled page in a route, e.g. src/app/semantics-details/page.tsx
import GlossaryReview from "@/components/blocks/glossary-01/Glossary"

export default function Page() {
  return <GlossaryReview />
}

Props

GlossaryTerm

PropTypeDefaultDescription
term*string-
definition*string-
synonymsstring[] | undefined-
mapped_entitystring | undefined-
sourcestring | undefined-
owner_teamstring | undefined-
domain_contextstring | undefined-
review_originstring | undefined-

GlossaryReviewItem

PropTypeDefaultDescription
index*number-
status*"accepted" | "flagged" | "deleted"-
feedback*string-
edits*Partial<GlossaryTerm>-

TermDecision

PropTypeDefaultDescription
status*"accepted" | "flagged"-
feedback*string-
edits*Partial<GlossaryTerm>-

GlossaryAddValues

PropTypeDefaultDescription
term*string-
definition*string-
synonyms*string[]-
mapped_entitystring | undefined-
owner_team*string-

GlossaryItemEdits

PropTypeDefaultDescription
term*string-
definition*string-
synonyms*string[]-
mapped_entitystring | undefined-
owner_teamstring | undefined-

SubmitGlossaryReviewPayload

PropTypeDefaultDescription
action*"confirm" | "retry" | "add_item"-
itemsGlossaryReviewItem[] | undefined-
connector_idstring | undefined-
item_editsGlossaryAddValues | undefined-

AddGlossaryPayload

PropTypeDefaultDescription
action*"add_item"-
connector_id*string-
feedbackstring | undefined-
item_edits*GlossaryItemEdits-

AddGlossaryResponse

PropTypeDefaultDescription
statusstring | undefined-
indexnumber | undefined-
itemGlossaryTerm | undefined-
soft_warningstring | undefined-

GlossaryFdeInput

PropTypeDefaultDescription
items*GlossaryReviewItem[]-

TermEditState

PropTypeDefaultDescription
definition*string-
synonyms*string-
selectedNamespace*string-
selectedTable*string-

CatalogData

PropTypeDefaultDescription
namespaces*string[]-
tablesByNamespace*Record<string, string[]>-
allTables*string[]-
hasNamespaces*boolean-

GlossaryAddFormState

PropTypeDefaultDescription
term*string-
definition*string-
synonyms*string-
selectedNamespace*string-
selectedTable*string-
owner_team*string-

Supporting types

export type CreateGlossaryTermPayload = GlossaryTerm
export type GlossaryAddFormErrors = Partial<
  Record<keyof GlossaryAddFormState, string>
>

More Semantics Stages variants

Changelog

0.2.8

  • 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.2.7

  • Replace raw scale token classes with semantic tokens (text-text-error, bg-bg-success, border-border-warning, etc.) to respect client theme overrides.

0.2.6

  • Replace FormDialog + TextField widgets in GlossaryAddDialog with raw shadcn Dialog, Input, and Label primitives; removes @signalos/form-dialog and @signalos/text-field from registry dependencies.
  • Add data-testid="glossary-desktop-panel" wrapper div around SplitPanel in Glossary.tsx.
  • Add data-testid="glossary-term-list" to the root div in GlossaryTermList.
  • Add Retry button alongside Dismiss in GlossaryHeader error banner; wired to onSubmit.

0.2.5

  • Replace Label + Input with TextField widget in GlossaryAddDialog for Term, Synonyms, and Owner team fields; validation errors now flow through TextField's built-in error prop.

0.2.4

  • Replace raw shadcn Dialog in GlossaryAddDialog with FormDialog widget; fix raw color-scale tokens to semantic tokens; swap @signalos/dialog for @signalos/form-dialog.

0.2.3

  • Content updates.

0.2.2

  • Content updates.

glossary-01

0.2.1

0.2.0

  • Refactor: lift all add-dialog form state, validation, synonym parsing, and mapped_entity construction into GlossaryReview (parent).
  • GlossaryAddDialog is now fully presentational — receives controlled form, errors, availableTables, onFieldChange, and onSubmit (no-arg) as props; no internal useState, no validation, no payload building.
  • GlossaryTermDetail: removed unused termIdx prop; TermEditState and CatalogData are now imported from Glossary.types instead of redeclared locally.
  • GlossaryTermList: fixed import casing (../Glossary.types).
  • Glossary.types.ts: added TermEditState, CatalogData, GlossaryAddFormState, GlossaryAddFormErrors exports; these were previously duplicated as local interfaces across multiple files.
  • Fixed import casing (./glossary.types./Glossary.types) across all files in the block.

semantics-details-01

0.4.0

  • Register all 54 component files in registry-item.json so 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.json so consumers receive the full component tree.

0.2.0

  • Lift navigation out of card sub-components: ReviewQueueCard, SharedStageCard, and CompletedStageCard no longer call useRouter — they now accept an onNavigate: (path: string) => void prop and call it instead.
  • Add onNavigate to ReviewQueueViewProps; ReviewQueueView threads it through QueueSection to each card.
  • Replace @/types imports in card components and StepProgress with relative imports from ../../pipeline.types (removes the forbidden app-level alias from shipped files).
  • Remove StageActionDialog import from SharedStageCard (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.