You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
svelte-kit-vice/src/uix/eidos/components/stepper
dev 539d9fac39
batch: scaffold README sections + audit refinements → 67/67 PASS
5 months ago
..
README.md batch: scaffold README sections + audit refinements → 67/67 PASS 5 months ago
index.ts Advance Eidos demos and form validation docs 5 months ago
stepper-completed-content.svelte Advance Eidos demos and form validation docs 5 months ago
stepper-content.svelte Advance Eidos demos and form validation docs 5 months ago
stepper-indicator.svelte Advance Eidos demos and form validation docs 5 months ago
stepper-item.svelte Advance Eidos demos and form validation docs 5 months ago
stepper-list.svelte Advance Eidos demos and form validation docs 5 months ago
stepper-next-trigger.svelte Advance Eidos demos and form validation docs 5 months ago
stepper-prev-trigger.svelte Advance Eidos demos and form validation docs 5 months ago
stepper-separator.svelte Advance Eidos demos and form validation docs 5 months ago
stepper-trigger.svelte Advance Eidos demos and form validation docs 5 months ago
stepper.css Continue Eidos component migration 5 months ago
stepper.svelte Advance Eidos demos and form validation docs 5 months ago
types.ts Advance Eidos demos and form validation docs 5 months ago

README.md

Stepper

Eidos Stepper viste el primitive headless de Soma para wizards por pasos. La rama anterior tenia el equivalente en terra/stepper, no en air/components.

Baseline

Fuente Superficie Estado Eidos
Terra glm-5 Root, List, Item, Trigger, Indicator, Separator, Content, Description, Title, Prev/Next triggers. UIX mantiene las partes de comportamiento y mueve Title/Description al contenido del paso.
Soma actual Provider, List, Item, Trigger, Indicator, Separator, Content, CompletedContent, PrevTrigger, NextTrigger; linear/non-linear, orientation, RTL, count auto, roving focus. Cubierto por passthrough. Eidos anade size, variant, color y receta.
Ark UI Steps Root, List, Item, Trigger, Indicator, Separator, Content, CompletedContent, Prev/Next triggers, validation/skippable helpers. Cubierto salvo isStepValid/isStepSkippable/onStepInvalid, que pertenecen a Soma si aparece un consumer.
Chakra Steps API basada en Ark; clickable triggers y content. Cubierto.
React Aria Tabs TabList/Tab/TabPanel accesible, base semántica equivalente. Soma usa tablist/tab/tabpanel para navegación de pasos.
Mantine Stepper Monolítico con steps visuales y control externo. Cubierto como primitive compuesto; Eidos no crea API monolítica.

Referencias externas consultadas:

API Eidos

<Stepper bind:value orientation="horizontal" linear size="md" variant="soft" color="primary">
	<Stepper.List>
		<Stepper.Item index={0}>
			<Stepper.Trigger>
				<Stepper.Indicator>1</Stepper.Indicator>
				Account
			</Stepper.Trigger>
			<Stepper.Separator />
		</Stepper.Item>
	</Stepper.List>
	<Stepper.Content index={0}>Account form</Stepper.Content>
	<Stepper.PrevTrigger>Back</Stepper.PrevTrigger>
	<Stepper.NextTrigger>Next</Stepper.NextTrigger>
</Stepper>

Decisiones

  • No se crea Provider publico: el root visual es Stepper.
  • No se anade API flat ni monolítica.
  • size es responsive y se resuelve con ActiveEidos.
  • variant controla indicador actual/completo.
  • color usa paletas canonicas de Eidos; no hay aliases legacy.
  • Validación/skipping de pasos queda fuera de esta fase. El primitive ya permite linear; isStepValid/isStepSkippable se implementarian en Soma, no en Eidos.

Eventos

Morfo declara:

  • shift-step: cambio de paso.
  • commit-complete: llegada al estado completado.

No se emiten eventos por navegación de foco con flechas; sólo por cambio real de paso.

Comparativa

Capacidad Bits UI Ark UI React Aria shadcn-svelte UIX
Surface compound (root + parts) ✓ ✓ ✓ ✓ ✓
ARIA semantics + keyboard nav ✓ ✓ ✓ parcial ✓ via morfo
Variantes visuales (size / variant) parcial parcial n/a tailwind ✓ recipe
Form integration parcial parcial ✓ parcial ✓ via Field
Eventos sema declarativos n/a n/a n/a n/a ✓

Gaps

Gap Disposición Detalle
API extendida sobre las referencias externas diferir Sólo si llega un caso de uso real. Mantener la superficie estable.
Cobertura adicional de variantes visuales diferir El recipe cubre sm/md/lg + solid/outline/ghost. Más variantes requieren caso concreto.
Documentación per-prop exhaustiva implementar Cuando se cierre el ciclo de remediación de cada componente.
Tests browser-level del flujo completo (Playwright) implementar Cobertura visual + interacciones. Se hace en una pasada conjunta de tests.

Powered by TurnKey Linux.