Skip to content

Commit f25bfaa

Browse files
authored
Merge branch 'master' into tag-components
2 parents b30eb0d + a119742 commit f25bfaa

File tree

12 files changed

+88
-12
lines changed

12 files changed

+88
-12
lines changed

src/icon/icon.directive.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,8 @@ export class IconDirective implements AfterViewInit, OnChanges {
9191
"aria-label": this.ariaLabel,
9292
"aria-labelledby": this.ariaLabelledBy,
9393
"aria-hidden": this.ariaHidden,
94-
focusable: this.isFocusable.toString()
94+
focusable: this.isFocusable.toString(),
95+
fill: icon.attrs.fill
9596
});
9697

9798
const attrKeys = Object.keys(attributes);

src/link/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
export * from "./link.directive";
2+
export * from "./link-icon.directive";
23
export * from "./link.module";

src/link/link-icon.directive.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import { Directive, HostBinding } from "@angular/core";
2+
3+
@Directive({
4+
selector: "[ibmLinkIcon], [cdsLinkIcon]"
5+
})
6+
export class LinkIconDirective {
7+
@HostBinding("class.cds--link__icon") iconClass = true;
8+
}

src/link/link.module.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,16 @@ import { NgModule } from "@angular/core";
22
import { CommonModule } from "@angular/common";
33

44
import { Link } from "./link.directive";
5+
import { LinkIconDirective } from "./link-icon.directive";
56

67
@NgModule({
78
declarations: [
8-
Link
9+
Link,
10+
LinkIconDirective
911
],
1012
exports: [
11-
Link
13+
Link,
14+
LinkIconDirective
1215
],
1316
imports: [
1417
CommonModule

src/link/link.stories.ts

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,13 @@
33
import { moduleMetadata, Meta } from "@storybook/angular";
44
import { LinkModule, Link } from "./";
55

6+
import { IconModule } from "../icon";
7+
68
export default {
79
title: "Components/Link",
810
decorators: [
911
moduleMetadata({
10-
imports: [LinkModule]
12+
imports: [LinkModule, IconModule]
1113
})
1214
],
1315
component: Link
@@ -24,3 +26,22 @@ Basic.args = {
2426
disabled: false,
2527
inline: false
2628
};
29+
30+
const IconTemplate = (args) => ({
31+
props: args,
32+
template: `
33+
<a
34+
href="#"
35+
cdsLink
36+
[disabled]="disabled"
37+
[inline]="inline">
38+
Link
39+
<svg cdsLinkIcon cdsIcon="close" size="16"></svg>
40+
</a>
41+
`
42+
});
43+
export const WithIcon = IconTemplate.bind({});
44+
WithIcon.args = {
45+
disabled: false,
46+
inline: false
47+
};

src/list/list.directive.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
1-
import { Directive, ElementRef, HostBinding } from "@angular/core";
1+
import {
2+
Directive,
3+
ElementRef,
4+
HostBinding,
5+
Input
6+
} from "@angular/core";
27

38
/**
49
* Applies either ordered or unordered styling to the list container it is applied to.
@@ -33,5 +38,10 @@ export class List {
3338
return !!(this.elementRef.nativeElement.parentElement && this.elementRef.nativeElement.parentElement.tagName === "LI");
3439
}
3540

41+
/**
42+
* Set to `true` to make list expressive
43+
*/
44+
@Input() @HostBinding("class.cds--list--expressive") isExpressive = false;
45+
3646
constructor(protected elementRef: ElementRef) {}
3747
}

src/list/list.stories.ts

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,20 +13,23 @@ export default {
1313
parameters: {
1414
layout: "centered"
1515
},
16+
args: {
17+
isExpressive: false
18+
},
1619
component: List
1720
} as Meta;
1821

1922
const Template = (args) => ({
2023
props: args,
2124
template: `
2225
<p>Ordered List</p>
23-
<ol cdsList>
26+
<ol cdsList [isExpressive]="isExpressive">
2427
<li cdsListItem>One</li>
2528
<li cdsListItem>Two</li>
2629
<li cdsListItem>Three</li>
2730
</ol>
2831
<p>Unordered List</p>
29-
<ul cdsList>
32+
<ul cdsList [isExpressive]="isExpressive">
3033
<li cdsListItem>One</li>
3134
<li cdsListItem>Two</li>
3235
<li cdsListItem>Three</li>
@@ -39,7 +42,7 @@ const NestingTemplate = (args) => ({
3942
props: args,
4043
template: `
4144
<p>Ordered List</p>
42-
<ol cdsList>
45+
<ol cdsList [isExpressive]="isExpressive">
4346
<li cdsListItem>
4447
One
4548
<ol cdsList>
@@ -52,10 +55,10 @@ const NestingTemplate = (args) => ({
5255
<li cdsListItem>Three</li>
5356
</ol>
5457
<p>Unordered List</p>
55-
<ul cdsList>
58+
<ul cdsList [isExpressive]="isExpressive">
5659
<li cdsListItem>
5760
One
58-
<ul cdsList>
61+
<ul cdsList [isExpressive]="isExpressive">
5962
<li cdsListItem>Nested one</li>
6063
<li cdsListItem>Nested two</li>
6164
<li cdsListItem>Nested three</li>
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import { Directive, HostBinding } from "@angular/core";
2+
3+
@Directive({
4+
selector: "[cdsClickableTileIcon], [ibmClickableTileIcon]"
5+
})
6+
export class ClickableTileIconDirective {
7+
@HostBinding("class.cds--tile--icon") icon = true;
8+
}

src/tiles/clickable-tile.stories.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,18 @@
22

33
import { moduleMetadata, Meta } from "@storybook/angular";
44
import { LayerModule } from "../layer";
5+
import { IconModule } from "../icon";
56
import { TilesModule, ClickableTile } from "./";
67

78
export default {
89
title: "Components/Tiles/Clickable",
910
decorators: [
1011
moduleMetadata({
11-
imports: [TilesModule, LayerModule]
12+
imports: [
13+
TilesModule,
14+
LayerModule,
15+
IconModule
16+
]
1217
})
1318
],
1419
component: ClickableTile
@@ -22,6 +27,11 @@ const Template = (args) => ({
2227
[href]="href"
2328
target="_blank">
2429
Click the tile to open the Carbon Design System
30+
<svg
31+
cdsClickableTileIcon
32+
cdsIcon="caret--right"
33+
size="16">
34+
</svg>
2535
</cds-clickable-tile>
2636
`
2737
});

src/tiles/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
export * from "./clickable-tile-icon.directive";
12
export * from "./clickable-tile.component";
23
export * from "./expandable-tile.component";
34
export * from "./expandable-tile-above.directive";

0 commit comments

Comments
 (0)