Skip to content

Commit 86411e4

Browse files
AndyButlandCopilotnielslyngsoe
authored
Content references: Avoid requesting references for content that is not yet persisted server side (#21035)
* Avoid requesting references for content that is not yet persisted server side. * Apply suggestions from code review Co-authored-by: Copilot <[email protected]> * refactor to use condition * revert * danish translations * da translation --------- Co-authored-by: Copilot <[email protected]> Co-authored-by: Niels Lyngsø <[email protected]>
1 parent b0e5cd7 commit 86411e4

File tree

7 files changed

+59
-24
lines changed

7 files changed

+59
-24
lines changed

src/Umbraco.Web.UI.Client/src/assets/lang/da.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -591,7 +591,7 @@ export default {
591591
chooseMediaStartNode: 'Vælg startnode for medie',
592592
selectMediaType: 'Vælg medietype',
593593
selectIcon: 'Vælg ikon',
594-
selectItem: 'Vælg item',
594+
selectItem: 'Vælg element',
595595
selectLink: 'Vælg link',
596596
addLink: 'Tilføj Link',
597597
updateLink: 'Opdater Link',
@@ -2356,10 +2356,10 @@ export default {
23562356
labelUsedByDocuments: 'Brugt i Dokumenter',
23572357
labelUsedByMembers: 'Brugt i Medlemmer',
23582358
labelUsedByMedia: 'Brugt i Medier',
2359-
itemHasNoReferences: 'This item has no references.',
2360-
labelUsedByDocumentTypes: 'Referenced by the following Document Types',
2361-
labelUsedByItems: 'Referenced by the following items',
2362-
labelDependsOnThis: 'The following items depend on this',
2359+
itemHasNoReferences: 'Ingen referencer',
2360+
labelUsedByDocumentTypes: 'Refereret af følgende Dokument Typer',
2361+
labelUsedByItems: 'Refereret af',
2362+
labelDependsOnThis: 'Følgende elementer er afhængige af dette',
23632363
labelUsedItems: 'The following items are referenced',
23642364
labelUsedDescendants: 'The following descendant items have dependencies',
23652365
labelDependentDescendants: 'The following descending items have dependencies',

src/Umbraco.Web.UI.Client/src/assets/lang/en.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2434,7 +2434,7 @@ export default {
24342434
'This item or its descendants is being used. Unpublishing can lead to broken links on your website. Please take the appropriate actions.',
24352435
deleteDisabledWarning: 'This item or its descendants is being used. Therefore, deletion has been disabled.',
24362436
listViewDialogWarning: 'The following items you are trying to %0% are used by other content.',
2437-
labelUsedByItems: 'Referenced by the following items',
2437+
labelUsedByItems: 'Referenced by',
24382438
labelDependsOnThis: 'The following items depend on this',
24392439
labelDependentDescendants: 'The following descending items have dependencies',
24402440
labelMoreReferences: (count: number) => {
Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,28 @@
11
import { UMB_DATA_TYPE_WORKSPACE_ALIAS } from '../../workspace/constants.js';
22
import { UMB_DATA_TYPE_REFERENCE_REPOSITORY_ALIAS } from '../constants.js';
3-
import { UMB_WORKSPACE_CONDITION_ALIAS } from '@umbraco-cms/backoffice/workspace';
3+
import {
4+
UMB_WORKSPACE_CONDITION_ALIAS,
5+
UMB_WORKSPACE_ENTITY_IS_NEW_CONDITION_ALIAS,
6+
} from '@umbraco-cms/backoffice/workspace';
47

58
export const manifests: Array<UmbExtensionManifest> = [
69
{
710
type: 'workspaceInfoApp',
811
kind: 'entityReferences',
912
name: 'Data Type References Workspace Info App',
1013
alias: 'Umb.WorkspaceInfoApp.DataType.References',
14+
meta: {
15+
referenceRepositoryAlias: UMB_DATA_TYPE_REFERENCE_REPOSITORY_ALIAS,
16+
},
1117
conditions: [
1218
{
1319
alias: UMB_WORKSPACE_CONDITION_ALIAS,
1420
match: UMB_DATA_TYPE_WORKSPACE_ALIAS,
1521
},
22+
{
23+
alias: UMB_WORKSPACE_ENTITY_IS_NEW_CONDITION_ALIAS,
24+
match: false,
25+
},
1626
],
17-
meta: {
18-
referenceRepositoryAlias: UMB_DATA_TYPE_REFERENCE_REPOSITORY_ALIAS,
19-
},
2027
},
2128
];
Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,28 @@
11
import { UMB_DOCUMENT_WORKSPACE_ALIAS } from '../../workspace/constants.js';
22
import { UMB_DOCUMENT_REFERENCE_REPOSITORY_ALIAS } from '../constants.js';
3-
import { UMB_WORKSPACE_CONDITION_ALIAS } from '@umbraco-cms/backoffice/workspace';
3+
import {
4+
UMB_WORKSPACE_CONDITION_ALIAS,
5+
UMB_WORKSPACE_ENTITY_IS_NEW_CONDITION_ALIAS,
6+
} from '@umbraco-cms/backoffice/workspace';
47

58
export const manifests: Array<UmbExtensionManifest> = [
69
{
710
type: 'workspaceInfoApp',
811
kind: 'entityReferences',
912
name: 'Document References Workspace Info App',
1013
alias: 'Umb.WorkspaceInfoApp.Document.References',
14+
meta: {
15+
referenceRepositoryAlias: UMB_DOCUMENT_REFERENCE_REPOSITORY_ALIAS,
16+
},
1117
conditions: [
1218
{
1319
alias: UMB_WORKSPACE_CONDITION_ALIAS,
1420
match: UMB_DOCUMENT_WORKSPACE_ALIAS,
1521
},
22+
{
23+
alias: UMB_WORKSPACE_ENTITY_IS_NEW_CONDITION_ALIAS,
24+
match: false,
25+
},
1626
],
17-
meta: {
18-
referenceRepositoryAlias: UMB_DOCUMENT_REFERENCE_REPOSITORY_ALIAS,
19-
},
2027
},
2128
];
Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,28 @@
11
import { UMB_MEDIA_WORKSPACE_ALIAS } from '../../workspace/constants.js';
22
import { UMB_MEDIA_REFERENCE_REPOSITORY_ALIAS } from '../constants.js';
3-
import { UMB_WORKSPACE_CONDITION_ALIAS } from '@umbraco-cms/backoffice/workspace';
3+
import {
4+
UMB_WORKSPACE_CONDITION_ALIAS,
5+
UMB_WORKSPACE_ENTITY_IS_NEW_CONDITION_ALIAS,
6+
} from '@umbraco-cms/backoffice/workspace';
47

58
export const manifests: Array<UmbExtensionManifest> = [
69
{
710
type: 'workspaceInfoApp',
811
kind: 'entityReferences',
912
name: 'Media References Workspace Info App',
1013
alias: 'Umb.WorkspaceInfoApp.Media.References',
14+
meta: {
15+
referenceRepositoryAlias: UMB_MEDIA_REFERENCE_REPOSITORY_ALIAS,
16+
},
1117
conditions: [
1218
{
1319
alias: UMB_WORKSPACE_CONDITION_ALIAS,
1420
match: UMB_MEDIA_WORKSPACE_ALIAS,
1521
},
22+
{
23+
alias: UMB_WORKSPACE_ENTITY_IS_NEW_CONDITION_ALIAS,
24+
match: false,
25+
},
1626
],
17-
meta: {
18-
referenceRepositoryAlias: UMB_MEDIA_REFERENCE_REPOSITORY_ALIAS,
19-
},
2027
},
2128
];
Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,28 @@
11
import { UMB_MEMBER_WORKSPACE_ALIAS } from '../../workspace/constants.js';
22
import { UMB_MEMBER_REFERENCE_REPOSITORY_ALIAS } from '../constants.js';
3-
import { UMB_WORKSPACE_CONDITION_ALIAS } from '@umbraco-cms/backoffice/workspace';
3+
import {
4+
UMB_WORKSPACE_CONDITION_ALIAS,
5+
UMB_WORKSPACE_ENTITY_IS_NEW_CONDITION_ALIAS,
6+
} from '@umbraco-cms/backoffice/workspace';
47

58
export const manifests: Array<UmbExtensionManifest> = [
69
{
710
type: 'workspaceInfoApp',
811
kind: 'entityReferences',
912
name: 'Member References Workspace Info App',
1013
alias: 'Umb.WorkspaceInfoApp.Member.References',
14+
meta: {
15+
referenceRepositoryAlias: UMB_MEMBER_REFERENCE_REPOSITORY_ALIAS,
16+
},
1117
conditions: [
1218
{
1319
alias: UMB_WORKSPACE_CONDITION_ALIAS,
1420
match: UMB_MEMBER_WORKSPACE_ALIAS,
1521
},
22+
{
23+
alias: UMB_WORKSPACE_ENTITY_IS_NEW_CONDITION_ALIAS,
24+
match: false,
25+
},
1626
],
17-
meta: {
18-
referenceRepositoryAlias: UMB_MEMBER_REFERENCE_REPOSITORY_ALIAS,
19-
},
2027
},
2128
];

src/Umbraco.Web.UI.Client/src/packages/relations/relations/reference/workspace-info-app/entity-references-workspace-view-info.element.ts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,6 @@ export class UmbEntityReferencesWorkspaceInfoAppElement extends UmbLitElement {
103103
}
104104

105105
override render() {
106-
if (!this._items?.length) return nothing;
107106
return html`
108107
<umb-workspace-info-app-layout headline="#references_labelUsedByItems">
109108
<div id="content">${this.#renderItems()} ${this.#renderReferencePagination()}</div>
@@ -112,7 +111,10 @@ export class UmbEntityReferencesWorkspaceInfoAppElement extends UmbLitElement {
112111
}
113112

114113
#renderItems() {
115-
if (!this._items) return;
114+
if (!this._items) return nothing;
115+
if (this._items.length === 0) {
116+
return html`<umb-localize class="noItems" key="references_itemHasNoReferences"></umb-localize>`;
117+
}
116118
return html`
117119
<uui-ref-list>
118120
${repeat(
@@ -150,6 +152,11 @@ export class UmbEntityReferencesWorkspaceInfoAppElement extends UmbLitElement {
150152
display: contents;
151153
}
152154
155+
.noItems {
156+
display: block;
157+
margin: var(--uui-size-space-2);
158+
}
159+
153160
#content {
154161
display: block;
155162
padding: var(--uui-size-space-3) var(--uui-size-space-4);

0 commit comments

Comments
 (0)