@seniorsistemas/angular-components 17.9.1 → 17.9.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/bundles/seniorsistemas-angular-components.umd.js +60 -27
  2. package/bundles/seniorsistemas-angular-components.umd.js.map +1 -1
  3. package/bundles/seniorsistemas-angular-components.umd.min.js +1 -1
  4. package/bundles/seniorsistemas-angular-components.umd.min.js.map +1 -1
  5. package/components/kanban/components/kanban-column/kanban-column.component.d.ts +2 -0
  6. package/components/kanban/components/kanban-item/kanban-item.component.d.ts +7 -4
  7. package/components/kanban/kanban.component.d.ts +7 -5
  8. package/components/kanban/models/index.d.ts +1 -1
  9. package/components/kanban/models/kanban-data.d.ts +9 -2
  10. package/components/tooltip/tooltip.directive.d.ts +1 -2
  11. package/esm2015/components/kanban/components/kanban-column/kanban-column.component.js +14 -2
  12. package/esm2015/components/kanban/components/kanban-item/kanban-item.component.js +20 -6
  13. package/esm2015/components/kanban/kanban.component.js +26 -18
  14. package/esm2015/components/kanban/models/index.js +1 -1
  15. package/esm2015/components/kanban/models/kanban-data.js +1 -1
  16. package/esm2015/components/navigation-button/navigation-button.component.js +5 -1
  17. package/esm2015/components/tooltip/tooltip.directive.js +7 -14
  18. package/esm5/components/kanban/components/kanban-column/kanban-column.component.js +16 -3
  19. package/esm5/components/kanban/components/kanban-item/kanban-item.component.js +22 -7
  20. package/esm5/components/kanban/kanban.component.js +26 -18
  21. package/esm5/components/kanban/models/index.js +1 -1
  22. package/esm5/components/kanban/models/kanban-data.js +1 -1
  23. package/esm5/components/navigation-button/navigation-button.component.js +5 -1
  24. package/esm5/components/tooltip/tooltip.directive.js +7 -14
  25. package/fesm2015/seniorsistemas-angular-components.js +58 -27
  26. package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
  27. package/fesm5/seniorsistemas-angular-components.js +60 -27
  28. package/fesm5/seniorsistemas-angular-components.js.map +1 -1
  29. package/package.json +1 -1
  30. package/seniorsistemas-angular-components.metadata.json +1 -1
@@ -495,14 +495,13 @@ var TooltipDirective = /** @class */ (function () {
495
495
  TooltipDirective.prototype.updateTooltipVisibilityWhenFocusOnInput = function () {
496
496
  var _this = this;
497
497
  if (this.focusedInputRef) {
498
- var inputFocus = this.focusedInputRef;
499
- var icon_1 = this.getIconFromFocusedInput(inputFocus);
500
- this.renderer.listen(inputFocus, 'focus', function () {
498
+ var icon_1 = this.getIconFromFocusedInput();
499
+ this.renderer.listen(this.focusedInputRef, 'focus', function () {
501
500
  if (icon_1 && _this.isMatchingTooltip(icon_1)) {
502
501
  _this.createTootipByFocus(icon_1);
503
502
  }
504
503
  });
505
- this.renderer.listen(inputFocus, 'blur', function () {
504
+ this.renderer.listen(this.focusedInputRef, 'blur', function () {
506
505
  if (icon_1 && _this.isMatchingTooltip(icon_1)) {
507
506
  _this.removeTooltip(icon_1);
508
507
  _this.destroy();
@@ -512,16 +511,10 @@ var TooltipDirective = /** @class */ (function () {
512
511
  };
513
512
  /**
514
513
  * Obtém o elemento do ícone associado ao label do input em focus.
515
- * @param focusedInput O input em focus.
516
- * @returns O ícone do input em focus ou null.
514
+ * @returns O ícone do input em focus.
517
515
  */
518
- TooltipDirective.prototype.getIconFromFocusedInput = function (focusedInput) {
519
- var label = document.querySelector("label[for='" + focusedInput.id + "']");
520
- if (label) {
521
- var icon = label.nextElementSibling;
522
- return (icon === null || icon === void 0 ? void 0 : icon.classList.contains('info-sign__icon')) ? icon : null;
523
- }
524
- return null;
516
+ TooltipDirective.prototype.getIconFromFocusedInput = function () {
517
+ return this.elementRef.nativeElement;
525
518
  };
526
519
  /**
527
520
  * Verifica se o ícone tem o tooltip correspondente ao atual.
@@ -14472,6 +14465,8 @@ var KanbanTemplateTypes;
14472
14465
  var KanbanComponent = /** @class */ (function () {
14473
14466
  function KanbanComponent(kanbanEventService) {
14474
14467
  this.kanbanEventService = kanbanEventService;
14468
+ this.showItemCheckboxes = true;
14469
+ this.showColumnCheckboxes = true;
14475
14470
  this.itemsMoved = new EventEmitter();
14476
14471
  this.dataUpdated = new EventEmitter();
14477
14472
  this.itemsSelected = new EventEmitter();
@@ -14531,6 +14526,8 @@ var KanbanComponent = /** @class */ (function () {
14531
14526
  this.selectedItems.clear();
14532
14527
  };
14533
14528
  KanbanComponent.prototype.selectItem = function (event, item, column) {
14529
+ if (item.disabled || item.frozen)
14530
+ return;
14534
14531
  if (event.ctrlKey) {
14535
14532
  if (this.selectedItems.delete(item)) {
14536
14533
  this.kanbanEventService.emitUnselectItemEvent(item);
@@ -14545,6 +14542,8 @@ var KanbanComponent = /** @class */ (function () {
14545
14542
  }
14546
14543
  }
14547
14544
  else {
14545
+ if (this.selectedItems.delete(item))
14546
+ return;
14548
14547
  this.selectedItems.clear();
14549
14548
  this.selectedItems.add(item);
14550
14549
  this.selectedColumn = column;
@@ -14561,9 +14560,7 @@ var KanbanComponent = /** @class */ (function () {
14561
14560
  this.draggingItems.clear();
14562
14561
  };
14563
14562
  KanbanComponent.prototype.getLinkedColumns = function (currentColumn) {
14564
- return this.data.columns
14565
- .filter(function (column) { return column != currentColumn; })
14566
- .map(function (column) { return column.id; });
14563
+ return this.data.columns.filter(function (column) { return column != currentColumn; }).map(function (column) { return column.id; });
14567
14564
  };
14568
14565
  KanbanComponent.prototype.getColumnHeaderTemplate = function () {
14569
14566
  return this._getCustomTemplate(KanbanTemplateTypes.ColumnHeader);
@@ -14590,7 +14587,7 @@ var KanbanComponent = /** @class */ (function () {
14590
14587
  .pipe(takeUntil(this._unsubscribe$))
14591
14588
  .subscribe(function (column) {
14592
14589
  column.items
14593
- .filter(function (item) { return !item.disabled; })
14590
+ .filter(function (item) { return !item.disabled && !item.frozen; })
14594
14591
  .forEach(function (item) {
14595
14592
  _this.selectedItems.add(item);
14596
14593
  });
@@ -14620,9 +14617,7 @@ var KanbanComponent = /** @class */ (function () {
14620
14617
  });
14621
14618
  });
14622
14619
  });
14623
- this.kanbanEventService.unselectItemEvent
14624
- .pipe(takeUntil(this._unsubscribe$))
14625
- .subscribe(function (item) {
14620
+ this.kanbanEventService.unselectItemEvent.pipe(takeUntil(this._unsubscribe$)).subscribe(function (item) {
14626
14621
  _this.selectedItems.delete(item);
14627
14622
  });
14628
14623
  };
@@ -14651,6 +14646,12 @@ var KanbanComponent = /** @class */ (function () {
14651
14646
  __decorate([
14652
14647
  Input()
14653
14648
  ], KanbanComponent.prototype, "data", void 0);
14649
+ __decorate([
14650
+ Input()
14651
+ ], KanbanComponent.prototype, "showItemCheckboxes", void 0);
14652
+ __decorate([
14653
+ Input()
14654
+ ], KanbanComponent.prototype, "showColumnCheckboxes", void 0);
14654
14655
  __decorate([
14655
14656
  Output()
14656
14657
  ], KanbanComponent.prototype, "itemsMoved", void 0);
@@ -14665,9 +14666,9 @@ var KanbanComponent = /** @class */ (function () {
14665
14666
  ], KanbanComponent.prototype, "templates", void 0);
14666
14667
  KanbanComponent = __decorate([
14667
14668
  Component({
14668
- selector: 's-kanban',
14669
- template: "<div class=\"kanban\">\n <s-kanban-column\n *ngFor=\"let column of data.columns\"\n [data]=\"column\"\n [headerTemplate]=\"columnHeaderTemplate\">\n <div\n [id]=\"column.id\"\n style=\"height: 100%; width: 100%;\"\n cdkDropList\n #dynamicList=\"cdkDropList\"\n [cdkDropListData]=\"column.items\"\n [cdkDropListConnectedTo]=\"getLinkedColumns(column)\"\n (cdkDropListDropped)=\"drop($event)\">\n\n <ng-container *ngIf=\"!columnEmptyMessageTemplate; then defaultEmptyMessageTemplate else customEmptyMessageTemplate\"></ng-container>\n\n <ng-template #defaultEmptyMessageTemplate>\n <div *ngIf=\"!column.items.length\" class=\"empty-message\">\n <p class=\"text\">\n <span class=\"fas fa-clock\"></span>&nbsp;\n <span>{{ \"platform.angular_components.count_items_in_target\" | translate:{ count: column.items.length, target: column.title } }}</span>\n </p>\n </div>\n </ng-template>\n\n <ng-template #customEmptyMessageTemplate>\n <ng-container *ngTemplateOutlet=\"columnEmptyMessageTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n\n <div\n *ngFor=\"let item of column.items\"\n cdkDrag\n [cdkDragData]=\"item\"\n [cdkDragDisabled]=\"item.disabled\"\n (cdkDragStarted)=\"dragStarted()\"\n (cdkDragReleased)=\"dragReleased()\"\n (click)=\"selectItem($event, item, column)\">\n \n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\n\n <ng-container *cdkDragPreview>\n <ng-container *ngIf=\"selectedItems.size > 1; then itemDraggingTemplate else itemTemplate\"></ng-container>\n </ng-container>\n\n <ng-template #itemTemplate>\n <s-kanban-item\n [item]=\"item\"\n [selected]=\"selectedItems.has(item)\"\n [headerTemplate]=\"itemHeaderTemplate\"\n [bodyTemplate]=\"itemBodyTemplate\"\n [footerTemplate]=\"itemFooterTemplate\">\n </s-kanban-item>\n </ng-template>\n\n <ng-template #itemDraggingTemplate>\n <s-kanban-item-dragging [quantityItems]=\"selectedItems.size\"></s-kanban-item-dragging>\n </ng-template>\n\n <div *cdkDragPlaceholder>\n <div class=\"placeholder\">\n <div class=\"placeholder-line\"></div>\n </div>\n </div>\n </div>\n </div>\n </s-kanban-column>\n</div>\n\n",
14670
- styles: [".kanban{display:-ms-flexbox;display:flex;gap:16px;width:100%}.kanban .empty-message{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;margin:16px}.kanban .empty-message .text{overflow:hidden;text-align:center;text-overflow:ellipsis;width:100%;white-space:nowrap}@media screen and (max-width:600px){.kanban{-ms-flex-direction:column;flex-direction:column}}s-kanban-column{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;min-width:292px}.placeholder{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.placeholder .placeholder-line{background-color:#a5a5b2;height:1px;margin:6px 0;width:50%}"]
14669
+ selector: "s-kanban",
14670
+ template: "<div class=\"kanban\">\n <s-kanban-column\n *ngFor=\"let column of data.columns\"\n [data]=\"column\"\n [showCheckbox]=\"showColumnCheckboxes\"\n [headerTemplate]=\"columnHeaderTemplate\">\n <div\n [id]=\"column.id\"\n style=\"height: 100%; width: 100%;\"\n cdkDropList\n #dynamicList=\"cdkDropList\"\n [cdkDropListData]=\"column.items\"\n [cdkDropListConnectedTo]=\"getLinkedColumns(column)\"\n (cdkDropListDropped)=\"drop($event)\">\n\n <ng-container *ngIf=\"!columnEmptyMessageTemplate; then defaultEmptyMessageTemplate else customEmptyMessageTemplate\"></ng-container>\n\n <ng-template #defaultEmptyMessageTemplate>\n <div *ngIf=\"!column.items.length\" class=\"empty-message\">\n <p class=\"text\">\n <span class=\"fas fa-clock\"></span>&nbsp;\n <span>{{ \"platform.angular_components.count_items_in_target\" | translate:{ count: column.items.length, target: column.title } }}</span>\n </p>\n </div>\n </ng-template>\n\n <ng-template #customEmptyMessageTemplate>\n <ng-container *ngTemplateOutlet=\"columnEmptyMessageTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n\n <div\n *ngFor=\"let item of column.items\"\n cdkDrag\n [cdkDragData]=\"item\"\n [cdkDragDisabled]=\"item.disabled || item.frozen\"\n (cdkDragStarted)=\"dragStarted()\"\n (cdkDragReleased)=\"dragReleased()\"\n (click)=\"selectItem($event, item, column)\">\n \n <ng-container *ngTemplateOutlet=\"itemTemplate\"></ng-container>\n\n <ng-container *cdkDragPreview>\n <ng-container *ngIf=\"selectedItems.size > 1; then itemDraggingTemplate else itemTemplate\"></ng-container>\n </ng-container>\n\n <ng-template #itemTemplate>\n <s-kanban-item\n [item]=\"item\"\n [selected]=\"selectedItems.has(item)\"\n [showCheckbox]=\"showItemCheckboxes\"\n [headerTemplate]=\"itemHeaderTemplate\"\n [bodyTemplate]=\"itemBodyTemplate\"\n [footerTemplate]=\"itemFooterTemplate\">\n </s-kanban-item>\n </ng-template>\n\n <ng-template #itemDraggingTemplate>\n <s-kanban-item-dragging [quantityItems]=\"selectedItems.size\"></s-kanban-item-dragging>\n </ng-template>\n\n <div *cdkDragPlaceholder>\n <div class=\"placeholder\">\n <div class=\"placeholder-line\"></div>\n </div>\n </div>\n </div>\n </div>\n </s-kanban-column>\n</div>\n\n",
14671
+ styles: [".kanban{display:-ms-flexbox;display:flex;gap:16px;overflow:auto;width:100%}.kanban .empty-message{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;margin:16px}.kanban .empty-message .text{overflow:hidden;text-align:center;text-overflow:ellipsis;width:100%;white-space:nowrap}@media screen and (max-width:600px){.kanban{-ms-flex-direction:column;flex-direction:column}}s-kanban-column{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;min-width:292px}.placeholder{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.placeholder .placeholder-line{background-color:#a5a5b2;height:1px;margin:6px 0;width:50%}"]
14671
14672
  })
14672
14673
  ], KanbanComponent);
14673
14674
  return KanbanComponent;
@@ -14676,17 +14677,27 @@ var KanbanComponent = /** @class */ (function () {
14676
14677
  var KanbanColumnComponent = /** @class */ (function () {
14677
14678
  function KanbanColumnComponent(kanbanEventService) {
14678
14679
  this.kanbanEventService = kanbanEventService;
14680
+ this.showCheckbox = true;
14679
14681
  this.selectionControl = new FormControl(false);
14680
14682
  this._unsubscribe$ = new Subject();
14681
14683
  }
14682
14684
  KanbanColumnComponent.prototype.ngOnInit = function () {
14683
14685
  this._validateInputs();
14684
14686
  this._subscriveEvents();
14687
+ this._createTieredOptions();
14685
14688
  };
14686
14689
  KanbanColumnComponent.prototype.ngOnDestroy = function () {
14687
14690
  this._unsubscribe$.next();
14688
14691
  this._unsubscribe$.complete();
14689
14692
  };
14693
+ KanbanColumnComponent.prototype._createTieredOptions = function () {
14694
+ var _this = this;
14695
+ var options = [];
14696
+ this.data.options.forEach(function (option) {
14697
+ options.push(__assign(__assign({}, option), { command: function () { option.command(_this.data); } }));
14698
+ });
14699
+ this.data.options = options;
14700
+ };
14690
14701
  KanbanColumnComponent.prototype._subscriveEvents = function () {
14691
14702
  var _this = this;
14692
14703
  this.selectionControl.valueChanges
@@ -14737,13 +14748,16 @@ var KanbanColumnComponent = /** @class */ (function () {
14737
14748
  __decorate([
14738
14749
  Input()
14739
14750
  ], KanbanColumnComponent.prototype, "data", void 0);
14751
+ __decorate([
14752
+ Input()
14753
+ ], KanbanColumnComponent.prototype, "showCheckbox", void 0);
14740
14754
  __decorate([
14741
14755
  Input()
14742
14756
  ], KanbanColumnComponent.prototype, "headerTemplate", void 0);
14743
14757
  KanbanColumnComponent = __decorate([
14744
14758
  Component({
14745
14759
  selector: "s-kanban-column",
14746
- template: "<div class=\"kanban-column\">\n <div class=\"kanban-column__header\">\n <div class=\"content\">\n <form>\n <input\n type=\"checkbox\"\n name=\"checkbox\"\n [formControl]=\"selectionControl\">\n </form>\n\n <ng-container *ngIf=\"!headerTemplate; then defaultHeaderTemplate else customHeaderTemplate\"></ng-container>\n \n <ng-template #defaultHeaderTemplate>\n <div class=\"header\">\n <span class=\"title\">{{ data.title }} ({{ data.items.length }})</span>\n </div>\n </ng-template>\n \n <ng-template #customHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: data }\"></ng-container>\n </ng-template>\n </div>\n <s-button\n *ngIf=\"data.options\"\n priority=\"default\"\n [disabled]=\"false\"\n [auxiliary]=\"true\"\n size=\"small\"\n [model]=\"data.options\">\n </s-button>\n </div>\n <div class=\"kanban-column__body\">\n <ng-content></ng-content>\n </div>\n</div>",
14760
+ template: "<div class=\"kanban-column\">\n <div class=\"kanban-column__header\">\n <div class=\"content\">\n <form>\n <input\n *ngIf=\"showCheckbox\"\n type=\"checkbox\"\n name=\"checkbox\"\n [formControl]=\"selectionControl\">\n </form>\n\n <ng-container *ngIf=\"!headerTemplate; then defaultHeaderTemplate else customHeaderTemplate\"></ng-container>\n \n <ng-template #defaultHeaderTemplate>\n <div class=\"header\">\n <span class=\"title\">{{ data.title }} ({{ data.items.length }})</span>\n </div>\n </ng-template>\n \n <ng-template #customHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: data }\"></ng-container>\n </ng-template>\n </div>\n <s-button\n *ngIf=\"data.options\"\n priority=\"default\"\n [disabled]=\"false\"\n [auxiliary]=\"true\"\n size=\"small\"\n [model]=\"data.options\">\n </s-button>\n </div>\n <div class=\"kanban-column__body\">\n <ng-content></ng-content>\n </div>\n</div>",
14747
14761
  styles: [".kanban-column{-ms-flex-align:center;align-items:center;background-color:#fbfafc;border:1px solid #dedce5;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100%;min-height:120px;-webkit-user-select:none;-ms-user-select:none;user-select:none;width:100%}.kanban-column .kanban-column__header{-ms-flex-align:center;align-items:center;border-bottom:1px solid #dedce5;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;padding:16px 16px 8px;width:100%}.kanban-column .kanban-column__header .content{display:-ms-flexbox;display:flex;gap:16px}.kanban-column .kanban-column__header .content .teste{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;font-family:\"Open Sans\" sans-serif}.kanban-column .kanban-column__header .content .teste .title{font-size:14px;font-weight:800}.kanban-column .kanban-column__header .content .teste .description{font-size:12px}.kanban-column .kanban-column__body{display:-ms-flexbox;display:flex;height:100%;-ms-flex-pack:center;justify-content:center;width:100%}"]
14748
14762
  })
14749
14763
  ], KanbanColumnComponent);
@@ -14771,7 +14785,11 @@ var KanbanItemComponent = /** @class */ (function () {
14771
14785
  function KanbanItemComponent(_kanbanEventService) {
14772
14786
  this._kanbanEventService = _kanbanEventService;
14773
14787
  this.selected = false;
14788
+ this.showCheckbox = true;
14774
14789
  }
14790
+ KanbanItemComponent.prototype.ngOnInit = function () {
14791
+ this._createTieredOptions();
14792
+ };
14775
14793
  KanbanItemComponent.prototype.onSelectedChange = function (value) {
14776
14794
  if (value) {
14777
14795
  this._kanbanEventService.emitSelectItemEvent(this.item);
@@ -14780,6 +14798,14 @@ var KanbanItemComponent = /** @class */ (function () {
14780
14798
  this._kanbanEventService.emitUnselectItemEvent(this.item);
14781
14799
  }
14782
14800
  };
14801
+ KanbanItemComponent.prototype._createTieredOptions = function () {
14802
+ var _this = this;
14803
+ var options = [];
14804
+ this.item.options.forEach(function (option) {
14805
+ options.push(__assign(__assign({}, option), { command: function () { option.command(_this.item); } }));
14806
+ });
14807
+ this.item.options = options;
14808
+ };
14783
14809
  KanbanItemComponent.ctorParameters = function () { return [
14784
14810
  { type: KanbanEventService }
14785
14811
  ]; };
@@ -14789,6 +14815,9 @@ var KanbanItemComponent = /** @class */ (function () {
14789
14815
  __decorate([
14790
14816
  Input()
14791
14817
  ], KanbanItemComponent.prototype, "selected", void 0);
14818
+ __decorate([
14819
+ Input()
14820
+ ], KanbanItemComponent.prototype, "showCheckbox", void 0);
14792
14821
  __decorate([
14793
14822
  Input()
14794
14823
  ], KanbanItemComponent.prototype, "headerTemplate", void 0);
@@ -14800,9 +14829,9 @@ var KanbanItemComponent = /** @class */ (function () {
14800
14829
  ], KanbanItemComponent.prototype, "footerTemplate", void 0);
14801
14830
  KanbanItemComponent = __decorate([
14802
14831
  Component({
14803
- selector: 's-kanban-item',
14804
- template: "<p-tieredMenu\n #optionsMenu\n [popup]=\"true\"\n appendTo=\"body\"\n [baseZIndex]=\"9999\"\n [model]=\"item.options\">\n</p-tieredMenu>\n\n<div\n class=\"kanban-item\"\n [ngClass]=\"{\n 'kanban-item--selected': selected && !item.disabled,\n 'kanban-item--disabled': item.disabled\n }\">\n <div class=\"kanban-item__header\">\n <div class=\"content\">\n <form>\n <input\n *ngIf=\"!item.disabled\"\n type=\"checkbox\"\n name=\"checkbox\"\n [(ngModel)]=\"selected\"\n (ngModelChange)=\"onSelectedChange($event)\"\n (click)=\"$event.stopPropagation()\">\n </form>\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: item }\"></ng-container>\n </div>\n <button\n *ngIf=\"item.options && !item.disabled\"\n class=\"options-button\"\n (click)=\"optionsMenu.toggle($event); $event.stopPropagation();\">\n <i class=\"fas fa-ellipsis-v\"></i>\n </button>\n </div>\n <div class=\"kanban-item__body\">\n <ng-container *ngTemplateOutlet=\"bodyTemplate; context: { $implicit: item }\"></ng-container>\n </div>\n <div *ngIf=\"footerTemplate\" class=\"kanban-item__footer\">\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: item }\"></ng-container> \n </div>\n</div>",
14805
- styles: [".kanban-item{background-color:#fff;border-radius:4px;box-shadow:0 1px 5px 0 rgba(0,0,0,.25);cursor:pointer;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin:16px;min-width:260px;padding:16px;-webkit-user-select:none;-ms-user-select:none;user-select:none}.kanban-item .kanban-item__header{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.kanban-item .kanban-item__header .content{display:-ms-flexbox;display:flex;gap:16px}.kanban-item .kanban-item__header .options-button{background-color:transparent;border:none;cursor:pointer;margin-right:-8px;padding:0 8px}.kanban-item .kanban-item__body{margin:16px 0}.kanban-item .kanban-item__footer{border-top:1px solid #dedce5;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.kanban-item .kanban-item__footer .date-info{-ms-flex-align:center;align-items:center;color:#6e7280;display:-ms-flexbox;display:flex;font-family:\"Open Sans\" sans-serif;font-size:12px;gap:4px;line-height:150%}.kanban-item--selected{border:1px solid #428bca}.kanban-item--disabled{opacity:50%}"]
14832
+ selector: "s-kanban-item",
14833
+ template: "<p-tieredMenu\n #optionsMenu\n [popup]=\"true\"\n appendTo=\"body\"\n [baseZIndex]=\"9999\"\n [model]=\"item.options\">\n</p-tieredMenu>\n\n<div\n class=\"kanban-item\"\n [ngClass]=\"{\n 'kanban-item--selected': selected && !item.disabled,\n 'kanban-item--disabled': item.disabled,\n 'kanban-item--frozen': !item.disabled && item.frozen\n }\">\n <div class=\"kanban-item__header\">\n <div class=\"content\">\n <form>\n <input\n *ngIf=\"showCheckbox && !item.disabled && !item.frozen\"\n type=\"checkbox\"\n name=\"checkbox\"\n [(ngModel)]=\"selected\"\n (ngModelChange)=\"onSelectedChange($event)\"\n (click)=\"$event.stopPropagation()\">\n </form>\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: item }\"></ng-container>\n </div>\n <button\n *ngIf=\"item.options && !item.disabled\"\n class=\"options-button\"\n (click)=\"optionsMenu.toggle($event); $event.stopPropagation();\">\n <i class=\"fas fa-ellipsis-v\"></i>\n </button>\n </div>\n <div class=\"kanban-item__body\">\n <ng-container *ngTemplateOutlet=\"bodyTemplate; context: { $implicit: item }\"></ng-container>\n </div>\n <div *ngIf=\"footerTemplate\" class=\"kanban-item__footer\">\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: item }\"></ng-container> \n </div>\n</div>",
14834
+ styles: [".kanban-item{background-color:#fff;border-radius:4px;box-shadow:0 1px 5px 0 rgba(0,0,0,.25);cursor:pointer;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin:16px;min-width:260px;padding:16px;-webkit-user-select:none;-ms-user-select:none;user-select:none}.kanban-item .kanban-item__header{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.kanban-item .kanban-item__header .content{display:-ms-flexbox;display:flex;gap:16px}.kanban-item .kanban-item__header .options-button{background-color:transparent;border:none;cursor:pointer;margin-right:-8px;padding:0 8px}.kanban-item .kanban-item__body{margin:16px 0}.kanban-item .kanban-item__footer{border-top:1px solid #dedce5;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.kanban-item .kanban-item__footer .date-info{-ms-flex-align:center;align-items:center;color:#6e7280;display:-ms-flexbox;display:flex;font-family:\"Open Sans\" sans-serif;font-size:12px;gap:4px;line-height:150%}.kanban-item--selected{border:1px solid #428bca}.kanban-item--disabled{opacity:50%}.kanban-item--frozen{box-shadow:none}"]
14806
14835
  })
14807
14836
  ], KanbanItemComponent);
14808
14837
  return KanbanItemComponent;
@@ -14868,6 +14897,10 @@ var NavigationButtonComponent = /** @class */ (function () {
14868
14897
  this._value = this.defaultValue;
14869
14898
  var index = this.steps.findIndex(function (step) { return step.value === _this._value; });
14870
14899
  this.currentIndex = index !== -1 ? index : 0;
14900
+ this.stepChanged.emit({
14901
+ previous: undefined,
14902
+ current: this.steps[this.currentIndex],
14903
+ });
14871
14904
  this.changeDetectorRef.detectChanges();
14872
14905
  }
14873
14906
  };