Skip to content

Commit c322d81

Browse files
committed
feat(aria/toolbar): adds toolbar basic vertical example to dev-app
Updates components-examples and dev-app to implement a toolbar basic vertical example for accessibility testing.
1 parent ba9f79b commit c322d81

File tree

5 files changed

+78
-1
lines changed

5 files changed

+78
-1
lines changed
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
export {ToolbarBasicHorizontalExample} from './toolbar-basic-horizontal/toolbar-basic-horizontal-example';
2+
export {ToolbarBasicVerticalExample} from './toolbar-basic-vertical/toolbar-basic-vertical-example';
23
export {ToolbarConfigurableExample} from './toolbar-configurable/toolbar-configurable-example';
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
<div class="example-container">
2+
<div ngToolbar orientation="vertical" class="example-toolbar" aria-label="Vertical Toolbar Text Formatting Tools">
3+
<button
4+
ngToolbarWidget
5+
class="example-radio-button"
6+
(click)="format('bold')"
7+
(keydown.enter)="format('bold')">
8+
Bold
9+
</button>
10+
<button
11+
ngToolbarWidget
12+
class="example-radio-button"
13+
(click)="format('italic')"
14+
(keydown.enter)="format('italic')">
15+
Italic
16+
</button>
17+
<button
18+
ngToolbarWidget
19+
class="example-radio-button"
20+
(click)="format('underline')"
21+
(keydown.enter)="format('underline')">
22+
Underline
23+
</button>
24+
<ul
25+
ngRadioGroup
26+
class="example-radio-group"
27+
aria-label="Select text alignment"
28+
>
29+
@for (alignment of alignments; track alignment) {
30+
<li ngRadioButton [value]="alignment.value" class="example-radio-button">
31+
<span class="example-radio-indicator"></span>
32+
<span>{{ alignment.label }}</span>
33+
</li>
34+
}
35+
</ul>
36+
<button
37+
ngToolbarWidget
38+
class="example-radio-button"
39+
[disabled]="true">
40+
Disabled Action
41+
</button>
42+
</div>
43+
</div>
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import {Component} from '@angular/core';
2+
import {Toolbar, ToolbarWidget} from '@angular/aria/toolbar';
3+
import {RadioGroup, RadioButton} from '@angular/aria/radio-group';
4+
import {LiveAnnouncer} from '@angular/cdk/a11y';
5+
6+
/** @title Basic Vertical Toolbar Example */
7+
@Component({
8+
selector: 'toolbar-basic-vertical-example',
9+
templateUrl: 'toolbar-basic-vertical-example.html',
10+
styleUrl: '../toolbar-common.css',
11+
imports: [RadioButton, RadioGroup, Toolbar, ToolbarWidget],
12+
})
13+
export class ToolbarBasicVerticalExample {
14+
constructor(private _liveAnnouncer: LiveAnnouncer) {}
15+
alignments = [
16+
{value: 'left', label: 'Left'},
17+
{value: 'center', label: 'Center'},
18+
{value: 'right', label: 'Right'},
19+
];
20+
format(tool: string) {
21+
console.log(`Tool activated: ${tool}`);
22+
this._liveAnnouncer.announce(`${tool} applied`, 'polite');
23+
}
24+
test(action: string) {
25+
console.log(`Action triggered: ${action}`);
26+
this._liveAnnouncer.announce(`${action} button activated`, 'polite');
27+
}
28+
}

src/dev-app/aria-toolbar/toolbar-demo.html

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@
44
<h2>Toolbar Basic Horizontal</h2>
55
<toolbar-basic-horizontal-example></toolbar-basic-horizontal-example>
66
</div>
7+
<div class="example-toolbar-container">
8+
<h2>Toolbar Basic Vertical</h2>
9+
<toolbar-basic-vertical-example></toolbar-basic-vertical-example>
10+
</div>
711
<div class="example-configurable-radio-container example-toolbar-container">
812
<h2>Configurable CDK Toolbar</h2>
913
<toolbar-configurable-example></toolbar-configurable-example>

src/dev-app/aria-toolbar/toolbar-demo.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,13 @@
99
import {ChangeDetectionStrategy, Component, ViewEncapsulation} from '@angular/core';
1010
import {
1111
ToolbarBasicHorizontalExample,
12+
ToolbarBasicVerticalExample,
1213
ToolbarConfigurableExample,
1314
} from '@angular/components-examples/aria/toolbar';
1415

1516
@Component({
1617
templateUrl: 'toolbar-demo.html',
17-
imports: [ToolbarBasicHorizontalExample, ToolbarConfigurableExample],
18+
imports: [ToolbarBasicHorizontalExample, ToolbarBasicVerticalExample, ToolbarConfigurableExample],
1819
styleUrl: './toolbar-demo.css',
1920
encapsulation: ViewEncapsulation.None,
2021
changeDetection: ChangeDetectionStrategy.OnPush,

0 commit comments

Comments
 (0)