@sd-angular/core 1.2.21 → 1.2.24

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 (63) hide show
  1. package/bundles/sd-angular-core-common.umd.js +21 -2
  2. package/bundles/sd-angular-core-common.umd.js.map +1 -1
  3. package/bundles/sd-angular-core-common.umd.min.js +1 -1
  4. package/bundles/sd-angular-core-common.umd.min.js.map +1 -1
  5. package/bundles/sd-angular-core-input.umd.js +2 -1
  6. package/bundles/sd-angular-core-input.umd.js.map +1 -1
  7. package/bundles/sd-angular-core-input.umd.min.js +1 -1
  8. package/bundles/sd-angular-core-input.umd.min.js.map +1 -1
  9. package/bundles/sd-angular-core-select-badge.umd.js +485 -0
  10. package/bundles/sd-angular-core-select-badge.umd.js.map +1 -0
  11. package/bundles/sd-angular-core-select-badge.umd.min.js +16 -0
  12. package/bundles/sd-angular-core-select-badge.umd.min.js.map +1 -0
  13. package/bundles/sd-angular-core-upload-excel.umd.js +125 -53
  14. package/bundles/sd-angular-core-upload-excel.umd.js.map +1 -1
  15. package/bundles/sd-angular-core-upload-excel.umd.min.js +1 -1
  16. package/bundles/sd-angular-core-upload-excel.umd.min.js.map +1 -1
  17. package/common/sd-angular-core-common.metadata.json +1 -1
  18. package/common/src/lib/directives/sd-lable.directive.d.ts +5 -0
  19. package/common/src/public-api.d.ts +1 -0
  20. package/esm2015/common/src/lib/common.module.js +6 -3
  21. package/esm2015/common/src/lib/directives/sd-lable.directive.js +16 -0
  22. package/esm2015/common/src/public-api.js +2 -1
  23. package/esm2015/grid-material/src/lib/models/grid-export.model.js +1 -1
  24. package/esm2015/input/src/lib/input.component.js +4 -3
  25. package/esm2015/select-badge/index.js +2 -0
  26. package/esm2015/select-badge/sd-angular-core-select-badge.js +5 -0
  27. package/esm2015/select-badge/src/lib/select-badge-display-def.directive.js +15 -0
  28. package/esm2015/select-badge/src/lib/select-badge.component.js +88 -0
  29. package/esm2015/select-badge/src/lib/select-badge.module.js +45 -0
  30. package/esm2015/select-badge/src/public-api.js +7 -0
  31. package/esm2015/upload-excel/sd-angular-core-upload-excel.js +3 -1
  32. package/esm2015/upload-excel/src/lib/pipes/columm-hidden.pipe.js +23 -0
  33. package/esm2015/upload-excel/src/lib/pipes/column-transform.pipe.js +18 -0
  34. package/esm2015/upload-excel/src/lib/upload-excel.component.js +29 -11
  35. package/esm2015/upload-excel/src/lib/upload-excel.model.js +1 -1
  36. package/esm2015/upload-excel/src/lib/upload-excel.module.js +7 -2
  37. package/fesm2015/sd-angular-core-common.js +20 -3
  38. package/fesm2015/sd-angular-core-common.js.map +1 -1
  39. package/fesm2015/sd-angular-core-input.js +3 -2
  40. package/fesm2015/sd-angular-core-input.js.map +1 -1
  41. package/fesm2015/sd-angular-core-select-badge.js +155 -0
  42. package/fesm2015/sd-angular-core-select-badge.js.map +1 -0
  43. package/fesm2015/sd-angular-core-upload-excel.js +71 -13
  44. package/fesm2015/sd-angular-core-upload-excel.js.map +1 -1
  45. package/grid-material/src/lib/models/grid-export.model.d.ts +2 -0
  46. package/input/sd-angular-core-input.metadata.json +1 -1
  47. package/input/src/lib/input.component.d.ts +2 -1
  48. package/package.json +1 -1
  49. package/{sd-angular-core-1.2.21.tgz → sd-angular-core-1.2.24.tgz} +0 -0
  50. package/select-badge/index.d.ts +1 -0
  51. package/select-badge/package.json +12 -0
  52. package/select-badge/sd-angular-core-select-badge.d.ts +4 -0
  53. package/select-badge/sd-angular-core-select-badge.metadata.json +1 -0
  54. package/select-badge/src/lib/select-badge-display-def.directive.d.ts +5 -0
  55. package/select-badge/src/lib/select-badge.component.d.ts +32 -0
  56. package/select-badge/src/lib/select-badge.module.d.ts +2 -0
  57. package/select-badge/src/public-api.d.ts +3 -0
  58. package/upload-excel/sd-angular-core-upload-excel.d.ts +2 -0
  59. package/upload-excel/sd-angular-core-upload-excel.metadata.json +1 -1
  60. package/upload-excel/src/lib/pipes/columm-hidden.pipe.d.ts +6 -0
  61. package/upload-excel/src/lib/pipes/column-transform.pipe.d.ts +5 -0
  62. package/upload-excel/src/lib/upload-excel.component.d.ts +3 -1
  63. package/upload-excel/src/lib/upload-excel.model.d.ts +3 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sd-angular/core",
3
- "version": "1.2.21",
3
+ "version": "1.2.24",
4
4
  "homepage": "https://www.facebook.com/DarkP3ter",
5
5
  "author": {
6
6
  "name": "darkpeter",
@@ -0,0 +1 @@
1
+ export * from './src/public-api';
@@ -0,0 +1,12 @@
1
+ {
2
+ "peerDependencies": {},
3
+ "main": "../bundles/sd-angular-core-select-badge.umd.js",
4
+ "module": "../fesm2015/sd-angular-core-select-badge.js",
5
+ "es2015": "../fesm2015/sd-angular-core-select-badge.js",
6
+ "esm2015": "../esm2015/select-badge/sd-angular-core-select-badge.js",
7
+ "fesm2015": "../fesm2015/sd-angular-core-select-badge.js",
8
+ "typings": "sd-angular-core-select-badge.d.ts",
9
+ "metadata": "sd-angular-core-select-badge.metadata.json",
10
+ "sideEffects": false,
11
+ "name": "@sd-angular/core/select-badge"
12
+ }
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
@@ -0,0 +1 @@
1
+ {"__symbolic":"module","version":4,"metadata":{"SdSelectBadgeModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":15,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":17,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":18,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":19,"character":4},{"__symbolic":"reference","module":"@angular/material/input","name":"MatInputModule","line":20,"character":4},{"__symbolic":"reference","module":"@angular/material/tooltip","name":"MatTooltipModule","line":21,"character":4},{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldModule","line":22,"character":4},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":23,"character":4},{"__symbolic":"reference","module":"@angular/material/select","name":"MatSelectModule","line":24,"character":4},{"__symbolic":"reference","module":"@angular/material/progress-spinner","name":"MatProgressSpinnerModule","line":25,"character":4},{"__symbolic":"reference","module":"@angular/material/checkbox","name":"MatCheckboxModule","line":26,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/translate","name":"SdTranslateModule","line":27,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/common","name":"SdCommonModule","line":28,"character":4}],"declarations":[{"__symbolic":"reference","name":"SdSelectBadge"},{"__symbolic":"reference","name":"SdSelectBadgeDisplayDefDirective"}],"exports":[{"__symbolic":"reference","name":"SdSelectBadge"},{"__symbolic":"reference","name":"SdSelectBadgeDisplayDefDirective"},{"__symbolic":"reference","module":"@sd-angular/core/common","name":"SdCommonModule","line":37,"character":4}],"providers":[]}]}],"members":{}},"SdSelectBadge":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"sd-select-badge","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":7,"character":19},"member":"OnPush"},"template":"<label *ngIf=\"label\" class=\"d-block mb-6 T14M\">{{label}}</label>\r\n<div #selectbadge class=\"c-selectbadge-dropdown\" (click)=\"onToogle()\">\r\n <div class=\"c-selectbadge-dropdown__label\">\r\n <div class=\"media align-items-center\">\r\n <div class=\"media-body d-flex align-items-center\">\r\n <ng-container *ngIf=\"selectedItem\">\r\n <span class=\"c-selectbadge-icon c-badge mr-6\" [ngClass]=\"{\r\n 'material-icons-outlined': !selectedItem[iconColorField],\r\n 'material-icons-round': selectedItem[iconColorField],\r\n 'c-primary': selectedItem[iconColorField] === 'primary', \r\n 'c-black400': selectedItem[iconColorField] === 'normal', \r\n 'c-info': selectedItem[iconColorField] === 'info', \r\n 'c-success': selectedItem[iconColorField] === 'success', \r\n 'c-danger': selectedItem[iconColorField] === 'danger', \r\n 'c-warning': selectedItem[iconColorField] === 'warning'\r\n }\">\r\n {{selectedItem[iconField]}}\r\n </span>\r\n <span>{{selectedItem[displayField]}}</span>\r\n </ng-container>\r\n </div>\r\n <span class=\"material-icons-outlined ml-6\">\r\n arrow_drop_down\r\n </span>\r\n </div>\r\n\r\n </div>\r\n <div class=\"c-selectbadge-dropdown__content\" [ngClass]=\"isShowContent ? '' : 'd-none'\">\r\n <div class=\"c-selectbadge-item media align-items-center py-12\" *ngFor=\"let item of items\"\r\n (click)=\"onSelected(item)\">\r\n <span class=\"c-selectbadge-icon c-badge\" [ngClass]=\"{\r\n 'material-icons-outlined': !item[iconColorField],\r\n 'material-icons-round': item[iconColorField],\r\n 'c-primary': item[iconColorField] === 'primary', \r\n 'c-black400': item[iconColorField] === 'normal', \r\n 'c-info': item[iconColorField] === 'info', \r\n 'c-success': item[iconColorField] === 'success', \r\n 'c-danger': item[iconColorField] === 'danger', \r\n 'c-warning': item[iconColorField] === 'warning'\r\n }\">\r\n <ng-container *ngIf=\"item[iconField]\">\r\n {{item[iconField]}}\r\n </ng-container>\r\n <ng-container *ngIf=\"!item[iconField]\">\r\n fiber_manual_record\r\n </ng-container>\r\n </span>\r\n\r\n <div class=\"media-body ml-12\">\r\n <div class=\"d-flex justify-content-between align-items-center\">\r\n <div class=\"mr-16\">\r\n <div class=\"c-selectbadge-item__title\">{{item[displayField]}}</div>\r\n <div class=\"c-selectbadge-item__desc\">{{item[descriptionField]}}</div>\r\n </div>\r\n <span *ngIf=\"selectedItem && item[valueField] === selectedItem[valueField]\"\r\n class=\"material-icons-outlined c-selectbadge-icon__checked\">check</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>","styles":[".text-black400{color:#757575}.c-selectbadge-dropdown{color:#5f6368;cursor:pointer;display:inline-flex;position:relative}.c-selectbadge-dropdown__label{border:1px solid #dadce0;border-radius:18px;font-weight:500;height:36px;min-width:110px;padding:4px 8px}.c-selectbadge-dropdown__label:hover{background-color:rgba(32,33,36,.059)}.c-selectbadge-dropdown__label:active{background:rgba(32,33,36,.122)}.c-selectbadge-dropdown .c-selectbadge-icon{display:inline-block;font-size:18px}.c-selectbadge-dropdown .c-selectbadge-icon__checked{color:rgba(0,0,0,.5);font-size:16px}.c-selectbadge-dropdown .c-selectbadge-icon.c-primary{color:#2962ff}.c-selectbadge-dropdown .c-selectbadge-icon.c-black400{color:#757575}.c-selectbadge-dropdown .c-selectbadge-icon.c-info{color:#2962ff}.c-selectbadge-dropdown .c-selectbadge-icon.c-warning{color:#ff9600}.c-selectbadge-dropdown .c-selectbadge-icon.c-success{color:#4caf50}.c-selectbadge-dropdown .c-selectbadge-icon.c-danger{color:#f82c13}.c-selectbadge-dropdown__content{background-color:#fff;border-radius:3px;box-shadow:0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12),0 5px 5px -3px rgba(0,0,0,.2);display:block;left:0;min-width:160px;min-width:256px;padding:12px 0;position:absolute;top:36px;z-index:9}.c-selectbadge-dropdown__content .c-selectbadge-item{padding:16px 12px}.c-selectbadge-dropdown__content .c-selectbadge-item:hover{background-color:#eee;outline:1px dashed transparent}.c-selectbadge-dropdown__content .c-selectbadge-item__desc{color:rgba(0,0,0,.5);font-size:12px}"]}]}],"members":{"selectbadge":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":10,"character":3},"arguments":["selectbadge"]}]}],"label":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"model":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"_items":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3},"arguments":["items"]}]}],"valueField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3}}]}],"displayField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":34,"character":3}}]}],"iconField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":3}}]}],"iconColorField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":3}}]}],"descriptionField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":3}}]}],"modelChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":39,"character":3}}]}],"sdChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":40,"character":3}}]}],"sdSelection":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":41,"character":3}}]}],"clickout":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":46,"character":3},"arguments":["document:click",["$event"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":52,"character":17}]}],"ngOnInit":[{"__symbolic":"method"}],"onSelected":[{"__symbolic":"method"}]}},"SdSelectBadgeDisplayDefDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[sdSelectBadgeDisplayDef]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]}]}]}}},"origins":{"SdSelectBadgeModule":"./src/lib/select-badge.module","SdSelectBadge":"./src/lib/select-badge.component","SdSelectBadgeDisplayDefDirective":"./src/lib/select-badge-display-def.directive"},"importAs":"@sd-angular/core/select-badge"}
@@ -0,0 +1,5 @@
1
+ import { TemplateRef } from '@angular/core';
2
+ export declare class SdSelectBadgeDisplayDefDirective {
3
+ templateRef: TemplateRef<any>;
4
+ constructor(templateRef: TemplateRef<any>);
5
+ }
@@ -0,0 +1,32 @@
1
+ import { ChangeDetectorRef, ElementRef, EventEmitter } from '@angular/core';
2
+ export declare class SdSelectBadge {
3
+ #private;
4
+ private ref;
5
+ selectbadge: ElementRef<HTMLDivElement>;
6
+ selectedItem: any;
7
+ label: string;
8
+ placeholder: string;
9
+ value: string;
10
+ set model(val: any);
11
+ items: any[];
12
+ set _items(items: any[]);
13
+ valueField: string;
14
+ displayField: string;
15
+ iconField: string;
16
+ iconColorField: string;
17
+ descriptionField: string;
18
+ modelChange: EventEmitter<any>;
19
+ sdChange: EventEmitter<any>;
20
+ sdSelection: EventEmitter<{
21
+ value: any | any[];
22
+ item?: any;
23
+ items?: any[];
24
+ }>;
25
+ isShowContent: boolean;
26
+ clickout(event: any): void;
27
+ constructor(ref: ChangeDetectorRef);
28
+ ngOnInit(): void;
29
+ onToogle: () => void;
30
+ onModelChange: (val: any) => void;
31
+ onSelected(item?: any): void;
32
+ }
@@ -0,0 +1,2 @@
1
+ export declare class SdSelectBadgeModule {
2
+ }
@@ -0,0 +1,3 @@
1
+ export * from './lib/select-badge.module';
2
+ export * from './lib/select-badge.component';
3
+ export * from './lib/select-badge-display-def.directive';
@@ -2,3 +2,5 @@
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
4
  export * from './index';
5
+ export { SdColumnHiddenPipe as ɵa } from './src/lib/pipes/columm-hidden.pipe';
6
+ export { SdColumnTransformPipe as ɵb } from './src/lib/pipes/column-transform.pipe';
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"SdUploadExcelOption":{"__symbolic":"interface"},"SdUploadExcelColumn":{"__symbolic":"interface"},"SdUploadExcelBaseColumn":{"__symbolic":"interface"},"SdUploadExcelColumnString":{"__symbolic":"interface"},"SdUploadExcelColumnNumber":{"__symbolic":"interface"},"SdUploadExcelColumnBool":{"__symbolic":"interface"},"SdUploadExcelColumnDate":{"__symbolic":"interface"},"SdUploadExcelColumnTime":{"__symbolic":"interface"},"SdUploadExcelColumnDateTime":{"__symbolic":"interface"},"SdUploadExcelColumnValues":{"__symbolic":"interface"},"SdUploadExcelColumnStringArray":{"__symbolic":"interface"},"SdUploadExcelValidation":{"__symbolic":"interface"},"ExcelItem":{"__symbolic":"interface"},"SdUploadExcel":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":27,"character":1},"arguments":[{"selector":"sd-upload-excel","template":"<sd-modal [title]=\"(option?.title || 'Import Excel')| sdTranslate\" #modal>\r\n <sd-modal-body background=\"#F0F8FF\">\r\n <div class=\"row mx-0 mb-10\">\r\n <sd-button *ngIf=\"items?.length\" class=\"mr-5\" (action)=\"view('ALL')\" icon=\"cached\"\r\n [title]=\"'View all' | sdTranslate\" size=\"sm\"></sd-button>\r\n <sd-button *ngIf=\"numberOfSuccess\" class=\"mr-5\" (action)=\"view('SUCCESS')\" icon=\"done\" [title]=\"numberOfSuccess\"\r\n [tooltip]=\"'Number of success rows' | sdTranslate\" size=\"sm\" color=\"success\"></sd-button>\r\n <sd-button *ngIf=\"numberOfWarning\" class=\"mr-5\" (action)=\"view('WARNING')\" icon=\"warning\"\r\n [title]=\"numberOfWarning\" [tooltip]=\"'Number of warning rows' | sdTranslate\" size=\"sm\"></sd-button>\r\n <sd-button *ngIf=\"numberOfError\" class=\"mr-5\" (action)=\"view('ERROR')\" icon=\"error\" [title]=\"numberOfError\"\r\n color=\"danger\" [tooltip]=\"'Number of error rows' | sdTranslate\" size=\"sm\"></sd-button>\r\n </div>\r\n <div class=\"sd-box\">\r\n <div class=\"sd-box-body p-0\">\r\n <div class=\"table-responsive\" style=\"position: relative; height:50vh\">\r\n <table class=\"table table-striped table-sm table-hover table-bordered\">\r\n <thead class=\"thead-light\">\r\n <tr>\r\n <th class=\"text-center position-sticky c-sticky-left\" style=\"width: 50px\">#</th>\r\n <th *ngIf=\"filteredItems?.length\" class=\"text-center\" style=\"min-width: 250px; width: 250px\">\r\n {{'Upload message' | sdTranslate}}</th>\r\n <th *ngFor=\"let column of option.columns\"\r\n [ngStyle]=\"{'min-width':column.width ? column.width : '300px'}\" [matTooltip]=\"column.title\">\r\n <span class=\"c-ellipsis\"\r\n [ngStyle]=\"{'min-width':column.width ? column.width : '300px', 'max-width':column.width ? column.width : '300px'}\">{{column.title}}</span>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody *ngIf=\"viewItems.length\">\r\n <tr *ngFor=\"let item of viewItems\">\r\n <td class=\"text-center position-sticky c-sticky-left\" style=\"width: 50px\">\r\n <span class=\"badge\"\r\n [ngClass]=\"{'badge-success':!item.validation?.warning && !item.validation?.error, 'badge-warning':item.validation?.warning && !item.validation?.error, 'badge-danger':item.validation?.error}\"\r\n style=\"width: 100%\">{{item.excelIndex}}</span>\r\n </td>\r\n <td style=\"min-width: 250px; width: 250px\">\r\n <div\r\n [innerHtml]=\"item.validation?.error || item.validation?.warning || item.validation?.success || ('Success' | sdTranslate)\">\r\n </div>\r\n </td>\r\n <td *ngFor=\"let column of option.columns\" class=\"align-middle\"\r\n [ngClass]=\"{'table-warning':item.validation?.data[column.field]?.warning && !item.validation?.data[column.field]?.error, 'table-danger':item.validation?.data[column.field]?.error}\"\r\n [matTooltip]=\"item.validation?.data[column.field]?.error || item.validation?.data[column.field]?.warning\"\r\n [ngStyle]=\"{'min-width':column.width ? column.width : '300px'}\" matTooltipPosition=\"above\">\r\n <span class=\"c-ellipsis\">\r\n <ng-container *ngIf=\"column.type === 'date' || column.type === 'datetime' && item.origin\">\r\n {{item.origin[column.field]}}\r\n </ng-container>\r\n <ng-container *ngIf=\"column.type === 'number'\">\r\n {{item.validation?.data[column.field]?.error ? item[column.field] : (item[column.field] | number :\r\n '1.0-2')}}\r\n </ng-container>\r\n <ng-container *ngIf=\"column.type === 'array'\">\r\n {{item[column.field]?.split(column.divideString)?.length}} {{column.unitString}}\r\n <button mat-button [matMenuTriggerFor]=\"menu\" class=\"c-mat-menu\">\r\n <mat-icon>open_in_new</mat-icon>\r\n </button>\r\n <mat-menu #menu=\"matMenu\">\r\n <div class=\"row mx-0\">\r\n <div class=\"col-6\" *ngFor=\"let itemArray of item[column.field]?.split(column.divideString)\">\r\n {{itemArray}}\r\n </div>\r\n </div>\r\n </mat-menu>\r\n </ng-container>\r\n <ng-container\r\n *ngIf=\"column.type !== 'date' && column.type !== 'datetime' && column.type !== 'number' && column.type !== 'array'\">\r\n {{item[column.field]}}\r\n </ng-container>\r\n </span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n </div>\r\n <div class=\"sd-box-footer clearfix\">\r\n <div style=\"display: flex; align-items: center; align-content: space-between;\">\r\n <div style=\"flex: 1;\" [innerHTML]=\"option?.note\">\r\n </div>\r\n <div style=\"flex: 1;\">\r\n <mat-paginator [length]=\"filteredItems?.length || 0\" hidePageSize>\r\n </mat-paginator>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </sd-modal-body>\r\n <sd-modal-footer *sdDesktop>\r\n <div class=\"mr-auto\">\r\n <sd-button class=\"mr-5\" (action)=\"upload()\" icon=\"file_upload\" [title]=\"'Upload' | sdTranslate\" size=\"sm\"\r\n color=\"info\"></sd-button>\r\n <sd-button class=\"mr-5\" (action)=\"downloadTemplate()\" icon=\"file_download\" [loading]=\"isDownloadTemplate\"\r\n [title]=\"'Download template' | sdTranslate\" color=\"info\" type=\"outline\" size=\"sm\">\r\n </sd-button>\r\n </div>\r\n <sd-button *ngIf=\"filteredItems?.length\" class=\"mr-5\" (action)=\"export()\" icon=\"get_app\"\r\n [title]=\"'Download result' | sdTranslate\" size=\"sm\" color=\"info\" type=\"outline\">\r\n </sd-button>\r\n <sd-button (action)=\"accept()\" [title]=\"'Accept' | sdTranslate\"\r\n [disabled]=\"numberOfSuccess === 0 || numberOfError > 0 || isUploaded\" color=\"primary\" type=\"fill\" size=\"sm\">\r\n </sd-button>\r\n </sd-modal-footer>\r\n <sd-modal-footer *sdMobileTablet>\r\n <sd-button style=\"flex: 1; padding-right: 5px;\" (action)=\"upload()\" icon=\"file_upload\"\r\n [title]=\"'Upload' | sdTranslate\" width=\"100%\" size=\"sm\" color=\"info\"></sd-button>\r\n <sd-button style=\"flex: 1; padding-left: 5px;\" (action)=\"accept()\" icon=\"check\" [title]=\"'Accept' | sdTranslate\"\r\n [disabled]=\"numberOfSuccess === 0 || numberOfError > 0\" color=\"success\" width=\"100%\" size=\"sm\"></sd-button>\r\n </sd-modal-footer>\r\n</sd-modal>","styles":[".table thead td,.table thead th{padding-bottom:5px;padding-top:5px}.table-striped tbody tr:nth-of-type(2n) .c-sticky-left{background-color:#fff}.table-striped tbody tr:nth-of-type(odd) .c-sticky-left{background-color:#f2f2f2}.c-sticky-left{border-left:none!important;border-right:none!important;left:0!important;z-index:20}.c-ellipsis{display:block;overflow:hidden!important;padding:.1rem;text-overflow:ellipsis;white-space:nowrap}.c-mat-menu{border:none}.c-mat-menu mat-icon{font-size:20px;vertical-align:middle}:host ::ng-deep .mat-paginator-container{height:32px;min-height:32px}:host ::ng-deep .mat-paginator-container .mat-icon-button{height:28px;line-height:28px;width:28px}"]}]}],"members":{"option":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":34,"character":3}}]}],"modal":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":35,"character":3},"arguments":["modal"]}]}],"paginator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":48,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/material/paginator","name":"MatPaginator","line":48,"character":13}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":59,"character":17},{"__symbolic":"reference","module":"@sd-angular/core/export","name":"SdExportService","line":60,"character":27},{"__symbolic":"reference","module":"@sd-angular/core/translate","name":"SdTranslateService","line":61,"character":30},{"__symbolic":"reference","module":"@sd-angular/core/notify","name":"SdNotifyService","line":62,"character":27},{"__symbolic":"reference","module":"@sd-angular/core/loading","name":"SdLoadingService","line":63,"character":28}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"SdUploadExcelModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":17,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":19,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":20,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"ngx-device-detector","name":"DeviceDetectorModule","line":21,"character":4},"member":"forRoot"}},{"__symbolic":"reference","module":"@angular/material/slide-toggle","name":"MatSlideToggleModule","line":22,"character":4},{"__symbolic":"reference","module":"@angular/material/tooltip","name":"MatTooltipModule","line":23,"character":4},{"__symbolic":"reference","module":"@angular/material/paginator","name":"MatPaginatorModule","line":24,"character":4},{"__symbolic":"reference","module":"@angular/material/slide-toggle","name":"MatSlideToggleModule","line":25,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/notify","name":"SdNotifyModule","line":26,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/translate","name":"SdTranslateModule","line":27,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/utility","name":"SdUtilityModule","line":28,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/button","name":"SdButtonModule","line":29,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/modal","name":"SdModalModule","line":30,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/input","name":"SdInputModule","line":31,"character":4},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":32,"character":4},{"__symbolic":"reference","module":"@angular/material/menu","name":"MatMenuModule","line":33,"character":4}],"declarations":[{"__symbolic":"reference","name":"SdUploadExcel"}],"exports":[{"__symbolic":"reference","name":"SdUploadExcel"}],"providers":[]}]}],"members":{}}},"origins":{"SdUploadExcelOption":"./src/lib/upload-excel.model","SdUploadExcelColumn":"./src/lib/upload-excel.model","SdUploadExcelBaseColumn":"./src/lib/upload-excel.model","SdUploadExcelColumnString":"./src/lib/upload-excel.model","SdUploadExcelColumnNumber":"./src/lib/upload-excel.model","SdUploadExcelColumnBool":"./src/lib/upload-excel.model","SdUploadExcelColumnDate":"./src/lib/upload-excel.model","SdUploadExcelColumnTime":"./src/lib/upload-excel.model","SdUploadExcelColumnDateTime":"./src/lib/upload-excel.model","SdUploadExcelColumnValues":"./src/lib/upload-excel.model","SdUploadExcelColumnStringArray":"./src/lib/upload-excel.model","SdUploadExcelValidation":"./src/lib/upload-excel.model","ExcelItem":"./src/lib/upload-excel.model","SdUploadExcel":"./src/lib/upload-excel.component","SdUploadExcelModule":"./src/lib/upload-excel.module"},"importAs":"@sd-angular/core/upload-excel"}
1
+ {"__symbolic":"module","version":4,"metadata":{"SdUploadExcelOption":{"__symbolic":"interface"},"SdUploadExcelColumn":{"__symbolic":"interface"},"SdUploadExcelBaseColumn":{"__symbolic":"interface"},"SdUploadExcelColumnString":{"__symbolic":"interface"},"SdUploadExcelColumnNumber":{"__symbolic":"interface"},"SdUploadExcelColumnBool":{"__symbolic":"interface"},"SdUploadExcelColumnDate":{"__symbolic":"interface"},"SdUploadExcelColumnTime":{"__symbolic":"interface"},"SdUploadExcelColumnDateTime":{"__symbolic":"interface"},"SdUploadExcelColumnValues":{"__symbolic":"interface"},"SdUploadExcelColumnStringArray":{"__symbolic":"interface"},"SdUploadExcelValidation":{"__symbolic":"interface"},"ExcelItem":{"__symbolic":"interface"},"SdUploadExcel":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":28,"character":1},"arguments":[{"selector":"sd-upload-excel","template":"<sd-modal [title]=\"(option?.title || 'Import Excel')| sdTranslate\" #modal>\r\n <sd-modal-body background=\"#F0F8FF\">\r\n <div class=\"row mx-0 mb-10\">\r\n <sd-button *ngIf=\"items?.length\" class=\"mr-5\" (action)=\"view('ALL')\" icon=\"cached\"\r\n [title]=\"'View all' | sdTranslate\" size=\"sm\"></sd-button>\r\n <sd-button *ngIf=\"numberOfSuccess\" class=\"mr-5\" (action)=\"view('SUCCESS')\" icon=\"done\" [title]=\"numberOfSuccess\"\r\n [tooltip]=\"'Number of success rows' | sdTranslate\" size=\"sm\" color=\"success\"></sd-button>\r\n <sd-button *ngIf=\"numberOfWarning\" class=\"mr-5\" (action)=\"view('WARNING')\" icon=\"warning\"\r\n [title]=\"numberOfWarning\" [tooltip]=\"'Number of warning rows' | sdTranslate\" size=\"sm\"></sd-button>\r\n <sd-button *ngIf=\"numberOfError\" class=\"mr-5\" (action)=\"view('ERROR')\" icon=\"error\" [title]=\"numberOfError\"\r\n color=\"danger\" [tooltip]=\"'Number of error rows' | sdTranslate\" size=\"sm\"></sd-button>\r\n </div>\r\n <div class=\"sd-box\">\r\n <div class=\"sd-box-body p-0\">\r\n <div class=\"table-responsive\" style=\"position: relative; height:50vh\">\r\n <table class=\"table table-striped table-sm table-hover table-bordered\">\r\n <thead class=\"thead-light\">\r\n <tr>\r\n <th class=\"text-center position-sticky c-sticky-left\" style=\"width: 50px\">#</th>\r\n <th *ngIf=\"filteredItems?.length\" class=\"text-center\" style=\"min-width: 250px; width: 250px\">\r\n {{'Upload message' | sdTranslate}}</th>\r\n <ng-container *ngFor=\"let column of option.columns\">\r\n <th *ngIf=\"column | columnHidden\"\r\n [ngStyle]=\"{'min-width':column.width ? column.width : '300px'}\" [matTooltip]=\"column.title\">\r\n <span class=\"c-ellipsis\"\r\n [ngStyle]=\"{'min-width':column.width ? column.width : '300px', 'max-width':column.width ? column.width : '300px'}\">{{column.title}}</span>\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </thead>\r\n <tbody *ngIf=\"viewItems.length\">\r\n <tr *ngFor=\"let item of viewItems\">\r\n <td class=\"text-center position-sticky c-sticky-left\" style=\"width: 50px\">\r\n <span class=\"badge\"\r\n [ngClass]=\"{'badge-success':!item.validation?.warning && !item.validation?.error, 'badge-warning':item.validation?.warning && !item.validation?.error, 'badge-danger':item.validation?.error}\"\r\n style=\"width: 100%\">{{item.excelIndex}}</span>\r\n </td>\r\n <td style=\"min-width: 250px; width: 250px\">\r\n <div\r\n [innerHtml]=\"item.validation?.error || item.validation?.warning || item.validation?.success || ('Success' | sdTranslate)\">\r\n </div>\r\n </td>\r\n <ng-container *ngFor=\"let column of option.columns\">\r\n <td *ngIf=\"column | columnHidden\" class=\"align-middle\"\r\n [ngClass]=\"{'table-warning':item.validation?.data[column.field]?.warning && !item.validation?.data[column.field]?.error, 'table-danger':item.validation?.data[column.field]?.error}\"\r\n [matTooltip]=\"item.validation?.data[column.field]?.error || item.validation?.data[column.field]?.warning\"\r\n [ngStyle]=\"{'min-width':column.width ? column.width : '300px'}\" matTooltipPosition=\"above\">\r\n <span class=\"c-ellipsis\">\r\n <ng-container *ngIf=\"column.type === 'date' || column.type === 'datetime' && item.origin\">\r\n {{item.origin[column.field] | columnTransform:item:column | async}}\r\n </ng-container>\r\n <ng-container *ngIf=\"column.type === 'number'\">\r\n {{item.validation?.data[column.field]?.error ? (item[column.field] | columnTransform:item:column | async): (item[column.field] | number :\r\n '1.0-2')}}\r\n </ng-container>\r\n <ng-container *ngIf=\"column.type === 'array'\">\r\n {{item[column.field]?.split(column.divideString)?.length}} {{column.unitString}}\r\n <button mat-button [matMenuTriggerFor]=\"menu\" class=\"c-mat-menu\">\r\n <mat-icon>open_in_new</mat-icon>\r\n </button>\r\n <mat-menu #menu=\"matMenu\">\r\n <div class=\"row mx-0\">\r\n <div class=\"col-6\" *ngFor=\"let itemArray of item[column.field]?.split(column.divideString)\">\r\n {{itemArray | columnTransform:item:column | async}}\r\n </div>\r\n </div>\r\n </mat-menu>\r\n </ng-container>\r\n <ng-container\r\n *ngIf=\"column.type !== 'date' && column.type !== 'datetime' && column.type !== 'number' && column.type !== 'array'\">\r\n <!-- {{item[column.field]}} -->\r\n {{item[column.field] | columnTransform:item:column | async}}\r\n\r\n </ng-container>\r\n </span>\r\n </td>\r\n </ng-container>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n </div>\r\n <div class=\"sd-box-footer clearfix\">\r\n <div style=\"display: flex; align-items: center; align-content: space-between;\">\r\n <div style=\"flex: 1;\" [innerHTML]=\"option?.note\">\r\n </div>\r\n <div style=\"flex: 1;\">\r\n <mat-paginator [length]=\"filteredItems?.length || 0\" hidePageSize>\r\n </mat-paginator>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </sd-modal-body>\r\n <sd-modal-footer *sdDesktop>\r\n <div class=\"mr-auto\">\r\n <sd-button class=\"mr-5\" (action)=\"upload()\" icon=\"file_upload\" [title]=\"'Upload' | sdTranslate\" size=\"sm\"\r\n color=\"info\"></sd-button>\r\n <sd-button class=\"mr-5\" (action)=\"downloadTemplate()\" icon=\"file_download\" [loading]=\"isDownloadTemplate\"\r\n [title]=\"'Download template' | sdTranslate\" color=\"info\" type=\"outline\" size=\"sm\">\r\n </sd-button>\r\n </div>\r\n <sd-button *ngIf=\"filteredItems?.length\" class=\"mr-5\" (action)=\"export()\" icon=\"get_app\"\r\n [title]=\"'Download result' | sdTranslate\" size=\"sm\" color=\"info\" type=\"outline\">\r\n </sd-button>\r\n <sd-button (action)=\"accept()\" [title]=\"'Accept' | sdTranslate\"\r\n [disabled]=\"numberOfSuccess === 0 || numberOfError > 0 || isUploaded\" color=\"primary\" type=\"fill\" size=\"sm\">\r\n </sd-button>\r\n </sd-modal-footer>\r\n <sd-modal-footer *sdMobileTablet>\r\n <sd-button style=\"flex: 1; padding-right: 5px;\" (action)=\"upload()\" icon=\"file_upload\"\r\n [title]=\"'Upload' | sdTranslate\" width=\"100%\" size=\"sm\" color=\"info\"></sd-button>\r\n <sd-button style=\"flex: 1; padding-left: 5px;\" (action)=\"accept()\" icon=\"check\" [title]=\"'Accept' | sdTranslate\"\r\n [disabled]=\"numberOfSuccess === 0 || numberOfError > 0\" color=\"success\" width=\"100%\" size=\"sm\"></sd-button>\r\n </sd-modal-footer>\r\n</sd-modal>","styles":[".table thead td,.table thead th{padding-bottom:5px;padding-top:5px}.table-striped tbody tr:nth-of-type(2n) .c-sticky-left{background-color:#fff}.table-striped tbody tr:nth-of-type(odd) .c-sticky-left{background-color:#f2f2f2}.c-sticky-left{border-left:none!important;border-right:none!important;left:0!important;z-index:20}.c-ellipsis{display:block;overflow:hidden!important;padding:.1rem;text-overflow:ellipsis;white-space:nowrap}.c-mat-menu{border:none}.c-mat-menu mat-icon{font-size:20px;vertical-align:middle}:host ::ng-deep .mat-paginator-container{height:32px;min-height:32px}:host ::ng-deep .mat-paginator-container .mat-icon-button{height:28px;line-height:28px;width:28px}"]}]}],"members":{"option":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":3}}]}],"modal":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":36,"character":3},"arguments":["modal"]}]}],"paginator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":49,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/material/paginator","name":"MatPaginator","line":49,"character":13}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":60,"character":17},{"__symbolic":"reference","module":"@sd-angular/core/export","name":"SdExportService","line":61,"character":27},{"__symbolic":"reference","module":"@sd-angular/core/translate","name":"SdTranslateService","line":62,"character":30},{"__symbolic":"reference","module":"@sd-angular/core/notify","name":"SdNotifyService","line":63,"character":27},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","module":"@sd-angular/core/loading","name":"SdLoadingService","line":65,"character":28}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"SdUploadExcelModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":18,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":20,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":21,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"ngx-device-detector","name":"DeviceDetectorModule","line":22,"character":4},"member":"forRoot"}},{"__symbolic":"reference","module":"@angular/material/slide-toggle","name":"MatSlideToggleModule","line":23,"character":4},{"__symbolic":"reference","module":"@angular/material/tooltip","name":"MatTooltipModule","line":24,"character":4},{"__symbolic":"reference","module":"@angular/material/paginator","name":"MatPaginatorModule","line":25,"character":4},{"__symbolic":"reference","module":"@angular/material/slide-toggle","name":"MatSlideToggleModule","line":26,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/notify","name":"SdNotifyModule","line":27,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/translate","name":"SdTranslateModule","line":28,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/utility","name":"SdUtilityModule","line":29,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/button","name":"SdButtonModule","line":30,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/modal","name":"SdModalModule","line":31,"character":4},{"__symbolic":"reference","module":"@sd-angular/core/input","name":"SdInputModule","line":32,"character":4},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":33,"character":4},{"__symbolic":"reference","module":"@angular/material/menu","name":"MatMenuModule","line":34,"character":4}],"declarations":[{"__symbolic":"reference","name":"SdUploadExcel"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵb"}],"exports":[{"__symbolic":"reference","name":"SdUploadExcel"}],"providers":[]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":2,"character":1},"arguments":[{"name":"columnHidden"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"transform":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":2,"character":1},"arguments":[{"name":"columnTransform"}]}],"members":{}}},"origins":{"SdUploadExcelOption":"./src/lib/upload-excel.model","SdUploadExcelColumn":"./src/lib/upload-excel.model","SdUploadExcelBaseColumn":"./src/lib/upload-excel.model","SdUploadExcelColumnString":"./src/lib/upload-excel.model","SdUploadExcelColumnNumber":"./src/lib/upload-excel.model","SdUploadExcelColumnBool":"./src/lib/upload-excel.model","SdUploadExcelColumnDate":"./src/lib/upload-excel.model","SdUploadExcelColumnTime":"./src/lib/upload-excel.model","SdUploadExcelColumnDateTime":"./src/lib/upload-excel.model","SdUploadExcelColumnValues":"./src/lib/upload-excel.model","SdUploadExcelColumnStringArray":"./src/lib/upload-excel.model","SdUploadExcelValidation":"./src/lib/upload-excel.model","ExcelItem":"./src/lib/upload-excel.model","SdUploadExcel":"./src/lib/upload-excel.component","SdUploadExcelModule":"./src/lib/upload-excel.module","ɵa":"./src/lib/pipes/columm-hidden.pipe","ɵb":"./src/lib/pipes/column-transform.pipe"},"importAs":"@sd-angular/core/upload-excel"}
@@ -0,0 +1,6 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdUploadExcelColumn } from '../upload-excel.model';
3
+ export declare class SdColumnHiddenPipe implements PipeTransform {
4
+ constructor();
5
+ transform(column: SdUploadExcelColumn): boolean;
6
+ }
@@ -0,0 +1,5 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdUploadExcelColumn } from '../upload-excel.model';
3
+ export declare class SdColumnTransformPipe implements PipeTransform {
4
+ transform: (value: any, rowData: any, column: SdUploadExcelColumn) => Promise<string>;
5
+ }
@@ -6,12 +6,14 @@ import { MatPaginator } from '@angular/material/paginator';
6
6
  import { SdModal } from '@sd-angular/core/modal';
7
7
  import { SdUploadExcelOption, SdUploadExcelValidation } from './upload-excel.model';
8
8
  import { SdExportService } from '@sd-angular/core/export';
9
+ import { SdColumnHiddenPipe } from './pipes/columm-hidden.pipe';
9
10
  export declare class SdUploadExcel implements OnInit, OnDestroy {
10
11
  #private;
11
12
  private ref;
12
13
  private exportService;
13
14
  private translateService;
14
15
  private notifyService;
16
+ private sdColumnHidden;
15
17
  private loadingService;
16
18
  private importId;
17
19
  option: SdUploadExcelOption;
@@ -29,7 +31,7 @@ export declare class SdUploadExcel implements OnInit, OnDestroy {
29
31
  set paginator(paginator: MatPaginator);
30
32
  isUploaded: boolean;
31
33
  isDownloadTemplate: boolean;
32
- constructor(ref: ChangeDetectorRef, exportService: SdExportService, translateService: SdTranslateService, notifyService: SdNotifyService, loadingService: SdLoadingService);
34
+ constructor(ref: ChangeDetectorRef, exportService: SdExportService, translateService: SdTranslateService, notifyService: SdNotifyService, sdColumnHidden: SdColumnHiddenPipe, loadingService: SdLoadingService);
33
35
  ngOnInit(): void;
34
36
  ngOnDestroy(): void;
35
37
  open: () => void;
@@ -15,7 +15,7 @@ export interface SdUploadExcelOption<T = any> {
15
15
  fields: string[];
16
16
  }[];
17
17
  onAccept?: (items?: T[], successItems?: T[], errorItems?: T[], warningItems?: T[], file?: File) => void | Promise<void>;
18
- mappingItems?: (items: T[]) => T[];
18
+ mappingItems?: (items: T[]) => T[] | Promise<T[]>;
19
19
  errorValidation?: (items?: ExcelItem<T>[]) => Validation[] | Promise<Validation[]>;
20
20
  warningValidation?: (items?: ExcelItem<T>[]) => Validation[] | Promise<Validation[]>;
21
21
  }
@@ -26,7 +26,8 @@ export interface SdUploadExcelBaseColumn<T = any> {
26
26
  required?: boolean;
27
27
  width?: string;
28
28
  description?: string;
29
- hidden?: boolean;
29
+ hidden?: boolean | (() => boolean);
30
+ transform?: (value: any, rowData: T) => string | Promise<string>;
30
31
  mappingDisplay?: (item?: T, value?: any) => string | Promise<string>;
31
32
  errorValidation?: (item?: T, value?: any) => string | Promise<string>;
32
33
  warningValidation?: (item?: T, value?: any) => string | Promise<string>;