* Added check to only find .css files in FileSystemTreeServiceBase.cs
* Marking GetFiles as virtual and overriding it in StyleSheetTreeService.cs to only find .css files
* Redone tests to fit new format
* Fix tests to use file extensions
* Adding file extensions to all other relevant tests
* Adding file filter to remaining trees
* Adding tests to ensure invalid filetypes wont show
* Encapulation and resolved minor warnings in tests.
---------
Co-authored-by: Andy Butland <abutland73@gmail.com>
Use tryExecute for delete API call
Replaces direct await of #delete with tryExecute to improve error handling in the delete method of UmbManagementApiDetailDataRequestManager.
* utility
* ability to replace
* deprecate removeStatus
* no need to call this any longer
* Sort statuses and ensure not appending statuses, only updating them
* hotfix: ensures that local urls stay relative so we land up on the correct backoffice host that the user initiated the preview session from originally
* feat: since ensureAbsoluteUrl is never supplied anymore, we can remove the parameter altogether
* Remove unused dependency
* Expose IsExternal for URLs
* feat: adds localize controller
* chore: generates api models
* feat: marks the internal preview default url as relative, so that the `<base>` tag is taken into consideration - that way the URL will open on whatever host is active
* Remove IsExternal from the API again
* regenerate types
---------
Co-authored-by: kjac <kja@umbraco.dk>
* Add 'Trashed' state to document workspace view
Introduces a new 'Trashed' label and tag for documents in the workspace view. Updates localization to include the 'Trashed' term for improved clarity when displaying trashed documents.
* Show trashed state in media workspace info view
---------
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
* feat: replaces manual WebSocket with the actual SignalR library on the preview context
* feat: informs the developer what went wrong in preview mode
* feat: awaits the stop connection before proceeding
* feat: ensures no existing connection exists
* clean up
* localizations
* group user permission by entity type
* adjustments
* fix lint errors
* Support granular permissions without entity type
Updated granular permission handling to allow permissions that are not tied to a specific entity type. Adjusted rendering logic and manifest interface to support undefined or empty forEntityTypes, and added UI for displaying ungrouped granular permissions.
* revert for now
---------
Co-authored-by: Mads Rasmussen <madsr@hey.com>
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
* Reduce log level of image cropper converter to avoid flooding logs with expected exceptions.
* Don't run publish branch long running operation on a background thread such that UmbracoContext is available.
* Revert to background thread and use EnsureUmbracoContext to ensure we can get an IUmbracoContext in the URL providers.
* Updated tests.
* Applied suggestion from code review.
* Clarified comment.
Fixes SQL error to ensure database relation between user group media start folder and deleted media item is removed.
# Conflicts:
# src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MediaRepository.cs
* Tiptap toolbar config: enable removal of unregistered extensions
* Tiptap statusbar config: enable removal of unregistered extensions
* Tiptap toolbar config: Typescript tidy-up
* Tiptap toolbar sorting amend
Removed the need for the `tiptap-toolbar-alias` attribute,
we can reuse the `data-mark`.
* Tiptap extension config UI amend
If the extension doesn't have a `description`,
then add the `alias` to the title/tooltip, to give a DX hint.
* Tiptap toolbar: adds `title` to placeholder skeleton
* Added missing `forExtensions` for Style Select and Horizontal Rule toolbar extensions
* Update src/Umbraco.Web.UI.Client/src/packages/tiptap/property-editors/toolbar-configuration/property-editor-ui-tiptap-toolbar-configuration.element.ts
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update src/Umbraco.Web.UI.Client/src/packages/tiptap/property-editors/statusbar-configuration/property-editor-ui-tiptap-statusbar-configuration.element.ts
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Be consistent in use of GetOrCreateAsync overload in exists and retrieval.
Ensure nullability of ContentCacheNode is consistent in exists and retrieval.
* Applied suggestion from code review.
* Move seeding to Umbraco application starting rather than started, ensuring an initial request is served.
* Tighten up hybrid cache exists check with locking around check and remove, and use of cancellation token.
(cherry picked from commit 81a8a0c191)
* Store local time zone as UTC and do not throw validation error when stored time zone is different
* Additional fixes when switching between date time editors with and without time zone
* Additional fixes
* Ensure that an update is triggered when the expected value does not match the stored value
This will happen when switching between editors (with and without time zone) or switching between a specific time zone to the editor's local time zone.
* Fix inconsistencies with null and undefined
* Fix inconsistencies between date/time provided to the client and returned in the value converter (when switching between editors)
* Fix unit tests and small bug
* Adjust integration test
* Small improvement
* Update test data
* Adjust logic so that time zone offsets are updated every time the date value changes
* Do not pre-select time zone when switching between unspecified and time zone editors
* register structure context for recycle bin
* Update manifests.ts
* export consts
* move href construction to context + override for document and media
* Preview Exit: Gets the page's published URL on exit for redirect
* Preview Open Website: Uses the page's published URL
* Tweaked the published URL logic
* Code amends based on @copilot's suggestions
(cherry picked from commit d5a2f0572e)
* make document and media readonly when trashed + reload the entity
* introduce restore event + remove readonly
* handle media audit log todos
* disable content type picker when trashed
* disable template picker when trashed
* Block List: adds `$index` support for UFM labels
* Block Grid: adds `$index` support for UFM labels
* Block RTE: adds `$index` support for UFM labels
Which is always zero `0`.
But has been wired up if we do implement the index order in future.
* Updated tests
* E2E: Updated acceptance tests to match changes (#20493)
* Updated tests to match changes
* More updates
* Bumped version
* Reverted change
* add pickable to vs code dictionary
* set up types for pickable filters in data sources
* pass search pickable filter to search result
* apply filter config in document data source example
* add pickable filters to custom tree example
* Update input-entity-data.context.ts
* remove unused
* Update types.ts