mirror of
https://github.com/Start9Labs/start-os.git
synced 2026-03-30 04:01:58 +00:00
* chore: enable strict mode * refactor: remove sync data access from PatchDbService * launchable even when no LAN url Co-authored-by: Matt Hill <matthewonthemoon@gmail.com>
36 lines
913 B
TypeScript
36 lines
913 B
TypeScript
import { Component, EventEmitter, Input, Output } from '@angular/core'
|
|
import { capitalizeFirstLetter } from '@start9labs/shared'
|
|
import { BaseSlide } from '../wizard-types'
|
|
|
|
@Component({
|
|
selector: 'complete',
|
|
templateUrl: './complete.component.html',
|
|
styleUrls: ['../app-wizard.component.scss'],
|
|
})
|
|
export class CompleteComponent implements BaseSlide {
|
|
@Input()
|
|
params!: {
|
|
verb: string // loader verb: '*stopping* ...'
|
|
title: string
|
|
Fn: () => Promise<any>
|
|
}
|
|
|
|
@Output() onSuccess: EventEmitter<void> = new EventEmitter()
|
|
@Output() onError: EventEmitter<string> = new EventEmitter()
|
|
|
|
message = ''
|
|
|
|
loading = true
|
|
|
|
async load() {
|
|
this.message =
|
|
capitalizeFirstLetter(this.params.verb || '') + ' ' + this.params.title
|
|
try {
|
|
await this.params.Fn()
|
|
this.onSuccess.emit()
|
|
} catch (e: any) {
|
|
this.onError.emit(`Error: ${e.message || e}`)
|
|
}
|
|
}
|
|
}
|