From 2c986fb3dfa1e5b7ed2f10b20c29daa7eede7440 Mon Sep 17 00:00:00 2001 From: Jason Wall Date: Sun, 9 Aug 2020 16:33:44 -0400 Subject: [PATCH] doopdedoop | lots of moving things around, some removing of unused stuff --- app/db/src/app/app-routing.module.ts | 2 +- app/db/src/app/app.component.ts | 4 +- app/db/src/app/app.module.ts | 38 +++++++------- ...criber.component.ts => subscriber-base.ts} | 2 +- .../add-to-page-modal.component.html | 0 .../add-to-page-modal.component.scss | 0 .../add-to-page-modal.component.ts | 4 +- .../{common => }/components/card.component.ts | 13 ++--- .../edit-modal/note-edit-modal.component.html | 0 .../edit-modal/note-edit-modal.component.scss | 0 .../edit-modal/note-edit-modal.component.ts | 8 +-- .../components/note/note-card.component.html | 0 .../components/note/note-card.component.scss | 0 .../components/note/note-card.component.ts | 8 +-- .../ok-cancel-modal.component.html | 0 .../ok-cancel-modal.component.scss | 0 .../ok-cancel-modal.component.ts | 0 .../page-edit-modal.component.html | 0 .../page-edit-modal.component.scss | 0 .../page-edit-modal.component.ts | 2 +- .../passage/passage-card.component.html | 0 .../passage/passage-card.component.scss | 0 .../passage/passage-card.component.ts | 8 +-- .../settings/settings.component.html | 0 .../settings/settings.component.scss | 0 .../components/settings/settings.component.ts | 11 +++-- .../strongs/card/strongs-card.component.html | 0 .../strongs/card/strongs-card.component.scss | 0 .../strongs/card/strongs-card.component.ts | 6 +-- .../modal/strongs-modal.component.html | 0 .../modal/strongs-modal.component.scss | 0 .../strongs/modal/strongs-modal.component.ts | 6 +-- .../components/strongs/strongs.component.html | 0 .../components/strongs/strongs.component.ts | 2 +- .../verse-picker-modal.component.html | 0 .../verse-picker-modal.component.scss | 0 .../verse-picker-modal.component.ts | 11 ++--- .../words/words-card.component.html | 0 .../words/words-card.component.scss | 0 .../components/words/words-card.component.ts | 14 ++---- app/db/src/app/models/app-state.ts | 49 +------------------ app/db/src/app/models/card-state.ts | 28 +++++++++++ app/db/src/app/models/page-state.ts | 13 +++++ .../search}/search.page.html | 4 -- .../search}/search.page.scss | 0 .../search}/search.page.ts | 10 ++-- app/db/src/app/services/app-state-actions.ts | 4 +- .../app/services/app-state-initial-state.ts | 3 +- app/db/src/app/services/app-state-reducer.ts | 4 +- app/db/src/app/services/app.service.ts | 4 +- app/db/src/app/services/storage.service.ts | 7 +-- 51 files changed, 125 insertions(+), 140 deletions(-) rename app/db/src/app/common/{components/subscriber.component.ts => subscriber-base.ts} (89%) rename app/db/src/app/{search => }/components/add-to-page-modal/add-to-page-modal.component.html (100%) rename app/db/src/app/{search => }/components/add-to-page-modal/add-to-page-modal.component.scss (100%) rename app/db/src/app/{search => }/components/add-to-page-modal/add-to-page-modal.component.ts (91%) rename app/db/src/app/{common => }/components/card.component.ts (80%) rename app/db/src/app/{search => }/components/note/edit-modal/note-edit-modal.component.html (100%) rename app/db/src/app/{search => }/components/note/edit-modal/note-edit-modal.component.scss (100%) rename app/db/src/app/{search => }/components/note/edit-modal/note-edit-modal.component.ts (87%) rename app/db/src/app/{search => }/components/note/note-card.component.html (100%) rename app/db/src/app/{search => }/components/note/note-card.component.scss (100%) rename app/db/src/app/{search => }/components/note/note-card.component.ts (82%) rename app/db/src/app/{common => }/components/ok-cancel-modal/ok-cancel-modal.component.html (100%) rename app/db/src/app/{common => }/components/ok-cancel-modal/ok-cancel-modal.component.scss (100%) rename app/db/src/app/{common => }/components/ok-cancel-modal/ok-cancel-modal.component.ts (100%) rename app/db/src/app/{search => }/components/page-edit-modal/page-edit-modal.component.html (100%) rename app/db/src/app/{search => }/components/page-edit-modal/page-edit-modal.component.scss (100%) rename app/db/src/app/{search => }/components/page-edit-modal/page-edit-modal.component.ts (93%) rename app/db/src/app/{search => }/components/passage/passage-card.component.html (100%) rename app/db/src/app/{search => }/components/passage/passage-card.component.scss (100%) rename app/db/src/app/{search => }/components/passage/passage-card.component.ts (94%) rename app/db/src/app/{common => }/components/settings/settings.component.html (100%) rename app/db/src/app/{common => }/components/settings/settings.component.scss (100%) rename app/db/src/app/{common => }/components/settings/settings.component.ts (92%) rename app/db/src/app/{search => }/components/strongs/card/strongs-card.component.html (100%) rename app/db/src/app/{search => }/components/strongs/card/strongs-card.component.scss (100%) rename app/db/src/app/{search => }/components/strongs/card/strongs-card.component.ts (89%) rename app/db/src/app/{search => }/components/strongs/modal/strongs-modal.component.html (100%) rename app/db/src/app/{search => }/components/strongs/modal/strongs-modal.component.scss (100%) rename app/db/src/app/{search => }/components/strongs/modal/strongs-modal.component.ts (83%) rename app/db/src/app/{search => }/components/strongs/strongs.component.html (100%) rename app/db/src/app/{search => }/components/strongs/strongs.component.ts (91%) rename app/db/src/app/{search => }/components/verse-picker-modal/verse-picker-modal.component.html (100%) rename app/db/src/app/{search => }/components/verse-picker-modal/verse-picker-modal.component.scss (100%) rename app/db/src/app/{search => }/components/verse-picker-modal/verse-picker-modal.component.ts (72%) rename app/db/src/app/{search => }/components/words/words-card.component.html (100%) rename app/db/src/app/{search => }/components/words/words-card.component.scss (100%) rename app/db/src/app/{search => }/components/words/words-card.component.ts (79%) create mode 100644 app/db/src/app/models/card-state.ts create mode 100644 app/db/src/app/models/page-state.ts rename app/db/src/app/{search/search-page => pages/search}/search.page.html (90%) rename app/db/src/app/{search/search-page => pages/search}/search.page.scss (100%) rename app/db/src/app/{search/search-page => pages/search}/search.page.ts (92%) diff --git a/app/db/src/app/app-routing.module.ts b/app/db/src/app/app-routing.module.ts index 68c651a3..28d5ad29 100644 --- a/app/db/src/app/app-routing.module.ts +++ b/app/db/src/app/app-routing.module.ts @@ -1,6 +1,6 @@ import { NgModule } from '@angular/core'; import { Routes, RouterModule } from '@angular/router'; -import { SearchPage } from './search/search-page/search.page'; +import { SearchPage } from './pages/search/search.page'; const routes: Routes = [ { diff --git a/app/db/src/app/app.component.ts b/app/db/src/app/app.component.ts index f90fa13e..b64e3713 100644 --- a/app/db/src/app/app.component.ts +++ b/app/db/src/app/app.component.ts @@ -6,7 +6,7 @@ import { Observable } from 'rxjs'; import { Breakpoints, BreakpointObserver } from '@angular/cdk/layout'; import { map, shareReplay } from 'rxjs/operators'; import { MatSidenav } from '@angular/material/sidenav'; -import { SubscriberComponent } from './common/components/subscriber.component'; +import { SubscriberBase } from './common/subscriber-base'; import { MatSnackBar } from '@angular/material/snack-bar'; @Component({ @@ -14,7 +14,7 @@ import { MatSnackBar } from '@angular/material/snack-bar'; templateUrl: './app.component.html', styleUrls: ['./app.component.scss'], }) -export class AppComponent extends SubscriberComponent implements AfterViewInit { +export class AppComponent extends SubscriberBase implements AfterViewInit { savedPages$ = this.appService.select((state) => state.savedPages.value); mainPages$ = this.appService.select((state) => state.mainPages); fontSize$ = this.appService.select((state) => state.displaySettings.value.cardFontSize + 'pt'); diff --git a/app/db/src/app/app.module.ts b/app/db/src/app/app.module.ts index aa0813fe..f15ef106 100644 --- a/app/db/src/app/app.module.ts +++ b/app/db/src/app/app.module.ts @@ -11,25 +11,6 @@ import { FirebaseConfig } from './constants'; import { AngularFireAuthModule } from '@angular/fire/auth'; import { AngularFireDatabaseModule } from '@angular/fire/database'; -import { AppRoutingModule } from './app-routing.module'; -import { AppComponent } from './app.component'; - -import { SearchPage } from './search/search-page/search.page'; -import { PageEditModalComponent } from './search/components/page-edit-modal/page-edit-modal.component'; -import { AddToPageModalComponent } from './search/components/add-to-page-modal/add-to-page-modal.component'; -import { NoteEditModalComponent } from './search/components/note/edit-modal/note-edit-modal.component'; -import { VersePickerModalComponent } from './search/components/verse-picker-modal/verse-picker-modal.component'; - -import { OkCancelModalComponent } from './common/components/ok-cancel-modal/ok-cancel-modal.component'; -import { SettingsComponent } from './common/components/settings/settings.component'; - -import { PassageCardComponent } from './search/components/passage/passage-card.component'; -import { WordsCardComponent } from './search/components/words/words-card.component'; -import { NoteCardComponent } from './search/components/note/note-card.component'; -import { StrongsComponent } from './search/components/strongs/strongs.component'; -import { StrongsCardComponent } from './search/components/strongs/card/strongs-card.component'; -import { StrongsModalComponent } from './search/components/strongs/modal/strongs-modal.component'; - import { MatCheckboxModule } from '@angular/material/checkbox'; import { MatButtonModule } from '@angular/material/button'; import { MatInputModule } from '@angular/material/input'; @@ -67,6 +48,25 @@ import { MatNativeDateModule, MatRippleModule } from '@angular/material/core'; import { MatTreeModule } from '@angular/material/tree'; import { ClipboardModule } from '@angular/cdk/clipboard'; +import { AppRoutingModule } from './app-routing.module'; +import { AppComponent } from './app.component'; + +import { SearchPage } from './pages/search/search.page'; + +import { OkCancelModalComponent } from './components/ok-cancel-modal/ok-cancel-modal.component'; +import { SettingsComponent } from './components/settings/settings.component'; + +import { PassageCardComponent } from './components/passage/passage-card.component'; +import { StrongsComponent } from './components/strongs/strongs.component'; +import { StrongsCardComponent } from './components/strongs/card/strongs-card.component'; +import { StrongsModalComponent } from './components/strongs/modal/strongs-modal.component'; +import { WordsCardComponent } from './components/words/words-card.component'; +import { NoteCardComponent } from './components/note/note-card.component'; +import { PageEditModalComponent } from './components/page-edit-modal/page-edit-modal.component'; +import { NoteEditModalComponent } from './components/note/edit-modal/note-edit-modal.component'; +import { VersePickerModalComponent } from './components/verse-picker-modal/verse-picker-modal.component'; +import { AddToPageModalComponent } from './components/add-to-page-modal/add-to-page-modal.component'; + @NgModule({ declarations: [ AppComponent, diff --git a/app/db/src/app/common/components/subscriber.component.ts b/app/db/src/app/common/subscriber-base.ts similarity index 89% rename from app/db/src/app/common/components/subscriber.component.ts rename to app/db/src/app/common/subscriber-base.ts index 9b4a1fa4..cd5e14b7 100644 --- a/app/db/src/app/common/components/subscriber.component.ts +++ b/app/db/src/app/common/subscriber-base.ts @@ -4,7 +4,7 @@ import { Subscription } from 'rxjs'; @Injectable({ providedIn: 'root', }) -export class SubscriberComponent implements OnDestroy { +export class SubscriberBase implements OnDestroy { protected subscriptions: Subscription[] = []; public ngOnDestroy(): void { diff --git a/app/db/src/app/search/components/add-to-page-modal/add-to-page-modal.component.html b/app/db/src/app/components/add-to-page-modal/add-to-page-modal.component.html similarity index 100% rename from app/db/src/app/search/components/add-to-page-modal/add-to-page-modal.component.html rename to app/db/src/app/components/add-to-page-modal/add-to-page-modal.component.html diff --git a/app/db/src/app/search/components/add-to-page-modal/add-to-page-modal.component.scss b/app/db/src/app/components/add-to-page-modal/add-to-page-modal.component.scss similarity index 100% rename from app/db/src/app/search/components/add-to-page-modal/add-to-page-modal.component.scss rename to app/db/src/app/components/add-to-page-modal/add-to-page-modal.component.scss diff --git a/app/db/src/app/search/components/add-to-page-modal/add-to-page-modal.component.ts b/app/db/src/app/components/add-to-page-modal/add-to-page-modal.component.ts similarity index 91% rename from app/db/src/app/search/components/add-to-page-modal/add-to-page-modal.component.ts rename to app/db/src/app/components/add-to-page-modal/add-to-page-modal.component.ts index bdb6f4c2..35c711c3 100644 --- a/app/db/src/app/search/components/add-to-page-modal/add-to-page-modal.component.ts +++ b/app/db/src/app/components/add-to-page-modal/add-to-page-modal.component.ts @@ -2,8 +2,8 @@ import { Component, Inject, ViewChild } from '@angular/core'; import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; import { MatSelectionList } from '@angular/material/list'; import { FormBuilder, FormGroup } from '@angular/forms'; -import { CardItem } from '../../../models/app-state'; -import { AppService } from '../../../services/app.service'; +import { AppService } from '../../services/app.service'; +import { CardItem } from '../../models/card-state'; @Component({ selector: 'app-add-to-page-modal-modal', diff --git a/app/db/src/app/common/components/card.component.ts b/app/db/src/app/components/card.component.ts similarity index 80% rename from app/db/src/app/common/components/card.component.ts rename to app/db/src/app/components/card.component.ts index be1bd8b8..a18d75dc 100644 --- a/app/db/src/app/common/components/card.component.ts +++ b/app/db/src/app/components/card.component.ts @@ -1,19 +1,16 @@ import { EventEmitter, Output, Input, ElementRef, Component } from '@angular/core'; -import { CardItem, OpenData } from '../../models/app-state'; import { Observable } from 'rxjs'; import { MatDialog } from '@angular/material/dialog'; -import { SubscriberComponent } from './subscriber.component'; +import { SubscriberBase } from '../common/subscriber-base'; import { AppService } from 'src/app/services/app.service'; -import { ListDirection } from '../list-direction'; -import { AddToPageModalComponent } from '../../search/components/add-to-page-modal/add-to-page-modal.component'; +import { ListDirection } from '../common/list-direction'; +import { AddToPageModalComponent } from '../components/add-to-page-modal/add-to-page-modal.component'; +import { CardItem } from '../models/card-state'; @Component({ template: '', }) -export class CardComponent extends SubscriberComponent { - @Output() - onItemClicked = new EventEmitter(); - +export class CardComponent extends SubscriberBase { @Output() onClose = new EventEmitter(); diff --git a/app/db/src/app/search/components/note/edit-modal/note-edit-modal.component.html b/app/db/src/app/components/note/edit-modal/note-edit-modal.component.html similarity index 100% rename from app/db/src/app/search/components/note/edit-modal/note-edit-modal.component.html rename to app/db/src/app/components/note/edit-modal/note-edit-modal.component.html diff --git a/app/db/src/app/search/components/note/edit-modal/note-edit-modal.component.scss b/app/db/src/app/components/note/edit-modal/note-edit-modal.component.scss similarity index 100% rename from app/db/src/app/search/components/note/edit-modal/note-edit-modal.component.scss rename to app/db/src/app/components/note/edit-modal/note-edit-modal.component.scss diff --git a/app/db/src/app/search/components/note/edit-modal/note-edit-modal.component.ts b/app/db/src/app/components/note/edit-modal/note-edit-modal.component.ts similarity index 87% rename from app/db/src/app/search/components/note/edit-modal/note-edit-modal.component.ts rename to app/db/src/app/components/note/edit-modal/note-edit-modal.component.ts index d087f7c5..28ad30bb 100644 --- a/app/db/src/app/search/components/note/edit-modal/note-edit-modal.component.ts +++ b/app/db/src/app/components/note/edit-modal/note-edit-modal.component.ts @@ -1,11 +1,13 @@ import { Component, Inject } from '@angular/core'; import { FormGroup, FormBuilder } from '@angular/forms'; import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog'; -import { CardItem } from '../../../../models/app-state'; -import { NoteItem } from '../../../../models/note-state'; -import { AppService } from '../../../../services/app.service'; + import { UUID } from 'angular2-uuid'; +import { NoteItem } from 'src/app/models/note-state'; +import { AppService } from 'src/app/services/app.service'; +import { CardItem } from 'src/app/models/card-state'; + @Component({ selector: 'app-note-edit-modal', templateUrl: 'note-edit-modal.component.html', diff --git a/app/db/src/app/search/components/note/note-card.component.html b/app/db/src/app/components/note/note-card.component.html similarity index 100% rename from app/db/src/app/search/components/note/note-card.component.html rename to app/db/src/app/components/note/note-card.component.html diff --git a/app/db/src/app/search/components/note/note-card.component.scss b/app/db/src/app/components/note/note-card.component.scss similarity index 100% rename from app/db/src/app/search/components/note/note-card.component.scss rename to app/db/src/app/components/note/note-card.component.scss diff --git a/app/db/src/app/search/components/note/note-card.component.ts b/app/db/src/app/components/note/note-card.component.ts similarity index 82% rename from app/db/src/app/search/components/note/note-card.component.ts rename to app/db/src/app/components/note/note-card.component.ts index ba88ab4c..b9d2e6bd 100644 --- a/app/db/src/app/search/components/note/note-card.component.ts +++ b/app/db/src/app/components/note/note-card.component.ts @@ -1,10 +1,10 @@ import { Component, ViewChild, ElementRef, OnInit } from '@angular/core'; import { MatDialog } from '@angular/material/dialog'; import { NoteEditModalComponent } from './edit-modal/note-edit-modal.component'; -import { CardComponent } from '../../../common/components/card.component'; -import { AppService } from '../../../services/app.service'; -import { NoteItem } from '../../../models/note-state'; -import { BibleReference } from 'src/app/common/bible-reference'; +import { CardComponent } from '../../components/card.component'; +import { AppService } from '../../services/app.service'; +import { BibleReference } from '../../common/bible-reference'; +import { NoteItem } from '../../models/note-state'; @Component({ selector: 'app-note-card', diff --git a/app/db/src/app/common/components/ok-cancel-modal/ok-cancel-modal.component.html b/app/db/src/app/components/ok-cancel-modal/ok-cancel-modal.component.html similarity index 100% rename from app/db/src/app/common/components/ok-cancel-modal/ok-cancel-modal.component.html rename to app/db/src/app/components/ok-cancel-modal/ok-cancel-modal.component.html diff --git a/app/db/src/app/common/components/ok-cancel-modal/ok-cancel-modal.component.scss b/app/db/src/app/components/ok-cancel-modal/ok-cancel-modal.component.scss similarity index 100% rename from app/db/src/app/common/components/ok-cancel-modal/ok-cancel-modal.component.scss rename to app/db/src/app/components/ok-cancel-modal/ok-cancel-modal.component.scss diff --git a/app/db/src/app/common/components/ok-cancel-modal/ok-cancel-modal.component.ts b/app/db/src/app/components/ok-cancel-modal/ok-cancel-modal.component.ts similarity index 100% rename from app/db/src/app/common/components/ok-cancel-modal/ok-cancel-modal.component.ts rename to app/db/src/app/components/ok-cancel-modal/ok-cancel-modal.component.ts diff --git a/app/db/src/app/search/components/page-edit-modal/page-edit-modal.component.html b/app/db/src/app/components/page-edit-modal/page-edit-modal.component.html similarity index 100% rename from app/db/src/app/search/components/page-edit-modal/page-edit-modal.component.html rename to app/db/src/app/components/page-edit-modal/page-edit-modal.component.html diff --git a/app/db/src/app/search/components/page-edit-modal/page-edit-modal.component.scss b/app/db/src/app/components/page-edit-modal/page-edit-modal.component.scss similarity index 100% rename from app/db/src/app/search/components/page-edit-modal/page-edit-modal.component.scss rename to app/db/src/app/components/page-edit-modal/page-edit-modal.component.scss diff --git a/app/db/src/app/search/components/page-edit-modal/page-edit-modal.component.ts b/app/db/src/app/components/page-edit-modal/page-edit-modal.component.ts similarity index 93% rename from app/db/src/app/search/components/page-edit-modal/page-edit-modal.component.ts rename to app/db/src/app/components/page-edit-modal/page-edit-modal.component.ts index bd035761..60844b75 100644 --- a/app/db/src/app/search/components/page-edit-modal/page-edit-modal.component.ts +++ b/app/db/src/app/components/page-edit-modal/page-edit-modal.component.ts @@ -1,7 +1,7 @@ import { Component, Inject } from '@angular/core'; import { FormGroup, FormBuilder } from '@angular/forms'; import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; -import { AppService } from '../../../services/app.service'; +import { AppService } from '../../services/app.service'; @Component({ selector: 'app-page-edit-modal', diff --git a/app/db/src/app/search/components/passage/passage-card.component.html b/app/db/src/app/components/passage/passage-card.component.html similarity index 100% rename from app/db/src/app/search/components/passage/passage-card.component.html rename to app/db/src/app/components/passage/passage-card.component.html diff --git a/app/db/src/app/search/components/passage/passage-card.component.scss b/app/db/src/app/components/passage/passage-card.component.scss similarity index 100% rename from app/db/src/app/search/components/passage/passage-card.component.scss rename to app/db/src/app/components/passage/passage-card.component.scss diff --git a/app/db/src/app/search/components/passage/passage-card.component.ts b/app/db/src/app/components/passage/passage-card.component.ts similarity index 94% rename from app/db/src/app/search/components/passage/passage-card.component.ts rename to app/db/src/app/components/passage/passage-card.component.ts index ab98b4a8..9d6839a8 100644 --- a/app/db/src/app/search/components/passage/passage-card.component.ts +++ b/app/db/src/app/components/passage/passage-card.component.ts @@ -1,11 +1,11 @@ import { Component, OnInit, ElementRef, ViewChild, ChangeDetectionStrategy } from '@angular/core'; import { MatDialog } from '@angular/material/dialog'; -import { BibleReference, Overlap } from '../../../common/bible-reference'; -import { AppService } from '../../../services/app.service'; -import { CardComponent } from '../../../common/components/card.component'; -import { Paragraph } from '../../../models/passage-state'; import { StrongsModalComponent } from '../strongs/modal/strongs-modal.component'; import { NoteItem } from 'src/app/models/note-state'; +import { CardComponent } from 'src/app/components/card.component'; +import { BibleReference, Overlap } from 'src/app/common/bible-reference'; +import { AppService } from 'src/app/services/app.service'; +import { Paragraph } from 'src/app/models/passage-state'; @Component({ selector: 'app-passage-card', diff --git a/app/db/src/app/common/components/settings/settings.component.html b/app/db/src/app/components/settings/settings.component.html similarity index 100% rename from app/db/src/app/common/components/settings/settings.component.html rename to app/db/src/app/components/settings/settings.component.html diff --git a/app/db/src/app/common/components/settings/settings.component.scss b/app/db/src/app/components/settings/settings.component.scss similarity index 100% rename from app/db/src/app/common/components/settings/settings.component.scss rename to app/db/src/app/components/settings/settings.component.scss diff --git a/app/db/src/app/common/components/settings/settings.component.ts b/app/db/src/app/components/settings/settings.component.ts similarity index 92% rename from app/db/src/app/common/components/settings/settings.component.ts rename to app/db/src/app/components/settings/settings.component.ts index 6bb96585..0cc44ec5 100644 --- a/app/db/src/app/common/components/settings/settings.component.ts +++ b/app/db/src/app/components/settings/settings.component.ts @@ -9,23 +9,24 @@ import { AngularFireAuth } from '@angular/fire/auth'; import { auth } from 'firebase/app'; import { Storable } from 'src/app/common/storable'; -import { SubscriberComponent } from '../subscriber.component'; -import { DisplaySettings, SavedPage } from 'src/app/models/app-state'; +import { SubscriberBase } from '../../common/subscriber-base'; +import { DisplaySettings } from 'src/app/models/app-state'; import { CardFonts } from 'src/app/constants'; import { NavService } from 'src/app/services/nav.service'; import { AppService } from 'src/app/services/app.service'; -import { NoteEditModalComponent } from '../../../search/components/note/edit-modal/note-edit-modal.component'; import { OkCancelModalComponent, OkCancelResult } from '../ok-cancel-modal/ok-cancel-modal.component'; -import { PageEditModalComponent } from '../../../search/components/page-edit-modal/page-edit-modal.component'; +import { PageEditModalComponent } from 'src/app/components/page-edit-modal/page-edit-modal.component'; +import { NoteEditModalComponent } from 'src/app/components/note/edit-modal/note-edit-modal.component'; +import { SavedPage } from 'src/app/models/page-state'; @Component({ selector: 'app-settings', templateUrl: './settings.component.html', styleUrls: ['./settings.component.scss'], }) -export class SettingsComponent extends SubscriberComponent { +export class SettingsComponent extends SubscriberBase { displaySettings: DisplaySettings; fonts: string[]; cardFontFamily = ''; diff --git a/app/db/src/app/search/components/strongs/card/strongs-card.component.html b/app/db/src/app/components/strongs/card/strongs-card.component.html similarity index 100% rename from app/db/src/app/search/components/strongs/card/strongs-card.component.html rename to app/db/src/app/components/strongs/card/strongs-card.component.html diff --git a/app/db/src/app/search/components/strongs/card/strongs-card.component.scss b/app/db/src/app/components/strongs/card/strongs-card.component.scss similarity index 100% rename from app/db/src/app/search/components/strongs/card/strongs-card.component.scss rename to app/db/src/app/components/strongs/card/strongs-card.component.scss diff --git a/app/db/src/app/search/components/strongs/card/strongs-card.component.ts b/app/db/src/app/components/strongs/card/strongs-card.component.ts similarity index 89% rename from app/db/src/app/search/components/strongs/card/strongs-card.component.ts rename to app/db/src/app/components/strongs/card/strongs-card.component.ts index d01d1054..bcbe12c0 100644 --- a/app/db/src/app/search/components/strongs/card/strongs-card.component.ts +++ b/app/db/src/app/components/strongs/card/strongs-card.component.ts @@ -1,9 +1,9 @@ import { Component, ElementRef, ViewChild, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { MatDialog } from '@angular/material/dialog'; -import { AppService } from '../../../../services/app.service'; -import { CardComponent } from '../../../../common/components/card.component'; -import { BibleReference } from '../../../../common/bible-reference'; import { StrongsModalComponent } from '../modal/strongs-modal.component'; +import { CardComponent } from 'src/app/components/card.component'; +import { AppService } from 'src/app/services/app.service'; +import { BibleReference } from 'src/app/common/bible-reference'; @Component({ selector: 'app-strongs-card', diff --git a/app/db/src/app/search/components/strongs/modal/strongs-modal.component.html b/app/db/src/app/components/strongs/modal/strongs-modal.component.html similarity index 100% rename from app/db/src/app/search/components/strongs/modal/strongs-modal.component.html rename to app/db/src/app/components/strongs/modal/strongs-modal.component.html diff --git a/app/db/src/app/search/components/strongs/modal/strongs-modal.component.scss b/app/db/src/app/components/strongs/modal/strongs-modal.component.scss similarity index 100% rename from app/db/src/app/search/components/strongs/modal/strongs-modal.component.scss rename to app/db/src/app/components/strongs/modal/strongs-modal.component.scss diff --git a/app/db/src/app/search/components/strongs/modal/strongs-modal.component.ts b/app/db/src/app/components/strongs/modal/strongs-modal.component.ts similarity index 83% rename from app/db/src/app/search/components/strongs/modal/strongs-modal.component.ts rename to app/db/src/app/components/strongs/modal/strongs-modal.component.ts index c20df58b..cd8c1b03 100644 --- a/app/db/src/app/search/components/strongs/modal/strongs-modal.component.ts +++ b/app/db/src/app/components/strongs/modal/strongs-modal.component.ts @@ -1,9 +1,9 @@ import { Component, Inject, ChangeDetectionStrategy } from '@angular/core'; import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; -import { AppService } from '../../../../services/app.service'; -import { CardItem } from '../../../../models/app-state'; -import { BibleReference } from '../../../../common/bible-reference'; import { Observable } from 'rxjs'; +import { AppService } from 'src/app/services/app.service'; +import { BibleReference } from 'src/app/common/bible-reference'; +import { CardItem } from 'src/app/models/card-state'; @Component({ selector: 'app-strongs-modal', diff --git a/app/db/src/app/search/components/strongs/strongs.component.html b/app/db/src/app/components/strongs/strongs.component.html similarity index 100% rename from app/db/src/app/search/components/strongs/strongs.component.html rename to app/db/src/app/components/strongs/strongs.component.html diff --git a/app/db/src/app/search/components/strongs/strongs.component.ts b/app/db/src/app/components/strongs/strongs.component.ts similarity index 91% rename from app/db/src/app/search/components/strongs/strongs.component.ts rename to app/db/src/app/components/strongs/strongs.component.ts index 6fe6b3da..3176853b 100644 --- a/app/db/src/app/search/components/strongs/strongs.component.ts +++ b/app/db/src/app/components/strongs/strongs.component.ts @@ -1,6 +1,6 @@ import { Component, Input, Output, EventEmitter } from '@angular/core'; -import { StrongsResult } from '../../../models/strongs-state'; import { BibleReference } from 'src/app/common/bible-reference'; +import { StrongsResult } from '../../models/strongs-state'; @Component({ selector: 'app-strongs', diff --git a/app/db/src/app/search/components/verse-picker-modal/verse-picker-modal.component.html b/app/db/src/app/components/verse-picker-modal/verse-picker-modal.component.html similarity index 100% rename from app/db/src/app/search/components/verse-picker-modal/verse-picker-modal.component.html rename to app/db/src/app/components/verse-picker-modal/verse-picker-modal.component.html diff --git a/app/db/src/app/search/components/verse-picker-modal/verse-picker-modal.component.scss b/app/db/src/app/components/verse-picker-modal/verse-picker-modal.component.scss similarity index 100% rename from app/db/src/app/search/components/verse-picker-modal/verse-picker-modal.component.scss rename to app/db/src/app/components/verse-picker-modal/verse-picker-modal.component.scss diff --git a/app/db/src/app/search/components/verse-picker-modal/verse-picker-modal.component.ts b/app/db/src/app/components/verse-picker-modal/verse-picker-modal.component.ts similarity index 72% rename from app/db/src/app/search/components/verse-picker-modal/verse-picker-modal.component.ts rename to app/db/src/app/components/verse-picker-modal/verse-picker-modal.component.ts index 930d2ceb..39de91d9 100644 --- a/app/db/src/app/search/components/verse-picker-modal/verse-picker-modal.component.ts +++ b/app/db/src/app/components/verse-picker-modal/verse-picker-modal.component.ts @@ -1,7 +1,7 @@ import { EventEmitter, Component, Output } from '@angular/core'; -import { BibleReference, Book } from '../../../common/bible-reference'; import { AppService } from 'src/app/services/app.service'; import { MatDialogRef } from '@angular/material/dialog'; +import { Book, BibleReference } from 'src/app/common/bible-reference'; @Component({ selector: 'app-verse-picker', @@ -13,10 +13,7 @@ export class VersePickerModalComponent { hasBook = false; book: Book; - constructor( - public appService: AppService, - public dialogRef: MatDialogRef - ) { + constructor(public appService: AppService, public dialogRef: MatDialogRef) { this.hasBook = false; this.books = BibleReference.Books; } @@ -33,9 +30,7 @@ export class VersePickerModalComponent { setChapter(chapter: number) { // close the control, trigger the passage event. - this.appService.getPassage( - new BibleReference(this.book.name + ' ' + chapter) - ); + this.appService.getPassage(new BibleReference(this.book.name + ' ' + chapter)); this.dialogRef.close(); } } diff --git a/app/db/src/app/search/components/words/words-card.component.html b/app/db/src/app/components/words/words-card.component.html similarity index 100% rename from app/db/src/app/search/components/words/words-card.component.html rename to app/db/src/app/components/words/words-card.component.html diff --git a/app/db/src/app/search/components/words/words-card.component.scss b/app/db/src/app/components/words/words-card.component.scss similarity index 100% rename from app/db/src/app/search/components/words/words-card.component.scss rename to app/db/src/app/components/words/words-card.component.scss diff --git a/app/db/src/app/search/components/words/words-card.component.ts b/app/db/src/app/components/words/words-card.component.ts similarity index 79% rename from app/db/src/app/search/components/words/words-card.component.ts rename to app/db/src/app/components/words/words-card.component.ts index 68d04f73..405a8564 100644 --- a/app/db/src/app/search/components/words/words-card.component.ts +++ b/app/db/src/app/components/words/words-card.component.ts @@ -1,9 +1,9 @@ import { Component, ElementRef, ViewChild, ChangeDetectionStrategy } from '@angular/core'; -import { AppService } from '../../../services/app.service'; -import { CardComponent } from '../../../common/components/card.component'; -import { WordLookupResult } from '../../../models/words-state'; import { MatDialog } from '@angular/material/dialog'; import { BibleReference } from 'src/app/common/bible-reference'; +import { CardComponent } from 'src/app/components/card.component'; +import { AppService } from 'src/app/services/app.service'; +import { WordLookupResult } from 'src/app/models/words-state'; @Component({ selector: 'app-words-card', @@ -30,14 +30,6 @@ export class WordsCardComponent extends CardComponent { this.copyToClip(text, html); } - openItem(p: string) { - this.onItemClicked.emit({ - card: this.cardItem, - qry: p, - from_search_bar: false, - }); - } - makePassage(p: string) { return BibleReference.makePassageFromReferenceKey(p); } diff --git a/app/db/src/app/models/app-state.ts b/app/db/src/app/models/app-state.ts index e53d3e9e..4b386495 100644 --- a/app/db/src/app/models/app-state.ts +++ b/app/db/src/app/models/app-state.ts @@ -1,9 +1,8 @@ import { IStorable } from '../common/storable'; import { NoteItem } from './note-state'; -import { BiblePassageResult } from './passage-state'; -import { StrongsResult } from './strongs-state'; -import { WordLookupResult } from './words-state'; import { Overlap } from '../common/bible-reference'; +import { CardItem, CardIcons } from './card-state'; +import { SavedPage, Page } from './page-state'; export interface AppState { readonly currentSavedPage: SavedPage; @@ -24,8 +23,6 @@ export interface Error { readonly msg: string; } -export type Data = BiblePassageResult | StrongsResult | WordLookupResult | NoteItem; - export interface User { readonly uid: string; readonly displayName: string | null; @@ -33,13 +30,6 @@ export interface User { readonly providerId: string; } -export interface CardIcons { - readonly words: string; - readonly passage: string; - readonly strongs: string; - readonly note: string; -} - export interface PageSettings { readonly mergeStrategy: Overlap; } @@ -62,38 +52,3 @@ export interface DisplaySettings { readonly syncCardsAcrossDevices: boolean; } - -export type OpenData = { - card: CardItem; - qry: string; - from_search_bar: boolean; -}; - -export interface SavedPage { - readonly queries: readonly CardItem[]; - readonly title: string; - readonly id: string; -} - -export enum CardType { - Passage, - Note, - Word, - Strongs, - Error, -} - -export interface CardItem { - readonly qry: string; - readonly data: Data; - readonly type: CardType; - readonly dict: string; -} - -export class Page { - readonly title: string; - // readonly component: any; - // readonly params: any; - readonly icon?: string; - readonly route: string; -} diff --git a/app/db/src/app/models/card-state.ts b/app/db/src/app/models/card-state.ts new file mode 100644 index 00000000..74085bdc --- /dev/null +++ b/app/db/src/app/models/card-state.ts @@ -0,0 +1,28 @@ +import { BiblePassageResult } from './passage-state'; +import { StrongsResult } from './strongs-state'; +import { WordLookupResult } from './words-state'; +import { NoteItem } from './note-state'; + +export type Data = BiblePassageResult | StrongsResult | WordLookupResult | NoteItem; + +export enum CardType { + Passage, + Note, + Word, + Strongs, + Error, +} + +export interface CardItem { + readonly qry: string; + readonly data: Data; + readonly type: CardType; + readonly dict: string; +} + +export interface CardIcons { + readonly words: string; + readonly passage: string; + readonly strongs: string; + readonly note: string; +} diff --git a/app/db/src/app/models/page-state.ts b/app/db/src/app/models/page-state.ts new file mode 100644 index 00000000..f20716d3 --- /dev/null +++ b/app/db/src/app/models/page-state.ts @@ -0,0 +1,13 @@ +import { CardItem } from './card-state'; + +export interface SavedPage { + readonly queries: readonly CardItem[]; + readonly title: string; + readonly id: string; +} + +export class Page { + readonly title: string; + readonly icon?: string; + readonly route: string; +} diff --git a/app/db/src/app/search/search-page/search.page.html b/app/db/src/app/pages/search/search.page.html similarity index 90% rename from app/db/src/app/search/search-page/search.page.html rename to app/db/src/app/pages/search/search.page.html index f3b9f9ee..e213d2f2 100644 --- a/app/db/src/app/search/search-page/search.page.html +++ b/app/db/src/app/pages/search/search.page.html @@ -41,25 +41,21 @@ *ngIf="isPassage(item)" [cardItem]="item" (onClose)="removeCard(item)" - (onItemClicked)="getItemsNextToCard($event)" > diff --git a/app/db/src/app/search/search-page/search.page.scss b/app/db/src/app/pages/search/search.page.scss similarity index 100% rename from app/db/src/app/search/search-page/search.page.scss rename to app/db/src/app/pages/search/search.page.scss diff --git a/app/db/src/app/search/search-page/search.page.ts b/app/db/src/app/pages/search/search.page.ts similarity index 92% rename from app/db/src/app/search/search-page/search.page.ts rename to app/db/src/app/pages/search/search.page.ts index baf74851..9603a630 100644 --- a/app/db/src/app/search/search-page/search.page.ts +++ b/app/db/src/app/pages/search/search.page.ts @@ -5,10 +5,10 @@ import { MatDialog } from '@angular/material/dialog'; import { MatAutocompleteTrigger, MatAutocomplete } from '@angular/material/autocomplete'; import { AppService } from '../../services/app.service'; import { NavService } from '../../services/nav.service'; -import { VersePickerModalComponent } from '../components/verse-picker-modal/verse-picker-modal.component'; -import { SubscriberComponent } from '../../common/components/subscriber.component'; +import { SubscriberBase } from '../../common/subscriber-base'; import { BibleReference } from '../../common/bible-reference'; -import { OpenData, CardItem, CardType } from '../../models/app-state'; +import { VersePickerModalComponent } from '../../components/verse-picker-modal/verse-picker-modal.component'; +import { CardItem, CardType } from 'src/app/models/card-state'; @Component({ selector: 'app-search-page', @@ -16,7 +16,7 @@ import { OpenData, CardItem, CardType } from '../../models/app-state'; styleUrls: ['./search.page.scss'], changeDetection: ChangeDetectionStrategy.OnPush, }) -export class SearchPage extends SubscriberComponent implements OnInit { +export class SearchPage extends SubscriberBase implements OnInit { cards$ = this.appService.select((state) => state.cards); suggestions$ = this.appService.select((state) => state.autocomplete); @@ -97,8 +97,6 @@ export class SearchPage extends SubscriberComponent implements OnInit { //#region Search - getItemsNextToCard(data: OpenData) {} - removeCard(card: CardItem) { this.appService.removeCard(card); } diff --git a/app/db/src/app/services/app-state-actions.ts b/app/db/src/app/services/app-state-actions.ts index 38b08579..f66cd9b3 100644 --- a/app/db/src/app/services/app-state-actions.ts +++ b/app/db/src/app/services/app-state-actions.ts @@ -1,7 +1,9 @@ -import { SavedPage, Error, CardItem, DisplaySettings, User } from '../models/app-state'; +import { Error, DisplaySettings, User } from '../models/app-state'; import { IStorable } from '../common/storable'; import { NoteItem } from '../models/note-state'; import { ListDirection } from '../common/list-direction'; +import { SavedPage } from '../models/page-state'; +import { CardItem } from '../models/card-state'; export class AppActionFactory { static newGetSavedPage(pageId: string) { diff --git a/app/db/src/app/services/app-state-initial-state.ts b/app/db/src/app/services/app-state-initial-state.ts index c59343ba..ca5771fc 100644 --- a/app/db/src/app/services/app-state-initial-state.ts +++ b/app/db/src/app/services/app-state-initial-state.ts @@ -1,8 +1,9 @@ import { UUID } from 'angular2-uuid'; -import { AppState, CardType } from '../models/app-state'; +import { AppState } from '../models/app-state'; import { PageTitles, PageIcons } from '../constants'; import { Overlap } from '../common/bible-reference'; +import { CardType } from '../models/card-state'; export const initialState: AppState = { user: null, diff --git a/app/db/src/app/services/app-state-reducer.ts b/app/db/src/app/services/app-state-reducer.ts index cc5dfda2..a8ea3340 100644 --- a/app/db/src/app/services/app-state-reducer.ts +++ b/app/db/src/app/services/app-state-reducer.ts @@ -1,6 +1,6 @@ import { UUID } from 'angular2-uuid'; -import { AppState, SavedPage, DisplaySettings, CardType, CardItem } from '../models/app-state'; +import { AppState, DisplaySettings } from '../models/app-state'; import { IStorable, Storable } from '../common/storable'; import { NoteItem } from '../models/note-state'; @@ -8,6 +8,8 @@ import { ListDirection } from '../common/list-direction'; import { AppAction } from './app-state-actions'; import { initialState } from './app-state-initial-state'; +import { SavedPage } from '../models/page-state'; +import { CardType, CardItem } from '../models/card-state'; function maybeMutateStorable( state: AppState, diff --git a/app/db/src/app/services/app.service.ts b/app/db/src/app/services/app.service.ts index 4cae26ff..732179f3 100644 --- a/app/db/src/app/services/app.service.ts +++ b/app/db/src/app/services/app.service.ts @@ -1,6 +1,6 @@ import { HttpClient } from '@angular/common/http'; import { Injectable } from '@angular/core'; -import { SavedPage, CardItem, DisplaySettings, User, CardType } from '../models/app-state'; +import { DisplaySettings, User } from '../models/app-state'; import { Section, BibleReference, Overlap } from '../common/bible-reference'; import { createStateService } from '../common/state-service'; import { StorageMap } from '@ngx-pwa/local-storage'; @@ -20,6 +20,8 @@ import { HashTable } from '../common/hashtable'; import { ListDirection } from '../common/list-direction'; import { reducer } from './app-state-reducer'; import { initialState } from './app-state-initial-state'; +import { CardItem, CardType } from '../models/card-state'; +import { SavedPage } from '../models/page-state'; @Injectable({ providedIn: 'root', diff --git a/app/db/src/app/services/storage.service.ts b/app/db/src/app/services/storage.service.ts index 9063ac80..2af844d1 100644 --- a/app/db/src/app/services/storage.service.ts +++ b/app/db/src/app/services/storage.service.ts @@ -3,15 +3,16 @@ import { StorageMap } from '@ngx-pwa/local-storage'; import { AngularFireDatabase, AngularFireObject } from '@angular/fire/database'; import { IStorable } from '../common/storable'; import { AppService } from './app.service'; -import { DisplaySettings, SavedPage, User } from '../models/app-state'; +import { DisplaySettings, User } from '../models/app-state'; -import { SubscriberComponent } from '../common/components/subscriber.component'; +import { SubscriberBase } from '../common/subscriber-base'; import { NoteItem } from '../models/note-state'; +import { SavedPage } from '../models/page-state'; @Injectable({ providedIn: 'root', }) -export class StorageService extends SubscriberComponent { +export class StorageService extends SubscriberBase { private displaySettingsState$ = this.appService.select((state) => state.displaySettings); private displaySettingsPath = 'displaySettings'; private displaySettingsRemoteObject: AngularFireObject>;