From 8478452eda61451452f00dc4261dec09aacb3774 Mon Sep 17 00:00:00 2001 From: Diego Cardoso Date: Mon, 4 Apr 2022 10:18:44 +0300 Subject: [PATCH] feat: add dialog title, header and footer renderers (#3623) --- packages/dialog/src/vaadin-dialog.d.ts | 59 ++- packages/dialog/src/vaadin-dialog.js | 287 +++++++++++- .../dialog/test/draggable-resizable.test.js | 15 +- packages/dialog/test/header-footer.test.js | 417 ++++++++++++++++++ packages/dialog/test/helpers.js | 11 + packages/dialog/test/not-animated-styles.js | 14 + packages/dialog/test/typings/dialog.types.ts | 14 +- .../dialog/test/visual/lumo/dialog.test.js | 43 +- .../dialog/baseline/footer-renderer.png | Bin 0 -> 23026 bytes .../baseline/header-footer-renderer.png | Bin 0 -> 24915 bytes .../dialog/baseline/header-renderer.png | Bin 0 -> 23491 bytes .../dialog/baseline/header-title-renderer.png | Bin 0 -> 23833 bytes .../dialog/baseline/header-title.png | Bin 0 -> 23261 bytes .../test/visual/material/dialog.test.js | 43 +- .../dialog/baseline/footer-renderer.png | Bin 0 -> 15643 bytes .../baseline/header-footer-renderer.png | Bin 0 -> 17023 bytes .../dialog/baseline/header-renderer.png | Bin 0 -> 16005 bytes .../dialog/baseline/header-title-renderer.png | Bin 0 -> 16302 bytes .../dialog/baseline/header-title.png | Bin 0 -> 15403 bytes .../dialog/theme/lumo/vaadin-dialog-styles.js | 24 + .../theme/material/vaadin-dialog-styles.js | 14 + 21 files changed, 897 insertions(+), 44 deletions(-) create mode 100644 packages/dialog/test/header-footer.test.js create mode 100644 packages/dialog/test/helpers.js create mode 100644 packages/dialog/test/not-animated-styles.js create mode 100644 packages/dialog/test/visual/lumo/screenshots/dialog/baseline/footer-renderer.png create mode 100644 packages/dialog/test/visual/lumo/screenshots/dialog/baseline/header-footer-renderer.png create mode 100644 packages/dialog/test/visual/lumo/screenshots/dialog/baseline/header-renderer.png create mode 100644 packages/dialog/test/visual/lumo/screenshots/dialog/baseline/header-title-renderer.png create mode 100644 packages/dialog/test/visual/lumo/screenshots/dialog/baseline/header-title.png create mode 100644 packages/dialog/test/visual/material/screenshots/dialog/baseline/footer-renderer.png create mode 100644 packages/dialog/test/visual/material/screenshots/dialog/baseline/header-footer-renderer.png create mode 100644 packages/dialog/test/visual/material/screenshots/dialog/baseline/header-renderer.png create mode 100644 packages/dialog/test/visual/material/screenshots/dialog/baseline/header-title-renderer.png create mode 100644 packages/dialog/test/visual/material/screenshots/dialog/baseline/header-title.png diff --git a/packages/dialog/src/vaadin-dialog.d.ts b/packages/dialog/src/vaadin-dialog.d.ts index 2ac8e0b009..434c0eaca6 100644 --- a/packages/dialog/src/vaadin-dialog.d.ts +++ b/packages/dialog/src/vaadin-dialog.d.ts @@ -94,6 +94,23 @@ export type DialogEventMap = HTMLElementEventMap & DialogCustomEventMap; * See [``](#/elements/vaadin-overlay) documentation. * for `` parts. * + * In addition to `` parts, the following parts are available for styling: + * + * Part name | Description + * -----------------|------------------------------------------- + * `header` | Element wrapping title and header content + * `header-content` | Element wrapping the header content slot + * `title` | Element wrapping the title slot + * `footer` | Element wrapping the footer slot + * + * The following state attributes are available for styling: + * + * Attribute | Description + * -----------------|-------------------------------------------- + * `has-title` | Set when the element has a title + * `has-header` | Set when the element has header renderer + * `has-footer` | Set when the element has footer renderer + * * Note: the `theme` attribute value set on `` is * propagated to the internal `` component. * @@ -136,14 +153,52 @@ declare class Dialog extends ThemePropertyMixin(ElementMixin(DialogDraggableMixi */ renderer: DialogRenderer | null | undefined; + /** + * String used for rendering a dialog title. + * + * If both `headerTitle` and `headerRenderer` are defined, the title + * and the elements created by the renderer will be placed next to + * each other, with the title coming first. + * + * When `headerTitle` is set, the attribute `has-title` is added to the overlay element. + * @attr {string} header-title + */ + headerTitle: string | null | undefined; + + /** + * Custom function for rendering the dialog header. + * Receives two arguments: + * + * - `root` The root container DOM element. Append your content to it. + * - `dialog` The reference to the `` element. + * + * If both `headerTitle` and `headerRenderer` are defined, the title + * and the elements created by the renderer will be placed next to + * each other, with the title coming first. + * + * When `headerRenderer` is set, the attribute `has-header` is added to the overlay element. + */ + headerRenderer: DialogRenderer | null | undefined; + + /** + * Custom function for rendering the dialog footer. + * Receives two arguments: + * + * - `root` The root container DOM element. Append your content to it. + * - `dialog` The reference to the `` element. + * + * When `footerRenderer` is set, the attribute `has-footer` is added to the overlay element. + */ + footerRenderer: DialogRenderer | null | undefined; + /** * Set to true to remove backdrop and allow click events on background elements. */ modeless: boolean; /** - * Requests an update for the content of the dialog. - * While performing the update, it invokes the renderer passed in the `renderer` property. + * While performing the update, it invokes the renderer passed in the `renderer` property, + * as well as `headerRender` and `footerRenderer` properties, if these are defined. * * It is not guaranteed that the update happens immediately (synchronously) after it is requested. */ diff --git a/packages/dialog/src/vaadin-dialog.js b/packages/dialog/src/vaadin-dialog.js index b01a5f8445..73e1457e69 100644 --- a/packages/dialog/src/vaadin-dialog.js +++ b/packages/dialog/src/vaadin-dialog.js @@ -15,6 +15,50 @@ import { DialogResizableMixin } from './vaadin-dialog-resizable-mixin.js'; registerStyles( 'vaadin-dialog-overlay', css` + /* prefixing with the element tag to avoid styling confirm-dialog header part */ + header[part='header'] { + display: flex; + } + + [part='header-content'] { + flex: 1; + } + + /* prefixing with the element tag to avoid styling confirm-dialog footer part */ + footer[part='footer'] { + display: flex; + justify-content: flex-end; + } + + :host(:not([has-title]):not([has-header])) header[part='header'], + :host(:not([has-title])) [part='title'] { + display: none; + } + + :host(:not([has-footer])) footer[part='footer'] { + display: none; + } + + :host(:is([has-title], [has-header], [has-footer])) [part='content'] { + min-height: 100%; + height: auto; + } + + @media (min-height: 320px) { + :host(:is([has-title], [has-header], [has-footer])) .resizer-container { + overflow: hidden; + display: flex; + flex-direction: column; + } + + :host(:is([has-title], [has-header], [has-footer])) [part='content'] { + flex: 1; + overflow: auto; + min-height: auto; + height: 100%; + } + } + /* NOTE(platosha): Make some min-width to prevent collapsing of the content taking the parent width, e. g., and such. @@ -53,18 +97,188 @@ export class DialogOverlay extends OverlayElement { resizerContainer.classList.add('resizer-container'); resizerContainer.appendChild(contentPart); overlayPart.appendChild(resizerContainer); + + const headerContainer = document.createElement('header'); + headerContainer.setAttribute('part', 'header'); + resizerContainer.insertBefore(headerContainer, contentPart); + + const titleContainer = document.createElement('div'); + titleContainer.setAttribute('part', 'title'); + headerContainer.appendChild(titleContainer); + + const titleSlot = document.createElement('slot'); + titleSlot.setAttribute('name', 'title'); + titleContainer.appendChild(titleSlot); + + const headerContentContainer = document.createElement('div'); + headerContentContainer.setAttribute('part', 'header-content'); + headerContainer.appendChild(headerContentContainer); + + const headerSlot = document.createElement('slot'); + headerSlot.setAttribute('name', 'header-content'); + headerContentContainer.appendChild(headerSlot); + + const footerContainer = document.createElement('footer'); + footerContainer.setAttribute('part', 'footer'); + resizerContainer.appendChild(footerContainer); + + const footerSlot = document.createElement('slot'); + footerSlot.setAttribute('name', 'footer'); + footerContainer.appendChild(footerSlot); } return memoizedTemplate; } + static get observers() { + return [ + '_headerFooterRendererChange(headerRenderer, footerRenderer, opened)', + '_headerTitleChanged(headerTitle, opened)' + ]; + } + static get properties() { return { modeless: Boolean, - withBackdrop: Boolean + withBackdrop: Boolean, + + headerTitle: String, + + headerRenderer: Function, + + footerRenderer: Function }; } + ready() { + super.ready(); + + const uniqueId = (DialogOverlay._uniqueId = 1 + DialogOverlay._uniqueId || 0); + this._titleId = `${this.constructor.is}-title-${uniqueId}`; + } + + /** @private */ + __createContainer(slot) { + const container = document.createElement('div'); + container.setAttribute('slot', slot); + return container; + } + + /** @private */ + __clearContainer(container) { + container.innerHTML = ''; + // Whenever a Lit-based renderer is used, it assigns a Lit part to the node it was rendered into. + // When clearing the rendered content, this part needs to be manually disposed of. + // Otherwise, using a Lit-based renderer on the same node will throw an exception or render nothing afterward. + delete container._$litPart$; + } + + /** @private */ + __initContainer(container, slot) { + if (container) { + // Reset existing container in case if a new renderer is set. + this.__clearContainer(container); + } else { + // Create the container, but wait to append it until requestContentUpdate is called. + container = this.__createContainer(slot); + } + return container; + } + + /** @private */ + _headerFooterRendererChange(headerRenderer, footerRenderer, opened) { + const headerRendererChanged = this.__oldHeaderRenderer !== headerRenderer; + this.__oldHeaderRenderer = headerRenderer; + + const footerRendererChanged = this.__oldFooterRenderer !== footerRenderer; + this.__oldFooterRenderer = footerRenderer; + + const openedChanged = this._oldOpenedFooterHeader !== opened; + this._oldOpenedFooterHeader = opened; + + if (headerRendererChanged) { + if (headerRenderer) { + this.headerContainer = this.__initContainer(this.headerContainer, 'header-content'); + } else if (this.headerContainer) { + this.headerContainer.remove(); + this.headerContainer = null; + } + } + + if (footerRendererChanged) { + if (footerRenderer) { + this.footerContainer = this.__initContainer(this.footerContainer, 'footer'); + } else if (this.footerContainer) { + this.footerContainer.remove(); + this.footerContainer = null; + } + } + + if ( + (headerRenderer && (headerRendererChanged || openedChanged)) || + (footerRenderer && (footerRendererChanged || openedChanged)) + ) { + if (opened) { + this.requestContentUpdate(); + } + } + + this.toggleAttribute('has-header', !!headerRenderer); + this.toggleAttribute('has-footer', !!footerRenderer); + } + + /** @private */ + _headerTitleChanged(headerTitle, opened) { + if (opened && (headerTitle || this._oldHeaderTitle)) { + this.requestContentUpdate(); + } + this._oldHeaderTitle = headerTitle; + this.toggleAttribute('has-title', !!headerTitle); + } + + /** @private */ + _headerTitleRenderer() { + if (this.headerTitle) { + if (!this.headerTitleElement) { + this.headerTitleElement = document.createElement('span'); + this.headerTitleElement.id = this._titleId; + this.headerTitleElement.setAttribute('slot', 'title'); + this.headerTitleElement.classList.add('draggable'); + + this.setAttribute('aria-labelledby', this._titleId); + } + this.appendChild(this.headerTitleElement); + this.headerTitleElement.textContent = this.headerTitle; + } else if (this.headerTitleElement) { + this.headerTitleElement.remove(); + this.headerTitleElement = null; + this.removeAttribute('aria-labelledby'); + } + } + + requestContentUpdate() { + super.requestContentUpdate(); + + // If a new renderer has been set, make sure to reattach the header/footer roots + if (this.headerContainer && !this.headerContainer.parentElement) { + this.appendChild(this.headerContainer); + } + + if (this.footerContainer && !this.footerContainer.parentElement) { + this.appendChild(this.footerContainer); + } + + if (this.headerRenderer) { + this.headerRenderer.call(this.owner, this.headerContainer, this.owner); + } + + if (this.footerRenderer) { + this.footerRenderer.call(this.owner, this.footerContainer, this.owner); + } + + this._headerTitleRenderer(); + } + /** * Updates the coordinates of the overlay. * @param {!DialogOverlayBoundsParam} bounds @@ -156,6 +370,23 @@ customElements.define(DialogOverlay.is, DialogOverlay); * See [``](#/elements/vaadin-overlay) documentation. * for `` parts. * + * In addition to `` parts, the following parts are available for styling: + * + * Part name | Description + * -----------------|------------------------------------------- + * `header` | Element wrapping title and header content + * `header-content` | Element wrapping the header content slot + * `title` | Element wrapping the title slot + * `footer` | Element wrapping the footer slot + * + * The following state attributes are available for styling: + * + * Attribute | Description + * -----------------|-------------------------------------------- + * `has-title` | Set when the element has a title + * `has-header` | Set when the element has header renderer + * `has-footer` | Set when the element has footer renderer + * * Note: the `theme` attribute value set on `` is * propagated to the internal `` component. * @@ -181,6 +412,7 @@ class Dialog extends ThemePropertyMixin(ElementMixin(DialogDraggableMixin(Dialog ` element. + * + * If both `headerTitle` and `headerRenderer` are defined, the title + * and the elements created by the renderer will be placed next to + * each other, with the title coming first. + * + * When `headerRenderer` is set, the attribute `has-header` is added to the overlay element. + * @type {DialogRenderer | undefined} + */ + headerRenderer: Function, + + /** + * Custom function for rendering the dialog footer. + * Receives two arguments: + * + * - `root` The root container DOM element. Append your content to it. + * - `dialog` The reference to the `` element. + * + * When `footerRenderer` is set, the attribute `has-footer` is added to the overlay element. + * @type {DialogRenderer | undefined} + */ + footerRenderer: Function, + /** * Set to true to remove backdrop and allow click events on background elements. * @type {boolean} @@ -261,7 +533,11 @@ class Dialog extends ThemePropertyMixin(ElementMixin(DialogDraggableMixin(Dialog } static get observers() { - return ['_openedChanged(opened)', '_ariaLabelChanged(ariaLabel)', '_rendererChanged(renderer)']; + return [ + '_openedChanged(opened)', + '_ariaLabelChanged(ariaLabel)', + '_rendererChanged(renderer, headerRenderer, footerRenderer)' + ]; } /** @protected */ @@ -276,7 +552,8 @@ class Dialog extends ThemePropertyMixin(ElementMixin(DialogDraggableMixin(Dialog /** * Requests an update for the content of the dialog. - * While performing the update, it invokes the renderer passed in the `renderer` property. + * While performing the update, it invokes the renderer passed in the `renderer` property, + * as well as `headerRender` and `footerRenderer` properties, if these are defined. * * It is not guaranteed that the update happens immediately (synchronously) after it is requested. */ @@ -285,8 +562,8 @@ class Dialog extends ThemePropertyMixin(ElementMixin(DialogDraggableMixin(Dialog } /** @private */ - _rendererChanged(renderer) { - this.$.overlay.setProperties({ owner: this, renderer }); + _rendererChanged(renderer, headerRenderer, footerRenderer) { + this.$.overlay.setProperties({ owner: this, renderer, headerRenderer, footerRenderer }); } /** @protected */ diff --git a/packages/dialog/test/draggable-resizable.test.js b/packages/dialog/test/draggable-resizable.test.js index 9f22aec381..1d1ba496b0 100644 --- a/packages/dialog/test/draggable-resizable.test.js +++ b/packages/dialog/test/draggable-resizable.test.js @@ -3,22 +3,9 @@ import { fixtureSync, nextFrame } from '@vaadin/testing-helpers'; import sinon from 'sinon'; import '@vaadin/polymer-legacy-adapter/template-renderer.js'; import '@vaadin/text-area/vaadin-text-area.js'; +import './not-animated-styles.js'; import '../src/vaadin-dialog.js'; import { html, PolymerElement } from '@polymer/polymer/polymer-element.js'; -import { css, registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js'; - -registerStyles( - 'vaadin-dialog-overlay', - css` - :host([opening]), - :host([closing]), - :host([opening]) [part='overlay'], - :host([closing]) [part='overlay'] { - animation: none !important; - } - `, - { moduleId: 'not-animated-dialog-overlay' } -); customElements.define( 'internally-draggable', diff --git a/packages/dialog/test/header-footer.test.js b/packages/dialog/test/header-footer.test.js new file mode 100644 index 0000000000..061ff34868 --- /dev/null +++ b/packages/dialog/test/header-footer.test.js @@ -0,0 +1,417 @@ +import { expect } from '@esm-bundle/chai'; +import { fixtureSync } from '@vaadin/testing-helpers'; +import '../vaadin-dialog.js'; +import { createRenderer } from './helpers.js'; + +describe('header/footer feature', () => { + let dialog, overlay; + + beforeEach(() => { + dialog = fixtureSync(''); + overlay = dialog.$.overlay; + }); + + afterEach(() => { + dialog.opened = false; + }); + + describe('vaadin-dialog header-title attribute', () => { + const HEADER_TITLE = '__HEADER_TITLE__'; + + it('should not have title element if header-title is not set', () => { + dialog.opened = true; + + expect(overlay.querySelector('[slot="title"]')).to.not.exist; + }); + + it('should render header-title when set', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.opened = true; + + expect(overlay.querySelector('[slot=title]')).to.exist; + expect(overlay.textContent).to.include(HEADER_TITLE); + }); + + it('should remove title element if header-title is unset', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.opened = true; + + dialog.headerTitle = null; + expect(overlay.querySelector('[slot=title]')).to.not.exist; + }); + + it('should remove title element if header-title is set to empty string', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.opened = true; + + dialog.headerTitle = ''; + expect(overlay.querySelector('[slot=title]')).to.not.exist; + }); + + it('should not have [has-title] attribute on overlay element if header-title is not set', () => { + dialog.opened = true; + + expect(overlay.hasAttribute('has-title')).to.be.not.ok; + }); + + it('should add [has-title] attribute on overlay element if header-title is set', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.opened = true; + + expect(overlay.hasAttribute('has-title')).to.be.ok; + }); + + it('should remove [has-title] attribute on overlay element if header-title is unset', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.opened = true; + + dialog.headerTitle = null; + + expect(overlay.hasAttribute('has-title')).to.be.not.ok; + }); + + it('[part=header] should have display:none if no header-title is set', () => { + dialog.opened = true; + + expect(getComputedStyle(overlay.shadowRoot.querySelector('[part=header]')).display).to.be.equal('none'); + }); + + it('[part=header] should be displayed if header-title is set', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.opened = true; + + expect(getComputedStyle(overlay.shadowRoot.querySelector('[part=header]')).display).to.not.be.equal('none'); + }); + + describe('accessibility', () => { + it('should add arial-labelledby to overlay if header-title is set', () => { + expect(overlay.hasAttribute('aria-labelledby')).to.be.false; + + dialog.headerTitle = HEADER_TITLE; + dialog.opened = true; + + expect(overlay.hasAttribute('aria-labelledby')).to.be.true; + const title = overlay.querySelector('[slot=title]'); + expect(overlay.getAttribute('aria-labelledby')).to.equal(title.id); + }); + + it('should remove aria-labelledby if header-title is unset', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.opened = true; + + dialog.headerTitle = null; + expect(overlay.hasAttribute('aria-labelledby')).to.be.false; + }); + + it('two dialogs should not have the same `aria-labelledby` value', () => { + const anotherDialog = fixtureSync(''); + const anotherOverlay = anotherDialog.$.overlay; + anotherDialog.headerTitle = HEADER_TITLE; + anotherDialog.opened = true; + + dialog.headerTitle = HEADER_TITLE; + dialog.opened = true; + + expect(anotherOverlay.getAttribute('aria-labelledby')).to.be.not.equal(overlay.getAttribute('aria-labelledby')); + }); + }); + }); + + describe('vaadin-dialog headerRenderer', () => { + const HEADER_CONTENT = '__HEADER_CONTENT__'; + const headerRenderer = createRenderer(HEADER_CONTENT); + + it('should not have header[slot=header-content] if headerRenderer is not set', () => { + dialog.opened = true; + expect(overlay.querySelector('header[slot=header-content]')).to.not.exist; + }); + + it('should render header content if headerRenderer is set', () => { + dialog.headerRenderer = headerRenderer; + dialog.opened = true; + + expect(overlay.textContent).to.include(HEADER_CONTENT); + expect(overlay.querySelector('div[slot=header-content]')).to.exist; + }); + + it('should remove header element if headerRenderer is removed', () => { + dialog.headerRenderer = headerRenderer; + dialog.opened = true; + + dialog.headerRenderer = null; + + expect(overlay.textContent).to.not.include(HEADER_CONTENT); + expect(overlay.querySelector('div[slot=header-content]')).to.not.exist; + }); + + it('should render new content if another headerRenderer is set', () => { + dialog.headerRenderer = headerRenderer; + dialog.opened = true; + + const NEW_HEADER_CONTENT = '__NEW_HEADER_CONTENT__'; + dialog.headerRenderer = createRenderer(NEW_HEADER_CONTENT); + + expect(overlay.textContent).to.include(NEW_HEADER_CONTENT); + expect(overlay.textContent).to.not.include(HEADER_CONTENT); + }); + + it('should not have [has-header] attribute if no headerRenderer is set', () => { + dialog.opened = true; + + expect(overlay.hasAttribute('has-header')).to.be.not.ok; + }); + + it('should add [has-header] attribute if headerRenderer is set', () => { + dialog.headerRenderer = headerRenderer; + dialog.opened = true; + + expect(overlay.hasAttribute('has-header')).to.be.ok; + }); + + it('should remove [has-header] attribute if headerRenderer is unset', () => { + dialog.headerRenderer = headerRenderer; + dialog.opened = true; + + dialog.headerRenderer = null; + expect(overlay.hasAttribute('has-header')).to.be.not.ok; + }); + + it('[part=header] should have display:none if no headerRenderer is set', () => { + dialog.opened = true; + + expect(getComputedStyle(overlay.shadowRoot.querySelector('[part=header]')).display).to.be.equal('none'); + }); + + it('[part=header] should be displayed if headerRenderer is set', () => { + dialog.headerRenderer = headerRenderer; + dialog.opened = true; + + expect(getComputedStyle(overlay.shadowRoot.querySelector('[part=header]')).display).to.not.be.equal('none'); + }); + }); + + describe('vaadin-dialog footerRenderer', () => { + const FOOTER_CONTENT = '__FOOTER_CONTENT__'; + const footerRenderer = createRenderer(FOOTER_CONTENT); + + it('should not have footer[slot=footer] if footerRenderer is not set', () => { + dialog.opened = true; + expect(overlay.querySelector('footer[slot=footer]')).to.not.exist; + }); + + it('should render footer content if footerRenderer is set', () => { + dialog.footerRenderer = footerRenderer; + dialog.opened = true; + + expect(overlay.textContent).to.include(FOOTER_CONTENT); + expect(overlay.querySelector('div[slot=footer]')).to.exist; + }); + + it('should remove footer element if footerRenderer is removed', () => { + dialog.footerRenderer = footerRenderer; + dialog.opened = true; + + dialog.footerRenderer = null; + + expect(overlay.textContent).to.not.include(FOOTER_CONTENT); + expect(overlay.querySelector('div[slot=footer]')).to.not.exist; + }); + + it('should render new content if another footerRenderer is set', () => { + dialog.footerRenderer = footerRenderer; + dialog.opened = true; + const NEW_FOOTER_CONTENT = '__NEW_FOOTER_CONTENT__'; + + dialog.footerRenderer = createRenderer(NEW_FOOTER_CONTENT); + + expect(overlay.textContent).to.include(NEW_FOOTER_CONTENT); + expect(overlay.textContent).to.not.include(FOOTER_CONTENT); + }); + + it('should not have [has-footer] attribute if no footerRenderer is set', () => { + dialog.opened = true; + + expect(overlay.hasAttribute('has-footer')).to.be.not.ok; + }); + + it('should add [has-footer] attribute if footerRenderer is set', () => { + dialog.footerRenderer = footerRenderer; + dialog.opened = true; + + expect(overlay.hasAttribute('has-footer')).to.be.ok; + }); + + it('should remove [has-footer] attribute if footerRenderer is unset', () => { + dialog.footerRenderer = footerRenderer; + dialog.opened = true; + + dialog.footerRenderer = null; + expect(overlay.hasAttribute('has-footer')).to.be.not.ok; + }); + + it('[part=footer] should have display:none if no footerRenderer is set', () => { + dialog.opened = true; + + expect(getComputedStyle(overlay.shadowRoot.querySelector('[part=footer]')).display).to.be.equal('none'); + }); + + it('[part=footer] should be displayed if footerRenderer is set', () => { + dialog.footerRenderer = footerRenderer; + dialog.opened = true; + + expect(getComputedStyle(overlay.shadowRoot.querySelector('[part=footer]')).display).to.not.be.equal('none'); + }); + }); + + describe('header/footer renderer with default renderer', () => { + const HEADER_CONTENT = '__HEADER_CONTENT__'; + const headerRenderer = createRenderer(HEADER_CONTENT); + + const FOOTER_CONTENT = '__FOOTER_CONTENT__'; + const footerRenderer = createRenderer(FOOTER_CONTENT); + + const BODY_CONTENT = '__BODY_CONTENT__'; + const renderer = createRenderer(BODY_CONTENT); + + it('header and footer renderer should work with default renderer', () => { + dialog.renderer = renderer; + dialog.footerRenderer = footerRenderer; + dialog.headerRenderer = headerRenderer; + dialog.opened = true; + + expect(overlay.textContent).to.include(HEADER_CONTENT); + expect(overlay.textContent).to.include(BODY_CONTENT); + expect(overlay.textContent).to.include(FOOTER_CONTENT); + }); + + it('header and footer renderer should work with default renderer is changed', () => { + dialog.renderer = renderer; + dialog.footerRenderer = footerRenderer; + dialog.headerRenderer = headerRenderer; + dialog.opened = true; + + const NEW_BODY_CONTENT = '__NEW_BODY_CONTENT__'; + dialog.renderer = createRenderer(NEW_BODY_CONTENT); + + expect(overlay.textContent).to.include(HEADER_CONTENT); + + expect(overlay.textContent).to.not.include(BODY_CONTENT); + expect(overlay.textContent).to.include(NEW_BODY_CONTENT); + + expect(overlay.textContent).to.include(FOOTER_CONTENT); + }); + + it('header and footer renderer can be changed and default renderer is not changed', () => { + dialog.renderer = renderer; + dialog.footerRenderer = footerRenderer; + dialog.headerRenderer = headerRenderer; + dialog.opened = true; + + const NEW_HEADER_CONTENT = '__NEW_HEADER_CONTENT__'; + dialog.headerRenderer = createRenderer(NEW_HEADER_CONTENT); + + const NEW_FOOTER_CONTENT = '__NEW_FOOTER_CONTENT__'; + dialog.footerRenderer = createRenderer(NEW_FOOTER_CONTENT); + + expect(overlay.textContent).to.not.include(HEADER_CONTENT); + expect(overlay.textContent).to.include(NEW_HEADER_CONTENT); + + expect(overlay.textContent).to.include(BODY_CONTENT); + + expect(overlay.textContent).to.not.include(FOOTER_CONTENT); + expect(overlay.textContent).to.include(NEW_FOOTER_CONTENT); + }); + }); + + describe('header-title with default renderer', () => { + const HEADER_TITLE = '__HEADER_TITLE__'; + const BODY_CONTENT = '__BODY_CONTENT__'; + const NEW_BODY_CONTENT = '__NEW_BODY_CONTENT__'; + + it('should keep header-title if renderer is added', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.renderer = createRenderer(BODY_CONTENT); + dialog.opened = true; + + expect(overlay.textContent).to.include(HEADER_TITLE); + expect(overlay.textContent).to.include(BODY_CONTENT); + }); + + it('should keep header-title if renderer is changed', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.renderer = createRenderer(BODY_CONTENT); + dialog.renderer = createRenderer(NEW_BODY_CONTENT); + dialog.opened = true; + + expect(overlay.textContent).to.include(HEADER_TITLE); + expect(overlay.textContent).to.not.include(BODY_CONTENT); + expect(overlay.textContent).to.include(NEW_BODY_CONTENT); + }); + + it('should keep header-title if renderer is changed while dialog is opened', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.renderer = createRenderer(BODY_CONTENT); + dialog.opened = true; + dialog.renderer = createRenderer(NEW_BODY_CONTENT); + + expect(overlay.textContent).to.include(HEADER_TITLE); + expect(overlay.textContent).to.not.include(BODY_CONTENT); + expect(overlay.textContent).to.include(NEW_BODY_CONTENT); + }); + }); + + describe('header-title with headerRenderer', () => { + const HEADER_CONTENT = '__HEADER_CONTENT__'; + const headerRenderer = createRenderer(HEADER_CONTENT); + const HEADER_TITLE = '__HEADER_TITLE__'; + + it('should have both header-title and headerRenderer rendered', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.headerRenderer = headerRenderer; + dialog.opened = true; + + expect(overlay.textContent).to.include(HEADER_TITLE); + expect(overlay.textContent).to.include(HEADER_CONTENT); + }); + + it('should keep [part=header] visible if header-title is removed', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.headerRenderer = headerRenderer; + dialog.opened = true; + + const headerPart = overlay.shadowRoot.querySelector('[part=header]'); + + expect(getComputedStyle(headerPart).display).to.not.be.equal('none'); + + dialog.headerTitle = null; + expect(getComputedStyle(headerPart).display).to.not.be.equal('none'); + }); + + it('should keep [part=header] visible if headerRenderer is removed', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.headerRenderer = headerRenderer; + dialog.opened = true; + + const headerPart = overlay.shadowRoot.querySelector('[part=header]'); + + expect(getComputedStyle(headerPart).display).to.not.be.equal('none'); + + dialog.headerRenderer = null; + expect(getComputedStyle(headerPart).display).to.not.be.equal('none'); + }); + + it('should make [part=header] invisible if both header-title and headerRenderer are removed', () => { + dialog.headerTitle = HEADER_TITLE; + dialog.headerRenderer = headerRenderer; + dialog.opened = true; + + const headerPart = overlay.shadowRoot.querySelector('[part=header]'); + + expect(getComputedStyle(headerPart).display).to.not.be.equal('none'); + + dialog.headerTitle = null; + dialog.headerRenderer = null; + expect(getComputedStyle(headerPart).display).to.be.equal('none'); + }); + }); +}); diff --git a/packages/dialog/test/helpers.js b/packages/dialog/test/helpers.js new file mode 100644 index 0000000000..b8b3626fca --- /dev/null +++ b/packages/dialog/test/helpers.js @@ -0,0 +1,11 @@ +export function createRenderer(text) { + return (root) => { + if (root.firstChild) { + return; + } + + const span = document.createElement('div'); + span.textContent = text; + root.appendChild(span); + }; +} diff --git a/packages/dialog/test/not-animated-styles.js b/packages/dialog/test/not-animated-styles.js new file mode 100644 index 0000000000..346f40a8f0 --- /dev/null +++ b/packages/dialog/test/not-animated-styles.js @@ -0,0 +1,14 @@ +import { css, registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js'; + +registerStyles( + 'vaadin-dialog-overlay', + css` + :host([opening]), + :host([closing]), + :host([opening]) [part='overlay'], + :host([closing]) [part='overlay'] { + animation: none !important; + } + `, + { moduleId: 'not-animated-dialog-overlay' } +); diff --git a/packages/dialog/test/typings/dialog.types.ts b/packages/dialog/test/typings/dialog.types.ts index 5e7a21a78d..d6355d92cf 100644 --- a/packages/dialog/test/typings/dialog.types.ts +++ b/packages/dialog/test/typings/dialog.types.ts @@ -1,5 +1,10 @@ import '../../vaadin-dialog.js'; -import { DialogOpenedChangedEvent, DialogResizeDimensions, DialogResizeEvent } from '../../vaadin-dialog.js'; +import { + DialogOpenedChangedEvent, + DialogRenderer, + DialogResizeDimensions, + DialogResizeEvent +} from '../../vaadin-dialog.js'; const assertType = (actual: TExpected) => actual; @@ -14,3 +19,10 @@ dialog.addEventListener('resize', (event) => { assertType(event); assertType(event.detail); }); + +// Properties +assertType(dialog.headerTitle); +assertType(dialog.renderer); +assertType(dialog.headerRenderer); +assertType(dialog.footerRenderer); +assertType<() => void>(dialog.requestContentUpdate); diff --git a/packages/dialog/test/visual/lumo/dialog.test.js b/packages/dialog/test/visual/lumo/dialog.test.js index e40eea3f9f..079b0ea3b4 100644 --- a/packages/dialog/test/visual/lumo/dialog.test.js +++ b/packages/dialog/test/visual/lumo/dialog.test.js @@ -1,7 +1,8 @@ import { fixtureSync } from '@vaadin/testing-helpers/dist/fixture.js'; import { visualDiff } from '@web/test-runner-visual-regression'; -import '@vaadin/polymer-legacy-adapter/template-renderer.js'; +import '../../not-animated-styles.js'; import '../../../theme/lumo/vaadin-dialog.js'; +import { createRenderer } from '../../helpers.js'; describe('dialog', () => { let div, element; @@ -10,16 +11,9 @@ describe('dialog', () => { div = document.createElement('div'); div.style.height = '100%'; - element = fixtureSync( - ` - - - - `, - div - ); + element = fixtureSync(``, div); + element.renderer = createRenderer('Simple dialog with text'); + element.opened = true; }); it('basic', async () => { @@ -30,4 +24,31 @@ describe('dialog', () => { element.modeless = true; await visualDiff(div, 'modeless'); }); + + it('title', async () => { + element.headerTitle = 'Title'; + await visualDiff(div, 'header-title'); + }); + + it('header renderer', async () => { + element.headerRenderer = createRenderer('Header'); + await visualDiff(div, 'header-renderer'); + }); + + it('title and header renderer', async () => { + element.headerTitle = 'Title'; + element.headerRenderer = createRenderer('Header'); + await visualDiff(div, 'header-title-renderer'); + }); + + it('footer renderer', async () => { + element.footerRenderer = createRenderer('Footer'); + await visualDiff(div, 'footer-renderer'); + }); + + it('header and footer renderer', async () => { + element.headerRenderer = createRenderer('Header'); + element.footerRenderer = createRenderer('Footer'); + await visualDiff(div, 'header-footer-renderer'); + }); }); diff --git a/packages/dialog/test/visual/lumo/screenshots/dialog/baseline/footer-renderer.png b/packages/dialog/test/visual/lumo/screenshots/dialog/baseline/footer-renderer.png new file mode 100644 index 0000000000000000000000000000000000000000..a0ef358a01f707631c4d80241cf209a3b8e12fa7 GIT binary patch literal 23026 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 literal 0 HcmV?d00001 diff --git a/packages/dialog/test/visual/lumo/screenshots/dialog/baseline/header-footer-renderer.png b/packages/dialog/test/visual/lumo/screenshots/dialog/baseline/header-footer-renderer.png new file mode 100644 index 0000000000000000000000000000000000000000..f61a7eee6664464ac04ab9b7a8038b2815746c68 GIT binary patch literal 24915 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 literal 0 HcmV?d00001 diff --git a/packages/dialog/test/visual/lumo/screenshots/dialog/baseline/header-title-renderer.png b/packages/dialog/test/visual/lumo/screenshots/dialog/baseline/header-title-renderer.png new file mode 100644 index 0000000000000000000000000000000000000000..06841bb99d9724354de39f84d95544a2ae492b07 GIT binary patch literal 23833 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 E4>eL&?*IS* literal 0 HcmV?d00001 diff --git a/packages/dialog/test/visual/lumo/screenshots/dialog/baseline/header-title.png b/packages/dialog/test/visual/lumo/screenshots/dialog/baseline/header-title.png new file mode 100644 index 0000000000000000000000000000000000000000..8bef4cca4815d4a5c05d2c813661331203f4b3c6 GIT binary patch literal 23261 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

hy3Y^i{fEAO6+cH_~kNV!j`^4DdBcxXDB>W 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 E4=Glu!vFvP literal 0 HcmV?d00001 diff --git a/packages/dialog/test/visual/material/dialog.test.js b/packages/dialog/test/visual/material/dialog.test.js index 1eb416cbac..1896e6e0fe 100644 --- a/packages/dialog/test/visual/material/dialog.test.js +++ b/packages/dialog/test/visual/material/dialog.test.js @@ -1,7 +1,8 @@ import { fixtureSync } from '@vaadin/testing-helpers/dist/fixture.js'; import { visualDiff } from '@web/test-runner-visual-regression'; -import '@vaadin/polymer-legacy-adapter/template-renderer.js'; +import '../../not-animated-styles.js'; import '../../../theme/material/vaadin-dialog.js'; +import { createRenderer } from '../../helpers.js'; describe('dialog', () => { let div, element; @@ -10,16 +11,9 @@ describe('dialog', () => { div = document.createElement('div'); div.style.height = '100%'; - element = fixtureSync( - ` - - - - `, - div - ); + element = fixtureSync(``, div); + element.renderer = createRenderer('Simple dialog with text'); + element.opened = true; }); it('basic', async () => { @@ -30,4 +24,31 @@ describe('dialog', () => { element.modeless = true; await visualDiff(div, 'modeless'); }); + + it('title', async () => { + element.headerTitle = 'Title'; + await visualDiff(div, 'header-title'); + }); + + it('header renderer', async () => { + element.headerRenderer = createRenderer('Header'); + await visualDiff(div, 'header-renderer'); + }); + + it('title and header renderer', async () => { + element.headerTitle = 'Title'; + element.headerRenderer = createRenderer('Header'); + await visualDiff(div, 'header-title-renderer'); + }); + + it('footer renderer', async () => { + element.footerRenderer = createRenderer('Footer'); + await visualDiff(div, 'footer-renderer'); + }); + + it('header and footer renderer', async () => { + element.headerRenderer = createRenderer('Header'); + element.footerRenderer = createRenderer('Footer'); + await visualDiff(div, 'header-footer-renderer'); + }); }); diff --git a/packages/dialog/test/visual/material/screenshots/dialog/baseline/footer-renderer.png b/packages/dialog/test/visual/material/screenshots/dialog/baseline/footer-renderer.png new file mode 100644 index 0000000000000000000000000000000000000000..140bf392892b63732b435262f5916743d22637ff GIT binary patch literal 15643 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 Hxch$qNoCQH literal 0 HcmV?d00001 diff --git a/packages/dialog/test/visual/material/screenshots/dialog/baseline/header-footer-renderer.png b/packages/dialog/test/visual/material/screenshots/dialog/baseline/header-footer-renderer.png new file mode 100644 index 0000000000000000000000000000000000000000..3b57e4c5af3b4e2b1c8a176421206d6f4e8bea6c GIT binary patch literal 17023 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 EFKPz)=>Px# literal 0 HcmV?d00001 diff --git a/packages/dialog/test/visual/material/screenshots/dialog/baseline/header-renderer.png b/packages/dialog/test/visual/material/screenshots/dialog/baseline/header-renderer.png new file mode 100644 index 0000000000000000000000000000000000000000..f6f3ecc5440535f12872c94f076c4e8c2b3f78d5 GIT binary patch literal 16005 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 literal 0 HcmV?d00001 diff --git a/packages/dialog/test/visual/material/screenshots/dialog/baseline/header-title-renderer.png b/packages/dialog/test/visual/material/screenshots/dialog/baseline/header-title-renderer.png new file mode 100644 index 0000000000000000000000000000000000000000..da76eb813903c6740b96959246b7f895b64b5004 GIT binary patch literal 16302 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 literal 0 HcmV?d00001 diff --git a/packages/dialog/test/visual/material/screenshots/dialog/baseline/header-title.png b/packages/dialog/test/visual/material/screenshots/dialog/baseline/header-title.png new file mode 100644 index 0000000000000000000000000000000000000000..fc30cd946b760cc2c05080c4f403d4d2861b3362 GIT binary patch literal 15403 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 literal 0 HcmV?d00001 diff --git a/packages/dialog/theme/lumo/vaadin-dialog-styles.js b/packages/dialog/theme/lumo/vaadin-dialog-styles.js index 8c23448b69..586ec03fd8 100644 --- a/packages/dialog/theme/lumo/vaadin-dialog-styles.js +++ b/packages/dialog/theme/lumo/vaadin-dialog-styles.js @@ -27,11 +27,35 @@ const dialogOverlay = css` padding: var(--lumo-space-l); } + [part='header'] { + gap: var(--lumo-space-s); + } + + :host([has-header]) [part='header'], + :host([has-title]) [part='header'] { + padding: var(--lumo-space-m) var(--lumo-space-l); + border-bottom: 1px solid var(--lumo-contrast-10pct); + } + + :host([has-footer]) [part='footer'] { + padding: var(--lumo-space-s) var(--lumo-space-m); + border-top: 1px solid var(--lumo-contrast-10pct); + } + /* No padding */ :host([theme~='no-padding']) [part='content'] { padding: 0; } + :host([theme~='no-padding'][has-header]) [part='header'], + :host([theme~='no-padding'][has-title]) [part='header'] { + padding: 0; + } + + :host([theme~='no-padding'][has-footer]) [part='footer'] { + padding: 0; + } + /* Animations */ :host([opening]), diff --git a/packages/dialog/theme/material/vaadin-dialog-styles.js b/packages/dialog/theme/material/vaadin-dialog-styles.js index 72947e0edf..aa4d8a6713 100644 --- a/packages/dialog/theme/material/vaadin-dialog-styles.js +++ b/packages/dialog/theme/material/vaadin-dialog-styles.js @@ -1,4 +1,5 @@ import '@vaadin/vaadin-material-styles/shadow.js'; +import '@vaadin/vaadin-material-styles/color.js'; import { overlay } from '@vaadin/vaadin-material-styles/mixins/overlay.js'; import { css, registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js'; @@ -15,6 +16,19 @@ const dialogOverlay = css` padding: 24px; } + :host([has-header]) [part='header'], + :host([has-title]) [part='header'] { + padding: 9px 24px; + font-weight: 500; + gap: 8px; + border-bottom: 1px solid var(--material-divider-color); + } + + :host([has-footer]) [part='footer'] { + padding: 8px; + border-top: 1px solid var(--material-divider-color); + } + /* No padding */ :host([theme~='no-padding']) [part='content'] { padding: 0;