* fix: the publish action should use the publish modal
* feat: allows the publish modal to handle invariant data
* chore: rearrange the unpublish action & modal so they are one-for-one alike with publishing
* Updated acceptance tests - add steps to interact with publish modal
* Added tests for publish variant content
* Bumped version of test helper
* feat: adds text to indicate you are about to publish
---------
Co-authored-by: Nhu Dinh <hnd@umbraco.dk>
* Filter Available should not return items without published ancestors when not in preview
* Update unittests mocks
* Internal documentation and minor code tidy.
* Tidied up integration tests and added new tests for the added method.
---------
Co-authored-by: Andy Butland <abutland73@gmail.com>
* Fixed error with reflection on integration test configure builder attributes, so integration tests can be created outside of the Umbraco integration test project.
* Fix nullability
---------
Co-authored-by: mole <nikolajlauridsen@protonmail.ch>
* Clear elementscache from cache refreshers
* Add very simple test ensuring the elements cache is cleared
---------
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* feat: removes all generic Created, Saved, and Deleted notifications
* Comment out the notification checks in acceptance tests
* Bumped version of test helper
* Fixed publish with descendants tests
* Cleaned up
* Bumped version of test helper
---------
Co-authored-by: Nhu Dinh <hnd@umbraco.dk>
Co-authored-by: Nhu Dinh <150406148+nhudinh0309@users.noreply.github.com>
Co-authored-by: Niels Lyngsø <nsl@umbraco.dk>
* Updated dependencies to latest versions.
* Fixed breaking changes following dependency updates.
* Limited NUnit updates to within the current major.
* Fixed failing delivery API contract integration test.
* Added integration tests for publishing service with invalid content.
* Amend test to new create/update models
---------
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* content type nesting
* TODOs
* repository detail manager
* todo
* implement unlimited compositions
* a little refactor
* warn
* clear state
* refactor to use unique
* note
* code corrections to match with types
* unique type for Array State
* implement usedForInheritance and editedTypes for Structure Manager and Compositions
* rename method
* Update repository-details.manager.ts
* avoid type casting
* align naming
* do not await
* fix race condition when switching document types fast
* remove test prop
* Update manifests.ts
* UmbMediaTypeWorkspaceContext Routes for inheritance
* import
---------
Co-authored-by: Mads Rasmussen <madsr@hey.com>
* Removed population of Urls on document response model and obsoleted property.
* Updated readme for acceptance tests to show how to run a single test.
* Removed URLs from document models on the client-side and fixed issue with link picker stil using legacy URLs response data.
---------
Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* Added configuration for the log file name and format.
* Added unit test for LoggingConfiguration.
* Rely on configuration validation to verify supported log file format arguments.
* Fixed unit test failing on build pipeline.
* Rowrked #18771 with a more brute force solution
* Fixes class name. Adds unit test verifying behaviour.
* Corrected test name.
---------
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
Co-authored-by: Andy Butland <abutland73@gmail.com>
* Implement tags for content cache
* Implement tags for media cache
* Refactor to only use cache and media tags
* Remove from DI
* Cleanup
* Update Nuget packages
* Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Change description to be more precise
* Minor code tidy: indents, static methods where possible, made tags methods a little terser.
* Fixed according to review
---------
Co-authored-by: Elitsa <elm@umbraco.dk>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Andy Butland <abutland73@gmail.com>
* Fix
* Editors with access should be able to clear a blocklist value
* Writeup around block element level variation
* Dissallow values to be removed a limited language user does not have permissions to
* Remove commented out code
* improved comments
* Improve expose list for limited language access sub variant block lists
* Scaffold content for content templates serverside
* Generated client types and methods from API.
* Retrieve scaffolded blueprint when creating documents from a blueprint.
* Use introduced helper method on existing read.
* Cleaned up imports.
* feat: moves scaffold service logic to data source and make shallow repository method
* feat: follows UmbDataSourceResponse interface and reorders public/private methods
* Bumped version to 15.4.0-r2.
---------
Co-authored-by: Andy Butland <abutland73@gmail.com>
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
* Use maximum available value for JSON serialization depth.
* Updated unittests with best practices
---------
Co-authored-by: Migaroez <geusens@gmail.com>
* add property visibility state manager
* implement in structure manager
* filter properties based on visibility
* wip document type structure permissions
* rename
* register entity permission for document type property
* add entity permission for media type property
* pass fallback permissions to document granular permissions
* set as preset
* clean up
* wip document type property picker
* add preset value
* Update input-document-type-structure-granular-user-permission.element.ts
* move files
* rename
* Update input-document-value-granular-user-permission.element.ts
* remove temp test
* Update manifests.ts
* remove unused
* Update input-document-value-granular-user-permission.element.ts
* rename see permission + add write permission
* fix missing type
* require property type unique
* add unique to property type
* rename to property type
* map to unique
* deprecate id on property type
* return unique from property picker
* more explicit naming
* use type
* render detail
* Update input-document-value-granular-user-permission.element.ts
* wip modal flow
* clean up
* add headlines
* hide actions
* pass preset value
* add edit permission method
* include property in permission name
* add read and write managers
* implement read and write state managers
* Update content-type-structure-manager.class.ts
* enforce property permissions
* Storage for granular permissions at property type level
* add guards
* make variant property version
* Rename server models to include "property"
* generate server types
* add permissionType to model
* add mappers to user group permission data
* add mapper to current user permission data
* destroy
* clear state
* use permission type for guard check
* add permission type
* require specific permission type
* use correct schema type
* add mappings
* clean up
* log errors
* fix mapping
* null check for icon
* use fallback if there is no forDataModel
* add translations
* sort group alphabetically
* add empty state for no verbs
* organize folders
* always require unique and variant id
* Allow storing empty lists of verbs
* pass variant id to all states
* Remove empty verbs
* add alias to name
* prevent picking the same property type multiple times
* fix lint errors
* fix create state by observing variant options
* move to workspace context
* Update document-property-value-user-permission.workspace-context.ts
* Update content-editor-properties.element.ts
* clean up
* Rename models (last time, promise!)
* Add migration for default document property value permissions
* generate new server models
* update after model changes
* Correct the default permission identifiers
* Add default permissions to newly created DBs
* Add validation and clean-up
* rename to visibility state
* rename to view
* add helpers
* apply to blocks
* Update document-property-value-user-permission.workspace-context.ts
* disable view and write state by default
* add tests for start and stopping a state
* throw errors if adding to a state that is not running
* export consts
* export consts
* fix circular
* fix circular
* set the entity type when setting values
* only apply for block in document values
* split logic
* start states for document blocks
* only apply states when state is running
* Fixed typos in test method names.
* add readonly type
* Enforce: AllowEditInvariantFromNonDefault configuration (#18758)
* add read only state
* handle read only property state in properties element
* prevent editing shared props on non default
* enforce configuration
* clean up
* set variant id
* move to property module
---------
Co-authored-by: Niels Lyngsø <nsl@umbraco.dk>
* remove unnecessary messages
* make sure to destroy consumer
* Thoughts as TODO
* use Entry type
* use Entry type
* get rid of things not yet released
* clean up
* use generic methods
* TODO comment
* use generic observable
* catch if not found
* move variant id out of property type
* mega refactor temp commit
* Guard Manager
* set readOnly as a property on property editors
* further rename
* remove property state managers
* revert state manager
* fix sorting rule
* mega rename and correction
* refactor properties elements
* todo note
* clean up
* impl
* mega refactor moving permission guards to workspace
* rename
* type change
* rearrange
* correct import
* fix tests
* correct tests
* reset viewGuards block
* type correction
* refactor read only for user permissions setting
* todo note
* align property element
* await promise
* impl view guard property filtering
* correct const name
* fix fallback user permissions in mock data
* correct property type id mock data
* toggle permissions example
* complex permission
* Move migration to 16.0.
* rename fallBackToDisallowed to fallbackToNotPermitted
* clean up setReadOnlyStateForUserPermission
* capital o
* align read only naming
* rename method
* add js docs
* remove unused
* correct method name
* add js docs
* add js docs
* camel case function
* fix eslint problems
* camelcase const
* align method names
* remove unused
* fix host
* fix spelling mistake
* align naming
* fix spelling mistake
* add alias
* use read only state methods
* camel case function
* correct method name
* add js docs
* camelcase function
* camel case function
* align method names
* change method name wording
* Include document property value permissions in the current user's aggregated permissions.
* use is read only
* delete unused
* fix implementation of AllowEditInvariantFromNonDefault
* don't know what is happening here. Local is it lower on github it is higher
* Update document-workspace.context.ts
* revert to v16 dev
* simplify if statement
* make it explicit that these are ui only permissions
* add action label for read
* remove duplicates
* use read instead of browse
* align description
* use document instead of node
* make the base class abstract
* extend in test
* Update guard.manager.base.test.ts
* fix example
* style adjustment
* group styling
* refactor guard rule resolving
* remove imports
* remove console.log
* improve disconnected context consumer rejection message
* fix publishableVariantsFilter
* Update document-workspace.context.ts
---------
Co-authored-by: Mads Rasmussen <madsr@hey.com>
Co-authored-by: kjac <kja@umbraco.dk>
Co-authored-by: Andy Butland <abutland73@gmail.com>
* Added tests for mandatory checkboxlist in a content
* Added tests for mandatory dropdown in a content
* Added tests for mandatory media picker in a content
* Added tests for mandatory radiobox in a content
* Added tests for block grid with mandatory property editors
* Added tests for block list with mandatory property editors
* Bumped version
* Cleaned up
* Changed npm command
* Fixed comments
* Fixed comments
* Reverted
* Create new migration
* Migrate UI to tiptap
* remember to overwrite toolbar
* Add setting to disable migration
* Add default extensions when migrating
* Remove places where editorUI alias is used
* Remove more tinyMCE stuff
* Make sure that blocks also works
* Reverted files from bad merge
* bring back value converters
* Class name casing
---------
Co-authored-by: leekelleher <leekelleher@gmail.com>
* Create integration test verifying existing behaviour.
* Aggregate permissions per document for the current user response.
* Refactoring following Codescene warnings.