@bizy/core 20.2.7 → 20.3.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.
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, ChangeDetectorRef, Output, Input, Inject, ChangeDetectionStrategy, Component, NgModule, inject, DOCUMENT, Renderer2, ElementRef, Injectable, Directive, ViewChild, ContentChildren, ContentChild, Pipe, ViewContainerRef, TemplateRef, RendererFactory2, HostListener, Host } from '@angular/core';
2
+ import { inject, ChangeDetectorRef, ElementRef, EventEmitter, Output, Input, ChangeDetectionStrategy, Component, NgModule, DOCUMENT, Renderer2, Injectable, Inject, Directive, ViewChild, ContentChildren, ContentChild, Pipe, ViewContainerRef, TemplateRef, RendererFactory2, HostListener, Host } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule, registerLocaleData, DatePipe } from '@angular/common';
5
5
  import { Subject, Subscription, BehaviorSubject, filter, take, skip, auditTime, throttleTime, debounceTime as debounceTime$1, interval, fromEvent, merge } from 'rxjs';
@@ -40,34 +40,30 @@ import { DomSanitizer } from '@angular/platform-browser';
40
40
  import Fuse from 'fuse.js';
41
41
 
42
42
  class BizyAccordionComponent {
43
- ref;
43
+ #ref = inject(ChangeDetectorRef);
44
+ #elementRef = inject(ElementRef);
44
45
  id = `bizy-accordion-${Math.random()}`;
45
46
  customClass;
46
47
  disabled = false;
47
48
  opened = false;
48
49
  openedChange = new EventEmitter();
49
50
  onSelect = new EventEmitter();
50
- constructor(ref) {
51
- this.ref = ref;
52
- }
53
51
  _onSelect(event) {
54
52
  if (this.disabled) {
55
53
  return;
56
54
  }
57
55
  this.openedChange.emit(!this.opened);
58
56
  this.onSelect.emit(event);
59
- this.ref.detectChanges();
57
+ this.#ref.detectChanges();
60
58
  }
61
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyAccordionComponent, deps: [{ token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
59
+ getNativeElement = () => this.#elementRef?.nativeElement;
60
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
62
61
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyAccordionComponent, isStandalone: true, selector: "bizy-accordion", inputs: { id: "id", customClass: "customClass", disabled: "disabled", opened: "opened" }, outputs: { openedChange: "openedChange", onSelect: "onSelect" }, ngImport: i0, template: "<button \n type=\"button\"\n [id]=\"id\"\n [ngClass]=\"{'bizy-accordion--disabled': disabled}\"\n class=\"bizy-accordion {{customClass}}\"\n (click)=\"_onSelect($event)\"\n (keyup.enter)=\"_onSelect($event)\">\n\n <span class=\"bizy-accordion__content\">\n <ng-content></ng-content>\n </span>\n\n <svg \n class=\"bizy-accordion__arrow\" \n [ngClass]=\"{'bizy-accordion__arrow--opened': opened}\"\n viewBox=\"0 0 96 96\" \n xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M81.8457,25.3876a6.0239,6.0239,0,0,0-8.45.7676L48,56.6257l-25.396-30.47a5.999,5.999,0,1,0-9.2114,7.6879L43.3943,69.8452a5.9969,5.9969,0,0,0,9.2114,0L82.6074,33.8431A6.0076,6.0076,0,0,0,81.8457,25.3876Z\"/>\n </svg>\n\n</button>\n\n<span class=\"bizy-accordion__options\" [ngClass]=\"{'bizy-accordion__options--opened': opened}\">\n\n <ng-content select=\"[accordion-option]\"></ng-content>\n\n</span>\n", styles: [":host{font-size:1rem;width:100%}:host:has(>.bizy-accordion__options:empty) .bizy-accordion>.bizy-accordion__arrow{display:none!important}.bizy-accordion{background-color:var(--bizy-accordion-background-color);border:none;display:flex;align-items:center;justify-content:space-between;column-gap:.5rem;padding:.5rem;width:100%;cursor:pointer;position:relative;border-top-left-radius:.3rem;border-bottom:var(--bizy-accordion-border-bottom)}.bizy-accordion--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}.bizy-accordion__content{background-color:inherit;width:100%;flex:1}.bizy-accordion__arrow{height:var(--bizy-accordion-arrow-height);pointer-events:none;display:block;transition:transform .1s ease;fill:var(--bizy-accordion-arrow-color);position:absolute;right:.5rem}.bizy-accordion__arrow--opened{transform:rotate(180deg);transition:transform .2s ease}.bizy-accordion__options{max-height:0;overflow:hidden;display:flex;flex-direction:column;padding-left:var(--bizy-accordion-padding-left);transition:max-height .1s ease;border-left:var(--bizy-accordion-border)}.bizy-accordion__options--opened{max-height:100vh;transition:transform .2s ease}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
63
62
  }
64
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyAccordionComponent, decorators: [{
65
64
  type: Component,
66
65
  args: [{ selector: 'bizy-accordion', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<button \n type=\"button\"\n [id]=\"id\"\n [ngClass]=\"{'bizy-accordion--disabled': disabled}\"\n class=\"bizy-accordion {{customClass}}\"\n (click)=\"_onSelect($event)\"\n (keyup.enter)=\"_onSelect($event)\">\n\n <span class=\"bizy-accordion__content\">\n <ng-content></ng-content>\n </span>\n\n <svg \n class=\"bizy-accordion__arrow\" \n [ngClass]=\"{'bizy-accordion__arrow--opened': opened}\"\n viewBox=\"0 0 96 96\" \n xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M81.8457,25.3876a6.0239,6.0239,0,0,0-8.45.7676L48,56.6257l-25.396-30.47a5.999,5.999,0,1,0-9.2114,7.6879L43.3943,69.8452a5.9969,5.9969,0,0,0,9.2114,0L82.6074,33.8431A6.0076,6.0076,0,0,0,81.8457,25.3876Z\"/>\n </svg>\n\n</button>\n\n<span class=\"bizy-accordion__options\" [ngClass]=\"{'bizy-accordion__options--opened': opened}\">\n\n <ng-content select=\"[accordion-option]\"></ng-content>\n\n</span>\n", styles: [":host{font-size:1rem;width:100%}:host:has(>.bizy-accordion__options:empty) .bizy-accordion>.bizy-accordion__arrow{display:none!important}.bizy-accordion{background-color:var(--bizy-accordion-background-color);border:none;display:flex;align-items:center;justify-content:space-between;column-gap:.5rem;padding:.5rem;width:100%;cursor:pointer;position:relative;border-top-left-radius:.3rem;border-bottom:var(--bizy-accordion-border-bottom)}.bizy-accordion--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}.bizy-accordion__content{background-color:inherit;width:100%;flex:1}.bizy-accordion__arrow{height:var(--bizy-accordion-arrow-height);pointer-events:none;display:block;transition:transform .1s ease;fill:var(--bizy-accordion-arrow-color);position:absolute;right:.5rem}.bizy-accordion__arrow--opened{transform:rotate(180deg);transition:transform .2s ease}.bizy-accordion__options{max-height:0;overflow:hidden;display:flex;flex-direction:column;padding-left:var(--bizy-accordion-padding-left);transition:max-height .1s ease;border-left:var(--bizy-accordion-border)}.bizy-accordion__options--opened{max-height:100vh;transition:transform .2s ease}\n"] }]
67
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
68
- type: Inject,
69
- args: [ChangeDetectorRef]
70
- }] }], propDecorators: { id: [{
66
+ }], propDecorators: { id: [{
71
67
  type: Input
72
68
  }], customClass: [{
73
69
  type: Input
@@ -105,6 +101,7 @@ var MIME_TYPE;
105
101
  })(MIME_TYPE || (MIME_TYPE = {}));
106
102
 
107
103
  class BizyButtonComponent {
104
+ #elementRef = inject(ElementRef);
108
105
  id = `bizy-button-${Math.random()}`;
109
106
  disabled = false;
110
107
  type = 'button';
@@ -117,6 +114,7 @@ class BizyButtonComponent {
117
114
  }
118
115
  this.onSelect.emit(event);
119
116
  }
117
+ getNativeElement = () => this.#elementRef?.nativeElement;
120
118
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
121
119
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyButtonComponent, isStandalone: true, selector: "bizy-button", inputs: { id: "id", disabled: "disabled", type: "type", customClass: "customClass" }, outputs: { onSelect: "onSelect" }, ngImport: i0, template: "<button \n [type]=\"type\"\n [id]=\"id\"\n (focus)=\"_focused = true\"\n (blur)=\"_focused = false\"\n class=\"bizy-button {{customClass}}\"\n [ngClass]=\"{'bizy-button--disabled': disabled}\"\n (click)=\"_focused = true; _onSelect($event)\"\n (keyup.enter)=\"_onSelect($event)\">\n <span class=\"bizy-button__content\" (click)=\"_focused = true; _onSelect($event); $event.stopPropagation()\">\n <ng-content></ng-content>\n </span>\n \n</button>\n\n", styles: [":host{font-size:1rem;height:var(--bizy-button-height);width:var(--bizy-button-width);min-height:var(--bizy-button-min-height);min-width:var(--bizy-button-min-width);max-height:var(--bizy-button-max-height);max-width:var(--bizy-button-max-width)}.bizy-button{height:inherit;width:inherit;min-height:inherit;min-width:inherit;max-height:inherit;max-width:inherit;display:flex;justify-content:space-between;align-items:center;column-gap:.5rem;padding:var(--bizy-button-padding);border-radius:var(--bizy-button-border-radius);border:var(--bizy-button-border);cursor:pointer;background-color:var(--bizy-button-background-color)}::ng-deep .bizy-button *{color:var(--bizy-button-color);text-wrap:nowrap}.bizy-button:hover{filter:brightness(95%)}.bizy-button__content{width:100%;height:100%;display:flex;justify-content:center;align-items:center;column-gap:.3rem}.bizy-button--disabled{opacity:.5;cursor:not-allowed!important;pointer-events:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
122
120
  }
@@ -154,6 +152,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
154
152
  class BizyAudioPlayerComponent {
155
153
  #document = inject(DOCUMENT);
156
154
  #renderer = inject(Renderer2);
155
+ #elementRef = inject(ElementRef);
157
156
  id = `bizy-audio-player-${Math.random()}`;
158
157
  mimeType;
159
158
  audioPlayerError = 'Error';
@@ -262,6 +261,7 @@ class BizyAudioPlayerComponent {
262
261
  this.#renderer.removeChild(this.#document.body, downloadButton);
263
262
  this.onDownload.emit();
264
263
  }
264
+ getNativeElement = () => this.#elementRef?.nativeElement;
265
265
  ngOnDestroy() {
266
266
  this.#subscription.unsubscribe();
267
267
  }
@@ -313,6 +313,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
313
313
  }]
314
314
  }] });
315
315
 
316
+ const MIN_CHART_SIZE$1 = 350; // px;
316
317
  const Y_AXIS_OFFSET = 80;
317
318
  const GRID_BOTTOM = 30;
318
319
  class BizyBarLineChartComponent {
@@ -330,6 +331,7 @@ class BizyBarLineChartComponent {
330
331
  onDownload = new EventEmitter();
331
332
  onSelect = new EventEmitter();
332
333
  #echarts = null;
334
+ #mutationObserver = null;
333
335
  #resizeObserver = null;
334
336
  #subscription = new Subscription();
335
337
  #chartContainer = null;
@@ -341,7 +343,13 @@ class BizyBarLineChartComponent {
341
343
  #chartStacks = [];
342
344
  #chartNames = [];
343
345
  ngAfterViewInit() {
344
- this.#afterViewInit.next(true);
346
+ this.#mutationObserver = new MutationObserver(() => {
347
+ if (this.#elementRef && this.#elementRef.nativeElement && (this.#elementRef.nativeElement.offsetWidth || this.#elementRef.nativeElement.offsetHeight)) {
348
+ this.#afterViewInit.next(true);
349
+ this.#mutationObserver.disconnect();
350
+ }
351
+ });
352
+ this.#mutationObserver.observe(this.#document.body, { childList: true, subtree: true });
345
353
  }
346
354
  set data(data) {
347
355
  if (!data) {
@@ -524,7 +532,7 @@ class BizyBarLineChartComponent {
524
532
  showAllLegends(this.#echarts);
525
533
  setTimeout(() => {
526
534
  html2canvas(this.#chartContainer).then(canvas => {
527
- var link = this.#renderer.createElement('a');
535
+ var link = document.createElement('a');
528
536
  link.href = canvas.toDataURL('image/png');
529
537
  link.download = `${this.download.name}.png`;
530
538
  this.#renderer.appendChild(this.#document.body, link);
@@ -584,15 +592,23 @@ class BizyBarLineChartComponent {
584
592
  if (this.#chartContainer || !this.#elementRef || !this.#elementRef.nativeElement) {
585
593
  return;
586
594
  }
587
- let elementWidth = this.#elementRef.nativeElement.offsetWidth;
588
- let elementHeight = this.#elementRef.nativeElement.offsetHeight;
589
- let minWidth = this.#getClosestCssVariable(this.#elementRef.nativeElement, '--bizy-bar-line-chart-min-width') || 0;
590
- let minHeight = this.#getClosestCssVariable(this.#elementRef.nativeElement, '--bizy-bar-line-chart-min-height') || 0;
591
- const width = elementWidth ? `${elementWidth}px` : minWidth;
592
- const height = elementHeight ? `${elementHeight}px` : minHeight;
595
+ let elementWidth = this.#elementRef.nativeElement.offsetWidth || MIN_CHART_SIZE$1;
596
+ let elementHeight = this.#elementRef.nativeElement.offsetHeight || MIN_CHART_SIZE$1;
597
+ let minWidth = MIN_CHART_SIZE$1;
598
+ let minHeight = MIN_CHART_SIZE$1;
599
+ const barChartMinWidth = getComputedStyle(this.#document.body).getPropertyValue('--bizy-chart-min-width');
600
+ const barChartMinHeight = getComputedStyle(this.#document.body).getPropertyValue('--bizy-chart-min-height');
601
+ if (Number(barChartMinWidth)) {
602
+ minWidth = Number(barChartMinWidth);
603
+ }
604
+ if (Number(barChartMinHeight)) {
605
+ minHeight = Number(barChartMinHeight);
606
+ }
607
+ const width = Math.max(elementWidth, minWidth);
608
+ const height = Math.max(elementHeight, minHeight);
593
609
  this.#chartContainer = this.#renderer.createElement('div');
594
- this.#renderer.setStyle(this.#chartContainer, 'width', width);
595
- this.#renderer.setStyle(this.#chartContainer, 'height', height);
610
+ this.#renderer.setStyle(this.#chartContainer, 'width', `${width}px`);
611
+ this.#renderer.setStyle(this.#chartContainer, 'height', `${height}px`);
596
612
  this.#renderer.appendChild(this.#elementRef.nativeElement, this.#chartContainer);
597
613
  this.#ref.detectChanges();
598
614
  };
@@ -605,19 +621,12 @@ class BizyBarLineChartComponent {
605
621
  this.#chartContainer = null;
606
622
  this.#ref.detectChanges();
607
623
  };
608
- #getClosestCssVariable = (element, cssVariable) => {
609
- while (element) {
610
- const value = getComputedStyle(element).getPropertyValue(cssVariable).trim();
611
- if (value) {
612
- return value;
613
- }
614
- element = element.parentElement;
615
- }
616
- const rootValue = getComputedStyle(document.documentElement).getPropertyValue(cssVariable).trim();
617
- return rootValue || null;
618
- };
624
+ getNativeElement = () => this.#elementRef?.nativeElement;
619
625
  ngOnDestroy() {
620
626
  this.#subscription.unsubscribe();
627
+ if (this.#mutationObserver) {
628
+ this.#mutationObserver.disconnect();
629
+ }
621
630
  if (this.#resizeObserver) {
622
631
  this.#resizeObserver.disconnect();
623
632
  }
@@ -675,13 +684,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
675
684
  }] });
676
685
 
677
686
  class BizyBreadcrumbComponent {
678
- ref;
687
+ #elementRef = inject(ElementRef);
688
+ #ref = inject(ChangeDetectorRef);
679
689
  onSelect = new EventEmitter();
680
690
  _breadcrumbs = [];
681
691
  showGoBack = false;
682
- constructor(ref) {
683
- this.ref = ref;
684
- }
685
692
  set breadcrumbs(breadcrumbs) {
686
693
  if (breadcrumbs) {
687
694
  this._breadcrumbs = breadcrumbs;
@@ -693,7 +700,7 @@ class BizyBreadcrumbComponent {
693
700
  }
694
701
  if (counter > 1) {
695
702
  this.showGoBack = true;
696
- this.ref.detectChanges();
703
+ this.#ref.detectChanges();
697
704
  break;
698
705
  }
699
706
  }
@@ -716,16 +723,16 @@ class BizyBreadcrumbComponent {
716
723
  }
717
724
  }
718
725
  }
719
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyBreadcrumbComponent, deps: [{ token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
726
+ getNativeElement() {
727
+ return this.#elementRef.nativeElement;
728
+ }
729
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyBreadcrumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
720
730
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyBreadcrumbComponent, isStandalone: true, selector: "bizy-breadcrumb", inputs: { breadcrumbs: "breadcrumbs" }, outputs: { onSelect: "onSelect" }, ngImport: i0, template: "<ul class=\"bizy-breadcrumb\">\n <li *ngFor=\"let breadcrumb of _breadcrumbs; let last = last; let i = index\">\n <button \n class=\"bizy-breadcrumb__link\"\n [ngClass]=\"{'bizy-breadcrumb__link--skip': breadcrumb.skip || last}\"\n type=\"button\" \n (click)=\"goTo(breadcrumb)\">\n {{breadcrumb.label}}\n </button>\n <button\n type=\"button\"\n *ngIf=\"last && showGoBack\"\n class=\"bizy-breadcrumb__go-back\"\n (click)=\"goBack()\">\n <svg \n class=\"bizy-breadcrumb__go-back__icon\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M0 0h24v24H0z\" fill=\"none\" stroke=\"none\"/>\n <path d=\"M9 11l-4 4l4 4m-4 -4h11a4 4 0 0 0 0 -8h-1\"/>\n </svg>\n </button>\n </li>\n</ul>\n ", styles: [":host{font-size:1rem}.bizy-breadcrumb{list-style:none;margin:0;padding:0}.bizy-breadcrumb li{display:inline}.bizy-breadcrumb li:before{content:\"/\";margin:0 .3rem}.bizy-breadcrumb li:first-child:before{content:\"\";margin:0}.bizy-breadcrumb__link{cursor:pointer;border:none;background-color:transparent;color:var(--bizy-breadcrumb-link-color)}.bizy-breadcrumb__link:hover{filter:brightness(95%)}.bizy-breadcrumb__link--skip{cursor:default;color:var(--bizy-breadcrumb-path-color)}.bizy-breadcrumb__link--skip:hover{color:var(--bizy-breadcrumb-path-color)}.bizy-breadcrumb__go-back{cursor:pointer;margin-left:.4rem;position:relative;top:.5rem;background-color:transparent;border:none}.bizy-breadcrumb__go-back__icon{color:var(--bizy-breadcrumb-link-color);height:1rem;position:relative;bottom:.3rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
721
731
  }
722
732
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyBreadcrumbComponent, decorators: [{
723
733
  type: Component,
724
734
  args: [{ selector: 'bizy-breadcrumb', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ul class=\"bizy-breadcrumb\">\n <li *ngFor=\"let breadcrumb of _breadcrumbs; let last = last; let i = index\">\n <button \n class=\"bizy-breadcrumb__link\"\n [ngClass]=\"{'bizy-breadcrumb__link--skip': breadcrumb.skip || last}\"\n type=\"button\" \n (click)=\"goTo(breadcrumb)\">\n {{breadcrumb.label}}\n </button>\n <button\n type=\"button\"\n *ngIf=\"last && showGoBack\"\n class=\"bizy-breadcrumb__go-back\"\n (click)=\"goBack()\">\n <svg \n class=\"bizy-breadcrumb__go-back__icon\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M0 0h24v24H0z\" fill=\"none\" stroke=\"none\"/>\n <path d=\"M9 11l-4 4l4 4m-4 -4h11a4 4 0 0 0 0 -8h-1\"/>\n </svg>\n </button>\n </li>\n</ul>\n ", styles: [":host{font-size:1rem}.bizy-breadcrumb{list-style:none;margin:0;padding:0}.bizy-breadcrumb li{display:inline}.bizy-breadcrumb li:before{content:\"/\";margin:0 .3rem}.bizy-breadcrumb li:first-child:before{content:\"\";margin:0}.bizy-breadcrumb__link{cursor:pointer;border:none;background-color:transparent;color:var(--bizy-breadcrumb-link-color)}.bizy-breadcrumb__link:hover{filter:brightness(95%)}.bizy-breadcrumb__link--skip{cursor:default;color:var(--bizy-breadcrumb-path-color)}.bizy-breadcrumb__link--skip:hover{color:var(--bizy-breadcrumb-path-color)}.bizy-breadcrumb__go-back{cursor:pointer;margin-left:.4rem;position:relative;top:.5rem;background-color:transparent;border:none}.bizy-breadcrumb__go-back__icon{color:var(--bizy-breadcrumb-link-color);height:1rem;position:relative;bottom:.3rem}\n"] }]
725
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
726
- type: Inject,
727
- args: [ChangeDetectorRef]
728
- }] }], propDecorators: { onSelect: [{
735
+ }], propDecorators: { onSelect: [{
729
736
  type: Output
730
737
  }], breadcrumbs: [{
731
738
  type: Input
@@ -789,6 +796,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
789
796
 
790
797
  registerLocaleData(localeEs);
791
798
  class BizyCalendarComponent {
799
+ #elementRef = inject(ElementRef);
792
800
  id = `bizy-calendar-${Math.random()}`;
793
801
  hideHeaderDate = false;
794
802
  preventExpand = false;
@@ -944,6 +952,7 @@ class BizyCalendarComponent {
944
952
  }
945
953
  return actions;
946
954
  }
955
+ getNativeElement = () => this.#elementRef?.nativeElement;
947
956
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
948
957
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyCalendarComponent, isStandalone: true, selector: "bizy-calendar", inputs: { id: "id", hideHeaderDate: "hideHeaderDate", preventExpand: "preventExpand", dayStartHour: "dayStartHour", dayEndHour: "dayEndHour", hourMinutesDuration: "hourMinutesDuration", hourSegments: "hourSegments", language: "language", excludeDays: "excludeDays", weekendDays: "weekendDays", weekStartsOn: "weekStartsOn", mode: "mode", customCalendarWeekEventTemplate: "customCalendarWeekEventTemplate", viewDate: "viewDate", events: "events" }, outputs: { onEventSelect: "onEventSelect", onDateSelect: "onDateSelect", onEventDelete: "onEventDelete" }, providers: [
949
958
  CalendarUtils,
@@ -1029,6 +1038,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
1029
1038
  }] });
1030
1039
 
1031
1040
  class BizyCardComponent {
1041
+ #elementRef = inject(ElementRef);
1032
1042
  id = `bizy-card-${Math.random()}`;
1033
1043
  disabled = false;
1034
1044
  selected = false;
@@ -1040,6 +1050,7 @@ class BizyCardComponent {
1040
1050
  }
1041
1051
  this.onSelect.emit(event);
1042
1052
  }
1053
+ getNativeElement = () => this.#elementRef?.nativeElement;
1043
1054
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1044
1055
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyCardComponent, isStandalone: true, selector: "bizy-card", inputs: { id: "id", disabled: "disabled", selected: "selected", customClass: "customClass" }, outputs: { onSelect: "onSelect" }, ngImport: i0, template: "<button \n type=\"button\"\n (click)=\"_onSelect($event)\"\n (keyup.enter)=\"_onSelect($event)\"\n class=\"bizy-card {{customClass}}\"\n [ngClass]=\"{'bizy-card--disabled': disabled}\">\n\n <span class=\"bizy-card__header\">\n\n <span class=\"bizy-card__header__start bizy-card__slot\">\n <ng-content select=\"[slot=header-start]\"></ng-content>\n </span>\n\n <span class=\"bizy-card__header__end bizy-card__slot\">\n <ng-content select=\"[slot=header-end]\"></ng-content>\n </span>\n\n </span>\n\n <span class=\"bizy-card__content\">\n\n <ng-content></ng-content>\n\n </span>\n\n <span class=\"bizy-card__footer\">\n\n <span class=\"bizy-card__footer__start bizy-card__slot\">\n <ng-content select=\"[slot=footer-start]\"></ng-content>\n </span>\n\n <span class=\"bizy-card__footer__end bizy-card__slot\">\n <ng-content select=\"[slot=footer-end]\"></ng-content>\n </span>\n\n </span>\n\n</button>", styles: [":host{font-size:1rem;height:var(--bizy-card-height);min-height:var(--bizy-card-min-height);max-height:var(--bizy-card-max-height);width:var(--bizy-card-width);min-width:var(--bizy-card-min-width);max-width:var(--bizy-card-max-width)}.bizy-card{height:100%;width:100%;cursor:var(--bizy-card-cursor);border-top:var(--bizy-card-border-top, var(--bizy-card-border, none));border-right:var(--bizy-card-border-right, var(--bizy-card-border, none));border-bottom:var(--bizy-card-border-bottom, var(--bizy-card-border, none));border-left:var(--bizy-card-border-left, var(--bizy-card-border, none));border-radius:var(--bizy-card-border-radius);overflow:hidden;padding:var(--bizy-card-padding);display:flex;flex-direction:column;justify-content:space-between;row-gap:.3rem;background-color:var(--bizy-card-background-color);transition:transform .25s ease-in-out;box-shadow:var(--bizy-card-box-shadow)}.bizy-card:hover{transform:translateY(-1px);box-shadow:var(--bizy-card-hover-box-shadow)}.bizy-card:has(>.bizy-card__content:empty)>.bizy-card__content{display:none}.bizy-card:has(>.bizy-card__content:empty)>.bizy-card__header:not(:empty){height:100%!important}.bizy-card:has(>.bizy-card__content:empty)>.bizy-card__footer:not(:empty){height:100%!important}.bizy-card--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}.bizy-card__content:not(:empty){display:flex;align-items:center;column-gap:.5rem;height:100%;width:100%;background-color:var(--bizy-card-content-background-color)}.bizy-card__header:has(>.bizy-card__header__start:empty):has(>.bizy-card__header__end:empty){display:none}.bizy-card__header:not(:empty){width:100%;height:fit-content;display:grid;grid-template-columns:auto auto;align-items:center;column-gap:.5rem;background-color:var(--bizy-card-header-background-color)}.bizy-card__header__start{justify-content:flex-start}.bizy-card__header__end{justify-content:flex-end}.bizy-card__slot{width:100%;display:flex;align-items:center;column-gap:.5rem;height:100%;overflow:hidden}.bizy-card__footer:has(>.bizy-card__footer__start:empty):has(>.bizy-card__footer__end:empty){display:none}.bizy-card__footer:not(:empty){width:100%;height:fit-content;display:grid;grid-template-columns:auto auto;align-items:center;column-gap:.5rem;background-color:var(--bizy-card-footer-background-color)}.bizy-card__footer__start{justify-content:flex-start}.bizy-card__footer__end{justify-content:flex-end}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1045
1056
  }
@@ -1075,6 +1086,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
1075
1086
  }] });
1076
1087
 
1077
1088
  class BizyCheckboxComponent {
1089
+ #elementRef = inject(ElementRef);
1078
1090
  id = `bizy-checkbox-${Math.random()}`;
1079
1091
  selected = false;
1080
1092
  disabled = false;
@@ -1088,6 +1100,7 @@ class BizyCheckboxComponent {
1088
1100
  this.selectedChange.emit(!this.selected);
1089
1101
  this.onSelect.emit(event);
1090
1102
  }
1103
+ getNativeElement = () => this.#elementRef?.nativeElement;
1091
1104
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyCheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1092
1105
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyCheckboxComponent, isStandalone: true, selector: "bizy-checkbox", inputs: { id: "id", selected: "selected", disabled: "disabled" }, outputs: { selectedChange: "selectedChange", onSelect: "onSelect" }, ngImport: i0, template: "<button type=\"button\" [id]=\"id\" (click)=\"_onSelect($event)\" (keyup.enter)=\"_onSelect($event)\" class=\"bizy-checkbox\" [ngClass]=\"{'bizy-checkbox--disabled': disabled}\">\n\n <ng-content select=\"[slot=start]\"></ng-content>\n\n <input class=\"bizy-checkbox__input\" type=\"checkbox\" [id]=\"_checkboxId\" [disabled]=\"disabled\" [ngModel]=\"selected\">\n\n <ng-content select=\"[slot=end]\"></ng-content>\n\n</button>", styles: [":host{font-size:1rem}.bizy-checkbox{display:flex;column-gap:.5rem;align-items:center;border:none;cursor:pointer;background-color:transparent}.bizy-checkbox:hover .bizy-checkbox__input:not(:checked){background-color:var(--bizy-checkbox-hover-color)}.bizy-checkbox--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}.bizy-checkbox__input{position:relative;min-width:1rem;min-height:1rem;width:1rem;height:1rem;color:var(--bizy-checkbox-border-color);border:.1rem solid var(--bizy-checkbox-border-color);border-radius:.3rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:0;cursor:pointer;transition:background-color 175ms cubic-bezier(.1,.1,.25,1)}.bizy-checkbox__input:before{position:absolute;content:\"\";display:block;top:0;left:.25rem;width:.4rem;height:.7rem;border-style:solid;border-color:#fff;border-width:0 2px 2px 0;transform:rotate(45deg);opacity:0}.bizy-checkbox__input:checked{color:#fff;border-color:var(--bizy-checkbox-color);background-color:var(--bizy-checkbox-color)}.bizy-checkbox__input:checked:before{opacity:1}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1093
1106
  }
@@ -1123,6 +1136,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
1123
1136
  }] });
1124
1137
 
1125
1138
  class BizyContentComponent {
1139
+ #elementRef = inject(ElementRef);
1140
+ getNativeElement = () => this.#elementRef?.nativeElement;
1126
1141
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1127
1142
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyContentComponent, isStandalone: true, selector: "bizy-content", ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{flex:1;padding:var(--bizy-content-padding);height:100%;width:100%;overflow:auto;display:flex;flex-direction:column;row-gap:var(--bizy-content-row-gap)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] });
1128
1143
  }
@@ -1148,21 +1163,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
1148
1163
  }] });
1149
1164
 
1150
1165
  class BizyInputOptionComponent {
1151
- ref;
1166
+ #elementRef = inject(ElementRef);
1167
+ #ref = inject(ChangeDetectorRef);
1152
1168
  id = `bizy-input-${Math.random()}`;
1153
1169
  disabled = false;
1154
1170
  customClass = '';
1155
1171
  selected = false;
1156
1172
  onSelect = new EventEmitter();
1157
- constructor(ref) {
1158
- this.ref = ref;
1159
- }
1160
1173
  _onSelect(event) {
1161
1174
  if (this.disabled) {
1162
1175
  return;
1163
1176
  }
1164
1177
  this.onSelect.emit(event);
1165
- this.ref.detectChanges();
1178
+ this.#ref.detectChanges();
1166
1179
  }
1167
1180
  getId = () => {
1168
1181
  return this.id;
@@ -1170,16 +1183,14 @@ class BizyInputOptionComponent {
1170
1183
  getSelected = () => {
1171
1184
  return this.selected;
1172
1185
  };
1173
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyInputOptionComponent, deps: [{ token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1186
+ getNativeElement = () => this.#elementRef?.nativeElement;
1187
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyInputOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1174
1188
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyInputOptionComponent, isStandalone: true, selector: "bizy-input-option", inputs: { id: "id", disabled: "disabled", customClass: "customClass", selected: "selected" }, outputs: { onSelect: "onSelect" }, ngImport: i0, template: "<button \n type=\"button\"\n [id]=\"id\"\n (click)=\"_onSelect($event)\"\n (keyup.enter)=\"_onSelect($event)\"\n [ngClass]=\"{'bizy-input-option--selected': selected, 'bizy-input-option--disabled': disabled}\"\n class=\"bizy-input-option {{customClass}}\">\n\n <span class=\"bizy-input-option__content\">\n <ng-content></ng-content>\n </span>\n \n</button>", styles: [":host{font-size:1rem}.bizy-input-option{font-size:1rem;width:100%;border:none;background-color:var(--bizy-input-background-color);display:flex;align-items:center;justify-content:space-between;column-gap:.5rem;padding:.5rem;color:var(--bizy-input-color);cursor:pointer}.bizy-input-option:hover{background-color:var(--bizy-input-option-hover-background-color)}.bizy-input-option--selected{background-color:var(--bizy-input-option-selected-background-color)!important}.bizy-input-option--selected ::ng-deep .bizy-input-option__content *{color:var(--bizy-input-option-selected-color)}.bizy-input-option--disabled{opacity:.5;pointer-events:none;cursor:not-allowed!important}.bizy-input-option__content{font-size:1rem;display:flex;align-items:center;column-gap:.3rem;text-align:start}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1175
1189
  }
1176
1190
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyInputOptionComponent, decorators: [{
1177
1191
  type: Component,
1178
1192
  args: [{ selector: 'bizy-input-option', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<button \n type=\"button\"\n [id]=\"id\"\n (click)=\"_onSelect($event)\"\n (keyup.enter)=\"_onSelect($event)\"\n [ngClass]=\"{'bizy-input-option--selected': selected, 'bizy-input-option--disabled': disabled}\"\n class=\"bizy-input-option {{customClass}}\">\n\n <span class=\"bizy-input-option__content\">\n <ng-content></ng-content>\n </span>\n \n</button>", styles: [":host{font-size:1rem}.bizy-input-option{font-size:1rem;width:100%;border:none;background-color:var(--bizy-input-background-color);display:flex;align-items:center;justify-content:space-between;column-gap:.5rem;padding:.5rem;color:var(--bizy-input-color);cursor:pointer}.bizy-input-option:hover{background-color:var(--bizy-input-option-hover-background-color)}.bizy-input-option--selected{background-color:var(--bizy-input-option-selected-background-color)!important}.bizy-input-option--selected ::ng-deep .bizy-input-option__content *{color:var(--bizy-input-option-selected-color)}.bizy-input-option--disabled{opacity:.5;pointer-events:none;cursor:not-allowed!important}.bizy-input-option__content{font-size:1rem;display:flex;align-items:center;column-gap:.3rem;text-align:start}\n"] }]
1179
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
1180
- type: Inject,
1181
- args: [ChangeDetectorRef]
1182
- }] }], propDecorators: { id: [{
1193
+ }], propDecorators: { id: [{
1183
1194
  type: Input
1184
1195
  }], disabled: [{
1185
1196
  type: Input
@@ -1238,7 +1249,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
1238
1249
  }] } });
1239
1250
 
1240
1251
  class BizyInputComponent {
1241
- ref;
1252
+ #elementRef = inject(ElementRef);
1253
+ #ref = inject(ChangeDetectorRef);
1242
1254
  options;
1243
1255
  bizyInputWrapper;
1244
1256
  bizyInput;
@@ -1289,9 +1301,6 @@ class BizyInputComponent {
1289
1301
  #subscription = new Subscription();
1290
1302
  #optionSubscription = new Subscription();
1291
1303
  onChange$ = new Subject();
1292
- constructor(ref) {
1293
- this.ref = ref;
1294
- }
1295
1304
  getWidth() {
1296
1305
  return this.bizyInputWrapper && this.bizyInputWrapper.nativeElement && this.bizyInputWrapper.nativeElement.offsetWidth ? this.bizyInputWrapper.nativeElement.offsetWidth : 0;
1297
1306
  }
@@ -1323,7 +1332,7 @@ class BizyInputComponent {
1323
1332
  setTimeout(() => {
1324
1333
  this.focused = false;
1325
1334
  this.touched = true;
1326
- this.ref.detectChanges();
1335
+ this.#ref.detectChanges();
1327
1336
  this.onBlur.emit(event);
1328
1337
  }, 250);
1329
1338
  }
@@ -1337,12 +1346,12 @@ class BizyInputComponent {
1337
1346
  return;
1338
1347
  }
1339
1348
  this.focused = true;
1340
- this.ref.detectChanges();
1349
+ this.#ref.detectChanges();
1341
1350
  this.onFocus.emit(event);
1342
1351
  }
1343
1352
  setTouched(touched) {
1344
1353
  this.touched = touched;
1345
- this.ref.detectChanges();
1354
+ this.#ref.detectChanges();
1346
1355
  }
1347
1356
  ngAfterViewInit() {
1348
1357
  if (this.type === 'currency' && this.bizyInput.nativeElement.setValue) {
@@ -1358,7 +1367,7 @@ class BizyInputComponent {
1358
1367
  return;
1359
1368
  }
1360
1369
  this.opened = !this.opened;
1361
- this.ref.detectChanges();
1370
+ this.#ref.detectChanges();
1362
1371
  if (!this.options) {
1363
1372
  return;
1364
1373
  }
@@ -1367,7 +1376,7 @@ class BizyInputComponent {
1367
1376
  this.options.forEach(_option => {
1368
1377
  this.#optionSubscription.add(_option.onSelect.subscribe(() => {
1369
1378
  this.close();
1370
- this.ref.detectChanges();
1379
+ this.#ref.detectChanges();
1371
1380
  this.#optionSubscription.unsubscribe();
1372
1381
  }));
1373
1382
  });
@@ -1387,7 +1396,7 @@ class BizyInputComponent {
1387
1396
  }
1388
1397
  finish$.next();
1389
1398
  finish$.complete();
1390
- this.ref.detectChanges();
1399
+ this.#ref.detectChanges();
1391
1400
  }
1392
1401
  }));
1393
1402
  }
@@ -1396,22 +1405,20 @@ class BizyInputComponent {
1396
1405
  return;
1397
1406
  }
1398
1407
  this.opened = false;
1399
- this.ref.detectChanges();
1408
+ this.#ref.detectChanges();
1400
1409
  };
1401
1410
  ngOnDestroy() {
1402
1411
  this.#subscription.unsubscribe();
1403
1412
  this.#optionSubscription.unsubscribe();
1404
1413
  }
1405
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyInputComponent, deps: [{ token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1414
+ getNativeElement = () => this.#elementRef?.nativeElement;
1415
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1406
1416
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyInputComponent, isStandalone: true, selector: "bizy-input", inputs: { id: "id", name: "name", type: "type", customClass: "customClass", placeholder: "placeholder", debounceTime: "debounceTime", rows: "rows", disabled: "disabled", readonly: "readonly", autofocus: "autofocus", value: "value" }, outputs: { valueChange: "valueChange", onChange: "onChange", onEnter: "onEnter", onBackspace: "onBackspace", onSelect: "onSelect", onBlur: "onBlur", onFocus: "onFocus" }, queries: [{ propertyName: "options", predicate: BizyInputOptionComponent }], viewQueries: [{ propertyName: "bizyInputWrapper", first: true, predicate: ["bizyInputWrapper"], descendants: true }, { propertyName: "bizyInput", first: true, predicate: ["bizyInput"], descendants: true }], ngImport: i0, template: "<button\n #bizyInputWrapper\n type=\"button\"\n (click)=\"_onClick($event)\"\n (keyup)=\"_onClick($event)\"\n class=\"bizy-input {{customClass}}\"\n (focus)=\"bizyInput.nativeElement.focus()\"\n cdkOverlayOrigin\n #bizyInputTrigger=\"cdkOverlayOrigin\"\n [ngClass]=\"{'bizy-input--disabled': disabled, 'bizy-input--negative': type === 'currency' && _currencyValue < 0}\">\n\n <span class=\"bizy-input__header\">\n <ng-content select=\"[slot=header]\"></ng-content>\n </span>\n\n <span class=\"bizy-input__content\" [ngClass]=\"{'bizy-input__content--readonly': readonly}\">\n \n <span class=\"bizy-input__content__prefix\">\n <ng-content select=\"[slot=prefix]\"></ng-content>\n </span>\n \n <input\n #bizyInput\n *ngIf=\"type !== 'textarea'\"\n [id]=\"id\"\n class=\"bizy-input__content__input\"\n [type]=\"type === 'currency' ? 'tel' : type\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [bizyCurrencyFormat]=\"type === 'currency'\"\n [bizyCurrencyOptions]=\"currencyOptions\"\n [bizyOnlyPhoneDigits]=\"type === 'tel'\"\n (blur)=\"_onBlur($event)\"\n (focus)=\"_onFocus($event)\"\n (keyup.enter)=\"_onEnter($event)\"\n (keyup.backspace)=\"_onBackspace($event)\"\n [ngModel]=\"_value\"\n (ngModelChange)=\"_onchange($event)\"/>\n \n <textarea\n #bizyInput\n *ngIf=\"type === 'textarea'\"\n [id]=\"id\"\n [rows]=\"rows\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n class=\"bizy-input__content__input\"\n (blur)=\"_onBlur($event)\"\n (focus)=\"_onFocus($event)\"\n (keyup.enter)=\"_onEnter($event)\"\n (keyup.backspace)=\"_onBackspace($event)\"\n [ngModel]=\"_value\"\n (ngModelChange)=\"_onchange($event)\">\n </textarea>\n\n <span class=\"bizy-input__content__suffix\">\n <ng-content select=\"[slot=suffix]\"></ng-content>\n </span>\n\n </span>\n\n <span class=\"bizy-input__bottom-line\" [ngClass]=\"{'bizy-input__bottom-line--visible': focused}\"></span>\n\n</button>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayMinWidth]=\"bizyInputWrapper?.offsetWidth\"\n [cdkConnectedOverlayOrigin]=\"bizyInputTrigger\"\n (overlayOutsideClick)=\"close($event, bizyInputWrapper)\"\n [cdkConnectedOverlayOpen]=\"opened\">\n\n <span class=\"bizy-input__options\">\n\n <ng-content select=\"bizy-input-option\"></ng-content>\n \n </span>\n\n</ng-template>\n\n<span class=\"bizy-input__errors\" *ngIf=\"touched\">\n <ng-content select=\"[slot=error]\"></ng-content>\n</span>\n", styles: [":host{width:var(--bizy-input-width);min-width:var(--bizy-input-min-width);max-width:var(--bizy-input-max-width);display:flex;flex-direction:column;row-gap:.3rem}:host:has(>.bizy-input__errors:not(:empty)) .bizy-input__bottom-line{background-color:var(--bizy-input-invalid-color)!important;visibility:visible!important}:host:has(>.bizy-input__errors:not(:empty)) .bizy-input__content__input{color:var(--bizy-input-invalid-color)!important}.bizy-input{width:100%;background-color:var(--bizy-input-background-color);border:none;border-top-left-radius:.3rem;border-top-right-radius:.3rem;display:flex;padding:.3rem .3rem 0;flex-direction:column;cursor:var(--bizy-input-cursor)}.bizy-input--negative,.bizy-input--negative .bizy-input__header,.bizy-input--negative .bizy-input__content,.bizy-input--negative .bizy-input__content__input{background-color:var(--bizy-input-negative-background-color)}.bizy-input--disabled{opacity:.5;pointer-events:none;cursor:not-allowed!important}.bizy-input__header{background-color:var(--bizy-input-background-color);width:100%;display:flex;align-items:center;column-gap:.5rem;padding-bottom:.1rem}.bizy-input__header:empty{display:none!important}.bizy-input__content{background-color:var(--bizy-input-background-color);width:100%;display:flex;align-items:center;column-gap:.3rem}.bizy-input__content--readonly{pointer-events:none;cursor:default!important}.bizy-input__content__prefix{display:flex;align-items:center;column-gap:.3rem}.bizy-input__content__prefix:empty{display:none!important}.bizy-input__content__suffix{display:flex;align-items:center;column-gap:.3rem}.bizy-input__content__suffix:empty{display:none!important}.bizy-input__content__input{width:100%;background-color:var(--bizy-input-background-color);color:var(--bizy-input-color);flex:1;border:none;padding-block:0;padding-inline:0;padding:0 0 .2rem;font-size:var(--bizy-input-font-size)}.bizy-input__content__input:focus{outline:none;border:none}.bizy-input__content input[type=number]::-webkit-inner-spin-button,.bizy-input__content input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}.bizy-input__bottom-line{width:calc(100% + .6rem);position:relative;right:.3rem;height:.1rem;visibility:hidden;pointer-events:none;background-color:var(--bizy-input-focus-color)}.bizy-input__bottom-line--visible{visibility:visible;animation-name:zoomIn;animation-duration:.2s;animation-fill-mode:both}.bizy-input__options{background-color:var(--bizy-input-background-color);display:flex;min-width:fit-content;width:100%;flex-direction:column;box-shadow:0 7px 14px #32325d1a,0 3px 6px #00000014;max-height:var(--bizy-input-options-height);overflow-y:auto;overflow-x:hidden;position:relative}.bizy-input__errors:empty{display:none!important}::ng-deep .bizy-input__errors *{color:var(--bizy-input-invalid-color)!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i2$2.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i2$2.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "directive", type: BizyCurrencyFormatDirective, selector: "[bizyCurrencyFormat]", inputs: ["bizyCurrencyFormat", "bizyCurrencyOptions"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1407
1417
  }
1408
1418
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyInputComponent, decorators: [{
1409
1419
  type: Component,
1410
1420
  args: [{ selector: 'bizy-input', imports: [CommonModule, FormsModule, OverlayModule, BizyCurrencyFormatDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n #bizyInputWrapper\n type=\"button\"\n (click)=\"_onClick($event)\"\n (keyup)=\"_onClick($event)\"\n class=\"bizy-input {{customClass}}\"\n (focus)=\"bizyInput.nativeElement.focus()\"\n cdkOverlayOrigin\n #bizyInputTrigger=\"cdkOverlayOrigin\"\n [ngClass]=\"{'bizy-input--disabled': disabled, 'bizy-input--negative': type === 'currency' && _currencyValue < 0}\">\n\n <span class=\"bizy-input__header\">\n <ng-content select=\"[slot=header]\"></ng-content>\n </span>\n\n <span class=\"bizy-input__content\" [ngClass]=\"{'bizy-input__content--readonly': readonly}\">\n \n <span class=\"bizy-input__content__prefix\">\n <ng-content select=\"[slot=prefix]\"></ng-content>\n </span>\n \n <input\n #bizyInput\n *ngIf=\"type !== 'textarea'\"\n [id]=\"id\"\n class=\"bizy-input__content__input\"\n [type]=\"type === 'currency' ? 'tel' : type\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [bizyCurrencyFormat]=\"type === 'currency'\"\n [bizyCurrencyOptions]=\"currencyOptions\"\n [bizyOnlyPhoneDigits]=\"type === 'tel'\"\n (blur)=\"_onBlur($event)\"\n (focus)=\"_onFocus($event)\"\n (keyup.enter)=\"_onEnter($event)\"\n (keyup.backspace)=\"_onBackspace($event)\"\n [ngModel]=\"_value\"\n (ngModelChange)=\"_onchange($event)\"/>\n \n <textarea\n #bizyInput\n *ngIf=\"type === 'textarea'\"\n [id]=\"id\"\n [rows]=\"rows\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n class=\"bizy-input__content__input\"\n (blur)=\"_onBlur($event)\"\n (focus)=\"_onFocus($event)\"\n (keyup.enter)=\"_onEnter($event)\"\n (keyup.backspace)=\"_onBackspace($event)\"\n [ngModel]=\"_value\"\n (ngModelChange)=\"_onchange($event)\">\n </textarea>\n\n <span class=\"bizy-input__content__suffix\">\n <ng-content select=\"[slot=suffix]\"></ng-content>\n </span>\n\n </span>\n\n <span class=\"bizy-input__bottom-line\" [ngClass]=\"{'bizy-input__bottom-line--visible': focused}\"></span>\n\n</button>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayMinWidth]=\"bizyInputWrapper?.offsetWidth\"\n [cdkConnectedOverlayOrigin]=\"bizyInputTrigger\"\n (overlayOutsideClick)=\"close($event, bizyInputWrapper)\"\n [cdkConnectedOverlayOpen]=\"opened\">\n\n <span class=\"bizy-input__options\">\n\n <ng-content select=\"bizy-input-option\"></ng-content>\n \n </span>\n\n</ng-template>\n\n<span class=\"bizy-input__errors\" *ngIf=\"touched\">\n <ng-content select=\"[slot=error]\"></ng-content>\n</span>\n", styles: [":host{width:var(--bizy-input-width);min-width:var(--bizy-input-min-width);max-width:var(--bizy-input-max-width);display:flex;flex-direction:column;row-gap:.3rem}:host:has(>.bizy-input__errors:not(:empty)) .bizy-input__bottom-line{background-color:var(--bizy-input-invalid-color)!important;visibility:visible!important}:host:has(>.bizy-input__errors:not(:empty)) .bizy-input__content__input{color:var(--bizy-input-invalid-color)!important}.bizy-input{width:100%;background-color:var(--bizy-input-background-color);border:none;border-top-left-radius:.3rem;border-top-right-radius:.3rem;display:flex;padding:.3rem .3rem 0;flex-direction:column;cursor:var(--bizy-input-cursor)}.bizy-input--negative,.bizy-input--negative .bizy-input__header,.bizy-input--negative .bizy-input__content,.bizy-input--negative .bizy-input__content__input{background-color:var(--bizy-input-negative-background-color)}.bizy-input--disabled{opacity:.5;pointer-events:none;cursor:not-allowed!important}.bizy-input__header{background-color:var(--bizy-input-background-color);width:100%;display:flex;align-items:center;column-gap:.5rem;padding-bottom:.1rem}.bizy-input__header:empty{display:none!important}.bizy-input__content{background-color:var(--bizy-input-background-color);width:100%;display:flex;align-items:center;column-gap:.3rem}.bizy-input__content--readonly{pointer-events:none;cursor:default!important}.bizy-input__content__prefix{display:flex;align-items:center;column-gap:.3rem}.bizy-input__content__prefix:empty{display:none!important}.bizy-input__content__suffix{display:flex;align-items:center;column-gap:.3rem}.bizy-input__content__suffix:empty{display:none!important}.bizy-input__content__input{width:100%;background-color:var(--bizy-input-background-color);color:var(--bizy-input-color);flex:1;border:none;padding-block:0;padding-inline:0;padding:0 0 .2rem;font-size:var(--bizy-input-font-size)}.bizy-input__content__input:focus{outline:none;border:none}.bizy-input__content input[type=number]::-webkit-inner-spin-button,.bizy-input__content input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}.bizy-input__bottom-line{width:calc(100% + .6rem);position:relative;right:.3rem;height:.1rem;visibility:hidden;pointer-events:none;background-color:var(--bizy-input-focus-color)}.bizy-input__bottom-line--visible{visibility:visible;animation-name:zoomIn;animation-duration:.2s;animation-fill-mode:both}.bizy-input__options{background-color:var(--bizy-input-background-color);display:flex;min-width:fit-content;width:100%;flex-direction:column;box-shadow:0 7px 14px #32325d1a,0 3px 6px #00000014;max-height:var(--bizy-input-options-height);overflow-y:auto;overflow-x:hidden;position:relative}.bizy-input__errors:empty{display:none!important}::ng-deep .bizy-input__errors *{color:var(--bizy-input-invalid-color)!important}\n"] }]
1411
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
1412
- type: Inject,
1413
- args: [ChangeDetectorRef]
1414
- }] }], propDecorators: { options: [{
1421
+ }], propDecorators: { options: [{
1415
1422
  type: ContentChildren,
1416
1423
  args: [BizyInputOptionComponent]
1417
1424
  }], bizyInputWrapper: [{
@@ -1459,6 +1466,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
1459
1466
  }] } });
1460
1467
 
1461
1468
  class BizyDatePickerComponent {
1469
+ #elementRef = inject(ElementRef);
1470
+ #datePipe = inject(DatePipe);
1471
+ #ref = inject(ChangeDetectorRef);
1462
1472
  bizyDatePicker;
1463
1473
  id = `bizy-date-picker-${Math.random()}`;
1464
1474
  disabled = false;
@@ -1473,8 +1483,6 @@ class BizyDatePickerComponent {
1473
1483
  openedChange = new EventEmitter();
1474
1484
  onOpen = new EventEmitter();
1475
1485
  onSelect = new EventEmitter();
1476
- #datePipe = inject(DatePipe);
1477
- #ref = inject(ChangeDetectorRef);
1478
1486
  dateFormat = 'Y-m-d';
1479
1487
  datePipeFormat = 'yyyy-MM-dd';
1480
1488
  enableTime = false;
@@ -1606,6 +1614,7 @@ class BizyDatePickerComponent {
1606
1614
  this.#ref.detectChanges();
1607
1615
  }
1608
1616
  }
1617
+ getNativeElement = () => this.#elementRef?.nativeElement;
1609
1618
  #getHour(time) {
1610
1619
  const date = new Date(time);
1611
1620
  return date.getHours();
@@ -1869,6 +1878,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
1869
1878
  }] });
1870
1879
 
1871
1880
  class BizyFileUploaderComponent {
1881
+ #elementRef = inject(ElementRef);
1872
1882
  #fileUploader = inject(BizyFileUploaderService);
1873
1883
  dragDropAreaWidth = '100%';
1874
1884
  dragDropAreaHeight = '16rem';
@@ -1954,6 +1964,7 @@ class BizyFileUploaderComponent {
1954
1964
  this.loadedFiles.emit(Array.from(this.#files));
1955
1965
  }));
1956
1966
  }
1967
+ getNativeElement = () => this.#elementRef?.nativeElement;
1957
1968
  ngOnDestroy() {
1958
1969
  this.#fileUploader.cleanAllFiles();
1959
1970
  this.#subscription.unsubscribe();
@@ -2027,6 +2038,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
2027
2038
  }] });
2028
2039
 
2029
2040
  class BizyFilterSectionRangeOptionComponent {
2041
+ #elementRef = inject(ElementRef);
2030
2042
  #fb = inject(FormBuilder);
2031
2043
  #ref = inject(ChangeDetectorRef);
2032
2044
  id = `bizy-filter-section-range-option-${Math.random()}`;
@@ -2134,6 +2146,7 @@ class BizyFilterSectionRangeOptionComponent {
2134
2146
  getId = () => {
2135
2147
  return this.id;
2136
2148
  };
2149
+ getNativeElement = () => this.#elementRef?.nativeElement;
2137
2150
  isActivated = () => {
2138
2151
  return this.#activated.value;
2139
2152
  };
@@ -2162,7 +2175,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
2162
2175
  }] } });
2163
2176
 
2164
2177
  class BizyFilterSectionCheckboxOptionComponent {
2165
- ref;
2178
+ #elementRef = inject(ElementRef);
2179
+ #ref = inject(ChangeDetectorRef);
2166
2180
  id = `bizy-filter-section-checkbox-option-${Math.random()}`;
2167
2181
  disabled = false;
2168
2182
  customClass = '';
@@ -2175,33 +2189,28 @@ class BizyFilterSectionCheckboxOptionComponent {
2175
2189
  this.onSelect(selected);
2176
2190
  }
2177
2191
  _selected = true;
2178
- constructor(ref) {
2179
- this.ref = ref;
2180
- }
2181
2192
  onSelect = (selected) => {
2182
2193
  if (this.disabled) {
2183
2194
  return;
2184
2195
  }
2185
2196
  this._selected = selected;
2186
2197
  this.onChange.emit(selected);
2187
- this.ref.detectChanges();
2198
+ this.#ref.detectChanges();
2188
2199
  };
2189
2200
  getSelected = () => {
2190
2201
  return this._selected;
2191
2202
  };
2203
+ getNativeElement = () => this.#elementRef?.nativeElement;
2192
2204
  getId = () => {
2193
2205
  return this.id;
2194
2206
  };
2195
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterSectionCheckboxOptionComponent, deps: [{ token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2207
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterSectionCheckboxOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2196
2208
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyFilterSectionCheckboxOptionComponent, isStandalone: true, selector: "bizy-filter-section-checkbox-option", inputs: { id: "id", disabled: "disabled", customClass: "customClass", selected: "selected" }, outputs: { onChange: "onChange" }, ngImport: i0, template: "<div \n class=\"bizy-filter-section-checkbox-option {{customClass}}\"\n [id]=\"id\"\n (click)=\"onSelect(!_selected)\"\n (keyup.enter)=\"onSelect(!_selected)\">\n\n <ng-content></ng-content>\n\n <bizy-checkbox \n class=\"bizy-filter-section-checkbox-option__checkbox\"\n [selected]=\"_selected\"\n [disabled]=\"disabled\">\n </bizy-checkbox>\n \n</div>", styles: [":host{font-size:1rem}.bizy-filter-section-checkbox-option{display:flex;align-items:center;column-gap:.3rem;justify-content:space-between;cursor:pointer}.bizy-filter-section-checkbox-option__checkbox{pointer-events:none}\n"], dependencies: [{ kind: "component", type: BizyCheckboxComponent, selector: "bizy-checkbox", inputs: ["id", "selected", "disabled"], outputs: ["selectedChange", "onSelect"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2197
2209
  }
2198
2210
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterSectionCheckboxOptionComponent, decorators: [{
2199
2211
  type: Component,
2200
2212
  args: [{ selector: 'bizy-filter-section-checkbox-option', imports: [BizyCheckboxComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div \n class=\"bizy-filter-section-checkbox-option {{customClass}}\"\n [id]=\"id\"\n (click)=\"onSelect(!_selected)\"\n (keyup.enter)=\"onSelect(!_selected)\">\n\n <ng-content></ng-content>\n\n <bizy-checkbox \n class=\"bizy-filter-section-checkbox-option__checkbox\"\n [selected]=\"_selected\"\n [disabled]=\"disabled\">\n </bizy-checkbox>\n \n</div>", styles: [":host{font-size:1rem}.bizy-filter-section-checkbox-option{display:flex;align-items:center;column-gap:.3rem;justify-content:space-between;cursor:pointer}.bizy-filter-section-checkbox-option__checkbox{pointer-events:none}\n"] }]
2201
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
2202
- type: Inject,
2203
- args: [ChangeDetectorRef]
2204
- }] }], propDecorators: { id: [{
2213
+ }], propDecorators: { id: [{
2205
2214
  type: Input
2206
2215
  }], disabled: [{
2207
2216
  type: Input
@@ -2214,7 +2223,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
2214
2223
  }] } });
2215
2224
 
2216
2225
  class BizyFilterSectionSearchOptionComponent {
2217
- ref;
2226
+ #elementRef = inject(ElementRef);
2227
+ #ref = inject(ChangeDetectorRef);
2218
2228
  id = `bizy-filter-section-search-option-${Math.random()}`;
2219
2229
  customClass = '';
2220
2230
  valueChange = new EventEmitter();
@@ -2233,16 +2243,13 @@ class BizyFilterSectionSearchOptionComponent {
2233
2243
  }
2234
2244
  this._value = value;
2235
2245
  this.#activated.next(Boolean(value));
2236
- this.ref.detectChanges();
2237
- }
2238
- constructor(ref) {
2239
- this.ref = ref;
2246
+ this.#ref.detectChanges();
2240
2247
  }
2241
2248
  _onChange(value) {
2242
2249
  this.valueChange.emit(value);
2243
2250
  this.onChange.emit(value);
2244
2251
  this.#activated.next(Boolean(value));
2245
- this.ref.detectChanges();
2252
+ this.#ref.detectChanges();
2246
2253
  }
2247
2254
  getId = () => {
2248
2255
  return this.id;
@@ -2250,19 +2257,17 @@ class BizyFilterSectionSearchOptionComponent {
2250
2257
  getValue = () => {
2251
2258
  return this._value;
2252
2259
  };
2260
+ getNativeElement = () => this.#elementRef?.nativeElement;
2253
2261
  isActivated = () => {
2254
2262
  return this.#activated.value;
2255
2263
  };
2256
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterSectionSearchOptionComponent, deps: [{ token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2264
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterSectionSearchOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2257
2265
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyFilterSectionSearchOptionComponent, isStandalone: true, selector: "bizy-filter-section-search-option", inputs: { id: "id", customClass: "customClass", value: "value" }, outputs: { valueChange: "valueChange", onChange: "onChange" }, ngImport: i0, template: "<bizy-input\n [id]=\"id\" \n (onChange)=\"_onChange($event)\"\n [value]=\"_value\"\n class=\"bizy-filter-section-search-option {{customClass}}\">\n\n <span slot=\"header\"></span>\n\n <ng-container slot=\"prefix\">\n <ng-content select=\"[slot=prefix]\"></ng-content>\n </ng-container>\n\n <ng-container slot=\"suffix\">\n <ng-content select=\"[slot=suffix]\"></ng-content>\n </ng-container>\n\n</bizy-input>\n", styles: [":host{font-size:1rem;width:100%}.bizy-filter-section-search-option{--bizy-input-background-color: #f3f3f3 !important}\n"], dependencies: [{ kind: "component", type: BizyInputComponent, selector: "bizy-input", inputs: ["id", "name", "type", "customClass", "placeholder", "debounceTime", "rows", "disabled", "readonly", "autofocus", "value"], outputs: ["valueChange", "onChange", "onEnter", "onBackspace", "onSelect", "onBlur", "onFocus"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2258
2266
  }
2259
2267
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterSectionSearchOptionComponent, decorators: [{
2260
2268
  type: Component,
2261
2269
  args: [{ selector: 'bizy-filter-section-search-option', imports: [BizyInputComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<bizy-input\n [id]=\"id\" \n (onChange)=\"_onChange($event)\"\n [value]=\"_value\"\n class=\"bizy-filter-section-search-option {{customClass}}\">\n\n <span slot=\"header\"></span>\n\n <ng-container slot=\"prefix\">\n <ng-content select=\"[slot=prefix]\"></ng-content>\n </ng-container>\n\n <ng-container slot=\"suffix\">\n <ng-content select=\"[slot=suffix]\"></ng-content>\n </ng-container>\n\n</bizy-input>\n", styles: [":host{font-size:1rem;width:100%}.bizy-filter-section-search-option{--bizy-input-background-color: #f3f3f3 !important}\n"] }]
2262
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
2263
- type: Inject,
2264
- args: [ChangeDetectorRef]
2265
- }] }], propDecorators: { id: [{
2270
+ }], propDecorators: { id: [{
2266
2271
  type: Input
2267
2272
  }], customClass: [{
2268
2273
  type: Input
@@ -2275,8 +2280,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
2275
2280
  }] } });
2276
2281
 
2277
2282
  class BizyFilterSectionComponent {
2278
- document;
2279
- ref;
2283
+ #elementRef = inject(ElementRef);
2284
+ #document = inject(DOCUMENT);
2285
+ #ref = inject(ChangeDetectorRef);
2280
2286
  checkboxOptions;
2281
2287
  rangeOption;
2282
2288
  searchOption;
@@ -2288,10 +2294,6 @@ class BizyFilterSectionComponent {
2288
2294
  #mutationObserver;
2289
2295
  #checkboxOptions = [];
2290
2296
  _activated = false;
2291
- constructor(document, ref) {
2292
- this.document = document;
2293
- this.ref = ref;
2294
- }
2295
2297
  ngAfterViewInit() {
2296
2298
  this.#mutationObserver = new MutationObserver(() => {
2297
2299
  if (this.checkboxOptions && (this.#checkboxOptions.length !== 0 || this.checkboxOptions.length !== 0) && !this.#optionsAreEqual(this.#checkboxOptions, this.checkboxOptions.toArray())) {
@@ -2299,13 +2301,13 @@ class BizyFilterSectionComponent {
2299
2301
  const selectedOptions = this.checkboxOptions.filter(_option => _option.getSelected() === true);
2300
2302
  this._activated = selectedOptions.length !== this.checkboxOptions.length;
2301
2303
  this.onSelect.emit(this._activated);
2302
- this.ref.detectChanges();
2304
+ this.#ref.detectChanges();
2303
2305
  this.checkboxOptions.forEach(_option => {
2304
2306
  this.#subscription.add(_option.onChange.subscribe(() => {
2305
2307
  const selectedOptions = this.checkboxOptions.filter(_option => _option.getSelected() === true);
2306
2308
  this._activated = selectedOptions.length !== this.checkboxOptions.length;
2307
2309
  this.onSelect.emit(this._activated);
2308
- this.ref.detectChanges();
2310
+ this.#ref.detectChanges();
2309
2311
  }));
2310
2312
  });
2311
2313
  }
@@ -2314,7 +2316,7 @@ class BizyFilterSectionComponent {
2314
2316
  setTimeout(() => {
2315
2317
  this._activated = value;
2316
2318
  this.onSelect.emit(value);
2317
- this.ref.detectChanges();
2319
+ this.#ref.detectChanges();
2318
2320
  });
2319
2321
  }));
2320
2322
  this.#mutationObserver.disconnect();
@@ -2324,13 +2326,13 @@ class BizyFilterSectionComponent {
2324
2326
  setTimeout(() => {
2325
2327
  this._activated = value;
2326
2328
  this.onSelect.emit(value);
2327
- this.ref.detectChanges();
2329
+ this.#ref.detectChanges();
2328
2330
  });
2329
2331
  }));
2330
2332
  this.#mutationObserver.disconnect();
2331
2333
  }
2332
2334
  });
2333
- this.#mutationObserver.observe(this.document.body, { childList: true, subtree: true });
2335
+ this.#mutationObserver.observe(this.#document.body, { childList: true, subtree: true });
2334
2336
  }
2335
2337
  _onSelect = (selected) => {
2336
2338
  if (this.disabled || this.rangeOption) {
@@ -2367,25 +2369,20 @@ class BizyFilterSectionComponent {
2367
2369
  }
2368
2370
  return true;
2369
2371
  }
2372
+ getNativeElement = () => this.#elementRef?.nativeElement;
2370
2373
  ngOnDestroy() {
2371
2374
  this.#subscription.unsubscribe();
2372
2375
  if (this.#mutationObserver) {
2373
2376
  this.#mutationObserver.disconnect();
2374
2377
  }
2375
2378
  }
2376
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterSectionComponent, deps: [{ token: DOCUMENT }, { token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2379
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2377
2380
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyFilterSectionComponent, isStandalone: true, selector: "bizy-filter-section", inputs: { id: "id", disabled: "disabled", customClass: "customClass" }, outputs: { onSelect: "onSelect" }, queries: [{ propertyName: "rangeOption", first: true, predicate: BizyFilterSectionRangeOptionComponent, descendants: true }, { propertyName: "searchOption", first: true, predicate: BizyFilterSectionSearchOptionComponent, descendants: true }, { propertyName: "checkboxOptions", predicate: BizyFilterSectionCheckboxOptionComponent }], ngImport: i0, template: "<div class=\"bizy-filter-section {{customClass}}\" [id]=\"id\">\n\n <span class=\"bizy-filter-section__header\">\n\n <ng-content select=\"[slot=header]\"></ng-content>\n\n <bizy-checkbox \n class=\"bizy-filter-section__header__checkbox\"\n (onSelect)=\"_onSelect(_activated)\"\n [selected]=\"!_activated\"\n [disabled]=\"disabled\">\n </bizy-checkbox>\n\n <button \n type=\"button\"\n class=\"bizy-filter-section__header__clear-button\"\n (click)=\"onClean()\"\n (keyup.enter)=\"onClean()\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\" class=\"bizy-filter-section__header__clear-icon\">\n <path d=\"M135.2 17.7C140.6 6.8 151.7 0 163.8 0H284.2c12.1 0 23.2 6.8 28.6 17.7L320 32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 96 0 81.7 0 64S14.3 32 32 32h96l7.2-14.3zM32 128H416V448c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V128zm96 64c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16z\"/>\n </svg>\n </button>\n \n </span>\n\n <span class=\"bizy-filter-section__options\">\n\n <ng-content select=\"bizy-filter-section-checkbox-option\"></ng-content>\n\n <ng-content select=\"bizy-filter-section-range-option\"></ng-content>\n\n <ng-content select=\"bizy-filter-section-search-option\"></ng-content>\n\n </span>\n\n</div>", styles: [":host{font-size:1rem;flex:1;min-width:var(--bizy-filter-section-min-width)}:host:has(.bizy-filter-section-range-option) .bizy-filter-section__header__checkbox{display:none!important}:host:has(.bizy-filter-section-search-option) .bizy-filter-section__header__checkbox{display:none!important}:host:has(.bizy-filter-section-checkbox-option) .bizy-filter-section__header__clear-button{display:none!important}:host:has(.bizy-filter-section-search-option) .bizy-filter-section__header__clear-button{display:none!important}:host:has(.bizy-filter-section-checkbox-option) .bizy-filter-section__options{overflow-y:auto!important}.bizy-filter-section{width:100%;background-color:transparent;display:flex;flex-direction:column;row-gap:.3rem}.bizy-filter-section__header{width:100%;display:flex;align-items:center;justify-content:space-between;column-gap:.5rem;border:none;background-color:transparent;text-align:start}.bizy-filter-section__options{width:100%;max-width:100%;display:flex;flex-direction:column;min-height:fit-content;max-height:15rem;overflow-y:hidden;overflow-x:hidden}.bizy-filter-section__header__clear-button{width:fit-content;height:fit-content;border:none;background-color:transparent;cursor:pointer}.bizy-filter-section__header__clear-icon{fill:var(--bizy-filter-section-clear-color);pointer-events:none;height:1rem}\n"], dependencies: [{ kind: "component", type: BizyCheckboxComponent, selector: "bizy-checkbox", inputs: ["id", "selected", "disabled"], outputs: ["selectedChange", "onSelect"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2378
2381
  }
2379
2382
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterSectionComponent, decorators: [{
2380
2383
  type: Component,
2381
2384
  args: [{ selector: 'bizy-filter-section', imports: [BizyCheckboxComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bizy-filter-section {{customClass}}\" [id]=\"id\">\n\n <span class=\"bizy-filter-section__header\">\n\n <ng-content select=\"[slot=header]\"></ng-content>\n\n <bizy-checkbox \n class=\"bizy-filter-section__header__checkbox\"\n (onSelect)=\"_onSelect(_activated)\"\n [selected]=\"!_activated\"\n [disabled]=\"disabled\">\n </bizy-checkbox>\n\n <button \n type=\"button\"\n class=\"bizy-filter-section__header__clear-button\"\n (click)=\"onClean()\"\n (keyup.enter)=\"onClean()\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\" class=\"bizy-filter-section__header__clear-icon\">\n <path d=\"M135.2 17.7C140.6 6.8 151.7 0 163.8 0H284.2c12.1 0 23.2 6.8 28.6 17.7L320 32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 96 0 81.7 0 64S14.3 32 32 32h96l7.2-14.3zM32 128H416V448c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V128zm96 64c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16z\"/>\n </svg>\n </button>\n \n </span>\n\n <span class=\"bizy-filter-section__options\">\n\n <ng-content select=\"bizy-filter-section-checkbox-option\"></ng-content>\n\n <ng-content select=\"bizy-filter-section-range-option\"></ng-content>\n\n <ng-content select=\"bizy-filter-section-search-option\"></ng-content>\n\n </span>\n\n</div>", styles: [":host{font-size:1rem;flex:1;min-width:var(--bizy-filter-section-min-width)}:host:has(.bizy-filter-section-range-option) .bizy-filter-section__header__checkbox{display:none!important}:host:has(.bizy-filter-section-search-option) .bizy-filter-section__header__checkbox{display:none!important}:host:has(.bizy-filter-section-checkbox-option) .bizy-filter-section__header__clear-button{display:none!important}:host:has(.bizy-filter-section-search-option) .bizy-filter-section__header__clear-button{display:none!important}:host:has(.bizy-filter-section-checkbox-option) .bizy-filter-section__options{overflow-y:auto!important}.bizy-filter-section{width:100%;background-color:transparent;display:flex;flex-direction:column;row-gap:.3rem}.bizy-filter-section__header{width:100%;display:flex;align-items:center;justify-content:space-between;column-gap:.5rem;border:none;background-color:transparent;text-align:start}.bizy-filter-section__options{width:100%;max-width:100%;display:flex;flex-direction:column;min-height:fit-content;max-height:15rem;overflow-y:hidden;overflow-x:hidden}.bizy-filter-section__header__clear-button{width:fit-content;height:fit-content;border:none;background-color:transparent;cursor:pointer}.bizy-filter-section__header__clear-icon{fill:var(--bizy-filter-section-clear-color);pointer-events:none;height:1rem}\n"] }]
2382
- }], ctorParameters: () => [{ type: Document, decorators: [{
2383
- type: Inject,
2384
- args: [DOCUMENT]
2385
- }] }, { type: i0.ChangeDetectorRef, decorators: [{
2386
- type: Inject,
2387
- args: [ChangeDetectorRef]
2388
- }] }], propDecorators: { checkboxOptions: [{
2385
+ }], propDecorators: { checkboxOptions: [{
2389
2386
  type: ContentChildren,
2390
2387
  args: [BizyFilterSectionCheckboxOptionComponent]
2391
2388
  }], rangeOption: [{
@@ -2405,6 +2402,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
2405
2402
  }] } });
2406
2403
 
2407
2404
  class BizyFilterSectionsComponent {
2405
+ #elementRef = inject(ElementRef);
2406
+ getNativeElement = () => this.#elementRef?.nativeElement;
2408
2407
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterSectionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2409
2408
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyFilterSectionsComponent, isStandalone: true, selector: "bizy-filter-sections", ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{font-size:1rem;background-color:inherit;width:fit-content;max-width:90vw;grid-template-columns:repeat(auto-fit,minmax(var(--bizy-filter-section-min-width),1fr));display:grid;gap:2rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2410
2409
  }
@@ -2414,8 +2413,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
2414
2413
  }] });
2415
2414
 
2416
2415
  class BizyFilterComponent {
2417
- document;
2418
- ref;
2416
+ #elementRef = inject(ElementRef);
2417
+ #document = inject(DOCUMENT);
2418
+ #ref = inject(ChangeDetectorRef);
2419
2419
  sections;
2420
2420
  id = `bizy-filter-${Math.random()}`;
2421
2421
  disabled = false;
@@ -2426,10 +2426,6 @@ class BizyFilterComponent {
2426
2426
  _filterWidth;
2427
2427
  _activated = false;
2428
2428
  #subscription = new Subscription();
2429
- constructor(document, ref) {
2430
- this.document = document;
2431
- this.ref = ref;
2432
- }
2433
2429
  ngAfterViewInit() {
2434
2430
  const mutationObserver = new MutationObserver(() => {
2435
2431
  if (this.sections && this.sections.length > 0) {
@@ -2438,7 +2434,7 @@ class BizyFilterComponent {
2438
2434
  if (this._activated !== activated) {
2439
2435
  this._activated = activated;
2440
2436
  this.onChange.emit(this._activated);
2441
- this.ref.detectChanges();
2437
+ this.#ref.detectChanges();
2442
2438
  }
2443
2439
  this.sections.forEach(_section => {
2444
2440
  this.#subscription.add(_section.onSelect.subscribe(() => {
@@ -2447,14 +2443,14 @@ class BizyFilterComponent {
2447
2443
  if (this._activated !== activated) {
2448
2444
  this._activated = activated;
2449
2445
  this.onChange.emit(this._activated);
2450
- this.ref.detectChanges();
2446
+ this.#ref.detectChanges();
2451
2447
  }
2452
2448
  }));
2453
2449
  });
2454
2450
  mutationObserver.disconnect();
2455
2451
  }
2456
2452
  });
2457
- mutationObserver.observe(this.document.body, { childList: true, subtree: true });
2453
+ mutationObserver.observe(this.#document.body, { childList: true, subtree: true });
2458
2454
  }
2459
2455
  _onOpen = (event) => {
2460
2456
  if (this.disabled) {
@@ -2471,12 +2467,13 @@ class BizyFilterComponent {
2471
2467
  return;
2472
2468
  }
2473
2469
  this.opened = false;
2474
- this.ref.detectChanges();
2470
+ this.#ref.detectChanges();
2475
2471
  };
2472
+ getNativeElement = () => this.#elementRef?.nativeElement;
2476
2473
  ngOnDestroy() {
2477
2474
  this.#subscription.unsubscribe();
2478
2475
  }
2479
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterComponent, deps: [{ token: DOCUMENT }, { token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2476
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2480
2477
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyFilterComponent, isStandalone: true, selector: "bizy-filter", inputs: { id: "id", disabled: "disabled", customClass: "customClass", opened: "opened" }, outputs: { onOpen: "onOpen", onChange: "onChange" }, queries: [{ propertyName: "sections", predicate: BizyFilterSectionComponent, descendants: true }], ngImport: i0, template: "<button \n type=\"button\"\n class=\"bizy-filter {{customClass}}\"\n [ngClass]=\"{'bizy-filter--disabled': disabled}\"\n [id]=\"id\"\n (click)=\"_onOpen($event)\"\n (keyup.enter)=\"_onOpen($event)\"\n cdkOverlayOrigin \n #bizyFilterTrigger=\"cdkOverlayOrigin\">\n\n <span class=\"bizy-filter__content\">\n <ng-content></ng-content>\n </span>\n\n <span class=\"bizy-filter__badge\" [ngClass]=\"{'bizy-filter__badge--visible': _activated}\"></span>\n \n</button>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayMinWidth]=\"_filterWidth\"\n [cdkConnectedOverlayOrigin]=\"bizyFilterTrigger\"\n (overlayOutsideClick)=\"close($event)\"\n [cdkConnectedOverlayOpen]=\"opened\">\n\n <span class=\"bizy-filter__sections-wrapper\">\n\n <bizy-filter-sections>\n \n <ng-content select=\"bizy-filter-section\"></ng-content>\n \n </bizy-filter-sections>\n\n <ng-content select=\"bizy-filter-content\"></ng-content>\n\n </span>\n\n</ng-template>\n", styles: [":host{font-size:1rem}.bizy-filter{font-size:1rem;width:100%;border:none;background-color:transparent;display:flex;align-items:center;justify-content:space-between;column-gap:.5rem;cursor:pointer;padding:var(--bizy-filter-padding);color:var(--bizy-filter-color);position:relative}.bizy-filter--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}.bizy-filter__badge{position:absolute;top:-.2rem;right:-.2rem;height:.5rem;width:.5rem;border-radius:50%;background-color:var(--bizy-filter-badge-color);display:none}.bizy-filter__badge--visible{display:block!important}.bizy-filter__content{font-size:1rem;display:flex;align-items:center;column-gap:.3rem;pointer-events:none}.bizy-filter__sections-wrapper{background-color:var(--bizy-filter-background-color);display:flex;flex-direction:column;overflow-y:auto;max-height:30rem;max-width:90vw;padding:.5rem;box-shadow:0 7px 14px #32325d1a,0 3px 6px #00000014}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i2$2.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i2$2.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: BizyFilterSectionsComponent, selector: "bizy-filter-sections" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2481
2478
  }
2482
2479
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterComponent, decorators: [{
@@ -2486,13 +2483,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
2486
2483
  OverlayModule,
2487
2484
  BizyFilterSectionsComponent
2488
2485
  ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<button \n type=\"button\"\n class=\"bizy-filter {{customClass}}\"\n [ngClass]=\"{'bizy-filter--disabled': disabled}\"\n [id]=\"id\"\n (click)=\"_onOpen($event)\"\n (keyup.enter)=\"_onOpen($event)\"\n cdkOverlayOrigin \n #bizyFilterTrigger=\"cdkOverlayOrigin\">\n\n <span class=\"bizy-filter__content\">\n <ng-content></ng-content>\n </span>\n\n <span class=\"bizy-filter__badge\" [ngClass]=\"{'bizy-filter__badge--visible': _activated}\"></span>\n \n</button>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayMinWidth]=\"_filterWidth\"\n [cdkConnectedOverlayOrigin]=\"bizyFilterTrigger\"\n (overlayOutsideClick)=\"close($event)\"\n [cdkConnectedOverlayOpen]=\"opened\">\n\n <span class=\"bizy-filter__sections-wrapper\">\n\n <bizy-filter-sections>\n \n <ng-content select=\"bizy-filter-section\"></ng-content>\n \n </bizy-filter-sections>\n\n <ng-content select=\"bizy-filter-content\"></ng-content>\n\n </span>\n\n</ng-template>\n", styles: [":host{font-size:1rem}.bizy-filter{font-size:1rem;width:100%;border:none;background-color:transparent;display:flex;align-items:center;justify-content:space-between;column-gap:.5rem;cursor:pointer;padding:var(--bizy-filter-padding);color:var(--bizy-filter-color);position:relative}.bizy-filter--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}.bizy-filter__badge{position:absolute;top:-.2rem;right:-.2rem;height:.5rem;width:.5rem;border-radius:50%;background-color:var(--bizy-filter-badge-color);display:none}.bizy-filter__badge--visible{display:block!important}.bizy-filter__content{font-size:1rem;display:flex;align-items:center;column-gap:.3rem;pointer-events:none}.bizy-filter__sections-wrapper{background-color:var(--bizy-filter-background-color);display:flex;flex-direction:column;overflow-y:auto;max-height:30rem;max-width:90vw;padding:.5rem;box-shadow:0 7px 14px #32325d1a,0 3px 6px #00000014}\n"] }]
2489
- }], ctorParameters: () => [{ type: Document, decorators: [{
2490
- type: Inject,
2491
- args: [DOCUMENT]
2492
- }] }, { type: i0.ChangeDetectorRef, decorators: [{
2493
- type: Inject,
2494
- args: [ChangeDetectorRef]
2495
- }] }], propDecorators: { sections: [{
2486
+ }], propDecorators: { sections: [{
2496
2487
  type: ContentChildren,
2497
2488
  args: [BizyFilterSectionComponent, { descendants: true }]
2498
2489
  }], id: [{
@@ -2510,6 +2501,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
2510
2501
  }] } });
2511
2502
 
2512
2503
  class BizyFilterContentComponent {
2504
+ #elementRef = inject(ElementRef);
2505
+ getNativeElement = () => this.#elementRef?.nativeElement;
2513
2506
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFilterContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2514
2507
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyFilterContentComponent, isStandalone: true, selector: "bizy-filter-content", ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{font-size:1rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2515
2508
  }
@@ -2690,8 +2683,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
2690
2683
  }] });
2691
2684
 
2692
2685
  class BizySelectOptionComponent {
2693
- elementRef;
2694
- ref;
2686
+ #elementRef = inject(ElementRef);
2687
+ #ref = inject(ChangeDetectorRef);
2695
2688
  id = `bizy-select-option-${Math.random()}`;
2696
2689
  disabled = false;
2697
2690
  customClass = '';
@@ -2706,16 +2699,12 @@ class BizySelectOptionComponent {
2706
2699
  get selected$() {
2707
2700
  return this.#selected.asObservable();
2708
2701
  }
2709
- constructor(elementRef, ref) {
2710
- this.elementRef = elementRef;
2711
- this.ref = ref;
2712
- }
2713
2702
  _onSelect() {
2714
2703
  if (this.disabled) {
2715
2704
  return;
2716
2705
  }
2717
2706
  this.onSelect.emit();
2718
- this.ref.detectChanges();
2707
+ this.#ref.detectChanges();
2719
2708
  }
2720
2709
  getId = () => {
2721
2710
  return this.id;
@@ -2723,23 +2712,18 @@ class BizySelectOptionComponent {
2723
2712
  getSelected = () => {
2724
2713
  return this.#selected.value;
2725
2714
  };
2715
+ getNativeElement = () => this.#elementRef?.nativeElement;
2726
2716
  getValue = () => {
2727
- const value = this.elementRef?.nativeElement?.firstChild?.children[0]?.innerText;
2717
+ const value = this.#elementRef?.nativeElement?.firstChild?.children[0]?.innerText;
2728
2718
  return value ?? '';
2729
2719
  };
2730
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySelectOptionComponent, deps: [{ token: ElementRef }, { token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2720
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySelectOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2731
2721
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizySelectOptionComponent, isStandalone: true, selector: "bizy-select-option", inputs: { id: "id", disabled: "disabled", customClass: "customClass", selected: "selected" }, outputs: { onSelect: "onSelect" }, ngImport: i0, template: "<button \n type=\"button\"\n [id]=\"id\"\n (click)=\"_onSelect()\"\n (keyup.enter)=\"_onSelect()\"\n [ngClass]=\"{'bizy-select-option--selected': (selected$ | async), 'bizy-select-option--disabled': disabled}\"\n class=\"bizy-select-option {{customClass}}\">\n\n <span class=\"bizy-select-option__content\">\n <ng-content></ng-content>\n </span>\n \n</button>", styles: [":host{font-size:1rem}.bizy-select-option{font-size:1rem;width:100%;border:none;background-color:var(--bizy-select-background-color);display:flex;align-items:center;justify-content:space-between;column-gap:.5rem;padding:.5rem;color:var(--bizy-select-option-color);cursor:pointer}.bizy-select-option:hover{background-color:var(--bizy-select-option-hover-background-color)}.bizy-select-option--selected{background-color:var(--bizy-select-option-selected-background-color)!important}.bizy-select-option--selected ::ng-deep .bizy-select-option__content *{color:var(--bizy-select-option-selected-color)}.bizy-select-option--disabled{opacity:.5;pointer-events:none;cursor:not-allowed!important}.bizy-select-option__content{font-size:1rem;display:flex;align-items:center;column-gap:.3rem;text-align:start}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2732
2722
  }
2733
2723
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySelectOptionComponent, decorators: [{
2734
2724
  type: Component,
2735
2725
  args: [{ selector: 'bizy-select-option', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<button \n type=\"button\"\n [id]=\"id\"\n (click)=\"_onSelect()\"\n (keyup.enter)=\"_onSelect()\"\n [ngClass]=\"{'bizy-select-option--selected': (selected$ | async), 'bizy-select-option--disabled': disabled}\"\n class=\"bizy-select-option {{customClass}}\">\n\n <span class=\"bizy-select-option__content\">\n <ng-content></ng-content>\n </span>\n \n</button>", styles: [":host{font-size:1rem}.bizy-select-option{font-size:1rem;width:100%;border:none;background-color:var(--bizy-select-background-color);display:flex;align-items:center;justify-content:space-between;column-gap:.5rem;padding:.5rem;color:var(--bizy-select-option-color);cursor:pointer}.bizy-select-option:hover{background-color:var(--bizy-select-option-hover-background-color)}.bizy-select-option--selected{background-color:var(--bizy-select-option-selected-background-color)!important}.bizy-select-option--selected ::ng-deep .bizy-select-option__content *{color:var(--bizy-select-option-selected-color)}.bizy-select-option--disabled{opacity:.5;pointer-events:none;cursor:not-allowed!important}.bizy-select-option__content{font-size:1rem;display:flex;align-items:center;column-gap:.3rem;text-align:start}\n"] }]
2736
- }], ctorParameters: () => [{ type: i0.ElementRef, decorators: [{
2737
- type: Inject,
2738
- args: [ElementRef]
2739
- }] }, { type: i0.ChangeDetectorRef, decorators: [{
2740
- type: Inject,
2741
- args: [ChangeDetectorRef]
2742
- }] }], propDecorators: { id: [{
2726
+ }], propDecorators: { id: [{
2743
2727
  type: Input
2744
2728
  }], disabled: [{
2745
2729
  type: Input
@@ -2752,7 +2736,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
2752
2736
  }] } });
2753
2737
 
2754
2738
  class BizySelectComponent {
2755
- ref;
2739
+ #elementRef = inject(ElementRef);
2740
+ #ref = inject(ChangeDetectorRef);
2756
2741
  #viewContainerRef = inject(ViewContainerRef);
2757
2742
  templatePortalContent;
2758
2743
  options;
@@ -2771,9 +2756,6 @@ class BizySelectComponent {
2771
2756
  templatePortal = null;
2772
2757
  #subscription = new Subscription();
2773
2758
  #contentChildrenSubscription = new Subscription();
2774
- constructor(ref) {
2775
- this.ref = ref;
2776
- }
2777
2759
  get touched() {
2778
2760
  return this.bizyInput ? this.bizyInput.touched : false;
2779
2761
  }
@@ -2787,11 +2769,11 @@ class BizySelectComponent {
2787
2769
  this.options.forEach(_option => {
2788
2770
  this.#subscription.add(_option.onSelect.subscribe(() => {
2789
2771
  this.close();
2790
- this.ref.detectChanges();
2772
+ this.#ref.detectChanges();
2791
2773
  }));
2792
2774
  this.#subscription.add(_option.selected$.pipe(filter(_value => _value === true)).subscribe(() => {
2793
2775
  this._optionValue = _option.getValue();
2794
- this.ref.detectChanges();
2776
+ this.#ref.detectChanges();
2795
2777
  }));
2796
2778
  });
2797
2779
  this.#contentChildrenSubscription.add(this.options.changes.subscribe(() => {
@@ -2800,15 +2782,15 @@ class BizySelectComponent {
2800
2782
  this.options.forEach(_option => {
2801
2783
  this.#subscription.add(_option.onSelect.subscribe(() => {
2802
2784
  this.close();
2803
- this.ref.detectChanges();
2785
+ this.#ref.detectChanges();
2804
2786
  }));
2805
2787
  this.#subscription.add(_option.selected$.pipe(filter(_value => _value === true)).subscribe(() => {
2806
2788
  this._optionValue = _option.getValue();
2807
- this.ref.detectChanges();
2789
+ this.#ref.detectChanges();
2808
2790
  }));
2809
2791
  });
2810
2792
  }));
2811
- this.ref.detectChanges();
2793
+ this.#ref.detectChanges();
2812
2794
  }
2813
2795
  _onOpen(event) {
2814
2796
  if (this.disabled || this.readonly) {
@@ -2821,7 +2803,7 @@ class BizySelectComponent {
2821
2803
  if (this.bizyInput) {
2822
2804
  this.bizyInput.setFocus(true);
2823
2805
  }
2824
- this.ref.detectChanges();
2806
+ this.#ref.detectChanges();
2825
2807
  }
2826
2808
  close = (event, select) => {
2827
2809
  if (select && event && event.target && event.target === select.bizyInputWrapper.nativeElement) {
@@ -2830,28 +2812,26 @@ class BizySelectComponent {
2830
2812
  this.opened = false;
2831
2813
  this.openedChange.emit(this.opened);
2832
2814
  this.onOpen.emit(this.opened);
2833
- this.ref.detectChanges();
2815
+ this.#ref.detectChanges();
2834
2816
  };
2835
2817
  setTouched(touched) {
2836
2818
  if (this.bizyInput) {
2837
2819
  this.bizyInput.setTouched(touched);
2838
- this.ref.detectChanges();
2820
+ this.#ref.detectChanges();
2839
2821
  }
2840
2822
  }
2823
+ getNativeElement = () => this.#elementRef?.nativeElement;
2841
2824
  ngOnDestroy() {
2842
2825
  this.#subscription.unsubscribe();
2843
2826
  this.#contentChildrenSubscription.unsubscribe();
2844
2827
  }
2845
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySelectComponent, deps: [{ token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2828
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2846
2829
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizySelectComponent, isStandalone: true, selector: "bizy-select", inputs: { id: "id", disabled: "disabled", readonly: "readonly", placeholder: "placeholder", customClass: "customClass", opened: "opened" }, outputs: { openedChange: "openedChange", onSelect: "onSelect", onOpen: "onOpen" }, queries: [{ propertyName: "options", predicate: BizySelectOptionComponent }], viewQueries: [{ propertyName: "templatePortalContent", first: true, predicate: ["templatePortalContent"], descendants: true }, { propertyName: "bizyInput", first: true, predicate: ["bizyInput"], descendants: true }], ngImport: i0, template: "<bizy-input\n #bizyInput\n [readonly]=\"true\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"placeholder\"\n [value]=\"_optionValue\"\n [ngClass]=\"{'bizy-select--readonly': readonly}\"\n (onSelect)=\"_onOpen($event); bizyInput?.setTouched(true)\"\n (onEnter)=\"_onOpen($event); bizyInput?.setTouched(true)\"\n class=\"bizy-select {{customClass}}\"\n cdkOverlayOrigin\n #bizySelectTrigger=\"cdkOverlayOrigin\">\n\n <svg \n slot=\"suffix\"\n id=\"bizy-select-arrow\"\n *ngIf=\"!readonly\"\n class=\"bizy-select__arrow\"\n [ngClass]=\"{'bizy-select__arrow--opened': opened}\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 320 512\">\n <path d=\"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\"/>\n </svg>\n\n <ng-container slot=\"header\">\n <ng-content select=\"[slot=header]\"></ng-content>\n </ng-container>\n\n <ng-container slot=\"prefix\">\n <ng-content select=\"[slot=prefix]\"></ng-content>\n </ng-container>\n\n</bizy-input>\n\n<span class=\"bizy-select__errors\" *ngIf=\"touched\">\n <ng-content select=\"[slot=error]\"></ng-content>\n</span>\n\n<ng-template #templatePortalContent>\n <ng-content select=\"bizy-select-option\"></ng-content>\n</ng-template>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayMinWidth]=\"bizyInput.getWidth()\"\n [cdkConnectedOverlayOrigin]=\"bizySelectTrigger\"\n (overlayOutsideClick)=\"close($event, bizyInput)\"\n [cdkConnectedOverlayOpen]=\"opened\">\n\n <span class=\"bizy-select__options\">\n\n <span class=\"bizy-select__options__search\">\n <ng-content select=\"bizy-input\"></ng-content>\n </span>\n\n <ng-template [cdkPortalOutlet]=\"templatePortal\"></ng-template>\n \n </span>\n\n</ng-template>\n", styles: [":host{font-size:1rem;width:var(--bizy-select-width);min-width:var(--bizy-select-min-width);max-width:var(--bizy-select-max-width);display:flex;flex-direction:column;row-gap:.3rem;--bizy-input-focus-color: transparent}:host:has(>.bizy-select__errors:not(:empty)) ::ng-deep .bizy-input__bottom-line{background-color:var(--bizy-input-invalid-color)!important;visibility:visible!important}:host:has(>.bizy-select__errors:not(:empty)) ::ng-deep .bizy-input__content__input{color:var(--bizy-input-invalid-color)!important}.bizy-select{--bizy-input-cursor: pointer;--bizy-input-background-color: var(--bizy-select-background-color);--bizy-input-color: var(--bizy-select-color)}.bizy-select--readonly{--bizy-input-cursor: default}.bizy-select__arrow{height:var(--bizy-select-arrow-height);pointer-events:none;display:block;transition:transform .2s ease;fill:var(--bizy-select-color)}.bizy-select__arrow--opened{transform:rotate(180deg)}.bizy-select__options{background-color:var(--bizy-select-background-color);display:flex;min-width:fit-content;width:100%;flex-direction:column;box-shadow:0 7px 14px #32325d1a,0 3px 6px #00000014;max-height:var(--bizy-select-height);overflow-y:auto;overflow-x:hidden;position:relative}.bizy-select__options::-webkit-scrollbar{width:.5rem;height:.5rem}.bizy-select__options::-webkit-scrollbar-thumb{border-radius:1rem;background-color:var(--bizy-select-scroll-bar-color)}.bizy-select__options::-webkit-scrollbar-thumb:hover{background-color:var(--bizy-select-scroll-bar-hover-color)}.bizy-select__options::-webkit-scrollbar-button{height:1rem}.bizy-select__options__search{position:sticky;z-index:1;top:0}::ng-deep .bizy-select__options__search{--bizy-input-width: auto;--bizy-input-background-color: #fff;--bizy-input-min-width: var(--bizy-select-min-width);--bizy-input-max-width: auto;margin-bottom:.3rem}.bizy-select__errors:empty{display:none!important}::ng-deep .bizy-select__errors *{color:var(--bizy-input-invalid-color)!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: BizyInputComponent, selector: "bizy-input", inputs: ["id", "name", "type", "customClass", "placeholder", "debounceTime", "rows", "disabled", "readonly", "autofocus", "value"], outputs: ["valueChange", "onChange", "onEnter", "onBackspace", "onSelect", "onBlur", "onFocus"] }, { kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i2$2.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i2$2.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2847
2830
  }
2848
2831
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySelectComponent, decorators: [{
2849
2832
  type: Component,
2850
2833
  args: [{ selector: 'bizy-select', imports: [CommonModule, BizyInputComponent, OverlayModule, PortalModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<bizy-input\n #bizyInput\n [readonly]=\"true\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [placeholder]=\"placeholder\"\n [value]=\"_optionValue\"\n [ngClass]=\"{'bizy-select--readonly': readonly}\"\n (onSelect)=\"_onOpen($event); bizyInput?.setTouched(true)\"\n (onEnter)=\"_onOpen($event); bizyInput?.setTouched(true)\"\n class=\"bizy-select {{customClass}}\"\n cdkOverlayOrigin\n #bizySelectTrigger=\"cdkOverlayOrigin\">\n\n <svg \n slot=\"suffix\"\n id=\"bizy-select-arrow\"\n *ngIf=\"!readonly\"\n class=\"bizy-select__arrow\"\n [ngClass]=\"{'bizy-select__arrow--opened': opened}\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 320 512\">\n <path d=\"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\"/>\n </svg>\n\n <ng-container slot=\"header\">\n <ng-content select=\"[slot=header]\"></ng-content>\n </ng-container>\n\n <ng-container slot=\"prefix\">\n <ng-content select=\"[slot=prefix]\"></ng-content>\n </ng-container>\n\n</bizy-input>\n\n<span class=\"bizy-select__errors\" *ngIf=\"touched\">\n <ng-content select=\"[slot=error]\"></ng-content>\n</span>\n\n<ng-template #templatePortalContent>\n <ng-content select=\"bizy-select-option\"></ng-content>\n</ng-template>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayMinWidth]=\"bizyInput.getWidth()\"\n [cdkConnectedOverlayOrigin]=\"bizySelectTrigger\"\n (overlayOutsideClick)=\"close($event, bizyInput)\"\n [cdkConnectedOverlayOpen]=\"opened\">\n\n <span class=\"bizy-select__options\">\n\n <span class=\"bizy-select__options__search\">\n <ng-content select=\"bizy-input\"></ng-content>\n </span>\n\n <ng-template [cdkPortalOutlet]=\"templatePortal\"></ng-template>\n \n </span>\n\n</ng-template>\n", styles: [":host{font-size:1rem;width:var(--bizy-select-width);min-width:var(--bizy-select-min-width);max-width:var(--bizy-select-max-width);display:flex;flex-direction:column;row-gap:.3rem;--bizy-input-focus-color: transparent}:host:has(>.bizy-select__errors:not(:empty)) ::ng-deep .bizy-input__bottom-line{background-color:var(--bizy-input-invalid-color)!important;visibility:visible!important}:host:has(>.bizy-select__errors:not(:empty)) ::ng-deep .bizy-input__content__input{color:var(--bizy-input-invalid-color)!important}.bizy-select{--bizy-input-cursor: pointer;--bizy-input-background-color: var(--bizy-select-background-color);--bizy-input-color: var(--bizy-select-color)}.bizy-select--readonly{--bizy-input-cursor: default}.bizy-select__arrow{height:var(--bizy-select-arrow-height);pointer-events:none;display:block;transition:transform .2s ease;fill:var(--bizy-select-color)}.bizy-select__arrow--opened{transform:rotate(180deg)}.bizy-select__options{background-color:var(--bizy-select-background-color);display:flex;min-width:fit-content;width:100%;flex-direction:column;box-shadow:0 7px 14px #32325d1a,0 3px 6px #00000014;max-height:var(--bizy-select-height);overflow-y:auto;overflow-x:hidden;position:relative}.bizy-select__options::-webkit-scrollbar{width:.5rem;height:.5rem}.bizy-select__options::-webkit-scrollbar-thumb{border-radius:1rem;background-color:var(--bizy-select-scroll-bar-color)}.bizy-select__options::-webkit-scrollbar-thumb:hover{background-color:var(--bizy-select-scroll-bar-hover-color)}.bizy-select__options::-webkit-scrollbar-button{height:1rem}.bizy-select__options__search{position:sticky;z-index:1;top:0}::ng-deep .bizy-select__options__search{--bizy-input-width: auto;--bizy-input-background-color: #fff;--bizy-input-min-width: var(--bizy-select-min-width);--bizy-input-max-width: auto;margin-bottom:.3rem}.bizy-select__errors:empty{display:none!important}::ng-deep .bizy-select__errors *{color:var(--bizy-input-invalid-color)!important}\n"] }]
2851
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
2852
- type: Inject,
2853
- args: [ChangeDetectorRef]
2854
- }] }], propDecorators: { templatePortalContent: [{
2834
+ }], propDecorators: { templatePortalContent: [{
2855
2835
  type: ViewChild,
2856
2836
  args: ['templatePortalContent']
2857
2837
  }], options: [{
@@ -2881,6 +2861,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
2881
2861
  }] } });
2882
2862
 
2883
2863
  class BizyFormComponent {
2864
+ #elementRef = inject(ElementRef);
2884
2865
  inputs;
2885
2866
  selects;
2886
2867
  datePickers;
@@ -2907,6 +2888,7 @@ class BizyFormComponent {
2907
2888
  });
2908
2889
  }
2909
2890
  };
2891
+ getNativeElement = () => this.#elementRef?.nativeElement;
2910
2892
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2911
2893
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyFormComponent, isStandalone: true, selector: "bizy-form", inputs: { id: "id", customClass: "customClass" }, queries: [{ propertyName: "inputs", predicate: BizyInputComponent, descendants: true }, { propertyName: "selects", predicate: BizySelectComponent, descendants: true }, { propertyName: "datePickers", predicate: BizyDatePickerComponent, descendants: true }], ngImport: i0, template: "<form class=\"bizy-form {{customClass}}\" [id]=\"id\" (ngSubmit)=\"onSubmit($event)\">\n <ng-content></ng-content>\n</form>", styles: [":host{font-size:1rem;max-width:var(--bizy-form-max-width)}.bizy-form{max-width:inherit;display:flex;flex-direction:column;row-gap:var(--bizy-form-row-gap);--bizy-input-max-width: 100%;--bizy-select-max-width: 100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2$1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2912
2894
  }
@@ -2983,6 +2965,7 @@ class BizyGridRowComponent {
2983
2965
  this.#renderer.setStyle(this.#elementRef.nativeElement, 'gridTemplateColumns', `repeat(${itemsPerRow}, minmax(0, 1fr)`);
2984
2966
  this.#ref.detectChanges();
2985
2967
  }
2968
+ getNativeElement = () => this.#elementRef?.nativeElement;
2986
2969
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyGridRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2987
2970
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyGridRowComponent, isStandalone: true, selector: "bizy-grid-row", inputs: { rowHeight: "rowHeight", itemsPerRow: "itemsPerRow" }, ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{font-size:1rem;display:grid;column-gap:var(--bizy-grid-gap);margin-bottom:var(--bizy-grid-gap)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2988
2971
  }
@@ -2996,10 +2979,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
2996
2979
  }] } });
2997
2980
 
2998
2981
  class BizyGridComponent {
2999
- ref;
3000
- document;
3001
- renderer;
3002
- elementRef;
2982
+ #elementRef = inject(ElementRef);
2983
+ #ref = inject(ChangeDetectorRef);
2984
+ #document = inject(DOCUMENT);
2985
+ #renderer = inject(Renderer2);
3003
2986
  virtualScroll;
3004
2987
  content;
3005
2988
  gridDirective;
@@ -3014,12 +2997,6 @@ class BizyGridComponent {
3014
2997
  items = [];
3015
2998
  itemTemplate;
3016
2999
  itemsPerRow = 1;
3017
- constructor(ref, document, renderer, elementRef) {
3018
- this.ref = ref;
3019
- this.document = document;
3020
- this.renderer = renderer;
3021
- this.elementRef = elementRef;
3022
- }
3023
3000
  ngAfterContentInit() {
3024
3001
  if (this.gridDirective) {
3025
3002
  this.#initView();
@@ -3031,9 +3008,9 @@ class BizyGridComponent {
3031
3008
  }
3032
3009
  this.#initView();
3033
3010
  this.#rowScrollingMutationObserver.disconnect();
3034
- this.ref.detectChanges();
3011
+ this.#ref.detectChanges();
3035
3012
  });
3036
- this.#rowScrollingMutationObserver.observe(this.document.body, { childList: true, subtree: true });
3013
+ this.#rowScrollingMutationObserver.observe(this.#document.body, { childList: true, subtree: true });
3037
3014
  }
3038
3015
  }
3039
3016
  #initView = () => {
@@ -3049,7 +3026,7 @@ class BizyGridComponent {
3049
3026
  this.#view.createEmbeddedView(this.content);
3050
3027
  }
3051
3028
  this.#resizeObserver = new ResizeObserver(() => this.notifier$.next());
3052
- const resizeRef = this.resizeRef ? this.resizeRef : this.renderer.parentNode(this.elementRef.nativeElement) ? this.renderer.parentNode(this.elementRef.nativeElement) : this.elementRef.nativeElement;
3029
+ const resizeRef = this.resizeRef ? this.resizeRef : this.#renderer.parentNode(this.#elementRef.nativeElement) ? this.#renderer.parentNode(this.#elementRef.nativeElement) : this.#elementRef.nativeElement;
3053
3030
  this.#resizeObserver.observe(resizeRef);
3054
3031
  this.#subscription.add(this.notifier$.pipe(debounceTime$1(50)).subscribe(() => {
3055
3032
  this.#updateView();
@@ -3057,10 +3034,10 @@ class BizyGridComponent {
3057
3034
  };
3058
3035
  #updateView = () => {
3059
3036
  this.itemTemplate = this.gridDirective.templateRef;
3060
- const rowWidth = this.elementRef.nativeElement.offsetWidth || this.elementRef.nativeElement.firstChild.offsetWidth;
3037
+ const rowWidth = this.#elementRef.nativeElement.offsetWidth || this.#elementRef.nativeElement.firstChild.offsetWidth;
3061
3038
  let columnWidth = 100;
3062
- const fontSize = Number(getComputedStyle(this.elementRef.nativeElement).getPropertyValue('font-size').split('px')[0]);
3063
- const rowHeightParameter = getComputedStyle(this.elementRef.nativeElement).getPropertyValue('--bizy-grid-row-height');
3039
+ const fontSize = Number(getComputedStyle(this.#elementRef.nativeElement).getPropertyValue('font-size').split('px')[0]);
3040
+ const rowHeightParameter = getComputedStyle(this.#elementRef.nativeElement).getPropertyValue('--bizy-grid-row-height');
3064
3041
  if (rowHeightParameter && rowHeightParameter.includes('rem')) {
3065
3042
  this.rowHeight = fontSize * Number(rowHeightParameter.split('rem')[0]);
3066
3043
  }
@@ -3068,14 +3045,14 @@ class BizyGridComponent {
3068
3045
  this.rowHeight = Number(rowHeightParameter.split('px')[0]);
3069
3046
  }
3070
3047
  let gap = 10;
3071
- const gapParameter = getComputedStyle(this.elementRef.nativeElement).getPropertyValue('--bizy-grid-gap');
3048
+ const gapParameter = getComputedStyle(this.#elementRef.nativeElement).getPropertyValue('--bizy-grid-gap');
3072
3049
  if (gapParameter && gapParameter.includes('rem')) {
3073
3050
  gap = fontSize * Number(gapParameter.split('rem')[0]);
3074
3051
  }
3075
3052
  else if (gapParameter && gapParameter.includes('px')) {
3076
3053
  gap = Number(gapParameter.split('px')[0]);
3077
3054
  }
3078
- const columnWidthParameter = getComputedStyle(this.elementRef.nativeElement).getPropertyValue('--bizy-grid-column-width');
3055
+ const columnWidthParameter = getComputedStyle(this.#elementRef.nativeElement).getPropertyValue('--bizy-grid-column-width');
3079
3056
  if (columnWidthParameter && columnWidthParameter.includes('rem')) {
3080
3057
  columnWidth = fontSize * Number(columnWidthParameter.split('rem')[0]);
3081
3058
  }
@@ -3096,7 +3073,7 @@ class BizyGridComponent {
3096
3073
  itemRows.push(row);
3097
3074
  }
3098
3075
  this.itemRows = itemRows;
3099
- this.ref.detectChanges();
3076
+ this.#ref.detectChanges();
3100
3077
  };
3101
3078
  trackById(index, item) {
3102
3079
  return item?.id ?? index;
@@ -3113,25 +3090,14 @@ class BizyGridComponent {
3113
3090
  this.#resizeObserver.disconnect();
3114
3091
  }
3115
3092
  }
3116
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyGridComponent, deps: [{ token: ChangeDetectorRef }, { token: DOCUMENT }, { token: Renderer2 }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Component });
3093
+ getNativeElement = () => this.#elementRef?.nativeElement;
3094
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3117
3095
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyGridComponent, isStandalone: true, selector: "bizy-grid", inputs: { resizeRef: "resizeRef" }, queries: [{ propertyName: "gridDirective", first: true, predicate: BizyGridForDirective, descendants: true }], viewQueries: [{ propertyName: "virtualScroll", first: true, predicate: ["cdkVirtualScroll"], descendants: true }, { propertyName: "content", first: true, predicate: ["gridScrollingContent"], descendants: true }], ngImport: i0, template: "<div class=\"bizy-grid\" [ngClass]=\"{'bizy-grid--empty': items && items.length === 0}\">\n\n <cdk-virtual-scroll-viewport\n #cdkVirtualScroll \n class=\"bizy-grid__rows\"\n [itemSize]=\"rowHeight\"\n [minBufferPx]=\"rowHeight + (rowHeight * 5)\"\n [maxBufferPx]=\"rowHeight + (rowHeight * 10)\">\n\n <ng-content></ng-content>\n \n <ng-template #gridScrollingContent>\n <ng-template \n let-item\n let-index=\"index\"\n let-first=\"first\"\n let-last=\"last\"\n let-even=\"even\"\n let-odd=\"odd\"\n cdkVirtualFor\n [cdkVirtualForOf]=\"itemRows\">\n <bizy-grid-row [rowHeight]=\"rowHeight\" [itemsPerRow]=\"itemsPerRow\">\n <ng-container *ngFor=\"let it of item; trackBy: trackById; let i = index\">\n <ng-template \n *ngTemplateOutlet=\"itemTemplate;\n context: { \n $implicit: it,\n index: index * itemsPerRow + i,\n rowIndex: index,\n rowFirst: first,\n rowLast: last,\n rowEven: even,\n rowOdd: odd\n }\"></ng-template>\n </ng-container>\n </bizy-grid-row>\n </ng-template>\n </ng-template>\n </cdk-virtual-scroll-viewport>\n\n</div>\n", styles: [":host{display:inline-block!important;min-height:var(--bizy-grid-min-height);max-height:var(--bizy-grid-max-height);height:var(--bizy-grid-height);width:var(--bizy-grid-width);flex:1;overflow-x:auto;overflow-y:hidden;font-size:1rem}:host:has(.bizy-grid--empty){height:0!important;min-height:0!important;max-height:0!important}.bizy-grid{width:inherit;height:inherit;min-width:fit-content;display:flex;flex-direction:column;row-gap:.3rem;overflow-x:clip;background-color:var(--bizy-grid-background-color)}.bizy-grid__rows{width:100%;display:flex;flex-direction:column;min-width:fit-content;overflow-x:hidden}::ng-deep .cdk-virtual-scrollable{height:100%;width:100%;overflow-y:auto!important;overflow-x:hidden!important;contain:inline-size!important}::ng-deep .cdk-virtual-scroll-content-wrapper{min-width:100%;max-width:100%}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar{width:.5rem;height:.5rem}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar-thumb{border-radius:1rem;background-color:var(--bizy-grid-scroll-bar-color)}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar-thumb:hover{background-color:var(--bizy-grid-scroll-bar-hover-color)}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar-button{height:1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: ScrollingModule }, { kind: "directive", type: i2$2.ɵɵCdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i2$2.ɵɵCdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i2$2.ɵɵCdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: BizyGridRowComponent, selector: "bizy-grid-row", inputs: ["rowHeight", "itemsPerRow"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3118
3096
  }
3119
3097
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyGridComponent, decorators: [{
3120
3098
  type: Component,
3121
3099
  args: [{ selector: 'bizy-grid', imports: [CommonModule, ScrollingModule, BizyGridRowComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bizy-grid\" [ngClass]=\"{'bizy-grid--empty': items && items.length === 0}\">\n\n <cdk-virtual-scroll-viewport\n #cdkVirtualScroll \n class=\"bizy-grid__rows\"\n [itemSize]=\"rowHeight\"\n [minBufferPx]=\"rowHeight + (rowHeight * 5)\"\n [maxBufferPx]=\"rowHeight + (rowHeight * 10)\">\n\n <ng-content></ng-content>\n \n <ng-template #gridScrollingContent>\n <ng-template \n let-item\n let-index=\"index\"\n let-first=\"first\"\n let-last=\"last\"\n let-even=\"even\"\n let-odd=\"odd\"\n cdkVirtualFor\n [cdkVirtualForOf]=\"itemRows\">\n <bizy-grid-row [rowHeight]=\"rowHeight\" [itemsPerRow]=\"itemsPerRow\">\n <ng-container *ngFor=\"let it of item; trackBy: trackById; let i = index\">\n <ng-template \n *ngTemplateOutlet=\"itemTemplate;\n context: { \n $implicit: it,\n index: index * itemsPerRow + i,\n rowIndex: index,\n rowFirst: first,\n rowLast: last,\n rowEven: even,\n rowOdd: odd\n }\"></ng-template>\n </ng-container>\n </bizy-grid-row>\n </ng-template>\n </ng-template>\n </cdk-virtual-scroll-viewport>\n\n</div>\n", styles: [":host{display:inline-block!important;min-height:var(--bizy-grid-min-height);max-height:var(--bizy-grid-max-height);height:var(--bizy-grid-height);width:var(--bizy-grid-width);flex:1;overflow-x:auto;overflow-y:hidden;font-size:1rem}:host:has(.bizy-grid--empty){height:0!important;min-height:0!important;max-height:0!important}.bizy-grid{width:inherit;height:inherit;min-width:fit-content;display:flex;flex-direction:column;row-gap:.3rem;overflow-x:clip;background-color:var(--bizy-grid-background-color)}.bizy-grid__rows{width:100%;display:flex;flex-direction:column;min-width:fit-content;overflow-x:hidden}::ng-deep .cdk-virtual-scrollable{height:100%;width:100%;overflow-y:auto!important;overflow-x:hidden!important;contain:inline-size!important}::ng-deep .cdk-virtual-scroll-content-wrapper{min-width:100%;max-width:100%}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar{width:.5rem;height:.5rem}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar-thumb{border-radius:1rem;background-color:var(--bizy-grid-scroll-bar-color)}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar-thumb:hover{background-color:var(--bizy-grid-scroll-bar-hover-color)}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar-button{height:1rem}\n"] }]
3122
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
3123
- type: Inject,
3124
- args: [ChangeDetectorRef]
3125
- }] }, { type: Document, decorators: [{
3126
- type: Inject,
3127
- args: [DOCUMENT]
3128
- }] }, { type: i0.Renderer2, decorators: [{
3129
- type: Inject,
3130
- args: [Renderer2]
3131
- }] }, { type: i0.ElementRef, decorators: [{
3132
- type: Inject,
3133
- args: [ElementRef]
3134
- }] }], propDecorators: { virtualScroll: [{
3100
+ }], propDecorators: { virtualScroll: [{
3135
3101
  type: ViewChild,
3136
3102
  args: ['cdkVirtualScroll']
3137
3103
  }], content: [{
@@ -3187,7 +3153,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
3187
3153
  }] });
3188
3154
 
3189
3155
  class BizyListComponent {
3156
+ #elementRef = inject(ElementRef);
3190
3157
  id = `bizy-list-${Math.random()}`;
3158
+ getNativeElement = () => this.#elementRef?.nativeElement;
3191
3159
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3192
3160
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyListComponent, isStandalone: true, selector: "bizy-list", inputs: { id: "id" }, host: { properties: { "id": "id" } }, ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{font-size:1rem;height:var(--bizy-list-height);overflow:auto;width:var(--bizy-list-width);display:flex;flex-direction:var(--bizy-list-flex-direction);column-gap:var(--bizy-list-column-gap);row-gap:var(--bizy-list-row-gap);justify-content:var(--bizy-list-justify-content);align-items:var(--bizy-list-align-items)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3193
3161
  }
@@ -3217,6 +3185,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
3217
3185
  }] });
3218
3186
 
3219
3187
  class BizyMenuOptionComponent {
3188
+ #elementRef = inject(ElementRef);
3220
3189
  id = `bizy-menu-option-${Math.random()}`;
3221
3190
  disabled = false;
3222
3191
  customClass = '';
@@ -3228,6 +3197,7 @@ class BizyMenuOptionComponent {
3228
3197
  }
3229
3198
  this.onSelect.emit(event);
3230
3199
  }
3200
+ getNativeElement = () => this.#elementRef?.nativeElement;
3231
3201
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyMenuOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3232
3202
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyMenuOptionComponent, isStandalone: true, selector: "bizy-menu-option", inputs: { id: "id", disabled: "disabled", customClass: "customClass", selected: "selected" }, outputs: { onSelect: "onSelect" }, ngImport: i0, template: "<button \n type=\"button\"\n [id]=\"id\"\n (click)=\"_onSelect($event)\"\n (keyup.enter)=\"_onSelect($event)\"\n [ngClass]=\"{'bizy-menu-option--selected': selected, 'bizy-menu-option--disabled': disabled}\"\n class=\"bizy-menu-option {{customClass}}\">\n\n <span class=\"bizy-menu-option__content\">\n <ng-content></ng-content>\n </span>\n \n</button>\n\n<span class=\"bizy-menu-option__menu\">\n <ng-content select=\"bizy-menu\"></ng-content>\n</span>\n", styles: [":host{font-size:1rem}:host:has(>.bizy-menu-option__menu:not(:empty)) .bizy-menu-option{display:none!important}.bizy-menu-option{font-size:1rem;width:100%;border:none;background-color:var(--bizy-menu-option-background-color);display:flex;align-items:center;justify-content:space-between;column-gap:.5rem;padding:.5rem;color:var(--bizy-menu-option-color);cursor:pointer}.bizy-menu-option:hover{background-color:var(--bizy-menu-option-hover-background-color)}.bizy-menu-option--selected{color:var(--bizy-menu-option-selected-color)!important;background-color:var(--bizy-menu-option-selected-background-color)!important}::ng-deep .bizy-menu-option--selected *{color:var(--bizy-menu-option-selected-color)!important}.bizy-menu-option--disabled{opacity:.5;pointer-events:none;cursor:not-allowed!important}.bizy-menu-option__content{font-size:1rem;display:flex;align-items:center;column-gap:.3rem;width:100%}::ng-deep .bizy-menu-option__menu *{color:var(--bizy-menu-option-color);fill:var(--bizy-menu-option-color)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3233
3203
  }
@@ -3247,6 +3217,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
3247
3217
  }] } });
3248
3218
 
3249
3219
  class BizyMenuComponent {
3220
+ #elementRef = inject(ElementRef);
3250
3221
  #ref = inject(ChangeDetectorRef);
3251
3222
  options;
3252
3223
  id = `bizy-menu-${Math.random()}`;
@@ -3304,6 +3275,7 @@ class BizyMenuComponent {
3304
3275
  this.#subscription.unsubscribe();
3305
3276
  this.#ref.detectChanges();
3306
3277
  };
3278
+ getNativeElement = () => this.#elementRef?.nativeElement;
3307
3279
  ngOnDestroy() {
3308
3280
  this.#subscription.unsubscribe();
3309
3281
  }
@@ -3335,8 +3307,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
3335
3307
  }] } });
3336
3308
 
3337
3309
  class BizyMenuTitleComponent {
3310
+ #elementRef = inject(ElementRef);
3338
3311
  id = `bizy-menu-title-${Math.random()}`;
3339
3312
  customClass = '';
3313
+ getNativeElement = () => this.#elementRef?.nativeElement;
3340
3314
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyMenuTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3341
3315
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyMenuTitleComponent, isStandalone: true, selector: "bizy-menu-title", inputs: { id: "id", customClass: "customClass" }, host: { properties: { "id": "id", "class": "customClass" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{font-size:1rem;background-color:var(--bizy-menu-title-background-color);color:var(--bizy-menu-title-color);padding:.5rem;cursor:default;text-decoration:var(--bizy-menu-title-text-decoration);text-underline-offset:.3rem;display:flex;align-items:center}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3342
3316
  }
@@ -3376,6 +3350,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
3376
3350
  }] });
3377
3351
 
3378
3352
  const EMPTY_CHART = [0];
3353
+ const MIN_CHART_SIZE = 350; // px;
3379
3354
  class BizyPieChartComponent {
3380
3355
  #elementRef = inject(ElementRef);
3381
3356
  #document = inject(DOCUMENT);
@@ -3390,6 +3365,7 @@ class BizyPieChartComponent {
3390
3365
  onSelect = new EventEmitter();
3391
3366
  onDownload = new EventEmitter();
3392
3367
  #echarts = null;
3368
+ #mutationObserver = null;
3393
3369
  #resizeObserver = null;
3394
3370
  #subscription = new Subscription();
3395
3371
  #chartContainer = null;
@@ -3397,8 +3373,15 @@ class BizyPieChartComponent {
3397
3373
  #resize$ = new Subject();
3398
3374
  #data = EMPTY_CHART;
3399
3375
  ngAfterViewInit() {
3400
- this.#afterViewInit.next(true);
3376
+ this.#mutationObserver = new MutationObserver(() => {
3377
+ if (this.#elementRef && this.#elementRef.nativeElement && (this.#elementRef.nativeElement.offsetWidth || this.#elementRef.nativeElement.offsetHeight)) {
3378
+ this.#afterViewInit.next(true);
3379
+ this.#mutationObserver.disconnect();
3380
+ }
3381
+ });
3382
+ this.#mutationObserver.observe(this.#document.body, { childList: true, subtree: true });
3401
3383
  }
3384
+ getNativeElement = () => this.#elementRef?.nativeElement;
3402
3385
  set data(data) {
3403
3386
  if (!data) {
3404
3387
  return;
@@ -3480,7 +3463,7 @@ class BizyPieChartComponent {
3480
3463
  onclick: () => {
3481
3464
  setTimeout(() => {
3482
3465
  html2canvas(this.#chartContainer).then(canvas => {
3483
- var link = this.#renderer.createElement('a');
3466
+ var link = document.createElement('a');
3484
3467
  link.href = canvas.toDataURL('image/png');
3485
3468
  link.download = `${this.download.name}.png`;
3486
3469
  this.#renderer.appendChild(this.#document.body, link);
@@ -3543,15 +3526,23 @@ class BizyPieChartComponent {
3543
3526
  if (this.#chartContainer || !this.#elementRef || !this.#elementRef.nativeElement) {
3544
3527
  return;
3545
3528
  }
3546
- let elementWidth = this.#elementRef.nativeElement.offsetWidth;
3547
- let elementHeight = this.#elementRef.nativeElement.offsetHeight;
3548
- let minWidth = this.#getClosestCssVariable(this.#elementRef.nativeElement, '--bizy-pie-chart-min-width') || 0;
3549
- let minHeight = this.#getClosestCssVariable(this.#elementRef.nativeElement, '--bizy-pie-chart-min-height') || 0;
3550
- const width = elementWidth ? `${elementWidth}px` : minWidth;
3551
- const height = elementHeight ? `${elementHeight}px` : minHeight;
3529
+ let elementWidth = this.#elementRef.nativeElement.offsetWidth || MIN_CHART_SIZE;
3530
+ let elementHeight = this.#elementRef.nativeElement.offsetHeight || MIN_CHART_SIZE;
3531
+ let minWidth = MIN_CHART_SIZE;
3532
+ let minHeight = MIN_CHART_SIZE;
3533
+ const chartMinWidth = getComputedStyle(this.#document.body).getPropertyValue('--bizy-chart-min-width');
3534
+ const pieChartMinHeight = getComputedStyle(this.#document.body).getPropertyValue('--bizy-chart-min-height');
3535
+ if (Number(chartMinWidth)) {
3536
+ minWidth = Number(chartMinWidth);
3537
+ }
3538
+ if (Number(pieChartMinHeight)) {
3539
+ minHeight = Number(pieChartMinHeight);
3540
+ }
3541
+ const width = Math.max(elementWidth, minWidth);
3542
+ const height = Math.max(elementHeight, minHeight);
3552
3543
  this.#chartContainer = this.#renderer.createElement('div');
3553
- this.#renderer.setStyle(this.#chartContainer, 'width', width);
3554
- this.#renderer.setStyle(this.#chartContainer, 'height', height);
3544
+ this.#renderer.setStyle(this.#chartContainer, 'width', `${width}px`);
3545
+ this.#renderer.setStyle(this.#chartContainer, 'height', `${height}px`);
3555
3546
  this.#renderer.appendChild(this.#elementRef.nativeElement, this.#chartContainer);
3556
3547
  this.#ref.detectChanges();
3557
3548
  };
@@ -3564,19 +3555,11 @@ class BizyPieChartComponent {
3564
3555
  this.#chartContainer = null;
3565
3556
  this.#ref.detectChanges();
3566
3557
  };
3567
- #getClosestCssVariable = (element, cssVariable) => {
3568
- while (element) {
3569
- const value = getComputedStyle(element).getPropertyValue(cssVariable).trim();
3570
- if (value) {
3571
- return value;
3572
- }
3573
- element = element.parentElement;
3574
- }
3575
- const rootValue = getComputedStyle(document.documentElement).getPropertyValue(cssVariable).trim();
3576
- return rootValue || null;
3577
- };
3578
3558
  ngOnDestroy() {
3579
3559
  this.#subscription.unsubscribe();
3560
+ if (this.#mutationObserver) {
3561
+ this.#mutationObserver.disconnect();
3562
+ }
3580
3563
  if (this.#resizeObserver) {
3581
3564
  this.#resizeObserver.disconnect();
3582
3565
  }
@@ -3632,11 +3615,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
3632
3615
  }] });
3633
3616
 
3634
3617
  class BizyPopupWrapperComponent {
3635
- dynamicComponentContainer;
3618
+ #elementRef = inject(ElementRef);
3636
3619
  #data = inject(DIALOG_DATA);
3637
3620
  #dialogRef = inject(DialogRef);
3638
3621
  #popup = inject(BizyPopupService);
3639
3622
  #ref = inject(ChangeDetectorRef);
3623
+ dynamicComponentContainer;
3640
3624
  disabled = false;
3641
3625
  disableClose = false;
3642
3626
  disableDrag = false;
@@ -3657,6 +3641,7 @@ class BizyPopupWrapperComponent {
3657
3641
  ngAfterViewInit() {
3658
3642
  this.loadDynamicComponent();
3659
3643
  }
3644
+ getNativeElement = () => this.#elementRef?.nativeElement;
3660
3645
  loadDynamicComponent = () => {
3661
3646
  if (this.#data && this.#data.component) {
3662
3647
  this.dynamicComponentContainer.clear();
@@ -4921,11 +4906,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
4921
4906
  }] });
4922
4907
 
4923
4908
  class BizyFullScreenPopupWrapperComponent {
4924
- dynamicComponentContainer;
4909
+ #elementRef = inject(ElementRef);
4925
4910
  #data = inject(DIALOG_DATA);
4926
4911
  #dialogRef = inject(DialogRef);
4927
4912
  #popup = inject(BizyPopupService);
4928
4913
  #ref = inject(ChangeDetectorRef);
4914
+ dynamicComponentContainer;
4929
4915
  disabled = false;
4930
4916
  disableClose = false;
4931
4917
  disableDrag = false;
@@ -4949,6 +4935,7 @@ class BizyFullScreenPopupWrapperComponent {
4949
4935
  this.#ref.detectChanges();
4950
4936
  }
4951
4937
  };
4938
+ getNativeElement = () => this.#elementRef?.nativeElement;
4952
4939
  async close() {
4953
4940
  this.disabled = true;
4954
4941
  this.#popup.close({ id: this.#dialogRef.id });
@@ -4987,8 +4974,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
4987
4974
  }] });
4988
4975
 
4989
4976
  class BizyProgressBarComponent {
4977
+ #elementRef = inject(ElementRef);
4990
4978
  id = `bizy-progress-bar-${Math.random()}`;
4991
4979
  progress = null;
4980
+ getNativeElement = () => this.#elementRef?.nativeElement;
4992
4981
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4993
4982
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyProgressBarComponent, isStandalone: true, selector: "bizy-progress-bar", inputs: { id: "id", progress: "progress" }, host: { properties: { "id": "id" } }, ngImport: i0, template: "<div class=\"bizy-progress-bar\" [ngStyle]=\"{width: progress !== null ? progress + '%' : '0%'}\"></div>", styles: [":host{display:inline-block;width:100%;height:var(--bizy-progress-bar-height);background-color:var(--bizy-progress-bar-background-color);border-radius:var(--bizy-progress-bar-border-radius);overflow:hidden}.bizy-progress-bar{height:100%;width:0%;background-color:var(--bizy-progress-bar-progress-color);transition:width .5s ease-in-out}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4994
4983
  }
@@ -5020,6 +5009,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5020
5009
  }] });
5021
5010
 
5022
5011
  class BizyRadioComponent {
5012
+ #elementRef = inject(ElementRef);
5023
5013
  id = `bizy-radio-${Math.random()}`;
5024
5014
  name;
5025
5015
  selected = false;
@@ -5033,6 +5023,7 @@ class BizyRadioComponent {
5033
5023
  this.selectedChange.emit(!this.selected);
5034
5024
  this.onSelect.emit(event);
5035
5025
  }
5026
+ getNativeElement = () => this.#elementRef?.nativeElement;
5036
5027
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyRadioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5037
5028
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyRadioComponent, isStandalone: true, selector: "bizy-radio", inputs: { id: "id", name: "name", selected: "selected", disabled: "disabled" }, outputs: { selectedChange: "selectedChange", onSelect: "onSelect" }, ngImport: i0, template: "<button type=\"button\" (click)=\"_onSelect($event)\" (keyup.enter)=\"_onSelect($event)\" class=\"bizy-radio\" [ngClass]=\"{'bizy-radio--disabled': disabled}\">\n <input \n class=\"bizy-radio__input\"\n [id]=\"id\"\n [disabled]=\"disabled\"\n type=\"radio\"\n [name]=\"name\"\n [checked]=\"selected\"/>\n\n <ng-content select=\"[slot=start]\"></ng-content>\n\n <span class=\"bizy-radio__radio\"></span>\n \n <ng-content select=\"[slot=end]\"></ng-content>\n</button>\n", styles: [":host{font-size:1rem}.bizy-radio{border:none;background-color:transparent;cursor:pointer;position:relative;width:fit-content;display:flex;column-gap:.5rem;align-items:center}.bizy-radio__input{position:absolute;visibility:hidden;pointer-events:none}.bizy-radio__input:checked+.bizy-radio__radio:before{box-shadow:inset 0 0 0 .3rem var(--bizy-radio-color)}.bizy-radio__radio{display:flex;align-items:center;transition:.25s ease}.bizy-radio__radio:before{display:flex;flex-shrink:0;content:\"\";background-color:#fff;min-width:1rem;min-height:1rem;border-radius:50%;transition:.25s ease;box-shadow:inset 0 0 0 .1rem var(--bizy-radio-color)}.bizy-radio__input--disabled{opacity:.5;pointer-events:none;cursor:not-allowed!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5038
5029
  }
@@ -5070,7 +5061,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5070
5061
  }] });
5071
5062
 
5072
5063
  class BizySectionComponent {
5064
+ #elementRef = inject(ElementRef);
5073
5065
  id = `bizy-section-${Math.random()}`;
5066
+ getNativeElement = () => this.#elementRef?.nativeElement;
5074
5067
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5075
5068
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizySectionComponent, isStandalone: true, selector: "bizy-section", inputs: { id: "id" }, host: { properties: { "id": "id" } }, ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{font-size:1rem;display:flex;height:var(--bizy-section-height);width:var(--bizy-section-width);background-color:var(--bizy-section-background-color);flex-direction:var(--bizy-section-flex-direction);column-gap:var(--bizy-section-column-gap);row-gap:var(--bizy-section-row-gap);justify-content:var(--bizy-section-justify-content);align-items:var(--bizy-section-align-items);flex-wrap:var(--bizy-section-flex-wrap)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5076
5069
  }
@@ -5084,7 +5077,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5084
5077
  }] } });
5085
5078
 
5086
5079
  class BizySectionStartComponent {
5080
+ #elementRef = inject(ElementRef);
5087
5081
  id = `bizy-section-start-${Math.random()}`;
5082
+ getNativeElement = () => this.#elementRef?.nativeElement;
5088
5083
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySectionStartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5089
5084
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizySectionStartComponent, isStandalone: true, selector: "bizy-section-start", inputs: { id: "id" }, host: { properties: { "id": "id" } }, ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{font-size:1rem;display:flex;flex:var(--bizy-section-start-flex);height:var(--bizy-section-start-height);width:var(--bizy-section-start-width);background-color:var(--bizy-section-start-background-color);justify-content:var(--bizy-section-start-justify-content);align-items:var(--bizy-section-start-align-items);column-gap:var(--bizy-section-start-column-gap);row-gap:var(--bizy-section-start-row-gap)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5090
5085
  }
@@ -5098,7 +5093,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5098
5093
  }] } });
5099
5094
 
5100
5095
  class BizySectionCenterComponent {
5096
+ #elementRef = inject(ElementRef);
5101
5097
  id = `bizy-center-start-${Math.random()}`;
5098
+ getNativeElement = () => this.#elementRef?.nativeElement;
5102
5099
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySectionCenterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5103
5100
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizySectionCenterComponent, isStandalone: true, selector: "bizy-section-center", inputs: { id: "id" }, host: { properties: { "id": "id" } }, ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{font-size:1rem;display:flex;flex:var(--bizy-section-center-flex);height:var(--bizy-section-center-height);width:var(--bizy-section-center-width);background-color:var(--bizy-section-center-background-color);justify-content:var(--bizy-section-center-justify-content);align-items:var(--bizy-section-center-align-items);column-gap:var(--bizy-section-center-column-gap);row-gap:var(--bizy-section-center-row-gap)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5104
5101
  }
@@ -5112,7 +5109,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5112
5109
  }] } });
5113
5110
 
5114
5111
  class BizySectionEndComponent {
5112
+ #elementRef = inject(ElementRef);
5115
5113
  id = `bizy-section-end-${Math.random()}`;
5114
+ getNativeElement = () => this.#elementRef?.nativeElement;
5116
5115
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySectionEndComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5117
5116
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizySectionEndComponent, isStandalone: true, selector: "bizy-section-end", inputs: { id: "id" }, host: { properties: { "id": "id" } }, ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{font-size:1rem;display:flex;flex:var(--bizy-section-end-flex);height:var(--bizy-section-end-height);width:var(--bizy-section-end-width);background-color:var(--bizy-section-end-background-color);justify-content:var(--bizy-section-end-justify-content);align-items:var(--bizy-section-end-align-items);column-gap:var(--bizy-section-end-column-gap);row-gap:var(--bizy-section-end-row-gap)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5118
5117
  }
@@ -5170,7 +5169,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5170
5169
  }] });
5171
5170
 
5172
5171
  class BizySidebarOptionComponent {
5173
- ref;
5172
+ #elementRef = inject(ElementRef);
5173
+ #ref = inject(ChangeDetectorRef);
5174
5174
  options;
5175
5175
  id = `bizy-sidebar-option-${Math.random()}`;
5176
5176
  disabled = false;
@@ -5187,10 +5187,7 @@ class BizySidebarOptionComponent {
5187
5187
  const turnOn = selected && selected !== this._selected;
5188
5188
  this._turnOn$.next(turnOn);
5189
5189
  this._selected = selected;
5190
- this.ref.detectChanges();
5191
- }
5192
- constructor(ref) {
5193
- this.ref = ref;
5190
+ this.#ref.detectChanges();
5194
5191
  }
5195
5192
  _onSelect(event) {
5196
5193
  if (this.disabled || !this.selectable) {
@@ -5205,19 +5202,17 @@ class BizySidebarOptionComponent {
5205
5202
  getId = () => {
5206
5203
  return this.id;
5207
5204
  };
5205
+ getNativeElement = () => this.#elementRef?.nativeElement;
5208
5206
  getSelected = () => {
5209
5207
  return this._selected;
5210
5208
  };
5211
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySidebarOptionComponent, deps: [{ token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
5209
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySidebarOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5212
5210
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizySidebarOptionComponent, isStandalone: true, selector: "bizy-sidebar-option", inputs: { id: "id", disabled: "disabled", selectable: "selectable", customClass: "customClass", selected: "selected" }, outputs: { selectedChange: "selectedChange", onSelect: "onSelect" }, queries: [{ propertyName: "options", predicate: BizySidebarOptionComponent }], ngImport: i0, template: "<bizy-accordion\n class=\"{{customClass}}\"\n [id]=\"id\"\n customClass=\"bizy-sidebar-option {{_selected && (!options || options.length === 0) ? 'bizy-sidebar-option--selected' : ''}} {{!selectable ? 'bizy-sidebar-option--no-selectable' : ''}} {{disabled ? 'bizy-sidebar-option--disabled' : ''}}\"\n [opened]=\"_selected\"\n (onSelect)=\"_onSelect($event)\">\n\n <ng-content></ng-content>\n\n <ng-container accordion-option *ngIf=\"options && options.length > 0\">\n <ng-content select=\"bizy-sidebar-option\"></ng-content>\n </ng-container>\n\n</bizy-accordion>", styles: [":host{font-size:1rem;direction:ltr}:host:not(:has(.bizy-sidebar-option--disabled)) ::ng-deep .bizy-sidebar-option:hover{--bizy-accordion-background-color: var(--bizy-sidebar-option-hover-color) }::ng-deep .bizy-accordion__options{position:sticky}:host ::ng-deep .bizy-accordion__options:before{content:\"\";position:absolute;inset:0;background-color:#000;opacity:.3}::ng-deep .bizy-sidebar-option--selected{--bizy-accordion-background-color: var(--bizy-sidebar-option-selected-color) !important}::ng-deep .bizy-sidebar-option--no-selectable{pointer-events:none;cursor:default!important}::ng-deep .bizy-sidebar-option--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}::ng-deep .bizy-accordion__options--opened{max-height:100%!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: BizyAccordionComponent, selector: "bizy-accordion", inputs: ["id", "customClass", "disabled", "opened"], outputs: ["openedChange", "onSelect"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5213
5211
  }
5214
5212
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySidebarOptionComponent, decorators: [{
5215
5213
  type: Component,
5216
5214
  args: [{ selector: 'bizy-sidebar-option', imports: [CommonModule, BizyAccordionComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<bizy-accordion\n class=\"{{customClass}}\"\n [id]=\"id\"\n customClass=\"bizy-sidebar-option {{_selected && (!options || options.length === 0) ? 'bizy-sidebar-option--selected' : ''}} {{!selectable ? 'bizy-sidebar-option--no-selectable' : ''}} {{disabled ? 'bizy-sidebar-option--disabled' : ''}}\"\n [opened]=\"_selected\"\n (onSelect)=\"_onSelect($event)\">\n\n <ng-content></ng-content>\n\n <ng-container accordion-option *ngIf=\"options && options.length > 0\">\n <ng-content select=\"bizy-sidebar-option\"></ng-content>\n </ng-container>\n\n</bizy-accordion>", styles: [":host{font-size:1rem;direction:ltr}:host:not(:has(.bizy-sidebar-option--disabled)) ::ng-deep .bizy-sidebar-option:hover{--bizy-accordion-background-color: var(--bizy-sidebar-option-hover-color) }::ng-deep .bizy-accordion__options{position:sticky}:host ::ng-deep .bizy-accordion__options:before{content:\"\";position:absolute;inset:0;background-color:#000;opacity:.3}::ng-deep .bizy-sidebar-option--selected{--bizy-accordion-background-color: var(--bizy-sidebar-option-selected-color) !important}::ng-deep .bizy-sidebar-option--no-selectable{pointer-events:none;cursor:default!important}::ng-deep .bizy-sidebar-option--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}::ng-deep .bizy-accordion__options--opened{max-height:100%!important}\n"] }]
5217
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
5218
- type: Inject,
5219
- args: [ChangeDetectorRef]
5220
- }] }], propDecorators: { options: [{
5215
+ }], propDecorators: { options: [{
5221
5216
  type: ContentChildren,
5222
5217
  args: [BizySidebarOptionComponent]
5223
5218
  }], id: [{
@@ -5237,7 +5232,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5237
5232
  }] } });
5238
5233
 
5239
5234
  class BizySidebarFloatingOptionComponent {
5240
- ref;
5235
+ #elementRef = inject(ElementRef);
5236
+ #ref = inject(ChangeDetectorRef);
5241
5237
  options;
5242
5238
  id = `bizy-sidebar-floating-option-${Math.random()}`;
5243
5239
  disabled = false;
@@ -5258,13 +5254,10 @@ class BizySidebarFloatingOptionComponent {
5258
5254
  this._turnOn$.next(turnOn);
5259
5255
  this._opened = turnOn;
5260
5256
  this._selected = selected;
5261
- this.ref.detectChanges();
5257
+ this.#ref.detectChanges();
5262
5258
  }
5263
5259
  #subscription = new Subscription();
5264
5260
  #optionSubscription = new Subscription();
5265
- constructor(ref) {
5266
- this.ref = ref;
5267
- }
5268
5261
  ngAfterContentInit() {
5269
5262
  if (this.options && this.options.length > 0) {
5270
5263
  this.#listenOptionChanges(this.options.toArray());
@@ -5275,12 +5268,13 @@ class BizySidebarFloatingOptionComponent {
5275
5268
  }));
5276
5269
  }
5277
5270
  }
5271
+ getNativeElement = () => this.#elementRef?.nativeElement;
5278
5272
  _onSelect(event) {
5279
5273
  if (this.disabled || !this.selectable) {
5280
5274
  return;
5281
5275
  }
5282
5276
  this._opened = !this._opened;
5283
- this.ref.detectChanges();
5277
+ this.#ref.detectChanges();
5284
5278
  this.selectedChange.emit(this._opened);
5285
5279
  this.onSelect.emit(event);
5286
5280
  }
@@ -5289,7 +5283,7 @@ class BizySidebarFloatingOptionComponent {
5289
5283
  return;
5290
5284
  }
5291
5285
  this._opened = false;
5292
- this.ref.detectChanges();
5286
+ this.#ref.detectChanges();
5293
5287
  };
5294
5288
  getId = () => {
5295
5289
  return this.id;
@@ -5303,7 +5297,7 @@ class BizySidebarFloatingOptionComponent {
5303
5297
  if (turnOn) {
5304
5298
  if (!_option.options || _option.options.length === 0) {
5305
5299
  this._opened = false;
5306
- this.ref.detectChanges();
5300
+ this.#ref.detectChanges();
5307
5301
  }
5308
5302
  this.#selectParents(this.options.toArray(), _option);
5309
5303
  }
@@ -5339,16 +5333,13 @@ class BizySidebarFloatingOptionComponent {
5339
5333
  this.#subscription.unsubscribe();
5340
5334
  this.#optionSubscription.unsubscribe();
5341
5335
  }
5342
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySidebarFloatingOptionComponent, deps: [{ token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
5336
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySidebarFloatingOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5343
5337
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizySidebarFloatingOptionComponent, isStandalone: true, selector: "bizy-sidebar-floating-option", inputs: { id: "id", disabled: "disabled", selectable: "selectable", offsetX: "offsetX", offsetY: "offsetY", customClass: "customClass", selected: "selected" }, outputs: { selectedChange: "selectedChange", onSelect: "onSelect" }, queries: [{ propertyName: "options", predicate: BizySidebarOptionComponent }], ngImport: i0, template: "<button \n type=\"button\"\n class=\"bizy-sidebar-floating-option {{customClass}}\"\n [ngClass]=\"{'bizy-sidebar-floating-option--selected': _selected, 'bizy-sidebar-floating-option--no-selectable': !selectable, 'bizy-sidebar-floating-option--disabled': disabled}\"\n [id]=\"id\"\n (click)=\"_onSelect($event)\"\n (keyup.enter)=\"_onSelect($event)\"\n cdkOverlayOrigin \n #bizySidebarFloatingOptionTrigger=\"cdkOverlayOrigin\">\n\n <span class=\"bizy-sidebar-floating-option__content\">\n <ng-content></ng-content>\n </span>\n \n</button>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOffsetX]=\"offsetX\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n [cdkConnectedOverlayOrigin]=\"bizySidebarFloatingOptionTrigger\"\n (overlayOutsideClick)=\"close($event)\"\n [cdkConnectedOverlayOpen]=\"_opened && options && options.length > 0\">\n\n <span class=\"bizy-sidebar-floating-option__options\">\n\n <ng-content select=\"bizy-sidebar-floating-option-title\"></ng-content>\n\n <ng-content select=\"bizy-sidebar-option\"></ng-content>\n\n </span>\n\n</ng-template>", styles: [":host{font-size:1rem;direction:ltr}.bizy-sidebar-floating-option{background-color:var(--bizy-sidebar-floating-option-background-color);color:var(--bizy-sidebar-floating-option-color);border:none;display:flex;align-items:center;justify-content:center;column-gap:.5rem;padding:1rem;width:100%;cursor:pointer;border-top-left-radius:.3rem}.bizy-sidebar-floating-option:hover{background-color:var(--bizy-sidebar-option-hover-color)}.bizy-sidebar-floating-option--selected{background-color:var(--bizy-sidebar-option-selected-color)!important}.bizy-sidebar-floating-option--no-selectable{pointer-events:none;cursor:default!important}.bizy-sidebar-floating-option--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}.bizy-sidebar-floating-option__content{font-size:1rem;display:flex;align-items:center;column-gap:.3rem;pointer-events:none}.bizy-sidebar-floating-option__options{background-color:var(--bizy-sidebar-floating-option-background-color);min-width:calc(100% + 2rem);max-width:calc(100vw - 2rem);border-radius:.3rem;max-height:30rem;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;box-shadow:0 7px 14px #32325d1a,0 3px 6px #00000014}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i2$2.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i2$2.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5344
5338
  }
5345
5339
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySidebarFloatingOptionComponent, decorators: [{
5346
5340
  type: Component,
5347
5341
  args: [{ selector: 'bizy-sidebar-floating-option', imports: [CommonModule, OverlayModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<button \n type=\"button\"\n class=\"bizy-sidebar-floating-option {{customClass}}\"\n [ngClass]=\"{'bizy-sidebar-floating-option--selected': _selected, 'bizy-sidebar-floating-option--no-selectable': !selectable, 'bizy-sidebar-floating-option--disabled': disabled}\"\n [id]=\"id\"\n (click)=\"_onSelect($event)\"\n (keyup.enter)=\"_onSelect($event)\"\n cdkOverlayOrigin \n #bizySidebarFloatingOptionTrigger=\"cdkOverlayOrigin\">\n\n <span class=\"bizy-sidebar-floating-option__content\">\n <ng-content></ng-content>\n </span>\n \n</button>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOffsetX]=\"offsetX\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n [cdkConnectedOverlayOrigin]=\"bizySidebarFloatingOptionTrigger\"\n (overlayOutsideClick)=\"close($event)\"\n [cdkConnectedOverlayOpen]=\"_opened && options && options.length > 0\">\n\n <span class=\"bizy-sidebar-floating-option__options\">\n\n <ng-content select=\"bizy-sidebar-floating-option-title\"></ng-content>\n\n <ng-content select=\"bizy-sidebar-option\"></ng-content>\n\n </span>\n\n</ng-template>", styles: [":host{font-size:1rem;direction:ltr}.bizy-sidebar-floating-option{background-color:var(--bizy-sidebar-floating-option-background-color);color:var(--bizy-sidebar-floating-option-color);border:none;display:flex;align-items:center;justify-content:center;column-gap:.5rem;padding:1rem;width:100%;cursor:pointer;border-top-left-radius:.3rem}.bizy-sidebar-floating-option:hover{background-color:var(--bizy-sidebar-option-hover-color)}.bizy-sidebar-floating-option--selected{background-color:var(--bizy-sidebar-option-selected-color)!important}.bizy-sidebar-floating-option--no-selectable{pointer-events:none;cursor:default!important}.bizy-sidebar-floating-option--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}.bizy-sidebar-floating-option__content{font-size:1rem;display:flex;align-items:center;column-gap:.3rem;pointer-events:none}.bizy-sidebar-floating-option__options{background-color:var(--bizy-sidebar-floating-option-background-color);min-width:calc(100% + 2rem);max-width:calc(100vw - 2rem);border-radius:.3rem;max-height:30rem;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;box-shadow:0 7px 14px #32325d1a,0 3px 6px #00000014}\n"] }]
5348
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
5349
- type: Inject,
5350
- args: [ChangeDetectorRef]
5351
- }] }], propDecorators: { options: [{
5342
+ }], propDecorators: { options: [{
5352
5343
  type: ContentChildren,
5353
5344
  args: [BizySidebarOptionComponent]
5354
5345
  }], id: [{
@@ -5372,6 +5363,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5372
5363
  }] } });
5373
5364
 
5374
5365
  class BizySidebarComponent {
5366
+ #elementRef = inject(ElementRef);
5375
5367
  id = `bizy-sidebar-${Math.random()}`;
5376
5368
  options;
5377
5369
  floatingOptions;
@@ -5475,6 +5467,7 @@ class BizySidebarComponent {
5475
5467
  this.#optionSubscription.unsubscribe();
5476
5468
  this.#floatingOptionSubscription.unsubscribe();
5477
5469
  }
5470
+ getNativeElement = () => this.#elementRef?.nativeElement;
5478
5471
  _onToggle(event) {
5479
5472
  this.toggleChange.emit(!this._toggle);
5480
5473
  this.onToggle.emit(event);
@@ -5508,8 +5501,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5508
5501
  }] } });
5509
5502
 
5510
5503
  class BizySidebarFloatingOptionTitleComponent {
5504
+ #elementRef = inject(ElementRef);
5511
5505
  id = `bizy-sidebar-floating-option-title-${Math.random()}`;
5512
5506
  customClass = '';
5507
+ getNativeElement = () => this.#elementRef?.nativeElement;
5513
5508
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySidebarFloatingOptionTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5514
5509
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizySidebarFloatingOptionTitleComponent, isStandalone: true, selector: "bizy-sidebar-floating-option-title", inputs: { id: "id", customClass: "customClass" }, ngImport: i0, template: "<span class=\"bizy-sidebar-floating-option-title {{customClass}}\" [id]=\"id\">\n <ng-content></ng-content>\n</span>\n", styles: [":host{font-size:1rem;background-color:var(--bizy-sidebar-floating-option-title-background-color);position:sticky;top:0;z-index:1}.bizy-sidebar-floating-option-title{background-color:inherit;color:var(--bizy-sidebar-floating-option-title-color);padding:.5rem;cursor:default;text-decoration:underline .1rem var(--bizy-sidebar-floating-option-title-underline-color);text-underline-offset:.2rem;display:flex;align-items:center}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5515
5510
  }
@@ -5556,12 +5551,14 @@ var BIZY_SKELETON_SHAPE;
5556
5551
  })(BIZY_SKELETON_SHAPE || (BIZY_SKELETON_SHAPE = {}));
5557
5552
 
5558
5553
  class BizySkeletonComponent {
5554
+ #elementRef = inject(ElementRef);
5559
5555
  id = `bizy-skeleton-${Math.random()}`;
5560
5556
  shape = BIZY_SKELETON_SHAPE.SQUARE;
5561
5557
  height;
5562
5558
  width;
5563
5559
  customClass = '';
5564
5560
  BIZY_SKELETON_SHAPE = BIZY_SKELETON_SHAPE;
5561
+ getNativeElement = () => this.#elementRef?.nativeElement;
5565
5562
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizySkeletonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5566
5563
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizySkeletonComponent, isStandalone: true, selector: "bizy-skeleton", inputs: { id: "id", shape: "shape", height: "height", width: "width", customClass: "customClass" }, host: { properties: { "id": "id", "style.width": "width", "style.min-width": "width", "style.height": "height", "style.min-height": "height", "class": "customClass", "style.border-radius": "shape === BIZY_SKELETON_SHAPE.CIRCLE ? \"50%\" : \"0\"" } }, ngImport: i0, template: "", styles: [":host{font-size:1rem;height:var(--bizy-skeleton-height);width:var(--bizy-skeleton-width);display:inline-block;background:linear-gradient(90deg,#eee 25%,#f5f5f5,#eee 75%);background-size:200% 100%;animation:bizy-skeleton-animation 1.5s infinite linear}@keyframes bizy-skeleton-animation{0%{background-position:-200% 0}to{background-position:200% 0}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5567
5564
  }
@@ -5605,6 +5602,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5605
5602
  }] });
5606
5603
 
5607
5604
  class BizySliderComponent {
5605
+ #elementRef = inject(ElementRef);
5608
5606
  fromSlider;
5609
5607
  toSlider;
5610
5608
  minLimit = 0;
@@ -5636,6 +5634,7 @@ class BizySliderComponent {
5636
5634
  }
5637
5635
  this.onChange.emit({ min: this._min, max: this._max });
5638
5636
  }
5637
+ getNativeElement = () => this.#elementRef?.nativeElement;
5639
5638
  setToSlider(value) {
5640
5639
  if (value < this._min) {
5641
5640
  this._max = this._min;
@@ -5779,17 +5778,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5779
5778
  }] } });
5780
5779
 
5781
5780
  class BizyTableColumnComponent {
5781
+ #elementRef = inject(ElementRef);
5782
5782
  id = `bizy-table-column-${Math.random()}`;
5783
5783
  customClass = '';
5784
5784
  contextMenu = new EventEmitter();
5785
5785
  onSelect = new EventEmitter();
5786
- #elementRef = inject(ElementRef);
5787
5786
  onRightClick(event) {
5788
5787
  this.contextMenu.emit(event);
5789
5788
  }
5790
5789
  getId = () => {
5791
5790
  return this.id;
5792
5791
  };
5792
+ getNativeElement = () => this.#elementRef?.nativeElement;
5793
5793
  setMarginLeft(margin) {
5794
5794
  if (!this.#elementRef.nativeElement || !this.#elementRef.nativeElement.setMarginLeft) {
5795
5795
  return;
@@ -5816,8 +5816,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5816
5816
  }] } });
5817
5817
 
5818
5818
  class BizyTableHeaderComponent {
5819
- ref;
5820
- elementRef;
5819
+ #elementRef = inject(ElementRef);
5820
+ #ref = inject(ChangeDetectorRef);
5821
5821
  columns;
5822
5822
  id = `bizy-table-header-${Math.random()}`;
5823
5823
  customClass = '';
@@ -5826,13 +5826,10 @@ class BizyTableHeaderComponent {
5826
5826
  selectedChange = new EventEmitter();
5827
5827
  onSelect = new EventEmitter();
5828
5828
  marginRight = 0;
5829
- constructor(ref, elementRef) {
5830
- this.ref = ref;
5831
- this.elementRef = elementRef;
5832
- }
5833
5829
  getId = () => {
5834
5830
  return this.id;
5835
5831
  };
5832
+ getNativeElement = () => this.#elementRef?.nativeElement;
5836
5833
  getSelected = () => {
5837
5834
  return this.selected;
5838
5835
  };
@@ -5841,11 +5838,11 @@ class BizyTableHeaderComponent {
5841
5838
  return;
5842
5839
  }
5843
5840
  this.selectable = selectable;
5844
- this.ref.detectChanges();
5841
+ this.#ref.detectChanges();
5845
5842
  };
5846
5843
  setMarginRight(margin) {
5847
5844
  this.marginRight = margin - 5;
5848
- this.ref.detectChanges();
5845
+ this.#ref.detectChanges();
5849
5846
  }
5850
5847
  setMarginLeft(margin) {
5851
5848
  if (this.columns.length === 0) {
@@ -5853,22 +5850,16 @@ class BizyTableHeaderComponent {
5853
5850
  }
5854
5851
  this.columns.forEach(_column => {
5855
5852
  _column.setMarginLeft(margin);
5856
- this.ref.detectChanges();
5853
+ this.#ref.detectChanges();
5857
5854
  });
5858
5855
  }
5859
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableHeaderComponent, deps: [{ token: ChangeDetectorRef }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Component });
5856
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5860
5857
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyTableHeaderComponent, isStandalone: true, selector: "bizy-table-header", inputs: { id: "id", customClass: "customClass", selected: "selected", selectable: "selectable" }, outputs: { selectedChange: "selectedChange", onSelect: "onSelect" }, queries: [{ propertyName: "columns", predicate: BizyTableColumnComponent }], ngImport: i0, template: "<div \n [id]=\"id\"\n class=\"bizy-table-header {{customClass}}\">\n\n <ng-content select=\"bizy-table-column\"></ng-content>\n\n <span \n *ngIf=\"selectable !== null\"\n class=\"bizy-table-header__checkbox-wrapper\"\n [ngStyle]=\"{right: marginRight + 'px'}\"\n [ngClass]=\"{'bizy-table-footer__checkbox--shadow': marginRight > 0}\">\n \n <bizy-checkbox \n [selected]=\"selected\"\n (selectedChange)=\"selectedChange.emit($event)\"\n (onSelect)=\"onSelect.emit($event)\"\n [ngClass]=\"{'bizy-table-header__checkbox--hidden': selectable === false}\">\n </bizy-checkbox>\n </span>\n\n</div>", styles: [":host{font-size:1rem;width:fit-content;min-width:100%}.bizy-table-header{font-size:1rem;padding:0 .3rem;display:flex;align-items:center;height:var(--bizy-table-header-height);width:fit-content;min-width:var(--bizy-table-width);background-color:var(--bizy-table-header-background-color)}.bizy-table-header__checkbox-wrapper{z-index:1;background-color:inherit;padding:0 10px;display:grid;place-items:center;position:relative;height:100%}.bizy-table-header__checkbox--shadow{box-shadow:-19px 0 28px -9px #00000080}.bizy-table-header__checkbox--hidden{pointer-events:none;visibility:hidden;opacity:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5861
5858
  }
5862
5859
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableHeaderComponent, decorators: [{
5863
5860
  type: Component,
5864
5861
  args: [{ selector: 'bizy-table-header', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div \n [id]=\"id\"\n class=\"bizy-table-header {{customClass}}\">\n\n <ng-content select=\"bizy-table-column\"></ng-content>\n\n <span \n *ngIf=\"selectable !== null\"\n class=\"bizy-table-header__checkbox-wrapper\"\n [ngStyle]=\"{right: marginRight + 'px'}\"\n [ngClass]=\"{'bizy-table-footer__checkbox--shadow': marginRight > 0}\">\n \n <bizy-checkbox \n [selected]=\"selected\"\n (selectedChange)=\"selectedChange.emit($event)\"\n (onSelect)=\"onSelect.emit($event)\"\n [ngClass]=\"{'bizy-table-header__checkbox--hidden': selectable === false}\">\n </bizy-checkbox>\n </span>\n\n</div>", styles: [":host{font-size:1rem;width:fit-content;min-width:100%}.bizy-table-header{font-size:1rem;padding:0 .3rem;display:flex;align-items:center;height:var(--bizy-table-header-height);width:fit-content;min-width:var(--bizy-table-width);background-color:var(--bizy-table-header-background-color)}.bizy-table-header__checkbox-wrapper{z-index:1;background-color:inherit;padding:0 10px;display:grid;place-items:center;position:relative;height:100%}.bizy-table-header__checkbox--shadow{box-shadow:-19px 0 28px -9px #00000080}.bizy-table-header__checkbox--hidden{pointer-events:none;visibility:hidden;opacity:0}\n"] }]
5865
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
5866
- type: Inject,
5867
- args: [ChangeDetectorRef]
5868
- }] }, { type: i0.ElementRef, decorators: [{
5869
- type: Inject,
5870
- args: [ElementRef]
5871
- }] }], propDecorators: { columns: [{
5862
+ }], propDecorators: { columns: [{
5872
5863
  type: ContentChildren,
5873
5864
  args: [BizyTableColumnComponent]
5874
5865
  }], id: [{
@@ -5886,27 +5877,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5886
5877
  }] } });
5887
5878
 
5888
5879
  class BizyTableFooterComponent {
5889
- ref;
5890
- elementRef;
5880
+ #elementRef = inject(ElementRef);
5881
+ #ref = inject(ChangeDetectorRef);
5891
5882
  columns;
5892
5883
  id = `bizy-table-footer-${Math.random()}`;
5893
5884
  customClass = '';
5894
5885
  marginRight = 0;
5895
5886
  _selectable = false;
5896
- constructor(ref, elementRef) {
5897
- this.ref = ref;
5898
- this.elementRef = elementRef;
5899
- }
5900
5887
  getId = () => {
5901
5888
  return this.id;
5902
5889
  };
5903
5890
  setSelectable = (selectable) => {
5904
5891
  this._selectable = selectable;
5905
- this.ref.detectChanges();
5892
+ this.#ref.detectChanges();
5906
5893
  };
5894
+ getNativeElement = () => this.#elementRef?.nativeElement;
5907
5895
  setMarginRight(margin) {
5908
5896
  this.marginRight = margin - 5;
5909
- this.ref.detectChanges();
5897
+ this.#ref.detectChanges();
5910
5898
  }
5911
5899
  setMarginLeft(margin) {
5912
5900
  if (this.columns.length === 0) {
@@ -5914,22 +5902,16 @@ class BizyTableFooterComponent {
5914
5902
  }
5915
5903
  this.columns.forEach(_column => {
5916
5904
  _column.setMarginLeft(margin);
5917
- this.ref.detectChanges();
5905
+ this.#ref.detectChanges();
5918
5906
  });
5919
5907
  }
5920
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableFooterComponent, deps: [{ token: ChangeDetectorRef }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Component });
5908
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5921
5909
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyTableFooterComponent, isStandalone: true, selector: "bizy-table-footer", inputs: { id: "id", customClass: "customClass" }, queries: [{ propertyName: "columns", predicate: BizyTableColumnComponent }], ngImport: i0, template: "<div \n [id]=\"id\"\n class=\"bizy-table-footer {{customClass}}\">\n\n <ng-content select=\"bizy-table-column\"></ng-content>\n\n\n <span \n *ngIf=\"_selectable\"\n class=\"bizy-table-footer__checkbox-wrapper\"\n [ngStyle]=\"{right: marginRight + 'px'}\"\n [ngClass]=\"{'bizy-table-footer__checkbox--shadow': marginRight > 0}\">\n \n <bizy-checkbox \n class=\"bizy-table-footer__checkbox\">\n </bizy-checkbox>\n </span>\n \n</div>", styles: [":host{font-size:1rem;width:fit-content;min-width:100%}.bizy-table-footer{font-size:1rem;padding:0 .3rem;display:flex;align-items:center;height:var(--bizy-table-footer-height);width:fit-content;min-width:var(--bizy-table-width);background-color:var(--bizy-table-footer-background-color)}.bizy-table-footer__checkbox-wrapper{z-index:1;background-color:inherit;padding:0 10px;display:grid;place-items:center;position:relative;height:100%}.bizy-table-footer__checkbox{visibility:hidden;pointer-events:none;opacity:0}.bizy-table-footer__checkbox--shadow{box-shadow:-19px 0 28px -9px #00000080}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5922
5910
  }
5923
5911
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableFooterComponent, decorators: [{
5924
5912
  type: Component,
5925
5913
  args: [{ selector: 'bizy-table-footer', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div \n [id]=\"id\"\n class=\"bizy-table-footer {{customClass}}\">\n\n <ng-content select=\"bizy-table-column\"></ng-content>\n\n\n <span \n *ngIf=\"_selectable\"\n class=\"bizy-table-footer__checkbox-wrapper\"\n [ngStyle]=\"{right: marginRight + 'px'}\"\n [ngClass]=\"{'bizy-table-footer__checkbox--shadow': marginRight > 0}\">\n \n <bizy-checkbox \n class=\"bizy-table-footer__checkbox\">\n </bizy-checkbox>\n </span>\n \n</div>", styles: [":host{font-size:1rem;width:fit-content;min-width:100%}.bizy-table-footer{font-size:1rem;padding:0 .3rem;display:flex;align-items:center;height:var(--bizy-table-footer-height);width:fit-content;min-width:var(--bizy-table-width);background-color:var(--bizy-table-footer-background-color)}.bizy-table-footer__checkbox-wrapper{z-index:1;background-color:inherit;padding:0 10px;display:grid;place-items:center;position:relative;height:100%}.bizy-table-footer__checkbox{visibility:hidden;pointer-events:none;opacity:0}.bizy-table-footer__checkbox--shadow{box-shadow:-19px 0 28px -9px #00000080}\n"] }]
5926
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
5927
- type: Inject,
5928
- args: [ChangeDetectorRef]
5929
- }] }, { type: i0.ElementRef, decorators: [{
5930
- type: Inject,
5931
- args: [ElementRef]
5932
- }] }], propDecorators: { columns: [{
5914
+ }], propDecorators: { columns: [{
5933
5915
  type: ContentChildren,
5934
5916
  args: [BizyTableColumnComponent]
5935
5917
  }], id: [{
@@ -5939,7 +5921,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
5939
5921
  }] } });
5940
5922
 
5941
5923
  class BizyTableRowComponent {
5942
- ref;
5924
+ #elementRef = inject(ElementRef);
5925
+ #ref = inject(ChangeDetectorRef);
5943
5926
  columns;
5944
5927
  id = `bizy-table-row-${Math.random()}`;
5945
5928
  customClass = '';
@@ -5952,9 +5935,7 @@ class BizyTableRowComponent {
5952
5935
  openedChange = new EventEmitter();
5953
5936
  onOpen = new EventEmitter();
5954
5937
  marginRight = 0;
5955
- constructor(ref) {
5956
- this.ref = ref;
5957
- }
5938
+ getNativeElement = () => this.#elementRef?.nativeElement;
5958
5939
  _onOpen(event) {
5959
5940
  if (this.disabled) {
5960
5941
  return;
@@ -5973,7 +5954,7 @@ class BizyTableRowComponent {
5973
5954
  return;
5974
5955
  }
5975
5956
  this.selectable = selectable;
5976
- this.ref.detectChanges();
5957
+ this.#ref.detectChanges();
5977
5958
  };
5978
5959
  setSelected = (selected) => {
5979
5960
  if (this.selectable === false) {
@@ -5981,11 +5962,11 @@ class BizyTableRowComponent {
5981
5962
  }
5982
5963
  this.selected = selected;
5983
5964
  this.selectedChange.emit(selected);
5984
- this.ref.detectChanges();
5965
+ this.#ref.detectChanges();
5985
5966
  };
5986
5967
  setMarginRight(margin) {
5987
5968
  this.marginRight = margin - 5;
5988
- this.ref.detectChanges();
5969
+ this.#ref.detectChanges();
5989
5970
  }
5990
5971
  setMarginLeft(margin) {
5991
5972
  if (this.columns.length === 0) {
@@ -5993,19 +5974,16 @@ class BizyTableRowComponent {
5993
5974
  }
5994
5975
  this.columns.forEach(_column => {
5995
5976
  _column.setMarginLeft(margin);
5996
- this.ref.detectChanges();
5977
+ this.#ref.detectChanges();
5997
5978
  });
5998
5979
  }
5999
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableRowComponent, deps: [{ token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
5980
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6000
5981
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyTableRowComponent, isStandalone: true, selector: "bizy-table-row", inputs: { id: "id", customClass: "customClass", disabled: "disabled", selected: "selected", opened: "opened", selectable: "selectable" }, outputs: { selectedChange: "selectedChange", onSelect: "onSelect", openedChange: "openedChange", onOpen: "onOpen" }, queries: [{ propertyName: "columns", predicate: BizyTableColumnComponent }], ngImport: i0, template: "<bizy-accordion \n class=\"bizy-table-row__accordion\"\n customClass=\"bizy-table-row__accordion {{disabled ? 'bizy-table-row--disabled' : ''}} {{selected ? 'bizy-table-row--selected' : ''}} {{opened ? 'bizy-table-row--opened' : ''}}\"\n [(opened)]=\"opened\"\n (onSelect)=\"_onOpen($event)\">\n\n <button\n type=\"button\"\n [id]=\"id\"\n class=\"bizy-table-row {{customClass}}\"\n (click)=\"selectedChange.emit(!selected)\"\n (keyup.enter)=\"selectedChange.emit(!selected)\"\n [ngClass]=\"{'bizy-table-row--disabled': disabled, 'bizy-table-row--selected': selected}\">\n\n <ng-content select=\"bizy-table-column\"></ng-content>\n\n <bizy-checkbox \n *ngIf=\"selectable !== null\"\n class=\"bizy-table-row__checkbox\"\n [ngStyle]=\"{right: marginRight + 'px'}\"\n [ngClass]=\"{'bizy-table-row__checkbox--hidden': selectable === false, 'bizy-table-row__checkbox--shadow': marginRight > 0}\"\n [selected]=\"selected\"\n [disabled]=\"disabled\"\n (selectedChange)=\"selectedChange.emit($event)\"\n (onSelect)=\"onSelect.emit($event); $event.stopPropagation()\">\n </bizy-checkbox>\n \n </button>\n\n <ng-content accordion-option select=\"bizy-table-row-expand-content\"></ng-content>\n\n</bizy-accordion>", styles: [":host{font-size:1rem;width:100%;background-color:var(--bizy-table-row-background-color);display:flex;min-width:fit-content;margin-bottom:.1rem}:host:not(:has(.bizy-table-row--selected)) ::ng-deep .bizy-table-row__accordion:hover ::ng-deep .bizy-table-row:before{opacity:1}::ng-deep .bizy-table-row__accordion{padding:0!important;--bizy-accordion-background-color: var(--bizy-table-row-background-color);--bizy-accordion-padding-left: 0}::ng-deep .bizy-table-row__accordion .bizy-accordion__options{--bizy-accordion-padding-left: 0}.bizy-table-row{font-size:1rem;width:100%;display:flex;align-items:center;padding:0 .3rem;height:fit-content;border:none;min-height:var(--bizy-table-row-height);background-color:inherit;border-bottom:inherit}::ng-deep .bizy-table-row:before{content:\"\";position:absolute;inset:0;background-color:var(--bizy-table-row-hover-background-color);opacity:0;pointer-events:none;z-index:1}.bizy-table-row--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}::ng-deep .bizy-table-row--selected{background-color:var(--bizy-table-row-selected-background-color)!important}:host(:has(bizy-table-row-expand-content)) ::ng-deep .bizy-table-row--opened{background-color:var(--bizy-table-row-opened-background-color)!important}::ng-deep .bizy-table-row--selected *{font-weight:700!important;color:var(--bizy-table-row-selected-color)!important}.bizy-table-row__checkbox{z-index:1;background-color:inherit;padding:0 10px;display:grid;place-items:center;position:relative;min-height:var(--bizy-table-row-height);height:100%}.bizy-table-row__checkbox--shadow{box-shadow:-19px 0 28px -9px #00000080}.bizy-table-row__checkbox--hidden{visibility:hidden;pointer-events:none}::ng-deep .bizy-table-row:first-child{padding-left:.3rem}::ng-deep .bizy-table-row:last-child{padding-right:.3rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: BizyAccordionComponent, selector: "bizy-accordion", inputs: ["id", "customClass", "disabled", "opened"], outputs: ["openedChange", "onSelect"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6001
5982
  }
6002
5983
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableRowComponent, decorators: [{
6003
5984
  type: Component,
6004
5985
  args: [{ selector: 'bizy-table-row', imports: [CommonModule, BizyAccordionComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<bizy-accordion \n class=\"bizy-table-row__accordion\"\n customClass=\"bizy-table-row__accordion {{disabled ? 'bizy-table-row--disabled' : ''}} {{selected ? 'bizy-table-row--selected' : ''}} {{opened ? 'bizy-table-row--opened' : ''}}\"\n [(opened)]=\"opened\"\n (onSelect)=\"_onOpen($event)\">\n\n <button\n type=\"button\"\n [id]=\"id\"\n class=\"bizy-table-row {{customClass}}\"\n (click)=\"selectedChange.emit(!selected)\"\n (keyup.enter)=\"selectedChange.emit(!selected)\"\n [ngClass]=\"{'bizy-table-row--disabled': disabled, 'bizy-table-row--selected': selected}\">\n\n <ng-content select=\"bizy-table-column\"></ng-content>\n\n <bizy-checkbox \n *ngIf=\"selectable !== null\"\n class=\"bizy-table-row__checkbox\"\n [ngStyle]=\"{right: marginRight + 'px'}\"\n [ngClass]=\"{'bizy-table-row__checkbox--hidden': selectable === false, 'bizy-table-row__checkbox--shadow': marginRight > 0}\"\n [selected]=\"selected\"\n [disabled]=\"disabled\"\n (selectedChange)=\"selectedChange.emit($event)\"\n (onSelect)=\"onSelect.emit($event); $event.stopPropagation()\">\n </bizy-checkbox>\n \n </button>\n\n <ng-content accordion-option select=\"bizy-table-row-expand-content\"></ng-content>\n\n</bizy-accordion>", styles: [":host{font-size:1rem;width:100%;background-color:var(--bizy-table-row-background-color);display:flex;min-width:fit-content;margin-bottom:.1rem}:host:not(:has(.bizy-table-row--selected)) ::ng-deep .bizy-table-row__accordion:hover ::ng-deep .bizy-table-row:before{opacity:1}::ng-deep .bizy-table-row__accordion{padding:0!important;--bizy-accordion-background-color: var(--bizy-table-row-background-color);--bizy-accordion-padding-left: 0}::ng-deep .bizy-table-row__accordion .bizy-accordion__options{--bizy-accordion-padding-left: 0}.bizy-table-row{font-size:1rem;width:100%;display:flex;align-items:center;padding:0 .3rem;height:fit-content;border:none;min-height:var(--bizy-table-row-height);background-color:inherit;border-bottom:inherit}::ng-deep .bizy-table-row:before{content:\"\";position:absolute;inset:0;background-color:var(--bizy-table-row-hover-background-color);opacity:0;pointer-events:none;z-index:1}.bizy-table-row--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}::ng-deep .bizy-table-row--selected{background-color:var(--bizy-table-row-selected-background-color)!important}:host(:has(bizy-table-row-expand-content)) ::ng-deep .bizy-table-row--opened{background-color:var(--bizy-table-row-opened-background-color)!important}::ng-deep .bizy-table-row--selected *{font-weight:700!important;color:var(--bizy-table-row-selected-color)!important}.bizy-table-row__checkbox{z-index:1;background-color:inherit;padding:0 10px;display:grid;place-items:center;position:relative;min-height:var(--bizy-table-row-height);height:100%}.bizy-table-row__checkbox--shadow{box-shadow:-19px 0 28px -9px #00000080}.bizy-table-row__checkbox--hidden{visibility:hidden;pointer-events:none}::ng-deep .bizy-table-row:first-child{padding-left:.3rem}::ng-deep .bizy-table-row:last-child{padding-right:.3rem}\n"] }]
6005
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
6006
- type: Inject,
6007
- args: [ChangeDetectorRef]
6008
- }] }], propDecorators: { columns: [{
5986
+ }], propDecorators: { columns: [{
6009
5987
  type: ContentChildren,
6010
5988
  args: [BizyTableColumnComponent]
6011
5989
  }], id: [{
@@ -6033,9 +6011,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
6033
6011
  // FIX: This components fixes the bug with Angular CDK virtual scrolling not supporting content projection.
6034
6012
  // https://github.com/angular/components/issues/15277
6035
6013
  class BizyTableScrollingComponent {
6036
- document;
6037
- elementRef;
6038
- ref;
6014
+ #elementRef = inject(ElementRef);
6015
+ #document = inject(DOCUMENT);
6016
+ #ref = inject(ChangeDetectorRef);
6039
6017
  viewport;
6040
6018
  content;
6041
6019
  #view;
@@ -6044,19 +6022,14 @@ class BizyTableScrollingComponent {
6044
6022
  itemSize;
6045
6023
  #subscription = new Subscription();
6046
6024
  #scrollTop = 0;
6047
- constructor(document, elementRef, ref) {
6048
- this.document = document;
6049
- this.elementRef = elementRef;
6050
- this.ref = ref;
6051
- }
6052
6025
  /** Called by the virtual-for directive inside of the viewport. */
6053
6026
  attachView(tableDirective) {
6054
6027
  if (this.#view) {
6055
6028
  return;
6056
6029
  }
6057
6030
  let itemSize = 30;
6058
- const rowHeight = getComputedStyle(this.document.documentElement).getPropertyValue('--bizy-table-row-height');
6059
- const fontSize = getComputedStyle(this.document.documentElement).getPropertyValue('font-size');
6031
+ const rowHeight = getComputedStyle(this.#document.documentElement).getPropertyValue('--bizy-table-row-height');
6032
+ const fontSize = getComputedStyle(this.#document.documentElement).getPropertyValue('font-size');
6060
6033
  const gap = Number(fontSize.split('px')[0]) * 0.1;
6061
6034
  if (rowHeight && rowHeight.includes('rem')) {
6062
6035
  itemSize = Number(fontSize.split('px')[0]) * Number(rowHeight.split('rem')[0]);
@@ -6069,36 +6042,28 @@ class BizyTableScrollingComponent {
6069
6042
  this.itemTemplate = tableDirective.template;
6070
6043
  this.#view = tableDirective.viewContainerRef;
6071
6044
  this.#view.createEmbeddedView(this.content);
6072
- this.ref.detectChanges();
6073
- this.#subscription.add(fromEvent(this.elementRef.nativeElement, 'scroll', { capture: true }).pipe(debounceTime$1(100)).subscribe(() => {
6045
+ this.#ref.detectChanges();
6046
+ this.#subscription.add(fromEvent(this.#elementRef.nativeElement, 'scroll', { capture: true }).pipe(debounceTime$1(100)).subscribe(() => {
6074
6047
  this.#scrollTop = this.viewport.measureScrollOffset();
6075
6048
  }));
6076
6049
  this.#subscription.add(this.items$.pipe(skip(1)).subscribe(() => {
6077
6050
  if (this.viewport) {
6078
6051
  this.viewport.scrollToOffset(this.#scrollTop);
6079
- this.ref.detectChanges();
6052
+ this.#ref.detectChanges();
6080
6053
  }
6081
6054
  }));
6082
6055
  }
6056
+ getNativeElement = () => this.#elementRef?.nativeElement;
6083
6057
  ngOnDestroy() {
6084
6058
  this.#subscription.unsubscribe();
6085
6059
  }
6086
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableScrollingComponent, deps: [{ token: DOCUMENT }, { token: ElementRef }, { token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
6060
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableScrollingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6087
6061
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyTableScrollingComponent, isStandalone: true, selector: "bizy-table-scrolling", viewQueries: [{ propertyName: "viewport", first: true, predicate: CdkVirtualScrollViewport, descendants: true }, { propertyName: "content", first: true, predicate: ["tableScrollingContent"], descendants: true }], ngImport: i0, template: "<cdk-virtual-scroll-viewport \n [itemSize]=\"itemSize\"\n [minBufferPx]=\"itemSize + (itemSize * 20)\"\n [maxBufferPx]=\"itemSize + (itemSize * 40)\">\n \n <ng-content></ng-content>\n\n <ng-template #tableScrollingContent>\n <ng-template let-item cdkVirtualFor [cdkVirtualForOf]=\"items$ | async\">\n <ng-template *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-template>\n </ng-template>\n </ng-template>\n</cdk-virtual-scroll-viewport>", styles: ["::ng-deep .cdk-virtual-scrollable{height:100%;width:100%;overflow-y:auto!important;overflow-x:hidden!important;contain:inline-size!important}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar{width:.5rem;height:.5rem}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar-thumb{border-radius:1rem;background-color:var(--bizy-table-scroll-bar-color)}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar-thumb:hover{background-color:var(--bizy-table-scroll-bar-hover-color)}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar-button{height:1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: ScrollingModule }, { kind: "directive", type: i2$2.ɵɵCdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i2$2.ɵɵCdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i2$2.ɵɵCdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }] });
6088
6062
  }
6089
6063
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableScrollingComponent, decorators: [{
6090
6064
  type: Component,
6091
6065
  args: [{ selector: 'bizy-table-scrolling', imports: [CommonModule, ScrollingModule], template: "<cdk-virtual-scroll-viewport \n [itemSize]=\"itemSize\"\n [minBufferPx]=\"itemSize + (itemSize * 20)\"\n [maxBufferPx]=\"itemSize + (itemSize * 40)\">\n \n <ng-content></ng-content>\n\n <ng-template #tableScrollingContent>\n <ng-template let-item cdkVirtualFor [cdkVirtualForOf]=\"items$ | async\">\n <ng-template *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-template>\n </ng-template>\n </ng-template>\n</cdk-virtual-scroll-viewport>", styles: ["::ng-deep .cdk-virtual-scrollable{height:100%;width:100%;overflow-y:auto!important;overflow-x:hidden!important;contain:inline-size!important}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar{width:.5rem;height:.5rem}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar-thumb{border-radius:1rem;background-color:var(--bizy-table-scroll-bar-color)}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar-thumb:hover{background-color:var(--bizy-table-scroll-bar-hover-color)}::ng-deep .cdk-virtual-scrollable::-webkit-scrollbar-button{height:1rem}\n"] }]
6092
- }], ctorParameters: () => [{ type: Document, decorators: [{
6093
- type: Inject,
6094
- args: [DOCUMENT]
6095
- }] }, { type: i0.ElementRef, decorators: [{
6096
- type: Inject,
6097
- args: [ElementRef]
6098
- }] }, { type: i0.ChangeDetectorRef, decorators: [{
6099
- type: Inject,
6100
- args: [ChangeDetectorRef]
6101
- }] }], propDecorators: { viewport: [{
6066
+ }], propDecorators: { viewport: [{
6102
6067
  type: ViewChild,
6103
6068
  args: [CdkVirtualScrollViewport]
6104
6069
  }], content: [{
@@ -6107,10 +6072,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
6107
6072
  }] } });
6108
6073
 
6109
6074
  class BizyTableComponent {
6110
- ref;
6111
- document;
6112
- renderer;
6113
- elementRef;
6075
+ #elementRef = inject(ElementRef);
6076
+ #document = inject(DOCUMENT);
6077
+ #ref = inject(ChangeDetectorRef);
6078
+ #renderer = inject(Renderer2);
6114
6079
  viewport;
6115
6080
  virtualFor;
6116
6081
  rows;
@@ -6141,44 +6106,38 @@ class BizyTableComponent {
6141
6106
  this.footers.forEach(_footer => {
6142
6107
  _footer.setSelectable(selectable);
6143
6108
  });
6144
- this.ref.detectChanges();
6109
+ this.#ref.detectChanges();
6145
6110
  });
6146
- this.#selectableMutationObserver.observe(this.document.body, { childList: true, subtree: true });
6111
+ this.#selectableMutationObserver.observe(this.#document.body, { childList: true, subtree: true });
6147
6112
  }
6148
6113
  ;
6149
- constructor(ref, document, renderer, elementRef) {
6150
- this.ref = ref;
6151
- this.document = document;
6152
- this.renderer = renderer;
6153
- this.elementRef = elementRef;
6154
- }
6155
6114
  ngAfterContentInit() {
6156
6115
  this.#rowScrollingMutationObserver = new MutationObserver(() => {
6157
6116
  if (!this.virtualFor || !this.viewport) {
6158
6117
  return;
6159
6118
  }
6160
- if (this.elementRef.nativeElement.offsetHeight) {
6161
- const fontSize = getComputedStyle(this.document.documentElement).getPropertyValue('font-size');
6119
+ if (this.#elementRef.nativeElement.offsetHeight) {
6120
+ const fontSize = getComputedStyle(this.#document.documentElement).getPropertyValue('font-size');
6162
6121
  const gap = Number(fontSize.split('px')[0]) * 0.3;
6163
6122
  let headersHeight = 0;
6164
6123
  this.headers.forEach(_header => {
6165
- headersHeight += _header.elementRef.nativeElement.offsetHeight + gap;
6124
+ headersHeight += _header.getNativeElement().offsetHeight + gap;
6166
6125
  });
6167
6126
  let footersHeight = 0;
6168
6127
  this.footers.forEach(_footer => {
6169
- footersHeight += _footer.elementRef.nativeElement.offsetHeight + gap;
6128
+ footersHeight += _footer.getNativeElement().offsetHeight + gap;
6170
6129
  });
6171
- this.renderer.setStyle(this.viewport.elementRef.nativeElement, 'height', `${this.elementRef.nativeElement.offsetHeight - headersHeight - footersHeight}px`);
6130
+ this.#renderer.setStyle(this.viewport.getNativeElement(), 'height', `${this.#elementRef.nativeElement.offsetHeight - headersHeight - footersHeight}px`);
6172
6131
  }
6173
6132
  this.viewport.attachView(this.virtualFor);
6174
6133
  this.#rowScrollingMutationObserver.disconnect();
6175
- this.ref.detectChanges();
6134
+ this.#ref.detectChanges();
6176
6135
  this.#afterContentInitObserver = new MutationObserver(() => {
6177
- if (!this.elementRef.nativeElement.offsetWidth) {
6136
+ if (!this.#elementRef.nativeElement.offsetWidth) {
6178
6137
  return;
6179
6138
  }
6180
- this.marginRight = this.elementRef.nativeElement.scrollWidth ? (this.elementRef.nativeElement.scrollWidth - this.elementRef.nativeElement.offsetWidth) - this.elementRef.nativeElement.scrollLeft : 0;
6181
- this.marginLeft = this.elementRef.nativeElement.scrollLeft;
6139
+ this.marginRight = this.#elementRef.nativeElement.scrollWidth ? (this.#elementRef.nativeElement.scrollWidth - this.#elementRef.nativeElement.offsetWidth) - this.#elementRef.nativeElement.scrollLeft : 0;
6140
+ this.marginLeft = this.#elementRef.nativeElement.scrollLeft;
6182
6141
  this.rows.forEach(_row => {
6183
6142
  _row.setMarginRight(this.marginRight);
6184
6143
  _row.setMarginLeft(this.marginLeft);
@@ -6191,9 +6150,9 @@ class BizyTableComponent {
6191
6150
  _footer.setMarginRight(this.marginRight);
6192
6151
  _footer.setMarginLeft(this.marginLeft);
6193
6152
  });
6194
- this.#subscription.add(fromEvent(this.elementRef.nativeElement, 'scroll', { capture: true }).subscribe(() => {
6195
- this.marginRight = this.elementRef.nativeElement.scrollWidth ? (this.elementRef.nativeElement.scrollWidth - this.elementRef.nativeElement.offsetWidth) - this.elementRef.nativeElement.scrollLeft : 0;
6196
- this.marginLeft = this.elementRef.nativeElement.scrollLeft;
6153
+ this.#subscription.add(fromEvent(this.#elementRef.nativeElement, 'scroll', { capture: true }).subscribe(() => {
6154
+ this.marginRight = this.#elementRef.nativeElement.scrollWidth ? (this.#elementRef.nativeElement.scrollWidth - this.#elementRef.nativeElement.offsetWidth) - this.#elementRef.nativeElement.scrollLeft : 0;
6155
+ this.marginLeft = this.#elementRef.nativeElement.scrollLeft;
6197
6156
  this.rows.forEach(_row => {
6198
6157
  _row.setMarginRight(this.marginRight);
6199
6158
  _row.setMarginLeft(this.marginLeft);
@@ -6208,30 +6167,30 @@ class BizyTableComponent {
6208
6167
  });
6209
6168
  }));
6210
6169
  this.#afterContentInitObserver.disconnect();
6211
- this.ref.detectChanges();
6170
+ this.#ref.detectChanges();
6212
6171
  });
6213
- this.#afterContentInitObserver.observe(this.document.body, { childList: true, subtree: true });
6172
+ this.#afterContentInitObserver.observe(this.#document.body, { childList: true, subtree: true });
6214
6173
  });
6215
- this.#rowScrollingMutationObserver.observe(this.document.body, { childList: true, subtree: true });
6174
+ this.#rowScrollingMutationObserver.observe(this.#document.body, { childList: true, subtree: true });
6216
6175
  this.#resizeObserver = new ResizeObserver(() => this.notifier$.next());
6217
- const resizeRef = this.resizeRef ? this.resizeRef : this.renderer.parentNode(this.elementRef.nativeElement) ? this.renderer.parentNode(this.elementRef.nativeElement) : this.elementRef.nativeElement;
6176
+ const resizeRef = this.resizeRef ? this.resizeRef : this.#renderer.parentNode(this.#elementRef.nativeElement) ? this.#renderer.parentNode(this.#elementRef.nativeElement) : this.#elementRef.nativeElement;
6218
6177
  this.#resizeObserver.observe(resizeRef);
6219
6178
  this.#subscription.add(this.notifier$.pipe(skip(1), debounceTime$1(200)).subscribe(() => {
6220
- if (this.viewport && this.elementRef.nativeElement.offsetHeight) {
6221
- const fontSize = getComputedStyle(this.document.documentElement).getPropertyValue('font-size');
6179
+ if (this.viewport && this.#elementRef.nativeElement.offsetHeight) {
6180
+ const fontSize = getComputedStyle(this.#document.documentElement).getPropertyValue('font-size');
6222
6181
  const gap = Number(fontSize.split('px')[0]) * 0.3;
6223
6182
  let headersHeight = 0;
6224
6183
  this.headers.forEach(_header => {
6225
- headersHeight += _header.elementRef.nativeElement.offsetHeight + gap;
6184
+ headersHeight += _header.getNativeElement().offsetHeight + gap;
6226
6185
  });
6227
6186
  let footersHeight = 0;
6228
6187
  this.footers.forEach(_footer => {
6229
- footersHeight += _footer.elementRef.nativeElement.offsetHeight + gap;
6188
+ footersHeight += _footer.getNativeElement().offsetHeight + gap;
6230
6189
  });
6231
- this.renderer.setStyle(this.viewport.elementRef.nativeElement, 'height', `${this.elementRef.nativeElement.offsetHeight - headersHeight - footersHeight}px`);
6190
+ this.#renderer.setStyle(this.viewport.getNativeElement(), 'height', `${this.#elementRef.nativeElement.offsetHeight - headersHeight - footersHeight}px`);
6232
6191
  }
6233
- this.marginRight = this.elementRef.nativeElement.scrollWidth ? (this.elementRef.nativeElement.scrollWidth - this.elementRef.nativeElement.offsetWidth) - this.elementRef.nativeElement.scrollLeft : 0;
6234
- this.marginLeft = this.elementRef.nativeElement.scrollLeft;
6192
+ this.marginRight = this.#elementRef.nativeElement.scrollWidth ? (this.#elementRef.nativeElement.scrollWidth - this.#elementRef.nativeElement.offsetWidth) - this.#elementRef.nativeElement.scrollLeft : 0;
6193
+ this.marginLeft = this.#elementRef.nativeElement.scrollLeft;
6235
6194
  this.rows.forEach(_row => {
6236
6195
  _row.setMarginRight(this.marginRight);
6237
6196
  _row.setMarginLeft(this.marginLeft);
@@ -6262,7 +6221,8 @@ class BizyTableComponent {
6262
6221
  this.#resizeObserver.disconnect();
6263
6222
  }
6264
6223
  }
6265
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableComponent, deps: [{ token: ChangeDetectorRef }, { token: DOCUMENT }, { token: Renderer2 }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Component });
6224
+ getNativeElement = () => this.#elementRef?.nativeElement;
6225
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6266
6226
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyTableComponent, isStandalone: true, selector: "bizy-table", inputs: { resizeRef: "resizeRef", selectable: "selectable" }, queries: [{ propertyName: "virtualFor", first: true, predicate: BizyTableScrollingDirective, descendants: true }, { propertyName: "rows", predicate: BizyTableRowComponent }, { propertyName: "headers", predicate: BizyTableHeaderComponent }, { propertyName: "footers", predicate: BizyTableFooterComponent }], viewQueries: [{ propertyName: "viewport", first: true, predicate: BizyTableScrollingComponent, descendants: true }], ngImport: i0, template: "<div class=\"bizy-table\">\n\n <ng-content select=\"bizy-table-header\"></ng-content>\n\n <bizy-table-scrolling class=\"bizy-table__rows\">\n\n <ng-content select=\"bizy-table-row\"></ng-content>\n\n </bizy-table-scrolling>\n\n <ng-content select=\"bizy-table-footer\"></ng-content>\n\n</div>", styles: [":host{display:inline-block!important;min-height:var(--bizy-table-min-height);max-height:var(--bizy-table-max-height);height:var(--bizy-table-height);width:var(--bizy-table-width);flex:1;overflow-x:auto;overflow-y:hidden}.bizy-table{width:inherit;height:inherit;min-width:fit-content;display:flex;flex-direction:column;row-gap:.3rem;overflow-x:clip;background-color:var(--bizy-table-background-color)}.bizy-table__rows{width:100%;display:flex;flex-direction:column;min-width:fit-content;overflow-x:hidden}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ScrollingModule }, { kind: "component", type: BizyTableScrollingComponent, selector: "bizy-table-scrolling" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6267
6227
  }
6268
6228
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableComponent, decorators: [{
@@ -6272,19 +6232,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
6272
6232
  ScrollingModule,
6273
6233
  BizyTableScrollingComponent
6274
6234
  ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bizy-table\">\n\n <ng-content select=\"bizy-table-header\"></ng-content>\n\n <bizy-table-scrolling class=\"bizy-table__rows\">\n\n <ng-content select=\"bizy-table-row\"></ng-content>\n\n </bizy-table-scrolling>\n\n <ng-content select=\"bizy-table-footer\"></ng-content>\n\n</div>", styles: [":host{display:inline-block!important;min-height:var(--bizy-table-min-height);max-height:var(--bizy-table-max-height);height:var(--bizy-table-height);width:var(--bizy-table-width);flex:1;overflow-x:auto;overflow-y:hidden}.bizy-table{width:inherit;height:inherit;min-width:fit-content;display:flex;flex-direction:column;row-gap:.3rem;overflow-x:clip;background-color:var(--bizy-table-background-color)}.bizy-table__rows{width:100%;display:flex;flex-direction:column;min-width:fit-content;overflow-x:hidden}\n"] }]
6275
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
6276
- type: Inject,
6277
- args: [ChangeDetectorRef]
6278
- }] }, { type: Document, decorators: [{
6279
- type: Inject,
6280
- args: [DOCUMENT]
6281
- }] }, { type: i0.Renderer2, decorators: [{
6282
- type: Inject,
6283
- args: [Renderer2]
6284
- }] }, { type: i0.ElementRef, decorators: [{
6285
- type: Inject,
6286
- args: [ElementRef]
6287
- }] }], propDecorators: { viewport: [{
6235
+ }], propDecorators: { viewport: [{
6288
6236
  type: ViewChild,
6289
6237
  args: [BizyTableScrollingComponent]
6290
6238
  }], virtualFor: [{
@@ -6306,9 +6254,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
6306
6254
  }] } });
6307
6255
 
6308
6256
  class BizyTableColumnArrowsComponent {
6257
+ #elementRef = inject(ElementRef);
6309
6258
  order = null;
6310
6259
  show = false;
6311
6260
  customClass = '';
6261
+ getNativeElement = () => this.#elementRef?.nativeElement;
6312
6262
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableColumnArrowsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6313
6263
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyTableColumnArrowsComponent, isStandalone: true, selector: "bizy-table-column-arrows", inputs: { order: "order", show: "show", customClass: "customClass" }, ngImport: i0, template: "<svg \n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 448 512\"\n *ngIf=\"order !== 'asc' && order !== 'desc'\"\n name=\"bizy-table-column-arrows\"\n class=\"bizy-table-column-arrows bizy-table-column-arrows__down-up animated fade-in {{customClass}}\">\n <path d=\"M438.6 150.6c12.5-12.5 12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.7 96 32 96C14.3 96 0 110.3 0 128s14.3 32 32 32l306.7 0-41.4 41.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l96-96zm-333.3 352c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 416 416 416c17.7 0 32-14.3 32-32s-14.3-32-32-32l-306.7 0 41.4-41.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3l96 96z\"/>\n</svg>\n\n<svg \n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 576 512\"\n *ngIf=\"order === 'desc'\"\n name=\"bizy-table-column-down-arrow\"\n class=\"bizy-table-column-arrows animated fade-in {{customClass}}\"\n [ngClass]=\"{'bizy-table-column-arrows--visible': show}\">\n <path d=\"M151.6 469.6C145.5 476.2 137 480 128 480s-17.5-3.8-23.6-10.4l-88-96c-11.9-13-11.1-33.3 2-45.2s33.3-11.1 45.2 2L96 365.7V64c0-17.7 14.3-32 32-32s32 14.3 32 32V365.7l32.4-35.4c11.9-13 32.2-13.9 45.2-2s13.9 32.2 2 45.2l-88 96zM320 480c-17.7 0-32-14.3-32-32s14.3-32 32-32h32c17.7 0 32 14.3 32 32s-14.3 32-32 32H320zm0-128c-17.7 0-32-14.3-32-32s14.3-32 32-32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H320zm0-128c-17.7 0-32-14.3-32-32s14.3-32 32-32H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H320zm0-128c-17.7 0-32-14.3-32-32s14.3-32 32-32H544c17.7 0 32 14.3 32 32s-14.3 32-32 32H320z\"/>\n</svg>\n\n\n<svg \n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 576 512\"\n *ngIf=\"order === 'asc'\"\n class=\"bizy-table-column-arrows animated fade-in {{customClass}}\"\n [ngClass]=\"{'bizy-table-column-arrows--visible': show}\"\n name=\"bizy-table-column-up-arrow\">\n <path d=\"M151.6 42.4C145.5 35.8 137 32 128 32s-17.5 3.8-23.6 10.4l-88 96c-11.9 13-11.1 33.3 2 45.2s33.3 11.1 45.2-2L96 146.3V448c0 17.7 14.3 32 32 32s32-14.3 32-32V146.3l32.4 35.4c11.9 13 32.2 13.9 45.2 2s13.9-32.2 2-45.2l-88-96zM320 32c-17.7 0-32 14.3-32 32s14.3 32 32 32h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H320zm0 128c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H320zm0 128c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H320zm0 128c-17.7 0-32 14.3-32 32s14.3 32 32 32H544c17.7 0 32-14.3 32-32s-14.3-32-32-32H320z\"/>\n</svg>\n", styles: [":host{font-size:1rem}.bizy-table-column-arrows__down-up{transform:rotate(90deg)}.bizy-table-column-arrows{display:none;font-size:1rem;height:1rem;fill:var(--bizy-table-column-arrows-color)}.bizy-table-column-arrows--visible{display:inline-block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6314
6264
  }
@@ -6324,6 +6274,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
6324
6274
  }] } });
6325
6275
 
6326
6276
  class BizyTableRowExpandContentComponent {
6277
+ #elementRef = inject(ElementRef);
6278
+ getNativeElement = () => this.#elementRef?.nativeElement;
6327
6279
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTableRowExpandContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6328
6280
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyTableRowExpandContentComponent, isStandalone: true, selector: "bizy-table-row-expand-content", ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{font-size:1rem;width:100%;background-color:var(--bizy-table-row-expand-content-background-color);border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem;padding:.5rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6329
6281
  }
@@ -6382,7 +6334,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
6382
6334
  }] });
6383
6335
 
6384
6336
  class BizyTabComponent {
6385
- elementRef;
6337
+ #elementRef = inject(ElementRef);
6386
6338
  id = `bizy-tab-${Math.random()}`;
6387
6339
  disabled = false;
6388
6340
  selected = false;
@@ -6390,9 +6342,6 @@ class BizyTabComponent {
6390
6342
  customClass;
6391
6343
  selectedChange = new EventEmitter();
6392
6344
  onSelect = new EventEmitter();
6393
- constructor(elementRef) {
6394
- this.elementRef = elementRef;
6395
- }
6396
6345
  _onSelect(event) {
6397
6346
  if (this.disabled) {
6398
6347
  return;
@@ -6400,16 +6349,14 @@ class BizyTabComponent {
6400
6349
  this.selectedChange.emit(true);
6401
6350
  this.onSelect.emit(event);
6402
6351
  }
6403
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTabComponent, deps: [{ token: ElementRef }], target: i0.ɵɵFactoryTarget.Component });
6352
+ getNativeElement = () => this.#elementRef?.nativeElement;
6353
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6404
6354
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyTabComponent, isStandalone: true, selector: "bizy-tab", inputs: { id: "id", disabled: "disabled", selected: "selected", linePosition: "linePosition", customClass: "customClass" }, outputs: { selectedChange: "selectedChange", onSelect: "onSelect" }, ngImport: i0, template: "<span class=\"bizy-tab__selected-line\" *ngIf=\"linePosition === 'top'\" [ngClass]=\"{'bizy-tab__selected-line--visible': selected}\"></span>\n\n<button \n type=\"button\"\n [id]=\"id\"\n [ngClass]=\"{'bizy-tab--selected': selected, 'bizy-tab--disabled': disabled}\"\n class=\"bizy-tab {{customClass}}\"\n (click)=\"_onSelect($event)\"\n (keyup.enter)=\"_onSelect($event)\">\n\n <ng-content></ng-content>\n\n</button>\n\n<span class=\"bizy-tab__selected-line\" *ngIf=\"linePosition === 'bottom'\" [ngClass]=\"{'bizy-tab__selected-line--visible': selected}\"></span>\n", styles: [":host{font-size:1rem;height:100%;flex:var(--bizy-tab-flex);overflow:hidden;display:flex;flex-direction:column}.bizy-tab{width:100%;height:100%;min-width:fit-content;display:flex;flex-direction:column;row-gap:var(--bizy-tab-row-gap);align-items:center;text-wrap:nowrap;border-top:var(--bizy-tab-border-top);border-right:var(--bizy-tab-border-right);border-bottom:var(--bizy-tab-border-bottom);border-left:var(--bizy-tab-border-left);border-radius:var(--bizy-tab-border-radius);padding:var(--bizy-tab-padding);background-color:var(--bizy-tab-background-color);color:var(--bizy-tab-color);cursor:pointer}::ng-deep .bizy-tab *{color:var(--bizy-tab-color);background-color:var(--bizy-tab-background-color)}.bizy-tab--selected{color:var(--bizy-tab-selected-color);background-color:var(--bizy-tab-selected-background-color)}::ng-deep .bizy-tab--selected *{color:var(--bizy-tab-selected-color);background-color:var(--bizy-tab-selected-background-color)}.bizy-tab--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}.bizy-tab__selected-line{width:100%;height:var(--bizy-tab-selected-bar-height);visibility:hidden;pointer-events:none;background-color:var(--bizy-tab-selected-bar-color)}.bizy-tab__selected-line--visible{visibility:visible;animation-name:zoomIn;animation-duration:.2s;animation-fill-mode:both}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6405
6355
  }
6406
6356
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTabComponent, decorators: [{
6407
6357
  type: Component,
6408
6358
  args: [{ selector: 'bizy-tab', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<span class=\"bizy-tab__selected-line\" *ngIf=\"linePosition === 'top'\" [ngClass]=\"{'bizy-tab__selected-line--visible': selected}\"></span>\n\n<button \n type=\"button\"\n [id]=\"id\"\n [ngClass]=\"{'bizy-tab--selected': selected, 'bizy-tab--disabled': disabled}\"\n class=\"bizy-tab {{customClass}}\"\n (click)=\"_onSelect($event)\"\n (keyup.enter)=\"_onSelect($event)\">\n\n <ng-content></ng-content>\n\n</button>\n\n<span class=\"bizy-tab__selected-line\" *ngIf=\"linePosition === 'bottom'\" [ngClass]=\"{'bizy-tab__selected-line--visible': selected}\"></span>\n", styles: [":host{font-size:1rem;height:100%;flex:var(--bizy-tab-flex);overflow:hidden;display:flex;flex-direction:column}.bizy-tab{width:100%;height:100%;min-width:fit-content;display:flex;flex-direction:column;row-gap:var(--bizy-tab-row-gap);align-items:center;text-wrap:nowrap;border-top:var(--bizy-tab-border-top);border-right:var(--bizy-tab-border-right);border-bottom:var(--bizy-tab-border-bottom);border-left:var(--bizy-tab-border-left);border-radius:var(--bizy-tab-border-radius);padding:var(--bizy-tab-padding);background-color:var(--bizy-tab-background-color);color:var(--bizy-tab-color);cursor:pointer}::ng-deep .bizy-tab *{color:var(--bizy-tab-color);background-color:var(--bizy-tab-background-color)}.bizy-tab--selected{color:var(--bizy-tab-selected-color);background-color:var(--bizy-tab-selected-background-color)}::ng-deep .bizy-tab--selected *{color:var(--bizy-tab-selected-color);background-color:var(--bizy-tab-selected-background-color)}.bizy-tab--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}.bizy-tab__selected-line{width:100%;height:var(--bizy-tab-selected-bar-height);visibility:hidden;pointer-events:none;background-color:var(--bizy-tab-selected-bar-color)}.bizy-tab__selected-line--visible{visibility:visible;animation-name:zoomIn;animation-duration:.2s;animation-fill-mode:both}\n"] }]
6409
- }], ctorParameters: () => [{ type: i0.ElementRef, decorators: [{
6410
- type: Inject,
6411
- args: [ElementRef]
6412
- }] }], propDecorators: { id: [{
6359
+ }], propDecorators: { id: [{
6413
6360
  type: Input
6414
6361
  }], disabled: [{
6415
6362
  type: Input
@@ -6426,7 +6373,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
6426
6373
  }] } });
6427
6374
 
6428
6375
  class BizyTabsComponent {
6429
- ref;
6376
+ #elementRef = inject(ElementRef);
6377
+ #ref = inject(ChangeDetectorRef);
6430
6378
  tabs;
6431
6379
  bizyTabs;
6432
6380
  bizyTabsWrapper;
@@ -6438,9 +6386,6 @@ class BizyTabsComponent {
6438
6386
  #subscription = new Subscription();
6439
6387
  #resize$ = new Subject();
6440
6388
  #initialScroll = 0;
6441
- constructor(ref) {
6442
- this.ref = ref;
6443
- }
6444
6389
  ngAfterViewInit() {
6445
6390
  this.bizyTabsWrapper.nativeElement.scrollLeft = this.#initialScroll;
6446
6391
  this.#resizeObserver = new ResizeObserver(() => this.#resize$.next());
@@ -6452,7 +6397,7 @@ class BizyTabsComponent {
6452
6397
  ngAfterContentInit() {
6453
6398
  for (let i = 0; i < this.tabs.length; i++) {
6454
6399
  if (this.tabs.get(i).selected) {
6455
- this.#initialScroll = this.tabs.get(i).elementRef.nativeElement.offsetLeft;
6400
+ this.#initialScroll = this.tabs.get(i).getNativeElement().offsetLeft;
6456
6401
  break;
6457
6402
  }
6458
6403
  }
@@ -6468,22 +6413,20 @@ class BizyTabsComponent {
6468
6413
  #checkButtons() {
6469
6414
  this.showLeftButton = this.bizyTabsWrapper.nativeElement.scrollLeft > 0;
6470
6415
  this.showRightButton = (this.bizyTabsWrapper.nativeElement.scrollWidth - this.bizyTabs.nativeElement.offsetWidth) > 0 && (this.bizyTabsWrapper.nativeElement.scrollLeft < (this.bizyTabsWrapper.nativeElement.scrollWidth - this.bizyTabs.nativeElement.offsetWidth));
6471
- this.ref.detectChanges();
6416
+ this.#ref.detectChanges();
6472
6417
  }
6418
+ getNativeElement = () => this.#elementRef?.nativeElement;
6473
6419
  ngOnDestroy() {
6474
6420
  this.#subscription.unsubscribe();
6475
6421
  this.#resizeObserver.disconnect();
6476
6422
  }
6477
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTabsComponent, deps: [{ token: ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
6423
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6478
6424
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyTabsComponent, isStandalone: true, selector: "bizy-tabs", inputs: { customClass: "customClass" }, queries: [{ propertyName: "tabs", predicate: BizyTabComponent }], viewQueries: [{ propertyName: "bizyTabs", first: true, predicate: ["bizyTabs"], descendants: true }, { propertyName: "bizyTabsWrapper", first: true, predicate: ["bizyTabsWrapper"], descendants: true }], ngImport: i0, template: "<div #bizyTabs class=\"bizy-tabs {{customClass}}\">\n\n <button \n type=\"button\"\n class=\"bizy-tabs__scroll-button bizy-tabs__scroll-button--left\"\n *ngIf=\"showLeftButton\"\n (click)=\"onScrollLeft()\"\n (keyup.enter)=\"onScrollLeft()\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\" class=\"bizy-tabs__scroll-button__arrow\">\n <path d=\"M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l192 192c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 246.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192z\"/>\n </svg>\n </button>\n\n <span class=\"bizy-tabs__wrapper\" #bizyTabsWrapper>\n\n <ng-content select=\"bizy-tab\"></ng-content>\n\n </span>\n\n <button \n type=\"button\"\n class=\"bizy-tabs__scroll-button bizy-tabs__scroll-button--right\"\n *ngIf=\"showRightButton\"\n (click)=\"onScrollRight()\"\n (keyup.enter)=\"onScrollRight()\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\" class=\"bizy-tabs__scroll-button__arrow\">\n <path d=\"M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z\"/>\n </svg>\n </button>\n\n</div>", styles: [":host{font-size:1rem}.bizy-tabs{display:flex;width:100%;height:100%;overflow:hidden;background-color:transparent}.bizy-tabs__wrapper{display:flex;align-items:center;width:100%;height:100%;position:relative;overflow-y:hidden;overflow-x:auto;scroll-behavior:smooth;column-gap:var(--bizy-tabs-column-gap);background-color:var(--bizy-tabs-background-color)}.bizy-tabs__wrapper::-webkit-scrollbar{width:.5rem;height:.5rem}.bizy-tabs__wrapper::-webkit-scrollbar-thumb{border-radius:1rem;background-color:var(--bizy-tabs-scroll-bar-color)}.bizy-tabs__wrapper::-webkit-scrollbar-thumb:hover{background-color:var(--bizy-tabs-scroll-bar-hover-color)}.bizy-tabs__wrapper::-webkit-scrollbar-button{height:1rem}.bizy-tabs__scroll-button{width:2rem;border:none;background-color:var(--bizy-tabs-arrow-button-background-color);display:flex;align-items:center;padding:.3rem;justify-content:center;box-shadow:0 0 47px -5px #000;-webkit-box-shadow:0px 0px 47px -5px rgba(0,0,0,1);-moz-box-shadow:0px 0px 47px -5px rgba(0,0,0,1)}.bizy-tabs__scroll-button--left{border-right:.1rem solid #6666}.bizy-tabs__scroll-button--right{border-left:.1rem solid #6666}.bizy-tabs__scroll-button__arrow{height:1rem;fill:var(--bizy-tabs-arrow-button-color)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6479
6425
  }
6480
6426
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTabsComponent, decorators: [{
6481
6427
  type: Component,
6482
6428
  args: [{ selector: 'bizy-tabs', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #bizyTabs class=\"bizy-tabs {{customClass}}\">\n\n <button \n type=\"button\"\n class=\"bizy-tabs__scroll-button bizy-tabs__scroll-button--left\"\n *ngIf=\"showLeftButton\"\n (click)=\"onScrollLeft()\"\n (keyup.enter)=\"onScrollLeft()\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\" class=\"bizy-tabs__scroll-button__arrow\">\n <path d=\"M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l192 192c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 246.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192z\"/>\n </svg>\n </button>\n\n <span class=\"bizy-tabs__wrapper\" #bizyTabsWrapper>\n\n <ng-content select=\"bizy-tab\"></ng-content>\n\n </span>\n\n <button \n type=\"button\"\n class=\"bizy-tabs__scroll-button bizy-tabs__scroll-button--right\"\n *ngIf=\"showRightButton\"\n (click)=\"onScrollRight()\"\n (keyup.enter)=\"onScrollRight()\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\" class=\"bizy-tabs__scroll-button__arrow\">\n <path d=\"M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z\"/>\n </svg>\n </button>\n\n</div>", styles: [":host{font-size:1rem}.bizy-tabs{display:flex;width:100%;height:100%;overflow:hidden;background-color:transparent}.bizy-tabs__wrapper{display:flex;align-items:center;width:100%;height:100%;position:relative;overflow-y:hidden;overflow-x:auto;scroll-behavior:smooth;column-gap:var(--bizy-tabs-column-gap);background-color:var(--bizy-tabs-background-color)}.bizy-tabs__wrapper::-webkit-scrollbar{width:.5rem;height:.5rem}.bizy-tabs__wrapper::-webkit-scrollbar-thumb{border-radius:1rem;background-color:var(--bizy-tabs-scroll-bar-color)}.bizy-tabs__wrapper::-webkit-scrollbar-thumb:hover{background-color:var(--bizy-tabs-scroll-bar-hover-color)}.bizy-tabs__wrapper::-webkit-scrollbar-button{height:1rem}.bizy-tabs__scroll-button{width:2rem;border:none;background-color:var(--bizy-tabs-arrow-button-background-color);display:flex;align-items:center;padding:.3rem;justify-content:center;box-shadow:0 0 47px -5px #000;-webkit-box-shadow:0px 0px 47px -5px rgba(0,0,0,1);-moz-box-shadow:0px 0px 47px -5px rgba(0,0,0,1)}.bizy-tabs__scroll-button--left{border-right:.1rem solid #6666}.bizy-tabs__scroll-button--right{border-left:.1rem solid #6666}.bizy-tabs__scroll-button__arrow{height:1rem;fill:var(--bizy-tabs-arrow-button-color)}\n"] }]
6483
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef, decorators: [{
6484
- type: Inject,
6485
- args: [ChangeDetectorRef]
6486
- }] }], propDecorators: { tabs: [{
6429
+ }], propDecorators: { tabs: [{
6487
6430
  type: ContentChildren,
6488
6431
  args: [BizyTabComponent]
6489
6432
  }], bizyTabs: [{
@@ -6526,6 +6469,7 @@ var BIZY_TAG_TYPE;
6526
6469
  ;
6527
6470
 
6528
6471
  class BizyTagComponent {
6472
+ #elementRef = inject(ElementRef);
6529
6473
  id = `bizy-tag-${Math.random()}`;
6530
6474
  customClass = '';
6531
6475
  disabled = false;
@@ -6538,6 +6482,7 @@ class BizyTagComponent {
6538
6482
  }
6539
6483
  this.onSelect.emit(event);
6540
6484
  }
6485
+ getNativeElement = () => this.#elementRef?.nativeElement;
6541
6486
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTagComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6542
6487
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyTagComponent, isStandalone: true, selector: "bizy-tag", inputs: { id: "id", customClass: "customClass", disabled: "disabled", type: "type" }, outputs: { onSelect: "onSelect" }, ngImport: i0, template: "<button \n type=\"button\"\n [id]=\"id\"\n (focus)=\"_focused = true\"\n (blur)=\"_focused = false\"\n [ngClass]=\"{'bizy-tag--disabled': disabled}\"\n class=\"bizy-tag bizy-tag--{{type}} {{customClass}}\"\n (click)=\"_focused = true; _onSelect($event)\"\n (keyup.enter)=\"_onSelect($event)\">\n\n <ng-content></ng-content>\n\n</button>", styles: [":host{font-size:1rem}.bizy-tag{border:none;padding:var(--bizy-tag-padding);border-radius:.3rem;display:flex;justify-content:center;cursor:pointer;column-gap:.5rem;align-items:center;text-wrap:nowrap;width:fit-content}.bizy-tag--default{background-color:var(--bizy-tag-default-background-color)}::ng-deep .bizy-tag--default *{color:var(--bizy-tag-default-color)!important}.bizy-tag--info{background-color:var(--bizy-tag-info-background-color)}::ng-deep .bizy-tag--info *{color:var(--bizy-tag-info-color)!important}.bizy-tag--success{background-color:var(--bizy-tag-success-background-color)}::ng-deep .bizy-tag--success *{color:var(--bizy-tag-success-color)!important}.bizy-tag--warning{background-color:var(--bizy-tag-warning-background-color)}::ng-deep .bizy-tag--warning *{color:var(--bizy-tag-warning-color)!important}.bizy-tag--danger{background-color:var(--bizy-tag-danger-background-color)}::ng-deep .bizy-tag--danger *{color:var(--bizy-tag-danger-color)!important}.bizy-tag--disabled{opacity:.5;cursor:not-allowed!important;pointer-events:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6543
6488
  }
@@ -6573,8 +6518,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
6573
6518
  }] });
6574
6519
 
6575
6520
  class BizyTimelineComponent {
6521
+ #elementRef = inject(ElementRef);
6576
6522
  id = `bizy-timeline-${Math.random()}`;
6577
6523
  customClass = '';
6524
+ getNativeElement = () => this.#elementRef?.nativeElement;
6578
6525
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTimelineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6579
6526
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyTimelineComponent, isStandalone: true, selector: "bizy-timeline", inputs: { id: "id", customClass: "customClass" }, host: { properties: { "id": "id", "class": "customClass" } }, ngImport: i0, template: "<ng-content select=\"bizy-timeline-event\"></ng-content>\n", styles: [":host{font-size:1rem;display:flex;flex-direction:column;align-items:center;row-gap:var(--bizy-timeline-row-gap);height:100%;width:100%}:host:not(:has(.bizy-timeline-event--start:not(:empty))) ::ng-deep bizy-timeline-event{grid-template-columns:fit-content(100%) 1fr!important}:host:not(:has(.bizy-timeline-event--start:not(:empty))) ::ng-deep .bizy-timeline-event--start{display:none}:host:not(:has(.bizy-timeline-event--end:not(:empty))) ::ng-deep bizy-timeline-event{grid-template-columns:1fr fit-content(100%)!important}:host:not(:has(.bizy-timeline-event--end:not(:empty))) ::ng-deep .bizy-timeline-event--end{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6580
6527
  }
@@ -6591,6 +6538,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
6591
6538
  }] } });
6592
6539
 
6593
6540
  class BizyTimelineEventComponent {
6541
+ #elementRef = inject(ElementRef);
6594
6542
  id = `bizy-timeline-event-${Math.random()}`;
6595
6543
  customClass = '';
6596
6544
  showLine = true;
@@ -6603,6 +6551,7 @@ class BizyTimelineEventComponent {
6603
6551
  }
6604
6552
  this.onSelect.emit(event);
6605
6553
  }
6554
+ getNativeElement = () => this.#elementRef?.nativeElement;
6606
6555
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyTimelineEventComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6607
6556
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyTimelineEventComponent, isStandalone: true, selector: "bizy-timeline-event", inputs: { id: "id", customClass: "customClass", showLine: "showLine", disabled: "disabled" }, outputs: { onSelect: "onSelect" }, host: { properties: { "id": "id", "class": "customClass" } }, ngImport: i0, template: "\n<span class=\"bizy-timeline-event--start\">\n <ng-content select=\"[slot=start]\"></ng-content>\n</span>\n\n<span class=\"bizy-timeline-event-content\" [ngClass]=\"{'bizy-timeline-event--disabled': disabled}\">\n\n <button \n type=\"button\"\n (focus)=\"_focused = true\"\n (blur)=\"_focused = false\"\n class=\"bizy-timeline-event-bullet\"\n (click)=\"_focused = true; _onSelect($event)\"\n (keyup.enter)=\"_onSelect($event)\">\n\n <ng-content select=\"[slot=bullet]\"></ng-content>\n \n </button>\n\n <span class=\"bizy-timeline-event-line\" *ngIf=\"showLine\"></span>\n\n</span>\n\n<span class=\"bizy-timeline-event--end\">\n <ng-content select=\"[slot=end]\"></ng-content>\n</span>", styles: [":host{font-size:1rem;display:grid;grid-template-columns:1fr fit-content(100%) 1fr;column-gap:var(--bizy-timeline-event-column-gap);min-height:fit-content;width:100%}.bizy-timeline-event--start,.bizy-timeline-event--end{width:100%}.bizy-timeline-event-content{justify-self:center;display:flex;flex-direction:column;align-items:center;min-width:var(--bizy-timeline-bullet-section-min-width)}.bizy-timeline-event-bullet{min-width:var(--bizy-timeline-bullet-min-width);min-height:var(--bizy-timeline-bullet-min-height);display:grid;place-items:center;border-radius:50%;border:var(--bizy-timeline-bullet-border);background-color:var(--bizy-timeline-bullet-background-color);cursor:pointer;padding:var(--bizy-timeline-bullet-padding)}.bizy-timeline-event--disabled{opacity:.5;cursor:not-allowed!important;pointer-events:none}.bizy-timeline-event-line{height:100%;min-height:var(--bizy-timeline-line-min-height);width:var(--bizy-timeline-line-width);background-color:var(--bizy-timeline-line-background-color);display:inline-block;border-radius:.3rem;margin-top:var(--bizy-timeline-row-gap)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6608
6557
  }
@@ -6769,39 +6718,37 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
6769
6718
  }] });
6770
6719
 
6771
6720
  class BizyToastWrapperComponent {
6772
- data;
6773
- toast;
6721
+ #elementRef = inject(ElementRef);
6722
+ #data = inject(DIALOG_DATA);
6723
+ #toast = inject(BizyToastService);
6774
6724
  type = TOAST.INFO;
6775
6725
  title = '';
6776
6726
  msg = '';
6777
6727
  id;
6778
- constructor(data, toast) {
6779
- this.data = data;
6780
- this.toast = toast;
6781
- this.type = this.data.type;
6782
- this.title = this.data.title;
6783
- this.msg = this.data.msg;
6784
- this.id = this.data.id;
6728
+ ngOnInit() {
6729
+ if (!this.#data) {
6730
+ this.close();
6731
+ return;
6732
+ }
6733
+ this.type = this.#data.type;
6734
+ this.title = this.#data.title;
6735
+ this.msg = this.#data.msg;
6736
+ this.id = this.#data.id;
6785
6737
  setTimeout(() => {
6786
6738
  this.close();
6787
- }, this.data.duration || 3000);
6739
+ }, this.#data.duration || 3000);
6788
6740
  }
6741
+ getNativeElement = () => this.#elementRef?.nativeElement;
6789
6742
  close() {
6790
- this.toast.close(this.id);
6743
+ this.#toast.close(this.id);
6791
6744
  }
6792
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyToastWrapperComponent, deps: [{ token: DIALOG_DATA }, { token: BizyToastService }], target: i0.ɵɵFactoryTarget.Component });
6745
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyToastWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6793
6746
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyToastWrapperComponent, isStandalone: true, selector: "bizy-toast-wrapper", providers: [BizyToastService], ngImport: i0, template: "<div class=\"bizy-toast-wrapper bizy-toast-wrapper--{{type}}\">\n\n <span class=\"bizy-toast-wrapper__content\">\n\n <h4 class=\"bizy-toast-wrapper__title--{{type}}\" *ngIf=\"title\">{{title}}</h4>\n \n <h6 *ngIf=\"msg\">{{msg}}</h6>\n\n </span>\n\n <button (click)=\"close()\" (keyup.enter)=\"close()\" class=\"bizy-toast-wrapper__close-button\">\n\n <svg \n data-name=\"Cancel button\"\n id=\"bizy-toast-wrapper-close-svg\" \n viewBox=\"0 0 200 200\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path id=\"bizy-toast-wrapper-close-svg-content\" d=\"M114,100l49-49a9.9,9.9,0,0,0-14-14L100,86,51,37A9.9,9.9,0,0,0,37,51l49,49L37,149a9.9,9.9,0,0,0,14,14l49-49,49,49a9.9,9.9,0,0,0,14-14Z\"/>\n </svg>\n\n </button>\n\n <span class=\"bizy-toast__progress bizy-toast__progress--{{type}}\"></span>\n \n</div>", styles: [":host{font-size:1rem}.bizy-toast-wrapper{position:relative;width:100%;min-width:20rem;max-width:min(30rem,80dvw);height:fit-content;min-height:3rem;max-height:95dvh;overflow-y:auto;border-top-width:var(--bizy-toast-border-top-width);border-right-width:var(--bizy-toast-border-right-width);border-bottom-width:var(--bizy-toast-border-bottom-width);border-left-width:var(--bizy-toast-border-left-width);border-top-style:var(--bizy-toast-border-top-style);border-right-style:var(--bizy-toast-border-right-style);border-bottom-style:var(--bizy-toast-border-bottom-style);border-left-style:var(--bizy-toast-border-left-style);border-top-left-radius:var(--bizy-toast-border-top-left-radius);border-top-right-radius:var(--bizy-toast-border-top-right-radius);border-bottom-left-radius:var(--bizy-toast-border-bottom-left-radius);border-bottom-right-radius:var(--bizy-toast-border-bottom-right-radius);display:flex;align-items:center;column-gap:.5rem;padding:.5rem;box-shadow:0 18px 25px #32325d40,0 3px 6px #0000001a}.bizy-toast-wrapper::-webkit-scrollbar{width:.5rem;height:.5rem}.bizy-toast-wrapper::-webkit-scrollbar-thumb{border-radius:1rem;background-color:var(--bizy-toast-scroll-bar-color)}.bizy-toast-wrapper::-webkit-scrollbar-thumb:hover{background-color:var(--bizy-toast-scroll-bar-hover-color)}.bizy-toast-wrapper__content{flex:1;display:flex;flex-direction:column;row-gap:.1rem}.bizy-toast-wrapper--debug{background-color:var(--bizy-toast-debug-background-color, );border-top-color:var(--bizy-toast-debug-color);border-right-color:var(--bizy-toast-debug-color);border-bottom-color:var(--bizy-toast-debug-color);border-left-color:var(--bizy-toast-debug-color)}.bizy-toast-wrapper__title--debug{color:var(--bizy-toast-debug-color)}.bizy-toast-wrapper--info{background-color:var(--bizy-toast-info-background-color, );border-top-color:var(--bizy-toast-info-color);border-right-color:var(--bizy-toast-info-color);border-bottom-color:var(--bizy-toast-info-color);border-left-color:var(--bizy-toast-info-color)}.bizy-toast-wrapper__title--info{color:var(--bizy-toast-info-color)}.bizy-toast-wrapper--success{background-color:var(--bizy-toast-success-background-color);border-top-color:var(--bizy-toast-success-color);border-right-color:var(--bizy-toast-success-color);border-bottom-color:var(--bizy-toast-success-color);border-left-color:var(--bizy-toast-success-color)}.bizy-toast-wrapper__title--success{color:var(--bizy-toast-success-color)}.bizy-toast-wrapper--warning{background-color:var(--bizy-toast-warning-background-color);border-top-color:var(--bizy-toast-warning-color);border-right-color:var(--bizy-toast-warning-color);border-bottom-color:var(--bizy-toast-warning-color);border-left-color:var(--bizy-toast-warning-color)}.bizy-toast-wrapper__title--warning{color:var(--bizy-toast-warning-color)}.bizy-toast-wrapper--danger{background-color:var(--bizy-toast-danger-background-color);border-top-color:var(--bizy-toast-danger-color);border-right-color:var(--bizy-toast-danger-color);border-bottom-color:var(--bizy-toast-danger-color);border-left-color:var(--bizy-toast-danger-color)}.bizy-toast-wrapper__title--danger{color:var(--bizy-toast-danger-color)}.bizy-toast-wrapper__close-button{border:none;cursor:pointer;align-self:flex-start;background-color:transparent;transition:color .2s;justify-self:flex-start}.bizy-toast-wrapper__close-button #bizy-toast-wrapper-close-svg{height:1rem}.bizy-toast-wrapper__close-button #bizy-toast-wrapper-close-svg-content{fill:var(--bizy-toast-close-button-color)}.bizy-toast-wrapper__close-button:hover #bizy-toast-wrapper-close-svg-content{fill:var(--bizy-toast-close-button-hover-color)}.bizy-toast__progress{width:100%;height:var(--bizy-toast-progress-bar-height);display:inline-block;position:fixed;bottom:0;left:0;right:0;overflow:hidden}.bizy-toast__progress--debug{background-color:var(--bizy-toast-debug-color)}.bizy-toast__progress--info{background-color:var(--bizy-toast-info-color)}.bizy-toast__progress--success{background-color:var(--bizy-toast-success-color)}.bizy-toast__progress--warning{background-color:var(--bizy-toast-warning-color)}.bizy-toast__progress--danger{background-color:var(--bizy-toast-danger-color)}.bizy-toast__progress:after{content:\"\";box-sizing:border-box;width:0;height:var(--bizy-toast-progress-bar-height);background-color:#fff;position:absolute;top:0;left:0;animation:progress var(--bizy-toast-duration) linear infinite}@keyframes progress{0%{width:0}to{width:100%}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: DialogModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6794
6747
  }
6795
6748
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyToastWrapperComponent, decorators: [{
6796
6749
  type: Component,
6797
6750
  args: [{ selector: 'bizy-toast-wrapper', imports: [CommonModule, DialogModule], providers: [BizyToastService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bizy-toast-wrapper bizy-toast-wrapper--{{type}}\">\n\n <span class=\"bizy-toast-wrapper__content\">\n\n <h4 class=\"bizy-toast-wrapper__title--{{type}}\" *ngIf=\"title\">{{title}}</h4>\n \n <h6 *ngIf=\"msg\">{{msg}}</h6>\n\n </span>\n\n <button (click)=\"close()\" (keyup.enter)=\"close()\" class=\"bizy-toast-wrapper__close-button\">\n\n <svg \n data-name=\"Cancel button\"\n id=\"bizy-toast-wrapper-close-svg\" \n viewBox=\"0 0 200 200\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path id=\"bizy-toast-wrapper-close-svg-content\" d=\"M114,100l49-49a9.9,9.9,0,0,0-14-14L100,86,51,37A9.9,9.9,0,0,0,37,51l49,49L37,149a9.9,9.9,0,0,0,14,14l49-49,49,49a9.9,9.9,0,0,0,14-14Z\"/>\n </svg>\n\n </button>\n\n <span class=\"bizy-toast__progress bizy-toast__progress--{{type}}\"></span>\n \n</div>", styles: [":host{font-size:1rem}.bizy-toast-wrapper{position:relative;width:100%;min-width:20rem;max-width:min(30rem,80dvw);height:fit-content;min-height:3rem;max-height:95dvh;overflow-y:auto;border-top-width:var(--bizy-toast-border-top-width);border-right-width:var(--bizy-toast-border-right-width);border-bottom-width:var(--bizy-toast-border-bottom-width);border-left-width:var(--bizy-toast-border-left-width);border-top-style:var(--bizy-toast-border-top-style);border-right-style:var(--bizy-toast-border-right-style);border-bottom-style:var(--bizy-toast-border-bottom-style);border-left-style:var(--bizy-toast-border-left-style);border-top-left-radius:var(--bizy-toast-border-top-left-radius);border-top-right-radius:var(--bizy-toast-border-top-right-radius);border-bottom-left-radius:var(--bizy-toast-border-bottom-left-radius);border-bottom-right-radius:var(--bizy-toast-border-bottom-right-radius);display:flex;align-items:center;column-gap:.5rem;padding:.5rem;box-shadow:0 18px 25px #32325d40,0 3px 6px #0000001a}.bizy-toast-wrapper::-webkit-scrollbar{width:.5rem;height:.5rem}.bizy-toast-wrapper::-webkit-scrollbar-thumb{border-radius:1rem;background-color:var(--bizy-toast-scroll-bar-color)}.bizy-toast-wrapper::-webkit-scrollbar-thumb:hover{background-color:var(--bizy-toast-scroll-bar-hover-color)}.bizy-toast-wrapper__content{flex:1;display:flex;flex-direction:column;row-gap:.1rem}.bizy-toast-wrapper--debug{background-color:var(--bizy-toast-debug-background-color, );border-top-color:var(--bizy-toast-debug-color);border-right-color:var(--bizy-toast-debug-color);border-bottom-color:var(--bizy-toast-debug-color);border-left-color:var(--bizy-toast-debug-color)}.bizy-toast-wrapper__title--debug{color:var(--bizy-toast-debug-color)}.bizy-toast-wrapper--info{background-color:var(--bizy-toast-info-background-color, );border-top-color:var(--bizy-toast-info-color);border-right-color:var(--bizy-toast-info-color);border-bottom-color:var(--bizy-toast-info-color);border-left-color:var(--bizy-toast-info-color)}.bizy-toast-wrapper__title--info{color:var(--bizy-toast-info-color)}.bizy-toast-wrapper--success{background-color:var(--bizy-toast-success-background-color);border-top-color:var(--bizy-toast-success-color);border-right-color:var(--bizy-toast-success-color);border-bottom-color:var(--bizy-toast-success-color);border-left-color:var(--bizy-toast-success-color)}.bizy-toast-wrapper__title--success{color:var(--bizy-toast-success-color)}.bizy-toast-wrapper--warning{background-color:var(--bizy-toast-warning-background-color);border-top-color:var(--bizy-toast-warning-color);border-right-color:var(--bizy-toast-warning-color);border-bottom-color:var(--bizy-toast-warning-color);border-left-color:var(--bizy-toast-warning-color)}.bizy-toast-wrapper__title--warning{color:var(--bizy-toast-warning-color)}.bizy-toast-wrapper--danger{background-color:var(--bizy-toast-danger-background-color);border-top-color:var(--bizy-toast-danger-color);border-right-color:var(--bizy-toast-danger-color);border-bottom-color:var(--bizy-toast-danger-color);border-left-color:var(--bizy-toast-danger-color)}.bizy-toast-wrapper__title--danger{color:var(--bizy-toast-danger-color)}.bizy-toast-wrapper__close-button{border:none;cursor:pointer;align-self:flex-start;background-color:transparent;transition:color .2s;justify-self:flex-start}.bizy-toast-wrapper__close-button #bizy-toast-wrapper-close-svg{height:1rem}.bizy-toast-wrapper__close-button #bizy-toast-wrapper-close-svg-content{fill:var(--bizy-toast-close-button-color)}.bizy-toast-wrapper__close-button:hover #bizy-toast-wrapper-close-svg-content{fill:var(--bizy-toast-close-button-hover-color)}.bizy-toast__progress{width:100%;height:var(--bizy-toast-progress-bar-height);display:inline-block;position:fixed;bottom:0;left:0;right:0;overflow:hidden}.bizy-toast__progress--debug{background-color:var(--bizy-toast-debug-color)}.bizy-toast__progress--info{background-color:var(--bizy-toast-info-color)}.bizy-toast__progress--success{background-color:var(--bizy-toast-success-color)}.bizy-toast__progress--warning{background-color:var(--bizy-toast-warning-color)}.bizy-toast__progress--danger{background-color:var(--bizy-toast-danger-color)}.bizy-toast__progress:after{content:\"\";box-sizing:border-box;width:0;height:var(--bizy-toast-progress-bar-height);background-color:#fff;position:absolute;top:0;left:0;animation:progress var(--bizy-toast-duration) linear infinite}@keyframes progress{0%{width:0}to{width:100%}}\n"] }]
6798
- }], ctorParameters: () => [{ type: undefined, decorators: [{
6799
- type: Inject,
6800
- args: [DIALOG_DATA]
6801
- }] }, { type: BizyToastService, decorators: [{
6802
- type: Inject,
6803
- args: [BizyToastService]
6804
- }] }] });
6751
+ }] });
6805
6752
 
6806
6753
  class BizyToastModule {
6807
6754
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyToastModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -6818,6 +6765,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
6818
6765
  }] });
6819
6766
 
6820
6767
  class BizyToggleComponent {
6768
+ #elementRef = inject(ElementRef);
6821
6769
  id = `bizy-toggle-${Math.random()}`;
6822
6770
  disabled = false;
6823
6771
  selected = false;
@@ -6830,6 +6778,7 @@ class BizyToggleComponent {
6830
6778
  this.selectedChange.emit(!this.selected);
6831
6779
  this.onSelect.emit(event);
6832
6780
  }
6781
+ getNativeElement = () => this.#elementRef?.nativeElement;
6833
6782
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyToggleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6834
6783
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyToggleComponent, isStandalone: true, selector: "bizy-toggle", inputs: { id: "id", disabled: "disabled", selected: "selected" }, outputs: { onSelect: "onSelect", selectedChange: "selectedChange" }, ngImport: i0, template: "<button type=\"button\" class=\"bizy-toggle\" [ngClass]=\"{'bizy-toggle--disabled': disabled}\" (click)=\"_onSelect($event)\" (keyup.enter)=\"_onSelect($event)\">\n\n <ng-content select=\"[slot=start]\"></ng-content>\n\n <input \n class=\"bizy-toggle__toggle\"\n type=\"checkbox\"\n [id]=\"id\"\n [disabled]=\"disabled\"\n [checked]=\"selected\"\n readonly\n [ngClass]=\"{'bizy-toggle__toggle--disabled': disabled}\">\n\n <ng-content select=\"[slot=end]\"></ng-content>\n\n</button>", styles: [".bizy-toggle{width:fit-content;min-height:1.3rem;display:flex;column-gap:.5rem;align-items:center;border:none;cursor:pointer;background-color:transparent}.bizy-toggle--disabled{pointer-events:none;opacity:.5;cursor:not-allowed!important}.bizy-toggle__toggle{position:relative;pointer-events:none;height:.8rem;width:2.2rem;min-width:2.2rem;cursor:pointer;appearance:none;-webkit-appearance:none;border-radius:9999px;background-color:var(--bizy-toggle-background-color);transition:all .3s ease}.bizy-toggle__toggle:before{position:absolute;pointer-events:none;content:\"\";left:-.2rem;top:-.2rem;display:block;height:1.2rem;width:1.2rem;cursor:pointer;background-color:var(--bizy-toggle-color);border-radius:9999px;transition:all .3s ease}.bizy-toggle__toggle:checked{background-color:var(--bizy-toggle-selected-background-color)}.bizy-toggle__toggle:checked:before{background-color:var(--bizy-toggle-selected-color);transform:translate(100%)}.bizy-toggle__toggle--disabled{pointer-events:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6835
6784
  }
@@ -6865,6 +6814,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
6865
6814
  }] });
6866
6815
 
6867
6816
  class BizyToolbarComponent {
6817
+ #elementRef = inject(ElementRef);
6818
+ getNativeElement = () => this.#elementRef?.nativeElement;
6868
6819
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: BizyToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6869
6820
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.5", type: BizyToolbarComponent, isStandalone: true, selector: "bizy-toolbar", ngImport: i0, template: "<div class=\"bizy-toolbar\">\n\n <span class=\"bizy-toolbar__start\">\n \n <ng-content select=\"[slot=start]\"></ng-content>\n\n </span>\n\n <span class=\"bizy-toolbar__end\">\n\n <ng-content select=\"[slot=end]\"></ng-content>\n\n </span>\n\n</div>\n", styles: [":host{font-size:1rem}.bizy-toolbar{min-height:var(--bizy-toolbar-min-height);height:var(--bizy-toolbar-height);width:100%;background-color:var(--bizy-toolbar-background-color);display:flex;align-items:center;justify-content:space-between;column-gap:var(--bizy-toolbar-column-gap);padding:var(--bizy-toolbar-padding)}.bizy-toolbar__start{height:100%;display:flex;align-items:center;column-gap:var(--bizy-toolbar-column-gap)}.bizy-toolbar__end{height:100%;display:flex;align-items:center;justify-content:flex-end;column-gap:var(--bizy-toolbar-column-gap)}::ng-deep .bizy-toolbar *[toolbar-option]{height:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6870
6821
  }