Skip to content

Commit e3112f9

Browse files
committed
services/design: Extract theme property
1 parent 46f615f commit e3112f9

File tree

3 files changed

+13
-5
lines changed

3 files changed

+13
-5
lines changed

app/controllers/settings/appearance.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@ import Controller from '@ember/controller';
22
import { action } from '@ember/object';
33
import { inject as service } from '@ember/service';
44

5+
import { alias } from 'macro-decorators';
6+
57
export default class AppearanceSettingsController extends Controller {
68
@service design;
79

8-
get theme() {
9-
return this.design.useNewDesign ? 'new-design' : 'classic';
10-
}
10+
@alias('design.theme') theme;
1111

1212
@action setTheme(theme) {
13-
this.design.setNewDesign(theme === 'new-design');
13+
this.theme = theme;
1414
}
1515
}

app/services/design.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,14 @@ export default class DesignService extends Service {
1010
@tracked useNewDesign = !this.fastboot.isFastBoot && localStorage.getItem('use-new-design') === 'true';
1111
@tracked showToggleButton = config.environment === 'development' || config.environment === 'test';
1212

13+
get theme() {
14+
return this.useNewDesign ? 'new-design' : 'classic';
15+
}
16+
17+
set theme(theme) {
18+
this.setNewDesign(theme === 'new-design');
19+
}
20+
1321
setNewDesign(value) {
1422
this.useNewDesign = value;
1523
localStorage.setItem('use-new-design', String(this.useNewDesign));

app/templates/application.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<HeadLayout />
22

33
{{page-title "crates.io: Rust Package Registry" separator=' - ' prepend=true}}
4-
{{set-theme (if this.design.useNewDesign "new-design")}}
4+
{{set-theme this.design.theme}}
55

66
<ProgressBar/>
77
<NotificationContainer @position="top-right"/>

0 commit comments

Comments
 (0)