Box
Contenitore generico. Mantine: <Box>
Sono un Box
<div class="presago-box">Sono un Box</div>
Contenitore generico. Mantine: <Box>
<div class="presago-box">Sono un Box</div>
Flex verticale. Mantine: <Stack>
<div class="presago-stack" data-gap="md">
<div>Item 1</div>
<div>Item 2</div>
</div>
Flex orizzontale. Mantine: <Group>
<div class="presago-inline" data-gap="md">
<div>A</div><div>B</div>
</div>
Flex con controllo completo. Mantine: <Flex>
<div class="presago-flex" data-justify="between" data-align="center" data-gap="md">
…
</div>
Mantine: <Text>
Testo default con una parola in semibold e una parola brand.
<p class="presago-text">Testo <span class="presago-span" data-fw="semibold">bold</span></p>
Mantine: <Anchor>
Visita la checklist a11y.
<a class="presago-link" href="…">checklist a11y</a>
Mantine: <Image>
<img class="presago-image" data-radius="md" src="…" alt="…">
Mantine: <Button>
Mantine: <ActionIcon> — aria-label obbligatorio
<button class="presago-icon-button" aria-label="Modifica">
<svg aria-hidden="true">…</svg>
</button>
Mantine: <TextInput>
<label class="presago-field__label" for="email">Email</label>
<div class="presago-text-input__wrapper">
<input type="email" class="presago-text-input" id="email">
</div>
Mantine: <Textarea>
<textarea class="presago-text-area" id="notes"></textarea>
Mantine: <Select> (qui versione native per zero-dep)
<select class="presago-select" id="team">
<option>Engineering</option>
</select>
Mantine: <Checkbox>
<label class="presago-checkbox">
<input type="checkbox" class="presago-checkbox__input">
<span class="presago-checkbox__label">Accetta</span>
</label>
Mantine: <Radio.Group>
<fieldset class="presago-radio-group">
<legend class="presago-radio-group__legend">Ambiente</legend>
<label class="presago-radio">
<input type="radio" class="presago-radio__input" name="env">
<span class="presago-radio__label">Dev</span>
</label>
</fieldset>
Mantine: <Switch>
<label class="presago-toggle">
<input type="checkbox" class="presago-toggle__input">
<span class="presago-toggle__label">Notifiche</span>
</label>
Mantine: <Loader> — statico con prefers-reduced-motion
<span class="presago-spinner" role="status" aria-label="Caricamento"></span>
Mantine: <Title order={1..6}>
<h1 class="presago-heading" data-level="1">Titolo</h1>
Wrapper presentational per SVG
<span class="presago-icon" data-color="success" aria-hidden="true">
<svg viewBox="0 0 24 24"><polyline points="20 6 9 17 4 12"/></svg>
</span>