@koobiq/components 18.38.0 → 18.39.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/core/locales/formatters.d.ts +1 -0
  2. package/core/locales/locale-service.d.ts +7 -5
  3. package/core/styles/visual/_layout.scss +10 -0
  4. package/core/validation/validation.d.ts +1 -1
  5. package/esm2022/core/locales/formatters.mjs +4 -3
  6. package/esm2022/core/locales/locale-service.mjs +20 -10
  7. package/esm2022/core/validation/validation.mjs +2 -2
  8. package/esm2022/core/version.mjs +2 -2
  9. package/esm2022/dropdown/dropdown-trigger.directive.mjs +3 -2
  10. package/esm2022/filter-bar/filter-bar.mjs +3 -3
  11. package/esm2022/filter-bar/filter-search.mjs +39 -11
  12. package/esm2022/input/input-number.mjs +17 -12
  13. package/esm2022/list/list-selection.component.mjs +10 -4
  14. package/esm2022/popover/popover-confirm.component.mjs +3 -3
  15. package/esm2022/popover/popover.component.mjs +3 -3
  16. package/esm2022/title/title.directive.mjs +9 -2
  17. package/fesm2022/koobiq-components-core.mjs +25 -14
  18. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  19. package/fesm2022/koobiq-components-dropdown.mjs +2 -1
  20. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  21. package/fesm2022/koobiq-components-filter-bar.mjs +40 -14
  22. package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
  23. package/fesm2022/koobiq-components-input.mjs +16 -11
  24. package/fesm2022/koobiq-components-input.mjs.map +1 -1
  25. package/fesm2022/koobiq-components-list.mjs +9 -3
  26. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  27. package/fesm2022/koobiq-components-popover.mjs +4 -4
  28. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  29. package/fesm2022/koobiq-components-title.mjs +8 -1
  30. package/fesm2022/koobiq-components-title.mjs.map +1 -1
  31. package/filter-bar/filter-bar.d.ts +1 -1
  32. package/filter-bar/filter-search.d.ts +17 -4
  33. package/input/input-number.d.ts +3 -3
  34. package/list/list-selection.component.d.ts +4 -2
  35. package/package.json +4 -4
  36. package/popover/popover.scss +3 -2
  37. package/schematics/ng-add/index.js +2 -2
  38. package/title/title.directive.d.ts +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"koobiq-components-popover.mjs","sources":["../../../packages/components/popover/popover-animations.ts","../../../packages/components/popover/popover.component.ts","../../../packages/components/popover/popover.component.html","../../../packages/components/popover/popover-confirm.component.ts","../../../packages/components/popover/popover-confirm.component.html","../../../packages/components/popover/popover.module.ts","../../../packages/components/popover/koobiq-components-popover.ts"],"sourcesContent":["import { animate, AnimationTriggerMetadata, state, style, transition, trigger } from '@angular/animations';\n\nexport const kbqPopoverAnimations: {\n readonly popoverState: AnimationTriggerMetadata;\n} = {\n /** Animation that transitions a tooltip in and out. */\n popoverState: trigger('state', [\n state(\n 'initial',\n style({\n opacity: 0,\n transform: 'scale(1, 0.8)'\n })\n ),\n transition(\n '* => visible',\n animate(\n '120ms cubic-bezier(0, 0, 0.2, 1)',\n style({\n opacity: 1,\n transform: 'scale(1, 1)'\n })\n )\n ),\n transition('* => hidden', animate('100ms linear', style({ opacity: 0 })))\n ])\n};\n","import { CdkTrapFocus } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n CdkScrollable,\n FlexibleConnectedPositionStrategy,\n Overlay,\n OverlayConfig,\n ScrollStrategy\n} from '@angular/cdk/overlay';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n Directive,\n ElementRef,\n EventEmitter,\n InjectionToken,\n Input,\n OnInit,\n Output,\n TemplateRef,\n Type,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n numberAttribute\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport {\n KbqComponentColors,\n KbqPopUp,\n KbqPopUpTrigger,\n POSITION_TO_CSS_MAP,\n PopUpPlacements,\n PopUpSizes,\n PopUpTriggers,\n applyPopupMargins\n} from '@koobiq/components/core';\nimport { NEVER, fromEvent, merge } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { kbqPopoverAnimations } from './popover-animations';\n\nexport const defaultOffsetYWithArrow = 8;\n\n@Component({\n selector: 'kbq-popover-component',\n templateUrl: './popover.component.html',\n preserveWhitespaces: false,\n styleUrls: ['./popover.scss', './popover-tokens.scss'],\n host: {\n '(keydown.esc)': 'onEscape()'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [kbqPopoverAnimations.popoverState]\n})\nexport class KbqPopoverComponent extends KbqPopUp implements AfterViewInit {\n prefix = 'kbq-popover';\n\n header: string | TemplateRef<any>;\n footer: string | TemplateRef<any>;\n\n trigger: KbqPopoverTrigger;\n\n isTrapFocus: boolean = false;\n hasCloseButton: boolean = false;\n\n @ViewChild('popoverContent') popoverContent: ElementRef<HTMLDivElement>;\n @ViewChild('popover') elementRef: ElementRef;\n @ViewChild(CdkTrapFocus) cdkTrapFocus: CdkTrapFocus;\n\n private debounceTime = 15;\n isContentTopOverflow: boolean = false;\n isContentBottomOverflow: boolean = false;\n\n ngAfterViewInit() {\n if (!this.popoverContent) return;\n\n this.checkContentOverflow(this.popoverContent.nativeElement);\n\n fromEvent(this.popoverContent.nativeElement, 'scroll')\n .pipe(debounceTime(this.debounceTime), takeUntilDestroyed(this.destroyRef))\n .subscribe((event) => {\n this.checkContentOverflow(event.target as HTMLElement);\n });\n\n this.cdkTrapFocus.focusTrap.focusFirstTabbableElement();\n this.visibleChange.subscribe((state) => {\n if (this.offset !== null && state) {\n applyPopupMargins(\n this.renderer,\n this.elementRef.nativeElement,\n this.prefix,\n `${this.offset!.toString()}px`\n );\n\n this.setStickPosition();\n }\n });\n }\n\n onContentChange() {\n this.checkContentOverflow(this.popoverContent.nativeElement);\n }\n\n checkContentOverflow(contentElement: HTMLElement) {\n const { scrollTop, offsetHeight, scrollHeight } = contentElement;\n\n this.isContentTopOverflow = scrollTop > 0;\n\n this.isContentBottomOverflow = Math.round(scrollTop + offsetHeight) < scrollHeight;\n\n super.detectChanges();\n }\n\n updateClassMap(placement: string, customClass: string, size: PopUpSizes) {\n super.updateClassMap(placement, customClass, { [`${this.prefix}_${size}`]: !!size });\n }\n\n updateTrapFocus(isTrapFocus: boolean): void {\n this.isTrapFocus = isTrapFocus;\n }\n\n onEscape() {\n this.hide(0);\n\n this.trigger.focus();\n }\n\n protected readonly componentColors = KbqComponentColors;\n}\n\nexport const KBQ_POPOVER_SCROLL_STRATEGY = new InjectionToken<() => ScrollStrategy>('kbq-popover-scroll-strategy');\n\n/** @docs-private */\nexport function kbqPopoverScrollStrategyFactory(overlay: Overlay): () => ScrollStrategy {\n return () => overlay.scrollStrategies.reposition({ scrollThrottle: 20 });\n}\n\n/** @docs-private */\nexport const KBQ_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER = {\n provide: KBQ_POPOVER_SCROLL_STRATEGY,\n deps: [Overlay],\n useFactory: kbqPopoverScrollStrategyFactory\n};\n\n/** Creates an error to be thrown if the user supplied an invalid popover position. */\nexport function getKbqPopoverInvalidPositionError(position: string) {\n return Error(`KbqPopover position \"${position}\" is invalid.`);\n}\n\n@Directive({\n selector: '[kbqPopover]',\n exportAs: 'kbqPopover',\n host: {\n '[class.kbq-popover_open]': 'isOpen',\n '[class.kbq-active]': 'hasClickTrigger && isOpen',\n '(keydown)': 'keydownHandler($event)',\n '(touchend)': 'touchendHandler()'\n }\n})\nexport class KbqPopoverTrigger extends KbqPopUpTrigger<KbqPopoverComponent> implements AfterContentInit, OnInit {\n protected scrollStrategy: () => ScrollStrategy = inject(KBQ_POPOVER_SCROLL_STRATEGY);\n\n /** prevents closure by any event */\n @Input({ alias: 'kbqPopoverPreventClose', transform: booleanAttribute }) override preventClose: boolean = false;\n\n /** disables default padding for all popover elements (header, content and footer) */\n @Input({ transform: booleanAttribute }) defaultPaddings = true;\n\n @Input('kbqPopoverVisible')\n get popoverVisible(): boolean {\n return this.visible;\n }\n\n set popoverVisible(value: boolean) {\n super.updateVisible(value);\n }\n\n @Input('kbqPopoverPlacement')\n get popoverPlacement(): PopUpPlacements {\n return this.placement;\n }\n\n set popoverPlacement(value: PopUpPlacements) {\n super.updatePlacement(value);\n }\n\n @Input('kbqPopoverPlacementPriority')\n get popoverPlacementPriority() {\n return this.placementPriority;\n }\n\n set popoverPlacementPriority(value) {\n super.updatePlacementPriority(value);\n }\n\n /**\n * Additionally positions the element relative to the window side (Top, Right, Bottom and Left).\n * If container is specified, the positioning will be relative to it.\n * */\n @Input('kbqPopoverStickToWindow') stickToWindow:\n | PopUpPlacements.Top\n | PopUpPlacements.Right\n | PopUpPlacements.Bottom\n | PopUpPlacements.Left\n | string;\n\n /** Container for additional positioning, used with kbqPopoverStickToWindow */\n @Input() container: HTMLElement;\n\n @Input()\n get hasBackdrop(): boolean {\n return this._hasBackdrop;\n }\n\n set hasBackdrop(value: boolean) {\n this._hasBackdrop = coerceBooleanProperty(value);\n }\n\n private _hasBackdrop: boolean = false;\n\n @Input('kbqPopoverHeader')\n get header(): string | TemplateRef<any> {\n return this._header;\n }\n\n set header(value: string | TemplateRef<any>) {\n this._header = value;\n\n this.updateData();\n }\n\n private _header: string | TemplateRef<any>;\n\n @Input('kbqPopoverContent')\n get content(): string | TemplateRef<any> {\n return this._content;\n }\n\n set content(value: string | TemplateRef<any>) {\n this._content = value;\n\n this.updateData();\n }\n\n @Input('kbqPopoverFooter')\n get footer(): string | TemplateRef<any> {\n return this._footer;\n }\n\n set footer(value: string | TemplateRef<any>) {\n this._footer = value;\n\n this.updateData();\n }\n\n private _footer: string | TemplateRef<any>;\n\n @Input('kbqPopoverDisabled')\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(value) {\n this._disabled = coerceBooleanProperty(value);\n\n if (this._disabled) {\n this.hide();\n }\n }\n\n @Input('kbqTrigger')\n get trigger(): string {\n return this._trigger;\n }\n\n set trigger(value: string) {\n if (value) {\n this._trigger = value;\n\n if (this.trigger.includes(PopUpTriggers.Hover)) {\n this.hideWithTimeout = true;\n this.leaveDelay = this.leaveDelay ?? 500;\n }\n } else {\n this._trigger = `${PopUpTriggers.Click}, ${PopUpTriggers.Keydown}`;\n }\n\n this.initListeners();\n }\n\n private _trigger: string = `${PopUpTriggers.Click}, ${PopUpTriggers.Keydown}`;\n\n @Input('kbqPopoverSize')\n get size(): PopUpSizes {\n return this._size;\n }\n\n set size(value: PopUpSizes) {\n if ([PopUpSizes.Small, PopUpSizes.Medium, PopUpSizes.Large].includes(value)) {\n this._size = value;\n\n this.updateClassMap();\n } else {\n this._size = PopUpSizes.Medium;\n }\n }\n\n private _size: PopUpSizes = PopUpSizes.Medium;\n\n @Input('kbqPopoverClass')\n get customClass() {\n return this._customClass;\n }\n\n set customClass(value: string) {\n this._customClass = value;\n\n this.updateClassMap();\n }\n\n /** Context for popover templates (kbqPopoverHeader, kbqPopoverContent and kbqPopoverFooter). */\n @Input('kbqPopoverContext')\n get context() {\n return this._context;\n }\n\n set context(ctx) {\n this._context = ctx;\n this.updateData();\n }\n\n private _context: unknown = null;\n\n @Input()\n get hasCloseButton() {\n return this._hasCloseButton;\n }\n set hasCloseButton(value) {\n this._hasCloseButton = value;\n this.updateData();\n }\n private _hasCloseButton = false;\n\n /**\n * Controls the behavior of closing the component on scroll.\n * The default value is `false`.\n * Use CloseScrollStrategy as alternative\n */\n @Input()\n get closeOnScroll(): boolean | null {\n return this._closeOnScroll;\n }\n\n set closeOnScroll(value: boolean) {\n this._closeOnScroll = coerceBooleanProperty(value);\n }\n\n private _closeOnScroll: boolean | null = null;\n\n get hasClickTrigger(): boolean {\n return this.trigger.includes(PopUpTriggers.Click);\n }\n\n @Input() backdropClass: string = 'cdk-overlay-transparent-backdrop';\n\n // @TODO add realization for arrow (#DS-2514)\n @Input({ alias: 'kbqPopoverArrow', transform: booleanAttribute }) arrow: boolean = true;\n\n @Input({ alias: 'kbqPopoverOffset', transform: numberAttribute }) offset: number | null = defaultOffsetYWithArrow;\n\n /** Delay before closing in milliseconds. The default value for kbqTrigger=PopUpTriggers.Hover is 500 ms. */\n @Input({ alias: 'kbqLeaveDelay', transform: numberAttribute }) leaveDelay: number;\n\n @Output('kbqPopoverPlacementChange') readonly placementChange = new EventEmitter();\n\n @Output('kbqPopoverVisibleChange') readonly visibleChange = new EventEmitter<boolean>();\n\n protected originSelector = '.kbq-popover';\n\n protected get overlayConfig(): OverlayConfig {\n return {\n panelClass: 'kbq-popover__panel',\n hasBackdrop: this.hasBackdrop,\n backdropClass: this.backdropClass\n };\n }\n\n ngOnInit(): void {\n super.ngOnInit();\n\n this.scrollable\n ?.elementScrolled()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(this.hideIfNotInViewPort);\n }\n\n ngAfterContentInit(): void {\n if (this.closeOnScroll === null) {\n this.scrollDispatcher.scrolled().subscribe((scrollable: CdkScrollable | void) => {\n if (!scrollable?.getElementRef().nativeElement.classList.contains('kbq-hide-nested-popup')) return;\n\n const parentRects = scrollable.getElementRef().nativeElement.getBoundingClientRect();\n const childRects = this.elementRef.nativeElement.getBoundingClientRect();\n\n if (childRects.bottom < parentRects.top || childRects.top > parentRects.bottom) {\n this.hide();\n }\n });\n }\n }\n\n updateData() {\n if (!this.instance) return;\n\n this.instance.header = this.header;\n this.instance.content = this.content;\n this.instance.context = this.context && { $implicit: this.context };\n this.instance.arrow = this.arrow;\n this.instance.offset = this.offset;\n this.instance.footer = this.footer;\n this.instance.hasCloseButton = this.hasCloseButton;\n this.instance.defaultPaddings = this.defaultPaddings;\n\n this.instance.updateTrapFocus(this.trigger !== PopUpTriggers.Focus);\n\n if (this.isOpen) {\n this.updatePosition(true);\n }\n }\n\n /** Updates the position of the current popover. */\n updatePosition(reapplyPosition: boolean = false) {\n this.overlayRef = this.createOverlay();\n\n const position = (this.overlayRef.getConfig().positionStrategy as FlexibleConnectedPositionStrategy)\n .withPositions(this.getAdjustedPositions())\n .withPush(true);\n\n if (reapplyPosition) {\n setTimeout(() => position.reapplyLastPosition());\n }\n }\n\n getOverlayHandleComponentType(): Type<KbqPopoverComponent> {\n return KbqPopoverComponent;\n }\n\n updateClassMap(newPlacement: string = this.placement) {\n if (!this.instance) {\n return;\n }\n\n this.instance.updateClassMap(POSITION_TO_CSS_MAP[newPlacement], this.customClass, this.size);\n this.instance.markForCheck();\n }\n\n closingActionsForClick() {\n if (this.hasClickTrigger) {\n return this.defaultClosingActions();\n }\n\n return [];\n }\n\n defaultClosingActions() {\n return [\n this.overlayRef!.backdropClick(),\n this.hasBackdrop ? NEVER : this.overlayRef!.outsidePointerEvents()\n ];\n }\n\n closingActions() {\n return merge(...this.closingActionsForClick(), this.closeOnScroll ? this.scrollDispatcher.scrolled() : NEVER);\n }\n\n private hideIfNotInViewPort = () => {\n if (!this.scrollable) return;\n\n const rect = this.elementRef.nativeElement.getBoundingClientRect();\n const containerRect = this.scrollable.getElementRef().nativeElement.getBoundingClientRect();\n\n if (\n !(\n rect.bottom >= containerRect.top &&\n rect.right >= containerRect.left &&\n rect.top <= containerRect.bottom &&\n rect.left <= containerRect.right\n )\n ) {\n this.hide();\n }\n };\n}\n","<div\n #popover\n class=\"kbq-popover\"\n [class.kbq-popover_arrowless]=\"!arrow\"\n [cdkTrapFocus]=\"isTrapFocus\"\n [ngClass]=\"classMap\"\n [@state]=\"visibility\"\n (@state.done)=\"animationDone($event)\"\n (@state.start)=\"animationStart()\"\n>\n <div\n class=\"kbq-popover__container\"\n [class.kbq-popover__container_with-footer]=\"footer\"\n [class.kbq-popover__container_with-header]=\"header\"\n >\n @if (header) {\n <div\n class=\"kbq-popover__header\"\n [class.kbq-popover__header_default-paddings]=\"defaultPaddings\"\n [class.kbq-popover__header_top-overflow]=\"isContentTopOverflow\"\n [class.kbq-popover__header_with-close-button]=\"hasCloseButton\"\n >\n @if (isTemplateRef(header)) {\n <ng-container [ngTemplateOutlet]=\"$any(header)\" [ngTemplateOutletContext]=\"context\" />\n }\n @if (!isTemplateRef(header)) {\n <div class=\"kbq-popover__header-text\">{{ header }}</div>\n }\n </div>\n }\n\n @if (content) {\n <div\n #popoverContent\n class=\"kbq-popover__content kbq-scrollbar\"\n [class.kbq-popover__content_default-paddings]=\"defaultPaddings\"\n (cdkObserveContent)=\"onContentChange()\"\n >\n @if (hasCloseButton && !header) {\n <div class=\"kbq-popover__close-container\">\n <ng-container [ngTemplateOutlet]=\"closeButton\" />\n </div>\n }\n @if (isTemplateRef(content)) {\n <ng-container [ngTemplateOutlet]=\"$any(content)\" [ngTemplateOutletContext]=\"context\" />\n }\n @if (!isTemplateRef(content)) {\n <div>{{ content }}</div>\n }\n </div>\n }\n\n @if (footer) {\n <div\n class=\"kbq-popover__footer\"\n [class.kbq-popover__footer_default-paddings]=\"defaultPaddings\"\n [class.kbq-popover__footer_bottom-overflow]=\"isContentBottomOverflow\"\n >\n @if (isTemplateRef(footer)) {\n <ng-container [ngTemplateOutlet]=\"$any(footer)\" [ngTemplateOutletContext]=\"context\" />\n }\n @if (!isTemplateRef(footer)) {\n <div>{{ footer }}</div>\n }\n </div>\n }\n </div>\n\n @if (hasCloseButton && header) {\n <div class=\"kbq-popover__close-container\">\n <ng-container [ngTemplateOutlet]=\"closeButton\" />\n </div>\n }\n\n <ng-template #closeButton>\n <div class=\"kbq-popover__close\">\n <button kbq-button class=\"kbq-button_transparent\" [color]=\"componentColors.Contrast\" (click)=\"hide(0)\">\n <i kbq-icon=\"kbq-xmark_16\" [color]=\"componentColors.Contrast\"></i>\n </button>\n </div>\n </ng-template>\n\n @if (arrow) {\n <div class=\"kbq-popover__arrow\"></div>\n }\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n EventEmitter,\n Inject,\n InjectionToken,\n Input,\n Optional,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Subject } from 'rxjs';\nimport { kbqPopoverAnimations } from './popover-animations';\nimport { KbqPopoverComponent, KbqPopoverTrigger } from './popover.component';\n\nexport const KBQ_POPOVER_CONFIRM_TEXT = new InjectionToken<string>('');\nexport const KBQ_POPOVER_CONFIRM_BUTTON_TEXT = new InjectionToken<string>('');\n\n@Component({\n selector: 'kbq-popover-confirm-component',\n templateUrl: './popover-confirm.component.html',\n preserveWhitespaces: false,\n styleUrls: ['./popover.scss', './popover-tokens.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [kbqPopoverAnimations.popoverState]\n})\nexport class KbqPopoverConfirmComponent extends KbqPopoverComponent {\n onConfirm = new Subject<void>();\n confirmButtonText: string;\n\n confirmText: string;\n}\n\n@Directive({\n selector: '[kbqPopoverConfirm]',\n exportAs: 'kbqPopoverConfirm',\n host: {\n '[class.kbq-popover_open]': 'isOpen',\n '(keydown)': 'keydownHandler($event)',\n '(touchend)': 'touchendHandler()'\n }\n})\nexport class KbqPopoverConfirmTrigger extends KbqPopoverTrigger {\n @Output() readonly confirm: EventEmitter<void> = new EventEmitter<void>();\n\n @Input('kbqPopoverConfirmText')\n get confirmText(): string {\n return this._confirmText;\n }\n\n set confirmText(value: string) {\n this._confirmText = value;\n\n this.updateData();\n }\n\n private _confirmText: string;\n\n @Input('kbqPopoverConfirmButtonText')\n get confirmButtonText(): string {\n return this._confirmButtonText;\n }\n\n set confirmButtonText(value: string) {\n this._confirmButtonText = value;\n\n this.updateData();\n }\n\n private _confirmButtonText: string = 'Да';\n\n constructor(\n @Optional() @Inject(KBQ_POPOVER_CONFIRM_TEXT) confirmText: string,\n @Optional() @Inject(KBQ_POPOVER_CONFIRM_BUTTON_TEXT) confirmButtonText: string\n ) {\n super();\n\n this.confirmText = confirmText || 'Вы уверены, что хотите продолжить?';\n this.confirmButtonText = confirmButtonText || 'Да';\n }\n\n updateData() {\n if (!this.instance) {\n return;\n }\n\n super.updateData();\n this.setupButtonEvents();\n this.instance.confirmButtonText = this.confirmButtonText;\n this.instance.confirmText = this.confirmText;\n }\n\n setupButtonEvents() {\n this.instance.onConfirm.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n this.confirm.emit();\n this.hide();\n });\n }\n\n getOverlayHandleComponentType() {\n return KbqPopoverConfirmComponent;\n }\n}\n","<div\n cdkTrapFocus=\"true\"\n cdkTrapFocusAutoCapture=\"true\"\n class=\"kbq-popover-confirm kbq-popover\"\n [ngClass]=\"classMap\"\n [@state]=\"visibility\"\n (@state.done)=\"animationDone($event)\"\n (@state.start)=\"animationStart()\"\n>\n <div class=\"kbq-popover__container\">\n <div class=\"kbq-popover__content\">\n <div>{{ confirmText }}</div>\n <button kbq-button [color]=\"'contrast'\" (click)=\"onConfirm.next()\">\n {{ confirmButtonText }}\n </button>\n </div>\n </div>\n\n <div class=\"kbq-popover__arrow\"></div>\n</div>\n","import {\n A11yModule,\n ConfigurableFocusTrapFactory,\n FOCUS_TRAP_INERT_STRATEGY,\n FocusTrapFactory\n} from '@angular/cdk/a11y';\nimport { CdkObserveContent } from '@angular/cdk/observers';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { NgClass, NgTemplateOutlet } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { KbqButtonModule } from '@koobiq/components/button';\nimport { EmptyFocusTrapStrategy } from '@koobiq/components/core';\nimport { KbqIconModule } from '@koobiq/components/icon';\nimport { KbqPopoverConfirmComponent, KbqPopoverConfirmTrigger } from './popover-confirm.component';\nimport {\n KBQ_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER,\n KbqPopoverComponent,\n KbqPopoverTrigger\n} from './popover.component';\n\n@NgModule({\n declarations: [\n KbqPopoverComponent,\n KbqPopoverTrigger,\n KbqPopoverConfirmComponent,\n KbqPopoverConfirmTrigger\n ],\n exports: [\n KbqPopoverComponent,\n KbqPopoverTrigger,\n KbqPopoverConfirmComponent,\n KbqPopoverConfirmTrigger\n ],\n imports: [\n OverlayModule,\n KbqButtonModule,\n A11yModule,\n KbqIconModule,\n CdkObserveContent,\n NgClass,\n NgTemplateOutlet\n ],\n providers: [\n KBQ_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER,\n { provide: FocusTrapFactory, useClass: ConfigurableFocusTrapFactory },\n { provide: FOCUS_TRAP_INERT_STRATEGY, useClass: EmptyFocusTrapStrategy }]\n})\nexport class KbqPopoverModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3"],"mappings":"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"}
1
+ {"version":3,"file":"koobiq-components-popover.mjs","sources":["../../../packages/components/popover/popover-animations.ts","../../../packages/components/popover/popover.component.ts","../../../packages/components/popover/popover.component.html","../../../packages/components/popover/popover-confirm.component.ts","../../../packages/components/popover/popover-confirm.component.html","../../../packages/components/popover/popover.module.ts","../../../packages/components/popover/koobiq-components-popover.ts"],"sourcesContent":["import { animate, AnimationTriggerMetadata, state, style, transition, trigger } from '@angular/animations';\n\nexport const kbqPopoverAnimations: {\n readonly popoverState: AnimationTriggerMetadata;\n} = {\n /** Animation that transitions a tooltip in and out. */\n popoverState: trigger('state', [\n state(\n 'initial',\n style({\n opacity: 0,\n transform: 'scale(1, 0.8)'\n })\n ),\n transition(\n '* => visible',\n animate(\n '120ms cubic-bezier(0, 0, 0.2, 1)',\n style({\n opacity: 1,\n transform: 'scale(1, 1)'\n })\n )\n ),\n transition('* => hidden', animate('100ms linear', style({ opacity: 0 })))\n ])\n};\n","import { CdkTrapFocus } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n CdkScrollable,\n FlexibleConnectedPositionStrategy,\n Overlay,\n OverlayConfig,\n ScrollStrategy\n} from '@angular/cdk/overlay';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n Directive,\n ElementRef,\n EventEmitter,\n InjectionToken,\n Input,\n OnInit,\n Output,\n TemplateRef,\n Type,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n numberAttribute\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport {\n KbqComponentColors,\n KbqPopUp,\n KbqPopUpTrigger,\n POSITION_TO_CSS_MAP,\n PopUpPlacements,\n PopUpSizes,\n PopUpTriggers,\n applyPopupMargins\n} from '@koobiq/components/core';\nimport { NEVER, fromEvent, merge } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { kbqPopoverAnimations } from './popover-animations';\n\nexport const defaultOffsetYWithArrow = 8;\n\n@Component({\n selector: 'kbq-popover-component',\n templateUrl: './popover.component.html',\n preserveWhitespaces: false,\n styleUrls: ['./popover.scss', './popover-tokens.scss'],\n host: {\n '(keydown.esc)': 'onEscape()'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [kbqPopoverAnimations.popoverState]\n})\nexport class KbqPopoverComponent extends KbqPopUp implements AfterViewInit {\n prefix = 'kbq-popover';\n\n header: string | TemplateRef<any>;\n footer: string | TemplateRef<any>;\n\n trigger: KbqPopoverTrigger;\n\n isTrapFocus: boolean = false;\n hasCloseButton: boolean = false;\n\n @ViewChild('popoverContent') popoverContent: ElementRef<HTMLDivElement>;\n @ViewChild('popover') elementRef: ElementRef;\n @ViewChild(CdkTrapFocus) cdkTrapFocus: CdkTrapFocus;\n\n private debounceTime = 15;\n isContentTopOverflow: boolean = false;\n isContentBottomOverflow: boolean = false;\n\n ngAfterViewInit() {\n if (!this.popoverContent) return;\n\n this.checkContentOverflow(this.popoverContent.nativeElement);\n\n fromEvent(this.popoverContent.nativeElement, 'scroll')\n .pipe(debounceTime(this.debounceTime), takeUntilDestroyed(this.destroyRef))\n .subscribe((event) => {\n this.checkContentOverflow(event.target as HTMLElement);\n });\n\n this.cdkTrapFocus.focusTrap.focusFirstTabbableElement();\n this.visibleChange.subscribe((state) => {\n if (this.offset !== null && state) {\n applyPopupMargins(\n this.renderer,\n this.elementRef.nativeElement,\n this.prefix,\n `${this.offset!.toString()}px`\n );\n\n this.setStickPosition();\n }\n });\n }\n\n onContentChange() {\n this.checkContentOverflow(this.popoverContent.nativeElement);\n }\n\n checkContentOverflow(contentElement: HTMLElement) {\n const { scrollTop, offsetHeight, scrollHeight } = contentElement;\n\n this.isContentTopOverflow = scrollTop > 0;\n\n this.isContentBottomOverflow = Math.round(scrollTop + offsetHeight) < scrollHeight;\n\n super.detectChanges();\n }\n\n updateClassMap(placement: string, customClass: string, size: PopUpSizes) {\n super.updateClassMap(placement, customClass, { [`${this.prefix}_${size}`]: !!size });\n }\n\n updateTrapFocus(isTrapFocus: boolean): void {\n this.isTrapFocus = isTrapFocus;\n }\n\n onEscape() {\n this.hide(0);\n\n this.trigger.focus();\n }\n\n protected readonly componentColors = KbqComponentColors;\n}\n\nexport const KBQ_POPOVER_SCROLL_STRATEGY = new InjectionToken<() => ScrollStrategy>('kbq-popover-scroll-strategy');\n\n/** @docs-private */\nexport function kbqPopoverScrollStrategyFactory(overlay: Overlay): () => ScrollStrategy {\n return () => overlay.scrollStrategies.reposition({ scrollThrottle: 20 });\n}\n\n/** @docs-private */\nexport const KBQ_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER = {\n provide: KBQ_POPOVER_SCROLL_STRATEGY,\n deps: [Overlay],\n useFactory: kbqPopoverScrollStrategyFactory\n};\n\n/** Creates an error to be thrown if the user supplied an invalid popover position. */\nexport function getKbqPopoverInvalidPositionError(position: string) {\n return Error(`KbqPopover position \"${position}\" is invalid.`);\n}\n\n@Directive({\n selector: '[kbqPopover]',\n exportAs: 'kbqPopover',\n host: {\n '[class.kbq-popover_open]': 'isOpen',\n '[class.kbq-active]': 'hasClickTrigger && isOpen',\n '(keydown)': 'keydownHandler($event)',\n '(touchend)': 'touchendHandler()'\n }\n})\nexport class KbqPopoverTrigger extends KbqPopUpTrigger<KbqPopoverComponent> implements AfterContentInit, OnInit {\n protected scrollStrategy: () => ScrollStrategy = inject(KBQ_POPOVER_SCROLL_STRATEGY);\n\n /** prevents closure by any event */\n @Input({ alias: 'kbqPopoverPreventClose', transform: booleanAttribute }) override preventClose: boolean = false;\n\n /** disables default padding for all popover elements (header, content and footer) */\n @Input({ transform: booleanAttribute }) defaultPaddings = true;\n\n @Input('kbqPopoverVisible')\n get popoverVisible(): boolean {\n return this.visible;\n }\n\n set popoverVisible(value: boolean) {\n super.updateVisible(value);\n }\n\n @Input('kbqPopoverPlacement')\n get popoverPlacement(): PopUpPlacements {\n return this.placement;\n }\n\n set popoverPlacement(value: PopUpPlacements) {\n super.updatePlacement(value);\n }\n\n @Input('kbqPopoverPlacementPriority')\n get popoverPlacementPriority() {\n return this.placementPriority;\n }\n\n set popoverPlacementPriority(value) {\n super.updatePlacementPriority(value);\n }\n\n /**\n * Additionally positions the element relative to the window side (Top, Right, Bottom and Left).\n * If container is specified, the positioning will be relative to it.\n * */\n @Input('kbqPopoverStickToWindow') stickToWindow:\n | PopUpPlacements.Top\n | PopUpPlacements.Right\n | PopUpPlacements.Bottom\n | PopUpPlacements.Left\n | string;\n\n /** Container for additional positioning, used with kbqPopoverStickToWindow */\n @Input() container: HTMLElement;\n\n @Input()\n get hasBackdrop(): boolean {\n return this._hasBackdrop;\n }\n\n set hasBackdrop(value: boolean) {\n this._hasBackdrop = coerceBooleanProperty(value);\n }\n\n private _hasBackdrop: boolean = false;\n\n @Input('kbqPopoverHeader')\n get header(): string | TemplateRef<any> {\n return this._header;\n }\n\n set header(value: string | TemplateRef<any>) {\n this._header = value;\n\n this.updateData();\n }\n\n private _header: string | TemplateRef<any>;\n\n @Input('kbqPopoverContent')\n get content(): string | TemplateRef<any> {\n return this._content;\n }\n\n set content(value: string | TemplateRef<any>) {\n this._content = value;\n\n this.updateData();\n }\n\n @Input('kbqPopoverFooter')\n get footer(): string | TemplateRef<any> {\n return this._footer;\n }\n\n set footer(value: string | TemplateRef<any>) {\n this._footer = value;\n\n this.updateData();\n }\n\n private _footer: string | TemplateRef<any>;\n\n @Input('kbqPopoverDisabled')\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(value) {\n this._disabled = coerceBooleanProperty(value);\n\n if (this._disabled) {\n this.hide();\n }\n }\n\n @Input('kbqTrigger')\n get trigger(): string {\n return this._trigger;\n }\n\n set trigger(value: string) {\n if (value) {\n this._trigger = value;\n\n if (this.trigger.includes(PopUpTriggers.Hover)) {\n this.hideWithTimeout = true;\n this.leaveDelay = this.leaveDelay ?? 500;\n }\n } else {\n this._trigger = `${PopUpTriggers.Click}, ${PopUpTriggers.Keydown}`;\n }\n\n this.initListeners();\n }\n\n private _trigger: string = `${PopUpTriggers.Click}, ${PopUpTriggers.Keydown}`;\n\n @Input('kbqPopoverSize')\n get size(): PopUpSizes {\n return this._size;\n }\n\n set size(value: PopUpSizes) {\n if ([PopUpSizes.Small, PopUpSizes.Medium, PopUpSizes.Large].includes(value)) {\n this._size = value;\n\n this.updateClassMap();\n } else {\n this._size = PopUpSizes.Medium;\n }\n }\n\n private _size: PopUpSizes = PopUpSizes.Medium;\n\n @Input('kbqPopoverClass')\n get customClass() {\n return this._customClass;\n }\n\n set customClass(value: string) {\n this._customClass = value;\n\n this.updateClassMap();\n }\n\n /** Context for popover templates (kbqPopoverHeader, kbqPopoverContent and kbqPopoverFooter). */\n @Input('kbqPopoverContext')\n get context() {\n return this._context;\n }\n\n set context(ctx) {\n this._context = ctx;\n this.updateData();\n }\n\n private _context: unknown = null;\n\n @Input()\n get hasCloseButton() {\n return this._hasCloseButton;\n }\n set hasCloseButton(value) {\n this._hasCloseButton = value;\n this.updateData();\n }\n private _hasCloseButton = false;\n\n /**\n * Controls the behavior of closing the component on scroll.\n * The default value is `false`.\n * Use CloseScrollStrategy as alternative\n */\n @Input()\n get closeOnScroll(): boolean | null {\n return this._closeOnScroll;\n }\n\n set closeOnScroll(value: boolean) {\n this._closeOnScroll = coerceBooleanProperty(value);\n }\n\n private _closeOnScroll: boolean | null = null;\n\n get hasClickTrigger(): boolean {\n return this.trigger.includes(PopUpTriggers.Click);\n }\n\n @Input() backdropClass: string = 'cdk-overlay-transparent-backdrop';\n\n // @TODO add realization for arrow (#DS-2514)\n @Input({ alias: 'kbqPopoverArrow', transform: booleanAttribute }) arrow: boolean = true;\n\n @Input({ alias: 'kbqPopoverOffset', transform: numberAttribute }) offset: number | null = defaultOffsetYWithArrow;\n\n /** Delay before closing in milliseconds. The default value for kbqTrigger=PopUpTriggers.Hover is 500 ms. */\n @Input({ alias: 'kbqLeaveDelay', transform: numberAttribute }) leaveDelay: number;\n\n @Output('kbqPopoverPlacementChange') readonly placementChange = new EventEmitter();\n\n @Output('kbqPopoverVisibleChange') readonly visibleChange = new EventEmitter<boolean>();\n\n protected originSelector = '.kbq-popover';\n\n protected get overlayConfig(): OverlayConfig {\n return {\n panelClass: 'kbq-popover__panel',\n hasBackdrop: this.hasBackdrop,\n backdropClass: this.backdropClass\n };\n }\n\n ngOnInit(): void {\n super.ngOnInit();\n\n this.scrollable\n ?.elementScrolled()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(this.hideIfNotInViewPort);\n }\n\n ngAfterContentInit(): void {\n if (this.closeOnScroll === null) {\n this.scrollDispatcher.scrolled().subscribe((scrollable: CdkScrollable | void) => {\n if (!scrollable?.getElementRef().nativeElement.classList.contains('kbq-hide-nested-popup')) return;\n\n const parentRects = scrollable.getElementRef().nativeElement.getBoundingClientRect();\n const childRects = this.elementRef.nativeElement.getBoundingClientRect();\n\n if (childRects.bottom < parentRects.top || childRects.top > parentRects.bottom) {\n this.hide();\n }\n });\n }\n }\n\n updateData() {\n if (!this.instance) return;\n\n this.instance.header = this.header;\n this.instance.content = this.content;\n this.instance.context = this.context && { $implicit: this.context };\n this.instance.arrow = this.arrow;\n this.instance.offset = this.offset;\n this.instance.footer = this.footer;\n this.instance.hasCloseButton = this.hasCloseButton;\n this.instance.defaultPaddings = this.defaultPaddings;\n\n this.instance.updateTrapFocus(this.trigger !== PopUpTriggers.Focus);\n\n if (this.isOpen) {\n this.updatePosition(true);\n }\n }\n\n /** Updates the position of the current popover. */\n updatePosition(reapplyPosition: boolean = false) {\n this.overlayRef = this.createOverlay();\n\n const position = (this.overlayRef.getConfig().positionStrategy as FlexibleConnectedPositionStrategy)\n .withPositions(this.getAdjustedPositions())\n .withPush(true);\n\n if (reapplyPosition) {\n setTimeout(() => position.reapplyLastPosition());\n }\n }\n\n getOverlayHandleComponentType(): Type<KbqPopoverComponent> {\n return KbqPopoverComponent;\n }\n\n updateClassMap(newPlacement: string = this.placement) {\n if (!this.instance) {\n return;\n }\n\n this.instance.updateClassMap(POSITION_TO_CSS_MAP[newPlacement], this.customClass, this.size);\n this.instance.markForCheck();\n }\n\n closingActionsForClick() {\n if (this.hasClickTrigger) {\n return this.defaultClosingActions();\n }\n\n return [];\n }\n\n defaultClosingActions() {\n return [\n this.overlayRef!.backdropClick(),\n this.hasBackdrop ? NEVER : this.overlayRef!.outsidePointerEvents()\n ];\n }\n\n closingActions() {\n return merge(...this.closingActionsForClick(), this.closeOnScroll ? this.scrollDispatcher.scrolled() : NEVER);\n }\n\n private hideIfNotInViewPort = () => {\n if (!this.scrollable) return;\n\n const rect = this.elementRef.nativeElement.getBoundingClientRect();\n const containerRect = this.scrollable.getElementRef().nativeElement.getBoundingClientRect();\n\n if (\n !(\n rect.bottom >= containerRect.top &&\n rect.right >= containerRect.left &&\n rect.top <= containerRect.bottom &&\n rect.left <= containerRect.right\n )\n ) {\n this.hide();\n }\n };\n}\n","<div\n #popover\n class=\"kbq-popover\"\n [class.kbq-popover_arrowless]=\"!arrow\"\n [cdkTrapFocus]=\"isTrapFocus\"\n [ngClass]=\"classMap\"\n [@state]=\"visibility\"\n (@state.done)=\"animationDone($event)\"\n (@state.start)=\"animationStart()\"\n>\n <div\n class=\"kbq-popover__container\"\n [class.kbq-popover__container_with-footer]=\"footer\"\n [class.kbq-popover__container_with-header]=\"header\"\n >\n @if (header) {\n <div\n class=\"kbq-popover__header\"\n [class.kbq-popover__header_default-paddings]=\"defaultPaddings\"\n [class.kbq-popover__header_top-overflow]=\"isContentTopOverflow\"\n [class.kbq-popover__header_with-close-button]=\"hasCloseButton\"\n >\n @if (isTemplateRef(header)) {\n <ng-container [ngTemplateOutlet]=\"$any(header)\" [ngTemplateOutletContext]=\"context\" />\n }\n @if (!isTemplateRef(header)) {\n <div class=\"kbq-popover__header-text\">{{ header }}</div>\n }\n </div>\n }\n\n @if (content) {\n <div\n #popoverContent\n class=\"kbq-popover__content kbq-scrollbar\"\n [class.kbq-popover__content_default-paddings]=\"defaultPaddings\"\n (cdkObserveContent)=\"onContentChange()\"\n >\n @if (hasCloseButton && !header) {\n <div class=\"kbq-popover__close-container\">\n <ng-container [ngTemplateOutlet]=\"closeButton\" />\n </div>\n }\n @if (isTemplateRef(content)) {\n <ng-container [ngTemplateOutlet]=\"$any(content)\" [ngTemplateOutletContext]=\"context\" />\n }\n @if (!isTemplateRef(content)) {\n <div>{{ content }}</div>\n }\n </div>\n }\n\n @if (footer) {\n <div\n class=\"kbq-popover__footer\"\n [class.kbq-popover__footer_default-paddings]=\"defaultPaddings\"\n [class.kbq-popover__footer_bottom-overflow]=\"isContentBottomOverflow\"\n >\n @if (isTemplateRef(footer)) {\n <ng-container [ngTemplateOutlet]=\"$any(footer)\" [ngTemplateOutletContext]=\"context\" />\n }\n @if (!isTemplateRef(footer)) {\n <div>{{ footer }}</div>\n }\n </div>\n }\n </div>\n\n @if (hasCloseButton && header) {\n <div class=\"kbq-popover__close-container\">\n <ng-container [ngTemplateOutlet]=\"closeButton\" />\n </div>\n }\n\n <ng-template #closeButton>\n <div class=\"kbq-popover__close\">\n <button kbq-button class=\"kbq-button_transparent\" [color]=\"componentColors.Contrast\" (click)=\"hide(0)\">\n <i kbq-icon=\"kbq-xmark_16\" [color]=\"componentColors.Contrast\"></i>\n </button>\n </div>\n </ng-template>\n\n @if (arrow) {\n <div class=\"kbq-popover__arrow\"></div>\n }\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n EventEmitter,\n Inject,\n InjectionToken,\n Input,\n Optional,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Subject } from 'rxjs';\nimport { kbqPopoverAnimations } from './popover-animations';\nimport { KbqPopoverComponent, KbqPopoverTrigger } from './popover.component';\n\nexport const KBQ_POPOVER_CONFIRM_TEXT = new InjectionToken<string>('');\nexport const KBQ_POPOVER_CONFIRM_BUTTON_TEXT = new InjectionToken<string>('');\n\n@Component({\n selector: 'kbq-popover-confirm-component',\n templateUrl: './popover-confirm.component.html',\n preserveWhitespaces: false,\n styleUrls: ['./popover.scss', './popover-tokens.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [kbqPopoverAnimations.popoverState]\n})\nexport class KbqPopoverConfirmComponent extends KbqPopoverComponent {\n onConfirm = new Subject<void>();\n confirmButtonText: string;\n\n confirmText: string;\n}\n\n@Directive({\n selector: '[kbqPopoverConfirm]',\n exportAs: 'kbqPopoverConfirm',\n host: {\n '[class.kbq-popover_open]': 'isOpen',\n '(keydown)': 'keydownHandler($event)',\n '(touchend)': 'touchendHandler()'\n }\n})\nexport class KbqPopoverConfirmTrigger extends KbqPopoverTrigger {\n @Output() readonly confirm: EventEmitter<void> = new EventEmitter<void>();\n\n @Input('kbqPopoverConfirmText')\n get confirmText(): string {\n return this._confirmText;\n }\n\n set confirmText(value: string) {\n this._confirmText = value;\n\n this.updateData();\n }\n\n private _confirmText: string;\n\n @Input('kbqPopoverConfirmButtonText')\n get confirmButtonText(): string {\n return this._confirmButtonText;\n }\n\n set confirmButtonText(value: string) {\n this._confirmButtonText = value;\n\n this.updateData();\n }\n\n private _confirmButtonText: string = 'Да';\n\n constructor(\n @Optional() @Inject(KBQ_POPOVER_CONFIRM_TEXT) confirmText: string,\n @Optional() @Inject(KBQ_POPOVER_CONFIRM_BUTTON_TEXT) confirmButtonText: string\n ) {\n super();\n\n this.confirmText = confirmText || 'Вы уверены, что хотите продолжить?';\n this.confirmButtonText = confirmButtonText || 'Да';\n }\n\n updateData() {\n if (!this.instance) {\n return;\n }\n\n super.updateData();\n this.setupButtonEvents();\n this.instance.confirmButtonText = this.confirmButtonText;\n this.instance.confirmText = this.confirmText;\n }\n\n setupButtonEvents() {\n this.instance.onConfirm.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n this.confirm.emit();\n this.hide();\n });\n }\n\n getOverlayHandleComponentType() {\n return KbqPopoverConfirmComponent;\n }\n}\n","<div\n cdkTrapFocus=\"true\"\n cdkTrapFocusAutoCapture=\"true\"\n class=\"kbq-popover-confirm kbq-popover\"\n [ngClass]=\"classMap\"\n [@state]=\"visibility\"\n (@state.done)=\"animationDone($event)\"\n (@state.start)=\"animationStart()\"\n>\n <div class=\"kbq-popover__container\">\n <div class=\"kbq-popover__content\">\n <div>{{ confirmText }}</div>\n <button kbq-button [color]=\"'contrast'\" (click)=\"onConfirm.next()\">\n {{ confirmButtonText }}\n </button>\n </div>\n </div>\n\n <div class=\"kbq-popover__arrow\"></div>\n</div>\n","import {\n A11yModule,\n ConfigurableFocusTrapFactory,\n FOCUS_TRAP_INERT_STRATEGY,\n FocusTrapFactory\n} from '@angular/cdk/a11y';\nimport { CdkObserveContent } from '@angular/cdk/observers';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { NgClass, NgTemplateOutlet } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { KbqButtonModule } from '@koobiq/components/button';\nimport { EmptyFocusTrapStrategy } from '@koobiq/components/core';\nimport { KbqIconModule } from '@koobiq/components/icon';\nimport { KbqPopoverConfirmComponent, KbqPopoverConfirmTrigger } from './popover-confirm.component';\nimport {\n KBQ_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER,\n KbqPopoverComponent,\n KbqPopoverTrigger\n} from './popover.component';\n\n@NgModule({\n declarations: [\n KbqPopoverComponent,\n KbqPopoverTrigger,\n KbqPopoverConfirmComponent,\n KbqPopoverConfirmTrigger\n ],\n exports: [\n KbqPopoverComponent,\n KbqPopoverTrigger,\n KbqPopoverConfirmComponent,\n KbqPopoverConfirmTrigger\n ],\n imports: [\n OverlayModule,\n KbqButtonModule,\n A11yModule,\n KbqIconModule,\n CdkObserveContent,\n NgClass,\n NgTemplateOutlet\n ],\n providers: [\n KBQ_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER,\n { provide: FocusTrapFactory, useClass: ConfigurableFocusTrapFactory },\n { provide: FOCUS_TRAP_INERT_STRATEGY, useClass: EmptyFocusTrapStrategy }]\n})\nexport class KbqPopoverModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3"],"mappings":"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"}
@@ -16,11 +16,18 @@ class KbqTitleDirective extends KbqTooltipTrigger {
16
16
  }
17
17
  get isOverflown() {
18
18
  /** For special cases where the difference is a fraction of a pixel */
19
- if (this.child.scrollWidth === 0 || this.parent.offsetWidth === this.child.scrollWidth) {
19
+ if (!this.isVerticalOverflown &&
20
+ (this.child.scrollWidth === 0 || this.parent.offsetWidth === this.child.scrollWidth)) {
20
21
  return this.parent.getBoundingClientRect().width < this.child.getBoundingClientRect().width;
21
22
  }
23
+ return this.isHorizontalOverflown || this.isVerticalOverflown;
24
+ }
25
+ get isHorizontalOverflown() {
22
26
  return this.parent.offsetWidth < this.child.scrollWidth;
23
27
  }
28
+ get isVerticalOverflown() {
29
+ return this.parent?.offsetHeight < this.child.scrollHeight;
30
+ }
24
31
  get viewValue() {
25
32
  return (this.parent?.textContent || '').trim();
26
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"koobiq-components-title.mjs","sources":["../../../packages/components/title/title.directive.ts","../../../packages/components/title/title.module.ts","../../../packages/components/title/koobiq-components-title.ts"],"sourcesContent":["import { ContentObserver } from '@angular/cdk/observers';\nimport {\n AfterViewInit,\n ContentChild,\n Directive,\n ElementRef,\n Host,\n inject,\n Inject,\n OnDestroy,\n Optional\n} from '@angular/core';\nimport { KBQ_TITLE_TEXT_REF, KbqTitleTextRef, PopUpTriggers } from '@koobiq/components/core';\nimport { KbqTooltipTrigger } from '@koobiq/components/tooltip';\nimport { Subject, Subscription, throttleTime } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\n\n@Directive({\n selector: '[kbq-title]',\n exportAs: 'kbqTitle',\n host: {\n '(mouseenter)': 'handleElementEnter()',\n '(mouseleave)': 'hideTooltip()',\n '(window:resize)': 'resizeStream.next($event)'\n }\n})\nexport class KbqTitleDirective extends KbqTooltipTrigger implements AfterViewInit, OnDestroy {\n private contentObserver = inject(ContentObserver);\n\n // todo need rename kbqTrigger in popover, tooltip and title. Here workaround for kbq-title and popover on one button\n set trigger(value: string) {\n super.trigger = value;\n }\n\n get trigger(): string {\n return PopUpTriggers.Hover;\n }\n\n get isOverflown(): boolean {\n /** For special cases where the difference is a fraction of a pixel */\n if (this.child.scrollWidth === 0 || this.parent.offsetWidth === this.child.scrollWidth) {\n return this.parent.getBoundingClientRect().width < this.child.getBoundingClientRect().width;\n }\n\n return this.parent.offsetWidth < this.child.scrollWidth;\n }\n\n get viewValue(): string {\n return (this.parent?.textContent || '').trim();\n }\n\n get parent(): HTMLElement {\n return this.parentContainer?.nativeElement || this.parentContainer;\n }\n\n get child(): HTMLElement {\n return this.childContainer.nativeElement || this.childContainer;\n }\n\n readonly resizeStream = new Subject<Event>();\n\n private readonly debounceInterval: number = 100;\n\n private resizeSubscription = Subscription.EMPTY;\n private contentObserverSubscription = Subscription.EMPTY;\n private focusMonitorSubscription = Subscription.EMPTY;\n\n @ContentChild('kbqTitleText', { descendants: true, static: true })\n private childContainer: ElementRef;\n\n @ContentChild('kbqTitleContainer')\n private parentContainer: ElementRef;\n\n constructor(@Host() @Optional() @Inject(KBQ_TITLE_TEXT_REF) private componentInstance?: KbqTitleTextRef) {\n super();\n }\n\n ngAfterViewInit() {\n this.parentContainer = this.parentContainer || this.componentInstance?.parentTextElement || this.elementRef;\n this.childContainer = this.childContainer || this.componentInstance?.textElement || this.elementRef;\n this.content = this.viewValue;\n\n this.resizeSubscription = this.resizeStream\n .pipe(debounceTime(this.debounceInterval))\n .subscribe(() => (this.disabled = !this.isOverflown));\n\n this.contentObserverSubscription = this.contentObserver\n .observe(this.parent)\n .pipe(throttleTime(this.debounceInterval))\n .subscribe(() => {\n this.disabled = !this.isOverflown;\n this.content = this.viewValue;\n });\n\n this.focusMonitorSubscription = this.focusMonitor\n .monitor(this.elementRef)\n .subscribe((origin) => (origin === 'keyboard' ? this.handleElementEnter() : this.hideTooltip()));\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\n\n this.resizeSubscription.unsubscribe();\n this.contentObserverSubscription.unsubscribe();\n this.focusMonitorSubscription.unsubscribe();\n this.focusMonitor.stopMonitoring(this.elementRef);\n }\n\n handleElementEnter() {\n this.disabled = !this.isOverflown;\n }\n\n hideTooltip() {\n this.disabled = true;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { KbqToolTipModule } from '@koobiq/components/tooltip';\nimport { KbqTitleDirective } from './title.directive';\n\n@NgModule({\n imports: [KbqToolTipModule],\n declarations: [KbqTitleDirective],\n exports: [KbqTitleDirective]\n})\nexport class KbqTitleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"koobiq-components-title.mjs","sources":["../../../packages/components/title/title.directive.ts","../../../packages/components/title/title.module.ts","../../../packages/components/title/koobiq-components-title.ts"],"sourcesContent":["import { ContentObserver } from '@angular/cdk/observers';\nimport {\n AfterViewInit,\n ContentChild,\n Directive,\n ElementRef,\n Host,\n inject,\n Inject,\n OnDestroy,\n Optional\n} from '@angular/core';\nimport { KBQ_TITLE_TEXT_REF, KbqTitleTextRef, PopUpTriggers } from '@koobiq/components/core';\nimport { KbqTooltipTrigger } from '@koobiq/components/tooltip';\nimport { Subject, Subscription, throttleTime } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\n\n@Directive({\n selector: '[kbq-title]',\n exportAs: 'kbqTitle',\n host: {\n '(mouseenter)': 'handleElementEnter()',\n '(mouseleave)': 'hideTooltip()',\n '(window:resize)': 'resizeStream.next($event)'\n }\n})\nexport class KbqTitleDirective extends KbqTooltipTrigger implements AfterViewInit, OnDestroy {\n private contentObserver = inject(ContentObserver);\n\n // todo need rename kbqTrigger in popover, tooltip and title. Here workaround for kbq-title and popover on one button\n set trigger(value: string) {\n super.trigger = value;\n }\n\n get trigger(): string {\n return PopUpTriggers.Hover;\n }\n\n get isOverflown(): boolean {\n /** For special cases where the difference is a fraction of a pixel */\n if (\n !this.isVerticalOverflown &&\n (this.child.scrollWidth === 0 || this.parent.offsetWidth === this.child.scrollWidth)\n ) {\n return this.parent.getBoundingClientRect().width < this.child.getBoundingClientRect().width;\n }\n\n return this.isHorizontalOverflown || this.isVerticalOverflown;\n }\n\n get isHorizontalOverflown(): boolean {\n return this.parent.offsetWidth < this.child.scrollWidth;\n }\n\n get isVerticalOverflown(): boolean {\n return this.parent?.offsetHeight < this.child.scrollHeight;\n }\n\n get viewValue(): string {\n return (this.parent?.textContent || '').trim();\n }\n\n get parent(): HTMLElement {\n return this.parentContainer?.nativeElement || this.parentContainer;\n }\n\n get child(): HTMLElement {\n return this.childContainer.nativeElement || this.childContainer;\n }\n\n readonly resizeStream = new Subject<Event>();\n\n private readonly debounceInterval: number = 100;\n\n private resizeSubscription = Subscription.EMPTY;\n private contentObserverSubscription = Subscription.EMPTY;\n private focusMonitorSubscription = Subscription.EMPTY;\n\n @ContentChild('kbqTitleText', { descendants: true, static: true })\n private childContainer: ElementRef;\n\n @ContentChild('kbqTitleContainer')\n private parentContainer: ElementRef;\n\n constructor(@Host() @Optional() @Inject(KBQ_TITLE_TEXT_REF) private componentInstance?: KbqTitleTextRef) {\n super();\n }\n\n ngAfterViewInit() {\n this.parentContainer = this.parentContainer || this.componentInstance?.parentTextElement || this.elementRef;\n this.childContainer = this.childContainer || this.componentInstance?.textElement || this.elementRef;\n this.content = this.viewValue;\n\n this.resizeSubscription = this.resizeStream\n .pipe(debounceTime(this.debounceInterval))\n .subscribe(() => (this.disabled = !this.isOverflown));\n\n this.contentObserverSubscription = this.contentObserver\n .observe(this.parent)\n .pipe(throttleTime(this.debounceInterval))\n .subscribe(() => {\n this.disabled = !this.isOverflown;\n this.content = this.viewValue;\n });\n\n this.focusMonitorSubscription = this.focusMonitor\n .monitor(this.elementRef)\n .subscribe((origin) => (origin === 'keyboard' ? this.handleElementEnter() : this.hideTooltip()));\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\n\n this.resizeSubscription.unsubscribe();\n this.contentObserverSubscription.unsubscribe();\n this.focusMonitorSubscription.unsubscribe();\n this.focusMonitor.stopMonitoring(this.elementRef);\n }\n\n handleElementEnter() {\n this.disabled = !this.isOverflown;\n }\n\n hideTooltip() {\n this.disabled = true;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { KbqToolTipModule } from '@koobiq/components/tooltip';\nimport { KbqTitleDirective } from './title.directive';\n\n@NgModule({\n imports: [KbqToolTipModule],\n declarations: [KbqTitleDirective],\n exports: [KbqTitleDirective]\n})\nexport class KbqTitleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -76,6 +76,6 @@ export declare class KbqFilterBar {
76
76
  private updateLocaleParams;
77
77
  private initDefaultParams;
78
78
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqFilterBar, never>;
79
- static ɵcmp: i0.ɵɵComponentDeclaration<KbqFilterBar, "kbq-filter-bar, [kbq-filter-bar]", never, { "selectedAllEqualsSelectedNothing": { "alias": "selectedAllEqualsSelectedNothing"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "pipeTemplates": { "alias": "pipeTemplates"; "required": false; }; }, { "filterChange": "filterChange"; "onChangePipe": "onChangePipe"; "onRemovePipe": "onRemovePipe"; "onClearPipe": "onClearPipe"; "onClosePipe": "onClosePipe"; }, ["filters", "filterReset"], ["kbq-filters", "*", "kbq-pipe-add", "kbq-filter-reset", "kbq-filter-search, [kbq-filter-search]", "kbq-filter-refresher, [kbq-filter-refresher]"], true, never>;
79
+ static ɵcmp: i0.ɵɵComponentDeclaration<KbqFilterBar, "kbq-filter-bar, [kbq-filter-bar]", never, { "selectedAllEqualsSelectedNothing": { "alias": "selectedAllEqualsSelectedNothing"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "pipeTemplates": { "alias": "pipeTemplates"; "required": false; }; }, { "filterChange": "filterChange"; "onChangePipe": "onChangePipe"; "onRemovePipe": "onRemovePipe"; "onClearPipe": "onClearPipe"; "onClosePipe": "onClosePipe"; }, ["filters", "filterReset"], ["kbq-filters", "*", "kbq-pipe-add", "kbq-filter-reset", "kbq-filter-search, [kbq-filter-search], kbq-search-expandable", "kbq-filter-refresher, [kbq-filter-refresher]"], true, never>;
80
80
  static ngAcceptInputType_selectedAllEqualsSelectedNothing: unknown;
81
81
  }
@@ -1,10 +1,12 @@
1
- import { EventEmitter } from '@angular/core';
1
+ import { AfterViewInit, EventEmitter } from '@angular/core';
2
2
  import { UntypedFormControl } from '@angular/forms';
3
3
  import * as i0 from "@angular/core";
4
- export declare class KbqFilterBarSearch {
4
+ export declare const defaultOnSearchTimeout = 0;
5
+ export declare class KbqFilterBarSearch implements AfterViewInit {
5
6
  /** KbqFilterBar instance */
6
7
  private readonly filterBar;
7
8
  private readonly changeDetectorRef;
9
+ private readonly destroyRef;
8
10
  private input;
9
11
  private button;
10
12
  private tooltip;
@@ -15,18 +17,29 @@ export declare class KbqFilterBarSearch {
15
17
  /** localized data
16
18
  * @docs-private */
17
19
  get localeData(): any;
20
+ /**
21
+ /** Timeout in milliseconds for emit event. The default value is taken from defaultOnSearchTimeout
22
+ * @default 0
23
+ */
24
+ readonly onSearchTimeout: import("@angular/core").InputSignalWithTransform<number, unknown>;
25
+ /** Emit event by enter or not. Default is false */
26
+ readonly emitValueByEnter: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
27
+ /** Value of the field after initialization */
28
+ readonly initialValue: import("@angular/core").InputSignal<unknown>;
18
29
  /** event that is generated whenever a user performs a search. */
19
30
  readonly onSearch: EventEmitter<string>;
20
- constructor();
31
+ ngAfterViewInit(): void;
21
32
  openSearch(): void;
22
33
  /** @docs-private */
23
34
  onBlur(): void;
24
35
  /** @docs-private */
25
36
  onEscape(): void;
26
37
  /** @docs-private */
38
+ onEnter(): void;
39
+ /** @docs-private */
27
40
  onClear(): void;
28
41
  /** @docs-private */
29
42
  onReset: () => void;
30
43
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqFilterBarSearch, never>;
31
- static ɵcmp: i0.ɵɵComponentDeclaration<KbqFilterBarSearch, "kbq-filter-search, [kbq-filter-search]", never, {}, { "onSearch": "onSearch"; }, never, never, true, never>;
44
+ static ɵcmp: i0.ɵɵComponentDeclaration<KbqFilterBarSearch, "kbq-filter-search, [kbq-filter-search]", never, { "onSearchTimeout": { "alias": "onSearchTimeout"; "required": false; "isSignal": true; }; "emitValueByEnter": { "alias": "emitValueByEnter"; "required": false; "isSignal": true; }; "initialValue": { "alias": "initialValue"; "required": false; "isSignal": true; }; }, { "onSearch": "onSearch"; }, never, never, true, never>;
32
45
  }
@@ -1,6 +1,6 @@
1
1
  import { ElementRef, EventEmitter, OnDestroy, Renderer2 } from '@angular/core';
2
2
  import { ControlValueAccessor } from '@angular/forms';
3
- import { KbqLocaleService } from '@koobiq/components/core';
3
+ import { KbqLocaleService, KbqNumberInputLocaleConfig } from '@koobiq/components/core';
4
4
  import { KbqFormFieldControl } from '@koobiq/components/form-field';
5
5
  import { Subject } from 'rxjs';
6
6
  import * as i0 from "@angular/core";
@@ -57,8 +57,8 @@ export declare class KbqNumberInput implements KbqFormFieldControl<any>, Control
57
57
  get nativeElement(): HTMLInputElement;
58
58
  get viewValue(): string;
59
59
  get ngControl(): any;
60
- protected get fractionSeparator(): string;
61
- protected get groupSeparator(): string[];
60
+ protected get fractionSeparator(): KbqNumberInputLocaleConfig['fractionSeparator'];
61
+ protected get groupSeparator(): KbqNumberInputLocaleConfig['groupSeparator'];
62
62
  private control;
63
63
  private config;
64
64
  private valueFromPaste;
@@ -4,7 +4,7 @@ import { SelectionModel } from '@angular/cdk/collections';
4
4
  import { AfterContentInit, AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, NgZone, OnDestroy, OnInit, QueryList } from '@angular/core';
5
5
  import { ControlValueAccessor } from '@angular/forms';
6
6
  import { FocusKeyManager, IFocusableOption } from '@koobiq/cdk/a11y';
7
- import { KbqOptgroup, KbqOptionActionComponent, KbqTitleTextRef, MultipleMode } from '@koobiq/components/core';
7
+ import { KbqOptgroup, KbqOptionActionComponent, KbqPseudoCheckbox, KbqTitleTextRef, MultipleMode } from '@koobiq/components/core';
8
8
  import { KbqDropdownTrigger } from '@koobiq/components/dropdown';
9
9
  import { KbqTooltipTrigger } from '@koobiq/components/tooltip';
10
10
  import { Observable, Subject } from 'rxjs';
@@ -150,6 +150,7 @@ export declare class KbqListOption implements OnDestroy, OnInit, IFocusableOptio
150
150
  actionButton: KbqOptionActionComponent;
151
151
  tooltipTrigger: KbqTooltipTrigger;
152
152
  dropdownTrigger: KbqDropdownTrigger;
153
+ pseudoCheckbox: KbqPseudoCheckbox;
153
154
  text: ElementRef;
154
155
  textElement: ElementRef;
155
156
  checkboxPosition: 'before' | 'after';
@@ -172,6 +173,7 @@ export declare class KbqListOption implements OnDestroy, OnInit, IFocusableOptio
172
173
  set selected(value: boolean);
173
174
  private _selected;
174
175
  get tabIndex(): any;
176
+ get externalPseudoCheckbox(): boolean;
175
177
  constructor(elementRef: ElementRef<HTMLElement>, changeDetector: ChangeDetectorRef, ngZone: NgZone, listSelection: KbqListSelection, group: KbqOptgroup);
176
178
  ngOnInit(): void;
177
179
  ngOnDestroy(): void;
@@ -187,7 +189,7 @@ export declare class KbqListOption implements OnDestroy, OnInit, IFocusableOptio
187
189
  blur(): void;
188
190
  getHostElement(): HTMLElement;
189
191
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqListOption, [null, null, null, null, { optional: true; }]>;
190
- static ɵcmp: i0.ɵɵComponentDeclaration<KbqListOption, "kbq-list-option", ["kbqListOption"], { "checkboxPosition": { "alias": "checkboxPosition"; "required": false; }; "value": { "alias": "value"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "showCheckbox": { "alias": "showCheckbox"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; }, {}, ["actionButton", "tooltipTrigger", "dropdownTrigger"], ["[kbq-icon]", "*", "[kbq-list-option-caption]", "kbq-option-action"], false, never>;
192
+ static ɵcmp: i0.ɵɵComponentDeclaration<KbqListOption, "kbq-list-option", ["kbqListOption"], { "checkboxPosition": { "alias": "checkboxPosition"; "required": false; }; "value": { "alias": "value"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "showCheckbox": { "alias": "showCheckbox"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; }, {}, ["actionButton", "tooltipTrigger", "dropdownTrigger", "pseudoCheckbox"], ["kbq-pseudo-checkbox", "[kbq-icon]", "*", "[kbq-list-option-caption]", "kbq-option-action"], false, never>;
191
193
  static ngAcceptInputType_disabled: unknown;
192
194
  static ngAcceptInputType_selected: unknown;
193
195
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@koobiq/components",
3
- "version": "18.38.0",
3
+ "version": "18.39.0",
4
4
  "description": "koobiq",
5
5
  "repository": {
6
6
  "type": "git",
@@ -24,9 +24,9 @@
24
24
  "@angular/cdk": "^18.0.0",
25
25
  "@angular/core": "^18.0.0",
26
26
  "@angular/forms": "^18.0.0",
27
- "@koobiq/cdk": "18.38.0",
28
- "@koobiq/angular-moment-adapter": "18.38.0",
29
- "@koobiq/angular-luxon-adapter": "18.38.0",
27
+ "@koobiq/cdk": "18.39.0",
28
+ "@koobiq/angular-moment-adapter": "18.39.0",
29
+ "@koobiq/angular-luxon-adapter": "18.39.0",
30
30
  "@koobiq/date-formatter": "^3.2.3",
31
31
  "@koobiq/icons": "^10.4.0",
32
32
  "@koobiq/tokens-builder": "3.11.0",
@@ -25,7 +25,7 @@ $arrow-padding: 24px;
25
25
  &.kbq-popover_small {
26
26
  max-width: var(--kbq-popover-size-container-width-small);
27
27
 
28
- & .kbq-popover__content {
28
+ & .kbq-popover__content_default-paddings.kbq-popover__content {
29
29
  padding: var(--kbq-size-l);
30
30
  }
31
31
  }
@@ -61,7 +61,7 @@ $arrow-padding: 24px;
61
61
  border-radius: var(--kbq-popover-size-container-border-radius);
62
62
 
63
63
  &.kbq-popover__container_with-header {
64
- .kbq-popover__content {
64
+ .kbq-popover__content_default-paddings.kbq-popover__content {
65
65
  padding-top: var(--kbq-size-s);
66
66
  }
67
67
  }
@@ -87,6 +87,7 @@ $arrow-padding: 24px;
87
87
 
88
88
  .kbq-popover__header {
89
89
  display: flex;
90
+ flex-shrink: 0;
90
91
  align-items: center;
91
92
 
92
93
  overflow: hidden;
@@ -27,8 +27,8 @@ function ngAdd(options) {
27
27
  }
28
28
  // Installing dependencies
29
29
  utils_packageConfig.addPackageToPackageJson(tree, '@angular/cdk', "^18.2.14");
30
- utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/cdk', "^18.38.0");
31
- utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/angular-luxon-adapter', "^18.38.0");
30
+ utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/cdk', "^18.39.0");
31
+ utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/angular-luxon-adapter', "^18.39.0");
32
32
  utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/date-formatter', "^3.4.0");
33
33
  utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/date-adapter', "^3.4.0");
34
34
  utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/icons', "^10.10.0");
@@ -9,6 +9,8 @@ export declare class KbqTitleDirective extends KbqTooltipTrigger implements Afte
9
9
  set trigger(value: string);
10
10
  get trigger(): string;
11
11
  get isOverflown(): boolean;
12
+ get isHorizontalOverflown(): boolean;
13
+ get isVerticalOverflown(): boolean;
12
14
  get viewValue(): string;
13
15
  get parent(): HTMLElement;
14
16
  get child(): HTMLElement;