Build a nav-state service to help control visibility of submenus
This commit is contained in:
parent
56788aca7c
commit
b5aa9e6c5a
|
@ -0,0 +1,56 @@
|
|||
import Service from '@ember/service';
|
||||
import { tracked } from "@glimmer/tracking";
|
||||
import { inject as service } from '@ember/service';
|
||||
|
||||
export default class NavStateService extends Service {
|
||||
@service store;
|
||||
|
||||
@tracked book = '';
|
||||
@tracked chapter = '';
|
||||
@tracked verse = '';
|
||||
@tracked chapterNavActive = false;
|
||||
@tracked verseNaveActive = false;
|
||||
|
||||
setBook(book) {
|
||||
this.book = book;
|
||||
this.chapter = '';
|
||||
this.verse = '';
|
||||
}
|
||||
|
||||
setChapter(chapter) {
|
||||
this.chapter = chapter;
|
||||
this.verse = '';
|
||||
}
|
||||
|
||||
setVerse(verse) {
|
||||
this.verse = verse;
|
||||
}
|
||||
|
||||
toggleChapterNav() {
|
||||
this.chapterNavActive = !this.chapterNavActive;
|
||||
}
|
||||
|
||||
toggleVerseNav() {
|
||||
this.verseNaveActive = !this.verseNaveActive;
|
||||
}
|
||||
|
||||
isCurrentBook(book) {
|
||||
return this.book === book;
|
||||
}
|
||||
|
||||
isCurrentChapter(chapter) {
|
||||
return this.chapter === chapter;
|
||||
}
|
||||
|
||||
isCurrentVerse(verse) {
|
||||
return this.verse === verse;
|
||||
}
|
||||
|
||||
isChapterNavActive() {
|
||||
return this.chapterNavActive;
|
||||
}
|
||||
|
||||
isVerseNavActive() {
|
||||
return this.verseNaveActive;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue