@tetacom/ng-components 1.0.72 → 1.0.75

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.
@@ -1466,6 +1466,22 @@ class DaySelectComponent {
1466
1466
  this.locale = locale;
1467
1467
  });
1468
1468
  }
1469
+ set minDate(d) {
1470
+ this._minDate = d;
1471
+ if (this._currentValue) {
1472
+ this.createDays();
1473
+ }
1474
+ this._cdr.markForCheck();
1475
+ }
1476
+ ;
1477
+ set maxDate(d) {
1478
+ this._maxDate = d;
1479
+ if (this._currentValue) {
1480
+ this.createDays();
1481
+ }
1482
+ this._cdr.markForCheck();
1483
+ }
1484
+ ;
1469
1485
  set currentValue(val) {
1470
1486
  if (!this._currentValue ||
1471
1487
  DateUtil.truncateToDay(val)?.getTime() !==
@@ -1558,7 +1574,7 @@ class DaySelectComponent {
1558
1574
  return result;
1559
1575
  }
1560
1576
  createDays() {
1561
- this.days = DatePickerUtil.getPickerDays(this.currentValue, this.firstDayOfWeek, this.minDate, this.maxDate, this.disabledDates, this.disabledDays, this.disabledPeriods);
1577
+ this.days = DatePickerUtil.getPickerDays(this.currentValue, this.firstDayOfWeek, this._minDate, this._maxDate, this.disabledDates, this.disabledDays, this.disabledPeriods);
1562
1578
  }
1563
1579
  checkDays() {
1564
1580
  if (this.days) {
@@ -2146,7 +2162,7 @@ class DatePickerComponent {
2146
2162
  if (this.isScrollIgnored()) {
2147
2163
  return false;
2148
2164
  }
2149
- this.currentValue = DatePickerUtil.scrollMonth(e.deltaY, this.internalValue);
2165
+ this.currentValue = DatePickerUtil.scrollYear(e.deltaY, this.internalValue);
2150
2166
  };
2151
2167
  this.openPicker = (show) => {
2152
2168
  if (this.disabled) {
@@ -8522,8 +8538,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
8522
8538
  class TreeService {
8523
8539
  constructor() {
8524
8540
  this._openItems = new BehaviorSubject([]);
8541
+ this._scrollToIndex = new BehaviorSubject(0);
8525
8542
  this.compareItems = (item) => item;
8526
8543
  this.openItems = this._openItems.asObservable();
8544
+ this.scrollToIndex = this._scrollToIndex.asObservable();
8527
8545
  }
8528
8546
  openItem(item) {
8529
8547
  const newValue = this.addOrRemove(item, this._openItems.value);
@@ -8532,6 +8550,9 @@ class TreeService {
8532
8550
  setOpenItems(items) {
8533
8551
  this._openItems.next(items);
8534
8552
  }
8553
+ scrollTo(index) {
8554
+ this._scrollToIndex.next(index);
8555
+ }
8535
8556
  addOrRemove(needle, list) {
8536
8557
  const found = list?.find((x) => this.compareItems(x) === this.compareItems(needle));
8537
8558
  if (found) {
@@ -8651,9 +8672,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
8651
8672
  }] } });
8652
8673
 
8653
8674
  class TreeComponent {
8654
- constructor(_service, _cdr) {
8675
+ constructor(_service, _cdr, _zone) {
8655
8676
  this._service = _service;
8656
8677
  this._cdr = _cdr;
8678
+ this._zone = _zone;
8657
8679
  this.padding = 8;
8658
8680
  this.childNodeName = 'children';
8659
8681
  this.height = 28;
@@ -8671,6 +8693,7 @@ class TreeComponent {
8671
8693
  .pipe(takeWhile((_) => this._alive), filter((_) => this._openItems !== _))
8672
8694
  .subscribe((_) => {
8673
8695
  this._openItems = _;
8696
+ this.displayData = this.getDisplayData(this._data, 0);
8674
8697
  this.openItemsChange.emit(_);
8675
8698
  });
8676
8699
  }
@@ -8696,11 +8719,19 @@ class TreeComponent {
8696
8719
  ngOnChanges(changes) {
8697
8720
  this.displayData = this.getDisplayData(this._data, 0);
8698
8721
  this.childPadding = this.hasChildren(this._data);
8699
- this._cdr.detectChanges();
8700
8722
  }
8701
8723
  ngOnDestroy() {
8702
8724
  this._alive = false;
8703
8725
  }
8726
+ ngAfterViewInit() {
8727
+ this._service.scrollToIndex.pipe(takeWhile(() => this._alive)).subscribe((index) => {
8728
+ this._zone.runOutsideAngular(() => {
8729
+ setTimeout(() => {
8730
+ this.virtualScroll.scrollToIndex(index, 'smooth');
8731
+ });
8732
+ });
8733
+ });
8734
+ }
8704
8735
  hasChildren(data) {
8705
8736
  return data.some((_) => _[this.childNodeName]?.length > 0);
8706
8737
  }
@@ -8717,12 +8748,12 @@ class TreeComponent {
8717
8748
  return result;
8718
8749
  }
8719
8750
  }
8720
- TreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TreeComponent, deps: [{ token: TreeService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
8721
- TreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: TreeComponent, selector: "teta-tree", inputs: { data: "data", padding: "padding", childNodeName: "childNodeName", virtual: "virtual", height: "height", openItems: "openItems", compareItems: "compareItems" }, outputs: { service: "service", openItemsChange: "openItemsChange" }, host: { properties: { "class.tree": "this.treeClass" } }, providers: [TreeService], queries: [{ propertyName: "template", first: true, predicate: TetaTemplateDirective, descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<cdk-virtual-scroll-viewport *ngIf=\"virtual; else default\"\n class=\"table-body-container\"\n [itemSize]=\"height\">\n <teta-tree-item *cdkVirtualFor=\"let item of displayData;templateCacheSize: 0; trackBy: trackRow;\"\n [item]=\"item\"\n [style.height.px]=\"height\"\n [depth]=\"item['level']\"\n [padding]=\"padding\"\n [childNodeName]=\"childNodeName\"\n [childPadding]=\"childPadding\"\n [template]=\"template?.template\"></teta-tree-item>\n</cdk-virtual-scroll-viewport>\n<ng-template #default>\n <teta-tree-item *ngFor=\"let item of displayData\"\n [item]=\"item\"\n [style.height.px]=\"height\"\n [depth]=\"item['level']\"\n [padding]=\"padding\"\n [childNodeName]=\"childNodeName\"\n [childPadding]=\"childPadding\"\n [template]=\"template?.template\"></teta-tree-item>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i5.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i5.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: TreeItemComponent, selector: "teta-tree-item", inputs: ["item", "depth", "padding", "childNodeName", "template", "childPadding"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
8751
+ TreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TreeComponent, deps: [{ token: TreeService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
8752
+ TreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: TreeComponent, selector: "teta-tree", inputs: { data: "data", padding: "padding", childNodeName: "childNodeName", virtual: "virtual", height: "height", openItems: "openItems", compareItems: "compareItems" }, outputs: { service: "service", openItemsChange: "openItemsChange" }, host: { properties: { "class.tree": "this.treeClass" } }, providers: [TreeService], queries: [{ propertyName: "template", first: true, predicate: TetaTemplateDirective, descendants: true, static: true }], viewQueries: [{ propertyName: "virtualScroll", first: true, predicate: CdkVirtualScrollViewport, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<cdk-virtual-scroll-viewport *ngIf=\"virtual; else default\"\n class=\"table-body-container\"\n [itemSize]=\"height\">\n <teta-tree-item *cdkVirtualFor=\"let item of displayData;templateCacheSize: 0; trackBy: trackRow;\"\n [item]=\"item\"\n [style.height.px]=\"height\"\n [depth]=\"item['level']\"\n [padding]=\"padding\"\n [childNodeName]=\"childNodeName\"\n [childPadding]=\"childPadding\"\n [template]=\"template?.template\"></teta-tree-item>\n</cdk-virtual-scroll-viewport>\n<ng-template #default>\n <teta-tree-item *ngFor=\"let item of displayData; trackBy: trackRow\"\n [item]=\"item\"\n [style.height.px]=\"height\"\n [depth]=\"item['level']\"\n [padding]=\"padding\"\n [childNodeName]=\"childNodeName\"\n [childPadding]=\"childPadding\"\n [template]=\"template?.template\"></teta-tree-item>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i5.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i5.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: TreeItemComponent, selector: "teta-tree-item", inputs: ["item", "depth", "padding", "childNodeName", "template", "childPadding"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
8722
8753
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TreeComponent, decorators: [{
8723
8754
  type: Component,
8724
- args: [{ selector: 'teta-tree', providers: [TreeService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<cdk-virtual-scroll-viewport *ngIf=\"virtual; else default\"\n class=\"table-body-container\"\n [itemSize]=\"height\">\n <teta-tree-item *cdkVirtualFor=\"let item of displayData;templateCacheSize: 0; trackBy: trackRow;\"\n [item]=\"item\"\n [style.height.px]=\"height\"\n [depth]=\"item['level']\"\n [padding]=\"padding\"\n [childNodeName]=\"childNodeName\"\n [childPadding]=\"childPadding\"\n [template]=\"template?.template\"></teta-tree-item>\n</cdk-virtual-scroll-viewport>\n<ng-template #default>\n <teta-tree-item *ngFor=\"let item of displayData\"\n [item]=\"item\"\n [style.height.px]=\"height\"\n [depth]=\"item['level']\"\n [padding]=\"padding\"\n [childNodeName]=\"childNodeName\"\n [childPadding]=\"childPadding\"\n [template]=\"template?.template\"></teta-tree-item>\n</ng-template>\n" }]
8725
- }], ctorParameters: function () { return [{ type: TreeService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { data: [{
8755
+ args: [{ selector: 'teta-tree', providers: [TreeService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<cdk-virtual-scroll-viewport *ngIf=\"virtual; else default\"\n class=\"table-body-container\"\n [itemSize]=\"height\">\n <teta-tree-item *cdkVirtualFor=\"let item of displayData;templateCacheSize: 0; trackBy: trackRow;\"\n [item]=\"item\"\n [style.height.px]=\"height\"\n [depth]=\"item['level']\"\n [padding]=\"padding\"\n [childNodeName]=\"childNodeName\"\n [childPadding]=\"childPadding\"\n [template]=\"template?.template\"></teta-tree-item>\n</cdk-virtual-scroll-viewport>\n<ng-template #default>\n <teta-tree-item *ngFor=\"let item of displayData; trackBy: trackRow\"\n [item]=\"item\"\n [style.height.px]=\"height\"\n [depth]=\"item['level']\"\n [padding]=\"padding\"\n [childNodeName]=\"childNodeName\"\n [childPadding]=\"childPadding\"\n [template]=\"template?.template\"></teta-tree-item>\n</ng-template>\n" }]
8756
+ }], ctorParameters: function () { return [{ type: TreeService }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }]; }, propDecorators: { data: [{
8726
8757
  type: Input
8727
8758
  }], padding: [{
8728
8759
  type: Input
@@ -8738,6 +8769,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
8738
8769
  type: Output
8739
8770
  }], openItemsChange: [{
8740
8771
  type: Output
8772
+ }], virtualScroll: [{
8773
+ type: ViewChild,
8774
+ args: [CdkVirtualScrollViewport, { static: false }]
8741
8775
  }], template: [{
8742
8776
  type: ContentChild,
8743
8777
  args: [TetaTemplateDirective, { static: true }]