diff --git a/src/app/modules/presentation/monitor/monitor.component.ts b/src/app/modules/presentation/monitor/monitor.component.ts index 3e32b9f..e017d85 100644 --- a/src/app/modules/presentation/monitor/monitor.component.ts +++ b/src/app/modules/presentation/monitor/monitor.component.ts @@ -2,13 +2,14 @@ import {Component, OnInit} from '@angular/core'; import {distinctUntilChanged, map, switchMap, tap} from 'rxjs/operators'; import {ShowService} from '../../shows/services/show.service'; import {SongService} from '../../songs/services/song.service'; -import {Section, TextRenderingService} from '../../songs/services/text-rendering.service'; import {Song} from '../../songs/services/song'; import {GlobalSettingsService} from '../../../services/global-settings.service'; import {Config} from '../../../services/config'; import {Observable} from 'rxjs'; import {ConfigService} from '../../../services/config.service'; import {songSwitch} from '../../../widget-modules/components/song-text/animation'; +import {Section} from '../../songs/services/section'; +import {TextRenderingService} from '../../songs/services/text-rendering.service'; @Component({ selector: 'app-monitor', diff --git a/src/app/modules/presentation/remote/remote.component.ts b/src/app/modules/presentation/remote/remote.component.ts index a823127..0537b66 100644 --- a/src/app/modules/presentation/remote/remote.component.ts +++ b/src/app/modules/presentation/remote/remote.component.ts @@ -4,7 +4,6 @@ import {Show} from '../../shows/services/show'; import {ShowSongService} from '../../shows/services/show-song.service'; import {SongService} from '../../songs/services/song.service'; import {Song} from '../../songs/services/song'; -import {Section, TextRenderingService} from '../../songs/services/text-rendering.service'; import {faDesktop} from '@fortawesome/free-solid-svg-icons/faDesktop'; import {ShowService} from '../../shows/services/show.service'; import {ShowSong} from '../../shows/services/show-song'; @@ -13,6 +12,8 @@ import {FormControl} from '@angular/forms'; import {distinctUntilChanged, map} from 'rxjs/operators'; import {fade} from '../../../animations'; import {delay} from '../../../services/delay'; +import {TextRenderingService} from '../../songs/services/text-rendering.service'; +import {Section} from '../../songs/services/section'; export interface PresentationSong { id: string; diff --git a/src/app/modules/shows/services/docx.service.ts b/src/app/modules/shows/services/docx.service.ts index 0d3f70d..d21faf5 100644 --- a/src/app/modules/shows/services/docx.service.ts +++ b/src/app/modules/shows/services/docx.service.ts @@ -4,7 +4,6 @@ import {ShowService} from './show.service'; import {ShowTypePipe} from '../../../widget-modules/pipes/show-type-translater/show-type.pipe'; import {first} from 'rxjs/operators'; import {ShowSongService} from './show-song.service'; -import {Line, LineType, Section, TextRenderingService} from '../../songs/services/text-rendering.service'; import {Song} from '../../songs/services/song'; import {SongService} from '../../songs/services/song.service'; import {ShowSong} from './show-song'; @@ -14,6 +13,10 @@ import {UserService} from '../../../services/user/user.service'; import {User} from '../../../services/user/user'; import {ConfigService} from '../../../services/config.service'; import {Config} from '../../../services/config'; +import {TextRenderingService} from '../../songs/services/text-rendering.service'; +import {Section} from '../../songs/services/section'; +import {LineType} from '../../songs/services/line-type'; +import {Line} from '../../songs/services/line'; export interface DownloadOptions { copyright?: boolean; diff --git a/src/app/modules/songs/services/chord.ts b/src/app/modules/songs/services/chord.ts new file mode 100644 index 0000000..3e2f61e --- /dev/null +++ b/src/app/modules/songs/services/chord.ts @@ -0,0 +1,7 @@ +export interface Chord { + chord: string; + length: number; + position: number; + slashChord?: string; + add?: string; +} diff --git a/src/app/modules/songs/services/line-type.ts b/src/app/modules/songs/services/line-type.ts new file mode 100644 index 0000000..0cff3f8 --- /dev/null +++ b/src/app/modules/songs/services/line-type.ts @@ -0,0 +1,4 @@ +export enum LineType { + chord, + text, +} diff --git a/src/app/modules/songs/services/line.ts b/src/app/modules/songs/services/line.ts new file mode 100644 index 0000000..b8fe24d --- /dev/null +++ b/src/app/modules/songs/services/line.ts @@ -0,0 +1,8 @@ +import {LineType} from './line-type'; +import {Chord} from './chord'; + +export interface Line { + type: LineType; + text: string; + chords?: Chord[]; +} diff --git a/src/app/modules/songs/services/section-type.ts b/src/app/modules/songs/services/section-type.ts new file mode 100644 index 0000000..9e1cd2e --- /dev/null +++ b/src/app/modules/songs/services/section-type.ts @@ -0,0 +1,5 @@ +export enum SectionType { + Verse, + Chorus, + Bridge, +} diff --git a/src/app/modules/songs/services/section.ts b/src/app/modules/songs/services/section.ts new file mode 100644 index 0000000..487e196 --- /dev/null +++ b/src/app/modules/songs/services/section.ts @@ -0,0 +1,8 @@ +import {SectionType} from './section-type'; +import {Line} from './line'; + +export interface Section { + type: SectionType; + number: number; + lines: Line[]; +} diff --git a/src/app/modules/songs/services/text-rendering.service.ts b/src/app/modules/songs/services/text-rendering.service.ts index a2f665d..02e898a 100644 --- a/src/app/modules/songs/services/text-rendering.service.ts +++ b/src/app/modules/songs/services/text-rendering.service.ts @@ -1,37 +1,11 @@ import {Injectable} from '@angular/core'; import {TransposeService} from './transpose.service'; import {TransposeMode} from './transpose-mode'; - -export enum SectionType { - Verse, - Chorus, - Bridge, -} - -export enum LineType { - chord, - text, -} - -export interface Chord { - chord: string; - length: number; - position: number; - slashChord?: string; - add?: string; -} - -export interface Line { - type: LineType; - text: string; - chords?: Chord[]; -} - -export interface Section { - type: SectionType; - number: number; - lines: Line[]; -} +import {SectionType} from './section-type'; +import {Section} from './section'; +import {LineType} from './line-type'; +import {Chord} from './chord'; +import {Line} from './line'; @Injectable({ providedIn: 'root' diff --git a/src/app/modules/songs/services/transpose.service.ts b/src/app/modules/songs/services/transpose.service.ts index 78d8602..88945fa 100644 --- a/src/app/modules/songs/services/transpose.service.ts +++ b/src/app/modules/songs/services/transpose.service.ts @@ -1,6 +1,8 @@ import {Injectable} from '@angular/core'; -import {Chord, Line, LineType} from './text-rendering.service'; import {getScaleType, scaleMapping} from './key.helper'; +import {LineType} from './line-type'; +import {Chord} from './chord'; +import {Line} from './line'; @Injectable({ providedIn: 'root' diff --git a/src/app/widget-modules/components/song-text/song-text.component.ts b/src/app/widget-modules/components/song-text/song-text.component.ts index 2295f60..6d63a6a 100644 --- a/src/app/widget-modules/components/song-text/song-text.component.ts +++ b/src/app/widget-modules/components/song-text/song-text.component.ts @@ -1,14 +1,12 @@ import {Component, ElementRef, EventEmitter, Input, OnInit, Output, QueryList, ViewChildren} from '@angular/core'; -import { - Line, - LineType, - Section, - SectionType, - TextRenderingService -} from '../../../modules/songs/services/text-rendering.service'; +import {TextRenderingService} from '../../../modules/songs/services/text-rendering.service'; import {faGripLines} from '@fortawesome/free-solid-svg-icons/faGripLines'; import {songSwitch} from './animation'; import {TransposeMode} from '../../../modules/songs/services/transpose-mode'; +import {SectionType} from '../../../modules/songs/services/section-type'; +import {LineType} from '../../../modules/songs/services/line-type'; +import {Section} from '../../../modules/songs/services/section'; +import {Line} from '../../../modules/songs/services/line'; export type ChordMode = 'show' | 'hide' | 'onlyFirst' diff --git a/src/app/widget-modules/pipes/section-type-translator/section-type.pipe.ts b/src/app/widget-modules/pipes/section-type-translator/section-type.pipe.ts index cb2c8a4..56a8780 100644 --- a/src/app/widget-modules/pipes/section-type-translator/section-type.pipe.ts +++ b/src/app/widget-modules/pipes/section-type-translator/section-type.pipe.ts @@ -1,5 +1,5 @@ import {Pipe, PipeTransform} from '@angular/core'; -import {SectionType} from '../../../modules/songs/services/text-rendering.service'; +import {SectionType} from '../../../modules/songs/services/section-type'; @Pipe({ name: 'sectionType'