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/morfo/components/link.ts

35 lines
1.0 KiB

import type { Morfo } from '../types';
/**
* Link — inline text link typography primitive.
*
* Eidos-native: renders `<a>` by default (or `<span aria-disabled>` when
* disabled). Inherits ambient typography — no own `style` prop — so it
* composes mid-paragraph without breaking the text scale. Visual
* variants drive the underline + color treatment.
*
* Passive on the morfo surface: Link has hover/active visual states but
* no semantic events. Click / navigation is the consumer's
* responsibility (SvelteKit `<a>`, custom router, sema-driven actions
* on the surrounding component). When Link is used as a button-style
* affordance (form submit, dialog action), the consumer should wrap a
* `<Toolbar.Button>` instead — that surface owns the sema commit.
*/
export const linkMorfo = {
name: 'Link',
kebab: 'link',
scope: ['eidos'],
parts: [
{
name: 'Provider',
kebab: 'provider',
archetype: 'provider',
kind: 'public',
defaultElement: 'a',
optional: false,
data: [],
aria: []
}
]
} as const satisfies Morfo;

Powered by TurnKey Linux.