@mintplayer/ng-bootstrap 21.4.0 → 21.4.2
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.
- package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs +8 -3
- package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-navbar.mjs +23 -4
- package/fesm2022/mintplayer-ng-bootstrap-navbar.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-offcanvas.mjs +2 -1
- package/fesm2022/mintplayer-ng-bootstrap-offcanvas.mjs.map +1 -1
- package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs +3 -0
- package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs.map +1 -1
- package/package.json +2 -2
- package/types/mintplayer-ng-bootstrap-carousel.d.ts +1 -0
- package/types/mintplayer-ng-bootstrap-navbar.d.ts +1 -0
- package/types/mintplayer-ng-bootstrap-offcanvas.d.ts +1 -0
- package/types/mintplayer-ng-bootstrap-searchbox.d.ts +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mintplayer-ng-bootstrap-offcanvas.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/providers/offcanvas-content.provider.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas/offcanvas.component.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas/offcanvas.component.html","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/providers/portal-factory.provider.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas-host/offcanvas-host.component.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas-host/offcanvas-host.component.html","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/directives/offcanvas-content/offcanvas-content.directive.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/directives/offcanvas-close/offcanvas-close.directive.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas-header/offcanvas-header.component.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas-header/offcanvas-header.component.html","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas-body/offcanvas-body.component.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas-body/offcanvas-body.component.html","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/directives/offcanvas-push/offcanvas-push.directive.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/offcanvas.module.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/mintplayer-ng-bootstrap-offcanvas.ts"],"sourcesContent":["import { InjectionToken, TemplateRef } from \"@angular/core\";\n\nexport const OFFCANVAS_CONTENT = new InjectionToken<TemplateRef<any>>('OffcanvasContent');","import { isPlatformServer } from '@angular/common';\nimport { Component, computed, effect, Inject, output, PLATFORM_ID, signal, TemplateRef, untracked } from '@angular/core';\nimport { FadeInOutAnimation } from '@mintplayer/ng-animations';\nimport { Position } from '@mintplayer/ng-bootstrap';\nimport { OFFCANVAS_CONTENT } from '../../providers/offcanvas-content.provider';\n\n@Component({\n selector: 'bs-offcanvas-holder',\n templateUrl: './offcanvas.component.html',\n styleUrls: ['./offcanvas.component.scss'],\n standalone: false,\n animations: [FadeInOutAnimation],\n})\nexport class BsOffcanvasComponent {\n\n constructor(@Inject(OFFCANVAS_CONTENT) contentTemplate: TemplateRef<any>, @Inject(PLATFORM_ID) private platformId: Object) {\n this.contentTemplate = contentTemplate;\n\n // Effect to handle position changes - disable transition temporarily\n effect(() => {\n const position = this.position();\n // Use untracked to avoid creating dependency on disableTransition\n untracked(() => {\n this.disableTransition.set(true);\n this.offcanvasClass.set(`offcanvas-${position}`);\n // Re-enable transitions after browser has processed position change\n if (!isPlatformServer(this.platformId)) {\n requestAnimationFrame(() => {\n this.disableTransition.set(false);\n });\n }\n });\n });\n\n // Effect to handle visibility changes\n effect(() => {\n const isVisible = this.isVisible();\n untracked(() => {\n if (isVisible) {\n // When showing: set visibility immediately, then add .show class after position is applied\n this.visibility.set('visible');\n // Delay adding .show class to allow position to be applied first\n if (!isPlatformServer(this.platformId)) {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n this.show.set(true);\n });\n });\n }\n } else {\n // When hiding: remove .show class immediately, delay visibility for animation\n this.show.set(false);\n setTimeout(() => {\n if (!this.isVisible()) {\n this.visibility.set('hidden');\n }\n }, 300);\n }\n });\n });\n }\n\n contentTemplate: TemplateRef<any>;\n\n // Core state signals\n position = signal<Position>('bottom');\n size = signal<number | null>(null);\n isVisible = signal<boolean>(false);\n hasBackdrop = signal<boolean>(false);\n\n // Internal state signals\n disableTransition = signal<boolean>(false);\n offcanvasClass = signal<string | null>(null);\n visibility = signal<string>('hidden');\n show = signal<boolean>(false);\n\n // Computed signals\n width = computed(() => {\n const position = this.position();\n const size = this.size();\n return ['start', 'end'].includes(position) ? size : null;\n });\n\n height = computed(() => {\n const position = this.position();\n const size = this.size();\n return ['top', 'bottom'].includes(position) ? size : null;\n });\n\n overflowClass = computed(() => {\n const position = this.position();\n return ['top', 'bottom'].includes(position) ? 'overflow-y-hidden' : 'overflow-x-hidden';\n });\n\n showBackdrop = computed(() => {\n return this.hasBackdrop() && this.isVisible();\n });\n\n // Outputs\n isVisibleChange = output<boolean>();\n backdropClick = output<MouseEvent>();\n\n onBackdropClick(ev: MouseEvent) {\n this.backdropClick.emit(ev);\n }\n\n}\n","@if (showBackdrop()) {\n <div [@fadeInOut]=\"{value: ':leave', params: {duration: '300ms'} }\">\n <div class=\"modal-backdrop show\" (click)=\"onBackdropClick($event)\"></div>\n </div>\n}\n<div class=\"offcanvas\"\n [class.show]=\"show()\"\n [class.disable-transition]=\"disableTransition()\"\n [class]=\"[offcanvasClass(), overflowClass()]\"\n [style.height.px]=\"height()\"\n [style.width.px]=\"width()\">\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n</div>","import { ComponentPortal } from \"@angular/cdk/portal\";\nimport { InjectionToken, Injector } from \"@angular/core\";\n\nexport const PORTAL_FACTORY = new InjectionToken<(injector: Injector) => ComponentPortal<any>>('OffcanvasPortalFactory');","import { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { AfterViewInit, Component, ComponentRef, effect, inject, Injector, model, OnDestroy, output, signal, TemplateRef } from '@angular/core';\nimport { Position } from '@mintplayer/ng-bootstrap';\nimport { OFFCANVAS_CONTENT } from '../../providers/offcanvas-content.provider';\nimport { PORTAL_FACTORY } from '../../providers/portal-factory.provider';\nimport { BsOffcanvasComponent } from '../offcanvas/offcanvas.component';\n\n@Component({\n selector: 'bs-offcanvas',\n templateUrl: './offcanvas-host.component.html',\n styleUrls: ['./offcanvas-host.component.scss'],\n standalone: false,\n})\nexport class BsOffcanvasHostComponent implements AfterViewInit, OnDestroy {\n private overlayService = inject(Overlay);\n private rootInjector = inject(Injector);\n private portalFactory = inject<(injector: Injector) => ComponentPortal<any>>(PORTAL_FACTORY);\n\n constructor() {\n // Effect to sync isVisible with the inner component\n effect(() => {\n const isVisible = this.isVisible();\n if (this.component) {\n this.component.instance.isVisible.set(isVisible);\n }\n });\n\n // Effect to sync position with the inner component\n effect(() => {\n const position = this.position();\n if (this.component && this.viewInited()) {\n this.component.instance.position.set(position);\n }\n });\n\n // Effect to sync size with the inner component\n effect(() => {\n const size = this.size();\n if (this.component && this.viewInited()) {\n this.component.instance.size.set(size);\n }\n });\n\n // Effect to sync hasBackdrop with the inner component\n effect(() => {\n const hasBackdrop = this.hasBackdrop();\n if (this.component && this.viewInited()) {\n this.component.instance.hasBackdrop.set(hasBackdrop);\n }\n });\n }\n\n content!: TemplateRef<any>;\n overlayRef!: OverlayRef;\n component!: ComponentRef<BsOffcanvasComponent>;\n\n // Signals\n viewInited = signal<boolean>(false);\n isVisible = model<boolean>(false);\n size = model<number | null>(null);\n position = model<Position>('bottom');\n hasBackdrop = model<boolean>(false);\n\n backdropClick = output<MouseEvent>();\n\n ngAfterViewInit() {\n const injector = Injector.create({\n providers: [\n { provide: OFFCANVAS_CONTENT, useValue: this.content },\n ],\n parent: this.rootInjector,\n });\n // const portal = new ComponentPortal(BsOffcanvasComponent, null, injector);\n const portal = this.portalFactory(injector);\n this.overlayRef = this.overlayService.create({\n scrollStrategy: this.overlayService.scrollStrategies.reposition(),\n positionStrategy: this.overlayService.position().global()\n .top('0').left('0').bottom('0').right('0'),\n hasBackdrop: false\n });\n\n this.component = this.overlayRef.attach<BsOffcanvasComponent>(portal);\n\n this.component.instance.backdropClick.subscribe((ev) => this.backdropClick.emit(ev));\n\n // Initialize the inner component with current values\n this.component.instance.isVisible.set(this.isVisible());\n this.component.instance.position.set(this.position());\n this.component.instance.size.set(this.size());\n this.component.instance.hasBackdrop.set(this.hasBackdrop());\n\n this.viewInited.set(true);\n }\n\n ngOnDestroy() {\n this.isVisible.set(false);\n setTimeout(() => this.overlayRef && this.overlayRef.dispose(), 3000);\n }\n\n}\n","<bs-has-overlay></bs-has-overlay>\n","import { Directive, inject, TemplateRef } from '@angular/core';\nimport { BsOffcanvasHostComponent } from '../../components/offcanvas-host/offcanvas-host.component';\n\n@Directive({\n selector: '[bsOffcanvasContent]',\n standalone: false,\n})\nexport class BsOffcanvasContentDirective {\n constructor() {\n const offcanvasHost = inject(BsOffcanvasHostComponent);\n const template = inject(TemplateRef);\n offcanvasHost.content = template;\n }\n}\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { BsOffcanvasHostComponent } from '../../components/offcanvas-host/offcanvas-host.component';\n\n@Directive({\n selector: '[bsOffcanvasClose]',\n standalone: false,\n})\nexport class BsOffcanvasCloseDirective {\n private offcanvas = inject(BsOffcanvasHostComponent);\n\n @HostListener('click') onClick() {\n this.offcanvas.isVisible.set(false);\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'bs-offcanvas-header',\n templateUrl: './offcanvas-header.component.html',\n styleUrls: ['./offcanvas-header.component.scss'],\n standalone: false,\n})\nexport class OffcanvasHeaderComponent {}\n","<div class=\"offcanvas-header\">\n <ng-content></ng-content>\n</div>","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'bs-offcanvas-body',\n templateUrl: './offcanvas-body.component.html',\n styleUrls: ['./offcanvas-body.component.scss'],\n standalone: false,\n})\nexport class OffcanvasBodyComponent {\n @Input() noPadding = false;\n}\n","<div class=\"offcanvas-body\" [class.p-0]=\"noPadding\">\n <ng-content></ng-content>\n</div>","import { animate, AnimationBuilder, AnimationMetadata, style } from '@angular/animations';\nimport { Directive, effect, ElementRef, inject, input } from '@angular/core';\nimport { BsOffcanvasHostComponent } from '../../components';\n\n@Directive({\n selector: '[bsOffcanvasPush]',\n standalone: false,\n})\nexport class BsOffcanvasPushDirective {\n private element = inject<ElementRef<HTMLElement>>(ElementRef);\n private builder = inject(AnimationBuilder);\n\n constructor() {\n let previousIsVisible: boolean | null = null;\n\n effect(() => {\n const offcanvas = this.offcanvas();\n if (!offcanvas) return;\n\n const isVisible = offcanvas.isVisible();\n\n // Skip the first run (initial state)\n if (previousIsVisible === null) {\n previousIsVisible = isVisible;\n return;\n }\n\n // Skip if no change\n if (previousIsVisible === isVisible) return;\n\n previousIsVisible = isVisible;\n\n let data: AnimationMetadata[];\n if (isVisible) {\n data = [\n style({ 'margin-left': '0', 'margin-right': '0' }),\n animate('250ms', style({ 'margin-left': '400px', 'margin-right': '-400px' })),\n ];\n let el = this.element.nativeElement;\n while (el.parentElement && !['scroll', 'visible'].includes(el.parentElement.style.overflowX)) {\n el = el.parentElement;\n }\n if (this.element.nativeElement.parentElement) {\n this.initialOverflowX = {\n value: this.element.nativeElement.parentElement.style.overflowX,\n element: el,\n };\n el.style.overflowX = 'hidden';\n }\n } else {\n data = [\n style({ 'margin-left': '400px', 'margin-right': '-400px' }),\n animate('250ms', style({ 'margin-left': '0', 'margin-right': '0' })),\n ];\n }\n const b = this.builder.build(data);\n const player = b.create(this.element.nativeElement, { });\n\n if (!isVisible) {\n player.onDone(() => {\n if (this.element.nativeElement.parentElement && this.initialOverflowX) {\n this.initialOverflowX.element.style.overflowX = this.initialOverflowX.value;\n }\n });\n }\n\n player.play();\n });\n }\n\n private initialOverflowX?: {element: HTMLElement, value: string};\n\n offcanvas = input<BsOffcanvasHostComponent | null>(null, { alias: 'bsOffcanvasPush' });\n}\n","import { Injector, NgModule } from '@angular/core';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { BsOffcanvasComponent } from './components/offcanvas/offcanvas.component';\nimport { BsOffcanvasContentDirective } from './directives/offcanvas-content/offcanvas-content.directive';\nimport { BsOffcanvasHostComponent } from './components/offcanvas-host/offcanvas-host.component';\nimport { BsOffcanvasCloseDirective } from './directives/offcanvas-close/offcanvas-close.directive';\nimport { OffcanvasHeaderComponent } from './components/offcanvas-header/offcanvas-header.component';\nimport { OffcanvasBodyComponent } from './components/offcanvas-body/offcanvas-body.component';\nimport { PORTAL_FACTORY } from './providers/portal-factory.provider';\nimport { BsHasOverlayComponent } from '@mintplayer/ng-bootstrap/has-overlay';\nimport { BsOffcanvasPushDirective } from './directives/offcanvas-push/offcanvas-push.directive';\n\n\n\n@NgModule({\n declarations: [\n BsOffcanvasComponent,\n BsOffcanvasContentDirective,\n BsOffcanvasHostComponent,\n BsOffcanvasCloseDirective,\n OffcanvasHeaderComponent,\n OffcanvasBodyComponent,\n BsOffcanvasPushDirective\n ],\n imports: [\n AsyncPipe,\n NgTemplateOutlet,\n OverlayModule,\n BsHasOverlayComponent\n ],\n exports: [\n BsOffcanvasComponent,\n BsOffcanvasContentDirective,\n BsOffcanvasHostComponent,\n BsOffcanvasCloseDirective,\n OffcanvasHeaderComponent,\n OffcanvasBodyComponent,\n BsOffcanvasPushDirective\n ],\n providers: [{\n provide: PORTAL_FACTORY,\n useValue: (injector: Injector) => {\n return new ComponentPortal(BsOffcanvasComponent, null, injector);\n }\n }]\n})\nexport class BsOffcanvasModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mintplayer-ng-bootstrap-offcanvas.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/providers/offcanvas-content.provider.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas/offcanvas.component.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas/offcanvas.component.html","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/providers/portal-factory.provider.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas-host/offcanvas-host.component.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas-host/offcanvas-host.component.html","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/directives/offcanvas-content/offcanvas-content.directive.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/directives/offcanvas-close/offcanvas-close.directive.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas-header/offcanvas-header.component.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas-header/offcanvas-header.component.html","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas-body/offcanvas-body.component.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/components/offcanvas-body/offcanvas-body.component.html","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/directives/offcanvas-push/offcanvas-push.directive.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/src/offcanvas.module.ts","../../../../libs/mintplayer-ng-bootstrap/offcanvas/mintplayer-ng-bootstrap-offcanvas.ts"],"sourcesContent":["import { InjectionToken, TemplateRef } from \"@angular/core\";\n\nexport const OFFCANVAS_CONTENT = new InjectionToken<TemplateRef<any>>('OffcanvasContent');","import { isPlatformServer } from '@angular/common';\nimport { Component, computed, effect, Inject, output, PLATFORM_ID, signal, TemplateRef, untracked } from '@angular/core';\nimport { FadeInOutAnimation } from '@mintplayer/ng-animations';\nimport { Position } from '@mintplayer/ng-bootstrap';\nimport { OFFCANVAS_CONTENT } from '../../providers/offcanvas-content.provider';\n\n@Component({\n selector: 'bs-offcanvas-holder',\n templateUrl: './offcanvas.component.html',\n styleUrls: ['./offcanvas.component.scss'],\n standalone: false,\n animations: [FadeInOutAnimation],\n})\nexport class BsOffcanvasComponent {\n\n constructor(@Inject(OFFCANVAS_CONTENT) contentTemplate: TemplateRef<any>, @Inject(PLATFORM_ID) private platformId: Object) {\n this.contentTemplate = contentTemplate;\n\n // Effect to handle position changes - disable transition temporarily\n effect(() => {\n const position = this.position();\n // Use untracked to avoid creating dependency on disableTransition\n untracked(() => {\n this.disableTransition.set(true);\n this.offcanvasClass.set(`offcanvas-${position}`);\n // Re-enable transitions after browser has processed position change\n if (!isPlatformServer(this.platformId)) {\n requestAnimationFrame(() => {\n this.disableTransition.set(false);\n });\n }\n });\n });\n\n // Effect to handle visibility changes\n effect(() => {\n const isVisible = this.isVisible();\n untracked(() => {\n if (isVisible) {\n // When showing: set visibility immediately, then add .show class after position is applied\n this.visibility.set('visible');\n // Delay adding .show class to allow position to be applied first\n if (!isPlatformServer(this.platformId)) {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n this.show.set(true);\n });\n });\n }\n } else {\n // When hiding: remove .show class immediately, delay visibility for animation\n this.show.set(false);\n setTimeout(() => {\n if (!this.isVisible()) {\n this.visibility.set('hidden');\n }\n }, 300);\n }\n });\n });\n }\n\n contentTemplate: TemplateRef<any>;\n\n // Core state signals\n position = signal<Position>('bottom');\n size = signal<number | null>(null);\n isVisible = signal<boolean>(false);\n hasBackdrop = signal<boolean>(false);\n\n // Internal state signals\n disableTransition = signal<boolean>(false);\n offcanvasClass = signal<string | null>(null);\n visibility = signal<string>('hidden');\n show = signal<boolean>(false);\n\n // Computed signals\n width = computed(() => {\n const position = this.position();\n const size = this.size();\n return ['start', 'end'].includes(position) ? size : null;\n });\n\n height = computed(() => {\n const position = this.position();\n const size = this.size();\n return ['top', 'bottom'].includes(position) ? size : null;\n });\n\n overflowClass = computed(() => {\n const position = this.position();\n return ['top', 'bottom'].includes(position) ? 'overflow-y-hidden' : 'overflow-x-hidden';\n });\n\n showBackdrop = computed(() => {\n return this.hasBackdrop() && this.isVisible();\n });\n\n // Outputs\n isVisibleChange = output<boolean>();\n backdropClick = output<MouseEvent>();\n\n onBackdropClick(ev: MouseEvent) {\n this.backdropClick.emit(ev);\n }\n\n}\n","@if (showBackdrop()) {\n <div [@fadeInOut]=\"{value: ':leave', params: {duration: '300ms'} }\">\n <div class=\"modal-backdrop show\" (click)=\"onBackdropClick($event)\"></div>\n </div>\n}\n<div class=\"offcanvas\"\n [class.show]=\"show()\"\n [class.disable-transition]=\"disableTransition()\"\n [class]=\"[offcanvasClass(), overflowClass()]\"\n [style.height.px]=\"height()\"\n [style.width.px]=\"width()\">\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n</div>","import { ComponentPortal } from \"@angular/cdk/portal\";\nimport { InjectionToken, Injector } from \"@angular/core\";\n\nexport const PORTAL_FACTORY = new InjectionToken<(injector: Injector) => ComponentPortal<any>>('OffcanvasPortalFactory');","import { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { AfterViewInit, Component, ComponentRef, effect, inject, Injector, model, OnDestroy, output, OutputRefSubscription, signal, TemplateRef } from '@angular/core';\nimport { Position } from '@mintplayer/ng-bootstrap';\nimport { OFFCANVAS_CONTENT } from '../../providers/offcanvas-content.provider';\nimport { PORTAL_FACTORY } from '../../providers/portal-factory.provider';\nimport { BsOffcanvasComponent } from '../offcanvas/offcanvas.component';\n\n@Component({\n selector: 'bs-offcanvas',\n templateUrl: './offcanvas-host.component.html',\n styleUrls: ['./offcanvas-host.component.scss'],\n standalone: false,\n})\nexport class BsOffcanvasHostComponent implements AfterViewInit, OnDestroy {\n private overlayService = inject(Overlay);\n private rootInjector = inject(Injector);\n private portalFactory = inject<(injector: Injector) => ComponentPortal<any>>(PORTAL_FACTORY);\n\n constructor() {\n // Effect to sync isVisible with the inner component\n effect(() => {\n const isVisible = this.isVisible();\n if (this.component) {\n this.component.instance.isVisible.set(isVisible);\n }\n });\n\n // Effect to sync position with the inner component\n effect(() => {\n const position = this.position();\n if (this.component && this.viewInited()) {\n this.component.instance.position.set(position);\n }\n });\n\n // Effect to sync size with the inner component\n effect(() => {\n const size = this.size();\n if (this.component && this.viewInited()) {\n this.component.instance.size.set(size);\n }\n });\n\n // Effect to sync hasBackdrop with the inner component\n effect(() => {\n const hasBackdrop = this.hasBackdrop();\n if (this.component && this.viewInited()) {\n this.component.instance.hasBackdrop.set(hasBackdrop);\n }\n });\n }\n\n content!: TemplateRef<any>;\n overlayRef!: OverlayRef;\n component!: ComponentRef<BsOffcanvasComponent>;\n private backdropClickSubscription?: OutputRefSubscription;\n\n // Signals\n viewInited = signal<boolean>(false);\n isVisible = model<boolean>(false);\n size = model<number | null>(null);\n position = model<Position>('bottom');\n hasBackdrop = model<boolean>(false);\n\n backdropClick = output<MouseEvent>();\n\n ngAfterViewInit() {\n const injector = Injector.create({\n providers: [\n { provide: OFFCANVAS_CONTENT, useValue: this.content },\n ],\n parent: this.rootInjector,\n });\n // const portal = new ComponentPortal(BsOffcanvasComponent, null, injector);\n const portal = this.portalFactory(injector);\n this.overlayRef = this.overlayService.create({\n scrollStrategy: this.overlayService.scrollStrategies.reposition(),\n positionStrategy: this.overlayService.position().global()\n .top('0').left('0').bottom('0').right('0'),\n hasBackdrop: false\n });\n\n this.component = this.overlayRef.attach<BsOffcanvasComponent>(portal);\n\n this.backdropClickSubscription = this.component.instance.backdropClick.subscribe((ev) => this.backdropClick.emit(ev));\n\n // Initialize the inner component with current values\n this.component.instance.isVisible.set(this.isVisible());\n this.component.instance.position.set(this.position());\n this.component.instance.size.set(this.size());\n this.component.instance.hasBackdrop.set(this.hasBackdrop());\n\n this.viewInited.set(true);\n }\n\n ngOnDestroy() {\n this.backdropClickSubscription?.unsubscribe();\n this.isVisible.set(false);\n setTimeout(() => this.overlayRef && this.overlayRef.dispose(), 3000);\n }\n\n}\n","<bs-has-overlay></bs-has-overlay>\n","import { Directive, inject, TemplateRef } from '@angular/core';\nimport { BsOffcanvasHostComponent } from '../../components/offcanvas-host/offcanvas-host.component';\n\n@Directive({\n selector: '[bsOffcanvasContent]',\n standalone: false,\n})\nexport class BsOffcanvasContentDirective {\n constructor() {\n const offcanvasHost = inject(BsOffcanvasHostComponent);\n const template = inject(TemplateRef);\n offcanvasHost.content = template;\n }\n}\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { BsOffcanvasHostComponent } from '../../components/offcanvas-host/offcanvas-host.component';\n\n@Directive({\n selector: '[bsOffcanvasClose]',\n standalone: false,\n})\nexport class BsOffcanvasCloseDirective {\n private offcanvas = inject(BsOffcanvasHostComponent);\n\n @HostListener('click') onClick() {\n this.offcanvas.isVisible.set(false);\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'bs-offcanvas-header',\n templateUrl: './offcanvas-header.component.html',\n styleUrls: ['./offcanvas-header.component.scss'],\n standalone: false,\n})\nexport class OffcanvasHeaderComponent {}\n","<div class=\"offcanvas-header\">\n <ng-content></ng-content>\n</div>","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'bs-offcanvas-body',\n templateUrl: './offcanvas-body.component.html',\n styleUrls: ['./offcanvas-body.component.scss'],\n standalone: false,\n})\nexport class OffcanvasBodyComponent {\n @Input() noPadding = false;\n}\n","<div class=\"offcanvas-body\" [class.p-0]=\"noPadding\">\n <ng-content></ng-content>\n</div>","import { animate, AnimationBuilder, AnimationMetadata, style } from '@angular/animations';\nimport { Directive, effect, ElementRef, inject, input } from '@angular/core';\nimport { BsOffcanvasHostComponent } from '../../components';\n\n@Directive({\n selector: '[bsOffcanvasPush]',\n standalone: false,\n})\nexport class BsOffcanvasPushDirective {\n private element = inject<ElementRef<HTMLElement>>(ElementRef);\n private builder = inject(AnimationBuilder);\n\n constructor() {\n let previousIsVisible: boolean | null = null;\n\n effect(() => {\n const offcanvas = this.offcanvas();\n if (!offcanvas) return;\n\n const isVisible = offcanvas.isVisible();\n\n // Skip the first run (initial state)\n if (previousIsVisible === null) {\n previousIsVisible = isVisible;\n return;\n }\n\n // Skip if no change\n if (previousIsVisible === isVisible) return;\n\n previousIsVisible = isVisible;\n\n let data: AnimationMetadata[];\n if (isVisible) {\n data = [\n style({ 'margin-left': '0', 'margin-right': '0' }),\n animate('250ms', style({ 'margin-left': '400px', 'margin-right': '-400px' })),\n ];\n let el = this.element.nativeElement;\n while (el.parentElement && !['scroll', 'visible'].includes(el.parentElement.style.overflowX)) {\n el = el.parentElement;\n }\n if (this.element.nativeElement.parentElement) {\n this.initialOverflowX = {\n value: this.element.nativeElement.parentElement.style.overflowX,\n element: el,\n };\n el.style.overflowX = 'hidden';\n }\n } else {\n data = [\n style({ 'margin-left': '400px', 'margin-right': '-400px' }),\n animate('250ms', style({ 'margin-left': '0', 'margin-right': '0' })),\n ];\n }\n const b = this.builder.build(data);\n const player = b.create(this.element.nativeElement, { });\n\n if (!isVisible) {\n player.onDone(() => {\n if (this.element.nativeElement.parentElement && this.initialOverflowX) {\n this.initialOverflowX.element.style.overflowX = this.initialOverflowX.value;\n }\n });\n }\n\n player.play();\n });\n }\n\n private initialOverflowX?: {element: HTMLElement, value: string};\n\n offcanvas = input<BsOffcanvasHostComponent | null>(null, { alias: 'bsOffcanvasPush' });\n}\n","import { Injector, NgModule } from '@angular/core';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { BsOffcanvasComponent } from './components/offcanvas/offcanvas.component';\nimport { BsOffcanvasContentDirective } from './directives/offcanvas-content/offcanvas-content.directive';\nimport { BsOffcanvasHostComponent } from './components/offcanvas-host/offcanvas-host.component';\nimport { BsOffcanvasCloseDirective } from './directives/offcanvas-close/offcanvas-close.directive';\nimport { OffcanvasHeaderComponent } from './components/offcanvas-header/offcanvas-header.component';\nimport { OffcanvasBodyComponent } from './components/offcanvas-body/offcanvas-body.component';\nimport { PORTAL_FACTORY } from './providers/portal-factory.provider';\nimport { BsHasOverlayComponent } from '@mintplayer/ng-bootstrap/has-overlay';\nimport { BsOffcanvasPushDirective } from './directives/offcanvas-push/offcanvas-push.directive';\n\n\n\n@NgModule({\n declarations: [\n BsOffcanvasComponent,\n BsOffcanvasContentDirective,\n BsOffcanvasHostComponent,\n BsOffcanvasCloseDirective,\n OffcanvasHeaderComponent,\n OffcanvasBodyComponent,\n BsOffcanvasPushDirective\n ],\n imports: [\n AsyncPipe,\n NgTemplateOutlet,\n OverlayModule,\n BsHasOverlayComponent\n ],\n exports: [\n BsOffcanvasComponent,\n BsOffcanvasContentDirective,\n BsOffcanvasHostComponent,\n BsOffcanvasCloseDirective,\n OffcanvasHeaderComponent,\n OffcanvasBodyComponent,\n BsOffcanvasPushDirective\n ],\n providers: [{\n provide: PORTAL_FACTORY,\n useValue: (injector: Injector) => {\n return new ComponentPortal(BsOffcanvasComponent, null, injector);\n }\n }]\n})\nexport class BsOffcanvasModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":";;;;;;;;;;;AAEO,MAAM,iBAAiB,GAAG,IAAI,cAAc,CAAmB,kBAAkB,CAAC;;MCW5E,oBAAoB,CAAA;IAE/B,WAAA,CAAuC,eAAiC,EAA+B,UAAkB,EAAA;QAAlB,IAAA,CAAA,UAAU,GAAV,UAAU;;AAkDjH,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAW,QAAQ,oDAAC;AACrC,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAgB,IAAI,gDAAC;AAClC,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAU,KAAK,qDAAC;AAClC,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAU,KAAK,uDAAC;;AAGpC,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAU,KAAK,6DAAC;AAC1C,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAgB,IAAI,0DAAC;AAC5C,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAS,QAAQ,sDAAC;AACrC,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAU,KAAK,gDAAC;;AAG7B,QAAA,IAAA,CAAA,KAAK,GAAG,QAAQ,CAAC,MAAK;AACpB,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;AAChC,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;AACxB,YAAA,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,GAAG,IAAI;AAC1D,QAAA,CAAC,iDAAC;AAEF,QAAA,IAAA,CAAA,MAAM,GAAG,QAAQ,CAAC,MAAK;AACrB,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;AAChC,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;AACxB,YAAA,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,GAAG,IAAI;AAC3D,QAAA,CAAC,kDAAC;AAEF,QAAA,IAAA,CAAA,aAAa,GAAG,QAAQ,CAAC,MAAK;AAC5B,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;AAChC,YAAA,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,mBAAmB,GAAG,mBAAmB;AACzF,QAAA,CAAC,yDAAC;AAEF,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CAAC,MAAK;YAC3B,OAAO,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE;AAC/C,QAAA,CAAC,wDAAC;;QAGF,IAAA,CAAA,eAAe,GAAG,MAAM,EAAW;QACnC,IAAA,CAAA,aAAa,GAAG,MAAM,EAAc;AApFlC,QAAA,IAAI,CAAC,eAAe,GAAG,eAAe;;QAGtC,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;;YAEhC,SAAS,CAAC,MAAK;AACb,gBAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;gBAChC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAA,UAAA,EAAa,QAAQ,CAAA,CAAE,CAAC;;gBAEhD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;oBACtC,qBAAqB,CAAC,MAAK;AACzB,wBAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC;AACnC,oBAAA,CAAC,CAAC;gBACJ;AACF,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC,CAAC;;QAGF,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE;YAClC,SAAS,CAAC,MAAK;gBACb,IAAI,SAAS,EAAE;;AAEb,oBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC;;oBAE9B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;wBACtC,qBAAqB,CAAC,MAAK;4BACzB,qBAAqB,CAAC,MAAK;AACzB,gCAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACrB,4BAAA,CAAC,CAAC;AACJ,wBAAA,CAAC,CAAC;oBACJ;gBACF;qBAAO;;AAEL,oBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;oBACpB,UAAU,CAAC,MAAK;AACd,wBAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE;AACrB,4BAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;wBAC/B;oBACF,CAAC,EAAE,GAAG,CAAC;gBACT;AACF,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC,CAAC;IACJ;AA0CA,IAAA,eAAe,CAAC,EAAc,EAAA;AAC5B,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;IAC7B;8GA3FW,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAEX,iBAAiB,EAAA,EAAA,EAAA,KAAA,EAA6C,WAAW,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAFlF,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECbjC,sgBAYM,EAAA,MAAA,EAAA,CAAA,ormBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EDDQ,CAAC,kBAAkB,CAAC,EAAA,CAAA,CAAA;;2FAErB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAPhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAqB,EAAA,UAAA,EAGnB,KAAK,EAAA,UAAA,EACL,CAAC,kBAAkB,CAAC,EAAA,QAAA,EAAA,sgBAAA,EAAA,MAAA,EAAA,CAAA,ormBAAA,CAAA,EAAA;;0BAInB,MAAM;2BAAC,iBAAiB;;0BAAsC,MAAM;2BAAC,WAAW;;;AEZxF,MAAM,cAAc,GAAG,IAAI,cAAc,CAA+C,wBAAwB,CAAC;;MCW3G,wBAAwB,CAAA;AAKnC,IAAA,WAAA,GAAA;AAJQ,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC;AAChC,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC/B,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAA+C,cAAc,CAAC;;AA0C5F,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAU,KAAK,sDAAC;AACnC,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAU,KAAK,qDAAC;AACjC,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAgB,IAAI,gDAAC;AACjC,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAW,QAAQ,oDAAC;AACpC,QAAA,IAAA,CAAA,WAAW,GAAG,KAAK,CAAU,KAAK,uDAAC;QAEnC,IAAA,CAAA,aAAa,GAAG,MAAM,EAAc;;QA5ClC,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE;AAClC,YAAA,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;YAClD;AACF,QAAA,CAAC,CAAC;;QAGF,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;YAChC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;gBACvC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;YAChD;AACF,QAAA,CAAC,CAAC;;QAGF,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;YACxB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;gBACvC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;YACxC;AACF,QAAA,CAAC,CAAC;;QAGF,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE;YACtC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;gBACvC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC;YACtD;AACF,QAAA,CAAC,CAAC;IACJ;IAgBA,eAAe,GAAA;AACb,QAAA,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC;AAC/B,YAAA,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE;AACvD,aAAA;YACD,MAAM,EAAE,IAAI,CAAC,YAAY;AAC1B,SAAA,CAAC;;QAEF,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;YAC3C,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,UAAU,EAAE;YACjE,gBAAgB,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,MAAM;AACpD,iBAAA,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;AAC5C,YAAA,WAAW,EAAE;AACd,SAAA,CAAC;QAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAuB,MAAM,CAAC;QAErE,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;;AAGrH,QAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;AACvD,QAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;AACrD,QAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAC7C,QAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AAE3D,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;IAC3B;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,yBAAyB,EAAE,WAAW,EAAE;AAC7C,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;AACzB,QAAA,UAAU,CAAC,MAAM,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC;IACtE;8GAtFW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,svBCdrC,qCACA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;2FDaa,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBANpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,cAGZ,KAAK,EAAA,QAAA,EAAA,qCAAA,EAAA;;;MELN,2BAA2B,CAAA;AACtC,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,aAAa,GAAG,MAAM,CAAC,wBAAwB,CAAC;AACtD,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC;AACpC,QAAA,aAAa,CAAC,OAAO,GAAG,QAAQ;IAClC;8GALW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA3B,2BAA2B,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAA3B,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAJvC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;MCCY,yBAAyB,CAAA;AAJtC,IAAA,WAAA,GAAA;AAKU,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAKrD,IAAA;IAHwB,OAAO,GAAA;QAC5B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;IACrC;8GALW,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAzB,yBAAyB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,WAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAzB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAJrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;sBAIE,YAAY;uBAAC,OAAO;;;MCFV,wBAAwB,CAAA;8GAAxB,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,gFCRrC,yEAEM,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;2FDMO,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBANpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAqB,cAGnB,KAAK,EAAA,QAAA,EAAA,yEAAA,EAAA;;;MEEN,sBAAsB,CAAA;AANnC,IAAA,WAAA,GAAA;QAOW,IAAA,CAAA,SAAS,GAAG,KAAK;AAC3B,IAAA;8GAFY,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,kHCRnC,iGAEM,EAAA,MAAA,EAAA,CAAA,mCAAA,CAAA,EAAA,CAAA,CAAA;;2FDMO,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBANlC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,cAGjB,KAAK,EAAA,QAAA,EAAA,iGAAA,EAAA,MAAA,EAAA,CAAA,mCAAA,CAAA,EAAA;;sBAGhB;;;MEDU,wBAAwB,CAAA;AAInC,IAAA,WAAA,GAAA;AAHQ,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAA0B,UAAU,CAAC;AACrD,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC;QA8D1C,IAAA,CAAA,SAAS,GAAG,KAAK,CAAkC,IAAI,sDAAI,KAAK,EAAE,iBAAiB,EAAA,CAAG;QA3DpF,IAAI,iBAAiB,GAAmB,IAAI;QAE5C,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE;AAClC,YAAA,IAAI,CAAC,SAAS;gBAAE;AAEhB,YAAA,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE;;AAGvC,YAAA,IAAI,iBAAiB,KAAK,IAAI,EAAE;gBAC9B,iBAAiB,GAAG,SAAS;gBAC7B;YACF;;YAGA,IAAI,iBAAiB,KAAK,SAAS;gBAAE;YAErC,iBAAiB,GAAG,SAAS;AAE7B,YAAA,IAAI,IAAyB;YAC7B,IAAI,SAAS,EAAE;AACb,gBAAA,IAAI,GAAG;oBACL,KAAK,CAAC,EAAE,aAAa,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC;AAClD,oBAAA,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,CAAC;iBAC9E;AACD,gBAAA,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa;gBACnC,OAAO,EAAE,CAAC,aAAa,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;AAC5F,oBAAA,EAAE,GAAG,EAAE,CAAC,aAAa;gBACvB;gBACA,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,EAAE;oBAC5C,IAAI,CAAC,gBAAgB,GAAG;wBACtB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS;AAC/D,wBAAA,OAAO,EAAE,EAAE;qBACZ;AACD,oBAAA,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,QAAQ;gBAC/B;YACF;iBAAO;AACL,gBAAA,IAAI,GAAG;oBACL,KAAK,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC;AAC3D,oBAAA,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;iBACrE;YACH;YACA,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;AAClC,YAAA,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAG,CAAC;YAExD,IAAI,CAAC,SAAS,EAAE;AACd,gBAAA,MAAM,CAAC,MAAM,CAAC,MAAK;AACjB,oBAAA,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACrE,wBAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK;oBAC7E;AACF,gBAAA,CAAC,CAAC;YACJ;YAEA,MAAM,CAAC,IAAI,EAAE;AACf,QAAA,CAAC,CAAC;IACJ;8GA5DW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAxB,wBAAwB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAJpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;MCyCY,iBAAiB,CAAA;8GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,iBA9B1B,oBAAoB;YACpB,2BAA2B;YAC3B,wBAAwB;YACxB,yBAAyB;YACzB,wBAAwB;YACxB,sBAAsB;AACtB,YAAA,wBAAwB,aAGxB,SAAS;YACT,gBAAgB;YAChB,aAAa;AACb,YAAA,qBAAqB,aAGrB,oBAAoB;YACpB,2BAA2B;YAC3B,wBAAwB;YACxB,yBAAyB;YACzB,wBAAwB;YACxB,sBAAsB;YACtB,wBAAwB,CAAA,EAAA,CAAA,CAAA;AASf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,aAPjB,CAAC;AACV,gBAAA,OAAO,EAAE,cAAc;AACvB,gBAAA,QAAQ,EAAE,CAAC,QAAkB,KAAI;oBAC/B,OAAO,IAAI,eAAe,CAAC,oBAAoB,EAAE,IAAI,EAAE,QAAQ,CAAC;gBAClE;AACD,aAAA,CAAC,YAjBA,aAAa;YACb,qBAAqB,CAAA,EAAA,CAAA,CAAA;;2FAkBZ,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAhC7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,oBAAoB;wBACpB,2BAA2B;wBAC3B,wBAAwB;wBACxB,yBAAyB;wBACzB,wBAAwB;wBACxB,sBAAsB;wBACtB;AACD,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,SAAS;wBACT,gBAAgB;wBAChB,aAAa;wBACb;AACD,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,oBAAoB;wBACpB,2BAA2B;wBAC3B,wBAAwB;wBACxB,yBAAyB;wBACzB,wBAAwB;wBACxB,sBAAsB;wBACtB;AACD,qBAAA;AACD,oBAAA,SAAS,EAAE,CAAC;AACV,4BAAA,OAAO,EAAE,cAAc;AACvB,4BAAA,QAAQ,EAAE,CAAC,QAAkB,KAAI;gCAC/B,OAAO,IAAI,eAAe,CAAC,oBAAoB,EAAE,IAAI,EAAE,QAAQ,CAAC;4BAClE;yBACD;AACF,iBAAA;;;AC/CD;;AAEG;;;;"}
|
|
@@ -70,6 +70,9 @@ class BsSearchboxComponent {
|
|
|
70
70
|
this.caretDownFill.set(this.sanitizer.bypassSecurityTrustHtml(icon.default));
|
|
71
71
|
});
|
|
72
72
|
}
|
|
73
|
+
ngOnDestroy() {
|
|
74
|
+
clearTimeout(this.debounceTimeout);
|
|
75
|
+
}
|
|
73
76
|
onSearchtermChange(searchterm) {
|
|
74
77
|
this.searchterm.set(searchterm);
|
|
75
78
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mintplayer-ng-bootstrap-searchbox.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/searchbox/src/searchbox/searchbox.component.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/searchbox/searchbox.component.html","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/directives/enter-search-term.directive.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/directives/suggestion.directive.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/directives/no-results.directive.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/searchbox.module.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/mintplayer-ng-bootstrap-searchbox.ts"],"sourcesContent":["/// <reference types=\"../types\" />\n\nimport { ChangeDetectionStrategy, Component, effect, ElementRef, inject, input, model, output, signal, TemplateRef, ViewChild } from '@angular/core';\nimport { Color } from '@mintplayer/ng-bootstrap';\nimport { BsFormComponent } from '@mintplayer/ng-bootstrap/form';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSuggestionTemplateContext } from '../directives';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\n\n@Component({\n selector: 'bs-searchbox',\n templateUrl: './searchbox.component.html',\n styleUrls: ['./searchbox.component.scss'],\n standalone: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class BsSearchboxComponent<T extends HasId<U>, U> {\n\n private bsForm = inject(BsFormComponent, { optional: true });\n private sanitizer = inject(DomSanitizer);\n\n caretUpFill = signal<SafeHtml | undefined>(undefined);\n caretDownFill = signal<SafeHtml | undefined>(undefined);\n colors = Color;\n isBusy = signal<boolean>(false);\n @ViewChild('textbox') textbox!: ElementRef<HTMLInputElement>;\n\n isOpen = model(false);\n selectedItem = model<T | undefined>(undefined);\n searchterm = model('');\n\n suggestions = model<T[]>([]);\n\n suggestionTemplate?: TemplateRef<BsSuggestionTemplateContext<T, U>>;\n enterSearchtermTemplate?: TemplateRef<T>;\n noResultsTemplate?: TemplateRef<T>;\n provideSuggestions = output<string>();\n\n private debouncedSearchterm = signal('');\n private debounceTimeout: any;\n\n constructor() {\n if (!this.bsForm) {\n throw '<bs-searchbox> must be inside a <bs-form>';\n }\n\n effect(() => {\n const searchterm = this.searchterm();\n clearTimeout(this.debounceTimeout);\n this.debounceTimeout = setTimeout(() => {\n if (searchterm === '') {\n // clear suggestions - will be handled by the template\n } else {\n this.isBusy.set(true);\n this.provideSuggestions.emit(searchterm);\n }\n }, 200);\n });\n\n effect(() => {\n const suggestions = this.suggestions();\n if (suggestions) {\n this.isBusy.set(false);\n }\n });\n\n effect(() => {\n const isOpen = this.isOpen();\n if (isOpen) {\n setTimeout(() => this.textbox?.nativeElement?.setSelectionRange(0, -1), 20);\n }\n });\n\n import('bootstrap-icons/icons/caret-up-fill.svg').then((icon) => {\n this.caretUpFill.set(this.sanitizer.bypassSecurityTrustHtml(icon.default));\n });\n import('bootstrap-icons/icons/caret-down-fill.svg').then((icon) => {\n this.caretDownFill.set(this.sanitizer.bypassSecurityTrustHtml(icon.default));\n });\n }\n\n onSearchtermChange(searchterm: string) {\n this.searchterm.set(searchterm);\n }\n\n onSuggestionClicked(suggestion: T) {\n this.selectedItem.set(suggestion);\n this.isOpen.set(false);\n this.searchterm.set('');\n }\n}\n","<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [sameDropdownWidth]=\"true\">\n <button [color]=\"colors.primary\" class=\"d-flex w-100\" bsDropdownToggle>\n <div class=\"flex-grow-1\">\n @if (!selectedItem()) {\n <ng-content></ng-content>\n } @else if (suggestionTemplate) {\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: selectedItem(), searchbox: this }\"></ng-container>\n }\n </div>\n <span [innerHTML]=\"isOpen() ? caretUpFill() : caretDownFill()\" class=\"float-end\"></span>\n </button>\n <bs-dropdown-menu *bsDropdownMenu>\n @if (isBusy()) {\n <bs-progress [isIndeterminate]=\"true\" class=\"prog\">\n <bs-progress-bar></bs-progress-bar>\n </bs-progress>\n }\n <div class=\"w-100 px-2 mb-2\">\n <input type=\"text\" #textbox autofocus class=\"form-control d-block\" [ngModel]=\"searchterm()\" (ngModelChange)=\"onSearchtermChange($event)\">\n </div>\n\n @if (searchterm() === '') {\n <bs-dropdown-item [disabled]=\"true\">\n <ng-container *ngTemplateOutlet=\"enterSearchtermTemplate ?? defaultEnterSearchtermTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n } @else {\n <div class=\"overflow-y-auto\" [style.max-height.px]=\"200\">\n @for (suggestion of suggestions(); track suggestion) {\n <bs-dropdown-item (click)=\"onSuggestionClicked(suggestion)\" [isSelected]=\"selectedItem()?.id === suggestion.id\" [disabled]=\"isBusy()\">\n @if (suggestionTemplate) {\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: suggestion, searchbox: this }\"></ng-container>\n }\n </bs-dropdown-item>\n }\n @if (suggestions().length === 0) {\n <bs-dropdown-item [disabled]=\"true\">\n <ng-container *ngTemplateOutlet=\"noResultsTemplate ?? defaultNoResultsTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n }\n </div>\n }\n </bs-dropdown-menu>\n</div>\n\n<ng-template #defaultEnterSearchtermTemplate>\n Enter a search term\n</ng-template>\n<ng-template #defaultNoResultsTemplate>\n No results\n</ng-template>\n","import { Directive, inject, TemplateRef } from '@angular/core';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSearchboxComponent } from '../searchbox/searchbox.component';\n\n@Directive({\n selector: '[bsEnterSearchTermTemplate]',\n standalone: false,\n})\nexport class BsEnterSearchTermTemplateDirective<T extends HasId<U>, U> {\n constructor() {\n const searchbox = inject<BsSearchboxComponent<T, U>>(BsSearchboxComponent);\n const template = inject<TemplateRef<T>>(TemplateRef);\n searchbox.enterSearchtermTemplate = template;\n }\n}\n","import { Directive, inject, Input, TemplateRef } from '@angular/core';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSearchboxComponent } from '../searchbox/searchbox.component';\n\n@Directive({\n selector: '[bsSuggestionTemplate]',\n standalone: false,\n})\nexport class BsSuggestionTemplateDirective<TData extends HasId<U>, U> {\n private searchbox = inject<BsSearchboxComponent<TData, U>>(BsSearchboxComponent);\n\n constructor() {\n const template = inject<TemplateRef<BsSuggestionTemplateContext<TData, U>>>(TemplateRef);\n this.searchbox.suggestionTemplate = template;\n }\n \n public static ngTemplateContextGuard<TData extends HasId<U>, U>(\n dir: BsSuggestionTemplateDirective<TData, U>,\n ctx: any\n ): ctx is BsSuggestionTemplateContext<Exclude<TData, false | 0 | '' | null | undefined>, U> {\n return true;\n }\n\n @Input() set bsSuggestionTemplateOf(value: TData[]) {\n this.searchbox.suggestions.set(value);\n }\n}\n\nexport class BsSuggestionTemplateContext<TData extends HasId<U>, U> {\n public $implicit: TData = null!;\n public searchbox: BsSearchboxComponent<TData, U> = null!;\n}","import { Directive, inject, TemplateRef } from '@angular/core';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSearchboxComponent } from '../searchbox/searchbox.component';\n\n@Directive({\n selector: '[bsNoResultsTemplate]',\n standalone: false,\n})\nexport class BsNoResultsTemplateDirective<T extends HasId<U>, U> {\n constructor() {\n const searchbox = inject<BsSearchboxComponent<T, U>>(BsSearchboxComponent);\n const template = inject<TemplateRef<T>>(TemplateRef);\n searchbox.noResultsTemplate = template;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport { FocusOnLoadDirective } from '@mintplayer/ng-focus-on-load';\nimport { BsDropdownModule } from '@mintplayer/ng-bootstrap/dropdown';\nimport { BsProgressBarModule } from '@mintplayer/ng-bootstrap/progress-bar';\nimport { BsDropdownMenuModule } from '@mintplayer/ng-bootstrap/dropdown-menu';\nimport { BsButtonTypeDirective } from '@mintplayer/ng-bootstrap/button-type';\nimport { BsHasOverlayComponent } from '@mintplayer/ng-bootstrap/has-overlay';\nimport { BsSearchboxComponent } from './searchbox/searchbox.component';\nimport { BsEnterSearchTermTemplateDirective } from './directives/enter-search-term.directive';\nimport { BsSuggestionTemplateDirective } from './directives/suggestion.directive';\nimport { BsNoResultsTemplateDirective } from './directives/no-results.directive';\n\n@NgModule({\n declarations: [\n BsSearchboxComponent,\n BsEnterSearchTermTemplateDirective,\n BsSuggestionTemplateDirective,\n BsNoResultsTemplateDirective,\n ],\n imports: [\n FormsModule,\n AsyncPipe,\n NgTemplateOutlet,\n FocusOnLoadDirective,\n BsDropdownModule,\n BsDropdownMenuModule,\n BsButtonTypeDirective,\n BsProgressBarModule,\n BsHasOverlayComponent,\n ],\n exports: [\n BsSearchboxComponent,\n BsEnterSearchTermTemplateDirective,\n BsSuggestionTemplateDirective,\n BsNoResultsTemplateDirective,\n ],\n})\nexport class BsSearchboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mintplayer-ng-bootstrap-searchbox.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/searchbox/src/searchbox/searchbox.component.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/searchbox/searchbox.component.html","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/directives/enter-search-term.directive.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/directives/suggestion.directive.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/directives/no-results.directive.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/src/searchbox.module.ts","../../../../libs/mintplayer-ng-bootstrap/searchbox/mintplayer-ng-bootstrap-searchbox.ts"],"sourcesContent":["/// <reference types=\"../types\" />\n\nimport { ChangeDetectionStrategy, Component, effect, ElementRef, inject, input, model, OnDestroy, output, signal, TemplateRef, ViewChild } from '@angular/core';\nimport { Color } from '@mintplayer/ng-bootstrap';\nimport { BsFormComponent } from '@mintplayer/ng-bootstrap/form';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSuggestionTemplateContext } from '../directives';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\n\n@Component({\n selector: 'bs-searchbox',\n templateUrl: './searchbox.component.html',\n styleUrls: ['./searchbox.component.scss'],\n standalone: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class BsSearchboxComponent<T extends HasId<U>, U> implements OnDestroy {\n\n private bsForm = inject(BsFormComponent, { optional: true });\n private sanitizer = inject(DomSanitizer);\n\n caretUpFill = signal<SafeHtml | undefined>(undefined);\n caretDownFill = signal<SafeHtml | undefined>(undefined);\n colors = Color;\n isBusy = signal<boolean>(false);\n @ViewChild('textbox') textbox!: ElementRef<HTMLInputElement>;\n\n isOpen = model(false);\n selectedItem = model<T | undefined>(undefined);\n searchterm = model('');\n\n suggestions = model<T[]>([]);\n\n suggestionTemplate?: TemplateRef<BsSuggestionTemplateContext<T, U>>;\n enterSearchtermTemplate?: TemplateRef<T>;\n noResultsTemplate?: TemplateRef<T>;\n provideSuggestions = output<string>();\n\n private debouncedSearchterm = signal('');\n private debounceTimeout: any;\n\n constructor() {\n if (!this.bsForm) {\n throw '<bs-searchbox> must be inside a <bs-form>';\n }\n\n effect(() => {\n const searchterm = this.searchterm();\n clearTimeout(this.debounceTimeout);\n this.debounceTimeout = setTimeout(() => {\n if (searchterm === '') {\n // clear suggestions - will be handled by the template\n } else {\n this.isBusy.set(true);\n this.provideSuggestions.emit(searchterm);\n }\n }, 200);\n });\n\n effect(() => {\n const suggestions = this.suggestions();\n if (suggestions) {\n this.isBusy.set(false);\n }\n });\n\n effect(() => {\n const isOpen = this.isOpen();\n if (isOpen) {\n setTimeout(() => this.textbox?.nativeElement?.setSelectionRange(0, -1), 20);\n }\n });\n\n import('bootstrap-icons/icons/caret-up-fill.svg').then((icon) => {\n this.caretUpFill.set(this.sanitizer.bypassSecurityTrustHtml(icon.default));\n });\n import('bootstrap-icons/icons/caret-down-fill.svg').then((icon) => {\n this.caretDownFill.set(this.sanitizer.bypassSecurityTrustHtml(icon.default));\n });\n }\n\n ngOnDestroy() {\n clearTimeout(this.debounceTimeout);\n }\n\n onSearchtermChange(searchterm: string) {\n this.searchterm.set(searchterm);\n }\n\n onSuggestionClicked(suggestion: T) {\n this.selectedItem.set(suggestion);\n this.isOpen.set(false);\n this.searchterm.set('');\n }\n}\n","<bs-has-overlay></bs-has-overlay>\n<div bsDropdown [(isOpen)]=\"isOpen\" [hasBackdrop]=\"false\" [sameDropdownWidth]=\"true\">\n <button [color]=\"colors.primary\" class=\"d-flex w-100\" bsDropdownToggle>\n <div class=\"flex-grow-1\">\n @if (!selectedItem()) {\n <ng-content></ng-content>\n } @else if (suggestionTemplate) {\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: selectedItem(), searchbox: this }\"></ng-container>\n }\n </div>\n <span [innerHTML]=\"isOpen() ? caretUpFill() : caretDownFill()\" class=\"float-end\"></span>\n </button>\n <bs-dropdown-menu *bsDropdownMenu>\n @if (isBusy()) {\n <bs-progress [isIndeterminate]=\"true\" class=\"prog\">\n <bs-progress-bar></bs-progress-bar>\n </bs-progress>\n }\n <div class=\"w-100 px-2 mb-2\">\n <input type=\"text\" #textbox autofocus class=\"form-control d-block\" [ngModel]=\"searchterm()\" (ngModelChange)=\"onSearchtermChange($event)\">\n </div>\n\n @if (searchterm() === '') {\n <bs-dropdown-item [disabled]=\"true\">\n <ng-container *ngTemplateOutlet=\"enterSearchtermTemplate ?? defaultEnterSearchtermTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n } @else {\n <div class=\"overflow-y-auto\" [style.max-height.px]=\"200\">\n @for (suggestion of suggestions(); track suggestion) {\n <bs-dropdown-item (click)=\"onSuggestionClicked(suggestion)\" [isSelected]=\"selectedItem()?.id === suggestion.id\" [disabled]=\"isBusy()\">\n @if (suggestionTemplate) {\n <ng-container *ngTemplateOutlet=\"suggestionTemplate; context: { $implicit: suggestion, searchbox: this }\"></ng-container>\n }\n </bs-dropdown-item>\n }\n @if (suggestions().length === 0) {\n <bs-dropdown-item [disabled]=\"true\">\n <ng-container *ngTemplateOutlet=\"noResultsTemplate ?? defaultNoResultsTemplate; context: { }\"></ng-container>\n </bs-dropdown-item>\n }\n </div>\n }\n </bs-dropdown-menu>\n</div>\n\n<ng-template #defaultEnterSearchtermTemplate>\n Enter a search term\n</ng-template>\n<ng-template #defaultNoResultsTemplate>\n No results\n</ng-template>\n","import { Directive, inject, TemplateRef } from '@angular/core';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSearchboxComponent } from '../searchbox/searchbox.component';\n\n@Directive({\n selector: '[bsEnterSearchTermTemplate]',\n standalone: false,\n})\nexport class BsEnterSearchTermTemplateDirective<T extends HasId<U>, U> {\n constructor() {\n const searchbox = inject<BsSearchboxComponent<T, U>>(BsSearchboxComponent);\n const template = inject<TemplateRef<T>>(TemplateRef);\n searchbox.enterSearchtermTemplate = template;\n }\n}\n","import { Directive, inject, Input, TemplateRef } from '@angular/core';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSearchboxComponent } from '../searchbox/searchbox.component';\n\n@Directive({\n selector: '[bsSuggestionTemplate]',\n standalone: false,\n})\nexport class BsSuggestionTemplateDirective<TData extends HasId<U>, U> {\n private searchbox = inject<BsSearchboxComponent<TData, U>>(BsSearchboxComponent);\n\n constructor() {\n const template = inject<TemplateRef<BsSuggestionTemplateContext<TData, U>>>(TemplateRef);\n this.searchbox.suggestionTemplate = template;\n }\n \n public static ngTemplateContextGuard<TData extends HasId<U>, U>(\n dir: BsSuggestionTemplateDirective<TData, U>,\n ctx: any\n ): ctx is BsSuggestionTemplateContext<Exclude<TData, false | 0 | '' | null | undefined>, U> {\n return true;\n }\n\n @Input() set bsSuggestionTemplateOf(value: TData[]) {\n this.searchbox.suggestions.set(value);\n }\n}\n\nexport class BsSuggestionTemplateContext<TData extends HasId<U>, U> {\n public $implicit: TData = null!;\n public searchbox: BsSearchboxComponent<TData, U> = null!;\n}","import { Directive, inject, TemplateRef } from '@angular/core';\nimport { HasId } from '@mintplayer/ng-bootstrap/has-id';\nimport { BsSearchboxComponent } from '../searchbox/searchbox.component';\n\n@Directive({\n selector: '[bsNoResultsTemplate]',\n standalone: false,\n})\nexport class BsNoResultsTemplateDirective<T extends HasId<U>, U> {\n constructor() {\n const searchbox = inject<BsSearchboxComponent<T, U>>(BsSearchboxComponent);\n const template = inject<TemplateRef<T>>(TemplateRef);\n searchbox.noResultsTemplate = template;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport { FocusOnLoadDirective } from '@mintplayer/ng-focus-on-load';\nimport { BsDropdownModule } from '@mintplayer/ng-bootstrap/dropdown';\nimport { BsProgressBarModule } from '@mintplayer/ng-bootstrap/progress-bar';\nimport { BsDropdownMenuModule } from '@mintplayer/ng-bootstrap/dropdown-menu';\nimport { BsButtonTypeDirective } from '@mintplayer/ng-bootstrap/button-type';\nimport { BsHasOverlayComponent } from '@mintplayer/ng-bootstrap/has-overlay';\nimport { BsSearchboxComponent } from './searchbox/searchbox.component';\nimport { BsEnterSearchTermTemplateDirective } from './directives/enter-search-term.directive';\nimport { BsSuggestionTemplateDirective } from './directives/suggestion.directive';\nimport { BsNoResultsTemplateDirective } from './directives/no-results.directive';\n\n@NgModule({\n declarations: [\n BsSearchboxComponent,\n BsEnterSearchTermTemplateDirective,\n BsSuggestionTemplateDirective,\n BsNoResultsTemplateDirective,\n ],\n imports: [\n FormsModule,\n AsyncPipe,\n NgTemplateOutlet,\n FocusOnLoadDirective,\n BsDropdownModule,\n BsDropdownMenuModule,\n BsButtonTypeDirective,\n BsProgressBarModule,\n BsHasOverlayComponent,\n ],\n exports: [\n BsSearchboxComponent,\n BsEnterSearchTermTemplateDirective,\n BsSuggestionTemplateDirective,\n BsNoResultsTemplateDirective,\n ],\n})\nexport class BsSearchboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA;MAgBa,oBAAoB,CAAA;AAyB/B,IAAA,WAAA,GAAA;QAvBQ,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACpD,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC;AAExC,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAuB,SAAS,uDAAC;AACrD,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAuB,SAAS,yDAAC;QACvD,IAAA,CAAA,MAAM,GAAG,KAAK;AACd,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAU,KAAK,kDAAC;AAG/B,QAAA,IAAA,CAAA,MAAM,GAAG,KAAK,CAAC,KAAK,kDAAC;AACrB,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAAgB,SAAS,wDAAC;AAC9C,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAAC,EAAE,sDAAC;AAEtB,QAAA,IAAA,CAAA,WAAW,GAAG,KAAK,CAAM,EAAE,uDAAC;QAK5B,IAAA,CAAA,kBAAkB,GAAG,MAAM,EAAU;AAE7B,QAAA,IAAA,CAAA,mBAAmB,GAAG,MAAM,CAAC,EAAE,+DAAC;AAItC,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;AAChB,YAAA,MAAM,2CAA2C;QACnD;QAEA,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE;AACpC,YAAA,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC;AAClC,YAAA,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,MAAK;AACrC,gBAAA,IAAI,UAAU,KAAK,EAAE,EAAE;;gBAEvB;qBAAO;AACL,oBAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;AACrB,oBAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;gBAC1C;YACF,CAAC,EAAE,GAAG,CAAC;AACT,QAAA,CAAC,CAAC;QAEF,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE;YACtC,IAAI,WAAW,EAAE;AACf,gBAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;YACxB;AACF,QAAA,CAAC,CAAC;QAEF,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE;YAC5B,IAAI,MAAM,EAAE;gBACV,UAAU,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAC7E;AACF,QAAA,CAAC,CAAC;QAEF,OAAO,yCAAyC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAI;AAC9D,YAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC5E,QAAA,CAAC,CAAC;QACF,OAAO,2CAA2C,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAI;AAChE,YAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC9E,QAAA,CAAC,CAAC;IACJ;IAEA,WAAW,GAAA;AACT,QAAA,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC;IACpC;AAEA,IAAA,kBAAkB,CAAC,UAAkB,EAAA;AACnC,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC;IACjC;AAEA,IAAA,mBAAmB,CAAC,UAAa,EAAA;AAC/B,QAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC;AACjC,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;AACtB,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;IACzB;8GA7EW,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,u4BChBjC,o+EAmDA,EAAA,MAAA,EAAA,CAAA,6DAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,WAAA,EAAA,qBAAA,EAAA,mBAAA,EAAA,QAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,yBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,oFAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,iBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FDnCa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAPhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,EAAA,UAAA,EAGZ,KAAK,EAAA,eAAA,EACA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,o+EAAA,EAAA,MAAA,EAAA,CAAA,6DAAA,CAAA,EAAA;;sBAW9C,SAAS;uBAAC,SAAS;;;MEjBT,kCAAkC,CAAA;AAC7C,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,SAAS,GAAG,MAAM,CAA6B,oBAAoB,CAAC;AAC1E,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAiB,WAAW,CAAC;AACpD,QAAA,SAAS,CAAC,uBAAuB,GAAG,QAAQ;IAC9C;8GALW,kCAAkC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAlC,kCAAkC,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAlC,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAJ9C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,6BAA6B;AACvC,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;MCCY,6BAA6B,CAAA;AAGxC,IAAA,WAAA,GAAA;AAFQ,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAiC,oBAAoB,CAAC;AAG9E,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAqD,WAAW,CAAC;AACxF,QAAA,IAAI,CAAC,SAAS,CAAC,kBAAkB,GAAG,QAAQ;IAC9C;AAEO,IAAA,OAAO,sBAAsB,CAClC,GAA4C,EAC5C,GAAQ,EAAA;AAER,QAAA,OAAO,IAAI;IACb;IAEA,IAAa,sBAAsB,CAAC,KAAc,EAAA;QAChD,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC;IACvC;8GAjBW,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA7B,6BAA6B,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAJzC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,wBAAwB;AAClC,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;sBAgBE;;MAKU,2BAA2B,CAAA;AAAxC,IAAA,WAAA,GAAA;QACS,IAAA,CAAA,SAAS,GAAU,IAAK;QACxB,IAAA,CAAA,SAAS,GAAmC,IAAK;IAC1D;AAAC;;MCvBY,4BAA4B,CAAA;AACvC,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,SAAS,GAAG,MAAM,CAA6B,oBAAoB,CAAC;AAC1E,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAiB,WAAW,CAAC;AACpD,QAAA,SAAS,CAAC,iBAAiB,GAAG,QAAQ;IACxC;8GALW,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA5B,4BAA4B,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAJxC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;MCgCY,iBAAiB,CAAA;8GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,iBAvB1B,oBAAoB;YACpB,kCAAkC;YAClC,6BAA6B;AAC7B,YAAA,4BAA4B,aAG5B,WAAW;YACX,SAAS;YACT,gBAAgB;YAChB,oBAAoB;YACpB,gBAAgB;YAChB,oBAAoB;YACpB,qBAAqB;YACrB,mBAAmB;AACnB,YAAA,qBAAqB,aAGrB,oBAAoB;YACpB,kCAAkC;YAClC,6BAA6B;YAC7B,4BAA4B,CAAA,EAAA,CAAA,CAAA;AAGnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,YAjB1B,WAAW;YAIX,gBAAgB;YAChB,oBAAoB;YAEpB,mBAAmB;YACnB,qBAAqB,CAAA,EAAA,CAAA,CAAA;;2FASZ,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAzB7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,oBAAoB;wBACpB,kCAAkC;wBAClC,6BAA6B;wBAC7B,4BAA4B;AAC7B,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,WAAW;wBACX,SAAS;wBACT,gBAAgB;wBAChB,oBAAoB;wBACpB,gBAAgB;wBAChB,oBAAoB;wBACpB,qBAAqB;wBACrB,mBAAmB;wBACnB,qBAAqB;AACtB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,oBAAoB;wBACpB,kCAAkC;wBAClC,6BAA6B;wBAC7B,4BAA4B;AAC7B,qBAAA;AACF,iBAAA;;;ACtCD;;AAEG;;;;"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mintplayer/ng-bootstrap",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "21.4.
|
|
4
|
+
"version": "21.4.2",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "https://github.com/MintPlayer/mintplayer-ng-bootstrap",
|
|
@@ -364,7 +364,7 @@
|
|
|
364
364
|
"@mintplayer/ng-animations": "^21.1.0",
|
|
365
365
|
"@mintplayer/pagination": "^2.2.0",
|
|
366
366
|
"@mintplayer/ng-focus-on-load": "^21.1.0",
|
|
367
|
-
"@mintplayer/ng-swiper": "^21.1.
|
|
367
|
+
"@mintplayer/ng-swiper": "^21.1.1",
|
|
368
368
|
"@mintplayer/parentify": "^1.1.0",
|
|
369
369
|
"@mintplayer/scheduler-core": "^1.1.0",
|
|
370
370
|
"@mintplayer/scheduler-wc": "^1.2.0"
|
|
@@ -24,6 +24,7 @@ declare class BsCarouselComponent implements AfterViewInit, OnDestroy {
|
|
|
24
24
|
images: _angular_core.WritableSignal<QueryList<BsCarouselImageDirective> | null>;
|
|
25
25
|
resizeObserver?: ResizeObserver;
|
|
26
26
|
private intervalId?;
|
|
27
|
+
private isDestroyed;
|
|
27
28
|
indicators: _angular_core.InputSignal<boolean>;
|
|
28
29
|
keyboardEvents: _angular_core.InputSignal<boolean>;
|
|
29
30
|
orientation: _angular_core.InputSignal<"horizontal" | "vertical">;
|
|
@@ -43,6 +43,7 @@ declare class BsOffcanvasHostComponent implements AfterViewInit, OnDestroy {
|
|
|
43
43
|
content: TemplateRef<any>;
|
|
44
44
|
overlayRef: OverlayRef;
|
|
45
45
|
component: ComponentRef<BsOffcanvasComponent>;
|
|
46
|
+
private backdropClickSubscription?;
|
|
46
47
|
viewInited: _angular_core.WritableSignal<boolean>;
|
|
47
48
|
isVisible: _angular_core.ModelSignal<boolean>;
|
|
48
49
|
size: _angular_core.ModelSignal<number | null>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { ElementRef, TemplateRef } from '@angular/core';
|
|
2
|
+
import { OnDestroy, ElementRef, TemplateRef } from '@angular/core';
|
|
3
3
|
import { Color } from '@mintplayer/ng-bootstrap';
|
|
4
4
|
import { HasId } from '@mintplayer/ng-bootstrap/has-id';
|
|
5
5
|
import { SafeHtml } from '@angular/platform-browser';
|
|
@@ -37,7 +37,7 @@ declare class BsSuggestionTemplateContext<TData extends HasId<U>, U> {
|
|
|
37
37
|
searchbox: BsSearchboxComponent<TData, U>;
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
-
declare class BsSearchboxComponent<T extends HasId<U>, U> {
|
|
40
|
+
declare class BsSearchboxComponent<T extends HasId<U>, U> implements OnDestroy {
|
|
41
41
|
private bsForm;
|
|
42
42
|
private sanitizer;
|
|
43
43
|
caretUpFill: i0.WritableSignal<SafeHtml | undefined>;
|
|
@@ -56,6 +56,7 @@ declare class BsSearchboxComponent<T extends HasId<U>, U> {
|
|
|
56
56
|
private debouncedSearchterm;
|
|
57
57
|
private debounceTimeout;
|
|
58
58
|
constructor();
|
|
59
|
+
ngOnDestroy(): void;
|
|
59
60
|
onSearchtermChange(searchterm: string): void;
|
|
60
61
|
onSuggestionClicked(suggestion: T): void;
|
|
61
62
|
static ɵfac: i0.ɵɵFactoryDeclaration<BsSearchboxComponent<any, any>, never>;
|