* Should fix#14890
* Set z-index of #leftcolumn to 0 when Tiny MCE is in fullscreen mode
---------
Co-authored-by: Jannik Anker <jaa@kfforsikring.dk>
Co-authored-by: Jason Elkin <jason@bumpdigital.co.uk>
* parse culture and segment for dynamic root.
* Handle new culture and segment parameters
---------
Co-authored-by: Niels Lyngsø <niels.lyngso@gmail.com>
* Create missing node for content type
* Change to Unknown instead of deleted
* Cleared contentTypes and removed console.log
---------
Co-authored-by: Zeegaan <nge@umbraco.dk>
Co-authored-by: Andreas Zerbst <andr317c@live.dk>
* Refactor to show icon and status code to make status more clear
* Fix up migration
* Add change log status migration
* Fix up frontend to display cross when fail
---------
Co-authored-by: Zeegaan <nge@umbraco.dk>
* Use code snippet component for request and response
* Change overlay size to medium
* Format log date
* Handle JS as JavaScript
* Try format JSON
* Update less syntax
* Add word wrap
* Formatting
* Update variable
* Remove unused editorService
* Add missing details controller and fix formatting in catch block
* Set data object
* Update overlay size to match umb-editor overlay
* Use editorService instead to show details on overlay
* Add general box header
(cherry picked from commit 13db9b308e)
* Use code snippet component for request and response
* Change overlay size to medium
* Format log date
* Handle JS as JavaScript
* Try format JSON
* Update less syntax
* Add word wrap
* Formatting
* Update variable
* Remove unused editorService
* Add missing details controller and fix formatting in catch block
* Set data object
* Update overlay size to match umb-editor overlay
* Use editorService instead to show details on overlay
* Add general box header
* fix: make sure isTimedOut state is forwarded to the login screen
* fix: make umb-custom-view work without attributeChangedCallback
* style subheadline
* add support for userViewState on external login custom views
* fix: subheadline should be a span
* check for isTimedOut on internal login screen
* reformat code
* add args to external login provider custom view
* send args to custom view
* set state to "logout" when clicking the logout button
* force user to new login page /umbraco/login?logout=true if logged out
* Update blocklist.blockconfiguration.overlay.less
Change noValue color
* Update blockgrid.blockconfiguration.overlay.less
Change noValue color for block-grid
* add new login images
* layout styling
* styling
* fix line height
* use image and logo
* add comments
* remove border and shadow
* change logos and images
* use styleMap and add dark logo property
* add new content setting for dark logo variant
* add loginLogoImageDark to angular server variables
* set logo-dark attribute on the auth element and rename "logo-image" to "logo-light"
* styling
* update auth element
* replace logo files with new brand logos
* use different logo on install screen
* no-nodes: move logo to img file
* use different logo for umb-avatar
* use different logo for backoffice
* use different logo for BootFailed
* tranparent background
* switch dark and light logo
* image flip horizontal
* fix background
* inject native inputs into auth element
* use native inputs in login
* get input values and submit on enter press
* wip validation
* wip custom login input. And inject entire form instead
* use external submit button
* use uui-labels instead
* style inputs
* cleanup
* convert to function
* add translations
* wait for slot update before getting form
* fix divider to work on transparent backgrounds
* background less transparent
* load css from file
* fix logo
* fix mobile padding
* add documentation and fix name of input field for username
* revert to old login background
* revert to old login background
* add labels for login fields
* fix label warning
* fix fallback for messages
* replace background image
* do not transform background image
* add mocked texts
* use new generic "Welcome" title
* use correct user_email for email field
* update "Welcome..." to "Welcome" to use with the new login screen
* reformat code
* update greeting headline
* update actions
* update mocks
* update fallback value
* update texts
* improve query safety
* add logoImageAlternative and ensure naming is correct from backend to frontend
* add remarks to avoid changing the color configuration of an external login button
* format
* update auth styles
* external login provider element
* auth layout
* external login providers layout
* login input element
* invite page
* login page
* new password page
* typesafe
* fix custom view login provider
* divider color
* prevent pink lines from overflowing image
* replace login background
* add umb prefix to css variables
* avoid using 'umbraco' in alt texts and add check for logo alternative
* adjust greeting size
* Revert "add umb prefix to css variables"
This reverts commit 005813cbfd5df4b72d6ba61f6bfe7b368cb98823.
* add new blue button color
* font-size on headlines
* align styling on all pages
* use error layout
* ts happy
* adjust divider to work better with rounded buttons
* add overflow to in case of very long forms
* adjust h2 size
* update mocks to match cms
* first headline on a page should be a h1
* first headline on a page should be a h1
* first headline on a page should be a h1
* copy styling to mfa page
* first headline on a page should be a h1
* make the blue logo default for Umbraco 13
* move background-color to auth-layout so it also takes effect inside the cms
* adjust padding on the internal div on the buttons
* reformat code
* fix async text for external login buttons
* align design of mfa page with the other screens
* align logos
* reformat code
* use white logo for nonodes
* add safety measure to returnPath
* lowercase the 'or' text
* force uui-select to use the background-color as other regular inputs
* match uui-select-height with other input fields
* revert back to default look for outline uui-button
* move background-color to layout element to span the entire browser
* align headlines across components
* adjust max-width on #content to better fit headlines
* align line-height on headlines across components
* allow error text a bit of top margin
---------
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
* V13: Add support for Node.js 20 (#15022)
* update versionSpec to nodejs 20 and avoid specifying minor and patch versions to improve Azure Pipelines stability
* update engines and package lock files
* update helpful displayNames for npm builds
* add retry to counter nodejs.org timeouts
add retryCountOnTaskFailure as suggested on https://developercommunity.visualstudio.com/t/NodeTool0-task-to-install-nodejs-fails/10455454
* update lockfile
* bump nvm support to latest node.js 20.9 LTS
* build(deps): bump @umbraco-ui/uui from 1.3.0 to 1.5.0
* build(deps): bump public dependencies to latest
* build(deps-dev): bump build dependencies to latest
* build(deps-dev): bump test tools to latest
* build: add script to lint and run --fix
* revert login merge from v13
* Add edit page for webhook
* Remove function again
* Remove old edit in overlay
* Update language keys
* Update GetByKey to get model as camel case properties
* Localize "select event"
* Localize "create header"
* Don't show input field in header for now
* Add generic class to limit property editor width
* Remove loading check since already checked when loading entire editor view
* Add empty message
* Update col span
* Set edit name
* Map id property
* Return webhook model after update
* Translate speech bubble text
* Resolve content types
* Only push if not already exists
* Check webhook headers
* Set webhook enabled by default
* Refactor IWebhookEvent to contain event type.
* refactor frontend to filter on eventType.
* Display event names
* refactor to use eventNames
* remove npm from overview
* implement alias for WebhookEvents
* Implement [WebhookEvent] attribute
* Refactor IWebhookService to get by event alias and not name
* Rename parameter to fit method name
* to lower event type to avoid casing issues
* Apply suggestions from code review
Co-authored-by: Ronald Barendse <ronald@barend.se>
* Change event names from constants to hard coded. And give more friendly names
* Refactor to not use event names, where it was not intended
* Add renaming column migration
* display event alias in logs
* Update migration to check if old column is there
* Apply suggestions from code review
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* add determineResource function to avoid duplicate code
---------
Co-authored-by: Zeegaan <nge@umbraco.dk>
Co-authored-by: Ronald Barendse <ronald@barend.se>
Co-authored-by: Kenn Jacobsen <kja@umbraco.dk>
* #14835 Update link on permissionsreport.html
Updated link to permissions page to point to 10-LTS documentation
* retrigger checks
---------
Co-authored-by: Rasmus Berntsen <rasmus.berntsen@isobar.com>
* Update icons
* Update tree headers
* Cleanup and change icon name
* Use button element instead
* Disable button instead
* Fix overlay title
* Simplify labels
* Add datalist for common headers
* Use Utilties function
* Events in plural form
* Cleanup and formatting
* Formatting
* More formatting
* Stop event bubbling when clicking delete button
* Sync tree node and show loading indicator
* Add webhook icon
* Remove globe icon to not confuse with languages
* Update logs
* Remove extra column with delete button which shouldn't be there
* Use umb-icon and update titles
* Use content type picker
(cherry picked from commit 29be27ba46)
* Update icons
* Update tree headers
* Cleanup and change icon name
* Use button element instead
* Disable button instead
* Fix overlay title
* Simplify labels
* Add datalist for common headers
* Use Utilties function
* Events in plural form
* Cleanup and formatting
* Formatting
* More formatting
* Stop event bubbling when clicking delete button
* Sync tree node and show loading indicator
* Add webhook icon
* Remove globe icon to not confuse with languages
* Update logs
* Remove extra column with delete button which shouldn't be there
* Use umb-icon and update titles
* Use content type picker
* insert umb rte block web component in rte
* First stab at moving the RTE markup to a nested "markup" property in the property value.
* initial work
* only rewrite markup
* transform RTE into component
* parse scope in grid.rte
* revert use a fallback instead
* block insertion and sync in place
* block picker partly impl
* remove test of old controller
* remove test of old controller
* block with block data
* proper block with api connection
* remove log
* styling
* Persist blocks data (still a temporary solution)
* styling allows for interaction
* block actions
* tinyMCE styling
* paste feature
* prevalue display Inline toggle
* inline mode in RTE
* todo note
* fixes wording
* preparation for editor communication
* remove val-server-match for now
* clean up blocks that does not belong in markup
* remove blocks not used in the markup
* liveEditing
* displayAsBlock formatting
* clean up
* TODO note
* Serverside handling for RTE blocks (incl. refactor of Block List and Block Grid)
* ensure rich text loads after block editor
* trigger resize on block init
* Handle RTE blocks output in Delivery API
* sanitize ng classes
* simplify calls to init blocks
* move sanitisation
* make validation work
* only warn when missing one
* clean up
* remove validation border as it does not work
* more clean up
* add unsupported block entry editor
* Revert breaking functionality for Block List and Grid
* prevent re-inits of blocks
* make sure delete blocks triggers an update
* Refactor RichTextPropertyIndexValueFactory to index values from blocks + clean up RichTextPropertyEditor dependencies
* first working cursor solution
* inline element approach
* Handle both inline and block level blocks
* Fix the RTE block parser regex so it handles multiple inline blocks.
* Fix reference and tags tracking, add tests, make the editor backwards compatible and make deploy happy
* Use RichTextPropertyEditorHelper serialization in tests
* Ensure correct model in Block Grid value converter (incl unit test to prove it)
* do not include umbblockpicker in grid
* make blocks the new default, instead of macros
* only send value of body from DOMParser
* Blocks of deleted ElementTypes shows unsupported
* do not edit a unsupported block
* remove trying to be smart on the init
* fix missing culture issue
* set dirty
* alert when no blocks
* Revert "make blocks the new default, instead of macros"
This reverts commit 283e8aa473fdfde075197d34aa47e35dfc64a8ae.
---------
Co-authored-by: kjac <kja@umbraco.dk>
* Temp commit.. Initial work on XPath alternative for dymamically finding start nodes
* First commit that goes all the way from ui to db for NearestAncestorOrSelf
* Added more filters + return null from controller instead of not found
* Bugfix
* rewrite query to make sqlserver happy?
* Added more tests
* clean up initial step
* Added tests and refactor
* Update endpoint to take model instead of json
* pick origin
* Use model for config instead of string
* append add filter button
* fix
* default filter
* rename json fields
* correct field names
* minor corrections
* Renaming..
* Rename endpoint
* initial work for appending query steps
* query steps ui
* more localization
* query step UI
* Use doc type keys instead of alias
* only for Documents
* change to send keys to anyOfDocTypeKeys
* Fix potential bug
* Fix when level is impossible to get
* correct prop to dynamicRoot
* noValidStartNode dialog
* custom query step
* Renaming
* Rollback unintended file change
* Fixed issue if no doc type is chosen
* Remove unintended file changes
* More unintended changes
* Renaming
* Optimizations
- IDE Recommendation for better source
- Renaming for better clarity
- Improving spacing/formatting
- Typo corrections
- Remove warnings concerning IEnumerable
* Fix failed attempt bug
---------
Co-authored-by: Niels Lyngsø <niels.lyngso@gmail.com>
Co-authored-by: Sven Geusens <sge@umbraco.dk>
* Create webhook models
* Define interfaces for service and repository
* Create Webhook dto and corresponding factory
* implement WebhookRepository.cs
* Remove entity name from models, as that should be resolved in mapping instead
* Add new table to schema creator
* Register repo for DI
* Remove more mentions of entityname
* Refactor repository to guids
* Implement WebhookService
* Use scopes in service
* Start creating tests for service
* Refactor delete to use Id and not entire entity
* Rework Webhooks to be able to have multiple entity keys
* Implement GetAll functionality
* Implement webhook controller
* Imeplement get all events action
* Add equalityComparer deletegate to Webhook
* Add datacontract attirbutes to properties
* Implement backoffice webhooks tree
* Implement first webhooks menu
* Make WebHookController authorized
* Update to have tabs with webhooks and logs
* Enable create overlay
* Push to entityKeys array
* Fix up pagination
* Implement delete functionality
* remove pagination
* add log view
* Fix create to be able to select more than one content type
* implement type name resolving for content
* Refactor to use less duplication
* Implement update functionality in frontend
* Rename database table
* Make multiple events possible
* create new event picker
* Refactor to actually add new database table with proper name
* Make it possible to select multiple events
* Fix updating current items
* Fix up update functionality after db rework
* Add webhook icon
* Switch to match heartcore icons
* Refactor to use bases instead of Enum
* Refactor to make IWebhookEvent to Collection, so it can be injected instead of using reflection
* Fix up frontend to match new models
* Fix integration tests
* Remove obsolete entity key from webhookdto
* Introduce constants instead of hard coded strings
* Start implementation of firing mechanism
* Add new GetByEventName method
* Add 1 to many list on WebhookDto
* Implement new repository pattern
* Implement GetByEventName
* Fix up repository to use all async
* Refactor events to fire
* Refactor WebhookEvents to be more DRY
* Add custom header
* Start implementing log repository
* Implement GetPaged
* Implement WebhookLogService
* Implement GetLogs
* Add url to webhook log
* Implement log overview
* Formatting
* Implement details view
* Refactor to get actual retry count
* Refactor firing to fire only when Enabled
* Add Status code to detailed view
* Add configuration to disable webhooks entirely
* Implement custom headers frontend
* Implement persistence of custom headers
* Refactor retry service to also retry on non success status codes.
* Refactor registration of Webhooks, to also register as NotificationHandler
* Add webhooks migration
* Add key for adding webhook headers
* Fix up test
* Change event icon to flag
* Remember event, when editing what events you have chosen
* Refactor reflection to check if INotificationAsyncHandler instead
* Formatting
* Refactor webhook model to no longer derive from EntityBase
* Rename entityKeys to content keys
* Rename controller to lowercase H
* Add null check before trying to access selectedEvents
* Add configuration for maximum number of retries
* Add index to date
* Add webhook Key to logs
* Check for SchedulingPublisher before sending webhooks
* rename requestObject to payload
* Refactor event to send appropriate payloads
* Refactor logging to happen for every try.
* Order date by descending
* Add todo
* Change firing service to use String not ByteContent
* Update Headers to Interface instead of concrete implementation
* Dont return if a table exists already
* Rename updateModel to webhook
* Annotate WebhookController.cs with PluginController attribute
* Add danish translations
* Do not check if fail
* Dont filter when selecting custom items
* Remove delay from WebhookFiringService
---------
Co-authored-by: Zeegaan <nge@umbraco.dk>