Skip to content

Commit ee057ff

Browse files
authored
Merge pull request #6 from tildeio/price-in-list
Display package price in list view
2 parents 96ca350 + cb6347b commit ee057ff

File tree

3 files changed

+13
-3
lines changed

3 files changed

+13
-3
lines changed

src/css-classes.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,8 @@ export const CLASSES = {
5858
/** All Package/Park "limited" attribute elements */
5959
limited: 'epg_attributes-limited' as const,
6060
},
61+
/** Elements related to package price. */
62+
price: 'epg_price' as const,
6163
/**
6264
* @param perk
6365
* @param value A {@link PerkValue} or undefined. If undefined, the value is falsy.

src/index.css

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@
4242
);
4343
}
4444

45-
.epg_display-as-grid .epg_package-perk-list {
45+
.epg_display-as-grid .epg_columnheader .epg_package-perk-list,
46+
.epg_display-as-grid .epg_columnheader .epg_price {
4647
display: none;
4748
}

src/render/nodes.ts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@ function packageHeader(pkg: Package, display: DisplayOption) {
8585

8686
if (display !== 'grid') {
8787
el.append(perkList(pkg));
88+
el.append(packagePrice(pkg));
8889
}
8990

9091
return el;
@@ -191,13 +192,19 @@ function perkValue(perk: Perk, pkg: Package) {
191192
function packageFooter(pkg: Package) {
192193
const el = createElement('div', `${CLASSES.cell} ${CLASSES.package}`, {
193194
role: 'gridcell',
195+
});
196+
el.ariaLabel = 'Package price';
197+
el.append(packagePrice(pkg));
198+
return el;
199+
}
200+
201+
function packagePrice(pkg: Package) {
202+
return createElement('div', CLASSES.price, {
194203
textContent: pkg.price.toLocaleString('en-US', {
195204
style: 'currency',
196205
currency: 'USD',
197206
minimumFractionDigits: 0,
198207
maximumFractionDigits: 0,
199208
}),
200209
});
201-
el.ariaLabel = 'Package price';
202-
return el;
203210
}

0 commit comments

Comments
 (0)