From fdfe061eb0a323a120e700f5a3dd9b4013768503 Mon Sep 17 00:00:00 2001 From: Dan Voegelin Date: Thu, 29 Jun 2023 13:20:19 -0400 Subject: [PATCH 1/4] fix(Popover): renaming popover attribute due to new HTML spec attribute --- .../src/elements/form/ControlTemplates.ts | 38 +++++++++---------- .../src/elements/form/FieldInteractionApi.ts | 2 +- .../src/elements/popover/PopOver.spec.ts | 2 +- .../src/elements/popover/PopOver.ts | 4 +- .../pop-over-auto-placement-example.html | 4 +- .../pop-over-behaviors-example.html | 8 ++-- .../pop-over-dynamic-example.html | 2 +- .../pop-over-horizontal-example.html | 4 +- .../pop-over-placement-example.html | 8 ++-- .../pop-over-vertical-example.html | 4 +- 10 files changed, 38 insertions(+), 38 deletions(-) diff --git a/projects/novo-elements/src/elements/form/ControlTemplates.ts b/projects/novo-elements/src/elements/form/ControlTemplates.ts index 8889887af..4505faf05 100644 --- a/projects/novo-elements/src/elements/form/ControlTemplates.ts +++ b/projects/novo-elements/src/elements/form/ControlTemplates.ts @@ -19,7 +19,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -103,7 +103,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -168,7 +168,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -201,7 +201,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -231,7 +231,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -265,7 +265,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -293,7 +293,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -321,7 +321,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -348,7 +348,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -376,7 +376,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -409,7 +409,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -439,7 +439,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -470,7 +470,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -503,7 +503,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -543,7 +543,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -597,7 +597,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -622,7 +622,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -648,7 +648,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" @@ -677,7 +677,7 @@ import { NovoTemplate } from '../common/novo-template/novo-template.directive'; [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" - [popover]="control.popoverContent" + [novoPopover]="control.popoverContent" [popoverHtmlContent]="control.popoverHtmlContent" [popoverTitle]="control.popoverTitle" [popoverPlacement]="control.popoverPlacement" diff --git a/projects/novo-elements/src/elements/form/FieldInteractionApi.ts b/projects/novo-elements/src/elements/form/FieldInteractionApi.ts index e0036e635..a485672b6 100644 --- a/projects/novo-elements/src/elements/form/FieldInteractionApi.ts +++ b/projects/novo-elements/src/elements/form/FieldInteractionApi.ts @@ -496,7 +496,7 @@ export class FieldInteractionApi { control.popoverDisabled = popover.disabled; control.popoverAnimation = popover.animation; control.popoverDismissTimeout = popover.dismissTimeout; - this.triggerEvent({ controlKey: key, prop: 'popover', value: popover }, otherForm); + this.triggerEvent({ controlKey: key, prop: 'novoPopover', value: popover }, otherForm); } } diff --git a/projects/novo-elements/src/elements/popover/PopOver.spec.ts b/projects/novo-elements/src/elements/popover/PopOver.spec.ts index c803bc687..8171c240c 100644 --- a/projects/novo-elements/src/elements/popover/PopOver.spec.ts +++ b/projects/novo-elements/src/elements/popover/PopOver.spec.ts @@ -6,7 +6,7 @@ import { PopOverDirective } from './PopOver'; @Component({ selector: 'test-component', - template: `
`, + template: `
`, }) class TestComponent {} diff --git a/projects/novo-elements/src/elements/popover/PopOver.ts b/projects/novo-elements/src/elements/popover/PopOver.ts index a67909ed6..7f39d7c82 100644 --- a/projects/novo-elements/src/elements/popover/PopOver.ts +++ b/projects/novo-elements/src/elements/popover/PopOver.ts @@ -14,7 +14,7 @@ import { import { PopOverContent } from './PopOverContent'; @Directive({ - selector: '[popover]', + selector: '[novoPopover]', }) export class PopOverDirective implements OnChanges { protected PopoverComponent = PopOverContent; @@ -23,7 +23,7 @@ export class PopOverDirective implements OnChanges { constructor(protected viewContainerRef: ViewContainerRef, protected resolver: ComponentFactoryResolver) {} - @Input('popover') + @Input('novoPopover') content: string | PopOverContent; @Input() popoverHtmlContent: string; diff --git a/projects/novo-examples/src/components/pop-over/pop-over-auto-placement/pop-over-auto-placement-example.html b/projects/novo-examples/src/components/pop-over/pop-over-auto-placement/pop-over-auto-placement-example.html index fb2c1f828..32ebd22f9 100644 --- a/projects/novo-examples/src/components/pop-over/pop-over-auto-placement/pop-over-auto-placement-example.html +++ b/projects/novo-examples/src/components/pop-over/pop-over-auto-placement/pop-over-auto-placement-example.html @@ -1,10 +1,10 @@ - Hover Me - diff --git a/projects/novo-examples/src/components/pop-over/pop-over-behaviors/pop-over-behaviors-example.html b/projects/novo-examples/src/components/pop-over/pop-over-behaviors/pop-over-behaviors-example.html index d2b6c0e4e..9fbb4b31c 100644 --- a/projects/novo-examples/src/components/pop-over/pop-over-behaviors/pop-over-behaviors-example.html +++ b/projects/novo-examples/src/components/pop-over/pop-over-behaviors/pop-over-behaviors-example.html @@ -1,5 +1,5 @@ @@ -7,14 +7,14 @@ ON CLICK @@ -22,7 +22,7 @@ diff --git a/projects/novo-examples/src/components/pop-over/pop-over-dynamic/pop-over-dynamic-example.html b/projects/novo-examples/src/components/pop-over/pop-over-dynamic/pop-over-dynamic-example.html index 4f30efa73..78faaa159 100644 --- a/projects/novo-examples/src/components/pop-over/pop-over-dynamic/pop-over-dynamic-example.html +++ b/projects/novo-examples/src/components/pop-over/pop-over-dynamic/pop-over-dynamic-example.html @@ -10,4 +10,4 @@ onHidden or onShown events to perform additional tasks. -Click to see a popover with dynamic html \ No newline at end of file +Click to see a popover with dynamic html \ No newline at end of file diff --git a/projects/novo-examples/src/components/pop-over/pop-over-horizontal/pop-over-horizontal-example.html b/projects/novo-examples/src/components/pop-over/pop-over-horizontal/pop-over-horizontal-example.html index 211a7a928..dff95be4b 100644 --- a/projects/novo-examples/src/components/pop-over/pop-over-horizontal/pop-over-horizontal-example.html +++ b/projects/novo-examples/src/components/pop-over/pop-over-horizontal/pop-over-horizontal-example.html @@ -1,10 +1,10 @@ - TOP-RIGHT - diff --git a/projects/novo-examples/src/components/pop-over/pop-over-placement/pop-over-placement-example.html b/projects/novo-examples/src/components/pop-over/pop-over-placement/pop-over-placement-example.html index 1a40e252f..87728acf8 100644 --- a/projects/novo-examples/src/components/pop-over/pop-over-placement/pop-over-placement-example.html +++ b/projects/novo-examples/src/components/pop-over/pop-over-placement/pop-over-placement-example.html @@ -1,4 +1,4 @@ -LEFT -RIGHT -TOP -BOTTOM +LEFT +RIGHT +TOP +BOTTOM diff --git a/projects/novo-examples/src/components/pop-over/pop-over-vertical/pop-over-vertical-example.html b/projects/novo-examples/src/components/pop-over/pop-over-vertical/pop-over-vertical-example.html index 5da4e3a03..88b00c49b 100644 --- a/projects/novo-examples/src/components/pop-over/pop-over-vertical/pop-over-vertical-example.html +++ b/projects/novo-examples/src/components/pop-over/pop-over-vertical/pop-over-vertical-example.html @@ -1,10 +1,10 @@ - RIGHT-BOTTOM - From 2d14fa0ecccccd00096fd849b101efeaf03abe20 Mon Sep 17 00:00:00 2001 From: Dan Voegelin Date: Thu, 29 Jun 2023 15:13:47 -0400 Subject: [PATCH 2/4] reverting field interaction api change --- projects/novo-elements/src/elements/form/FieldInteractionApi.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/projects/novo-elements/src/elements/form/FieldInteractionApi.ts b/projects/novo-elements/src/elements/form/FieldInteractionApi.ts index a485672b6..e0036e635 100644 --- a/projects/novo-elements/src/elements/form/FieldInteractionApi.ts +++ b/projects/novo-elements/src/elements/form/FieldInteractionApi.ts @@ -496,7 +496,7 @@ export class FieldInteractionApi { control.popoverDisabled = popover.disabled; control.popoverAnimation = popover.animation; control.popoverDismissTimeout = popover.dismissTimeout; - this.triggerEvent({ controlKey: key, prop: 'novoPopover', value: popover }, otherForm); + this.triggerEvent({ controlKey: key, prop: 'popover', value: popover }, otherForm); } } From 2eeb73462f5260870849db02d26ea7548e5d7172 Mon Sep 17 00:00:00 2001 From: Dan Voegelin Date: Thu, 29 Jun 2023 17:56:38 -0400 Subject: [PATCH 3/4] maintaining backwards compatability --- projects/novo-elements/src/elements/popover/PopOver.ts | 8 ++++++-- .../pop-over-dynamic/pop-over-dynamic-example.html | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/projects/novo-elements/src/elements/popover/PopOver.ts b/projects/novo-elements/src/elements/popover/PopOver.ts index 7f39d7c82..e04ecef95 100644 --- a/projects/novo-elements/src/elements/popover/PopOver.ts +++ b/projects/novo-elements/src/elements/popover/PopOver.ts @@ -14,7 +14,7 @@ import { import { PopOverContent } from './PopOverContent'; @Directive({ - selector: '[novoPopover]', + selector: '[popover], [novoPopover]', }) export class PopOverDirective implements OnChanges { protected PopoverComponent = PopOverContent; @@ -23,8 +23,12 @@ export class PopOverDirective implements OnChanges { constructor(protected viewContainerRef: ViewContainerRef, protected resolver: ComponentFactoryResolver) {} - @Input('novoPopover') + @Input('popover') content: string | PopOverContent; + @Input('novoPopover') + set novoPopover(content: string | PopOverContent) { + this.content = content; + } @Input() popoverHtmlContent: string; @Input() diff --git a/projects/novo-examples/src/components/pop-over/pop-over-dynamic/pop-over-dynamic-example.html b/projects/novo-examples/src/components/pop-over/pop-over-dynamic/pop-over-dynamic-example.html index 78faaa159..4f30efa73 100644 --- a/projects/novo-examples/src/components/pop-over/pop-over-dynamic/pop-over-dynamic-example.html +++ b/projects/novo-examples/src/components/pop-over/pop-over-dynamic/pop-over-dynamic-example.html @@ -10,4 +10,4 @@ onHidden or onShown events to perform additional tasks. -Click to see a popover with dynamic html \ No newline at end of file +Click to see a popover with dynamic html \ No newline at end of file From 38b8e787de1e721e4399bab8f621d480b4b3512d Mon Sep 17 00:00:00 2001 From: Dan Voegelin Date: Thu, 29 Jun 2023 18:03:55 -0400 Subject: [PATCH 4/4] added comment --- projects/novo-elements/src/elements/popover/PopOver.ts | 4 ++++ .../pop-over/pop-over-dynamic/pop-over-dynamic-example.html | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/projects/novo-elements/src/elements/popover/PopOver.ts b/projects/novo-elements/src/elements/popover/PopOver.ts index e04ecef95..7bbc0c029 100644 --- a/projects/novo-elements/src/elements/popover/PopOver.ts +++ b/projects/novo-elements/src/elements/popover/PopOver.ts @@ -14,6 +14,10 @@ import { import { PopOverContent } from './PopOverContent'; @Directive({ + /** + * [popover] selector retained for backwards compatability, but should be avoived as + * it interferes with the newly added (2023) HTML standard spec popover attribute. + */ selector: '[popover], [novoPopover]', }) export class PopOverDirective implements OnChanges { diff --git a/projects/novo-examples/src/components/pop-over/pop-over-dynamic/pop-over-dynamic-example.html b/projects/novo-examples/src/components/pop-over/pop-over-dynamic/pop-over-dynamic-example.html index 4f30efa73..78faaa159 100644 --- a/projects/novo-examples/src/components/pop-over/pop-over-dynamic/pop-over-dynamic-example.html +++ b/projects/novo-examples/src/components/pop-over/pop-over-dynamic/pop-over-dynamic-example.html @@ -10,4 +10,4 @@ onHidden or onShown events to perform additional tasks. -Click to see a popover with dynamic html \ No newline at end of file +Click to see a popover with dynamic html \ No newline at end of file