mirror of
https://gitlab.com/openlp/web-remote.git
synced 2024-12-22 19:32:49 +00:00
Merge branch 'issue-8' into 'master'
Fix up some issues in the themes component Closes #8 See merge request openlp/web-remote!18
This commit is contained in:
commit
22a1a1cab3
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@openlp/web-remote",
|
"name": "@openlp/web-remote",
|
||||||
"version": "0.9.2",
|
"version": "0.9.3",
|
||||||
"description": "The web remote for OpenLP, written in Angular",
|
"description": "The web remote for OpenLP, written in Angular",
|
||||||
"keywords": ["OpenLP", "Angular", "Remote"],
|
"keywords": ["OpenLP", "Angular", "Remote"],
|
||||||
"homepage": "https://openlp.org/",
|
"homepage": "https://openlp.org/",
|
||||||
|
@ -9,11 +9,11 @@
|
|||||||
<mat-sidenav-container>
|
<mat-sidenav-container>
|
||||||
<mat-sidenav #menu mode="over">
|
<mat-sidenav #menu mode="over">
|
||||||
<mat-nav-list>
|
<mat-nav-list>
|
||||||
<a mat-list-item (click)="menu.close()" routerLink="/service">Service</a>
|
<a mat-list-item (click)="menu.close()" routerLink="/service"><mat-icon>list</mat-icon> Service</a>
|
||||||
<a mat-list-item (click)="menu.close()" routerLink="/slides">Slides</a>
|
<a mat-list-item (click)="menu.close()" routerLink="/slides"><mat-icon>collections</mat-icon> Slides</a>
|
||||||
<a mat-list-item (click)="menu.close()" routerLink="/alerts">Alerts</a>
|
<a mat-list-item (click)="menu.close()" routerLink="/alerts"><mat-icon>error</mat-icon> Alerts</a>
|
||||||
<a mat-list-item (click)="menu.close()" routerLink="/search">Search</a>
|
<a mat-list-item (click)="menu.close()" routerLink="/search"><mat-icon>search</mat-icon> Search</a>
|
||||||
<a mat-list-item (click)="menu.close()" routerLink="/themes">Themes</a>
|
<a mat-list-item (click)="menu.close()" routerLink="/themes"><mat-icon>image_search</mat-icon> Themes</a>
|
||||||
<mat-divider></mat-divider>
|
<mat-divider></mat-divider>
|
||||||
<a mat-list-item (click)="menu.close()" routerLink="/main">Main View</a>
|
<a mat-list-item (click)="menu.close()" routerLink="/main">Main View</a>
|
||||||
<a mat-list-item (click)="menu.close()" routerLink="/stage">Stage View</a>
|
<a mat-list-item (click)="menu.close()" routerLink="/stage">Stage View</a>
|
||||||
@ -56,13 +56,28 @@
|
|||||||
<mat-icon>videocam</mat-icon>
|
<mat-icon>videocam</mat-icon>
|
||||||
</button>
|
</button>
|
||||||
</mat-toolbar>
|
</mat-toolbar>
|
||||||
<mat-toolbar *ngIf="fastSwitching" class="fast-access">
|
<nav mat-tab-nav-bar mat-stretch-tabs class="fast-switcher" *ngIf="fastSwitching">
|
||||||
<button mat-icon-button routerLink="/service"><mat-icon>list</mat-icon></button>
|
<a mat-tab-link
|
||||||
<button mat-icon-button routerLink="/slides"><mat-icon>collections</mat-icon></button>
|
routerLink="/service"
|
||||||
<button mat-icon-button routerLink="/alerts"><mat-icon>error</mat-icon></button>
|
routerLinkActive #serviceRoute="routerLinkActive"
|
||||||
<button mat-icon-button routerLink="/search"><mat-icon>search</mat-icon></button>
|
[active]="serviceRoute.isActive"><mat-icon>list</mat-icon></a>
|
||||||
<button mat-icon-button routerLink="/themes"><mat-icon>image_search</mat-icon></button>
|
<a mat-tab-link
|
||||||
</mat-toolbar>
|
routerLink="/slides"
|
||||||
|
routerLinkActive #slidesRoute="routerLinkActive"
|
||||||
|
[active]="slidesRoute.isActive"><mat-icon>collections</mat-icon></a>
|
||||||
|
<a mat-tab-link
|
||||||
|
routerLink="/alerts"
|
||||||
|
routerLinkActive #alertsRoute="routerLinkActive"
|
||||||
|
[active]="alertsRoute.isActive"><mat-icon>error</mat-icon></a>
|
||||||
|
<a mat-tab-link
|
||||||
|
routerLink="/search"
|
||||||
|
routerLinkActive #searchRoute="routerLinkActive"
|
||||||
|
[active]="searchRoute.isActive"><mat-icon>search</mat-icon></a>
|
||||||
|
<a mat-tab-link
|
||||||
|
routerLink="/themes"
|
||||||
|
routerLinkActive #themesRoute="routerLinkActive"
|
||||||
|
[active]="themesRoute.isActive"><mat-icon>image_search</mat-icon></a>
|
||||||
|
</nav>
|
||||||
</footer>
|
</footer>
|
||||||
</mat-sidenav-content>
|
</mat-sidenav-content>
|
||||||
</mat-sidenav-container>
|
</mat-sidenav-container>
|
||||||
|
@ -28,9 +28,12 @@ mat-slide-toggle {
|
|||||||
visibility: hidden;
|
visibility: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
.fast-access {
|
.fast-switcher {
|
||||||
display: flex;
|
background-color: whitesmoke;
|
||||||
justify-content: space-around;
|
}
|
||||||
|
|
||||||
|
.fast-switcher a.mat-tab-link > span.text {
|
||||||
|
margin-left: 0.3rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.footer {
|
.footer {
|
||||||
@ -40,8 +43,8 @@ mat-slide-toggle {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Make the Component injected by Router Outlet full height:
|
* Make the Component injected by Router Outlet full height:
|
||||||
*/
|
*/
|
||||||
main {
|
main {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
@ -13,7 +13,7 @@ import { version } from '../../package.json';
|
|||||||
styleUrls: ['./app.component.scss']
|
styleUrls: ['./app.component.scss']
|
||||||
})
|
})
|
||||||
export class AppComponent implements OnInit {
|
export class AppComponent implements OnInit {
|
||||||
fastSwitching = false;
|
private _fastSwitching = false;
|
||||||
state = new State();
|
state = new State();
|
||||||
showLogin = false;
|
showLogin = false;
|
||||||
pageTitle = 'OpenLP Remote';
|
pageTitle = 'OpenLP Remote';
|
||||||
@ -29,6 +29,18 @@ export class AppComponent implements OnInit {
|
|||||||
this.openlpService.retrieveSystemInformation().subscribe(res => this.showLogin = res.login_required);
|
this.openlpService.retrieveSystemInformation().subscribe(res => this.showLogin = res.login_required);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
get fastSwitching(): boolean {
|
||||||
|
if (localStorage.getItem('OpenLP-fastSwitching')) {
|
||||||
|
this._fastSwitching = JSON.parse(localStorage.getItem('OpenLP-fastSwitching'));
|
||||||
|
}
|
||||||
|
return this._fastSwitching;
|
||||||
|
}
|
||||||
|
|
||||||
|
set fastSwitching(value: boolean) {
|
||||||
|
this._fastSwitching = value;
|
||||||
|
localStorage.setItem('OpenLP-fastSwitching', JSON.stringify(value));
|
||||||
|
}
|
||||||
|
|
||||||
login() {
|
login() {
|
||||||
const dialogRef = this.dialog.open(LoginComponent, {
|
const dialogRef = this.dialog.open(LoginComponent, {
|
||||||
width: '250px'
|
width: '250px'
|
||||||
|
@ -1,21 +1,20 @@
|
|||||||
import { BrowserModule, Title } from '@angular/platform-browser';
|
import { BrowserModule, Title } from '@angular/platform-browser';
|
||||||
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
|
|
||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
|
|
||||||
import { MatCardModule, MatDialogModule, MatSnackBarModule } from '@angular/material';
|
|
||||||
import { MatListModule } from '@angular/material/list';
|
|
||||||
import { MatSidenavModule } from '@angular/material/sidenav';
|
|
||||||
import { MatIconModule } from '@angular/material/icon';
|
|
||||||
import { MatToolbarModule } from '@angular/material/toolbar';
|
|
||||||
import { MatGridListModule } from '@angular/material/grid-list';
|
|
||||||
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
||||||
import { MatSelectModule } from '@angular/material/select';
|
|
||||||
import { MatButtonModule, MatButtonToggleModule } from '@angular/material';
|
import { MatButtonModule, MatButtonToggleModule } from '@angular/material';
|
||||||
|
import { MatCardModule, MatDialogModule, MatSnackBarModule } from '@angular/material';
|
||||||
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
||||||
|
import { MatGridListModule } from '@angular/material/grid-list';
|
||||||
|
import { MatIconModule } from '@angular/material/icon';
|
||||||
import { MatInputModule } from '@angular/material';
|
import { MatInputModule } from '@angular/material';
|
||||||
import { MatTooltipModule } from '@angular/material/tooltip';
|
import { MatListModule } from '@angular/material/list';
|
||||||
|
import { MatSelectModule } from '@angular/material/select';
|
||||||
|
import { MatSidenavModule } from '@angular/material/sidenav';
|
||||||
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
||||||
|
import { MatTabsModule } from '@angular/material/tabs';
|
||||||
|
import { MatToolbarModule } from '@angular/material/toolbar';
|
||||||
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
||||||
|
|
||||||
import { AppComponent } from './app.component';
|
import { AppComponent } from './app.component';
|
||||||
import { PageTitleService } from './page-title.service';
|
import { PageTitleService } from './page-title.service';
|
||||||
@ -53,23 +52,24 @@ import { ThemesComponent } from './components/themes/themes.component';
|
|||||||
BrowserModule,
|
BrowserModule,
|
||||||
BrowserAnimationsModule,
|
BrowserAnimationsModule,
|
||||||
HttpClientModule,
|
HttpClientModule,
|
||||||
AppRoutingModule,
|
|
||||||
MatButtonToggleModule,
|
|
||||||
MatListModule,
|
|
||||||
MatSidenavModule,
|
|
||||||
MatIconModule,
|
|
||||||
MatToolbarModule,
|
|
||||||
MatGridListModule,
|
|
||||||
FormsModule,
|
FormsModule,
|
||||||
MatFormFieldModule,
|
AppRoutingModule,
|
||||||
MatSelectModule,
|
|
||||||
MatButtonModule,
|
MatButtonModule,
|
||||||
MatInputModule,
|
MatButtonToggleModule,
|
||||||
MatTooltipModule,
|
|
||||||
MatSlideToggleModule,
|
|
||||||
MatCardModule,
|
MatCardModule,
|
||||||
MatDialogModule,
|
MatDialogModule,
|
||||||
MatSnackBarModule
|
MatFormFieldModule,
|
||||||
|
MatGridListModule,
|
||||||
|
MatIconModule,
|
||||||
|
MatInputModule,
|
||||||
|
MatListModule,
|
||||||
|
MatSelectModule,
|
||||||
|
MatSidenavModule,
|
||||||
|
MatSlideToggleModule,
|
||||||
|
MatSnackBarModule,
|
||||||
|
MatTabsModule,
|
||||||
|
MatToolbarModule,
|
||||||
|
MatTooltipModule
|
||||||
],
|
],
|
||||||
providers: [
|
providers: [
|
||||||
PageTitleService,
|
PageTitleService,
|
||||||
|
@ -26,7 +26,7 @@ export class ChordViewComponent extends StageViewComponent {
|
|||||||
if (!slide) {
|
if (!slide) {
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
let chordpro: string = slide.chords_text;
|
let chordpro: string = slide.chords;
|
||||||
chordpro = chordpro.replace(/<span class="\w*\s*\w*">/g, '');
|
chordpro = chordpro.replace(/<span class="\w*\s*\w*">/g, '');
|
||||||
chordpro = chordpro.replace(/<span>/g, '');
|
chordpro = chordpro.replace(/<span>/g, '');
|
||||||
chordpro = chordpro.replace(/<\/span>/g, '');
|
chordpro = chordpro.replace(/<\/span>/g, '');
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
<mat-card *ngFor="let item of items; let counter = index;" (click)="onItemSelected(counter)" [tabindex]="counter" class="service-item">
|
<mat-card *ngFor="let item of items; let counter = index;" (click)="onItemSelected(item)" [tabindex]="item.id" class="service-item">
|
||||||
<mat-icon>{{ getIcon(item) }}</mat-icon> {{ item.title }}
|
<mat-icon>{{ getIcon(item) }}</mat-icon> {{ item.title }}
|
||||||
</mat-card>
|
</mat-card>
|
||||||
|
@ -20,7 +20,7 @@ export class ServiceComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
onItemSelected(item) {
|
onItemSelected(item) {
|
||||||
this.openlpService.setServiceItem(item).subscribe(res => {});
|
this.openlpService.setServiceItem(item.id).subscribe();
|
||||||
this.router.navigate(['slides']);
|
this.router.navigate(['slides']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -22,8 +22,8 @@ export class SlidesComponent implements OnInit {
|
|||||||
this.getSlides();
|
this.getSlides();
|
||||||
}
|
}
|
||||||
|
|
||||||
onSlideSelected(item) {
|
onSlideSelected(id) {
|
||||||
this.openlpService.setSlide(item).subscribe(res => {});
|
this.openlpService.setSlide(id).subscribe();
|
||||||
}
|
}
|
||||||
|
|
||||||
getSlides() {
|
getSlides() {
|
||||||
|
@ -50,7 +50,7 @@ export class StageViewComponent implements OnInit {
|
|||||||
* So we start with the first tag and on each tag change we push the new one.
|
* So we start with the first tag and on each tag change we push the new one.
|
||||||
*
|
*
|
||||||
* If we find the same tag, we check to see if the current slide is a repition.
|
* If we find the same tag, we check to see if the current slide is a repition.
|
||||||
* In case of a repition we also add a new tag.
|
* In case of a repetition we also add a new tag.
|
||||||
*
|
*
|
||||||
* TODO This approach should work for most cases. It is a primary candidate for a test :-)
|
* TODO This approach should work for most cases. It is a primary candidate for a test :-)
|
||||||
*/
|
*/
|
||||||
|
@ -1,18 +1,22 @@
|
|||||||
<p *ngIf="themeLevelSwitching">
|
<form #themeForm="ngForm">
|
||||||
<b>Theme level:</b>
|
<h4>Theme Options</h4>
|
||||||
<mat-button-toggle-group [value]="theme_level" (change)="onThemeLevelSelected(themeLevelToggle.value)" #themeLevelToggle="matButtonToggleGroup">
|
<p>
|
||||||
<mat-button-toggle value="global">Global</mat-button-toggle>
|
<mat-form-field>
|
||||||
<mat-button-toggle value="service">Service</mat-button-toggle>
|
<mat-label>Theme level</mat-label>
|
||||||
</mat-button-toggle-group>
|
<mat-select [(value)]="themeLevel">
|
||||||
</p>
|
<mat-option value="global">Global</mat-option>
|
||||||
<ng-container *ngIf="!unsupportedLevel; else unsupportedLevelWarning">
|
<mat-option value="service">Service</mat-option>
|
||||||
<mat-card mat-list-item *ngFor="let theme of theme_list;" (click)='onThemeSelected(theme.name)' [class.selected]="theme.selected">
|
<mat-option value="song">Song</mat-option>
|
||||||
<div class="theme-title">{{ theme.name }}</div>
|
</mat-select>
|
||||||
</mat-card>
|
</mat-form-field>
|
||||||
</ng-container>
|
|
||||||
<mat-slide-toggle color="primary" [checked]="themeLevelSwitching" (change)="levelSliderChanged($event)">Change Theme Level</mat-slide-toggle>
|
|
||||||
<ng-template #unsupportedLevelWarning>
|
|
||||||
<p style="text-align: center;">Song level theme changing not yet supported.<br>
|
|
||||||
To continue, change your theme level.
|
|
||||||
</p>
|
</p>
|
||||||
</ng-template>
|
<p>
|
||||||
|
<mat-form-field>
|
||||||
|
<mat-label>Theme</mat-label>
|
||||||
|
<mat-select [(value)]="theme" [disabled]="!isThemeLevelSupported()">
|
||||||
|
<mat-option *ngFor="let theme of themeList" [value]="theme.name">{{ theme.name }}</mat-option>
|
||||||
|
</mat-select>
|
||||||
|
<mat-error *ngIf="!isThemeLevelSupported()">Song level theme changing not yet supported. Change your theme level to Global or Service</mat-error>
|
||||||
|
</mat-form-field>
|
||||||
|
</p>
|
||||||
|
</form>
|
||||||
|
@ -10,14 +10,10 @@ import { PageTitleService } from '../../page-title.service';
|
|||||||
styleUrls: ['./themes.component.scss'],
|
styleUrls: ['./themes.component.scss'],
|
||||||
providers: [OpenLPService]
|
providers: [OpenLPService]
|
||||||
})
|
})
|
||||||
|
|
||||||
export class ThemesComponent implements OnInit {
|
export class ThemesComponent implements OnInit {
|
||||||
theme_list = null;
|
private _theme = null;
|
||||||
theme_level = null;
|
private _themeList = [];
|
||||||
|
private _themeLevel = null;
|
||||||
themeLevelSwitching = false;
|
|
||||||
unsupportedLevel = false;
|
|
||||||
|
|
||||||
|
|
||||||
constructor(private pageTitleService: PageTitleService, private openlpService: OpenLPService) {
|
constructor(private pageTitleService: PageTitleService, private openlpService: OpenLPService) {
|
||||||
pageTitleService.changePageTitle('Themes');
|
pageTitleService.changePageTitle('Themes');
|
||||||
@ -26,39 +22,44 @@ export class ThemesComponent implements OnInit {
|
|||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.getThemeLevel();
|
this.getThemeLevel();
|
||||||
this.getThemes();
|
this.getThemes();
|
||||||
|
this.getTheme();
|
||||||
|
}
|
||||||
|
|
||||||
|
get theme(): string {
|
||||||
|
return this._theme;
|
||||||
|
}
|
||||||
|
|
||||||
|
set theme(themeName: string) {
|
||||||
|
this._theme = themeName;
|
||||||
|
this.openlpService.setTheme(themeName).subscribe();
|
||||||
|
}
|
||||||
|
|
||||||
|
get themeList(): Array<string> {
|
||||||
|
return this._themeList;
|
||||||
|
}
|
||||||
|
|
||||||
|
get themeLevel(): string {
|
||||||
|
return this._themeLevel;
|
||||||
|
}
|
||||||
|
|
||||||
|
set themeLevel(level: string) {
|
||||||
|
this._themeLevel = level;
|
||||||
|
this.openlpService.setThemeLevel(level).subscribe();
|
||||||
|
}
|
||||||
|
|
||||||
|
isThemeLevelSupported(): boolean {
|
||||||
|
return this._themeLevel !== 'song';
|
||||||
}
|
}
|
||||||
|
|
||||||
getThemeLevel() {
|
getThemeLevel() {
|
||||||
this.openlpService.getThemeLevel().subscribe(theme_level => {
|
this.openlpService.getThemeLevel().subscribe(themeLevel => this._themeLevel = themeLevel);
|
||||||
this.theme_level = theme_level;
|
|
||||||
this.unsupportedLevelCheck(this.theme_level);
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
getThemes() {
|
getThemes() {
|
||||||
this.openlpService.getThemes().subscribe(theme_list => this.theme_list = theme_list);
|
this.openlpService.getThemes().subscribe(themeList => this._themeList = themeList);
|
||||||
}
|
}
|
||||||
|
|
||||||
onThemeLevelSelected(level: string) {
|
getTheme() {
|
||||||
this.openlpService.setThemeLevel(level).subscribe(res => this.getThemes());
|
this.openlpService.getTheme().subscribe(theme => this._theme = theme);
|
||||||
}
|
|
||||||
|
|
||||||
onThemeSelected(theme: string) {
|
|
||||||
this.openlpService.setTheme(theme).subscribe(res => this.getThemes());
|
|
||||||
}
|
|
||||||
|
|
||||||
levelSliderChanged(event: MatSlideToggleChange) {
|
|
||||||
this.themeLevelSwitching = event.checked;
|
|
||||||
}
|
|
||||||
|
|
||||||
unsupportedLevelCheck(level) {
|
|
||||||
this.getThemeLevel();
|
|
||||||
if (level === 'song') {
|
|
||||||
this.unsupportedLevel = true;
|
|
||||||
this.themeLevelSwitching = true;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
this.unsupportedLevel = false;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -87,44 +87,20 @@ export class OpenLPService {
|
|||||||
return this.http.get<MainView>(`${this.apiURL}/core/live-image`, httpOptions);
|
return this.http.get<MainView>(`${this.apiURL}/core/live-image`, httpOptions);
|
||||||
}
|
}
|
||||||
|
|
||||||
getItemSlides(): Observable<Slide[]> {
|
|
||||||
return this.http.get<Slide[]>(`${this.apiURL}/controller/live-item`, httpOptions);
|
|
||||||
}
|
|
||||||
|
|
||||||
getServiceItems(): Observable<ServiceItem[]> {
|
|
||||||
return this.http.get<ServiceItem[]>(`${this.apiURL}/service/items`, httpOptions);
|
|
||||||
}
|
|
||||||
|
|
||||||
getThemeLevel(): Observable<any> {
|
|
||||||
return this.http.get(`${this.apiURL}/controller/theme-level`, httpOptions);
|
|
||||||
}
|
|
||||||
|
|
||||||
getThemes(): Observable<Theme[]> {
|
|
||||||
return this.http.get<Theme[]>(`${this.apiURL}/controller/themes`, httpOptions);
|
|
||||||
}
|
|
||||||
|
|
||||||
getSearchablePlugins(): Observable<PluginDescription[]> {
|
getSearchablePlugins(): Observable<PluginDescription[]> {
|
||||||
return this.http.get<PluginDescription[]>(`${this.apiURL}/core/plugins`, httpOptions);
|
return this.http.get<PluginDescription[]>(`${this.apiURL}/core/plugins`, httpOptions);
|
||||||
}
|
}
|
||||||
|
|
||||||
setServiceItem(id: number): Observable<any> {
|
|
||||||
return this.http.post(`${this.apiURL}/service/show`, {'id': id}, httpOptions);
|
|
||||||
}
|
|
||||||
|
|
||||||
search(plugin, text): Observable<any> {
|
search(plugin, text): Observable<any> {
|
||||||
return this.http.get(`${this.apiURL}/plugins/${plugin}/search?text=${text}`, httpOptions);
|
return this.http.get(`${this.apiURL}/plugins/${plugin}/search?text=${text}`, httpOptions);
|
||||||
}
|
}
|
||||||
|
|
||||||
setSlide(id): Observable<any> {
|
getServiceItems(): Observable<ServiceItem[]> {
|
||||||
return this.http.post(`${this.apiURL}/controller/show`, {'id': id}, httpOptions);
|
return this.http.get<ServiceItem[]>(`${this.apiURL}/service/items`, httpOptions);
|
||||||
}
|
}
|
||||||
|
|
||||||
setThemeLevel(level): Observable<any> {
|
setServiceItem(id: any): Observable<any> {
|
||||||
return this.http.post(`${this.apiURL}/controller/theme-level`, {'level': level}, httpOptions);
|
return this.http.post(`${this.apiURL}/service/show`, {'id': id}, httpOptions);
|
||||||
}
|
|
||||||
|
|
||||||
setTheme(theme: string): Observable<any> {
|
|
||||||
return this.http.post(`${this.apiURL}/controller/theme`, {'theme': theme}, httpOptions);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
nextItem(): Observable<any> {
|
nextItem(): Observable<any> {
|
||||||
@ -135,6 +111,14 @@ export class OpenLPService {
|
|||||||
return this.http.post(`${this.apiURL}/service/progress`, {'action': 'previous'}, httpOptions);
|
return this.http.post(`${this.apiURL}/service/progress`, {'action': 'previous'}, httpOptions);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getItemSlides(): Observable<Slide[]> {
|
||||||
|
return this.http.get<Slide[]>(`${this.apiURL}/controller/live-item`, httpOptions);
|
||||||
|
}
|
||||||
|
|
||||||
|
setSlide(id: any): Observable<any> {
|
||||||
|
return this.http.post(`${this.apiURL}/controller/show`, {'id': id}, httpOptions);
|
||||||
|
}
|
||||||
|
|
||||||
nextSlide(): Observable<any> {
|
nextSlide(): Observable<any> {
|
||||||
return this.http.post(`${this.apiURL}/controller/progress`, {'action': 'next'}, httpOptions);
|
return this.http.post(`${this.apiURL}/controller/progress`, {'action': 'next'}, httpOptions);
|
||||||
}
|
}
|
||||||
@ -143,6 +127,26 @@ export class OpenLPService {
|
|||||||
return this.http.post(`${this.apiURL}/controller/progress`, {'action': 'previous'}, httpOptions);
|
return this.http.post(`${this.apiURL}/controller/progress`, {'action': 'previous'}, httpOptions);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getThemeLevel(): Observable<any> {
|
||||||
|
return this.http.get(`${this.apiURL}/controller/theme-level`, httpOptions);
|
||||||
|
}
|
||||||
|
|
||||||
|
getThemes(): Observable<Theme[]> {
|
||||||
|
return this.http.get<Theme[]>(`${this.apiURL}/controller/themes`, httpOptions);
|
||||||
|
}
|
||||||
|
|
||||||
|
setThemeLevel(level): Observable<any> {
|
||||||
|
return this.http.post(`${this.apiURL}/controller/theme-level`, {'level': level}, httpOptions);
|
||||||
|
}
|
||||||
|
|
||||||
|
getTheme(): Observable<any> {
|
||||||
|
return this.http.get(`${this.apiURL}/controller/theme`, httpOptions);
|
||||||
|
}
|
||||||
|
|
||||||
|
setTheme(theme: string): Observable<any> {
|
||||||
|
return this.http.post(`${this.apiURL}/controller/theme`, {'theme': theme}, httpOptions);
|
||||||
|
}
|
||||||
|
|
||||||
blankDisplay(): Observable<any> {
|
blankDisplay(): Observable<any> {
|
||||||
return this.http.post(`${this.apiURL}/core/display`, {'display': 'blank'}, httpOptions);
|
return this.http.post(`${this.apiURL}/core/display`, {'display': 'blank'}, httpOptions);
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,7 @@ export interface Slide {
|
|||||||
html: string;
|
html: string;
|
||||||
tag: string;
|
tag: string;
|
||||||
text: string;
|
text: string;
|
||||||
chords_text: string;
|
chords: string;
|
||||||
lines: string[];
|
lines: string[];
|
||||||
first_slide_of_tag: boolean;
|
first_slide_of_tag: boolean;
|
||||||
}
|
}
|
||||||
|
139
yarn.lock
139
yarn.lock
@ -1239,11 +1239,6 @@ JSONStream@^1.3.4:
|
|||||||
jsonparse "^1.2.0"
|
jsonparse "^1.2.0"
|
||||||
through ">=2.2.7 <3"
|
through ">=2.2.7 <3"
|
||||||
|
|
||||||
abbrev@1:
|
|
||||||
version "1.1.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
|
|
||||||
integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==
|
|
||||||
|
|
||||||
accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7:
|
accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7:
|
||||||
version "1.3.7"
|
version "1.3.7"
|
||||||
resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd"
|
resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd"
|
||||||
@ -1405,19 +1400,11 @@ append-transform@^1.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
default-require-extensions "^2.0.0"
|
default-require-extensions "^2.0.0"
|
||||||
|
|
||||||
aproba@^1.0.3, aproba@^1.1.1:
|
aproba@^1.1.1:
|
||||||
version "1.2.0"
|
version "1.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a"
|
resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a"
|
||||||
integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==
|
integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==
|
||||||
|
|
||||||
are-we-there-yet@~1.1.2:
|
|
||||||
version "1.1.5"
|
|
||||||
resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21"
|
|
||||||
integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==
|
|
||||||
dependencies:
|
|
||||||
delegates "^1.0.0"
|
|
||||||
readable-stream "^2.0.6"
|
|
||||||
|
|
||||||
arg@^4.1.0:
|
arg@^4.1.0:
|
||||||
version "4.1.3"
|
version "4.1.3"
|
||||||
resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089"
|
resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089"
|
||||||
@ -2303,11 +2290,6 @@ console-browserify@^1.1.0:
|
|||||||
resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336"
|
resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336"
|
||||||
integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==
|
integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==
|
||||||
|
|
||||||
console-control-strings@^1.0.0, console-control-strings@~1.1.0:
|
|
||||||
version "1.1.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e"
|
|
||||||
integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=
|
|
||||||
|
|
||||||
constants-browserify@^1.0.0:
|
constants-browserify@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75"
|
resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75"
|
||||||
@ -2588,11 +2570,6 @@ deep-equal@^1.0.1:
|
|||||||
object-keys "^1.1.1"
|
object-keys "^1.1.1"
|
||||||
regexp.prototype.flags "^1.2.0"
|
regexp.prototype.flags "^1.2.0"
|
||||||
|
|
||||||
deep-extend@^0.6.0:
|
|
||||||
version "0.6.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
|
|
||||||
integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
|
|
||||||
|
|
||||||
default-gateway@^4.2.0:
|
default-gateway@^4.2.0:
|
||||||
version "4.2.0"
|
version "4.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-4.2.0.tgz#167104c7500c2115f6dd69b0a536bb8ed720552b"
|
resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-4.2.0.tgz#167104c7500c2115f6dd69b0a536bb8ed720552b"
|
||||||
@ -2668,11 +2645,6 @@ delayed-stream@~1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
|
resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
|
||||||
integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk=
|
integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk=
|
||||||
|
|
||||||
delegates@^1.0.0:
|
|
||||||
version "1.0.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"
|
|
||||||
integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=
|
|
||||||
|
|
||||||
depd@~1.1.2:
|
depd@~1.1.2:
|
||||||
version "1.1.2"
|
version "1.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9"
|
resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9"
|
||||||
@ -2696,11 +2668,6 @@ destroy@~1.0.4:
|
|||||||
resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80"
|
resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80"
|
||||||
integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=
|
integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=
|
||||||
|
|
||||||
detect-libc@^1.0.2:
|
|
||||||
version "1.0.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
|
|
||||||
integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=
|
|
||||||
|
|
||||||
detect-node@^2.0.4:
|
detect-node@^2.0.4:
|
||||||
version "2.0.4"
|
version "2.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c"
|
resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c"
|
||||||
@ -3415,20 +3382,6 @@ function-bind@^1.1.1:
|
|||||||
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
|
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
|
||||||
integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
|
integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
|
||||||
|
|
||||||
gauge@~2.7.3:
|
|
||||||
version "2.7.4"
|
|
||||||
resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7"
|
|
||||||
integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=
|
|
||||||
dependencies:
|
|
||||||
aproba "^1.0.3"
|
|
||||||
console-control-strings "^1.0.0"
|
|
||||||
has-unicode "^2.0.0"
|
|
||||||
object-assign "^4.1.0"
|
|
||||||
signal-exit "^3.0.0"
|
|
||||||
string-width "^1.0.1"
|
|
||||||
strip-ansi "^3.0.1"
|
|
||||||
wide-align "^1.1.0"
|
|
||||||
|
|
||||||
genfun@^5.0.0:
|
genfun@^5.0.0:
|
||||||
version "5.0.0"
|
version "5.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/genfun/-/genfun-5.0.0.tgz#9dd9710a06900a5c4a5bf57aca5da4e52fe76537"
|
resolved "https://registry.yarnpkg.com/genfun/-/genfun-5.0.0.tgz#9dd9710a06900a5c4a5bf57aca5da4e52fe76537"
|
||||||
@ -3616,11 +3569,6 @@ has-symbols@^1.0.0, has-symbols@^1.0.1:
|
|||||||
resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8"
|
resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8"
|
||||||
integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==
|
integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==
|
||||||
|
|
||||||
has-unicode@^2.0.0:
|
|
||||||
version "2.0.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
|
|
||||||
integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=
|
|
||||||
|
|
||||||
has-value@^0.3.1:
|
has-value@^0.3.1:
|
||||||
version "0.3.1"
|
version "0.3.1"
|
||||||
resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f"
|
resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f"
|
||||||
@ -3812,7 +3760,7 @@ humanize-ms@^1.2.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
ms "^2.0.0"
|
ms "^2.0.0"
|
||||||
|
|
||||||
iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13:
|
iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@~0.4.13:
|
||||||
version "0.4.24"
|
version "0.4.24"
|
||||||
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
|
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
|
||||||
integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
|
integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
|
||||||
@ -3919,7 +3867,7 @@ inherits@2.0.3:
|
|||||||
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
|
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
|
||||||
integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
|
integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
|
||||||
|
|
||||||
ini@1.3.5, ini@^1.3.4, ini@~1.3.0:
|
ini@1.3.5, ini@^1.3.4:
|
||||||
version "1.3.5"
|
version "1.3.5"
|
||||||
resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
|
resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
|
||||||
integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==
|
integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==
|
||||||
@ -5077,15 +5025,6 @@ nanomatch@^1.2.9:
|
|||||||
snapdragon "^0.8.1"
|
snapdragon "^0.8.1"
|
||||||
to-regex "^3.0.1"
|
to-regex "^3.0.1"
|
||||||
|
|
||||||
needle@^2.2.1:
|
|
||||||
version "2.4.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/needle/-/needle-2.4.1.tgz#14af48732463d7475696f937626b1b993247a56a"
|
|
||||||
integrity sha512-x/gi6ijr4B7fwl6WYL9FwlCvRQKGlUNvnceho8wxkwXqN8jvVmmmATTmZPRRG7b/yC1eode26C2HO9jl78Du9g==
|
|
||||||
dependencies:
|
|
||||||
debug "^3.2.6"
|
|
||||||
iconv-lite "^0.4.4"
|
|
||||||
sax "^1.2.4"
|
|
||||||
|
|
||||||
negotiator@0.6.2:
|
negotiator@0.6.2:
|
||||||
version "0.6.2"
|
version "0.6.2"
|
||||||
resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb"
|
resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb"
|
||||||
@ -5144,35 +5083,11 @@ node-libs-browser@^2.2.1:
|
|||||||
util "^0.11.0"
|
util "^0.11.0"
|
||||||
vm-browserify "^1.0.1"
|
vm-browserify "^1.0.1"
|
||||||
|
|
||||||
node-pre-gyp@*:
|
|
||||||
version "0.14.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83"
|
|
||||||
integrity sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA==
|
|
||||||
dependencies:
|
|
||||||
detect-libc "^1.0.2"
|
|
||||||
mkdirp "^0.5.1"
|
|
||||||
needle "^2.2.1"
|
|
||||||
nopt "^4.0.1"
|
|
||||||
npm-packlist "^1.1.6"
|
|
||||||
npmlog "^4.0.2"
|
|
||||||
rc "^1.2.7"
|
|
||||||
rimraf "^2.6.1"
|
|
||||||
semver "^5.3.0"
|
|
||||||
tar "^4.4.2"
|
|
||||||
|
|
||||||
node-releases@^1.1.52, node-releases@^1.1.53:
|
node-releases@^1.1.52, node-releases@^1.1.53:
|
||||||
version "1.1.53"
|
version "1.1.53"
|
||||||
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.53.tgz#2d821bfa499ed7c5dffc5e2f28c88e78a08ee3f4"
|
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.53.tgz#2d821bfa499ed7c5dffc5e2f28c88e78a08ee3f4"
|
||||||
integrity sha512-wp8zyQVwef2hpZ/dJH7SfSrIPD6YoJz6BDQDpGEkcA0s3LpAQoxBIYmfIq6QAhC1DhwsyCgTaTTcONwX8qzCuQ==
|
integrity sha512-wp8zyQVwef2hpZ/dJH7SfSrIPD6YoJz6BDQDpGEkcA0s3LpAQoxBIYmfIq6QAhC1DhwsyCgTaTTcONwX8qzCuQ==
|
||||||
|
|
||||||
nopt@^4.0.1:
|
|
||||||
version "4.0.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48"
|
|
||||||
integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==
|
|
||||||
dependencies:
|
|
||||||
abbrev "1"
|
|
||||||
osenv "^0.1.4"
|
|
||||||
|
|
||||||
normalize-package-data@^2.0.0, normalize-package-data@^2.4.0:
|
normalize-package-data@^2.0.0, normalize-package-data@^2.4.0:
|
||||||
version "2.5.0"
|
version "2.5.0"
|
||||||
resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
|
resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
|
||||||
@ -5242,7 +5157,7 @@ npm-package-arg@^6.0.0, npm-package-arg@^6.1.0:
|
|||||||
semver "^5.6.0"
|
semver "^5.6.0"
|
||||||
validate-npm-package-name "^3.0.0"
|
validate-npm-package-name "^3.0.0"
|
||||||
|
|
||||||
npm-packlist@^1.1.12, npm-packlist@^1.1.6:
|
npm-packlist@^1.1.12:
|
||||||
version "1.4.8"
|
version "1.4.8"
|
||||||
resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.8.tgz#56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e"
|
resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.8.tgz#56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e"
|
||||||
integrity sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==
|
integrity sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==
|
||||||
@ -5289,16 +5204,6 @@ npm-run-path@^2.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
path-key "^2.0.0"
|
path-key "^2.0.0"
|
||||||
|
|
||||||
npmlog@^4.0.2:
|
|
||||||
version "4.1.2"
|
|
||||||
resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
|
|
||||||
integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==
|
|
||||||
dependencies:
|
|
||||||
are-we-there-yet "~1.1.2"
|
|
||||||
console-control-strings "~1.1.0"
|
|
||||||
gauge "~2.7.3"
|
|
||||||
set-blocking "~2.0.0"
|
|
||||||
|
|
||||||
num2fraction@^1.2.2:
|
num2fraction@^1.2.2:
|
||||||
version "1.2.2"
|
version "1.2.2"
|
||||||
resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede"
|
resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede"
|
||||||
@ -5464,7 +5369,7 @@ os-tmpdir@^1.0.0, os-tmpdir@~1.0.1, os-tmpdir@~1.0.2:
|
|||||||
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
|
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
|
||||||
integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
|
integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
|
||||||
|
|
||||||
osenv@^0.1.4, osenv@^0.1.5:
|
osenv@^0.1.5:
|
||||||
version "0.1.5"
|
version "0.1.5"
|
||||||
resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410"
|
resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410"
|
||||||
integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==
|
integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==
|
||||||
@ -6073,16 +5978,6 @@ raw-loader@3.1.0:
|
|||||||
loader-utils "^1.1.0"
|
loader-utils "^1.1.0"
|
||||||
schema-utils "^2.0.1"
|
schema-utils "^2.0.1"
|
||||||
|
|
||||||
rc@^1.2.7:
|
|
||||||
version "1.2.8"
|
|
||||||
resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
|
|
||||||
integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==
|
|
||||||
dependencies:
|
|
||||||
deep-extend "^0.6.0"
|
|
||||||
ini "~1.3.0"
|
|
||||||
minimist "^1.2.0"
|
|
||||||
strip-json-comments "~2.0.1"
|
|
||||||
|
|
||||||
read-cache@^1.0.0:
|
read-cache@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774"
|
resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774"
|
||||||
@ -6111,7 +6006,7 @@ read-package-tree@5.3.1:
|
|||||||
readdir-scoped-modules "^1.0.0"
|
readdir-scoped-modules "^1.0.0"
|
||||||
util-promisify "^2.1.0"
|
util-promisify "^2.1.0"
|
||||||
|
|
||||||
"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6:
|
"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6:
|
||||||
version "2.3.7"
|
version "2.3.7"
|
||||||
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
|
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
|
||||||
integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
|
integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
|
||||||
@ -6354,7 +6249,7 @@ rimraf@3.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
glob "^7.1.3"
|
glob "^7.1.3"
|
||||||
|
|
||||||
rimraf@^2.2.8, rimraf@^2.5.2, rimraf@^2.5.4, rimraf@^2.6.0, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@^2.6.3:
|
rimraf@^2.2.8, rimraf@^2.5.2, rimraf@^2.5.4, rimraf@^2.6.0, rimraf@^2.6.2, rimraf@^2.6.3:
|
||||||
version "2.7.1"
|
version "2.7.1"
|
||||||
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
|
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
|
||||||
integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
|
integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
|
||||||
@ -6449,7 +6344,7 @@ sax@0.5.x:
|
|||||||
resolved "https://registry.yarnpkg.com/sax/-/sax-0.5.8.tgz#d472db228eb331c2506b0e8c15524adb939d12c1"
|
resolved "https://registry.yarnpkg.com/sax/-/sax-0.5.8.tgz#d472db228eb331c2506b0e8c15524adb939d12c1"
|
||||||
integrity sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=
|
integrity sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=
|
||||||
|
|
||||||
sax@>=0.6.0, sax@^1.2.4:
|
sax@>=0.6.0:
|
||||||
version "1.2.4"
|
version "1.2.4"
|
||||||
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
|
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
|
||||||
integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
|
integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
|
||||||
@ -6569,7 +6464,7 @@ serve-static@1.14.1:
|
|||||||
parseurl "~1.3.3"
|
parseurl "~1.3.3"
|
||||||
send "0.17.1"
|
send "0.17.1"
|
||||||
|
|
||||||
set-blocking@^2.0.0, set-blocking@~2.0.0:
|
set-blocking@^2.0.0:
|
||||||
version "2.0.0"
|
version "2.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
|
resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
|
||||||
integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc=
|
integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc=
|
||||||
@ -7021,7 +6916,7 @@ string-width@^1.0.1:
|
|||||||
is-fullwidth-code-point "^1.0.0"
|
is-fullwidth-code-point "^1.0.0"
|
||||||
strip-ansi "^3.0.0"
|
strip-ansi "^3.0.0"
|
||||||
|
|
||||||
"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.1:
|
string-width@^2.0.0, string-width@^2.1.1:
|
||||||
version "2.1.1"
|
version "2.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
|
resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
|
||||||
integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==
|
integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==
|
||||||
@ -7133,11 +7028,6 @@ strip-eof@^1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf"
|
resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf"
|
||||||
integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=
|
integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=
|
||||||
|
|
||||||
strip-json-comments@~2.0.1:
|
|
||||||
version "2.0.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
|
|
||||||
integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
|
|
||||||
|
|
||||||
style-loader@1.0.0:
|
style-loader@1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.0.0.tgz#1d5296f9165e8e2c85d24eee0b7caf9ec8ca1f82"
|
resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.0.0.tgz#1d5296f9165e8e2c85d24eee0b7caf9ec8ca1f82"
|
||||||
@ -7196,7 +7086,7 @@ tapable@^1.0.0, tapable@^1.1.3:
|
|||||||
resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2"
|
resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2"
|
||||||
integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==
|
integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==
|
||||||
|
|
||||||
tar@^4.4.2, tar@^4.4.8:
|
tar@^4.4.8:
|
||||||
version "4.4.13"
|
version "4.4.13"
|
||||||
resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525"
|
resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525"
|
||||||
integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==
|
integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==
|
||||||
@ -7822,13 +7712,6 @@ which@^1.2.1, which@^1.2.9, which@^1.3.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
isexe "^2.0.0"
|
isexe "^2.0.0"
|
||||||
|
|
||||||
wide-align@^1.1.0:
|
|
||||||
version "1.1.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457"
|
|
||||||
integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==
|
|
||||||
dependencies:
|
|
||||||
string-width "^1.0.2 || 2"
|
|
||||||
|
|
||||||
wordwrap@~0.0.2:
|
wordwrap@~0.0.2:
|
||||||
version "0.0.3"
|
version "0.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107"
|
resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107"
|
||||||
|
Loading…
Reference in New Issue
Block a user