@tsi-developpement/tsi-shared-ui 1.8.21 → 1.8.22

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.
@@ -1366,6 +1366,12 @@ var MFAEnum;
1366
1366
  MFAEnum[MFAEnum["SMSEtEmail"] = 4] = "SMSEtEmail";
1367
1367
  })(MFAEnum || (MFAEnum = {}));
1368
1368
 
1369
+ var ActionPlacement;
1370
+ (function (ActionPlacement) {
1371
+ ActionPlacement["Overflow"] = "overflow";
1372
+ ActionPlacement["Inline"] = "inline";
1373
+ })(ActionPlacement || (ActionPlacement = {}));
1374
+
1369
1375
  class EntityValidationsService {
1370
1376
  constructor(_httpClient) {
1371
1377
  this._httpClient = _httpClient;
@@ -7812,12 +7818,6 @@ class ExportExcelHelper {
7812
7818
  }
7813
7819
  }
7814
7820
 
7815
- var ActionPlacement;
7816
- (function (ActionPlacement) {
7817
- ActionPlacement["Overflow"] = "overflow";
7818
- ActionPlacement["Inline"] = "inline";
7819
- })(ActionPlacement || (ActionPlacement = {}));
7820
-
7821
7821
  class StatusColorService extends CrudBaseService {
7822
7822
  constructor(httpClient) {
7823
7823
  super(httpClient, AdministrationSegments.statusColor);
@@ -8368,11 +8368,11 @@ class TsiCardComponent {
8368
8368
  this.buttonClicked.emit({ field: mode, key: uid, selectKeyOnly: true });
8369
8369
  }
8370
8370
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8371
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiCardComponent, selector: "Tsi-card", inputs: { id: "id", headerTitle: "headerTitle", subHeaderTitle: "subHeaderTitle", description: "description", imgUrl: "imgUrl", uid: "uid", formName: "formName" }, outputs: { buttonClicked: "buttonClicked" }, ngImport: i0, template: "<div class=\"card-container\">\r\n <p-card>\r\n <ng-template pTemplate=\"header\" >\r\n <div class=\"fixed-card-header\">\r\n <img *ngIf=\"imgUrl\" [src]=\"imgUrl.startsWith('./assets') ? imgUrl : 'data:image/png;base64,' + imgUrl\" />\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"title\">\r\n <span *ngIf=\"headerTitle\">\r\n {{ headerTitle }}\r\n </span>\r\n </ng-template>\r\n \r\n <ng-template pTemplate=\"subtitle\">\r\n <span *ngIf=\"subHeaderTitle\">\r\n {{ subHeaderTitle }}\r\n </span>\r\n </ng-template>\r\n \r\n <ng-template pTemplate=\"body\">\r\n <p class=\"clamp-text\" *ngIf=\"description\">\r\n {{ description }}\r\n </p>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"footer\">\r\n <div class=\"flex justify-content-center align-items-center mt-1 gap-4\">\r\n <div class=\"flex\">\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi pi-eye\"\r\n (click)=\"consult(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-pencil\"\r\n (click)=\"edit(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-button-danger p-0-5'\"\r\n type=\"button\" icon=\"pi pi-trash\"\r\n (click)=\"delete(uid)\">\r\n </Tsi-Button>\r\n </div>\r\n <div class=\"flex\">\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-paperclip\"\r\n (click)=\"upload(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-info\"\r\n (click)=\"info(uid)\">\r\n </Tsi-Button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </p-card>\r\n</div>", styles: [".clamp-text{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.fixed-card-header{height:100px;display:flex;align-items:center;justify-content:center;background-color:#f0f0f0}.fixed-card-header img{max-height:100%;max-width:100%;object-fit:contain}.card-container{height:100%}::ng-deep .card-container .p-card{display:flex!important;flex-direction:column!important;height:100%!important}::ng-deep .p-card-body{flex-grow:1!important;display:flex!important;flex-direction:column!important}::ng-deep .p-card-content{flex-grow:1!important}::ng-deep .p-card-footer{margin:auto!important}::ng-deep .p-0-5{padding:.5rem!important}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i6$1.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "component", type: TsiButtonComponent, selector: "Tsi-Button", inputs: ["disabled", "text", "style", "tooltipText", "tooltipPosition", "buttonType", "icon", "styleClass", "iconSrc", "id", "iconWidth", "iconClass"], outputs: ["onClick", "rightClick"] }] }); }
8371
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiCardComponent, selector: "Tsi-card", inputs: { id: "id", headerTitle: "headerTitle", subHeaderTitle: "subHeaderTitle", description: "description", imgUrl: "imgUrl", uid: "uid", formName: "formName", statut: "statut" }, outputs: { buttonClicked: "buttonClicked" }, ngImport: i0, template: "<div class=\"card-container\">\r\n <p-card>\r\n <ng-template pTemplate=\"header\" >\r\n <div class=\"fixed-card-header\">\r\n <img *ngIf=\"imgUrl\" [src]=\"imgUrl.startsWith('./assets') ? imgUrl : 'data:image/png;base64,' + imgUrl\" />\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"title\">\r\n <span *ngIf=\"headerTitle\">\r\n {{ headerTitle }}\r\n </span>\r\n </ng-template>\r\n \r\n <ng-template pTemplate=\"subtitle\">\r\n <span *ngIf=\"subHeaderTitle\">\r\n {{ subHeaderTitle }}\r\n </span>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\">\r\n <span *ngIf=\"statut\">\r\n {{ statut }}\r\n </span>\r\n <p class=\"clamp-text\" *ngIf=\"description\">\r\n {{ description }}\r\n </p>\r\n </ng-template> \r\n\r\n <ng-template pTemplate=\"footer\">\r\n <div class=\"flex justify-content-center align-items-center mt-1 gap-4\">\r\n <div class=\"flex\">\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi pi-eye\"\r\n (click)=\"consult(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-pencil\"\r\n (click)=\"edit(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-button-danger p-0-5'\"\r\n type=\"button\" icon=\"pi pi-trash\"\r\n (click)=\"delete(uid)\">\r\n </Tsi-Button>\r\n </div>\r\n <div class=\"flex\">\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-paperclip\"\r\n (click)=\"upload(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-info\"\r\n (click)=\"info(uid)\">\r\n </Tsi-Button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </p-card>\r\n</div>", styles: [".clamp-text{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.fixed-card-header{height:100px;display:flex;align-items:center;justify-content:center;background-color:#f0f0f0}.fixed-card-header img{max-height:100%;max-width:100%;object-fit:contain}.card-container{height:100%}::ng-deep .card-container .p-card{display:flex!important;flex-direction:column!important;height:100%!important}::ng-deep .p-card-body{flex-grow:1!important;display:flex!important;flex-direction:column!important}::ng-deep .p-card-content{flex-grow:1!important}::ng-deep .p-card-footer{margin:auto!important}::ng-deep .p-0-5{padding:.5rem!important}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i6$1.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "component", type: TsiButtonComponent, selector: "Tsi-Button", inputs: ["disabled", "text", "style", "tooltipText", "tooltipPosition", "buttonType", "icon", "styleClass", "iconSrc", "id", "iconWidth", "iconClass"], outputs: ["onClick", "rightClick"] }] }); }
8372
8372
  }
8373
8373
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiCardComponent, decorators: [{
8374
8374
  type: Component,
8375
- args: [{ selector: 'Tsi-card', template: "<div class=\"card-container\">\r\n <p-card>\r\n <ng-template pTemplate=\"header\" >\r\n <div class=\"fixed-card-header\">\r\n <img *ngIf=\"imgUrl\" [src]=\"imgUrl.startsWith('./assets') ? imgUrl : 'data:image/png;base64,' + imgUrl\" />\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"title\">\r\n <span *ngIf=\"headerTitle\">\r\n {{ headerTitle }}\r\n </span>\r\n </ng-template>\r\n \r\n <ng-template pTemplate=\"subtitle\">\r\n <span *ngIf=\"subHeaderTitle\">\r\n {{ subHeaderTitle }}\r\n </span>\r\n </ng-template>\r\n \r\n <ng-template pTemplate=\"body\">\r\n <p class=\"clamp-text\" *ngIf=\"description\">\r\n {{ description }}\r\n </p>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"footer\">\r\n <div class=\"flex justify-content-center align-items-center mt-1 gap-4\">\r\n <div class=\"flex\">\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi pi-eye\"\r\n (click)=\"consult(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-pencil\"\r\n (click)=\"edit(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-button-danger p-0-5'\"\r\n type=\"button\" icon=\"pi pi-trash\"\r\n (click)=\"delete(uid)\">\r\n </Tsi-Button>\r\n </div>\r\n <div class=\"flex\">\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-paperclip\"\r\n (click)=\"upload(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-info\"\r\n (click)=\"info(uid)\">\r\n </Tsi-Button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </p-card>\r\n</div>", styles: [".clamp-text{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.fixed-card-header{height:100px;display:flex;align-items:center;justify-content:center;background-color:#f0f0f0}.fixed-card-header img{max-height:100%;max-width:100%;object-fit:contain}.card-container{height:100%}::ng-deep .card-container .p-card{display:flex!important;flex-direction:column!important;height:100%!important}::ng-deep .p-card-body{flex-grow:1!important;display:flex!important;flex-direction:column!important}::ng-deep .p-card-content{flex-grow:1!important}::ng-deep .p-card-footer{margin:auto!important}::ng-deep .p-0-5{padding:.5rem!important}\n"] }]
8375
+ args: [{ selector: 'Tsi-card', template: "<div class=\"card-container\">\r\n <p-card>\r\n <ng-template pTemplate=\"header\" >\r\n <div class=\"fixed-card-header\">\r\n <img *ngIf=\"imgUrl\" [src]=\"imgUrl.startsWith('./assets') ? imgUrl : 'data:image/png;base64,' + imgUrl\" />\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"title\">\r\n <span *ngIf=\"headerTitle\">\r\n {{ headerTitle }}\r\n </span>\r\n </ng-template>\r\n \r\n <ng-template pTemplate=\"subtitle\">\r\n <span *ngIf=\"subHeaderTitle\">\r\n {{ subHeaderTitle }}\r\n </span>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\">\r\n <span *ngIf=\"statut\">\r\n {{ statut }}\r\n </span>\r\n <p class=\"clamp-text\" *ngIf=\"description\">\r\n {{ description }}\r\n </p>\r\n </ng-template> \r\n\r\n <ng-template pTemplate=\"footer\">\r\n <div class=\"flex justify-content-center align-items-center mt-1 gap-4\">\r\n <div class=\"flex\">\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi pi-eye\"\r\n (click)=\"consult(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-pencil\"\r\n (click)=\"edit(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-button-danger p-0-5'\"\r\n type=\"button\" icon=\"pi pi-trash\"\r\n (click)=\"delete(uid)\">\r\n </Tsi-Button>\r\n </div>\r\n <div class=\"flex\">\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-paperclip\"\r\n (click)=\"upload(uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-info\"\r\n (click)=\"info(uid)\">\r\n </Tsi-Button>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </p-card>\r\n</div>", styles: [".clamp-text{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.fixed-card-header{height:100px;display:flex;align-items:center;justify-content:center;background-color:#f0f0f0}.fixed-card-header img{max-height:100%;max-width:100%;object-fit:contain}.card-container{height:100%}::ng-deep .card-container .p-card{display:flex!important;flex-direction:column!important;height:100%!important}::ng-deep .p-card-body{flex-grow:1!important;display:flex!important;flex-direction:column!important}::ng-deep .p-card-content{flex-grow:1!important}::ng-deep .p-card-footer{margin:auto!important}::ng-deep .p-0-5{padding:.5rem!important}\n"] }]
8376
8376
  }], ctorParameters: () => [], propDecorators: { id: [{
8377
8377
  type: Input
8378
8378
  }], headerTitle: [{
@@ -8387,6 +8387,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
8387
8387
  type: Input
8388
8388
  }], formName: [{
8389
8389
  type: Input
8390
+ }], statut: [{
8391
+ type: Input
8390
8392
  }], buttonClicked: [{
8391
8393
  type: Output
8392
8394
  }] } });
@@ -8438,7 +8440,7 @@ class TsiCardListComponent extends AppBaseComponent {
8438
8440
  this.cdr.detectChanges();
8439
8441
  }
8440
8442
  async mapItemsToCards(items) {
8441
- const { col1, col2, col3, photo } = this.getColKeys();
8443
+ const { col1, col2, col3, col4, photo } = this.getColKeys();
8442
8444
  return items.map((item, index) => {
8443
8445
  const keys = Object.keys(item).reduce((acc, key) => {
8444
8446
  acc[key.toLowerCase()] = key;
@@ -8450,6 +8452,7 @@ class TsiCardListComponent extends AppBaseComponent {
8450
8452
  headerTitle: `${item[keys[col1]] ?? ''}`,
8451
8453
  subHeaderTitle: `${item[keys[col2]] ?? ''}`,
8452
8454
  description: `${item[keys[col3]] ?? ''}`,
8455
+ status: `${item[keys[col4]] ?? ''}`,
8453
8456
  photo: item[keys[photo]] != '' && item[keys[photo]] != null
8454
8457
  ? item[keys[photo]]
8455
8458
  : defaultCardHeader.image
@@ -8462,6 +8465,7 @@ class TsiCardListComponent extends AppBaseComponent {
8462
8465
  col1: this.entityInfo?.cardTitleColumn?.toLowerCase() ?? '',
8463
8466
  col2: this.entityInfo?.cardSubHeaderColumn?.toLowerCase() ?? '',
8464
8467
  col3: this.entityInfo?.cardDescriptionColumn?.toLowerCase() ?? '',
8468
+ col4: this.entityInfo?.statusColumnName?.toLowerCase() ?? '',
8465
8469
  };
8466
8470
  }
8467
8471
  async handlePageChange(page) {
@@ -8473,11 +8477,11 @@ class TsiCardListComponent extends AppBaseComponent {
8473
8477
  this.cdr.markForCheck();
8474
8478
  }
8475
8479
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiCardListComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
8476
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiCardListComponent, selector: "Tsi-card-list", inputs: { cardBusinessClass: "cardBusinessClass", header: "header", id: "id", page: "page", page$: "page$" }, outputs: { buttonClicked: "buttonClicked", callSearch: "callSearch" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"flex flex-wrap gap-2\">\r\n <Tsi-card *ngFor=\"let card of displayedCards\"\r\n class=\"tsi-card\"\r\n [uid]=\"card.uid\"\r\n [headerTitle]=\"card.headerTitle\"\r\n [subHeaderTitle]=\"card.subHeaderTitle\"\r\n [description]=\"card.description\"\r\n [imgUrl]=\"card.photo\"\r\n [formName]=\"formName\"\r\n (buttonClicked)=\"buttonClicked.emit($event)\">\r\n </Tsi-card>\r\n</div>\r\n<div class=\"card flex justify-content-center mt-4\">\r\n <p-paginator\r\n [first]=\"first\"\r\n [rows]=\"rows\"\r\n [totalRecords]=\"totalCount\"\r\n [rowsPerPageOptions]=\"[1, 10, 25, 50]\"\r\n (onPageChange)=\"onPageChange($event)\"\r\n [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{{ 'Showing' | localize }} {first} {{'to' | localize}} {last} {{ 'of' | localize }} {totalRecords}\">\r\n </p-paginator>\r\n</div> \r\n\r\n<div class=\"overlay\" *ngIf=\"isLoading\">\r\n <div class=\"spinner-wrapper\">\r\n <app-spinner></app-spinner>\r\n </div>\r\n</div>", styles: ["::ng-deep .tsi-card{overflow:hidden!important;box-shadow:#63636333 0 2px 8px!important;border-radius:1rem;min-width:15rem!important;width:min-content!important}@media (max-width: 768px){.tsi-card{min-width:12rem!important}}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6$3.Paginator, selector: "p-paginator", inputs: ["pageLinkSize", "style", "styleClass", "alwaysShow", "dropdownAppendTo", "templateLeft", "templateRight", "appendTo", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "jumpToPageItemTemplate", "showPageLinks", "locale", "dropdownItemTemplate", "first"], outputs: ["onPageChange"] }, { kind: "component", type: TsiCardComponent, selector: "Tsi-card", inputs: ["id", "headerTitle", "subHeaderTitle", "description", "imgUrl", "uid", "formName"], outputs: ["buttonClicked"] }, { kind: "component", type: SpinnerComponent, selector: "app-spinner" }, { kind: "pipe", type: LocalizePipe, name: "localize" }] }); }
8480
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiCardListComponent, selector: "Tsi-card-list", inputs: { cardBusinessClass: "cardBusinessClass", header: "header", id: "id", page: "page", page$: "page$" }, outputs: { buttonClicked: "buttonClicked", callSearch: "callSearch" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"flex flex-wrap gap-2\">\r\n <Tsi-card *ngFor=\"let card of displayedCards\"\r\n class=\"tsi-card\"\r\n [uid]=\"card.uid\"\r\n [headerTitle]=\"card.headerTitle\"\r\n [subHeaderTitle]=\"card.subHeaderTitle\"\r\n [description]=\"card.description\"\r\n [statut]=\"card.status\"\r\n [imgUrl]=\"card.photo\"\r\n [formName]=\"formName\"\r\n (buttonClicked)=\"buttonClicked.emit($event)\">\r\n </Tsi-card>\r\n</div>\r\n<div class=\"card flex justify-content-center mt-4\">\r\n <p-paginator\r\n [first]=\"first\"\r\n [rows]=\"rows\"\r\n [totalRecords]=\"totalCount\"\r\n [rowsPerPageOptions]=\"[1, 10, 25, 50]\"\r\n (onPageChange)=\"onPageChange($event)\"\r\n [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{{ 'Showing' | localize }} {first} {{'to' | localize}} {last} {{ 'of' | localize }} {totalRecords}\">\r\n </p-paginator>\r\n</div> \r\n\r\n<div class=\"overlay\" *ngIf=\"isLoading\">\r\n <div class=\"spinner-wrapper\">\r\n <app-spinner></app-spinner>\r\n </div>\r\n</div>", styles: ["::ng-deep .tsi-card{overflow:hidden!important;box-shadow:#63636333 0 2px 8px!important;border-radius:1rem;min-width:15rem!important;width:min-content!important}@media (max-width: 768px){.tsi-card{min-width:12rem!important}}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6$3.Paginator, selector: "p-paginator", inputs: ["pageLinkSize", "style", "styleClass", "alwaysShow", "dropdownAppendTo", "templateLeft", "templateRight", "appendTo", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "jumpToPageItemTemplate", "showPageLinks", "locale", "dropdownItemTemplate", "first"], outputs: ["onPageChange"] }, { kind: "component", type: TsiCardComponent, selector: "Tsi-card", inputs: ["id", "headerTitle", "subHeaderTitle", "description", "imgUrl", "uid", "formName", "statut"], outputs: ["buttonClicked"] }, { kind: "component", type: SpinnerComponent, selector: "app-spinner" }, { kind: "pipe", type: LocalizePipe, name: "localize" }] }); }
8477
8481
  }
8478
8482
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiCardListComponent, decorators: [{
8479
8483
  type: Component,
8480
- args: [{ selector: 'Tsi-card-list', template: "<div class=\"flex flex-wrap gap-2\">\r\n <Tsi-card *ngFor=\"let card of displayedCards\"\r\n class=\"tsi-card\"\r\n [uid]=\"card.uid\"\r\n [headerTitle]=\"card.headerTitle\"\r\n [subHeaderTitle]=\"card.subHeaderTitle\"\r\n [description]=\"card.description\"\r\n [imgUrl]=\"card.photo\"\r\n [formName]=\"formName\"\r\n (buttonClicked)=\"buttonClicked.emit($event)\">\r\n </Tsi-card>\r\n</div>\r\n<div class=\"card flex justify-content-center mt-4\">\r\n <p-paginator\r\n [first]=\"first\"\r\n [rows]=\"rows\"\r\n [totalRecords]=\"totalCount\"\r\n [rowsPerPageOptions]=\"[1, 10, 25, 50]\"\r\n (onPageChange)=\"onPageChange($event)\"\r\n [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{{ 'Showing' | localize }} {first} {{'to' | localize}} {last} {{ 'of' | localize }} {totalRecords}\">\r\n </p-paginator>\r\n</div> \r\n\r\n<div class=\"overlay\" *ngIf=\"isLoading\">\r\n <div class=\"spinner-wrapper\">\r\n <app-spinner></app-spinner>\r\n </div>\r\n</div>", styles: ["::ng-deep .tsi-card{overflow:hidden!important;box-shadow:#63636333 0 2px 8px!important;border-radius:1rem;min-width:15rem!important;width:min-content!important}@media (max-width: 768px){.tsi-card{min-width:12rem!important}}\n"] }]
8484
+ args: [{ selector: 'Tsi-card-list', template: "<div class=\"flex flex-wrap gap-2\">\r\n <Tsi-card *ngFor=\"let card of displayedCards\"\r\n class=\"tsi-card\"\r\n [uid]=\"card.uid\"\r\n [headerTitle]=\"card.headerTitle\"\r\n [subHeaderTitle]=\"card.subHeaderTitle\"\r\n [description]=\"card.description\"\r\n [statut]=\"card.status\"\r\n [imgUrl]=\"card.photo\"\r\n [formName]=\"formName\"\r\n (buttonClicked)=\"buttonClicked.emit($event)\">\r\n </Tsi-card>\r\n</div>\r\n<div class=\"card flex justify-content-center mt-4\">\r\n <p-paginator\r\n [first]=\"first\"\r\n [rows]=\"rows\"\r\n [totalRecords]=\"totalCount\"\r\n [rowsPerPageOptions]=\"[1, 10, 25, 50]\"\r\n (onPageChange)=\"onPageChange($event)\"\r\n [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{{ 'Showing' | localize }} {first} {{'to' | localize}} {last} {{ 'of' | localize }} {totalRecords}\">\r\n </p-paginator>\r\n</div> \r\n\r\n<div class=\"overlay\" *ngIf=\"isLoading\">\r\n <div class=\"spinner-wrapper\">\r\n <app-spinner></app-spinner>\r\n </div>\r\n</div>", styles: ["::ng-deep .tsi-card{overflow:hidden!important;box-shadow:#63636333 0 2px 8px!important;border-radius:1rem;min-width:15rem!important;width:min-content!important}@media (max-width: 768px){.tsi-card{min-width:12rem!important}}\n"] }]
8481
8485
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { cardBusinessClass: [{
8482
8486
  type: Input
8483
8487
  }], header: [{
@@ -8838,12 +8842,40 @@ class TsiKanbanComponent extends AppBaseComponent {
8838
8842
  }))
8839
8843
  ];
8840
8844
  }
8845
+ edit(uid) {
8846
+ if (uid) {
8847
+ this.openModalComponent(uid, 'edit');
8848
+ }
8849
+ }
8850
+ consult(uid) {
8851
+ if (uid) {
8852
+ this.openModalComponent(uid, 'consult');
8853
+ }
8854
+ }
8855
+ upload(uid) {
8856
+ if (uid) {
8857
+ this.openModalComponent(uid, 'upload');
8858
+ }
8859
+ }
8860
+ info(uid) {
8861
+ if (uid) {
8862
+ this.openModalComponent(uid, 'info');
8863
+ }
8864
+ }
8865
+ delete(uid) {
8866
+ if (uid) {
8867
+ this.openModalComponent(uid, 'delete');
8868
+ }
8869
+ }
8870
+ openModalComponent(uid, mode) {
8871
+ this.buttonClicked.emit({ field: mode, key: uid, selectKeyOnly: true });
8872
+ }
8841
8873
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiKanbanComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: EntityConfigurationService }, { token: LocalizePipe }, { token: EntityStatusService }, { token: TsiNotificationService }], target: i0.ɵɵFactoryTarget.Component }); }
8842
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiKanbanComponent, selector: "Tsi-kanban", inputs: { cardBusinessClass: "cardBusinessClass", header: "header", id: "id", page$: "page$", crudService: "crudService", page: "page" }, outputs: { buttonClicked: "buttonClicked", callSearch: "callSearch" }, usesInheritance: true, ngImport: i0, template: "<div class=\"card flex justify-content-center\">\r\n <p-paginator\r\n [first]=\"first\"\r\n [rows]=\"rows\"\r\n [totalRecords]=\"totalCount\"\r\n [rowsPerPageOptions]=\"[1, 10, 25, 50]\"\r\n (onPageChange)=\"onPageChange($event)\"\r\n [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{{ 'Showing' | localize }} {first} {{'to' | localize}} {last} {{ 'of' | localize }} {totalRecords}\">\r\n </p-paginator>\r\n</div>\r\n\r\n<div class=\"kanban-board flex gap-4 overflow-auto\">\r\n <div *ngFor=\"let status of localizedStatusLabels; trackBy: trackByStatus\"\r\n class=\"kanban-column flex flex-column border-round surface-0 shadow-2\"\r\n (dragover)=\"allowDrop($event)\"\r\n (drop)=\"drop($event, status.key)\">\r\n \r\n <div class=\"column-header p-3 border-bottom-1 surface-border font-semibold\">\r\n {{ status.localized }}\r\n <span class=\"text-sm font-normal text-gray-500\">\r\n ({{ cardMapByStatus.get(status.key)?.length || 0 }})\r\n </span>\r\n </div>\r\n\r\n <div class=\"column-cards flex-1 overflow-auto p-3\">\r\n <div *ngFor=\"let card of cardMapByStatus.get(status.key); trackBy: trackByCard\"\r\n class=\"kanban-card p-3 border-round bg-white mb-3 shadow-1\"\r\n [ngClass]=\"getStatusClass(card)\"\r\n draggable=\"true\"\r\n (dragstart)=\"dragStart($event, card)\"\r\n (dragend)=\"dragEnd()\">\r\n \r\n <div class=\"font-bold mb-2\">{{ card.headerTitle }}</div>\r\n <div class=\"text-sm text-gray-600 mb-3\">{{ card.subHeaderTitle }}</div>\r\n <div class=\"text-sm text-gray-600 mb-3\">{{ card.description }}</div>\r\n <div class=\"text-sm text-gray-600 mb-3\">\r\n <span class=\"font-semibold\">{{ 'gesc_document_statut' | localize }}:</span>\r\n <span>{{ getLocalizedStatus(card.status) }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"overlay\" *ngIf=\"isLoading\">\r\n <div class=\"spinner-wrapper\">\r\n <app-spinner></app-spinner>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;padding:1rem}[draggable=true]{-webkit-user-select:none;user-select:none}.kanban-board{height:calc(100vh - 100px);padding:1rem}.kanban-column{width:300px;max-height:100%;display:flex;flex-direction:column;background-color:#f8f9fa}.column-header{font-size:1rem;font-weight:700;background-color:#fff;border-radius:6px 6px 0 0}.column-cards{overflow-y:auto;flex:1}.kanban-card{border-left:4px solid;cursor:move;transition:border-color .3s ease}.status-0{border-left-color:#7269ef}.status-1{border-left-color:#00c853}.status-2{border-left-color:#ffab00}.status-3{border-left-color:#d50000}[class*=status-]{border-left-style:solid;border-left-width:4px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6$3.Paginator, selector: "p-paginator", inputs: ["pageLinkSize", "style", "styleClass", "alwaysShow", "dropdownAppendTo", "templateLeft", "templateRight", "appendTo", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "jumpToPageItemTemplate", "showPageLinks", "locale", "dropdownItemTemplate", "first"], outputs: ["onPageChange"] }, { kind: "component", type: SpinnerComponent, selector: "app-spinner" }, { kind: "pipe", type: LocalizePipe, name: "localize" }] }); }
8874
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiKanbanComponent, selector: "Tsi-kanban", inputs: { cardBusinessClass: "cardBusinessClass", header: "header", id: "id", page$: "page$", crudService: "crudService", page: "page" }, outputs: { buttonClicked: "buttonClicked", callSearch: "callSearch" }, usesInheritance: true, ngImport: i0, template: "<div class=\"card flex justify-content-center\">\r\n <p-paginator\r\n [first]=\"first\"\r\n [rows]=\"rows\"\r\n [totalRecords]=\"totalCount\"\r\n [rowsPerPageOptions]=\"[1, 10, 25, 50]\"\r\n (onPageChange)=\"onPageChange($event)\"\r\n [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{{ 'Showing' | localize }} {first} {{'to' | localize}} {last} {{ 'of' | localize }} {totalRecords}\">\r\n </p-paginator>\r\n</div>\r\n\r\n<div class=\"kanban-board flex gap-4 overflow-auto\">\r\n <div *ngFor=\"let status of localizedStatusLabels; trackBy: trackByStatus\"\r\n class=\"kanban-column flex flex-column border-round surface-0 shadow-2\"\r\n (dragover)=\"allowDrop($event)\"\r\n (drop)=\"drop($event, status.key)\">\r\n \r\n <div class=\"column-header p-3 border-bottom-1 surface-border font-semibold\">\r\n {{ status.localized }}\r\n <span class=\"text-sm font-normal text-gray-500\">\r\n ({{ cardMapByStatus.get(status.key)?.length || 0 }})\r\n </span>\r\n </div>\r\n\r\n <div class=\"column-cards flex-1 overflow-auto p-3\">\r\n <div *ngFor=\"let card of cardMapByStatus.get(status.key); trackBy: trackByCard\"\r\n class=\"kanban-card p-3 border-round bg-white mb-3 shadow-1\"\r\n [ngClass]=\"getStatusClass(card)\"\r\n draggable=\"true\"\r\n (dragstart)=\"dragStart($event, card)\"\r\n (dragend)=\"dragEnd()\">\r\n\r\n <div class=\"font-bold mb-2\">{{ card.headerTitle }}</div>\r\n <div class=\"text-sm text-gray-600 mb-3\">{{ card.subHeaderTitle }}</div>\r\n <div class=\"text-sm text-gray-600 mb-3\">{{ card.description }}</div>\r\n <div class=\"text-sm text-gray-600 mb-3\">\r\n <span class=\"font-semibold\">{{ 'gesc_document_statut' | localize }}:</span>\r\n <span>{{ getLocalizedStatus(card.status) }}</span>\r\n </div>\r\n <Tsi-Button\r\n [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\"\r\n icon=\"p-button-icon pi pi-eye\"\r\n (click)=\"consult(card.uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button\r\n [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\"\r\n icon=\"pi pi-pencil\"\r\n (click)=\"edit(card.uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button\r\n [styleClass]=\"'p-button-rounded p-button-text p-button-danger p-0-5'\"\r\n type=\"button\"\r\n icon=\"p-button-icon pi pi-trash\"\r\n (click)=\"delete(card.uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button \r\n [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-paperclip\"\r\n (click)=\"upload(card.uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button \r\n [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-info\"\r\n (click)=\"info(card.uid)\">\r\n </Tsi-Button>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"overlay\" *ngIf=\"isLoading\">\r\n <div class=\"spinner-wrapper\">\r\n <app-spinner></app-spinner>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;padding:1rem}[draggable=true]{-webkit-user-select:none;user-select:none}.kanban-board{height:calc(100vh - 100px);padding:1rem}.kanban-column{width:300px;max-height:100%;display:flex;flex-direction:column;background-color:#f8f9fa}.column-header{font-size:1rem;font-weight:700;background-color:#fff;border-radius:6px 6px 0 0}.column-cards{overflow-y:auto;flex:1}.kanban-card{border-left:4px solid;cursor:move;transition:border-color .3s ease}.status-0{border-left-color:#7269ef}.status-1{border-left-color:#00c853}.status-2{border-left-color:#ffab00}.status-3{border-left-color:#d50000}[class*=status-]{border-left-style:solid;border-left-width:4px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6$3.Paginator, selector: "p-paginator", inputs: ["pageLinkSize", "style", "styleClass", "alwaysShow", "dropdownAppendTo", "templateLeft", "templateRight", "appendTo", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "jumpToPageItemTemplate", "showPageLinks", "locale", "dropdownItemTemplate", "first"], outputs: ["onPageChange"] }, { kind: "component", type: TsiButtonComponent, selector: "Tsi-Button", inputs: ["disabled", "text", "style", "tooltipText", "tooltipPosition", "buttonType", "icon", "styleClass", "iconSrc", "id", "iconWidth", "iconClass"], outputs: ["onClick", "rightClick"] }, { kind: "component", type: SpinnerComponent, selector: "app-spinner" }, { kind: "pipe", type: LocalizePipe, name: "localize" }] }); }
8843
8875
  }
8844
8876
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiKanbanComponent, decorators: [{
8845
8877
  type: Component,
8846
- args: [{ selector: 'Tsi-kanban', template: "<div class=\"card flex justify-content-center\">\r\n <p-paginator\r\n [first]=\"first\"\r\n [rows]=\"rows\"\r\n [totalRecords]=\"totalCount\"\r\n [rowsPerPageOptions]=\"[1, 10, 25, 50]\"\r\n (onPageChange)=\"onPageChange($event)\"\r\n [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{{ 'Showing' | localize }} {first} {{'to' | localize}} {last} {{ 'of' | localize }} {totalRecords}\">\r\n </p-paginator>\r\n</div>\r\n\r\n<div class=\"kanban-board flex gap-4 overflow-auto\">\r\n <div *ngFor=\"let status of localizedStatusLabels; trackBy: trackByStatus\"\r\n class=\"kanban-column flex flex-column border-round surface-0 shadow-2\"\r\n (dragover)=\"allowDrop($event)\"\r\n (drop)=\"drop($event, status.key)\">\r\n \r\n <div class=\"column-header p-3 border-bottom-1 surface-border font-semibold\">\r\n {{ status.localized }}\r\n <span class=\"text-sm font-normal text-gray-500\">\r\n ({{ cardMapByStatus.get(status.key)?.length || 0 }})\r\n </span>\r\n </div>\r\n\r\n <div class=\"column-cards flex-1 overflow-auto p-3\">\r\n <div *ngFor=\"let card of cardMapByStatus.get(status.key); trackBy: trackByCard\"\r\n class=\"kanban-card p-3 border-round bg-white mb-3 shadow-1\"\r\n [ngClass]=\"getStatusClass(card)\"\r\n draggable=\"true\"\r\n (dragstart)=\"dragStart($event, card)\"\r\n (dragend)=\"dragEnd()\">\r\n \r\n <div class=\"font-bold mb-2\">{{ card.headerTitle }}</div>\r\n <div class=\"text-sm text-gray-600 mb-3\">{{ card.subHeaderTitle }}</div>\r\n <div class=\"text-sm text-gray-600 mb-3\">{{ card.description }}</div>\r\n <div class=\"text-sm text-gray-600 mb-3\">\r\n <span class=\"font-semibold\">{{ 'gesc_document_statut' | localize }}:</span>\r\n <span>{{ getLocalizedStatus(card.status) }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"overlay\" *ngIf=\"isLoading\">\r\n <div class=\"spinner-wrapper\">\r\n <app-spinner></app-spinner>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;padding:1rem}[draggable=true]{-webkit-user-select:none;user-select:none}.kanban-board{height:calc(100vh - 100px);padding:1rem}.kanban-column{width:300px;max-height:100%;display:flex;flex-direction:column;background-color:#f8f9fa}.column-header{font-size:1rem;font-weight:700;background-color:#fff;border-radius:6px 6px 0 0}.column-cards{overflow-y:auto;flex:1}.kanban-card{border-left:4px solid;cursor:move;transition:border-color .3s ease}.status-0{border-left-color:#7269ef}.status-1{border-left-color:#00c853}.status-2{border-left-color:#ffab00}.status-3{border-left-color:#d50000}[class*=status-]{border-left-style:solid;border-left-width:4px}\n"] }]
8878
+ args: [{ selector: 'Tsi-kanban', template: "<div class=\"card flex justify-content-center\">\r\n <p-paginator\r\n [first]=\"first\"\r\n [rows]=\"rows\"\r\n [totalRecords]=\"totalCount\"\r\n [rowsPerPageOptions]=\"[1, 10, 25, 50]\"\r\n (onPageChange)=\"onPageChange($event)\"\r\n [showCurrentPageReport]=\"true\"\r\n currentPageReportTemplate=\"{{ 'Showing' | localize }} {first} {{'to' | localize}} {last} {{ 'of' | localize }} {totalRecords}\">\r\n </p-paginator>\r\n</div>\r\n\r\n<div class=\"kanban-board flex gap-4 overflow-auto\">\r\n <div *ngFor=\"let status of localizedStatusLabels; trackBy: trackByStatus\"\r\n class=\"kanban-column flex flex-column border-round surface-0 shadow-2\"\r\n (dragover)=\"allowDrop($event)\"\r\n (drop)=\"drop($event, status.key)\">\r\n \r\n <div class=\"column-header p-3 border-bottom-1 surface-border font-semibold\">\r\n {{ status.localized }}\r\n <span class=\"text-sm font-normal text-gray-500\">\r\n ({{ cardMapByStatus.get(status.key)?.length || 0 }})\r\n </span>\r\n </div>\r\n\r\n <div class=\"column-cards flex-1 overflow-auto p-3\">\r\n <div *ngFor=\"let card of cardMapByStatus.get(status.key); trackBy: trackByCard\"\r\n class=\"kanban-card p-3 border-round bg-white mb-3 shadow-1\"\r\n [ngClass]=\"getStatusClass(card)\"\r\n draggable=\"true\"\r\n (dragstart)=\"dragStart($event, card)\"\r\n (dragend)=\"dragEnd()\">\r\n\r\n <div class=\"font-bold mb-2\">{{ card.headerTitle }}</div>\r\n <div class=\"text-sm text-gray-600 mb-3\">{{ card.subHeaderTitle }}</div>\r\n <div class=\"text-sm text-gray-600 mb-3\">{{ card.description }}</div>\r\n <div class=\"text-sm text-gray-600 mb-3\">\r\n <span class=\"font-semibold\">{{ 'gesc_document_statut' | localize }}:</span>\r\n <span>{{ getLocalizedStatus(card.status) }}</span>\r\n </div>\r\n <Tsi-Button\r\n [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\"\r\n icon=\"p-button-icon pi pi-eye\"\r\n (click)=\"consult(card.uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button\r\n [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\"\r\n icon=\"pi pi-pencil\"\r\n (click)=\"edit(card.uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button\r\n [styleClass]=\"'p-button-rounded p-button-text p-button-danger p-0-5'\"\r\n type=\"button\"\r\n icon=\"p-button-icon pi pi-trash\"\r\n (click)=\"delete(card.uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button \r\n [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-paperclip\"\r\n (click)=\"upload(card.uid)\">\r\n </Tsi-Button>\r\n <Tsi-Button \r\n [styleClass]=\"'p-button-rounded p-button-text p-0-5'\"\r\n type=\"button\" icon=\"pi pi-info\"\r\n (click)=\"info(card.uid)\">\r\n </Tsi-Button>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"overlay\" *ngIf=\"isLoading\">\r\n <div class=\"spinner-wrapper\">\r\n <app-spinner></app-spinner>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;padding:1rem}[draggable=true]{-webkit-user-select:none;user-select:none}.kanban-board{height:calc(100vh - 100px);padding:1rem}.kanban-column{width:300px;max-height:100%;display:flex;flex-direction:column;background-color:#f8f9fa}.column-header{font-size:1rem;font-weight:700;background-color:#fff;border-radius:6px 6px 0 0}.column-cards{overflow-y:auto;flex:1}.kanban-card{border-left:4px solid;cursor:move;transition:border-color .3s ease}.status-0{border-left-color:#7269ef}.status-1{border-left-color:#00c853}.status-2{border-left-color:#ffab00}.status-3{border-left-color:#d50000}[class*=status-]{border-left-style:solid;border-left-width:4px}\n"] }]
8847
8879
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: EntityConfigurationService }, { type: LocalizePipe }, { type: EntityStatusService }, { type: TsiNotificationService }], propDecorators: { buttonClicked: [{
8848
8880
  type: Output
8849
8881
  }], callSearch: [{
@@ -15969,7 +16001,7 @@ class TsiFormComponentBaseComponent extends AppBaseComponent {
15969
16001
  }
15970
16002
  if (!this._formStateService.closeModal)
15971
16003
  return;
15972
- this.hide(val);
16004
+ this.hide(apiResponse);
15973
16005
  }
15974
16006
  refreshWorkflowInformation(id) {
15975
16007
  let request = new GetWorkflowInstanceInformationRequest();
@@ -22339,5 +22371,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
22339
22371
  * Generated bundle index. Do not edit.
22340
22372
  */
22341
22373
 
22342
- export { ActionErpService, AdDirective, AdItem, AddReportPopupComponent, AdminGuard, AdminRoutes, AdministrationEndpoints, AdministrationSegments, AdvancedSearchComponentService, AlertImportMessageComponent, ApiDateTimeFormat, ApiExplorerService, AppBaseComponent, AppRoutes, AppSettingsService, AuthenticationGuard, AuthorizationEndpoints, AuthorizationSegments, AuthorizationService, AuthorizationTokenMapper, AutoComplete, AutoSelectDirective, BsModalRef, BusyDirective, ButtonType, CSSSizeProperty, CSSUnits, ChooseChoiceMfaMethodComponent, ClaimTypes, CodeFormat, CollectionChangeAction, ComboStatusModel, Component_Modes, ContextMenuComponent, CreateOrEditDynamicFormComponent, CreateOrEditEntityInformationsComponent, CreateOrEditModeleImportComponent, CrudBaseService, CurrentUser, CurrentUserService, CutLabelPipe, DateFormat, DateFormatDisplay, DateHelper, DateHelperService, DatePickerDateFormat, DatePickerDateTimeFormat, DatePickerTimeFormat, DateTimeFormat, DateTimeFormatDisplay, DecimalFormat, DefaultSocieteDevise, Devise, DialogDataService, DisplayNestedPropComponent, DisplayTypeColors, DisplayTypes, DynamicFormListComponent, EditableGridComponent, EndpointInfos, EntityColumnDetailResponse, EntityConfigurationService, EntityInfo, EntityInfoWithRelations, EntityRelation, EntityStatusService, EntityValidationsService, ErrorResponseManagerService, ExecuteImportRequest, ExportExcelHelper, Fichier, FilterByExistingValues, FilterByProprety, FilterHelper, FilterOperatorType, FilterOperatorTypeDescriptions, FormValidationError, FormulaService, GenericFormHelper, GenericValidationStateService, GetWorkflowInstanceInformationRequest, GridColumnStyleHelper, GridSelectionMode, GridSortMode, Guid, Helpers, HtmlTemplateGeneratorService, HtmlTemplates, HttpMethodType, IdentityManagerService, IdentityPlatformAuthenticationService, IdentityPlatformEndpoints, IdentityPlatformSegments, IdentityRoutes, ImportExportEndPoints, ImportExportSegments, ImportResult, InputRegistryService, InputTypes, JournalisationApplication, JournalisationApplicationService, KeyboardShortcutService, LanguageInformations, LanguageLocale, LanguagesCodes, LayoutHelperService, LayoutOrientation, LocaleCode, LocalePocComponent, LocalizationKeys, LocalizePipe, LogoutPopupComponent, MFAEnum, MailingService, ManageImportExportComponent, ManageReportingComponent, ManageReportingRoutes, MappingHelper, ModalComponent, ModalLabelPipe, ModalLoaderComponent, ModalSizeEnum, ModeleImportCreateRequest, ModeleImportDetail, ModeleImportService, Modes, ModuleCodeService, ModuleMainParameterDirective, ModuleMainParameterService, NoteService, NumericDisplayTypes, ObjectHelper, ObservableCollection, PagedResultRequestBase, PermissionGuard, PresentationDesignerDirective, PresentationDesignerDirectiveBase, PresentationDesignerService, PresentationSetting, PresentationSettingDetail, PresentationSettingService, ProceedLoginRequest, ProgressBarHelperService, ProgressBarResponse, ProgressBarService, ProgressBarUpdateRequest, RecordInfoPopupService, ReportingComponent, ReportingEndpoints, ReportingSegments, ReportingService, RequestTrackerInterceptor, RequestTrackerService, Segment, Segments, SeparateurDecimal, SeparateurMillier, SharedComponentReferenceHelper, SharedModule, SharedUiTsiProviders, ShortenPipe, SpinnerComponent, Status, StatusHistory, StatusHistoryService, StorageManager, SubscriptionResult, TS_ValidDateFormat, TS_ValidDateTimeFormat, TS_ValidTimeFormat, TextBoxType, Themes, TimeFormat, TimeOnly, TimeZoneLocale, ToNumberPipe, TooltipPosition, TranslationService, TsiActionErpCreateOrEditComponent, TsiActionErpListComponent, TsiBaseComponent, TsiBsModalService, TsiBubbleInfoComponent, TsiButtonComponent, TsiCalenderComponent, TsiCard, TsiCardComponent, TsiCardListComponent, TsiChangePasswordComponent, TsiCheckboxComponent, TsiCheckboxDisplayComponent, TsiCodeGeneratorComponent, TsiComponentEnum, TsiComponentFinderService, TsiConfirmationService, TsiCurrencyOtherDisplayComponent, TsiCurrencyOtherInputComponent, TsiCurrencyPipe, TsiCurrencySocieteDisplayComponent, TsiCurrencySocieteInputComponent, TsiDateDisplayComponent, TsiDatePickerComponent, TsiDecimalDisplayComponent, TsiDecimalInputComponent, TsiDecimalPipe, TsiDisplayGridComponent, TsiDividerComponent, TsiErrorMessageComponent, TsiFileManagerComponent, TsiFormComponent, TsiFormComponentBaseComponent, TsiFormModalFooterComponent, TsiFormulaBoxComponent, TsiGenericCrudComponent, TsiGenericFormComponent, TsiGenericGridComponent, TsiImageDisplayComponent, TsiInfoMessageComponent, TsiInputBase, TsiIntegerComponent, TsiIntegerDisplayComponent, TsiKanbanComponent, TsiKanbanWorkflowEtatComponent, TsiLabelComponent, TsiLabelLegendComponent, TsiLegendComponent, TsiListBaseComponent, TsiLogEventHistoryComponent, TsiMessageService, TsiModalComponent, TsiModalFooterComponent, TsiModalHeaderComponent, TsiModalService, TsiNotesAvertirComponent, TsiNotesComponent, TsiNotesGridComponent, TsiNotificationService, TsiParagraphComponent, TsiPopupTextViewerComponent, TsiProgressBarComponent, TsiRadioButtonComponent, TsiRateDisplayComponent, TsiRateInputComponent, TsiRedirectionMessageComponent, TsiReportType, TsiSearchBoxComponent, TsiSearchComboComponent, TsiSendMailComponent, TsiSubmitButtonComponent, TsiSuccessMessageComponent, TsiTabPanelComponent, TsiTabViewComponent, TsiTemplate, TsiTenantsComponent, TsiTextAreaComponent, TsiTextBoxComponent, TsiTimeDisplayComponent, TsiTimePickerComponent, TsiTooltipComponent, TsiUploadFicheComponent, TsiUploadGridComponent, TsiViewGridComponent, TypeFichier, TypeImportEnum, TypeRegistryHelper, UpdateEntityInfoWithRelationsRequest, UserIdentityService, ValidationDirective, VerificationCodeComponent, VerificationCodeInscriptionComponent, VerificationCodeSmsComponent, WorkflowConfigurationService, WorkflowEtatForm, WorkflowEtatKanbanRequest, WorkflowEtatSuivantResponse, appProviders, authorization, dashboardConst, defaultCardHeader, distinct, executeImportResult, initSharedComponents, isNullOrEmpty, lengthValidator, locals, logoutReasonEnum, lowerFirst, menuItems, primengDateLocalAr, primengLocaleAr, queryParamNamesConst, rangeValidator, registerLibraryLocales, requestHeaderNames, rtlModeKeys, splitArrayIntoChunks, tokenQueryParamName, updateEntityWorkflowInformation, updateEntityWorkflowInstanceResponse, userLanguage, workflowEtatDetailledResponse, workflowInstanceInformationResponse };
22374
+ export { ActionErpService, ActionPlacement, AdDirective, AdItem, AddReportPopupComponent, AdminGuard, AdminRoutes, AdministrationEndpoints, AdministrationSegments, AdvancedSearchComponentService, AlertImportMessageComponent, ApiDateTimeFormat, ApiExplorerService, AppBaseComponent, AppRoutes, AppSettingsService, AuthenticationGuard, AuthorizationEndpoints, AuthorizationSegments, AuthorizationService, AuthorizationTokenMapper, AutoComplete, AutoSelectDirective, BsModalRef, BusyDirective, ButtonType, CSSSizeProperty, CSSUnits, ChooseChoiceMfaMethodComponent, ClaimTypes, CodeFormat, CollectionChangeAction, ComboStatusModel, Component_Modes, ContextMenuComponent, CreateOrEditDynamicFormComponent, CreateOrEditEntityInformationsComponent, CreateOrEditModeleImportComponent, CrudBaseService, CurrentUser, CurrentUserService, CutLabelPipe, DateFormat, DateFormatDisplay, DateHelper, DateHelperService, DatePickerDateFormat, DatePickerDateTimeFormat, DatePickerTimeFormat, DateTimeFormat, DateTimeFormatDisplay, DecimalFormat, DefaultSocieteDevise, Devise, DialogDataService, DisplayNestedPropComponent, DisplayTypeColors, DisplayTypes, DynamicFormListComponent, EditableGridComponent, EndpointInfos, EntityColumnDetailResponse, EntityConfigurationService, EntityInfo, EntityInfoWithRelations, EntityRelation, EntityStatusService, EntityValidationsService, ErrorResponseManagerService, ExecuteImportRequest, ExportExcelHelper, Fichier, FilterByExistingValues, FilterByProprety, FilterHelper, FilterOperatorType, FilterOperatorTypeDescriptions, FormValidationError, FormulaService, GenericFormHelper, GenericValidationStateService, GetWorkflowInstanceInformationRequest, GridColumnStyleHelper, GridSelectionMode, GridSortMode, Guid, Helpers, HtmlTemplateGeneratorService, HtmlTemplates, HttpMethodType, IdentityManagerService, IdentityPlatformAuthenticationService, IdentityPlatformEndpoints, IdentityPlatformSegments, IdentityRoutes, ImportExportEndPoints, ImportExportSegments, ImportResult, InputRegistryService, InputTypes, JournalisationApplication, JournalisationApplicationService, KeyboardShortcutService, LanguageInformations, LanguageLocale, LanguagesCodes, LayoutHelperService, LayoutOrientation, LocaleCode, LocalePocComponent, LocalizationKeys, LocalizePipe, LogoutPopupComponent, MFAEnum, MailingService, ManageImportExportComponent, ManageReportingComponent, ManageReportingRoutes, MappingHelper, ModalComponent, ModalLabelPipe, ModalLoaderComponent, ModalSizeEnum, ModeleImportCreateRequest, ModeleImportDetail, ModeleImportService, Modes, ModuleCodeService, ModuleMainParameterDirective, ModuleMainParameterService, NoteService, NumericDisplayTypes, ObjectHelper, ObservableCollection, PagedResultRequestBase, PermissionGuard, PresentationDesignerDirective, PresentationDesignerDirectiveBase, PresentationDesignerService, PresentationSetting, PresentationSettingDetail, PresentationSettingService, ProceedLoginRequest, ProgressBarHelperService, ProgressBarResponse, ProgressBarService, ProgressBarUpdateRequest, RecordInfoPopupService, ReportingComponent, ReportingEndpoints, ReportingSegments, ReportingService, RequestTrackerInterceptor, RequestTrackerService, Segment, Segments, SeparateurDecimal, SeparateurMillier, SharedComponentReferenceHelper, SharedModule, SharedUiTsiProviders, ShortenPipe, SpinnerComponent, Status, StatusHistory, StatusHistoryService, StorageManager, SubscriptionResult, TS_ValidDateFormat, TS_ValidDateTimeFormat, TS_ValidTimeFormat, TextBoxType, Themes, TimeFormat, TimeOnly, TimeZoneLocale, ToNumberPipe, TooltipPosition, TranslationService, TsiActionErpCreateOrEditComponent, TsiActionErpListComponent, TsiBaseComponent, TsiBsModalService, TsiBubbleInfoComponent, TsiButtonComponent, TsiCalenderComponent, TsiCard, TsiCardComponent, TsiCardListComponent, TsiChangePasswordComponent, TsiCheckboxComponent, TsiCheckboxDisplayComponent, TsiCodeGeneratorComponent, TsiComponentEnum, TsiComponentFinderService, TsiConfirmationService, TsiCurrencyOtherDisplayComponent, TsiCurrencyOtherInputComponent, TsiCurrencyPipe, TsiCurrencySocieteDisplayComponent, TsiCurrencySocieteInputComponent, TsiDateDisplayComponent, TsiDatePickerComponent, TsiDecimalDisplayComponent, TsiDecimalInputComponent, TsiDecimalPipe, TsiDisplayGridComponent, TsiDividerComponent, TsiErrorMessageComponent, TsiFileManagerComponent, TsiFormComponent, TsiFormComponentBaseComponent, TsiFormModalFooterComponent, TsiFormulaBoxComponent, TsiGenericCrudComponent, TsiGenericFormComponent, TsiGenericGridComponent, TsiImageDisplayComponent, TsiInfoMessageComponent, TsiInputBase, TsiIntegerComponent, TsiIntegerDisplayComponent, TsiKanbanComponent, TsiKanbanWorkflowEtatComponent, TsiLabelComponent, TsiLabelLegendComponent, TsiLegendComponent, TsiListBaseComponent, TsiLogEventHistoryComponent, TsiMessageService, TsiModalComponent, TsiModalFooterComponent, TsiModalHeaderComponent, TsiModalService, TsiNotesAvertirComponent, TsiNotesComponent, TsiNotesGridComponent, TsiNotificationService, TsiParagraphComponent, TsiPopupTextViewerComponent, TsiProgressBarComponent, TsiRadioButtonComponent, TsiRateDisplayComponent, TsiRateInputComponent, TsiRedirectionMessageComponent, TsiReportType, TsiSearchBoxComponent, TsiSearchComboComponent, TsiSendMailComponent, TsiSubmitButtonComponent, TsiSuccessMessageComponent, TsiTabPanelComponent, TsiTabViewComponent, TsiTemplate, TsiTenantsComponent, TsiTextAreaComponent, TsiTextBoxComponent, TsiTimeDisplayComponent, TsiTimePickerComponent, TsiTooltipComponent, TsiUploadFicheComponent, TsiUploadGridComponent, TsiViewGridComponent, TypeFichier, TypeImportEnum, TypeRegistryHelper, UpdateEntityInfoWithRelationsRequest, UserIdentityService, ValidationDirective, VerificationCodeComponent, VerificationCodeInscriptionComponent, VerificationCodeSmsComponent, WorkflowConfigurationService, WorkflowEtatForm, WorkflowEtatKanbanRequest, WorkflowEtatSuivantResponse, appProviders, authorization, dashboardConst, defaultCardHeader, distinct, executeImportResult, initSharedComponents, isNullOrEmpty, lengthValidator, locals, logoutReasonEnum, lowerFirst, menuItems, primengDateLocalAr, primengLocaleAr, queryParamNamesConst, rangeValidator, registerLibraryLocales, requestHeaderNames, rtlModeKeys, splitArrayIntoChunks, tokenQueryParamName, updateEntityWorkflowInformation, updateEntityWorkflowInstanceResponse, userLanguage, workflowEtatDetailledResponse, workflowInstanceInformationResponse };
22343
22375
  //# sourceMappingURL=tsi-developpement-tsi-shared-ui.mjs.map