diff --git a/src/Umbraco.Web.UI.Client/src/installer/installer-consent.element.ts b/src/Umbraco.Web.UI.Client/src/installer/installer-consent.element.ts index 6e3c1aec6e..be11bd5f45 100644 --- a/src/Umbraco.Web.UI.Client/src/installer/installer-consent.element.ts +++ b/src/Umbraco.Web.UI.Client/src/installer/installer-consent.element.ts @@ -125,7 +125,7 @@ export class UmbInstallerConsent extends UmbContextConsumerMixin(LitElement) { render() { return html` -
+

Consent for telemetry data

${this._renderSlider()}
diff --git a/src/Umbraco.Web.UI.Client/src/installer/installer-database.element.ts b/src/Umbraco.Web.UI.Client/src/installer/installer-database.element.ts index 7afa97afa0..12c29de93d 100644 --- a/src/Umbraco.Web.UI.Client/src/installer/installer-database.element.ts +++ b/src/Umbraco.Web.UI.Client/src/installer/installer-database.element.ts @@ -4,11 +4,7 @@ import { customElement, property, query, state } from 'lit/decorators.js'; import { Subscription } from 'rxjs'; import { UmbContextConsumerMixin } from '../core/context'; -import { - ProblemDetails, - UmbracoInstallerDatabaseModel, - UmbracoPerformInstallDatabaseConfiguration, -} from '../core/models'; +import { ProblemDetails, UmbracoInstallerDatabaseModel, UmbracoPerformInstallDatabaseConfiguration } from '../core/models'; import { UmbInstallerContext } from './installer-context'; @customElement('umb-installer-database') @@ -83,8 +79,8 @@ export class UmbInstallerDatabase extends UmbContextConsumerMixin(LitElement) { @query('#button-install') private _installButton!: UUIButtonElement; - @query('#error-message') - private _errorMessage!: HTMLElement; + @state() + private _errorMessage = ''; @property({ attribute: false }) public databaseFormData!: UmbracoPerformInstallDatabaseConfiguration; @@ -179,16 +175,22 @@ export class UmbInstallerDatabase extends UmbContextConsumerMixin(LitElement) { this._installerStore?.appendData({ database }); } - this._installerStore?.requestInstall().then(this._handleFulfilled.bind(this), this._handleRejected.bind(this)); + this._installerStore + ?.requestInstall() + .then(this._handleFulfilled.bind(this)) + .catch(this._handleRejected.bind(this)); this._installButton.state = 'waiting'; }; + private _handleFulfilled() { + sessionStorage.setItem('is-authenticated', 'true'); this.dispatchEvent(new CustomEvent('next', { bubbles: true, composed: true })); this._installButton.state = undefined; } + private _handleRejected(error: ProblemDetails) { this._installButton.state = 'failed'; - this._errorMessage.innerText = error.type; + this._errorMessage = error.detail ?? 'Something went wrong'; } private _onBack() { @@ -333,7 +335,7 @@ export class UmbInstallerDatabase extends UmbContextConsumerMixin(LitElement) { `; render() { - return html`
+ return html`

Database Configuration

@@ -342,7 +344,7 @@ export class UmbInstallerDatabase extends UmbContextConsumerMixin(LitElement) { : this._renderDatabaseSelection()} -

+ ${this._errorMessage ? html`

${this._errorMessage}

` : ''}
diff --git a/src/Umbraco.Web.UI.Client/src/installer/installer-installing.element.ts b/src/Umbraco.Web.UI.Client/src/installer/installer-installing.element.ts index 33117bdc83..3ebf0c67e4 100644 --- a/src/Umbraco.Web.UI.Client/src/installer/installer-installing.element.ts +++ b/src/Umbraco.Web.UI.Client/src/installer/installer-installing.element.ts @@ -1,5 +1,6 @@ import { css, CSSResultGroup, html, LitElement, PropertyValueMap } from 'lit'; import { customElement, state } from 'lit/decorators.js'; + @customElement('umb-installer-installing') export class UmbInstallerInstalling extends LitElement { static styles: CSSResultGroup = [ @@ -33,7 +34,7 @@ export class UmbInstallerInstalling extends LitElement { } render() { - return html`
+ return html`

Installing Umbraco

`; diff --git a/src/Umbraco.Web.UI.Client/src/installer/installer-user.element.ts b/src/Umbraco.Web.UI.Client/src/installer/installer-user.element.ts index 20c5dcdf68..d0ed7008a6 100644 --- a/src/Umbraco.Web.UI.Client/src/installer/installer-user.element.ts +++ b/src/Umbraco.Web.UI.Client/src/installer/installer-user.element.ts @@ -107,7 +107,7 @@ export class UmbInstallerUser extends UmbContextConsumerMixin(LitElement) { }; render() { - return html`
+ return html`

Install Umbraco