Примитивы
16

Fieldset

Группирует связанные контролы — настоящая пара <fieldset>/<legend>, а не div с role="group". Именно нативная пара заставляет скринридер проговаривать легенду с каждым контролом внутри, а disabled на ней выключает их все, не трогая ни один.

чистая разметка — библиотеки на странице нет
отрендерил aura-react
отрендерил aura-vue
отрендерил aura-svelte
собрано из классов самого aura-angular
Notifications
Notifications
Notifications
Notifications
Notifications

Код

index.html
<fieldset class="aura-fieldset">
  <legend>Notifications</legend>
  <div class="aura-stack" style="--aura-dir:column;--aura-gap:var(--space-3)">
    <label class="aura-check">
      <input type="checkbox" class="aura-checkbox" checked />
      <span>Email</span>
    </label>
    <label class="aura-check">
      <input type="checkbox" class="aura-checkbox" />
      <span>Push</span>
    </label>
  </div>
</fieldset>
Demo.tsx
import { Checkbox, Fieldset, Stack } from '@ilomee/aura-react';

export default function Demo() {
  return (
    <Fieldset legend="Notifications">
      <Stack gap={3}>
        <Checkbox label="Email" defaultChecked />
        <Checkbox label="Push" />
      </Stack>
    </Fieldset>
  );
}
Demo.vue
<script setup lang="ts">
import { Fieldset, Checkbox } from '@ilomee/aura-vue';
</script>

<template>
  <Fieldset legend="Notifications">
    <Checkbox label="Email" />
  </Fieldset>
</template>
Demo.svelte
<script lang="ts">
  import { Fieldset, Checkbox } from '@ilomee/aura-svelte';
</script>

<Fieldset legend="Notifications">
  <Checkbox label="Email" />
</Fieldset>

Используется как aura-fieldset.

demo.component.ts
import { AuraFieldset, AuraCheckbox } from '@ilomee/aura-angular';

@Component({
  standalone: true,
  imports: [AuraFieldset, AuraCheckbox],
  template: `<aura-fieldset legend="Notifications">
    <aura-checkbox label="Email" [checked]="true" />
  </aura-fieldset>`,
})
export class DemoComponent {}

Пропсы

У чистой разметки нет пропсов — классы ниже и есть весь API. Четыре пакета не делают ничего сверх того, что проставляют вам те же самые классы.
ИмяТипПо умолчаниюПримечания
legendstring
disabledbooleanВыключает все контролы внутри. Заметьте: их свойство disabled при этом не меняется — наследование видно только псевдоклассу :disabled.
ИмяТипПо умолчаниюПримечания
legendstring
ИмяТипПо умолчаниюПримечания
legendstring
ИмяТипПо умолчаниюПримечания
legendstring
disabledbooleanfalse

Какие классы отдаёт

Все фреймворки отдают одни и те же классы — именно поэтому четыре библиотеки выглядят одинаково. Их можно использовать напрямую, вообще без библиотеки компонентов.

КлассРольПримечания
.aura-fieldsetбазаОбязательный. Без него модификатор не работает.

Токены и правила

components.css
рамка
var(--field-border) · var(--r2)
отступы
var(--space-4)
легенда
var(--text-muted)
min-inline-size
0 — a fieldset's default is min-content, which refuses to shrink