Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | 4x | @if (canModerate()) {
<app-sidebar-action
[order]="40"
[priority]="topicCount() > 0 ? 'secondary' : 'primary'"
icon="question_mark"
[svgIcon]="firstTopicIcon()"
[label]="topicsLabel()"
[badge]="topicBadge()"
(activated)="togglePanel()"
/>
<ui-side-panel
header="Словники"
[open]="isPanelOpen()"
(closed)="closePanel()"
>
@if (isPanelOpen()) {
<div class="topics-panel">
<div class="topics-panel__list">
@for (topic of allTopics; track topic.id) {
<div class="topics-panel__item">
<ui-icon
class="topics-panel__icon"
[svgIcon]="topic.icon"
size="small"
/>
<ui-checkbox
[label]="topic.name"
[attr.data-testid]="'topic-' + topic.id"
[disabled]="isSaving()"
[ngModel]="selectedTopics().has(topic.id)"
(valueChanged)="onTopicToggle(topic.id, $event)"
/>
</div>
}
</div>
<div class="topics-panel__actions">
<ui-button
variant="filled"
accent="primary"
[loading]="isSaving()"
[disabled]="isSaving()"
(click)="save()"
>
OK
</ui-button>
<ui-button
variant="outlined"
[disabled]="isSaving()"
(click)="closePanel()"
>
Отмена
</ui-button>
</div>
</div>
}
</ui-side-panel>
}
|