From c1aafb9f2cf115dc4dab3937f64f882f2e266e7d Mon Sep 17 00:00:00 2001 From: Sergey Andrievskiy Date: Fri, 18 Dec 2020 15:06:40 +0300 Subject: [PATCH] feat: add ability to customize overlay offset (#2628) --- .../components/autocomplete/autocomplete.directive.ts | 7 +++++-- .../theme/components/datepicker/datepicker.component.ts | 5 +++++ src/framework/theme/components/select/select.component.ts | 6 +++++- .../theme/components/tooltip/tooltip.directive.ts | 7 ++++++- 4 files changed, 21 insertions(+), 4 deletions(-) diff --git a/src/framework/theme/components/autocomplete/autocomplete.directive.ts b/src/framework/theme/components/autocomplete/autocomplete.directive.ts index 79bb1ab27a..b99f53be24 100644 --- a/src/framework/theme/components/autocomplete/autocomplete.directive.ts +++ b/src/framework/theme/components/autocomplete/autocomplete.directive.ts @@ -103,8 +103,6 @@ export class NbAutocompleteDirective implements OnDestroy, AfterViewInit, Con protected overlayRef: NbOverlayRef; - protected overlayOffset = 8; - protected keyManager: NbActiveDescendantKeyManager>; protected destroy$: Subject = new Subject(); @@ -138,6 +136,11 @@ export class NbAutocompleteDirective implements OnDestroy, AfterViewInit, Con this._autocomplete = autocomplete; } + /** + * Determines options overlay offset (in pixels). + **/ + @Input() overlayOffset: number = 8; + /** * Determines if the input will be focused when the control value is changed * */ diff --git a/src/framework/theme/components/datepicker/datepicker.component.ts b/src/framework/theme/components/datepicker/datepicker.component.ts index c41b3ebfad..7490c563e0 100644 --- a/src/framework/theme/components/datepicker/datepicker.component.ts +++ b/src/framework/theme/components/datepicker/datepicker.component.ts @@ -461,6 +461,11 @@ export class NbBasePickerComponent extends NbBasePicker protected _showWeekNumber: boolean = false; static ngAcceptInputType_showWeekNumber: NbBooleanInput; + /** + * Determines picker overlay offset (in pixels). + * */ + @Input() overlayOffset = 8; + constructor(@Inject(NB_DOCUMENT) document, positionBuilder: NbPositionBuilderService, triggerStrategyBuilder: NbTriggerStrategyBuilderService, diff --git a/src/framework/theme/components/select/select.component.ts b/src/framework/theme/components/select/select.component.ts index 83bff334a0..5af0ecbe86 100644 --- a/src/framework/theme/components/select/select.component.ts +++ b/src/framework/theme/components/select/select.component.ts @@ -674,6 +674,11 @@ export class NbSelectComponent implements OnChanges, AfterViewInit, AfterContent protected _multiple: boolean = false; static ngAcceptInputType_multiple: NbBooleanInput; + /** + * Determines options overlay offset (in pixels). + **/ + @Input() optionsOverlayOffset = 8; + @HostBinding('class') get additionalClasses(): string[] { if (this.statusService.isCustomStatus(this.status)) { @@ -727,7 +732,6 @@ export class NbSelectComponent implements OnChanges, AfterViewInit, AfterContent overlayPosition: NbPosition = '' as NbPosition; protected ref: NbOverlayRef; - protected optionsOverlayOffset = 8; protected triggerStrategy: NbTriggerStrategy; diff --git a/src/framework/theme/components/tooltip/tooltip.directive.ts b/src/framework/theme/components/tooltip/tooltip.directive.ts index 4913467db0..32790179bf 100644 --- a/src/framework/theme/components/tooltip/tooltip.directive.ts +++ b/src/framework/theme/components/tooltip/tooltip.directive.ts @@ -77,9 +77,9 @@ export class NbTooltipDirective implements OnInit, OnChanges, AfterViewInit, OnD protected destroy$ = new Subject(); protected tooltipComponent = NbTooltipComponent; protected dynamicOverlay: NbDynamicOverlay; - protected offset = 8; context: Object = {}; + /** * Tooltip message */ @@ -145,6 +145,11 @@ export class NbTooltipDirective implements OnInit, OnChanges, AfterViewInit, OnD @Input('nbTooltipTrigger') trigger: NbTrigger = NbTrigger.HINT; + /** + * Determines tooltip overlay offset (in pixels). + **/ + @Input('nbTooltipOffset') offset = 8; + @Output() nbTooltipShowStateChange = new EventEmitter<{ isShown: boolean }>();