mirror of
https://github.com/Start9Labs/start-os.git
synced 2026-03-31 04:23:40 +00:00
Remove app wiz and dry calls (#1541)
* no more app wiz or dry calls * change spinner type * better display for update available * reintroduce dep breakages for update/downgrade and style alerts everywhere * only show install alert on first install Co-authored-by: Matt Hill <matthill@Matt-M1.local> Co-authored-by: Matt Hill <matthill@Matt-M1.start9.dev>
This commit is contained in:
@@ -33,11 +33,6 @@
|
||||
*ngIf="slide.selector === 'alert'"
|
||||
[params]="slide.params"
|
||||
></alert>
|
||||
<notes
|
||||
#components
|
||||
*ngIf="slide.selector === 'notes'"
|
||||
[params]="slide.params"
|
||||
></notes>
|
||||
<dependents
|
||||
#components
|
||||
*ngIf="slide.selector === 'dependents'"
|
||||
|
||||
@@ -6,7 +6,6 @@ import { RouterModule } from '@angular/router'
|
||||
import { EmverPipesModule } from '@start9labs/shared'
|
||||
import { DependentsComponentModule } from './dependents/dependents.component.module'
|
||||
import { CompleteComponentModule } from './complete/complete.component.module'
|
||||
import { NotesComponentModule } from './notes/notes.component.module'
|
||||
import { AlertComponentModule } from './alert/alert.component.module'
|
||||
import { SwiperModule } from 'swiper/angular'
|
||||
|
||||
@@ -19,7 +18,6 @@ import { SwiperModule } from 'swiper/angular'
|
||||
EmverPipesModule,
|
||||
DependentsComponentModule,
|
||||
CompleteComponentModule,
|
||||
NotesComponentModule,
|
||||
AlertComponentModule,
|
||||
SwiperModule,
|
||||
],
|
||||
|
||||
@@ -9,7 +9,6 @@ import { IonContent, ModalController } from '@ionic/angular'
|
||||
import { CompleteComponent } from './complete/complete.component'
|
||||
import { DependentsComponent } from './dependents/dependents.component'
|
||||
import { AlertComponent } from './alert/alert.component'
|
||||
import { NotesComponent } from './notes/notes.component'
|
||||
import { WizardAction } from './wizard-types'
|
||||
import SwiperCore, { Swiper } from 'swiper'
|
||||
import { IonicSlides } from '@ionic/angular'
|
||||
@@ -87,7 +86,6 @@ export class AppWizardComponent {
|
||||
|
||||
export type SlideDefinition =
|
||||
| { selector: 'alert'; params: AlertComponent['params'] }
|
||||
| { selector: 'notes'; params: NotesComponent['params'] }
|
||||
| { selector: 'dependents'; params: DependentsComponent['params'] }
|
||||
| { selector: 'complete'; params: CompleteComponent['params'] }
|
||||
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
<div class="ion-text-left">
|
||||
<h1>Release Notes</h1>
|
||||
<br />
|
||||
<div *ngFor="let v of params.versions">
|
||||
<h4>
|
||||
<b>
|
||||
{{ v.version }}
|
||||
</b>
|
||||
</h4>
|
||||
<div class="underline" style="margin: unset"></div>
|
||||
<div [innerHTML]="v.notes | markdown"></div>
|
||||
<br />
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,18 +0,0 @@
|
||||
import { NgModule } from '@angular/core'
|
||||
import { CommonModule } from '@angular/common'
|
||||
import { NotesComponent } from './notes.component'
|
||||
import { IonicModule } from '@ionic/angular'
|
||||
import { RouterModule } from '@angular/router'
|
||||
import { MarkdownPipeModule } from '@start9labs/shared'
|
||||
|
||||
@NgModule({
|
||||
declarations: [NotesComponent],
|
||||
imports: [
|
||||
CommonModule,
|
||||
IonicModule,
|
||||
RouterModule.forChild([]),
|
||||
MarkdownPipeModule,
|
||||
],
|
||||
exports: [NotesComponent],
|
||||
})
|
||||
export class NotesComponentModule {}
|
||||
@@ -1,22 +0,0 @@
|
||||
import { Component, Input } from '@angular/core'
|
||||
import { BaseSlide } from '../wizard-types'
|
||||
|
||||
@Component({
|
||||
selector: 'notes',
|
||||
templateUrl: './notes.component.html',
|
||||
styleUrls: ['../app-wizard.component.scss'],
|
||||
})
|
||||
export class NotesComponent implements BaseSlide {
|
||||
@Input() params: {
|
||||
versions: { version: string; notes: string }[]
|
||||
headline: string
|
||||
}
|
||||
|
||||
loading = false
|
||||
|
||||
async load() {}
|
||||
|
||||
asIsOrder() {
|
||||
return 0
|
||||
}
|
||||
}
|
||||
@@ -34,14 +34,6 @@ export class WizardDefs {
|
||||
},
|
||||
}
|
||||
: undefined,
|
||||
{
|
||||
selector: 'dependents',
|
||||
params: {
|
||||
verb: 'updating',
|
||||
title,
|
||||
Fn: () => this.embassyApi.dryUpdatePackage({ id, version }),
|
||||
},
|
||||
},
|
||||
{
|
||||
selector: 'complete',
|
||||
params: {
|
||||
@@ -67,54 +59,6 @@ export class WizardDefs {
|
||||
}
|
||||
}
|
||||
|
||||
updateOS(values: {
|
||||
version: string
|
||||
releaseNotes: { [version: string]: string }
|
||||
headline: string
|
||||
}): AppWizardComponent['params'] {
|
||||
const { version, releaseNotes, headline } = values
|
||||
|
||||
const versions = Object.keys(releaseNotes)
|
||||
.sort()
|
||||
.reverse()
|
||||
.map(version => {
|
||||
return {
|
||||
version,
|
||||
notes: releaseNotes[version],
|
||||
}
|
||||
})
|
||||
|
||||
const title = 'EmbassyOS'
|
||||
|
||||
const slides: SlideDefinition[] = [
|
||||
{
|
||||
selector: 'notes',
|
||||
params: {
|
||||
versions,
|
||||
headline,
|
||||
},
|
||||
},
|
||||
{
|
||||
selector: 'complete',
|
||||
params: {
|
||||
verb: 'beginning update for',
|
||||
title,
|
||||
Fn: () =>
|
||||
this.embassyApi.updateServer({
|
||||
'marketplace-url': this.config.marketplace.url,
|
||||
}),
|
||||
},
|
||||
},
|
||||
]
|
||||
return {
|
||||
action: 'update',
|
||||
title,
|
||||
version,
|
||||
slides: slides.filter(exists),
|
||||
submitBtn: 'Begin Update',
|
||||
}
|
||||
}
|
||||
|
||||
downgrade(values: {
|
||||
id: string
|
||||
title: string
|
||||
@@ -132,14 +76,6 @@ export class WizardDefs {
|
||||
},
|
||||
}
|
||||
: undefined,
|
||||
{
|
||||
selector: 'dependents',
|
||||
params: {
|
||||
verb: 'downgrading',
|
||||
title,
|
||||
Fn: () => this.embassyApi.dryUpdatePackage({ id, version }),
|
||||
},
|
||||
},
|
||||
{
|
||||
selector: 'complete',
|
||||
params: {
|
||||
@@ -180,14 +116,6 @@ export class WizardDefs {
|
||||
message: uninstallAlert || defaultUninstallWarning(title),
|
||||
},
|
||||
},
|
||||
{
|
||||
selector: 'dependents',
|
||||
params: {
|
||||
verb: 'uninstalling',
|
||||
title,
|
||||
Fn: () => this.embassyApi.dryUninstallPackage({ id }),
|
||||
},
|
||||
},
|
||||
{
|
||||
selector: 'complete',
|
||||
params: {
|
||||
@@ -210,14 +138,6 @@ export class WizardDefs {
|
||||
const { title, id } = values
|
||||
|
||||
const slides: SlideDefinition[] = [
|
||||
{
|
||||
selector: 'dependents',
|
||||
params: {
|
||||
verb: 'stopping',
|
||||
title,
|
||||
Fn: () => this.embassyApi.dryStopPackage({ id }),
|
||||
},
|
||||
},
|
||||
{
|
||||
selector: 'complete',
|
||||
params: {
|
||||
|
||||
@@ -142,7 +142,6 @@ export class BackupDrivesComponent {
|
||||
|
||||
private async addCifs(value: RR.AddBackupTargetReq): Promise<boolean> {
|
||||
const loader = await this.loadingCtrl.create({
|
||||
spinner: 'lines',
|
||||
message: 'Testing connectivity to shared folder...',
|
||||
})
|
||||
await loader.present()
|
||||
@@ -200,7 +199,6 @@ export class BackupDrivesComponent {
|
||||
index: number,
|
||||
): Promise<void> {
|
||||
const loader = await this.loadingCtrl.create({
|
||||
spinner: 'lines',
|
||||
message: 'Testing connectivity to shared folder...',
|
||||
})
|
||||
await loader.present()
|
||||
@@ -217,7 +215,6 @@ export class BackupDrivesComponent {
|
||||
|
||||
private async deleteCifs(id: string, index: number): Promise<void> {
|
||||
const loader = await this.loadingCtrl.create({
|
||||
spinner: 'lines',
|
||||
message: 'Removing...',
|
||||
})
|
||||
await loader.present()
|
||||
|
||||
Reference in New Issue
Block a user