- ${this._modelsBuilder.lastError}`
+ ${this._modelsBuilder.lastError}`
: nothing}
`;
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/relation-type.repository.ts b/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/relation-type.repository.ts
index 52249a2896..db6bfe9bcf 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/relation-type.repository.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/relation-type.repository.ts
@@ -1,8 +1,8 @@
import { UmbRelationTypeTreeStore, UMB_RELATION_TYPE_TREE_STORE_CONTEXT_TOKEN } from './relation-type.tree.store';
import { UmbRelationTypeServerDataSource } from './sources/relation-type.server.data';
import { UmbRelationTypeStore, UMB_RELATION_TYPE_STORE_CONTEXT_TOKEN } from './relation-type.store';
-import { RelationTypeTreeServerDataSource } from './sources/relation-type.tree.server.data';
-import { RelationTypeTreeDataSource } from './sources';
+import { UmbRelationTypeTreeServerDataSource } from './sources/relation-type.tree.server.data';
+import { UmbRelationTypeTreeDataSource } from './sources';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
import { UmbContextConsumerController } from '@umbraco-cms/backoffice/context-api';
import {
@@ -23,7 +23,7 @@ export class UmbRelationTypeRepository
#host: UmbControllerHostElement;
- #treeSource: RelationTypeTreeDataSource;
+ #treeSource: UmbRelationTypeTreeDataSource;
#treeStore?: UmbRelationTypeTreeStore;
#detailDataSource: UmbRelationTypeServerDataSource;
@@ -35,7 +35,7 @@ export class UmbRelationTypeRepository
this.#host = host;
// TODO: figure out how spin up get the correct data source
- this.#treeSource = new RelationTypeTreeServerDataSource(this.#host);
+ this.#treeSource = new UmbRelationTypeTreeServerDataSource(this.#host);
this.#detailDataSource = new UmbRelationTypeServerDataSource(this.#host);
this.#init = Promise.all([
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/sources/index.ts b/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/sources/index.ts
index f8ff932071..7acf297b3e 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/sources/index.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/sources/index.ts
@@ -1,7 +1,7 @@
import type { DataSourceResponse } from '@umbraco-cms/backoffice/repository';
import { ItemResponseModelBaseModel, PagedEntityTreeItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
-export interface RelationTypeTreeDataSource {
+export interface UmbRelationTypeTreeDataSource {
getRootItems(): Promise>;
getItems(ids: Array): Promise>;
}
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/sources/relation-type.tree.server.data.ts b/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/sources/relation-type.tree.server.data.ts
index 1dc64b51b5..4529c77390 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/sources/relation-type.tree.server.data.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/sources/relation-type.tree.server.data.ts
@@ -1,4 +1,4 @@
-import { RelationTypeTreeDataSource } from '.';
+import { UmbRelationTypeTreeDataSource } from '.';
import { ProblemDetailsModel, RelationTypeResource } from '@umbraco-cms/backoffice/backend-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
@@ -7,10 +7,10 @@ import { tryExecuteAndNotify } from '@umbraco-cms/backoffice/resources';
/**
* A data source for the RelationType tree that fetches data from the server
* @export
- * @class RelationTypeTreeServerDataSource
- * @implements {RelationTypeTreeDataSource}
+ * @class UmbRelationTypeTreeServerDataSource
+ * @implements {UmbRelationTypeTreeDataSource}
*/
-export class RelationTypeTreeServerDataSource implements RelationTypeTreeDataSource {
+export class UmbRelationTypeTreeServerDataSource implements UmbRelationTypeTreeDataSource {
#host: UmbControllerHostElement;
// TODO: how do we handle trashed items?
@@ -47,9 +47,9 @@ export class RelationTypeTreeServerDataSource implements RelationTypeTreeDataSou
}
/**
- * Creates an instance of RelationTypeTreeServerDataSource.
+ * Creates an instance of UmbRelationTypeTreeServerDataSource.
* @param {UmbControllerHostElement} host
- * @memberof RelationTypeTreeServerDataSource
+ * @memberof UmbRelationTypeTreeServerDataSource
*/
constructor(host: UmbControllerHostElement) {
this.#host = host;
@@ -58,7 +58,7 @@ export class RelationTypeTreeServerDataSource implements RelationTypeTreeDataSou
/**
* Fetches the root items for the tree from the server
* @return {*}
- * @memberof RelationTypeTreeServerDataSource
+ * @memberof UmbRelationTypeTreeServerDataSource
*/
async getRootItems() {
return tryExecuteAndNotify(this.#host, RelationTypeResource.getTreeRelationTypeRoot({}));
@@ -68,7 +68,7 @@ export class RelationTypeTreeServerDataSource implements RelationTypeTreeDataSou
* Fetches the items for the given ids from the server
* @param {Array} ids
* @return {*}
- * @memberof RelationTypeTreeServerDataSource
+ * @memberof UmbRelationTypeTreeServerDataSource
*/
async getItems(ids: Array) {
if (ids) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/code-block/code-block.element.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/code-block/code-block.element.ts
index 99833cbcce..11a4372905 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/code-block/code-block.element.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/code-block/code-block.element.ts
@@ -7,8 +7,8 @@ import { customElement } from 'lit/decorators.js';
* @slot the full message
*
*/
-@customElement('uui-code-block')
-export class UUICodeBlockElement extends LitElement {
+@customElement('umb-code-block')
+export class UmbCodeBlockElement extends LitElement {
static styles = [
UUITextStyles,
css`
@@ -54,6 +54,6 @@ export class UUICodeBlockElement extends LitElement {
declare global {
interface HTMLElementTagNameMap {
- 'uui-code-block': UUICodeBlockElement;
+ 'umb-code-block': UmbCodeBlockElement;
}
}
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/code-block/code-block.stories.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/code-block/code-block.stories.ts
index f3f2d6ca24..46edd57d43 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/code-block/code-block.stories.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/code-block/code-block.stories.ts
@@ -1,15 +1,15 @@
import { Meta, StoryObj } from '@storybook/web-components';
import { html } from 'lit';
import './code-block.element';
-import type { UUICodeBlockElement } from './code-block.element';
+import type { UmbCodeBlockElement } from './code-block.element';
-const meta: Meta = {
+const meta: Meta = {
title: 'Components/Code Block',
- component: 'uui-code-block',
+ component: 'umb-code-block',
};
export default meta;
-type Story = StoryObj;
+type Story = StoryObj;
export const Overview: Story = {
args: {},
@@ -17,5 +17,5 @@ export const Overview: Story = {
export const WithCode: Story = {
decorators: [],
- render: () => html` // Lets write some javascript alert("Hello World"); `,
+ render: () => html` // Lets write some javascript alert("Hello World"); `,
};
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/templating/templates/repository/sources/template.tree.server.data.ts b/src/Umbraco.Web.UI.Client/src/backoffice/templating/templates/repository/sources/template.tree.server.data.ts
index ed7be4b8d9..ee94417b50 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/templating/templates/repository/sources/template.tree.server.data.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/templating/templates/repository/sources/template.tree.server.data.ts
@@ -6,16 +6,16 @@ import { tryExecuteAndNotify } from '@umbraco-cms/backoffice/resources';
/**
* A data source for the Template tree that fetches data from the server
* @export
- * @class TemplateTreeServerDataSource
+ * @class UmbTemplateTreeServerDataSource
* @implements {TemplateTreeDataSource}
*/
-export class TemplateTreeServerDataSource implements TemplateTreeDataSource {
+export class UmbTemplateTreeServerDataSource implements TemplateTreeDataSource {
#host: UmbControllerHostElement;
/**
- * Creates an instance of TemplateTreeServerDataSource.
+ * Creates an instance of UmbTemplateTreeServerDataSource.
* @param {UmbControllerHostElement} host
- * @memberof TemplateTreeServerDataSource
+ * @memberof UmbTemplateTreeServerDataSource
*/
constructor(host: UmbControllerHostElement) {
this.#host = host;
@@ -24,7 +24,7 @@ export class TemplateTreeServerDataSource implements TemplateTreeDataSource {
/**
* Fetches the root items for the tree from the server
* @return {*}
- * @memberof TemplateTreeServerDataSource
+ * @memberof UmbTemplateTreeServerDataSource
*/
async getRootItems() {
return tryExecuteAndNotify(this.#host, TemplateResource.getTreeTemplateRoot({}));
@@ -34,7 +34,7 @@ export class TemplateTreeServerDataSource implements TemplateTreeDataSource {
* Fetches the children of a given parent id from the server
* @param {(string | null)} parentId
* @return {*}
- * @memberof TemplateTreeServerDataSource
+ * @memberof UmbTemplateTreeServerDataSource
*/
async getChildrenOf(parentId: string | null) {
if (!parentId) {
@@ -54,7 +54,7 @@ export class TemplateTreeServerDataSource implements TemplateTreeDataSource {
* Fetches the items for the given ids from the server
* @param {Array} id
* @return {*}
- * @memberof TemplateTreeServerDataSource
+ * @memberof UmbTemplateTreeServerDataSource
*/
async getItems(ids: Array) {
if (!ids) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/templating/templates/repository/template.repository.ts b/src/Umbraco.Web.UI.Client/src/backoffice/templating/templates/repository/template.repository.ts
index 0ec0c4baa7..2903994109 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/templating/templates/repository/template.repository.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/templating/templates/repository/template.repository.ts
@@ -1,5 +1,5 @@
import { UmbTemplateDetailServerDataSource } from './sources/template.detail.server.data';
-import { TemplateTreeServerDataSource } from './sources/template.tree.server.data';
+import { UmbTemplateTreeServerDataSource } from './sources/template.tree.server.data';
import { UmbTemplateStore, UMB_TEMPLATE_STORE_CONTEXT_TOKEN } from './template.store';
import { UmbTemplateTreeStore, UMB_TEMPLATE_TREE_STORE_CONTEXT_TOKEN } from './template.tree.store';
import type { UmbDetailRepository, UmbTreeRepository } from '@umbraco-cms/backoffice/repository';
@@ -21,7 +21,7 @@ export class UmbTemplateRepository
#init;
#host: UmbControllerHostElement;
- #treeDataSource: TemplateTreeServerDataSource;
+ #treeDataSource: UmbTemplateTreeServerDataSource;
#detailDataSource: UmbTemplateDetailServerDataSource;
#treeStore?: UmbTemplateTreeStore;
@@ -33,7 +33,7 @@ export class UmbTemplateRepository
this.#host = host;
// TODO: figure out how spin up get the correct data source
- this.#treeDataSource = new TemplateTreeServerDataSource(this.#host);
+ this.#treeDataSource = new UmbTemplateTreeServerDataSource(this.#host);
this.#detailDataSource = new UmbTemplateDetailServerDataSource(this.#host);
this.#init = Promise.all([
From 26fed3638d444fbdf63a85249685237b980cd39e Mon Sep 17 00:00:00 2001
From: Mads Rasmussen
Date: Sun, 16 Apr 2023 20:40:13 +0200
Subject: [PATCH 061/156] prefix with umb
---
.../consume/context-consumer.test.ts | 16 ++++++----
.../context-provider.controller.test.ts | 20 +++++++-----
.../provide/context-provider.test.ts | 31 ++++++++++++-------
.../context-api/token/context-token.test.ts | 12 +++----
4 files changed, 47 insertions(+), 32 deletions(-)
diff --git a/src/Umbraco.Web.UI.Client/libs/context-api/consume/context-consumer.test.ts b/src/Umbraco.Web.UI.Client/libs/context-api/consume/context-consumer.test.ts
index bc0c5f2e1e..09a575938f 100644
--- a/src/Umbraco.Web.UI.Client/libs/context-api/consume/context-consumer.test.ts
+++ b/src/Umbraco.Web.UI.Client/libs/context-api/consume/context-consumer.test.ts
@@ -5,7 +5,7 @@ import { UmbContextRequestEventImplementation, umbContextRequestEventType } from
const testContextAlias = 'my-test-context';
-class MyClass {
+class UmbTestContextConsumerClass {
prop = 'value from provider';
}
@@ -39,16 +39,20 @@ describe('UmbContextConsumer', () => {
});
it('works with UmbContextProvider', (done) => {
- const provider = new UmbContextProvider(document.body, testContextAlias, new MyClass());
+ const provider = new UmbContextProvider(document.body, testContextAlias, new UmbTestContextConsumerClass());
provider.hostConnected();
const element = document.createElement('div');
document.body.appendChild(element);
- const localConsumer = new UmbContextConsumer(element, testContextAlias, (_instance: MyClass) => {
- expect(_instance.prop).to.eq('value from provider');
- done();
- });
+ const localConsumer = new UmbContextConsumer(
+ element,
+ testContextAlias,
+ (_instance: UmbTestContextConsumerClass) => {
+ expect(_instance.prop).to.eq('value from provider');
+ done();
+ }
+ );
localConsumer.hostConnected();
provider.hostDisconnected();
diff --git a/src/Umbraco.Web.UI.Client/libs/context-api/provide/context-provider.controller.test.ts b/src/Umbraco.Web.UI.Client/libs/context-api/provide/context-provider.controller.test.ts
index 7946d8b30b..83bd2a2621 100644
--- a/src/Umbraco.Web.UI.Client/libs/context-api/provide/context-provider.controller.test.ts
+++ b/src/Umbraco.Web.UI.Client/libs/context-api/provide/context-provider.controller.test.ts
@@ -3,7 +3,7 @@ import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
import { UmbContextConsumer } from '../consume/context-consumer';
import { UmbContextProviderController } from './context-provider.controller';
-class MyClass {
+class UmbTestContextProviderControllerClass {
prop = 'value from provider';
}
@@ -11,13 +11,13 @@ class ControllerHostElement extends UmbLitElement {}
const controllerHostElement = defineCE(ControllerHostElement);
describe('UmbContextProviderController', () => {
- let instance: MyClass;
+ let instance: UmbTestContextProviderControllerClass;
let provider: UmbContextProviderController;
let element: UmbLitElement;
beforeEach(async () => {
element = await fixture(`<${controllerHostElement}>${controllerHostElement}>`);
- instance = new MyClass();
+ instance = new UmbTestContextProviderControllerClass();
provider = new UmbContextProviderController(element, 'my-test-context', instance);
});
@@ -39,11 +39,15 @@ describe('UmbContextProviderController', () => {
});
it('works with UmbContextConsumer', (done) => {
- const localConsumer = new UmbContextConsumer(element, 'my-test-context', (_instance: MyClass) => {
- expect(_instance.prop).to.eq('value from provider');
- done();
- localConsumer.hostDisconnected();
- });
+ const localConsumer = new UmbContextConsumer(
+ element,
+ 'my-test-context',
+ (_instance: UmbTestContextProviderControllerClass) => {
+ expect(_instance.prop).to.eq('value from provider');
+ done();
+ localConsumer.hostDisconnected();
+ }
+ );
localConsumer.hostConnected();
});
diff --git a/src/Umbraco.Web.UI.Client/libs/context-api/provide/context-provider.test.ts b/src/Umbraco.Web.UI.Client/libs/context-api/provide/context-provider.test.ts
index d39e026a2f..ce82bcb9b5 100644
--- a/src/Umbraco.Web.UI.Client/libs/context-api/provide/context-provider.test.ts
+++ b/src/Umbraco.Web.UI.Client/libs/context-api/provide/context-provider.test.ts
@@ -3,16 +3,16 @@ import { UmbContextConsumer } from '../consume/context-consumer';
import { UmbContextRequestEventImplementation } from '../consume/context-request.event';
import { UmbContextProvider } from './context-provider';
-class MyClass {
+class UmbTestContextProviderClass {
prop = 'value from provider';
}
describe('UmbContextProvider', () => {
- let instance: MyClass;
+ let instance: UmbTestContextProviderClass;
let provider: UmbContextProvider;
beforeEach(() => {
- instance = new MyClass();
+ instance = new UmbTestContextProviderClass();
provider = new UmbContextProvider(document.body, 'my-test-context', instance);
provider.hostConnected();
});
@@ -40,10 +40,13 @@ describe('UmbContextProvider', () => {
});
it('handles context request events', (done) => {
- const event = new UmbContextRequestEventImplementation('my-test-context', (_instance: MyClass) => {
- expect(_instance.prop).to.eq('value from provider');
- done();
- });
+ const event = new UmbContextRequestEventImplementation(
+ 'my-test-context',
+ (_instance: UmbTestContextProviderClass) => {
+ expect(_instance.prop).to.eq('value from provider');
+ done();
+ }
+ );
document.body.dispatchEvent(event);
});
@@ -52,11 +55,15 @@ describe('UmbContextProvider', () => {
const element = document.createElement('div');
document.body.appendChild(element);
- const localConsumer = new UmbContextConsumer(element, 'my-test-context', (_instance: MyClass) => {
- expect(_instance.prop).to.eq('value from provider');
- done();
- localConsumer.hostDisconnected();
- });
+ const localConsumer = new UmbContextConsumer(
+ element,
+ 'my-test-context',
+ (_instance: UmbTestContextProviderClass) => {
+ expect(_instance.prop).to.eq('value from provider');
+ done();
+ localConsumer.hostDisconnected();
+ }
+ );
localConsumer.hostConnected();
});
});
diff --git a/src/Umbraco.Web.UI.Client/libs/context-api/token/context-token.test.ts b/src/Umbraco.Web.UI.Client/libs/context-api/token/context-token.test.ts
index f8b0a2046d..01cdf69427 100644
--- a/src/Umbraco.Web.UI.Client/libs/context-api/token/context-token.test.ts
+++ b/src/Umbraco.Web.UI.Client/libs/context-api/token/context-token.test.ts
@@ -5,13 +5,13 @@ import { UmbContextToken } from './context-token';
const testContextAlias = 'my-test-context';
-class MyClass {
+class UmbTestContextTokenClass {
prop = 'value from provider';
}
describe('ContextAlias', () => {
- const contextAlias = new UmbContextToken(testContextAlias);
- const typedProvider = new UmbContextProvider(document.body, contextAlias, new MyClass());
+ const contextAlias = new UmbContextToken(testContextAlias);
+ const typedProvider = new UmbContextProvider(document.body, contextAlias, new UmbTestContextTokenClass());
typedProvider.hostConnected();
after(() => {
@@ -27,7 +27,7 @@ describe('ContextAlias', () => {
document.body.appendChild(element);
const localConsumer = new UmbContextConsumer(element, contextAlias, (_instance) => {
- expect(_instance).to.be.instanceOf(MyClass);
+ expect(_instance).to.be.instanceOf(UmbTestContextTokenClass);
expect(_instance.prop).to.eq('value from provider');
done();
});
@@ -39,8 +39,8 @@ describe('ContextAlias', () => {
const element = document.createElement('div');
document.body.appendChild(element);
- const localConsumer = new UmbContextConsumer(element, testContextAlias, (_instance: MyClass) => {
- expect(_instance).to.be.instanceOf(MyClass);
+ const localConsumer = new UmbContextConsumer(element, testContextAlias, (_instance: UmbTestContextTokenClass) => {
+ expect(_instance).to.be.instanceOf(UmbTestContextTokenClass);
expect(_instance.prop).to.eq('value from provider');
done();
});
From cce5477195d7390ced363436fcbd9528ced241b7 Mon Sep 17 00:00:00 2001
From: Mads Rasmussen
Date: Sun, 16 Apr 2023 20:48:38 +0200
Subject: [PATCH 062/156] add umb prefix
---
.../libs/observable-api/array-state.test.ts | 6 ++--
.../libs/observable-api/array-state.ts | 30 +++++++++----------
.../libs/observable-api/basic-state.ts | 4 +--
.../libs/observable-api/boolean-state.ts | 6 ++--
.../libs/observable-api/class-state.ts | 8 ++---
.../libs/observable-api/number-state.ts | 4 +--
.../libs/observable-api/object-state.test.ts | 29 +++++++-----------
.../libs/observable-api/object-state.ts | 10 +++----
.../partial-update-frozen-array.function.ts | 2 +-
.../libs/observable-api/string-state.ts | 6 ++--
.../libs/store/entity-tree-store.ts | 4 +--
.../libs/store/file-system-tree.store.ts | 4 +--
.../document-blueprint.detail.store.ts | 4 +--
.../repository/document-type.store.ts | 4 +--
.../documents/repository/document.store.ts | 4 +--
.../workspace/document-workspace.context.ts | 10 +++++--
.../repository/media-type.detail.store.ts | 4 +--
.../workspace/media-type-workspace.context.ts | 4 +--
.../media/media/repository/media.store.ts | 4 +--
.../media/repository/media.tree.store.ts | 4 +--
.../workspace/media-workspace.context.ts | 4 +--
.../repository/member-group.store.ts | 4 +--
.../member-group-workspace.context.ts | 4 +--
.../repository/member-type.store.ts | 4 +--
.../member-type-workspace.context.ts | 4 +--
.../members/members/member.detail.store.ts | 4 +--
.../members/repository/member.store.ts | 4 +--
.../packages/repository/package.store.ts | 6 ++--
.../data-types/repository/data-type.store.ts | 4 +--
.../workspace/data-type-workspace.context.ts | 4 +--
.../app-language.context.ts | 4 +--
.../languages/repository/language.store.ts | 4 +--
.../language/language-workspace.context.ts | 6 ++--
.../logviewer/workspace/logviewer.context.ts | 16 +++++-----
.../repository/relation-type.store.ts | 4 +--
.../relation-type-workspace.context.ts | 4 +--
.../shared/collection/collection.context.ts | 6 ++--
.../section-sidebar.context.ts | 4 +--
.../components/section/section.context.ts | 2 +-
.../tree-item-base/tree-item-base.context.ts | 14 ++++-----
.../workspace-property.context.ts | 13 +++++---
.../entity-manager-controller.ts | 4 +--
...kspace-container-structure-helper.class.ts | 6 ++--
.../workspace-context/workspace-context.ts | 4 +--
...rkspace-property-structure-helper.class.ts | 4 +--
.../workspace-split-view-manager.class.ts | 4 +--
.../workspace-structure-manager.class.ts | 6 ++--
.../workspace-variant.context.ts | 11 +++++--
.../workspace/stylesheet-workspace.context.ts | 4 +--
.../templates/repository/template.store.ts | 4 +--
.../dictionary/repository/dictionary.store.ts | 4 +--
.../workspace/dictionary-workspace.context.ts | 4 +--
.../users/current-user/current-user.store.ts | 4 +--
.../repository/user-group.store.ts | 4 +--
.../users/users/repository/user.store.ts | 4 +--
.../src/installer/installer.context.ts | 8 ++---
.../src/stories/store.mdx | 6 ++--
57 files changed, 179 insertions(+), 172 deletions(-)
diff --git a/src/Umbraco.Web.UI.Client/libs/observable-api/array-state.test.ts b/src/Umbraco.Web.UI.Client/libs/observable-api/array-state.test.ts
index 854ec3ee92..1a22dae157 100644
--- a/src/Umbraco.Web.UI.Client/libs/observable-api/array-state.test.ts
+++ b/src/Umbraco.Web.UI.Client/libs/observable-api/array-state.test.ts
@@ -1,11 +1,11 @@
import { expect } from '@open-wc/testing';
-import { ArrayState } from './array-state';
+import { UmbArrayState } from './array-state';
describe('ArrayState', () => {
type ObjectType = { key: string; another: string };
type ArrayType = ObjectType[];
- let subject: ArrayState;
+ let subject: UmbArrayState;
let initialData: ArrayType;
beforeEach(() => {
@@ -14,7 +14,7 @@ describe('ArrayState', () => {
{ key: '2', another: 'myValue2' },
{ key: '3', another: 'myValue3' },
];
- subject = new ArrayState(initialData, (x) => x.key);
+ subject = new UmbArrayState(initialData, (x) => x.key);
});
it('replays latests, no matter the amount of subscriptions.', (done) => {
diff --git a/src/Umbraco.Web.UI.Client/libs/observable-api/array-state.ts b/src/Umbraco.Web.UI.Client/libs/observable-api/array-state.ts
index 7572f89d8b..df29f02b1c 100644
--- a/src/Umbraco.Web.UI.Client/libs/observable-api/array-state.ts
+++ b/src/Umbraco.Web.UI.Client/libs/observable-api/array-state.ts
@@ -4,14 +4,14 @@ import { pushToUniqueArray } from './push-to-unique-array.function';
/**
* @export
- * @class ArrayState
+ * @class UmbArrayState
* @extends {DeepState}
* @description - A RxJS BehaviorSubject which deepFreezes the object-data to ensure its not manipulated from any implementations.
* Additionally the Subject ensures the data is unique, not updating any Observes unless there is an actual change of the content.
*
* The ArrayState provides methods to append data when the data is an Object.
*/
-export class ArrayState extends DeepState {
+export class UmbArrayState extends DeepState {
#getUnique?: (entry: T) => unknown;
#sortMethod?: (a: T, b: T) => number;
@@ -29,7 +29,7 @@ export class ArrayState extends DeepState {
* { key: 1, value: 'foo'},
* { key: 2, value: 'bar'}
* ];
- * const myState = new ArrayState(data, (x) => x.key);
+ * const myState = new UmbArrayState(data, (x) => x.key);
* myState.sortBy((a, b) => (a.sortOrder || 0) - (b.sortOrder || 0));
*/
sortBy(sortMethod?: (a: T, b: T) => number) {
@@ -48,14 +48,14 @@ export class ArrayState extends DeepState {
/**
* @method remove
* @param {unknown[]} uniques - The unique values to remove.
- * @return {ArrayState} Reference to it self.
+ * @return {UmbArrayState} Reference to it self.
* @description - Remove some new data of this Subject.
* @example
Example remove entry with id '1' and '2'
* const data = [
* { id: 1, value: 'foo'},
* { id: 2, value: 'bar'}
* ];
- * const myState = new ArrayState(data, (x) => x.id);
+ * const myState = new UmbArrayState(data, (x) => x.id);
* myState.remove([1, 2]);
*/
remove(uniques: unknown[]) {
@@ -77,14 +77,14 @@ export class ArrayState extends DeepState {
/**
* @method removeOne
* @param {unknown} unique - The unique value to remove.
- * @return {ArrayState} Reference to it self.
+ * @return {UmbArrayState} Reference to it self.
* @description - Remove some new data of this Subject.
* @example
Example remove entry with id '1'
* const data = [
* { id: 1, value: 'foo'},
* { id: 2, value: 'bar'}
* ];
- * const myState = new ArrayState(data, (x) => x.id);
+ * const myState = new UmbArrayState(data, (x) => x.id);
* myState.removeOne(1);
*/
removeOne(unique: unknown) {
@@ -104,7 +104,7 @@ export class ArrayState extends DeepState {
/**
* @method filter
* @param {unknown} filterMethod - The unique value to remove.
- * @return {ArrayState} Reference to it self.
+ * @return {UmbArrayState} Reference to it self.
* @description - Remove some new data of this Subject.
* @example
Example remove entry with key '1'
* const data = [
@@ -112,7 +112,7 @@ export class ArrayState extends DeepState {
* { key: 2, value: 'bar'},
* { key: 3, value: 'poo'}
* ];
- * const myState = new ArrayState(data, (x) => x.key);
+ * const myState = new UmbArrayState(data, (x) => x.key);
* myState.filter((entry) => entry.key !== 1);
*
* Result:
@@ -130,14 +130,14 @@ export class ArrayState extends DeepState {
/**
* @method appendOne
* @param {T} entry - new data to be added in this Subject.
- * @return {ArrayState} Reference to it self.
+ * @return {UmbArrayState} Reference to it self.
* @description - Append some new data to this Subject.
* @example
Example append some data.
* const data = [
* { key: 1, value: 'foo'},
* { key: 2, value: 'bar'}
* ];
- * const myState = new ArrayState(data);
+ * const myState = new UmbArrayState(data);
* myState.append({ key: 1, value: 'replaced-foo'});
*/
appendOne(entry: T) {
@@ -154,14 +154,14 @@ export class ArrayState extends DeepState {
/**
* @method append
* @param {T[]} entries - A array of new data to be added in this Subject.
- * @return {ArrayState} Reference to it self.
+ * @return {UmbArrayState} Reference to it self.
* @description - Append some new data to this Subject, if it compares to existing data it will replace it.
* @example
Example append some data.
* const data = [
* { key: 1, value: 'foo'},
* { key: 2, value: 'bar'}
* ];
- * const myState = new ArrayState(data);
+ * const myState = new UmbArrayState(data);
* myState.append([
* { key: 1, value: 'replaced-foo'},
* { key: 3, value: 'another-bla'}
@@ -184,14 +184,14 @@ export class ArrayState extends DeepState {
* @method updateOne
* @param {unknown} unique - Unique value to find entry to update.
* @param {Partial} entry - new data to be added in this Subject.
- * @return {ArrayState} Reference to it self.
+ * @return {UmbArrayState} Reference to it self.
* @description - Update a item with some new data, requires the ArrayState to be constructed with a getUnique method.
* @example
Example append some data.
* const data = [
* { key: 1, value: 'foo'},
* { key: 2, value: 'bar'}
* ];
- * const myState = new ArrayState(data, (x) => x.key);
+ * const myState = new UmbArrayState(data, (x) => x.key);
* myState.updateOne(2, {value: 'updated-bar'});
*/
updateOne(unique: unknown, entry: Partial) {
diff --git a/src/Umbraco.Web.UI.Client/libs/observable-api/basic-state.ts b/src/Umbraco.Web.UI.Client/libs/observable-api/basic-state.ts
index 57d7f8581b..30972d0ef4 100644
--- a/src/Umbraco.Web.UI.Client/libs/observable-api/basic-state.ts
+++ b/src/Umbraco.Web.UI.Client/libs/observable-api/basic-state.ts
@@ -2,11 +2,11 @@ import { BehaviorSubject } from 'rxjs';
/**
* @export
- * @class BasicState
+ * @class UmbBasicState
* @extends {BehaviorSubject}
* @description - A RxJS BehaviorSubject this Subject ensures the data is unique, not updating any Observes unless there is an actual change of the value.
*/
-export class BasicState extends BehaviorSubject {
+export class UmbBasicState extends BehaviorSubject {
constructor(initialData: T) {
super(initialData);
}
diff --git a/src/Umbraco.Web.UI.Client/libs/observable-api/boolean-state.ts b/src/Umbraco.Web.UI.Client/libs/observable-api/boolean-state.ts
index 5404d43651..85a91d895d 100644
--- a/src/Umbraco.Web.UI.Client/libs/observable-api/boolean-state.ts
+++ b/src/Umbraco.Web.UI.Client/libs/observable-api/boolean-state.ts
@@ -1,12 +1,12 @@
-import { BasicState } from './basic-state';
+import { UmbBasicState } from './basic-state';
/**
* @export
- * @class BooleanState
+ * @class UmbBooleanState
* @extends {BehaviorSubject}
* @description - A RxJS BehaviorSubject this Subject ensures the data is unique, not updating any Observes unless there is an actual change of the value.
*/
-export class BooleanState extends BasicState {
+export class UmbBooleanState extends UmbBasicState {
constructor(initialData: T | boolean) {
super(initialData);
}
diff --git a/src/Umbraco.Web.UI.Client/libs/observable-api/class-state.ts b/src/Umbraco.Web.UI.Client/libs/observable-api/class-state.ts
index 11c38dc6b9..586710e38b 100644
--- a/src/Umbraco.Web.UI.Client/libs/observable-api/class-state.ts
+++ b/src/Umbraco.Web.UI.Client/libs/observable-api/class-state.ts
@@ -1,16 +1,16 @@
import { BehaviorSubject } from 'rxjs';
-interface ClassStateData {
- equal(otherClass: ClassStateData): boolean;
+interface UmbClassStateData {
+ equal(otherClass: UmbClassStateData): boolean;
}
/**
* @export
- * @class ClassState
+ * @class UmbClassState
* @extends {BehaviorSubject}
* @description - A RxJS BehaviorSubject which can hold class instance which has a equal method to compare in coming instances for changes.
*/
-export class ClassState extends BehaviorSubject {
+export class UmbClassState extends BehaviorSubject {
constructor(initialData: T) {
super(initialData);
}
diff --git a/src/Umbraco.Web.UI.Client/libs/observable-api/number-state.ts b/src/Umbraco.Web.UI.Client/libs/observable-api/number-state.ts
index ded3defeb9..82387e9580 100644
--- a/src/Umbraco.Web.UI.Client/libs/observable-api/number-state.ts
+++ b/src/Umbraco.Web.UI.Client/libs/observable-api/number-state.ts
@@ -1,4 +1,4 @@
-import { BasicState } from './basic-state';
+import { UmbBasicState } from './basic-state';
/**
* @export
@@ -6,7 +6,7 @@ import { BasicState } from './basic-state';
* @extends {BehaviorSubject}
* @description - A RxJS BehaviorSubject this Subject ensures the data is unique, not updating any Observes unless there is an actual change of the value.
*/
-export class NumberState extends BasicState {
+export class NumberState extends UmbBasicState {
constructor(initialData: T | number) {
super(initialData);
}
diff --git a/src/Umbraco.Web.UI.Client/libs/observable-api/object-state.test.ts b/src/Umbraco.Web.UI.Client/libs/observable-api/object-state.test.ts
index 66b1e0deef..75b4d3bbe2 100644
--- a/src/Umbraco.Web.UI.Client/libs/observable-api/object-state.test.ts
+++ b/src/Umbraco.Web.UI.Client/libs/observable-api/object-state.test.ts
@@ -1,21 +1,18 @@
import { expect } from '@open-wc/testing';
-import { ObjectState } from './object-state';
+import { UmbObjectState } from './object-state';
-describe('ObjectState', () => {
+describe('UmbObjectState', () => {
+ type ObjectType = { key: string; another: string };
- type ObjectType = {key: string, another: string};
-
- let subject: ObjectState;
+ let subject: UmbObjectState;
let initialData: ObjectType;
beforeEach(() => {
- initialData = {key: 'some', another: 'myValue'};
- subject = new ObjectState(initialData);
+ initialData = { key: 'some', another: 'myValue' };
+ subject = new UmbObjectState(initialData);
});
-
it('replays latests, no matter the amount of subscriptions.', (done) => {
-
const observer = subject.asObservable();
observer.subscribe((value) => {
expect(value).to.be.equal(initialData);
@@ -24,28 +21,24 @@ describe('ObjectState', () => {
expect(value).to.be.equal(initialData);
done();
});
-
});
it('use getObservablePart, updates on its specific change.', (done) => {
-
let amountOfCallbacks = 0;
- const subObserver = subject.getObservablePart(data => data.another);
+ const subObserver = subject.getObservablePart((data) => data.another);
subObserver.subscribe((value) => {
amountOfCallbacks++;
- if(amountOfCallbacks === 1) {
+ if (amountOfCallbacks === 1) {
expect(value).to.be.equal('myValue');
}
- if(amountOfCallbacks === 2) {
+ if (amountOfCallbacks === 2) {
expect(value).to.be.equal('myNewValue');
done();
}
});
- subject.update({key: 'change_this_first_should_not_trigger_update'});
- subject.update({another: 'myNewValue'});
-
+ subject.update({ key: 'change_this_first_should_not_trigger_update' });
+ subject.update({ another: 'myNewValue' });
});
-
});
diff --git a/src/Umbraco.Web.UI.Client/libs/observable-api/object-state.ts b/src/Umbraco.Web.UI.Client/libs/observable-api/object-state.ts
index 04c72dd9b3..fdb85a43b9 100644
--- a/src/Umbraco.Web.UI.Client/libs/observable-api/object-state.ts
+++ b/src/Umbraco.Web.UI.Client/libs/observable-api/object-state.ts
@@ -2,22 +2,22 @@ import { DeepState } from './deep-state';
/**
* @export
- * @class ObjectState
+ * @class UmbObjectState
* @extends {DeepState}
* @description - A RxJS BehaviorSubject which deepFreezes the object-data to ensure its not manipulated from any implementations.
* Additionally the Subject ensures the data is unique, not updating any Observes unless there is an actual change of the content.
*
- * The ObjectState provides methods to append data when the data is an Object.
+ * The UmbObjectState provides methods to append data when the data is an Object.
*/
-export class ObjectState extends DeepState {
+export class UmbObjectState extends DeepState {
/**
* @method update
* @param {Partial} partialData - A object containing some of the data to update in this Subject.
* @description - Append some new data to this Object.
- * @return {ObjectState} Reference to it self.
+ * @return {UmbObjectState} Reference to it self.
* @example
Example append some data.
* const data = {key: 'myKey', value: 'myInitialValue'};
- * const myState = new ObjectState(data);
+ * const myState = new UmbObjectState(data);
* myState.update({value: 'myNewValue'});
*/
update(partialData: Partial) {
diff --git a/src/Umbraco.Web.UI.Client/libs/observable-api/partial-update-frozen-array.function.ts b/src/Umbraco.Web.UI.Client/libs/observable-api/partial-update-frozen-array.function.ts
index 14a2e4c5b6..9064fb0384 100644
--- a/src/Umbraco.Web.UI.Client/libs/observable-api/partial-update-frozen-array.function.ts
+++ b/src/Umbraco.Web.UI.Client/libs/observable-api/partial-update-frozen-array.function.ts
@@ -5,7 +5,7 @@
* @param {(mappable: T) => R} mappingFunction - Method to return the part for this Observable to return.
* @param {(previousResult: R, currentResult: R) => boolean} [memoizationFunction] - Method to Compare if the data has changed. Should return true when data is different.
* @description - Creates a RxJS Observable from RxJS Subject.
- * @example
Example append new entry for a ArrayState or a part of DeepState/ObjectState it which is an array. Where the key is unique and the item will be updated if matched with existing.
+ * @example
Example append new entry for a ArrayState or a part of DeepState/UmbObjectState it which is an array. Where the key is unique and the item will be updated if matched with existing.
* const partialEntry = {value: 'myValue'};
* const newDataSet = partialUpdateFrozenArray(mySubject.getValue(), partialEntry, x => x.key === 'myKey');
* mySubject.next(newDataSet);
diff --git a/src/Umbraco.Web.UI.Client/libs/observable-api/string-state.ts b/src/Umbraco.Web.UI.Client/libs/observable-api/string-state.ts
index d3e9689a7b..d78d91127e 100644
--- a/src/Umbraco.Web.UI.Client/libs/observable-api/string-state.ts
+++ b/src/Umbraco.Web.UI.Client/libs/observable-api/string-state.ts
@@ -1,12 +1,12 @@
-import { BasicState } from './basic-state';
+import { UmbBasicState } from './basic-state';
/**
* @export
* @class StringState
- * @extends {BasicState}
+ * @extends {UmbBasicState}
* @description - A RxJS BehaviorSubject this Subject ensures the data is unique, not updating any Observes unless there is an actual change of the value.
*/
-export class StringState extends BasicState {
+export class StringState extends UmbBasicState {
constructor(initialData: T | string) {
super(initialData);
}
diff --git a/src/Umbraco.Web.UI.Client/libs/store/entity-tree-store.ts b/src/Umbraco.Web.UI.Client/libs/store/entity-tree-store.ts
index ea94db043a..dfa6815a04 100644
--- a/src/Umbraco.Web.UI.Client/libs/store/entity-tree-store.ts
+++ b/src/Umbraco.Web.UI.Client/libs/store/entity-tree-store.ts
@@ -1,5 +1,5 @@
import { EntityTreeItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
-import { ArrayState, partialUpdateFrozenArray } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState, partialUpdateFrozenArray } from '@umbraco-cms/backoffice/observable-api';
import { UmbStoreBase, UmbTreeStore } from '@umbraco-cms/backoffice/store';
/**
@@ -9,7 +9,7 @@ import { UmbStoreBase, UmbTreeStore } from '@umbraco-cms/backoffice/store';
* @description - General Tree Data Store
*/
export class UmbEntityTreeStore extends UmbStoreBase implements UmbTreeStore {
- #data = new ArrayState([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
/**
* Appends items to the store
diff --git a/src/Umbraco.Web.UI.Client/libs/store/file-system-tree.store.ts b/src/Umbraco.Web.UI.Client/libs/store/file-system-tree.store.ts
index 8afa8ca62e..3bb024511a 100644
--- a/src/Umbraco.Web.UI.Client/libs/store/file-system-tree.store.ts
+++ b/src/Umbraco.Web.UI.Client/libs/store/file-system-tree.store.ts
@@ -1,5 +1,5 @@
import { FileSystemTreeItemPresentationModel } from '@umbraco-cms/backoffice/backend-api';
-import { ArrayState, partialUpdateFrozenArray } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState, partialUpdateFrozenArray } from '@umbraco-cms/backoffice/observable-api';
import { UmbStoreBase, UmbTreeStore } from '@umbraco-cms/backoffice/store';
/**
@@ -9,7 +9,7 @@ import { UmbStoreBase, UmbTreeStore } from '@umbraco-cms/backoffice/store';
* @description - General Tree Data Store
*/
export class UmbFileSystemTreeStore extends UmbStoreBase implements UmbTreeStore {
- #data = new ArrayState([], (x) => x.path);
+ #data = new UmbArrayState([], (x) => x.path);
/**
* Appends items to the store
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/documents/document-blueprints/document-blueprint.detail.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/documents/document-blueprints/document-blueprint.detail.store.ts
index f60b478a36..054c05d1ec 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/documents/document-blueprints/document-blueprint.detail.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/documents/document-blueprints/document-blueprint.detail.store.ts
@@ -1,6 +1,6 @@
import type { DocumentBlueprintDetails } from '@umbraco-cms/backoffice/models';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
@@ -12,7 +12,7 @@ import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
*/
export class UmbDocumentBlueprintStore extends UmbStoreBase {
// TODO: use the right type:
- #data = new ArrayState([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
constructor(host: UmbControllerHostElement) {
super(host, UMB_DOCUMENT_BLUEPRINT_STORE_CONTEXT_TOKEN.toString());
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/documents/document-types/repository/document-type.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/documents/document-types/repository/document-type.store.ts
index 23b64c0942..3ad9e8e4e2 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/documents/document-types/repository/document-type.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/documents/document-types/repository/document-type.store.ts
@@ -1,6 +1,6 @@
import { DocumentTypeResponseModel } from '@umbraco-cms/backoffice/backend-api';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
@@ -11,7 +11,7 @@ import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
* @description - Data Store for Document Types
*/
export class UmbDocumentTypeStore extends UmbStoreBase {
- #data = new ArrayState([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
/**
* Creates an instance of UmbDocumentTypeStore.
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/repository/document.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/repository/document.store.ts
index d53818f95e..5af98a68b8 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/repository/document.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/repository/document.store.ts
@@ -1,6 +1,6 @@
import { DocumentResponseModel } from '@umbraco-cms/backoffice/backend-api';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
@@ -11,7 +11,7 @@ import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
* @description - Data Store for Template Details
*/
export class UmbDocumentStore extends UmbStoreBase {
- #data = new ArrayState([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
/**
* Creates an instance of UmbDocumentDetailStore.
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/workspace/document-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/workspace/document-workspace.context.ts
index e4d3f0b984..3b38145096 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/workspace/document-workspace.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/workspace/document-workspace.context.ts
@@ -6,7 +6,11 @@ import { UmbVariantId } from '../../../shared/variants/variant-id.class';
import { UmbWorkspacePropertyStructureManager } from '../../../shared/components/workspace/workspace-context/workspace-structure-manager.class';
import { UmbWorkspaceSplitViewManager } from '../../../shared/components/workspace/workspace-context/workspace-split-view-manager.class';
import type { CreateDocumentRequestModel, DocumentResponseModel } from '@umbraco-cms/backoffice/backend-api';
-import { partialUpdateFrozenArray, ObjectState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
+import {
+ partialUpdateFrozenArray,
+ UmbObjectState,
+ UmbObserverController,
+} from '@umbraco-cms/backoffice/observable-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
// TODO: should this context be called DocumentDraft instead of workspace? or should the draft be part of this?
@@ -22,12 +26,12 @@ export class UmbDocumentWorkspaceContext
* For now lets not share this publicly as it can become confusing.
* TODO: Use this to compare, for variants with changes.
*/
- #document = new ObjectState(undefined);
+ #document = new UmbObjectState(undefined);
/**
* The document is the current state/draft version of the document.
*/
- #draft = new ObjectState(undefined);
+ #draft = new UmbObjectState(undefined);
readonly unique = this.#draft.getObservablePart((data) => data?.id);
readonly documentTypeKey = this.#draft.getObservablePart((data) => data?.contentTypeId);
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/media/media-types/repository/media-type.detail.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/media/media-types/repository/media-type.detail.store.ts
index d6ef9c0fa9..844b1f5a1e 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/media/media-types/repository/media-type.detail.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/media/media-types/repository/media-type.detail.store.ts
@@ -1,7 +1,7 @@
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import type { MediaTypeDetails } from '@umbraco-cms/backoffice/models';
/**
@@ -11,7 +11,7 @@ import type { MediaTypeDetails } from '@umbraco-cms/backoffice/models';
* @description - Details Data Store for Media Types
*/
export class UmbMediaTypeStore extends UmbStoreBase {
- #data = new ArrayState([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
constructor(host: UmbControllerHostElement) {
super(host, UMB_MEDIA_TYPE_STORE_CONTEXT_TOKEN.toString());
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/media/media-types/workspace/media-type-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/media/media-types/workspace/media-type-workspace.context.ts
index 648c880015..921a41b6b1 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/media/media-types/workspace/media-type-workspace.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/media/media-types/workspace/media-type-workspace.context.ts
@@ -2,7 +2,7 @@ import { UmbWorkspaceContext } from '../../../shared/components/workspace/worksp
import { UmbMediaTypeRepository } from '../repository/media-type.repository';
import { UmbEntityWorkspaceContextInterface } from '@umbraco-cms/backoffice/workspace';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { ObjectState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbObjectState } from '@umbraco-cms/backoffice/observable-api';
import type { MediaTypeDetails } from '@umbraco-cms/backoffice/models';
type EntityType = MediaTypeDetails;
@@ -10,7 +10,7 @@ export class UmbWorkspaceMediaTypeContext
extends UmbWorkspaceContext
implements UmbEntityWorkspaceContextInterface
{
- #data = new ObjectState(undefined);
+ #data = new UmbObjectState(undefined);
data = this.#data.asObservable();
name = this.#data.getObservablePart((data) => data?.name);
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/media/media/repository/media.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/media/media/repository/media.store.ts
index ddc1a8b5fc..c6eb6e22f7 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/media/media/repository/media.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/media/media/repository/media.store.ts
@@ -1,6 +1,6 @@
import type { MediaDetails } from '../';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
@@ -11,7 +11,7 @@ import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
* @description - Data Store for Template Details
*/
export class UmbMediaStore extends UmbStoreBase {
- #data = new ArrayState([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
/**
* Creates an instance of UmbMediaStore.
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/media/media/repository/media.tree.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/media/media/repository/media.tree.store.ts
index 9c63d9c946..babdf21049 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/media/media/repository/media.tree.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/media/media/repository/media.tree.store.ts
@@ -1,6 +1,6 @@
import { EntityTreeItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import { UmbEntityTreeStore } from '@umbraco-cms/backoffice/store';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
@@ -13,7 +13,7 @@ export const UMB_MEDIA_TREE_STORE_CONTEXT_TOKEN = new UmbContextToken([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
/**
* Creates an instance of UmbMediaTreeStore.
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/media/media/workspace/media-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/media/media/workspace/media-workspace.context.ts
index 751b587560..9e50b63768 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/media/media/workspace/media-workspace.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/media/media/workspace/media-workspace.context.ts
@@ -2,7 +2,7 @@ import { UmbWorkspaceContext } from '../../../shared/components/workspace/worksp
import { UmbMediaRepository } from '../repository/media.repository';
import type { MediaDetails } from '../';
import type { UmbEntityWorkspaceContextInterface } from '@umbraco-cms/backoffice/workspace';
-import { appendToFrozenArray, ObjectState } from '@umbraco-cms/backoffice/observable-api';
+import { appendToFrozenArray, UmbObjectState } from '@umbraco-cms/backoffice/observable-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
type EntityType = MediaDetails;
@@ -10,7 +10,7 @@ export class UmbMediaWorkspaceContext
extends UmbWorkspaceContext
implements UmbEntityWorkspaceContextInterface
{
- #data = new ObjectState(undefined);
+ #data = new UmbObjectState(undefined);
data = this.#data.asObservable();
name = this.#data.getObservablePart((data) => data?.name);
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/members/member-groups/repository/member-group.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/members/member-groups/repository/member-group.store.ts
index 38fd8ede11..44eff1edff 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/members/member-groups/repository/member-group.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/members/member-groups/repository/member-group.store.ts
@@ -1,6 +1,6 @@
import type { MemberGroupDetails } from '@umbraco-cms/backoffice/models';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
@@ -11,7 +11,7 @@ import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
* @description - Data Store for Member Groups
*/
export class UmbMemberGroupStore extends UmbStoreBase {
- #data = new ArrayState([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
constructor(host: UmbControllerHostElement) {
super(host, UMB_MEMBER_GROUP_STORE_CONTEXT_TOKEN.toString());
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/members/member-groups/workspace/member-group-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/members/member-groups/workspace/member-group-workspace.context.ts
index ecf64222eb..bf8f38eb1e 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/members/member-groups/workspace/member-group-workspace.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/members/member-groups/workspace/member-group-workspace.context.ts
@@ -3,14 +3,14 @@ import { UmbMemberGroupRepository } from '../repository/member-group.repository'
import { UmbEntityWorkspaceContextInterface } from '@umbraco-cms/backoffice/workspace';
import type { MemberGroupDetails } from '@umbraco-cms/backoffice/models';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { ObjectState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbObjectState } from '@umbraco-cms/backoffice/observable-api';
type EntityType = MemberGroupDetails;
export class UmbWorkspaceMemberGroupContext
extends UmbWorkspaceContext
implements UmbEntityWorkspaceContextInterface
{
- #data = new ObjectState(undefined);
+ #data = new UmbObjectState(undefined);
data = this.#data.asObservable();
name = this.#data.getObservablePart((data) => data?.name);
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/members/member-types/repository/member-type.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/members/member-types/repository/member-type.store.ts
index b9afd506a2..c379a95620 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/members/member-types/repository/member-type.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/members/member-types/repository/member-type.store.ts
@@ -1,7 +1,7 @@
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import type { MemberTypeDetails } from '@umbraco-cms/backoffice/models';
/**
@@ -11,7 +11,7 @@ import type { MemberTypeDetails } from '@umbraco-cms/backoffice/models';
* @description - Data Store for Member Types
*/
export class UmbMemberTypeStore extends UmbStoreBase {
- #data = new ArrayState([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
constructor(host: UmbControllerHostElement) {
super(host, UMB_MEMBER_TYPE_STORE_CONTEXT_TOKEN.toString());
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/members/member-types/workspace/member-type-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/members/member-types/workspace/member-type-workspace.context.ts
index 8274bec279..9acaa2b9f7 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/members/member-types/workspace/member-type-workspace.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/members/member-types/workspace/member-type-workspace.context.ts
@@ -1,7 +1,7 @@
import { UmbWorkspaceContext } from '../../../shared/components/workspace/workspace-context/workspace-context';
import { UmbMemberTypeRepository } from '../repository/member-type.repository';
import { UmbEntityWorkspaceContextInterface } from '@umbraco-cms/backoffice/workspace';
-import { ObjectState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbObjectState } from '@umbraco-cms/backoffice/observable-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
// TODO => use correct tpye
@@ -11,7 +11,7 @@ export class UmbMemberTypeWorkspaceContext
extends UmbWorkspaceContext
implements UmbEntityWorkspaceContextInterface
{
- #data = new ObjectState(undefined);
+ #data = new UmbObjectState(undefined);
name = this.#data.getObservablePart((data) => data?.name);
constructor(host: UmbControllerHostElement) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/members/members/member.detail.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/members/members/member.detail.store.ts
index 973f79f5c4..a5b8248990 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/members/members/member.detail.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/members/members/member.detail.store.ts
@@ -2,7 +2,7 @@ import { Observable } from 'rxjs';
import { umbMemberData } from '../../../core/mocks/data/member.data';
import type { MemberDetails, MemberGroupDetails } from '@umbraco-cms/backoffice/models';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
-import { ArrayState, createObservablePart } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState, createObservablePart } from '@umbraco-cms/backoffice/observable-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
import { UmbEntityDetailStore, UmbStoreBase } from '@umbraco-cms/backoffice/store';
@@ -13,7 +13,7 @@ import { UmbEntityDetailStore, UmbStoreBase } from '@umbraco-cms/backoffice/stor
* @description - Data Store for Members
*/
export class UmbMemberStore extends UmbStoreBase implements UmbEntityDetailStore {
- #data = new ArrayState([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
public groups = this.#data.asObservable();
constructor(private host: UmbControllerHostElement) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/members/members/repository/member.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/members/members/repository/member.store.ts
index 4b01b1a8d8..958cb319ab 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/members/members/repository/member.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/members/members/repository/member.store.ts
@@ -1,7 +1,7 @@
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import type { MemberDetails } from '@umbraco-cms/backoffice/models';
/**
@@ -11,7 +11,7 @@ import type { MemberDetails } from '@umbraco-cms/backoffice/models';
* @description - Data Store for Members
*/
export class UmbMemberStore extends UmbStoreBase {
- #data = new ArrayState([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
constructor(host: UmbControllerHostElement) {
super(host, UMB_MEMBER_STORE_CONTEXT_TOKEN.toString());
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/packages/repository/package.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/packages/repository/package.store.ts
index 8ed4792471..0d0a8440a0 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/packages/repository/package.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/packages/repository/package.store.ts
@@ -5,7 +5,7 @@ import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
import type { UmbPackage } from '@umbraco-cms/backoffice/models';
import type { PackageMigrationStatusResponseModel } from '@umbraco-cms/backoffice/backend-api';
import type { ManifestBase } from '@umbraco-cms/backoffice/extensions-registry';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
export const UMB_PACKAGE_STORE_TOKEN = new UmbContextToken('UmbPackageStore');
@@ -21,9 +21,9 @@ export class UmbPackageStore extends UmbStoreBase {
*/
#packages = new ReplaySubject>(1);
- #extensions = new ArrayState([], (e) => e.alias);
+ #extensions = new UmbArrayState([], (e) => e.alias);
- #migrations = new ArrayState([], (e) => e.packageName);
+ #migrations = new UmbArrayState([], (e) => e.packageName);
/**
* Observable of packages with extensions
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/settings/data-types/repository/data-type.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/settings/data-types/repository/data-type.store.ts
index 71db9b0013..b3aea6ee17 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/settings/data-types/repository/data-type.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/settings/data-types/repository/data-type.store.ts
@@ -1,6 +1,6 @@
import type { DataTypeResponseModel } from '@umbraco-cms/backoffice/backend-api';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
@@ -13,7 +13,7 @@ export const UMB_DATA_TYPE_STORE_CONTEXT_TOKEN = new UmbContextToken([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
/**
* Creates an instance of UmbDataTypeStore.
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/settings/data-types/workspace/data-type-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/settings/data-types/workspace/data-type-workspace.context.ts
index 127850dc1f..15a5714fc1 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/settings/data-types/workspace/data-type-workspace.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/settings/data-types/workspace/data-type-workspace.context.ts
@@ -2,7 +2,7 @@ import { UmbWorkspaceContext } from '../../../shared/components/workspace/worksp
import { UmbDataTypeRepository } from '../repository/data-type.repository';
import { UmbEntityWorkspaceContextInterface } from '@umbraco-cms/backoffice/workspace';
import type { CreateDataTypeRequestModel, DataTypeResponseModel } from '@umbraco-cms/backoffice/backend-api';
-import { appendToFrozenArray, ObjectState } from '@umbraco-cms/backoffice/observable-api';
+import { appendToFrozenArray, UmbObjectState } from '@umbraco-cms/backoffice/observable-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
export class UmbDataTypeWorkspaceContext
@@ -10,7 +10,7 @@ export class UmbDataTypeWorkspaceContext
implements UmbEntityWorkspaceContextInterface
{
// TODO: revisit. temp solution because the create and response models are different.
- #data = new ObjectState(undefined);
+ #data = new UmbObjectState(undefined);
data = this.#data.asObservable();
name = this.#data.getObservablePart((data) => data?.name);
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/settings/languages/app-language-select/app-language.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/settings/languages/app-language-select/app-language.context.ts
index 6f85f5c271..4ed5119e48 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/settings/languages/app-language-select/app-language.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/settings/languages/app-language-select/app-language.context.ts
@@ -1,5 +1,5 @@
import { UmbLanguageRepository } from '../repository/language.repository';
-import { ObjectState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
+import { UmbObjectState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
import { LanguageResponseModel } from '@umbraco-cms/backoffice/backend-api';
@@ -10,7 +10,7 @@ export class UmbAppLanguageContext {
#languages: Array = [];
- #appLanguage = new ObjectState(undefined);
+ #appLanguage = new UmbObjectState(undefined);
appLanguage = this.#appLanguage.asObservable();
constructor(host: UmbControllerHostElement) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/settings/languages/repository/language.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/settings/languages/repository/language.store.ts
index 820b66fc50..4844685cd7 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/settings/languages/repository/language.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/settings/languages/repository/language.store.ts
@@ -1,7 +1,7 @@
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import { LanguageResponseModel } from '@umbraco-cms/backoffice/backend-api';
export const UMB_LANGUAGE_STORE_CONTEXT_TOKEN = new UmbContextToken('UmbLanguageStore');
@@ -13,7 +13,7 @@ export const UMB_LANGUAGE_STORE_CONTEXT_TOKEN = new UmbContextToken([], (x) => x.isoCode);
+ #data = new UmbArrayState([], (x) => x.isoCode);
data = this.#data.asObservable();
constructor(host: UmbControllerHostElement) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/settings/languages/workspace/language/language-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/settings/languages/workspace/language/language-workspace.context.ts
index f51bfe3075..782f623ff0 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/settings/languages/workspace/language/language-workspace.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/settings/languages/workspace/language/language-workspace.context.ts
@@ -2,18 +2,18 @@ import { UmbLanguageRepository } from '../../repository/language.repository';
import { UmbWorkspaceContext } from '../../../../shared/components/workspace/workspace-context/workspace-context';
import { UmbEntityWorkspaceContextInterface } from '@umbraco-cms/backoffice/workspace';
import type { LanguageResponseModel } from '@umbraco-cms/backoffice/backend-api';
-import { ObjectState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbObjectState } from '@umbraco-cms/backoffice/observable-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
export class UmbLanguageWorkspaceContext
extends UmbWorkspaceContext
implements UmbEntityWorkspaceContextInterface
{
- #data = new ObjectState(undefined);
+ #data = new UmbObjectState(undefined);
data = this.#data.asObservable();
// TODO: this is a temp solution to bubble validation errors to the UI
- #validationErrors = new ObjectState(undefined);
+ #validationErrors = new UmbObjectState(undefined);
validationErrors = this.#validationErrors.asObservable();
constructor(host: UmbControllerHostElement) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/settings/logviewer/workspace/logviewer.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/settings/logviewer/workspace/logviewer.context.ts
index 6bec1b10e9..95bf69be44 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/settings/logviewer/workspace/logviewer.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/settings/logviewer/workspace/logviewer.context.ts
@@ -1,10 +1,10 @@
import { UmbLogViewerRepository } from '../repository/log-viewer.repository';
import {
- BasicState,
- ArrayState,
+ UmbBasicState,
+ UmbArrayState,
createObservablePart,
DeepState,
- ObjectState,
+ UmbObjectState,
StringState,
} from '@umbraco-cms/backoffice/observable-api';
import {
@@ -58,7 +58,7 @@ export class UmbLogViewerWorkspaceContext {
endDate: this.today,
};
- #savedSearches = new ObjectState(undefined);
+ #savedSearches = new UmbObjectState(undefined);
savedSearches = createObservablePart(this.#savedSearches, (data) => data?.items);
#logCount = new DeepState(null);
@@ -70,7 +70,7 @@ export class UmbLogViewerWorkspaceContext {
#loggers = new DeepState(null);
loggers = createObservablePart(this.#loggers, (data) => data?.items);
- #canShowLogs = new BasicState(null);
+ #canShowLogs = new UmbBasicState(null);
canShowLogs = createObservablePart(this.#canShowLogs, (data) => data);
#filterExpression = new StringState('');
@@ -79,17 +79,17 @@ export class UmbLogViewerWorkspaceContext {
#messageTemplates = new DeepState(null);
messageTemplates = createObservablePart(this.#messageTemplates, (data) => data);
- #logLevelsFilter = new ArrayState([]);
+ #logLevelsFilter = new UmbArrayState([]);
logLevelsFilter = createObservablePart(this.#logLevelsFilter, (data) => data);
#logs = new DeepState(null);
logs = createObservablePart(this.#logs, (data) => data?.items);
logsTotal = createObservablePart(this.#logs, (data) => data?.total);
- #polling = new ObjectState({ enabled: false, interval: 2000 });
+ #polling = new UmbObjectState({ enabled: false, interval: 2000 });
polling = createObservablePart(this.#polling, (data) => data);
- #sortingDirection = new BasicState(DirectionModel.ASCENDING);
+ #sortingDirection = new UmbBasicState(DirectionModel.ASCENDING);
sortingDirection = createObservablePart(this.#sortingDirection, (data) => data);
#intervalID: number | null = null;
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/relation-type.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/relation-type.store.ts
index f8ac1dd072..71dac38ee3 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/relation-type.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/repository/relation-type.store.ts
@@ -1,6 +1,6 @@
import type { RelationTypeResponseModel } from '@umbraco-cms/backoffice/backend-api';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
@@ -13,7 +13,7 @@ export const UMB_RELATION_TYPE_STORE_CONTEXT_TOKEN = new UmbContextToken([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
/**
* Creates an instance of UmbRelationTypeStore.
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/workspace/relation-type-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/workspace/relation-type-workspace.context.ts
index 81abf8f66f..3c87efd4c2 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/workspace/relation-type-workspace.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/settings/relation-types/workspace/relation-type-workspace.context.ts
@@ -3,14 +3,14 @@ import { UmbRelationTypeRepository } from '../repository/relation-type.repositor
import { UmbEntityWorkspaceContextInterface } from '@umbraco-cms/backoffice/workspace';
import type { RelationTypeBaseModel, RelationTypeResponseModel } from '@umbraco-cms/backoffice/backend-api';
-import { ObjectState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbObjectState } from '@umbraco-cms/backoffice/observable-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
export class UmbRelationTypeWorkspaceContext
extends UmbWorkspaceContext
implements UmbEntityWorkspaceContextInterface
{
- #data = new ObjectState(undefined);
+ #data = new UmbObjectState(undefined);
data = this.#data.asObservable();
name = this.#data.getObservablePart((data) => data?.name);
id = this.#data.getObservablePart((data) => data?.id);
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/collection/collection.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/collection/collection.context.ts
index 9668a51d68..3d417cdf4a 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/collection/collection.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/collection/collection.context.ts
@@ -2,7 +2,7 @@ import { Observable } from 'rxjs';
import type { EntityTreeItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
import type { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
import { UmbContextToken, UmbContextConsumerController } from '@umbraco-cms/backoffice/context-api';
-import { ArrayState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
import { umbExtensionsRegistry, createExtensionClass } from '@umbraco-cms/backoffice/extensions-api';
import { UmbTreeRepository } from '@umbraco-cms/backoffice/repository';
@@ -17,10 +17,10 @@ export class UmbCollectionContext;
- #data = new ArrayState(>[]);
+ #data = new UmbArrayState(>[]);
public readonly data = this.#data.asObservable();
- #selection = new ArrayState(>[]);
+ #selection = new UmbArrayState(>[]);
public readonly selection = this.#selection.asObservable();
/*
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/section/section-sidebar/section-sidebar.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/section/section-sidebar/section-sidebar.context.ts
index c3a4264b2a..799d6f015b 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/section/section-sidebar/section-sidebar.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/section/section-sidebar/section-sidebar.context.ts
@@ -1,10 +1,10 @@
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { StringState, BooleanState } from '@umbraco-cms/backoffice/observable-api';
+import { StringState, UmbBooleanState } from '@umbraco-cms/backoffice/observable-api';
export class UmbSectionSidebarContext {
#host: UmbControllerHostElement;
- #contextMenuIsOpen = new BooleanState(false);
+ #contextMenuIsOpen = new UmbBooleanState(false);
contextMenuIsOpen = this.#contextMenuIsOpen.asObservable();
#entityType = new StringState(undefined);
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/section/section.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/section/section.context.ts
index 2f90f58eca..41622825a7 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/section/section.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/section/section.context.ts
@@ -1,6 +1,6 @@
import type { ManifestSection } from '@umbraco-cms/backoffice/extensions-registry';
import type { Entity } from '@umbraco-cms/backoffice/models';
-import { ObjectState, StringState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbObjectState, StringState } from '@umbraco-cms/backoffice/observable-api';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
export type ActiveTreeItemType = Entity | undefined;
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/tree/tree-item-base/tree-item-base.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/tree/tree-item-base/tree-item-base.context.ts
index 0465630182..9f85452b99 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/tree/tree-item-base/tree-item-base.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/tree/tree-item-base/tree-item-base.context.ts
@@ -7,7 +7,7 @@ import { UmbSectionContext, UMB_SECTION_CONTEXT_TOKEN } from '../../section/sect
import { UmbTreeContextBase } from '../tree.context';
import { UmbTreeItemContext } from '../tree-item.context.interface';
import { ManifestEntityAction } from '@umbraco-cms/backoffice/extensions-registry';
-import { BooleanState, DeepState, StringState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
+import { UmbBooleanState, DeepState, StringState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
import {
UmbContextConsumerController,
@@ -30,22 +30,22 @@ export class UmbTreeItemContextBase(undefined);
treeItem = this.#treeItem.asObservable();
- #hasChildren = new BooleanState(false);
+ #hasChildren = new UmbBooleanState(false);
hasChildren = this.#hasChildren.asObservable();
- #isLoading = new BooleanState(false);
+ #isLoading = new UmbBooleanState(false);
isLoading = this.#isLoading.asObservable();
- #isSelectable = new BooleanState(false);
+ #isSelectable = new UmbBooleanState(false);
isSelectable = this.#isSelectable.asObservable();
- #isSelected = new BooleanState(false);
+ #isSelected = new UmbBooleanState(false);
isSelected = this.#isSelected.asObservable();
- #isActive = new BooleanState(false);
+ #isActive = new UmbBooleanState(false);
isActive = this.#isActive.asObservable();
- #hasActions = new BooleanState(false);
+ #hasActions = new UmbBooleanState(false);
hasActions = this.#hasActions.asObservable();
#path = new StringState('');
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace-property/workspace-property.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace-property/workspace-property.context.ts
index e069c2a5b5..9cbb1616de 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace-property/workspace-property.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace-property/workspace-property.context.ts
@@ -3,7 +3,12 @@ import { UmbWorkspaceVariableEntityContextInterface } from '../workspace/workspa
import { UMB_WORKSPACE_VARIANT_CONTEXT_TOKEN } from '../workspace/workspace-variant/workspace-variant.context';
import type { DataTypeResponseModel } from '@umbraco-cms/backoffice/backend-api';
import type { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { ClassState, ObjectState, StringState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
+import {
+ UmbClassState,
+ UmbObjectState,
+ StringState,
+ UmbObserverController,
+} from '@umbraco-cms/backoffice/observable-api';
import {
UmbContextConsumerController,
UmbContextProviderController,
@@ -25,7 +30,7 @@ export class UmbWorkspacePropertyContext {
private _providerController: UmbContextProviderController;
- private _data = new ObjectState>({});
+ private _data = new UmbObjectState>({});
public readonly alias = this._data.getObservablePart((data) => data.alias);
public readonly label = this._data.getObservablePart((data) => data.label);
@@ -35,7 +40,7 @@ export class UmbWorkspacePropertyContext {
#workspaceVariantId?: UmbVariantId;
- #variantId = new ClassState(undefined);
+ #variantId = new UmbClassState(undefined);
public readonly variantId = this.#variantId.asObservable();
private _variantDifference = new StringState(undefined);
@@ -88,7 +93,7 @@ export class UmbWorkspacePropertyContext {
this._data.update({ description });
}
public setValue(value: WorkspacePropertyData['value']) {
- // Note: Do not try to compare new / old value, as it can of any type. We trust the ObjectState in doing such.
+ // Note: Do not try to compare new / old value, as it can of any type. We trust the UmbObjectState in doing such.
this._data.update({ value });
}
public changeValue(value: WorkspacePropertyData['value']) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/entity-manager-controller.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/entity-manager-controller.ts
index 9704ce80c2..9eb0f5400c 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/entity-manager-controller.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/entity-manager-controller.ts
@@ -6,7 +6,7 @@ import {
UmbNotificationContext,
UMB_NOTIFICATION_CONTEXT_TOKEN,
} from '@umbraco-cms/backoffice/notification';
-import { ObjectState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
+import { UmbObjectState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
import type { EntityTreeItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
import { UmbEntityDetailStore } from '@umbraco-cms/backoffice/store';
@@ -18,7 +18,7 @@ export class UmbEntityWorkspaceManager<
> {
private _host;
- state = new ObjectState(undefined);
+ state = new UmbObjectState(undefined);
protected _storeSubscription?: UmbObserverController;
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-container-structure-helper.class.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-container-structure-helper.class.ts
index 25b756dfbf..ffaf4f118e 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-container-structure-helper.class.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-container-structure-helper.class.ts
@@ -3,7 +3,7 @@ import { PropertyContainerTypes } from './workspace-structure-manager.class';
import { PropertyTypeContainerResponseModelBaseModel } from '@umbraco-cms/backoffice/backend-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
import { UmbContextConsumerController, UMB_ENTITY_WORKSPACE_CONTEXT } from '@umbraco-cms/backoffice/context-api';
-import { ArrayState, BooleanState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState, UmbBooleanState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
export class UmbWorkspaceContainerStructureHelper {
#host: UmbControllerHostElement;
@@ -20,10 +20,10 @@ export class UmbWorkspaceContainerStructureHelper {
private _ownerContainers: PropertyTypeContainerResponseModelBaseModel[] = [];
// State containing the merged containers (only one pr. name):
- #containers = new ArrayState([], (x) => x.id);
+ #containers = new UmbArrayState([], (x) => x.id);
readonly containers = this.#containers.asObservable();
- #hasProperties = new BooleanState(false);
+ #hasProperties = new UmbBooleanState(false);
readonly hasProperties = this.#hasProperties.asObservable();
constructor(host: UmbControllerHostElement) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-context.ts
index 796b258bd3..05d6a77a39 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-context.ts
@@ -1,7 +1,7 @@
import { UmbEntityWorkspaceContextInterface } from '@umbraco-cms/backoffice/workspace';
import { UmbContextProviderController, UMB_ENTITY_WORKSPACE_CONTEXT } from '@umbraco-cms/backoffice/context-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { BooleanState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbBooleanState } from '@umbraco-cms/backoffice/observable-api';
import type { BaseEntity } from '@umbraco-cms/backoffice/models';
/*
@@ -15,7 +15,7 @@ export abstract class UmbWorkspaceContext
public host: UmbControllerHostElement;
public repository: T;
- #isNew = new BooleanState(undefined);
+ #isNew = new UmbBooleanState(undefined);
isNew = this.#isNew.asObservable();
constructor(host: UmbControllerHostElement, repository: T) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-property-structure-helper.class.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-property-structure-helper.class.ts
index 6941cd3daa..00bd8fb9db 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-property-structure-helper.class.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-property-structure-helper.class.ts
@@ -3,7 +3,7 @@ import { PropertyContainerTypes } from './workspace-structure-manager.class';
import { DocumentTypePropertyTypeResponseModel } from '@umbraco-cms/backoffice/backend-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
import { UmbContextConsumerController, UMB_ENTITY_WORKSPACE_CONTEXT } from '@umbraco-cms/backoffice/context-api';
-import { ArrayState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
export class UmbWorkspacePropertyStructureHelper {
#host: UmbControllerHostElement;
@@ -14,7 +14,7 @@ export class UmbWorkspacePropertyStructureHelper {
private _isRoot?: boolean;
private _containerName?: string;
- #propertyStructure = new ArrayState([], (x) => x.id);
+ #propertyStructure = new UmbArrayState([], (x) => x.id);
readonly propertyStructure = this.#propertyStructure.asObservable();
constructor(host: UmbControllerHostElement) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-split-view-manager.class.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-split-view-manager.class.ts
index 3c238c96b0..b300be5ebf 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-split-view-manager.class.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-split-view-manager.class.ts
@@ -1,6 +1,6 @@
import { UmbVariantId } from '../../../variants/variant-id.class';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
export type ActiveVariant = {
index: number;
@@ -16,7 +16,7 @@ export type ActiveVariant = {
export class UmbWorkspaceSplitViewManager {
#host: UmbControllerHostElement;
- #activeVariantsInfo = new ArrayState([], (x) => x.index);
+ #activeVariantsInfo = new UmbArrayState([], (x) => x.index);
public readonly activeVariantsInfo = this.#activeVariantsInfo.asObservable();
constructor(host: UmbControllerHostElement) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-structure-manager.class.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-structure-manager.class.ts
index 8a7b24dc23..a5b15b4b1d 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-structure-manager.class.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-context/workspace-structure-manager.class.ts
@@ -9,7 +9,7 @@ import {
} from '@umbraco-cms/backoffice/backend-api';
import { UmbControllerHostElement, UmbControllerInterface } from '@umbraco-cms/backoffice/controller';
import {
- ArrayState,
+ UmbArrayState,
UmbObserverController,
MappingFunction,
partialUpdateFrozenArray,
@@ -29,13 +29,13 @@ export class UmbWorkspacePropertyStructureManager();
- #documentTypes = new ArrayState([], (x) => x.id);
+ #documentTypes = new UmbArrayState([], (x) => x.id);
readonly documentTypes = this.#documentTypes.asObservable();
private readonly _documentTypeContainers = this.#documentTypes.getObservablePart((x) =>
x.flatMap((x) => x.containers ?? [])
);
- #containers = new ArrayState([], (x) => x.id);
+ #containers = new UmbArrayState([], (x) => x.id);
constructor(host: UmbControllerHostElement, typeRepository: R) {
this.#host = host;
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-variant/workspace-variant.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-variant/workspace-variant.context.ts
index 0f621391b5..2393a6c6e3 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-variant/workspace-variant.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/shared/components/workspace/workspace-variant/workspace-variant.context.ts
@@ -9,7 +9,12 @@ import {
UMB_ENTITY_WORKSPACE_CONTEXT,
} from '@umbraco-cms/backoffice/context-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { ClassState, NumberState, ObjectState, UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
+import {
+ UmbClassState,
+ NumberState,
+ UmbObjectState,
+ UmbObserverController,
+} from '@umbraco-cms/backoffice/observable-api';
import { DocumentVariantResponseModel } from '@umbraco-cms/backoffice/backend-api';
//type EntityType = DocumentModel;
@@ -25,14 +30,14 @@ export class UmbWorkspaceVariantContext {
#index = new NumberState(undefined);
index = this.#index.asObservable();
- #currentVariant = new ObjectState(undefined);
+ #currentVariant = new UmbObjectState(undefined);
currentVariant = this.#currentVariant.asObservable();
name = this.#currentVariant.getObservablePart((x) => x?.name);
culture = this.#currentVariant.getObservablePart((x) => x?.culture);
segment = this.#currentVariant.getObservablePart((x) => x?.segment);
- #variantId = new ClassState(undefined);
+ #variantId = new UmbClassState(undefined);
variantId = this.#variantId.asObservable();
private _currentVariantObserver?: UmbObserverController;
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/templating/stylesheets/workspace/stylesheet-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/templating/stylesheets/workspace/stylesheet-workspace.context.ts
index a973a00a4b..e92b3f643f 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/templating/stylesheets/workspace/stylesheet-workspace.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/templating/stylesheets/workspace/stylesheet-workspace.context.ts
@@ -2,10 +2,10 @@ import { UmbWorkspaceContext } from '../../../shared/components/workspace/worksp
import { UmbStylesheetRepository } from '../repository/stylesheet.repository';
import { StylesheetDetails } from '..';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { ObjectState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbObjectState } from '@umbraco-cms/backoffice/observable-api';
export class UmbStylesheetWorkspaceContext extends UmbWorkspaceContext {
- #data = new ObjectState(undefined);
+ #data = new UmbObjectState(undefined);
data = this.#data.asObservable();
constructor(host: UmbControllerHostElement) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/templating/templates/repository/template.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/templating/templates/repository/template.store.ts
index edebf64d61..4ef41040e2 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/templating/templates/repository/template.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/templating/templates/repository/template.store.ts
@@ -1,5 +1,5 @@
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
import type { TemplateResponseModel } from '@umbraco-cms/backoffice/backend-api';
import type { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
@@ -11,7 +11,7 @@ import type { UmbControllerHostElement } from '@umbraco-cms/backoffice/controlle
* @description - Data Store for Templates
*/
export class UmbTemplateStore extends UmbStoreBase {
- #data = new ArrayState([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
/**
* Creates an instance of UmbTemplateStore.
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/translation/dictionary/repository/dictionary.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/translation/dictionary/repository/dictionary.store.ts
index c4b62e7c82..8090202a0d 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/translation/dictionary/repository/dictionary.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/translation/dictionary/repository/dictionary.store.ts
@@ -1,7 +1,7 @@
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
import { UmbStoreBase } from '@umbraco-cms/backoffice/store';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import { DictionaryItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
/**
@@ -11,7 +11,7 @@ import { DictionaryItemResponseModel } from '@umbraco-cms/backoffice/backend-api
* @description - Data Store for Dictionary
*/
export class UmbDictionaryStore extends UmbStoreBase {
- #data = new ArrayState([], (x) => x.id);
+ #data = new UmbArrayState([], (x) => x.id);
constructor(host: UmbControllerHostElement) {
super(host, UMB_DICTIONARY_STORE_CONTEXT_TOKEN.toString());
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/translation/dictionary/workspace/dictionary-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/translation/dictionary/workspace/dictionary-workspace.context.ts
index 2d2eb3039d..3a1115d880 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/translation/dictionary/workspace/dictionary-workspace.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/translation/dictionary/workspace/dictionary-workspace.context.ts
@@ -2,14 +2,14 @@ import { UmbDictionaryRepository } from '../repository/dictionary.repository';
import { UmbWorkspaceContext } from '../../../../backoffice/shared/components/workspace/workspace-context/workspace-context';
import { UmbEntityWorkspaceContextInterface } from '@umbraco-cms/backoffice/workspace';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { ObjectState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbObjectState } from '@umbraco-cms/backoffice/observable-api';
import { DictionaryItemResponseModel } from '@umbraco-cms/backoffice/backend-api';
export class UmbDictionaryWorkspaceContext
extends UmbWorkspaceContext
implements UmbEntityWorkspaceContextInterface
{
- #data = new ObjectState(undefined);
+ #data = new UmbObjectState(undefined);
data = this.#data.asObservable();
name = this.#data.getObservablePart((data) => data?.name);
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/users/current-user/current-user.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/users/current-user/current-user.store.ts
index 70556528f1..cf4823147e 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/users/current-user/current-user.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/users/current-user/current-user.store.ts
@@ -2,13 +2,13 @@ import { umbUsersData } from '../../../core/mocks/data/users.data';
import { umbracoPath } from '@umbraco-cms/backoffice/utils';
import type { UserDetails } from '@umbraco-cms/backoffice/models';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
-import { ObjectState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbObjectState } from '@umbraco-cms/backoffice/observable-api';
export const UMB_CURRENT_USER_STORE_CONTEXT_TOKEN = new UmbContextToken('UmbCurrentUserStore');
export class UmbCurrentUserStore {
//TODO: Temp solution to get a current user. Replace when we have a real user service
- private _currentUser = new ObjectState(umbUsersData.getAll()[0]);
+ private _currentUser = new UmbObjectState(umbUsersData.getAll()[0]);
public readonly currentUser = this._currentUser.asObservable();
/**
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/users/user-groups/repository/user-group.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/users/user-groups/repository/user-group.store.ts
index 64197bb05b..87961ea266 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/users/user-groups/repository/user-group.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/users/user-groups/repository/user-group.store.ts
@@ -1,7 +1,7 @@
import type { UserGroupDetails } from '@umbraco-cms/backoffice/models';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
-import { ArrayState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import { UmbEntityDetailStore, UmbStoreBase } from '@umbraco-cms/backoffice/store';
// TODO: get rid of this type addition & { ... }:
@@ -16,7 +16,7 @@ export const UMB_USER_GROUP_STORE_CONTEXT_TOKEN = new UmbContextToken {
- #groups = new ArrayState([], (x) => x.id);
+ #groups = new UmbArrayState([], (x) => x.id);
public groups = this.#groups.asObservable();
constructor(host: UmbControllerHostElement) {
diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/users/users/repository/user.store.ts b/src/Umbraco.Web.UI.Client/src/backoffice/users/users/repository/user.store.ts
index a52581484d..bdf016f8eb 100644
--- a/src/Umbraco.Web.UI.Client/src/backoffice/users/users/repository/user.store.ts
+++ b/src/Umbraco.Web.UI.Client/src/backoffice/users/users/repository/user.store.ts
@@ -1,5 +1,5 @@
import type { UserDetails } from '@umbraco-cms/backoffice/models';
-import { ArrayState, NumberState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbArrayState, NumberState } from '@umbraco-cms/backoffice/observable-api';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
import { UmbEntityDetailStore, UmbStoreBase } from '@umbraco-cms/backoffice/store';
import type { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller';
@@ -15,7 +15,7 @@ export const UMB_USER_STORE_CONTEXT_TOKEN = new UmbContextToken('U
* @description - Data Store for Users
*/
export class UmbUserStore extends UmbStoreBase implements UmbEntityDetailStore {
- #users = new ArrayState([], (x) => x.id);
+ #users = new UmbArrayState([], (x) => x.id);
public users = this.#users.asObservable();
#totalUsers = new NumberState(0);
diff --git a/src/Umbraco.Web.UI.Client/src/installer/installer.context.ts b/src/Umbraco.Web.UI.Client/src/installer/installer.context.ts
index 9e6b26b8cf..3c19c9f491 100644
--- a/src/Umbraco.Web.UI.Client/src/installer/installer.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/installer/installer.context.ts
@@ -8,7 +8,7 @@ import {
} from '@umbraco-cms/backoffice/backend-api';
import { tryExecute } from '@umbraco-cms/backoffice/resources';
import { UmbContextToken } from '@umbraco-cms/backoffice/context-api';
-import { ObjectState, NumberState } from '@umbraco-cms/backoffice/observable-api';
+import { UmbObjectState, NumberState } from '@umbraco-cms/backoffice/observable-api';
/**
* Context API for the installer
@@ -16,7 +16,7 @@ import { ObjectState, NumberState } from '@umbraco-cms/backoffice/observable-api
* @class UmbInstallerContext
*/
export class UmbInstallerContext {
- private _data = new ObjectState({
+ private _data = new UmbObjectState({
user: { name: '', email: '', password: '', subscribeToNewsletter: false },
database: { id: '', providerName: '' },
telemetryLevel: TelemetryLevelModel.BASIC,
@@ -26,10 +26,10 @@ export class UmbInstallerContext {
private _currentStep = new NumberState(1);
public readonly currentStep = this._currentStep.asObservable();
- private _settings = new ObjectState(undefined);
+ private _settings = new UmbObjectState(undefined);
public readonly settings = this._settings.asObservable();
- private _installStatus = new ObjectState(null);
+ private _installStatus = new UmbObjectState(null);
public readonly installStatus = this._installStatus.asObservable();
constructor() {
diff --git a/src/Umbraco.Web.UI.Client/src/stories/store.mdx b/src/Umbraco.Web.UI.Client/src/stories/store.mdx
index 1140ee8e40..9622967a0c 100644
--- a/src/Umbraco.Web.UI.Client/src/stories/store.mdx
+++ b/src/Umbraco.Web.UI.Client/src/stories/store.mdx
@@ -11,7 +11,7 @@ Generally a Store will be holding one or more RxJS Subjects, each Subject is mad
```typescript
class MyProductStore {
- #products = new ArrayState(>[], (product) => product.id);
+ #products = new UmbArrayState(>[], (product) => product.id);
public readonly products = this.#products.asObservable();
@@ -118,7 +118,7 @@ This example give some inspiration to how fine grained this can become:
```typescript
class MyProductStore {
- #products = new ArrayState(>[]);
+ #products = new UmbArrayState(>[]);
public readonly products = this.#products.asObservable();
public readonly amountOfProducts = this.#products.getObservablePart((products) => products.length);
@@ -138,7 +138,7 @@ In the examples of this guide each product has a id, and we have clarified this
```typescript
class MyProductStore {
- #products = new ArrayState(>[], (product) => product.id);
+ #products = new UmbArrayState(>[], (product) => product.id);
...
}
```
From 14247b04a5db1b84ae6f0ca1f98aa2496d0ac90b Mon Sep 17 00:00:00 2001
From: Mads Rasmussen
Date: Sun, 16 Apr 2023 20:59:15 +0200
Subject: [PATCH 063/156] add umb prefix
---
.../append-to-frozen-array.function.ts | 2 +-
.../libs/observable-api/array-state.ts | 6 ++--
.../libs/observable-api/deep-state.test.ts | 31 +++++++------------
.../libs/observable-api/deep-state.ts | 4 +--
.../libs/observable-api/number-state.ts | 4 +--
.../libs/observable-api/object-state.ts | 6 ++--
.../partial-update-frozen-array.function.ts | 2 +-
.../libs/observable-api/string-state.ts | 4 +--
.../repository/document-type.repository.ts | 4 +--
.../sources/document-type.tree.server.data.ts | 16 +++++-----
.../repository/document.repository.ts | 4 +--
.../sources/document.tree.server.data.ts | 16 +++++-----
.../logviewer/workspace/logviewer.context.ts | 16 +++++-----
.../shared/collection/collection.context.ts | 2 +-
.../backoffice-frame/backoffice.context.ts | 4 +--
.../code-editor/code-editor.stories.ts | 4 +--
.../section-sidebar.context.ts | 8 ++---
.../components/section/section.context.ts | 8 ++---
.../tree-context-menu-page.service.ts | 4 +--
.../tree-item-base/tree-item-base.context.ts | 11 +++++--
.../shared/components/tree/tree.context.ts | 6 ++--
.../workspace-property.context.ts | 4 +--
.../workspace-variant.context.ts | 4 +--
.../property-action-menu.context.ts | 4 +--
.../workspace/template-workspace.context.ts | 4 +--
.../src/backoffice/themes/theme.context.ts | 4 +--
.../current-user-history.store.ts | 4 +--
.../views/users/section-view-users.element.ts | 8 ++---
.../users/users/repository/user.store.ts | 4 +--
.../src/installer/installer.context.ts | 4 +--
30 files changed, 100 insertions(+), 102 deletions(-)
diff --git a/src/Umbraco.Web.UI.Client/libs/observable-api/append-to-frozen-array.function.ts b/src/Umbraco.Web.UI.Client/libs/observable-api/append-to-frozen-array.function.ts
index 97ff56848c..23510e754c 100644
--- a/src/Umbraco.Web.UI.Client/libs/observable-api/append-to-frozen-array.function.ts
+++ b/src/Umbraco.Web.UI.Client/libs/observable-api/append-to-frozen-array.function.ts
@@ -5,7 +5,7 @@
* @param {(mappable: T) => R} mappingFunction - Method to return the part for this Observable to return.
* @param {(previousResult: R, currentResult: R) => boolean} [memoizationFunction] - Method to Compare if the data has changed. Should return true when data is different.
* @description - Creates a RxJS Observable from RxJS Subject.
- * @example
Example append new entry for a ArrayState or a part of DeepState/ObjectState it which is an array. Where the key is unique and the item will be updated if matched with existing.
+ * @example
Example append new entry for a ArrayState or a part of UmbDeepState/UmbObjectState it which is an array. Where the key is unique and the item will be updated if matched with existing.
* const entry = {id: 'myKey', value: 'myValue'};
* const newDataSet = appendToFrozenArray(mySubject.getValue(), entry, x => x.id === id);
* mySubject.next(newDataSet);
diff --git a/src/Umbraco.Web.UI.Client/libs/observable-api/array-state.ts b/src/Umbraco.Web.UI.Client/libs/observable-api/array-state.ts
index df29f02b1c..a4f67b2708 100644
--- a/src/Umbraco.Web.UI.Client/libs/observable-api/array-state.ts
+++ b/src/Umbraco.Web.UI.Client/libs/observable-api/array-state.ts
@@ -1,17 +1,17 @@
-import { DeepState } from './deep-state';
+import { UmbDeepState } from './deep-state';
import { partialUpdateFrozenArray } from './partial-update-frozen-array.function';
import { pushToUniqueArray } from './push-to-unique-array.function';
/**
* @export
* @class UmbArrayState
- * @extends {DeepState}
+ * @extends {UmbDeepState}
* @description - A RxJS BehaviorSubject which deepFreezes the object-data to ensure its not manipulated from any implementations.
* Additionally the Subject ensures the data is unique, not updating any Observes unless there is an actual change of the content.
*
* The ArrayState provides methods to append data when the data is an Object.
*/
-export class UmbArrayState extends DeepState {
+export class UmbArrayState extends UmbDeepState