@sd-angular/core 1.3.242 → 1.3.244

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 (125) hide show
  1. package/autocomplete/sd-angular-core-autocomplete.metadata.json +1 -1
  2. package/bundles/sd-angular-core-autocomplete.umd.js +20 -21
  3. package/bundles/sd-angular-core-autocomplete.umd.js.map +1 -1
  4. package/bundles/sd-angular-core-autocomplete.umd.min.js +1 -15
  5. package/bundles/sd-angular-core-autocomplete.umd.min.js.map +1 -1
  6. package/bundles/sd-angular-core-date-full.umd.js +712 -0
  7. package/bundles/sd-angular-core-date-full.umd.js.map +1 -0
  8. package/bundles/sd-angular-core-date-full.umd.min.js +2 -0
  9. package/bundles/sd-angular-core-date-full.umd.min.js.map +1 -0
  10. package/bundles/sd-angular-core-date-time.umd.js +5 -6
  11. package/bundles/sd-angular-core-date-time.umd.js.map +1 -1
  12. package/bundles/sd-angular-core-date-time.umd.min.js +1 -1
  13. package/bundles/sd-angular-core-date-time.umd.min.js.map +1 -1
  14. package/bundles/sd-angular-core-date.umd.js +719 -0
  15. package/bundles/sd-angular-core-date.umd.js.map +1 -0
  16. package/bundles/sd-angular-core-date.umd.min.js +2 -0
  17. package/bundles/sd-angular-core-date.umd.min.js.map +1 -0
  18. package/bundles/sd-angular-core-export.umd.js +3 -1
  19. package/bundles/sd-angular-core-export.umd.js.map +1 -1
  20. package/bundles/sd-angular-core-export.umd.min.js +1 -1
  21. package/bundles/sd-angular-core-export.umd.min.js.map +1 -1
  22. package/bundles/sd-angular-core-form.umd.js +10 -4
  23. package/bundles/sd-angular-core-form.umd.js.map +1 -1
  24. package/bundles/sd-angular-core-form.umd.min.js +1 -1
  25. package/bundles/sd-angular-core-form.umd.min.js.map +1 -1
  26. package/bundles/sd-angular-core-input-number.umd.js +7 -10
  27. package/bundles/sd-angular-core-input-number.umd.js.map +1 -1
  28. package/bundles/sd-angular-core-input-number.umd.min.js +2 -2
  29. package/bundles/sd-angular-core-input-number.umd.min.js.map +1 -1
  30. package/bundles/sd-angular-core-month.umd.js +742 -0
  31. package/bundles/sd-angular-core-month.umd.js.map +1 -0
  32. package/bundles/sd-angular-core-month.umd.min.js +2 -0
  33. package/bundles/sd-angular-core-month.umd.min.js.map +1 -0
  34. package/bundles/sd-angular-core-table.umd.js +11 -3
  35. package/bundles/sd-angular-core-table.umd.js.map +1 -1
  36. package/bundles/sd-angular-core-table.umd.min.js +1 -1
  37. package/bundles/sd-angular-core-table.umd.min.js.map +1 -1
  38. package/bundles/sd-angular-core-upload-excel.umd.js +4 -4
  39. package/bundles/sd-angular-core-upload-excel.umd.js.map +1 -1
  40. package/bundles/sd-angular-core-upload-excel.umd.min.js +2 -2
  41. package/bundles/sd-angular-core-upload-excel.umd.min.js.map +1 -1
  42. package/bundles/sd-angular-core.umd.js +4 -4
  43. package/bundles/sd-angular-core.umd.min.js +1 -1
  44. package/bundles/sd-angular-core.umd.min.js.map +1 -1
  45. package/date/index.d.ts +1 -0
  46. package/date/package.json +12 -0
  47. package/date/sd-angular-core-date.d.ts +4 -0
  48. package/date/sd-angular-core-date.metadata.json +1 -0
  49. package/date/src/lib/date.component.d.ts +63 -0
  50. package/date/src/lib/date.module.d.ts +2 -0
  51. package/date/src/public-api.d.ts +2 -0
  52. package/date-full/index.d.ts +1 -0
  53. package/date-full/package.json +12 -0
  54. package/date-full/sd-angular-core-date-full.d.ts +4 -0
  55. package/date-full/sd-angular-core-date-full.metadata.json +1 -0
  56. package/date-full/src/lib/date-full.component.d.ts +64 -0
  57. package/date-full/src/lib/date-full.module.d.ts +2 -0
  58. package/date-full/src/public-api.d.ts +2 -0
  59. package/date-time/sd-angular-core-date-time.metadata.json +1 -1
  60. package/esm2015/autocomplete/src/lib/autocomplete.component.js +2 -2
  61. package/esm2015/autocomplete/src/lib/autocomplete.module.js +8 -10
  62. package/esm2015/date/index.js +2 -0
  63. package/esm2015/date/sd-angular-core-date.js +5 -0
  64. package/esm2015/date/src/lib/date.component.js +310 -0
  65. package/esm2015/date/src/lib/date.module.js +38 -0
  66. package/esm2015/date/src/public-api.js +3 -0
  67. package/esm2015/date-full/index.js +2 -0
  68. package/esm2015/date-full/sd-angular-core-date-full.js +5 -0
  69. package/esm2015/date-full/src/lib/date-full.component.js +303 -0
  70. package/esm2015/date-full/src/lib/date-full.module.js +40 -0
  71. package/esm2015/date-full/src/public-api.js +3 -0
  72. package/esm2015/date-time/src/lib/date-time.component.js +2 -2
  73. package/esm2015/date-time/src/lib/date-time.module.js +10 -12
  74. package/esm2015/export/src/lib/export.model.js +1 -1
  75. package/esm2015/export/src/lib/export.service.js +4 -2
  76. package/esm2015/form/src/lib/form.module.js +21 -12
  77. package/esm2015/input-number/src/lib/input-number.component.js +2 -2
  78. package/esm2015/input-number/src/lib/input-number.module.js +3 -7
  79. package/esm2015/month/index.js +2 -0
  80. package/esm2015/month/sd-angular-core-month.js +5 -0
  81. package/esm2015/month/src/lib/month.component.js +334 -0
  82. package/esm2015/month/src/lib/month.module.js +40 -0
  83. package/esm2015/month/src/public-api.js +3 -0
  84. package/esm2015/public-api.js +4 -1
  85. package/esm2015/table/src/lib/table.component.js +12 -4
  86. package/esm2015/upload-excel/src/lib/upload-excel.component.js +4 -4
  87. package/export/sd-angular-core-export.metadata.json +1 -1
  88. package/export/src/lib/export.model.d.ts +15 -34
  89. package/export/src/lib/export.service.d.ts +3 -3
  90. package/fesm2015/sd-angular-core-autocomplete.js +8 -10
  91. package/fesm2015/sd-angular-core-autocomplete.js.map +1 -1
  92. package/fesm2015/sd-angular-core-date-full.js +344 -0
  93. package/fesm2015/sd-angular-core-date-full.js.map +1 -0
  94. package/fesm2015/sd-angular-core-date-time.js +12 -14
  95. package/fesm2015/sd-angular-core-date-time.js.map +1 -1
  96. package/fesm2015/sd-angular-core-date.js +349 -0
  97. package/fesm2015/sd-angular-core-date.js.map +1 -0
  98. package/fesm2015/sd-angular-core-export.js +3 -1
  99. package/fesm2015/sd-angular-core-export.js.map +1 -1
  100. package/fesm2015/sd-angular-core-form.js +19 -10
  101. package/fesm2015/sd-angular-core-form.js.map +1 -1
  102. package/fesm2015/sd-angular-core-input-number.js +3 -7
  103. package/fesm2015/sd-angular-core-input-number.js.map +1 -1
  104. package/fesm2015/sd-angular-core-month.js +374 -0
  105. package/fesm2015/sd-angular-core-month.js.map +1 -0
  106. package/fesm2015/sd-angular-core-table.js +11 -3
  107. package/fesm2015/sd-angular-core-table.js.map +1 -1
  108. package/fesm2015/sd-angular-core-upload-excel.js +2 -2
  109. package/fesm2015/sd-angular-core-upload-excel.js.map +1 -1
  110. package/fesm2015/sd-angular-core.js +3 -0
  111. package/fesm2015/sd-angular-core.js.map +1 -1
  112. package/form/sd-angular-core-form.metadata.json +1 -1
  113. package/input-number/sd-angular-core-input-number.metadata.json +1 -1
  114. package/month/index.d.ts +1 -0
  115. package/month/package.json +12 -0
  116. package/month/sd-angular-core-month.d.ts +4 -0
  117. package/month/sd-angular-core-month.metadata.json +1 -0
  118. package/month/src/lib/month.component.d.ts +66 -0
  119. package/month/src/lib/month.module.d.ts +2 -0
  120. package/month/src/public-api.d.ts +2 -0
  121. package/package.json +1 -1
  122. package/public-api.d.ts +3 -0
  123. package/{sd-angular-core-1.3.242.tgz → sd-angular-core-1.3.244.tgz} +0 -0
  124. package/upload-excel/sd-angular-core-upload-excel.metadata.json +1 -1
  125. package/upload-excel/src/lib/upload-excel.component.d.ts +4 -4
@@ -0,0 +1,66 @@
1
+ import { EventEmitter, OnDestroy, AfterViewInit, ChangeDetectorRef, OnInit, ElementRef } from '@angular/core';
2
+ import { Moment } from 'moment';
3
+ import { FormGroup, NgForm, ValidatorFn } from '@angular/forms';
4
+ import { DeviceDetectorService } from 'ngx-device-detector';
5
+ import { MatDatepicker, MatDatepickerInputEvent } from '@angular/material/datepicker';
6
+ import { IFormConfiguration, SdFormControl, SdViewDefDirective } from '@sd-angular/core/common';
7
+ import { MatFormFieldAppearance } from '@angular/material/form-field';
8
+ import { SdLabelDefDirective } from '@sd-angular/core/common';
9
+ export declare class SdMonth implements OnDestroy, OnInit, AfterViewInit {
10
+ #private;
11
+ private ref;
12
+ private formConfig;
13
+ id: string;
14
+ isMobileOrTablet: boolean;
15
+ set name(val: string);
16
+ appearance: MatFormFieldAppearance;
17
+ disableErrorMessage: boolean;
18
+ set _disableErrorMessage(val: boolean | '');
19
+ formControl: SdFormControl;
20
+ min: Date;
21
+ set _min(val: string | Date | number);
22
+ max: Date;
23
+ set _max(val: string | Date | number);
24
+ size: 'sm' | 'lg';
25
+ set form(val: NgForm | FormGroup);
26
+ maxlength: number;
27
+ set disabled(val: boolean | '');
28
+ required: boolean;
29
+ set _required(val: boolean | '');
30
+ inlineError: string;
31
+ set _inlineError(val: string);
32
+ qcId: string;
33
+ label: string;
34
+ set _label(val: string);
35
+ placeholder: string;
36
+ defaultTime: any;
37
+ set minDate(val: string | Date);
38
+ set maxDate(val: string | Date);
39
+ validator: (value: any) => string | Promise<string>;
40
+ sdChange: EventEmitter<any>;
41
+ sdFocus: EventEmitter<any>;
42
+ set model(val: any);
43
+ modelChange: EventEmitter<any>;
44
+ sdView: SdViewDefDirective;
45
+ sdLabelDef: SdLabelDefDirective;
46
+ input: ElementRef;
47
+ datePicker: MatDatepicker<Moment>;
48
+ isFocused: boolean;
49
+ constructor(ref: ChangeDetectorRef, deviceService: DeviceDetectorService, formConfig: IFormConfiguration);
50
+ ngOnDestroy(): void;
51
+ ngOnInit(): void;
52
+ customInlineErrorValidator(): ValidatorFn;
53
+ ngAfterViewInit(): void;
54
+ onFocus: () => void;
55
+ onBlur: () => void;
56
+ onClick: () => void;
57
+ blur: () => void;
58
+ focus: () => void;
59
+ focusInputElement(): void;
60
+ isValid: boolean;
61
+ onKeyDown: (event: KeyboardEvent) => boolean;
62
+ onKeyup: (event: any) => void;
63
+ onChange: (event: MatDatepickerInputEvent<Moment>) => void;
64
+ clear: ($event: any) => void;
65
+ onMonthSelected: (normalizedMonthAndYear: Moment) => void;
66
+ }
@@ -0,0 +1,2 @@
1
+ export declare class SdMonthModule {
2
+ }
@@ -0,0 +1,2 @@
1
+ export { SdMonthModule } from './lib/month.module';
2
+ export { SdMonth } from './lib/month.component';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sd-angular/core",
3
- "version": "1.3.242",
3
+ "version": "1.3.244",
4
4
  "homepage": "https://www.facebook.com/DarkP3ter",
5
5
  "author": {
6
6
  "name": "darkpeter",
package/public-api.d.ts CHANGED
@@ -25,6 +25,9 @@ import '@sd-angular/core/print';
25
25
  import '@sd-angular/core/zip';
26
26
  import '@sd-angular/core/export';
27
27
  import '@sd-angular/core/table';
28
+ import '@sd-angular/core/date';
29
+ import '@sd-angular/core/month';
30
+ import '@sd-angular/core/date-full';
28
31
  export { SdCoreModule } from './lib/core.module';
29
32
  export { MaterialModule } from './lib/material.module';
30
33
  export * from './lib/material.module';
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"SdUploadExcelOption":{"__symbolic":"interface"},"SdUploadExcelSheet":{"__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"},"SdExcelItem":{"__symbolic":"interface"},"SdUploadExcel":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":22,"character":1},"arguments":[{"selector":"sd-upload-excel","template":"<sd-modal [title]=\"(option?.title || 'Import Excel')| sdTranslate\" (sdClosed)=\"onClosed()\" #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;vertical-align: middle;\">#</th>\r\n <th *ngIf=\"filteredItems?.length\" class=\"text-center\"\r\n style=\"min-width: 250px; width: 250px;vertical-align: middle;\">\r\n {{'Upload message' | sdTranslate}}</th>\r\n <ng-container *ngFor=\"let column of option.columns\">\r\n <th *ngIf=\"column | columnHidden\" [ngStyle]=\"{'min-width':column.width ? column.width : '300px'}\"\r\n [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.sd.validation?.warning && !item.sd.validation?.error, 'badge-warning':item.sd.validation?.warning && !item.sd.validation?.error, 'badge-danger':item.sd.validation?.error}\"\r\n style=\"width: 100%\">{{item.sd.excelIndex}}</span>\r\n </td>\r\n <td style=\"min-width: 250px; width: 250px\">\r\n <div\r\n [innerHtml]=\"item.sd.validation?.error || item.sd.validation?.warning || item.sd.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\" [ngClass]=\"{'table-warning':item.sd.validation?.data[column.field]?.warning && !item.sd.validation?.data[column.field]?.error, \r\n 'table-danger':item.sd.validation?.data[column.field]?.error}\"\r\n [matTooltip]=\"item.sd.validation?.data[column.field]?.error || item.sd.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 <div *ngIf=\"column.type !== 'array'\"\r\n [innerHtml]=\"item | columnTransform:column | async | safeHtml\"></div>\r\n <ng-container *ngIf=\"column.type === 'array'\">\r\n {{item.data[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.data[column.field]?.split(column.divideString)\"\r\n [innerHtml]=\"itemArray\">\r\n </div>\r\n </div>\r\n </mat-menu>\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\" [loading]=\"uploading\"></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 && numberOfWarning === 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\" [loading]=\"uploading\"></sd-button>\r\n <sd-button style=\"flex: 1; padding-left: 5px;\" (action)=\"accept()\" icon=\"check\" [title]=\"'Accept' | sdTranslate\"\r\n [disabled]=\"(numberOfSuccess === 0 && numberOfWarning === 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":29,"character":3}}]}],"modal":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":30,"character":3},"arguments":["modal"]}]}],"paginator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":43,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/material/paginator","name":"MatPaginator","line":43,"character":13}]}]}],"sdClosed":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":53,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":55,"character":17},{"__symbolic":"reference","module":"@sd-angular/core/export","name":"SdExportService","line":56,"character":27},{"__symbolic":"reference","module":"@sd-angular/core/translate","name":"SdTranslateService","line":57,"character":30},{"__symbolic":"reference","module":"@sd-angular/core/notify","name":"SdNotifyService","line":58,"character":27},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","module":"@sd-angular/core/loading","name":"SdLoadingService","line":60,"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":[{"__symbolic":"reference","module":"@angular/common","name":"DecimalPipe","line":46,"character":4},{"__symbolic":"reference","name":"ɵa"}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":2,"character":1},"arguments":[{"name":"columnHidden"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"transform":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":3,"character":1},"arguments":[{"name":"columnTransform"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common","name":"DecimalPipe","line":7,"character":35}]}]}}},"origins":{"SdUploadExcelOption":"./src/lib/upload-excel.model","SdUploadExcelSheet":"./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","SdExcelItem":"./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"}
1
+ {"__symbolic":"module","version":4,"metadata":{"SdUploadExcelOption":{"__symbolic":"interface"},"SdUploadExcelSheet":{"__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"},"SdExcelItem":{"__symbolic":"interface"},"SdUploadExcel":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":21,"character":1},"arguments":[{"selector":"sd-upload-excel","template":"<sd-modal [title]=\"(option?.title || 'Import Excel')| sdTranslate\" (sdClosed)=\"onClosed()\" #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;vertical-align: middle;\">#</th>\r\n <th *ngIf=\"filteredItems?.length\" class=\"text-center\"\r\n style=\"min-width: 250px; width: 250px;vertical-align: middle;\">\r\n {{'Upload message' | sdTranslate}}</th>\r\n <ng-container *ngFor=\"let column of option.columns\">\r\n <th *ngIf=\"column | columnHidden\" [ngStyle]=\"{'min-width':column.width ? column.width : '300px'}\"\r\n [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.sd.validation?.warning && !item.sd.validation?.error, 'badge-warning':item.sd.validation?.warning && !item.sd.validation?.error, 'badge-danger':item.sd.validation?.error}\"\r\n style=\"width: 100%\">{{item.sd.excelIndex}}</span>\r\n </td>\r\n <td style=\"min-width: 250px; width: 250px\">\r\n <div\r\n [innerHtml]=\"item.sd.validation?.error || item.sd.validation?.warning || item.sd.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\" [ngClass]=\"{'table-warning':item.sd.validation?.data[column.field]?.warning && !item.sd.validation?.data[column.field]?.error, \r\n 'table-danger':item.sd.validation?.data[column.field]?.error}\"\r\n [matTooltip]=\"item.sd.validation?.data[column.field]?.error || item.sd.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 <div *ngIf=\"column.type !== 'array'\"\r\n [innerHtml]=\"item | columnTransform:column | async | safeHtml\"></div>\r\n <ng-container *ngIf=\"column.type === 'array'\">\r\n {{item.data[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.data[column.field]?.split(column.divideString)\"\r\n [innerHtml]=\"itemArray\">\r\n </div>\r\n </div>\r\n </mat-menu>\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\" [loading]=\"uploading\"></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 && numberOfWarning === 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\" [loading]=\"uploading\"></sd-button>\r\n <sd-button style=\"flex: 1; padding-left: 5px;\" (action)=\"accept()\" icon=\"check\" [title]=\"'Accept' | sdTranslate\"\r\n [disabled]=\"(numberOfSuccess === 0 && numberOfWarning === 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":28,"character":3}}]}],"modal":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":29,"character":3},"arguments":["modal"]}]}],"paginator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":42,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/material/paginator","name":"MatPaginator","line":42,"character":13}]}]}],"sdClosed":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":52,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":54,"character":17},{"__symbolic":"reference","module":"@sd-angular/core/export","name":"SdExportService","line":55,"character":27},{"__symbolic":"reference","module":"@sd-angular/core/translate","name":"SdTranslateService","line":56,"character":30},{"__symbolic":"reference","module":"@sd-angular/core/notify","name":"SdNotifyService","line":57,"character":27},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","module":"@sd-angular/core/loading","name":"SdLoadingService","line":59,"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":[{"__symbolic":"reference","module":"@angular/common","name":"DecimalPipe","line":46,"character":4},{"__symbolic":"reference","name":"ɵa"}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":2,"character":1},"arguments":[{"name":"columnHidden"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"transform":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":3,"character":1},"arguments":[{"name":"columnTransform"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common","name":"DecimalPipe","line":7,"character":35}]}]}}},"origins":{"SdUploadExcelOption":"./src/lib/upload-excel.model","SdUploadExcelSheet":"./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","SdExcelItem":"./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"}
@@ -1,12 +1,12 @@
1
- import { OnInit, ChangeDetectorRef, OnDestroy, EventEmitter } from '@angular/core';
1
+ import { ChangeDetectorRef, EventEmitter, OnDestroy, OnInit } from '@angular/core';
2
2
  import { SdNotifyService } from '@sd-angular/core/notify';
3
3
  import { SdLoadingService } from '@sd-angular/core/loading';
4
- import { SdTranslateService } from '@sd-angular/core/translate';
5
4
  import { MatPaginator } from '@angular/material/paginator';
6
- import { SdModal } from '@sd-angular/core/modal';
7
- import { SdExcelItem, SdUploadExcelOption } from './upload-excel.model';
8
5
  import { SdExportService } from '@sd-angular/core/export';
6
+ import { SdModal } from '@sd-angular/core/modal';
7
+ import { SdTranslateService } from '@sd-angular/core/translate';
9
8
  import { SdColumnHiddenPipe } from './pipes/columm-hidden.pipe';
9
+ import { SdExcelItem, SdUploadExcelOption } from './upload-excel.model';
10
10
  export declare class SdUploadExcel implements OnInit, OnDestroy {
11
11
  #private;
12
12
  private ref;