Skip to content
silverpoint
Documentation menu

UI components · Actions

Button

A native button, or a link with href. Group: Actions · component 1 of 17, new in silverpoint 0.3.
size="lg"
mode="precision"
substrate="green"

States

The 4 reference states silverpoint declares for Button, live on both grounds, with their code. As in upstream's documentation the examples are uncontrolled: the state's value is the default value. Pick a framework once and every example on the site follows it.

default

silverpoint · cream
cyanotype · prussian
tsx
import '@silverpoint/fonts/fonts.css';
import '@silverpoint/grounds/styles.css';
import '@silverpoint/grounds/ui.css';
import { SpButton } from '@silverpoint/react/ui/button';

<SpButton>Default</SpButton>

primary

silverpoint · cream
cyanotype · prussian
tsx
import '@silverpoint/fonts/fonts.css';
import '@silverpoint/grounds/styles.css';
import '@silverpoint/grounds/ui.css';
import { SpButton } from '@silverpoint/react/ui/button';

<SpButton variant="primary">Primary</SpButton>

danger

silverpoint · cream
cyanotype · prussian
tsx
import '@silverpoint/fonts/fonts.css';
import '@silverpoint/grounds/styles.css';
import '@silverpoint/grounds/ui.css';
import { SpButton } from '@silverpoint/react/ui/button';

<SpButton variant="danger">Delete</SpButton>

disabled

silverpoint · cream
cyanotype · prussian
tsx
import '@silverpoint/fonts/fonts.css';
import '@silverpoint/grounds/styles.css';
import '@silverpoint/grounds/ui.css';
import { SpButton } from '@silverpoint/react/ui/button';

<SpButton disabled>Disabled</SpButton>

Import

Each component has its own subpath under ui/, and every adapter exports them all from ui. Import @silverpoint/grounds/ui.css once, beside styles.css; Reflex adds it for you.

FrameworkImport
Reactimport { SpButton } from '@silverpoint/react/ui/button';
Vueimport { SpButton } from '@silverpoint/vue/ui/button';
Angularimport { SpButton } from '@silverpoint/angular/ui/button'; // <button spButton>
Reflexfrom reflex_silverpoint_react import sp_button

Props

The props Button adds to the ones every UI component takes.

React / AngularVueReflexTypeDescription
variantvariantvariantLiteral['default', 'primary', 'danger']default, primary or danger (which also draws the exact ✕ glyph).
typetypetypeLiteral['submit', 'reset', 'button']button (default), submit or reset.
disableddisableddisabledboolNot focusable, not submitted; drawn with the disabled tone.
labellabellabelstrAccessible name of an icon-only button.
blockblockblockboolFills the width of its container.
hrefhrefhrefstrRenders an <a> to this address.

Common props

Every UI component also takes these. Like a chart's, they fall back to the dashboard the component sits in, then to the provider. Read more about the UI components.

React / AngularVueReflexTypeDescription
idididstrThe frame variant and every related id derive from it.
groundgroundgroundLiteral['silverpoint', 'cyanotype'] | str | dict[str, Any]Style ground: "silverpoint" or "cyanotype", or a ground object. Defaults to the dashboard's, then the provider's, or silverpoint.
substratesubstratesubstrateLiteral['cream', 'green', 'blue', 'ochre', 'prussian']Prepared substrate within the ground.
modemodemodeLiteral['ink', 'precision']ink by default; precision disables inking.
seedseedseedstr | intSeed of the frame's hand; overrides id for the frame variant only.
sizesizesizeLiteral['sm', 'md', 'lg']Control size: sm, md (default) or lg.
palettepalettepalettedict[str, str]Colours over the ground's (set with palette=), merged over the dashboard's and the provider's.
classNameclass-nameclass_namestrAdded to the component's root element, after its own classes.
Report it
Found something wrong with SpButton? Open an issue on GitHub — the form comes pre-filled with the component and the version.