@seniorsistemas/angular-components 17.18.4 → 17.18.5

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.
@@ -8976,6 +8976,7 @@ let TableFrozenPositionDirective = class TableFrozenPositionDirective {
8976
8976
  console.warn("Unable to find frozen element from table. Is the table configured with frozen template?");
8977
8977
  return;
8978
8978
  }
8979
+ frozenTable.style.width = 'min-content';
8979
8980
  frozenTable.style.order = "1";
8980
8981
  frozenTable.style.borderRight = "none";
8981
8982
  frozenTable.style.borderLeft = "1px solid #dddddd";
@@ -8986,6 +8987,7 @@ let TableFrozenPositionDirective = class TableFrozenPositionDirective {
8986
8987
  return;
8987
8988
  }
8988
8989
  unfrozenTable.style.position = "unset";
8990
+ unfrozenTable.style.overflow = 'auto';
8989
8991
  }
8990
8992
  handleWindowResize() {
8991
8993
  this.synchronizeRowHeight();
@@ -18333,6 +18335,7 @@ StepsModule = __decorate([
18333
18335
  let ThumbnailsComponent = class ThumbnailsComponent {
18334
18336
  constructor() {
18335
18337
  this.selectable = true;
18338
+ this.combineCheckboxEvent = true;
18336
18339
  this.selectionChange = new EventEmitter();
18337
18340
  this.itemOpened = new EventEmitter();
18338
18341
  this._selection = [];
@@ -18343,12 +18346,12 @@ let ThumbnailsComponent = class ThumbnailsComponent {
18343
18346
  onItemOpened(item) {
18344
18347
  this.itemOpened.emit(item);
18345
18348
  }
18346
- onItemSelected(items) {
18347
- if (items.selected) {
18348
- this._selection.push(items.item);
18349
+ onItemSelected(item) {
18350
+ if (item.selected) {
18351
+ this._selection.push(item.item);
18349
18352
  }
18350
18353
  else {
18351
- this._selection.splice(this._selection.findIndex((item) => item === items.item), 1);
18354
+ this._selection.splice(this._selection.findIndex((_item) => _item === item.item), 1);
18352
18355
  }
18353
18356
  this.selectionChange.emit(this._selection);
18354
18357
  }
@@ -18362,6 +18365,9 @@ __decorate([
18362
18365
  __decorate([
18363
18366
  Input()
18364
18367
  ], ThumbnailsComponent.prototype, "selectable", void 0);
18368
+ __decorate([
18369
+ Input()
18370
+ ], ThumbnailsComponent.prototype, "combineCheckboxEvent", void 0);
18365
18371
  __decorate([
18366
18372
  Input()
18367
18373
  ], ThumbnailsComponent.prototype, "selection", null);
@@ -18374,7 +18380,7 @@ __decorate([
18374
18380
  ThumbnailsComponent = __decorate([
18375
18381
  Component({
18376
18382
  selector: "s-thumbnails",
18377
- template: "<div class=\"thumbnails\">\n <s-thumbnail-item\n *ngFor=\"let item of items\"\n [itemData]=\"item\"\n [isCheckable]=\"selectable\"\n [isChecked]=\"isSelected(item)\"\n (checked)=\"onItemSelected($event)\"\n (opened)=\"onItemOpened($event)\">\n </s-thumbnail-item>\n</div>\n",
18383
+ template: "<div class=\"thumbnails\">\n <s-thumbnail-item\n *ngFor=\"let item of items\"\n [combineCheckboxEvent]=\"combineCheckboxEvent\"\n [itemData]=\"item\"\n [isCheckable]=\"selectable\"\n [isChecked]=\"isSelected(item)\"\n (checked)=\"onItemSelected($event)\"\n (opened)=\"onItemOpened($event)\">\n </s-thumbnail-item>\n</div>\n",
18378
18384
  styles: [".thumbnails{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:12px}"]
18379
18385
  })
18380
18386
  ], ThumbnailsComponent);
@@ -18383,6 +18389,7 @@ let ThumbnailItemComponent = class ThumbnailItemComponent {
18383
18389
  constructor() {
18384
18390
  this.isCheckable = true;
18385
18391
  this.isChecked = false;
18392
+ this.combineCheckboxEvent = true;
18386
18393
  this.checked = new EventEmitter();
18387
18394
  this.opened = new EventEmitter();
18388
18395
  }
@@ -18393,12 +18400,18 @@ let ThumbnailItemComponent = class ThumbnailItemComponent {
18393
18400
  onClick() {
18394
18401
  this.opened.emit(this.itemData);
18395
18402
  }
18403
+ checkboxClick(event) {
18404
+ if (this.combineCheckboxEvent) {
18405
+ return;
18406
+ }
18407
+ event.stopPropagation();
18408
+ }
18396
18409
  _createFormGroup() {
18397
18410
  this.checkboxFormGroup = new FormGroup({
18398
18411
  checkbox: new FormControl({ checked: this.isChecked }),
18399
18412
  });
18400
18413
  this.checkboxFormGroup.get("checkbox").valueChanges.subscribe((value) => {
18401
- this.checked.emit({ item: this.itemData, checked: value.checked });
18414
+ this.checked.emit({ item: this.itemData, selected: value.checked });
18402
18415
  });
18403
18416
  }
18404
18417
  _validateItemData() {
@@ -18416,6 +18429,9 @@ __decorate([
18416
18429
  __decorate([
18417
18430
  Input()
18418
18431
  ], ThumbnailItemComponent.prototype, "isChecked", void 0);
18432
+ __decorate([
18433
+ Input()
18434
+ ], ThumbnailItemComponent.prototype, "combineCheckboxEvent", void 0);
18419
18435
  __decorate([
18420
18436
  Output()
18421
18437
  ], ThumbnailItemComponent.prototype, "checked", void 0);
@@ -18425,7 +18441,7 @@ __decorate([
18425
18441
  ThumbnailItemComponent = __decorate([
18426
18442
  Component({
18427
18443
  selector: "s-thumbnail-item",
18428
- template: "<button *ngIf=\"itemData\" class=\"thumbnail-item\" (click)=\"onClick()\">\n <div class=\"thumbnail-item-content\">\n <div class=\"content\">\n <ng-container *ngIf=\"itemData.type === 'video'\">\n <s-thumbnail-item-video\n [imageUrl]=\"itemData.imageUrl\"\n [videoUrl]=\"itemData.videoUrl\">\n </s-thumbnail-item-video>\n </ng-container>\n <ng-container *ngIf=\"itemData.type === 'image'\">\n <s-thumbnail-item-image [imageUrl]=\"itemData.imageUrl\"></s-thumbnail-item-image>\n </ng-container>\n <ng-container *ngIf=\"itemData.type === 'audio'\">\n <i class=\"icon fas fa-volume-down\"></i>\n <span class=\"label\">{{ \"platform.angular_components.listen\" | translate }}</span>\n </ng-container>\n <ng-container *ngIf=\"itemData.type === 'file'\">\n <i class=\"icon fas fa-file-alt\"></i>\n <span class=\"label\">{{ \"platform.angular_components.view\" | translate }}</span>\n </ng-container>\n </div>\n <form *ngIf=\"isCheckable\" [formGroup]=\"checkboxFormGroup\" class=\"checkbox\">\n <s-checkbox [data]=\"{ label: '' }\" formControlName=\"checkbox\"> </s-checkbox>\n </form>\n </div>\n <span class=\"file-name-label\">{{ itemData.fileName }}</span>\n</button>\n",
18444
+ template: "<button *ngIf=\"itemData\" class=\"thumbnail-item\" (click)=\"onClick()\">\n <div class=\"thumbnail-item-content\">\n <div class=\"content\">\n <ng-container *ngIf=\"itemData.type === 'video'\">\n <s-thumbnail-item-video\n [imageUrl]=\"itemData.imageUrl\"\n [videoUrl]=\"itemData.videoUrl\">\n </s-thumbnail-item-video>\n </ng-container>\n <ng-container *ngIf=\"itemData.type === 'image'\">\n <s-thumbnail-item-image [imageUrl]=\"itemData.imageUrl\"></s-thumbnail-item-image>\n </ng-container>\n <ng-container *ngIf=\"itemData.type === 'audio'\">\n <i class=\"icon fas fa-volume-down\"></i>\n <span class=\"label\">{{ \"platform.angular_components.listen\" | translate }}</span>\n </ng-container>\n <ng-container *ngIf=\"itemData.type === 'file'\">\n <i class=\"icon fas fa-file-alt\"></i>\n <span class=\"label\">{{ \"platform.angular_components.view\" | translate }}</span>\n </ng-container>\n </div>\n <form *ngIf=\"isCheckable\" [formGroup]=\"checkboxFormGroup\" class=\"checkbox\">\n <s-checkbox [data]=\"{ label: '' }\" formControlName=\"checkbox\" (click)=\"checkboxClick($event)\"></s-checkbox>\n </form>\n </div>\n <span class=\"file-name-label\">{{ itemData.fileName }}</span>\n</button>\n",
18429
18445
  styles: [".thumbnail-item{-ms-flex-align:center;align-items:center;background:0 0;border:none;cursor:pointer;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;overflow:hidden;width:100px}.thumbnail-item-content{-ms-flex-align:center;align-items:center;background-image:linear-gradient(to top right,#5288b6,#00c89a);border-radius:8px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100px;-ms-flex-pack:center;justify-content:center;position:relative;-webkit-user-select:none;-ms-user-select:none;user-select:none;width:100%;overflow:hidden}.thumbnail-item-content .checkbox{position:absolute;right:8px;top:8px}.thumbnail-item-content .content{-ms-flex-align:center;align-items:center;color:#fff;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:4px;overflow:hidden;width:100%}.thumbnail-item-content .content .icon{font-size:24px}.thumbnail-item-content .content .label{font-size:12px;width:100%;padding:0 8px;overflow:hidden;text-overflow:ellipsis}.thumbnail-item:hover{transform:scale(1.05);transition:.2s ease-in-out}.thumbnail-item .file-name-label{color:#525966;font-family:\"Open Sans\",sans-serif;font-size:12px;overflow:hidden;text-align:center;text-overflow:ellipsis;text-wrap:nowrap;-webkit-user-select:none;-ms-user-select:none;user-select:none;width:100%}"]
18430
18446
  })
18431
18447
  ], ThumbnailItemComponent);