${this.renderLeftColumn()}
${this.renderRightColumn()}
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/editors/user/user.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/editors/user/user.context.ts
new file mode 100644
index 0000000000..8d11cc64e3
--- /dev/null
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/editors/user/user.context.ts
@@ -0,0 +1,36 @@
+import { BehaviorSubject, Observable } from 'rxjs';
+import type { UserDetails } from '../../../core/models';
+
+export class UmbUserContext {
+ // TODO: figure out how fine grained we want to make our observables.
+ private _data = new BehaviorSubject
({
+ key: '',
+ name: '',
+ icon: '',
+ type: 'user',
+ hasChildren: false,
+ parentKey: '',
+ isTrashed: false,
+ email: '',
+ language: '',
+ status: '',
+ updateDate: '8/27/2022',
+ createDate: '9/19/2022',
+ failedLoginAttempts: 0,
+ });
+ public readonly data: Observable = this._data.asObservable();
+
+ constructor(user: UserDetails) {
+ if (!user) return;
+ this._data.next(user);
+ }
+
+ // TODO: figure out how we want to update data
+ public update(data: Partial) {
+ this._data.next({ ...this._data.getValue(), ...data });
+ }
+
+ public getData() {
+ return this._data.getValue();
+ }
+}