Skip to content

Recycle Bin: Adds emptyRecycleBin collection action kind for Documents and Media#21482

Merged
leekelleher merged 9 commits intomainfrom
v17/feature/recycle-bin-collection-action
Jan 26, 2026
Merged

Recycle Bin: Adds emptyRecycleBin collection action kind for Documents and Media#21482
leekelleher merged 9 commits intomainfrom
v17/feature/recycle-bin-collection-action

Conversation

@leekelleher
Copy link
Member

@leekelleher leekelleher commented Jan 22, 2026

Description

Adds an emptyRecycleBin Collection Action kind for the Recycle Bin, both documents and media.

Screenshot 2026-01-22 100714

An example of the Document recycle bin using the emptyRecycleBin manifest kind:

{
	type: 'collectionAction',
	kind: 'emptyRecycleBin',
	name: 'Document Collection Empty Recycle Bin Action',
	alias: 'Umb.CollectionAction.Document.EmptyRecycleBin',
	meta: {
		label: '#actions_emptyrecyclebin',
		recycleBinRepositoryAlias: UMB_DOCUMENT_RECYCLE_BIN_REPOSITORY_ALIAS,
	},
	conditions: [
		{ alias: UMB_COLLECTION_ALIAS_CONDITION, match: UMB_DOCUMENT_RECYCLE_BIN_TREE_ITEM_CHILDREN_COLLECTION_ALIAS },
		{ alias: UMB_COLLECTION_HAS_ITEMS_CONDITION_ALIAS },
	],
}

This feature has been extracted from the upcoming Global Elements feature, see #21410.

How to test?

  • Go to the Document Recycle Bin, see the collection view, notice the Empty Recycle Bin button (collection action)
  • Press the Empty Recycle Bin button, notice the items have been deleted (removed from the collection view)
  • Notice that the Empty Recycle Bin collection action has disappeared
  • Notice that the Recycle Bin tree has been reloaded
  • Repeat for Media

Copilot AI review requested due to automatic review settings January 22, 2026 10:20
@leekelleher leekelleher changed the title V17/feature/recycle bin collection action Recycle Bin: Adds emptyRecycleBin collection action kind for Documents and Media Jan 22, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a new emptyRecycleBin collection action kind that provides an "Empty Recycle Bin" button in the collection view for both Document and Media recycle bins. The implementation introduces a reusable collection action pattern, a new UmbCollectionHasItemsCondition to conditionally show the action only when items exist, and updates existing entity actions to use localized strings.

Changes:

  • Introduces emptyRecycleBin collection action kind with manifest-based configuration for recycle bin repository alias
  • Adds UmbCollectionHasItemsCondition to show collection actions only when the collection contains items
  • Updates entity action labels and modal text to use localization keys instead of hardcoded strings

Reviewed changes

Copilot reviewed 21 out of 21 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/manifests.ts Registers media recycle bin collection action manifests
src/Umbraco.Web.UI.Client/src/packages/media/media/recycle-bin/collection-action/manifests.ts Defines media empty recycle bin collection action manifest
src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/manifests.ts Registers document recycle bin collection action manifests
src/Umbraco.Web.UI.Client/src/packages/documents/documents/recycle-bin/collection-action/manifests.ts Defines document empty recycle bin collection action manifest
src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/manifests.ts Registers core collection action manifests
src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/index.ts Exports collection action types
src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/entity-action/empty-recycle-bin/empty-recycle-bin.action.ts Updates entity action to use localization keys
src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/entity-action/empty-recycle-bin/empty-recycle-bin.action.kind.ts Updates entity action kind to use localization key
src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/collection-action/manifests.ts Aggregates empty recycle bin collection action manifests
src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/collection-action/index.ts Exports collection action types
src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/collection-action/empty-recycle-bin/types.ts Defines TypeScript types for empty recycle bin collection action
src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/collection-action/empty-recycle-bin/manifests.ts Registers empty recycle bin kind manifest
src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/collection-action/empty-recycle-bin/index.ts Exports empty recycle bin types
src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/collection-action/empty-recycle-bin/empty-recycle-bin.collection-action.ts Implements collection action to empty recycle bin with confirmation modal and tree refresh
src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/collection-action/empty-recycle-bin/empty-recycle-bin.collection-action.kind.ts Defines the kind manifest for empty recycle bin collection action
src/Umbraco.Web.UI.Client/src/packages/core/collection/conditions/types.ts Adds type definition for collection has items condition
src/Umbraco.Web.UI.Client/src/packages/core/collection/conditions/manifests.ts Registers collection has items condition
src/Umbraco.Web.UI.Client/src/packages/core/collection/conditions/index.ts Exports collection has items condition
src/Umbraco.Web.UI.Client/src/packages/core/collection/conditions/constants.ts Defines constant for collection has items condition alias
src/Umbraco.Web.UI.Client/src/packages/core/collection/conditions/collection-has-items.condition.ts Implements condition that checks if collection has items
src/Umbraco.Web.UI.Client/src/packages/core/collection/action/collection-action-button.element.ts Passes manifest as parameter to collection action API constructor

leekelleher and others added 4 commits January 22, 2026 10:27
since the condition is eagerly loaded.
- Uses correct generic type `UmbCollectionHasItemsConditionConfig` in `UmbCollectionHasItemsCondition`
- Corrects JSDoc `@augments` tag in `UmbEmptyRecycleBinCollectionAction`

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Extracts tree refresh logic into private #reloadChildrenOfEntity() method.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Copy link
Contributor

@AndyButland AndyButland left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've followed the test steps and all is working as expected @leekelleher. If left a couple of nit-pick comments, but otherwise code all looks good to me too.

leekelleher and others added 2 commits January 22, 2026 14:04
@leekelleher leekelleher enabled auto-merge (squash) January 26, 2026 08:45
@leekelleher leekelleher merged commit c6370e3 into main Jan 26, 2026
28 checks passed
@leekelleher leekelleher deleted the v17/feature/recycle-bin-collection-action branch January 26, 2026 09:25
alexsee pushed a commit to alexsee/umbraco-container that referenced this pull request Feb 23, 2026
Updated [Umbraco.Cms](https://github.com/umbraco/Umbraco-CMS) from
17.1.0 to 17.2.0.

<details>
<summary>Release notes</summary>

_Sourced from [Umbraco.Cms's
releases](https://github.com/umbraco/Umbraco-CMS/releases)._

## 17.2.0

## What's Changed Since 17.2.0-rc2

### 📦 Dependencies
* build(deps): bumps @​umbraco-ui/uui to 1.17.0 by @​iOvergaard in
umbraco/Umbraco-CMS#21765

**Full Changelog**:
umbraco/Umbraco-CMS@release-17.2.0-rc2...release-17.2.0

## What's Changed Since 17.2.0-rc

### 🐛 Bug Fixes
* Block Workspace: rename root-tab to 'generic' by @​nielslyngsoe in
umbraco/Umbraco-CMS#21699
* Block Workspace: Tabs navigation, Cherry-pick from #​21672 by
@​nielslyngsoe in umbraco/Umbraco-CMS#21693

**Full Changelog**:
umbraco/Umbraco-CMS@release-17.2.0-rc...release-17.2.0-rc2

## What's Changed Since the Last Release (17.1.0)

### 🙌 Notable Changes
* User group: add description to user group (closes #​14986) by
@​NguyenThuyLan in umbraco/Umbraco-CMS#21057
* Content Types: Root properties by @​nielslyngsoe in
umbraco/Umbraco-CMS#21500

### 📦 Dependencies
* Storybook: Bumps storybook from 9.0.14 to 10.1.10 by @​dependabot[bot]
in umbraco/Umbraco-CMS#21208
* Bump qs from 6.14.0 to 6.14.1 in /src/Umbraco.Web.UI.Client in the
npm_and_yarn group across 1 directory by @​dependabot[bot] in
umbraco/Umbraco-CMS#21270
* Bump the npm_and_yarn group across 2 directories with 1 update by
@​dependabot[bot] in umbraco/Umbraco-CMS#21403
* Dependencies: Bumps login dependencies to latest by @​iOvergaard in
umbraco/Umbraco-CMS#21539
* Tiptap RTE: Upgraded to latest v3.x by @​leekelleher in
umbraco/Umbraco-CMS#21493
* Dependencies: Bumps @​umbraco-ui/uui to 1.17.0-rc.4 by @​iOvergaard in
umbraco/Umbraco-CMS#21538
* build(deps): bumps @​umbraco-ui/uui to 1.17.0-rc.5 by @​iOvergaard in
umbraco/Umbraco-CMS#21569
* Dependencies: Update Microsoft packages to 10.0.1 and pin vulnerable
transitive dependencies (closes #​21122) by @​AndyButland in
umbraco/Umbraco-CMS#21285
* Dependencies: Bump to latest minor/patch versions by @​AndyButland in
umbraco/Umbraco-CMS#21540

### 🚀 New Features
* Markdown Conversion: Remove hard dependency on deprecated library and
replace with `IMarkdownToHtmlConverter` abstraction (closes #​21238 and
#​19500) by @​AndyButland in
umbraco/Umbraco-CMS#21242
* UI: Refactor breadcrumb URLs to use Path Constants by @​iOvergaard in
umbraco/Umbraco-CMS#21179
* Tree Navigation: Add visual indicators for items with restricted
access by @​iOvergaard in
umbraco/Umbraco-CMS#21365
* Recycle Bin: Adds `emptyRecycleBin` collection action kind for
Documents and Media by @​leekelleher in
umbraco/Umbraco-CMS#21482
* Tiptap RTE: Adds link (`umbLink`) support to `styleMenu` API by
@​leekelleher in umbraco/Umbraco-CMS#21494
* Rollback: Add toggle for diff display (closes #​18518) by
@​AndyButland in umbraco/Umbraco-CMS#21426
* Dictionary: Add configurable value search functionality by
@​Nis-Knowit in umbraco/Umbraco-CMS#21200

### 🚤 Performance
* Performance: Embeds the API of selected extra conditions by
@​nielslyngsoe in umbraco/Umbraco-CMS#21188
* Performance: Bundle Js Libs by @​nielslyngsoe in
umbraco/Umbraco-CMS#21187
* Performance: Embed Store API in Manifests to lower number of network
request by @​madsrasmussen in
umbraco/Umbraco-CMS#21191
* Performance: Avoid database lookup in `UserIdKeyResolver` for
super-user by @​AndyButland in
umbraco/Umbraco-CMS#21281
* Performance: Only flush ID/Key map in `ContentCacheRefresher` on
content deletion by @​AndyButland in
umbraco/Umbraco-CMS#21283
* Performance: Optimize refresh of hybrid cache for a document by
retrieving draft and published in single query by @​AndyButland in
umbraco/Umbraco-CMS#21407
* Backoffice Performance: Inline entry point modules to reduce JS chunk
count by @​madsrasmussen in
umbraco/Umbraco-CMS#21380
* HybridCache: Optimize content type change cache rebuild to resolve SQL
timeouts by @​AndyButland in
umbraco/Umbraco-CMS#21207
 ... (truncated)

## 17.2.0-rc2

## What's Changed Since 17.2.0-rc

### 🐛 Bug Fixes
* Block Workspace: rename root-tab to 'generic' by @​nielslyngsoe in
umbraco/Umbraco-CMS#21699
* Block Workspace: Tabs navigation, Cherry-pick from #​21672 by
@​nielslyngsoe in umbraco/Umbraco-CMS#21693

**Full Changelog**:
umbraco/Umbraco-CMS@release-17.2.0-rc...release-17.2.0-rc2

## What's Changed Since the Last Release (17.1.0)

### 🙌 Notable Changes
* User group: add description to user group (closes #​14986) by
@​NguyenThuyLan in umbraco/Umbraco-CMS#21057
* Content Types: Root properties by @​nielslyngsoe in
umbraco/Umbraco-CMS#21500

### 📦 Dependencies
* Storybook: Bumps storybook from 9.0.14 to 10.1.10 by @​dependabot[bot]
in umbraco/Umbraco-CMS#21208
* Bump qs from 6.14.0 to 6.14.1 in /src/Umbraco.Web.UI.Client in the
npm_and_yarn group across 1 directory by @​dependabot[bot] in
umbraco/Umbraco-CMS#21270
* Bump the npm_and_yarn group across 2 directories with 1 update by
@​dependabot[bot] in umbraco/Umbraco-CMS#21403
* Dependencies: Bumps login dependencies to latest by @​iOvergaard in
umbraco/Umbraco-CMS#21539
* Tiptap RTE: Upgraded to latest v3.x by @​leekelleher in
umbraco/Umbraco-CMS#21493
* Dependencies: Bumps @​umbraco-ui/uui to 1.17.0-rc.4 by @​iOvergaard in
umbraco/Umbraco-CMS#21538
* build(deps): bumps @​umbraco-ui/uui to 1.17.0-rc.5 by @​iOvergaard in
umbraco/Umbraco-CMS#21569
* Dependencies: Update Microsoft packages to 10.0.1 and pin vulnerable
transitive dependencies (closes #​21122) by @​AndyButland in
umbraco/Umbraco-CMS#21285
* Dependencies: Bump to latest minor/patch versions by @​AndyButland in
umbraco/Umbraco-CMS#21540

### 🚀 New Features
* Markdown Conversion: Remove hard dependency on deprecated library and
replace with `IMarkdownToHtmlConverter` abstraction (closes #​21238 and
#​19500) by @​AndyButland in
umbraco/Umbraco-CMS#21242
* UI: Refactor breadcrumb URLs to use Path Constants by @​iOvergaard in
umbraco/Umbraco-CMS#21179
* Tree Navigation: Add visual indicators for items with restricted
access by @​iOvergaard in
umbraco/Umbraco-CMS#21365
* Recycle Bin: Adds `emptyRecycleBin` collection action kind for
Documents and Media by @​leekelleher in
umbraco/Umbraco-CMS#21482
* Tiptap RTE: Adds link (`umbLink`) support to `styleMenu` API by
@​leekelleher in umbraco/Umbraco-CMS#21494
* Rollback: Add toggle for diff display (closes #​18518) by
@​AndyButland in umbraco/Umbraco-CMS#21426
* Dictionary: Add configurable value search functionality by
@​Nis-Knowit in umbraco/Umbraco-CMS#21200

### 🚤 Performance
* Performance: Embeds the API of selected extra conditions by
@​nielslyngsoe in umbraco/Umbraco-CMS#21188
* Performance: Bundle Js Libs by @​nielslyngsoe in
umbraco/Umbraco-CMS#21187
* Performance: Embed Store API in Manifests to lower number of network
request by @​madsrasmussen in
umbraco/Umbraco-CMS#21191
* Performance: Avoid database lookup in `UserIdKeyResolver` for
super-user by @​AndyButland in
umbraco/Umbraco-CMS#21281
* Performance: Only flush ID/Key map in `ContentCacheRefresher` on
content deletion by @​AndyButland in
umbraco/Umbraco-CMS#21283
* Performance: Optimize refresh of hybrid cache for a document by
retrieving draft and published in single query by @​AndyButland in
umbraco/Umbraco-CMS#21407
* Backoffice Performance: Inline entry point modules to reduce JS chunk
count by @​madsrasmussen in
umbraco/Umbraco-CMS#21380
* HybridCache: Optimize content type change cache rebuild to resolve SQL
timeouts by @​AndyButland in
umbraco/Umbraco-CMS#21207
* Backoffice Performance: Use import maps to save requests by
@​nielslyngsoe in umbraco/Umbraco-CMS#21363
* Document URL Cache: Ensure URLs are rebuilt after upgrade and prevent
duplicate initialization (closes #​21337) by @​AndyButland in
umbraco/Umbraco-CMS#21379
* Performance: Fix thread safety and optimize cache updates in
`PublishStatusService` after content changes by @​AndyButland in
umbraco/Umbraco-CMS#21415
* Tiptap RTE: Optimize `umb-input-tiptap` initialization and rendering
by @​leekelleher in umbraco/Umbraco-CMS#21070
* Routing: Add `DocumentUrlAliasService` for optimized URL alias lookups
(closes #​21383) by @​AndyButland in
umbraco/Umbraco-CMS#21396
* Performance: Optimize property retrieval and authorization checks in
collection views (closes #​21367) by @​AndyButland in
umbraco/Umbraco-CMS#21470

 ... (truncated)

## 17.2.0-rc

## What's Changed

### 🙌 Notable Changes
* User group: add description to user group (closes #​14986) by
@​NguyenThuyLan in umbraco/Umbraco-CMS#21057
* Content Types: Root properties by @​nielslyngsoe in
umbraco/Umbraco-CMS#21500

### 📦 Dependencies
* Storybook: Bumps storybook from 9.0.14 to 10.1.10 by @​dependabot[bot]
in umbraco/Umbraco-CMS#21208
* Bump qs from 6.14.0 to 6.14.1 in /src/Umbraco.Web.UI.Client in the
npm_and_yarn group across 1 directory by @​dependabot[bot] in
umbraco/Umbraco-CMS#21270
* Bump the npm_and_yarn group across 2 directories with 1 update by
@​dependabot[bot] in umbraco/Umbraco-CMS#21403
* Dependencies: Bumps login dependencies to latest by @​iOvergaard in
umbraco/Umbraco-CMS#21539
* Tiptap RTE: Upgraded to latest v3.x by @​leekelleher in
umbraco/Umbraco-CMS#21493
* Dependencies: Bumps @​umbraco-ui/uui to 1.17.0-rc.4 by @​iOvergaard in
umbraco/Umbraco-CMS#21538
* build(deps): bumps @​umbraco-ui/uui to 1.17.0-rc.5 by @​iOvergaard in
umbraco/Umbraco-CMS#21569
* Dependencies: Update Microsoft packages to 10.0.1 and pin vulnerable
transitive dependencies (closes #​21122) by @​AndyButland in
umbraco/Umbraco-CMS#21285
* Dependencies: Bump to latest minor/patch versions by @​AndyButland in
umbraco/Umbraco-CMS#21540

### 🚀 New Features
* Markdown Conversion: Remove hard dependency on deprecated library and
replace with `IMarkdownToHtmlConverter` abstraction (closes #​21238 and
#​19500) by @​AndyButland in
umbraco/Umbraco-CMS#21242
* UI: Refactor breadcrumb URLs to use Path Constants by @​iOvergaard in
umbraco/Umbraco-CMS#21179
* Tree Navigation: Add visual indicators for items with restricted
access by @​iOvergaard in
umbraco/Umbraco-CMS#21365
* Recycle Bin: Adds `emptyRecycleBin` collection action kind for
Documents and Media by @​leekelleher in
umbraco/Umbraco-CMS#21482
* Tiptap RTE: Adds link (`umbLink`) support to `styleMenu` API by
@​leekelleher in umbraco/Umbraco-CMS#21494
* Rollback: Add toggle for diff display (closes #​18518) by
@​AndyButland in umbraco/Umbraco-CMS#21426
* Dictionary: Add configurable value search functionality by
@​Nis-Knowit in umbraco/Umbraco-CMS#21200

### 🚤 Performance
* Performance: Embeds the API of selected extra conditions by
@​nielslyngsoe in umbraco/Umbraco-CMS#21188
* Performance: Bundle Js Libs by @​nielslyngsoe in
umbraco/Umbraco-CMS#21187
* Performance: Embed Store API in Manifests to lower number of network
request by @​madsrasmussen in
umbraco/Umbraco-CMS#21191
* Performance: Avoid database lookup in `UserIdKeyResolver` for
super-user by @​AndyButland in
umbraco/Umbraco-CMS#21281
* Performance: Only flush ID/Key map in `ContentCacheRefresher` on
content deletion by @​AndyButland in
umbraco/Umbraco-CMS#21283
* Performance: Optimize refresh of hybrid cache for a document by
retrieving draft and published in single query by @​AndyButland in
umbraco/Umbraco-CMS#21407
* Backoffice Performance: Inline entry point modules to reduce JS chunk
count by @​madsrasmussen in
umbraco/Umbraco-CMS#21380
* HybridCache: Optimize content type change cache rebuild to resolve SQL
timeouts by @​AndyButland in
umbraco/Umbraco-CMS#21207
* Backoffice Performance: Use import maps to save requests by
@​nielslyngsoe in umbraco/Umbraco-CMS#21363
* Document URL Cache: Ensure URLs are rebuilt after upgrade and prevent
duplicate initialization (closes #​21337) by @​AndyButland in
umbraco/Umbraco-CMS#21379
* Performance: Fix thread safety and optimize cache updates in
`PublishStatusService` after content changes by @​AndyButland in
umbraco/Umbraco-CMS#21415
* Tiptap RTE: Optimize `umb-input-tiptap` initialization and rendering
by @​leekelleher in umbraco/Umbraco-CMS#21070
* Routing: Add `DocumentUrlAliasService` for optimized URL alias lookups
(closes #​21383) by @​AndyButland in
umbraco/Umbraco-CMS#21396
* Performance: Optimize property retrieval and authorization checks in
collection views (closes #​21367) by @​AndyButland in
umbraco/Umbraco-CMS#21470

### 🧪 Testing
* E2E: QA Replaced unreliable Thread.Sleep(500) with a counter/gate
pattern that ensures both transactions are initialized before releasing
them to compete for locks by @​andr317c in
umbraco/Umbraco-CMS#21165
* E2E QA: Updated integration test that was missing directory setup by
@​andr317c in umbraco/Umbraco-CMS#21167
* E2E: QA Added acceptance tests for removing a not-found content picker
by @​nhudinh0309 in umbraco/Umbraco-CMS#21177
* E2E: QA Fixed failing tests for the current user profile by
@​nhudinh0309 in umbraco/Umbraco-CMS#21214
* Upgrade MSW from 1.3.5 to 2.12.4 by @​madsrasmussen in
umbraco/Umbraco-CMS#21096
* E2E: QA Added acceptance tests for rendering content with invariant
blocks by @​nhudinh0309 in
umbraco/Umbraco-CMS#21180
* E2E: QA Added acceptance tests for content delivery API by
@​nhudinh0309 in umbraco/Umbraco-CMS#21095
 ... (truncated)

Commits viewable in [compare
view](umbraco/Umbraco-CMS@release-17.1.0...release-17.2.0).
</details>

Updated
[Umbraco.Cms.Persistence.Sqlite](https://github.com/umbraco/Umbraco-CMS)
from 17.1.0 to 17.2.0.

<details>
<summary>Release notes</summary>

_Sourced from [Umbraco.Cms.Persistence.Sqlite's
releases](https://github.com/umbraco/Umbraco-CMS/releases)._

## 17.2.0

## What's Changed Since 17.2.0-rc2

### 📦 Dependencies
* build(deps): bumps @​umbraco-ui/uui to 1.17.0 by @​iOvergaard in
umbraco/Umbraco-CMS#21765

**Full Changelog**:
umbraco/Umbraco-CMS@release-17.2.0-rc2...release-17.2.0

## What's Changed Since 17.2.0-rc

### 🐛 Bug Fixes
* Block Workspace: rename root-tab to 'generic' by @​nielslyngsoe in
umbraco/Umbraco-CMS#21699
* Block Workspace: Tabs navigation, Cherry-pick from #​21672 by
@​nielslyngsoe in umbraco/Umbraco-CMS#21693

**Full Changelog**:
umbraco/Umbraco-CMS@release-17.2.0-rc...release-17.2.0-rc2

## What's Changed Since the Last Release (17.1.0)

### 🙌 Notable Changes
* User group: add description to user group (closes #​14986) by
@​NguyenThuyLan in umbraco/Umbraco-CMS#21057
* Content Types: Root properties by @​nielslyngsoe in
umbraco/Umbraco-CMS#21500

### 📦 Dependencies
* Storybook: Bumps storybook from 9.0.14 to 10.1.10 by @​dependabot[bot]
in umbraco/Umbraco-CMS#21208
* Bump qs from 6.14.0 to 6.14.1 in /src/Umbraco.Web.UI.Client in the
npm_and_yarn group across 1 directory by @​dependabot[bot] in
umbraco/Umbraco-CMS#21270
* Bump the npm_and_yarn group across 2 directories with 1 update by
@​dependabot[bot] in umbraco/Umbraco-CMS#21403
* Dependencies: Bumps login dependencies to latest by @​iOvergaard in
umbraco/Umbraco-CMS#21539
* Tiptap RTE: Upgraded to latest v3.x by @​leekelleher in
umbraco/Umbraco-CMS#21493
* Dependencies: Bumps @​umbraco-ui/uui to 1.17.0-rc.4 by @​iOvergaard in
umbraco/Umbraco-CMS#21538
* build(deps): bumps @​umbraco-ui/uui to 1.17.0-rc.5 by @​iOvergaard in
umbraco/Umbraco-CMS#21569
* Dependencies: Update Microsoft packages to 10.0.1 and pin vulnerable
transitive dependencies (closes #​21122) by @​AndyButland in
umbraco/Umbraco-CMS#21285
* Dependencies: Bump to latest minor/patch versions by @​AndyButland in
umbraco/Umbraco-CMS#21540

### 🚀 New Features
* Markdown Conversion: Remove hard dependency on deprecated library and
replace with `IMarkdownToHtmlConverter` abstraction (closes #​21238 and
#​19500) by @​AndyButland in
umbraco/Umbraco-CMS#21242
* UI: Refactor breadcrumb URLs to use Path Constants by @​iOvergaard in
umbraco/Umbraco-CMS#21179
* Tree Navigation: Add visual indicators for items with restricted
access by @​iOvergaard in
umbraco/Umbraco-CMS#21365
* Recycle Bin: Adds `emptyRecycleBin` collection action kind for
Documents and Media by @​leekelleher in
umbraco/Umbraco-CMS#21482
* Tiptap RTE: Adds link (`umbLink`) support to `styleMenu` API by
@​leekelleher in umbraco/Umbraco-CMS#21494
* Rollback: Add toggle for diff display (closes #​18518) by
@​AndyButland in umbraco/Umbraco-CMS#21426
* Dictionary: Add configurable value search functionality by
@​Nis-Knowit in umbraco/Umbraco-CMS#21200

### 🚤 Performance
* Performance: Embeds the API of selected extra conditions by
@​nielslyngsoe in umbraco/Umbraco-CMS#21188
* Performance: Bundle Js Libs by @​nielslyngsoe in
umbraco/Umbraco-CMS#21187
* Performance: Embed Store API in Manifests to lower number of network
request by @​madsrasmussen in
umbraco/Umbraco-CMS#21191
* Performance: Avoid database lookup in `UserIdKeyResolver` for
super-user by @​AndyButland in
umbraco/Umbraco-CMS#21281
* Performance: Only flush ID/Key map in `ContentCacheRefresher` on
content deletion by @​AndyButland in
umbraco/Umbraco-CMS#21283
* Performance: Optimize refresh of hybrid cache for a document by
retrieving draft and published in single query by @​AndyButland in
umbraco/Umbraco-CMS#21407
* Backoffice Performance: Inline entry point modules to reduce JS chunk
count by @​madsrasmussen in
umbraco/Umbraco-CMS#21380
* HybridCache: Optimize content type change cache rebuild to resolve SQL
timeouts by @​AndyButland in
umbraco/Umbraco-CMS#21207
 ... (truncated)

## 17.2.0-rc2

## What's Changed Since 17.2.0-rc

### 🐛 Bug Fixes
* Block Workspace: rename root-tab to 'generic' by @​nielslyngsoe in
umbraco/Umbraco-CMS#21699
* Block Workspace: Tabs navigation, Cherry-pick from #​21672 by
@​nielslyngsoe in umbraco/Umbraco-CMS#21693

**Full Changelog**:
umbraco/Umbraco-CMS@release-17.2.0-rc...release-17.2.0-rc2

## What's Changed Since the Last Release (17.1.0)

### 🙌 Notable Changes
* User group: add description to user group (closes #​14986) by
@​NguyenThuyLan in umbraco/Umbraco-CMS#21057
* Content Types: Root properties by @​nielslyngsoe in
umbraco/Umbraco-CMS#21500

### 📦 Dependencies
* Storybook: Bumps storybook from 9.0.14 to 10.1.10 by @​dependabot[bot]
in umbraco/Umbraco-CMS#21208
* Bump qs from 6.14.0 to 6.14.1 in /src/Umbraco.Web.UI.Client in the
npm_and_yarn group across 1 directory by @​dependabot[bot] in
umbraco/Umbraco-CMS#21270
* Bump the npm_and_yarn group across 2 directories with 1 update by
@​dependabot[bot] in umbraco/Umbraco-CMS#21403
* Dependencies: Bumps login dependencies to latest by @​iOvergaard in
umbraco/Umbraco-CMS#21539
* Tiptap RTE: Upgraded to latest v3.x by @​leekelleher in
umbraco/Umbraco-CMS#21493
* Dependencies: Bumps @​umbraco-ui/uui to 1.17.0-rc.4 by @​iOvergaard in
umbraco/Umbraco-CMS#21538
* build(deps): bumps @​umbraco-ui/uui to 1.17.0-rc.5 by @​iOvergaard in
umbraco/Umbraco-CMS#21569
* Dependencies: Update Microsoft packages to 10.0.1 and pin vulnerable
transitive dependencies (closes #​21122) by @​AndyButland in
umbraco/Umbraco-CMS#21285
* Dependencies: Bump to latest minor/patch versions by @​AndyButland in
umbraco/Umbraco-CMS#21540

### 🚀 New Features
* Markdown Conversion: Remove hard dependency on deprecated library and
replace with `IMarkdownToHtmlConverter` abstraction (closes #​21238 and
#​19500) by @​AndyButland in
umbraco/Umbraco-CMS#21242
* UI: Refactor breadcrumb URLs to use Path Constants by @​iOvergaard in
umbraco/Umbraco-CMS#21179
* Tree Navigation: Add visual indicators for items with restricted
access by @​iOvergaard in
umbraco/Umbraco-CMS#21365
* Recycle Bin: Adds `emptyRecycleBin` collection action kind for
Documents and Media by @​leekelleher in
umbraco/Umbraco-CMS#21482
* Tiptap RTE: Adds link (`umbLink`) support to `styleMenu` API by
@​leekelleher in umbraco/Umbraco-CMS#21494
* Rollback: Add toggle for diff display (closes #​18518) by
@​AndyButland in umbraco/Umbraco-CMS#21426
* Dictionary: Add configurable value search functionality by
@​Nis-Knowit in umbraco/Umbraco-CMS#21200

### 🚤 Performance
* Performance: Embeds the API of selected extra conditions by
@​nielslyngsoe in umbraco/Umbraco-CMS#21188
* Performance: Bundle Js Libs by @​nielslyngsoe in
umbraco/Umbraco-CMS#21187
* Performance: Embed Store API in Manifests to lower number of network
request by @​madsrasmussen in
umbraco/Umbraco-CMS#21191
* Performance: Avoid database lookup in `UserIdKeyResolver` for
super-user by @​AndyButland in
umbraco/Umbraco-CMS#21281
* Performance: Only flush ID/Key map in `ContentCacheRefresher` on
content deletion by @​AndyButland in
umbraco/Umbraco-CMS#21283
* Performance: Optimize refresh of hybrid cache for a document by
retrieving draft and published in single query by @​AndyButland in
umbraco/Umbraco-CMS#21407
* Backoffice Performance: Inline entry point modules to reduce JS chunk
count by @​madsrasmussen in
umbraco/Umbraco-CMS#21380
* HybridCache: Optimize content type change cache rebuild to resolve SQL
timeouts by @​AndyButland in
umbraco/Umbraco-CMS#21207
* Backoffice Performance: Use import maps to save requests by
@​nielslyngsoe in umbraco/Umbraco-CMS#21363
* Document URL Cache: Ensure URLs are rebuilt after upgrade and prevent
duplicate initialization (closes #​21337) by @​AndyButland in
umbraco/Umbraco-CMS#21379
* Performance: Fix thread safety and optimize cache updates in
`PublishStatusService` after content changes by @​AndyButland in
umbraco/Umbraco-CMS#21415
* Tiptap RTE: Optimize `umb-input-tiptap` initialization and rendering
by @​leekelleher in umbraco/Umbraco-CMS#21070
* Routing: Add `DocumentUrlAliasService` for optimized URL alias lookups
(closes #​21383) by @​AndyButland in
umbraco/Umbraco-CMS#21396
* Performance: Optimize property retrieval and authorization checks in
collection views (closes #​21367) by @​AndyButland in
umbraco/Umbraco-CMS#21470

 ... (truncated)

## 17.2.0-rc

## What's Changed

### 🙌 Notable Changes
* User group: add description to user group (closes #​14986) by
@​NguyenThuyLan in umbraco/Umbraco-CMS#21057
* Content Types: Root properties by @​nielslyngsoe in
umbraco/Umbraco-CMS#21500

### 📦 Dependencies
* Storybook: Bumps storybook from 9.0.14 to 10.1.10 by @​dependabot[bot]
in umbraco/Umbraco-CMS#21208
* Bump qs from 6.14.0 to 6.14.1 in /src/Umbraco.Web.UI.Client in the
npm_and_yarn group across 1 directory by @​dependabot[bot] in
umbraco/Umbraco-CMS#21270
* Bump the npm_and_yarn group across 2 directories with 1 update by
@​dependabot[bot] in umbraco/Umbraco-CMS#21403
* Dependencies: Bumps login dependencies to latest by @​iOvergaard in
umbraco/Umbraco-CMS#21539
* Tiptap RTE: Upgraded to latest v3.x by @​leekelleher in
umbraco/Umbraco-CMS#21493
* Dependencies: Bumps @​umbraco-ui/uui to 1.17.0-rc.4 by @​iOvergaard in
umbraco/Umbraco-CMS#21538
* build(deps): bumps @​umbraco-ui/uui to 1.17.0-rc.5 by @​iOvergaard in
umbraco/Umbraco-CMS#21569
* Dependencies: Update Microsoft packages to 10.0.1 and pin vulnerable
transitive dependencies (closes #​21122) by @​AndyButland in
umbraco/Umbraco-CMS#21285
* Dependencies: Bump to latest minor/patch versions by @​AndyButland in
umbraco/Umbraco-CMS#21540

### 🚀 New Features
* Markdown Conversion: Remove hard dependency on deprecated library and
replace with `IMarkdownToHtmlConverter` abstraction (closes #​21238 and
#​19500) by @​AndyButland in
umbraco/Umbraco-CMS#21242
* UI: Refactor breadcrumb URLs to use Path Constants by @​iOvergaard in
umbraco/Umbraco-CMS#21179
* Tree Navigation: Add visual indicators for items with restricted
access by @​iOvergaard in
umbraco/Umbraco-CMS#21365
* Recycle Bin: Adds `emptyRecycleBin` collection action kind for
Documents and Media by @​leekelleher in
umbraco/Umbraco-CMS#21482
* Tiptap RTE: Adds link (`umbLink`) support to `styleMenu` API by
@​leekelleher in umbraco/Umbraco-CMS#21494
* Rollback: Add toggle for diff display (closes #​18518) by
@​AndyButland in umbraco/Umbraco-CMS#21426
* Dictionary: Add configurable value search functionality by
@​Nis-Knowit in umbraco/Umbraco-CMS#21200

### 🚤 Performance
* Performance: Embeds the API of selected extra conditions by
@​nielslyngsoe in umbraco/Umbraco-CMS#21188
* Performance: Bundle Js Libs by @​nielslyngsoe in
umbraco/Umbraco-CMS#21187
* Performance: Embed Store API in Manifests to lower number of network
request by @​madsrasmussen in
umbraco/Umbraco-CMS#21191
* Performance: Avoid database lookup in `UserIdKeyResolver` for
super-user by @​AndyButland in
umbraco/Umbraco-CMS#21281
* Performance: Only flush ID/Key map in `ContentCacheRefresher` on
content deletion by @​AndyButland in
umbraco/Umbraco-CMS#21283
* Performance: Optimize refresh of hybrid cache for a document by
retrieving draft and published in single query by @​AndyButland in
umbraco/Umbraco-CMS#21407
* Backoffice Performance: Inline entry point modules to reduce JS chunk
count by @​madsrasmussen in
umbraco/Umbraco-CMS#21380
* HybridCache: Optimize content type change cache rebuild to resolve SQL
timeouts by @​AndyButland in
umbraco/Umbraco-CMS#21207
* Backoffice Performance: Use import maps to save requests by
@​nielslyngsoe in umbraco/Umbraco-CMS#21363
* Document URL Cache: Ensure URLs are rebuilt after upgrade and prevent
duplicate initialization (closes #​21337) by @​AndyButland in
umbraco/Umbraco-CMS#21379
* Performance: Fix thread safety and optimize cache updates in
`PublishStatusService` after content changes by @​AndyButland in
umbraco/Umbraco-CMS#21415
* Tiptap RTE: Optimize `umb-input-tiptap` initialization and rendering
by @​leekelleher in umbraco/Umbraco-CMS#21070
* Routing: Add `DocumentUrlAliasService` for optimized URL alias lookups
(closes #​21383) by @​AndyButland in
umbraco/Umbraco-CMS#21396
* Performance: Optimize property retrieval and authorization checks in
collection views (closes #​21367) by @​AndyButland in
umbraco/Umbraco-CMS#21470

### 🧪 Testing
* E2E: QA Replaced unreliable Thread.Sleep(500) with a counter/gate
pattern that ensures both transactions are initialized before releasing
them to compete for locks by @​andr317c in
umbraco/Umbraco-CMS#21165
* E2E QA: Updated integration test that was missing directory setup by
@​andr317c in umbraco/Umbraco-CMS#21167
* E2E: QA Added acceptance tests for removing a not-found content picker
by @​nhudinh0309 in umbraco/Umbraco-CMS#21177
* E2E: QA Fixed failing tests for the current user profile by
@​nhudinh0309 in umbraco/Umbraco-CMS#21214
* Upgrade MSW from 1.3.5 to 2.12.4 by @​madsrasmussen in
umbraco/Umbraco-CMS#21096
* E2E: QA Added acceptance tests for rendering content with invariant
blocks by @​nhudinh0309 in
umbraco/Umbraco-CMS#21180
* E2E: QA Added acceptance tests for content delivery API by
@​nhudinh0309 in umbraco/Umbraco-CMS#21095
 ... (truncated)

Commits viewable in [compare
view](umbraco/Umbraco-CMS@release-17.1.0...release-17.2.0).
</details>

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants