Feature: Has Children Condition (#18161)

* add children to reload translation

* add has children condition + context

* export

* register manifests

* set hasChildren value for tree items

* add condition to document tree item

* add has children condition to sort children of document

* add conditions for media

* add entity trashed event

* dispatch event when entity is trashed

* remove double event listeners

* export action class

* Update default-tree.context.ts

* wip reload tree when entity is trashed

* move into data folder

* clean up listeners

* move manifest

* wip reload root

* clean up

* add recycle bin tree item

* use for media

* pass entity types through manifest + add recycle bin tree item kind

* remove custom implementation for document recycle bin

* use kind

* rename to supportedEntityTypes

* Update recycle-bin-tree-item.context.ts

* clean up

* remove condition

* only show empty recycle bin if it has children

* remove of sort children
This commit is contained in:
Mads Rasmussen
2025-03-04 15:22:22 +01:00
committed by GitHub
parent 0f9c2332e0
commit 85883cee85
25 changed files with 131 additions and 14 deletions

View File

@@ -8,7 +8,7 @@
"hasInstallScript": true,
"dependencies": {
"@umbraco/json-models-builders": "^2.0.29",
"@umbraco/playwright-testhelpers": "^15.0.27",
"@umbraco/playwright-testhelpers": "^15.0.29",
"camelize": "^1.0.0",
"dotenv": "^16.3.1",
"node-fetch": "^2.6.7"
@@ -67,9 +67,9 @@
}
},
"node_modules/@umbraco/playwright-testhelpers": {
"version": "15.0.27",
"resolved": "https://registry.npmjs.org/@umbraco/playwright-testhelpers/-/playwright-testhelpers-15.0.27.tgz",
"integrity": "sha512-PH1KDAN3Eo0eqKh5mmcZdNWPPuEWUr8RY/ZcGApZyTt5Sys2ES8aGFEReJV1fRyHsTT7Y2Q1qQfCES8p43v0dQ==",
"version": "15.0.29",
"resolved": "https://registry.npmjs.org/@umbraco/playwright-testhelpers/-/playwright-testhelpers-15.0.29.tgz",
"integrity": "sha512-AHXmHkpB2fEYzjX5zyUjPArKhJyLi5CjzHuU/l5Bs9kwmn6QAIAdCpMt4LGoEizvBkDc+EiuH1JeMAHaV2Hhuw==",
"license": "MIT",
"dependencies": {
"@umbraco/json-models-builders": "2.0.30",

View File

@@ -21,7 +21,7 @@
},
"dependencies": {
"@umbraco/json-models-builders": "^2.0.29",
"@umbraco/playwright-testhelpers": "^15.0.27",
"@umbraco/playwright-testhelpers": "^15.0.29",
"camelize": "^1.0.0",
"dotenv": "^16.3.1",
"node-fetch": "^2.6.7"

View File

@@ -43,7 +43,7 @@ test('can create child node', {tag: '@smoke'}, async ({umbracoApi, umbracoUi}) =
expect(childData[0].variants[0].name).toBe(childContentName);
// verify that the child content displays in the tree after reloading children
await umbracoUi.content.clickActionsMenuForContent(contentName);
await umbracoUi.content.clickReloadButton();
await umbracoUi.content.clickReloadChildrenButton();
await umbracoUi.content.clickCaretButtonForContentName(contentName);
await umbracoUi.content.doesContentTreeHaveName(childContentName);

View File

@@ -83,7 +83,7 @@ test('can create multiple child nodes with different document types', async ({um
expect(childData[1].variants[0].name).toBe(secondChildContentName);
// verify that the child content displays in the tree after reloading children
await umbracoUi.content.clickActionsMenuForContent(contentName);
await umbracoUi.content.clickReloadButton();
await umbracoUi.content.clickReloadChildrenButton();
await umbracoUi.content.clickCaretButtonForContentName(contentName);
await umbracoUi.content.doesContentTreeHaveName(firstChildContentName);
await umbracoUi.content.doesContentTreeHaveName(secondChildContentName);

View File

@@ -62,7 +62,7 @@ test('can create child content in a collection', async ({umbracoApi, umbracoUi})
expect(childData[0].variants[0].name).toBe(firstChildContentName);
// verify that the child content displays in collection list after reloading tree
await umbracoUi.content.clickActionsMenuForContent(contentName);
await umbracoUi.content.clickReloadButton();
await umbracoUi.content.clickReloadChildrenButton();
await umbracoUi.content.goToContentWithName(contentName);
await umbracoUi.content.doesDocumentTableColumnNameValuesMatch(expectedNames);
@@ -95,7 +95,7 @@ test('can create multiple child nodes in a collection', async ({umbracoApi, umbr
expect(childData[1].variants[0].name).toBe(secondChildContentName);
// verify that the child content displays in collection list after reloading tree
await umbracoUi.content.clickActionsMenuForContent(contentName);
await umbracoUi.content.clickReloadButton();
await umbracoUi.content.clickReloadChildrenButton();
await umbracoUi.content.goToContentWithName(contentName);
await umbracoUi.content.doesDocumentTableColumnNameValuesMatch(expectedNames);