@deeksha2309/sunbird-collection-editor 8.0.7 → 8.0.8

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 (107) hide show
  1. package/deeksha2309-sunbird-collection-editor.d.ts.map +1 -0
  2. package/esm2022/deeksha2309-sunbird-collection-editor.mjs +5 -0
  3. package/esm2022/lib/collection-editor-library.module.mjs +30 -6
  4. package/esm2022/lib/components/answer/answer.component.mjs +6 -3
  5. package/esm2022/lib/components/app-loader/app-loader.component.mjs +30 -0
  6. package/esm2022/lib/components/asset-browser/asset-browser.component.mjs +30 -12
  7. package/esm2022/lib/components/assign-page-number/assign-page-number.component.mjs +1 -1
  8. package/esm2022/lib/components/bulk-upload/bulk-upload.component.mjs +447 -0
  9. package/esm2022/lib/components/ckeditor-tool/ckeditor-tool.component.mjs +30 -12
  10. package/esm2022/lib/components/collection-icon/collection-icon.component.mjs +3 -3
  11. package/esm2022/lib/components/csv-upload/csv-upload.component.mjs +2 -2
  12. package/esm2022/lib/components/editor/editor.component.mjs +143 -64
  13. package/esm2022/lib/components/fancy-tree/fancy-tree.component.mjs +91 -9
  14. package/esm2022/lib/components/header/header.component.mjs +27 -9
  15. package/esm2022/lib/components/library/library.component.mjs +4 -4
  16. package/esm2022/lib/components/library-list/library-list.component.mjs +4 -4
  17. package/esm2022/lib/components/library-player/library-player.component.mjs +4 -4
  18. package/esm2022/lib/components/meta-form/meta-form.component.mjs +10 -18
  19. package/esm2022/lib/components/options/options.component.mjs +40 -27
  20. package/esm2022/lib/components/progress-status/progress-status.component.mjs +1 -1
  21. package/esm2022/lib/components/publish-checklist/publish-checklist.component.mjs +6 -3
  22. package/esm2022/lib/components/question/question.component.mjs +185 -77
  23. package/esm2022/lib/components/question-option-sub-menu/question-option-sub-menu.component.mjs +36 -0
  24. package/esm2022/lib/components/quml-player/quml-player.component.mjs +2 -2
  25. package/esm2022/lib/components/qumlplayer-page/qumlplayer-page.component.mjs +3 -3
  26. package/esm2022/lib/components/relational-metadata/relational-metadata.component.mjs +80 -0
  27. package/esm2022/lib/components/resource-reorder/resource-reorder.component.mjs +3 -3
  28. package/esm2022/lib/components/slider/slider.component.mjs +46 -0
  29. package/esm2022/lib/components/template/template.component.mjs +3 -3
  30. package/esm2022/lib/components/translations/translations.component.mjs +132 -0
  31. package/esm2022/lib/directives/date-format/date-format.pipe.mjs +34 -0
  32. package/esm2022/lib/interfaces/CreationContext.mjs +2 -0
  33. package/esm2022/lib/interfaces/editor.mjs +1 -1
  34. package/esm2022/lib/interfaces/loader.mjs +2 -0
  35. package/esm2022/lib/pipes/interpolate.pipe.mjs +17 -0
  36. package/esm2022/lib/pipes/sanitize-html.pipe.mjs +6 -8
  37. package/esm2022/lib/services/bulk-job/bulk-job.service.mjs +67 -0
  38. package/esm2022/lib/services/config/category.config.json +1 -0
  39. package/esm2022/lib/services/config/editor.config.json +29 -2
  40. package/esm2022/lib/services/config/label.config.json +16 -3
  41. package/esm2022/lib/services/config/player.config.json +3 -0
  42. package/esm2022/lib/services/config/url.config.json +17 -1
  43. package/esm2022/lib/services/editor/editor.service.mjs +64 -26
  44. package/esm2022/lib/services/question/question.service.mjs +27 -35
  45. package/esm2022/lib/services/tree/tree.service.mjs +20 -5
  46. package/fesm2022/{project-sunbird-sunbird-collection-editor.mjs → deeksha2309-sunbird-collection-editor.mjs} +1779 -483
  47. package/fesm2022/deeksha2309-sunbird-collection-editor.mjs.map +1 -0
  48. package/index.d.ts +2 -2
  49. package/lib/collection-editor-library.module.d.ts +51 -43
  50. package/lib/collection-editor-library.module.d.ts.map +1 -1
  51. package/lib/components/answer/answer.component.d.ts +2 -1
  52. package/lib/components/answer/answer.component.d.ts.map +1 -1
  53. package/lib/components/app-loader/app-loader.component.d.ts +18 -0
  54. package/lib/components/app-loader/app-loader.component.d.ts.map +1 -0
  55. package/lib/components/asset-browser/asset-browser.component.d.ts.map +1 -1
  56. package/lib/components/bulk-upload/bulk-upload.component.d.ts +71 -0
  57. package/lib/components/bulk-upload/bulk-upload.component.d.ts.map +1 -0
  58. package/lib/components/ckeditor-tool/ckeditor-tool.component.d.ts +1 -1
  59. package/lib/components/ckeditor-tool/ckeditor-tool.component.d.ts.map +1 -1
  60. package/lib/components/editor/editor.component.d.ts +11 -7
  61. package/lib/components/editor/editor.component.d.ts.map +1 -1
  62. package/lib/components/fancy-tree/fancy-tree.component.d.ts +11 -3
  63. package/lib/components/fancy-tree/fancy-tree.component.d.ts.map +1 -1
  64. package/lib/components/header/header.component.d.ts +6 -2
  65. package/lib/components/header/header.component.d.ts.map +1 -1
  66. package/lib/components/library/library.component.d.ts +1 -1
  67. package/lib/components/library/library.component.d.ts.map +1 -1
  68. package/lib/components/meta-form/meta-form.component.d.ts +3 -4
  69. package/lib/components/meta-form/meta-form.component.d.ts.map +1 -1
  70. package/lib/components/options/options.component.d.ts +15 -7
  71. package/lib/components/options/options.component.d.ts.map +1 -1
  72. package/lib/components/publish-checklist/publish-checklist.component.d.ts +2 -1
  73. package/lib/components/publish-checklist/publish-checklist.component.d.ts.map +1 -1
  74. package/lib/components/question/question.component.d.ts +21 -28
  75. package/lib/components/question/question.component.d.ts.map +1 -1
  76. package/lib/components/question-option-sub-menu/question-option-sub-menu.component.d.ts +27 -0
  77. package/lib/components/question-option-sub-menu/question-option-sub-menu.component.d.ts.map +1 -0
  78. package/lib/components/relational-metadata/relational-metadata.component.d.ts +25 -0
  79. package/lib/components/relational-metadata/relational-metadata.component.d.ts.map +1 -0
  80. package/lib/components/slider/slider.component.d.ts +25 -0
  81. package/lib/components/slider/slider.component.d.ts.map +1 -0
  82. package/lib/components/translations/translations.component.d.ts +70 -0
  83. package/lib/components/translations/translations.component.d.ts.map +1 -0
  84. package/lib/directives/date-format/date-format.pipe.d.ts +20 -0
  85. package/lib/directives/date-format/date-format.pipe.d.ts.map +1 -0
  86. package/lib/interfaces/CreationContext.d.ts +11 -0
  87. package/lib/interfaces/CreationContext.d.ts.map +1 -0
  88. package/lib/interfaces/editor.d.ts +10 -5
  89. package/lib/interfaces/editor.d.ts.map +1 -1
  90. package/lib/interfaces/loader.d.ts +11 -0
  91. package/lib/interfaces/loader.d.ts.map +1 -0
  92. package/lib/pipes/interpolate.pipe.d.ts +8 -0
  93. package/lib/pipes/interpolate.pipe.d.ts.map +1 -0
  94. package/lib/pipes/sanitize-html.pipe.d.ts +4 -4
  95. package/lib/pipes/sanitize-html.pipe.d.ts.map +1 -1
  96. package/lib/services/bulk-job/bulk-job.service.d.ts +17 -0
  97. package/lib/services/bulk-job/bulk-job.service.d.ts.map +1 -0
  98. package/lib/services/editor/editor.service.d.ts +7 -4
  99. package/lib/services/editor/editor.service.d.ts.map +1 -1
  100. package/lib/services/question/question.service.d.ts +2 -2
  101. package/lib/services/question/question.service.d.ts.map +1 -1
  102. package/lib/services/tree/tree.service.d.ts +3 -1
  103. package/lib/services/tree/tree.service.d.ts.map +1 -1
  104. package/package.json +5 -5
  105. package/esm2022/project-sunbird-sunbird-collection-editor.mjs +0 -5
  106. package/fesm2022/project-sunbird-sunbird-collection-editor.mjs.map +0 -1
  107. package/project-sunbird-sunbird-collection-editor.d.ts.map +0 -1
@@ -28,11 +28,11 @@ export class CollectionIconComponent {
28
28
  this.showImagePicker = false;
29
29
  }
30
30
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CollectionIconComponent, deps: [{ token: i1.ConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
31
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CollectionIconComponent, selector: "lib-collection-icon", inputs: { appIcon: "appIcon", appIconConfig: "appIconConfig" }, outputs: { iconEmitter: "iconEmitter" }, ngImport: i0, template: "<ng-container>\n <div (click)=\"initializeImagePicker()\" class=\"mb-20 w-15\">\n <div class=\"app-icon-label\" [attr.data-title]=\"appIconConfig?.description ? appIconConfig?.description : null\">{{appIconConfig?.label}}</div>\n <div *ngIf='!appIcon' class=\"sb-centericon\">\n <div>\n <i id=\"icon_appIcon\" name=\"icon_appIcon\" class=\"icon image outline\" ></i>\n </div>\n <div class=\"addImageText\">{{configService.labelConfig?.lbl?.addAnImage}}</div>\n </div>\n <img *ngIf=\"appIcon\" \n class=\"ui image sb-appicon\" \n src=\"{{appIcon}}\"/>\n </div>\n <lib-asset-browser *ngIf=\"showImagePicker\" [showImagePicker]=\"showImagePicker\" (assetBrowserEmitter)=\"collectionIconHandler($event)\" (modalDismissEmitter)=\"handleModalDismiss($event)\"></lib-asset-browser>\n</ng-container>", styles: [".sb-appicon{height:110px;width:120px;border:solid 1px #ccc;padding:5px}.sb-centericon{height:110px;width:120px;border:solid 1px #ccc;padding:10px;display:flex;justify-content:center;align-items:center;flex-direction:column}.addImageText{font-size:.8rem!important}.w-15{width:15%;max-width:15%}.app-icon-label{font-size:12px!important;margin-bottom:.5rem!important;color:#121213e0;font-weight:600}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.AssetBrowserComponent, selector: "lib-asset-browser", inputs: ["showImagePicker"], outputs: ["assetBrowserEmitter", "modalDismissEmitter"] }] }); }
31
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CollectionIconComponent, selector: "lib-collection-icon", inputs: { appIcon: "appIcon", appIconConfig: "appIconConfig" }, outputs: { iconEmitter: "iconEmitter" }, ngImport: i0, template: "<ng-container>\n <div (click)=\"initializeImagePicker()\" class=\"mb-20 w-15\">\n <div class=\"app-icon-label\" [attr.data-title]=\"appIconConfig?.description ? appIconConfig?.description : null\">{{appIconConfig?.label}}</div>\n <div *ngIf='!appIcon' class=\"sb-centericon\" aria-label=\"app icon\" tabindex=\"0\">\n <div>\n <i id=\"icon_appIcon\" name=\"icon_appIcon\" class=\"icon image outline\" ></i>\n </div>\n <div class=\"addImageText\">{{configService.labelConfig?.lbl?.addAnImage}}</div>\n </div>\n <img *ngIf=\"appIcon\" class=\"ui image sb-appicon\" src=\"{{appIcon}}\" alt=\"app icon\"/>\n </div>\n <lib-asset-browser *ngIf=\"showImagePicker\" [showImagePicker]=\"showImagePicker\" (assetBrowserEmitter)=\"collectionIconHandler($event)\" (modalDismissEmitter)=\"handleModalDismiss($event)\"></lib-asset-browser>\n</ng-container>", styles: [".sb-appicon{height:110px;width:120px;border:solid 1px #ccc;padding:5px}.sb-centericon{height:110px;width:120px;border:solid 1px #ccc;padding:10px;display:flex;justify-content:center;align-items:center;flex-direction:column}.addImageText{font-size:.8rem!important}.w-15{width:15%;max-width:15%}.app-icon-label{font-size:12px!important;margin-bottom:.5rem!important;color:#121213e0;font-weight:600}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.AssetBrowserComponent, selector: "lib-asset-browser", inputs: ["showImagePicker"], outputs: ["assetBrowserEmitter", "modalDismissEmitter"] }] }); }
32
32
  }
33
33
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CollectionIconComponent, decorators: [{
34
34
  type: Component,
35
- args: [{ selector: 'lib-collection-icon', template: "<ng-container>\n <div (click)=\"initializeImagePicker()\" class=\"mb-20 w-15\">\n <div class=\"app-icon-label\" [attr.data-title]=\"appIconConfig?.description ? appIconConfig?.description : null\">{{appIconConfig?.label}}</div>\n <div *ngIf='!appIcon' class=\"sb-centericon\">\n <div>\n <i id=\"icon_appIcon\" name=\"icon_appIcon\" class=\"icon image outline\" ></i>\n </div>\n <div class=\"addImageText\">{{configService.labelConfig?.lbl?.addAnImage}}</div>\n </div>\n <img *ngIf=\"appIcon\" \n class=\"ui image sb-appicon\" \n src=\"{{appIcon}}\"/>\n </div>\n <lib-asset-browser *ngIf=\"showImagePicker\" [showImagePicker]=\"showImagePicker\" (assetBrowserEmitter)=\"collectionIconHandler($event)\" (modalDismissEmitter)=\"handleModalDismiss($event)\"></lib-asset-browser>\n</ng-container>", styles: [".sb-appicon{height:110px;width:120px;border:solid 1px #ccc;padding:5px}.sb-centericon{height:110px;width:120px;border:solid 1px #ccc;padding:10px;display:flex;justify-content:center;align-items:center;flex-direction:column}.addImageText{font-size:.8rem!important}.w-15{width:15%;max-width:15%}.app-icon-label{font-size:12px!important;margin-bottom:.5rem!important;color:#121213e0;font-weight:600}\n"] }]
35
+ args: [{ selector: 'lib-collection-icon', template: "<ng-container>\n <div (click)=\"initializeImagePicker()\" class=\"mb-20 w-15\">\n <div class=\"app-icon-label\" [attr.data-title]=\"appIconConfig?.description ? appIconConfig?.description : null\">{{appIconConfig?.label}}</div>\n <div *ngIf='!appIcon' class=\"sb-centericon\" aria-label=\"app icon\" tabindex=\"0\">\n <div>\n <i id=\"icon_appIcon\" name=\"icon_appIcon\" class=\"icon image outline\" ></i>\n </div>\n <div class=\"addImageText\">{{configService.labelConfig?.lbl?.addAnImage}}</div>\n </div>\n <img *ngIf=\"appIcon\" class=\"ui image sb-appicon\" src=\"{{appIcon}}\" alt=\"app icon\"/>\n </div>\n <lib-asset-browser *ngIf=\"showImagePicker\" [showImagePicker]=\"showImagePicker\" (assetBrowserEmitter)=\"collectionIconHandler($event)\" (modalDismissEmitter)=\"handleModalDismiss($event)\"></lib-asset-browser>\n</ng-container>", styles: [".sb-appicon{height:110px;width:120px;border:solid 1px #ccc;padding:5px}.sb-centericon{height:110px;width:120px;border:solid 1px #ccc;padding:10px;display:flex;justify-content:center;align-items:center;flex-direction:column}.addImageText{font-size:.8rem!important}.w-15{width:15%;max-width:15%}.app-icon-label{font-size:12px!important;margin-bottom:.5rem!important;color:#121213e0;font-weight:600}\n"] }]
36
36
  }], ctorParameters: function () { return [{ type: i1.ConfigService }]; }, propDecorators: { appIcon: [{
37
37
  type: Input
38
38
  }], appIconConfig: [{
@@ -40,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
40
40
  }], iconEmitter: [{
41
41
  type: Output
42
42
  }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1pY29uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbGxlY3Rpb24tZWRpdG9yLWxpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL2NvbGxlY3Rpb24taWNvbi9jb2xsZWN0aW9uLWljb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29sbGVjdGlvbi1lZGl0b3ItbGlicmFyeS9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbi1pY29uL2NvbGxlY3Rpb24taWNvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQVEvRSxNQUFNLE9BQU8sdUJBQXVCO0lBTWxDLFlBQW1CLGFBQTRCO1FBQTVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBSHJDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUN6QyxvQkFBZSxHQUFHLEtBQUssQ0FBQztJQUVvQixDQUFDO0lBRXBELFFBQVE7SUFDUixDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRTtZQUN4QyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQztTQUM3QjthQUFNO1lBQ0wsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBRUQscUJBQXFCLENBQUMsS0FBSztRQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDekIsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDOUIsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQUs7UUFDdEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDL0IsQ0FBQzsrR0EzQlUsdUJBQXVCO21HQUF2Qix1QkFBdUIsb0tDUnBDLDQzQkFjZTs7NEZETkYsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLHFCQUFxQjtvR0FLdEIsT0FBTztzQkFBZixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0ksV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25maWcvY29uZmlnLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItY29sbGVjdGlvbi1pY29uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbGxlY3Rpb24taWNvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbGxlY3Rpb24taWNvbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENvbGxlY3Rpb25JY29uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgYXBwSWNvbjtcbiAgQElucHV0KCkgYXBwSWNvbkNvbmZpZztcbiAgQE91dHB1dCgpIGljb25FbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIHB1YmxpYyBzaG93SW1hZ2VQaWNrZXIgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxuICBpbml0aWFsaXplSW1hZ2VQaWNrZXIoKSB7XG4gICAgaWYgKHRoaXMuYXBwSWNvbkNvbmZpZy5pc0FwcEljb25FZGl0YWJsZSkge1xuICAgICAgdGhpcy5zaG93SW1hZ2VQaWNrZXIgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNob3dJbWFnZVBpY2tlciA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIGNvbGxlY3Rpb25JY29uSGFuZGxlcihldmVudCkge1xuICAgdGhpcy5pY29uRW1pdHRlci5lbWl0KGV2ZW50KTtcbiAgIHRoaXMuYXBwSWNvbiA9IGV2ZW50LnVybDtcbiAgIHRoaXMuc2hvd0ltYWdlUGlja2VyID0gZmFsc2U7XG4gIH1cblxuICBoYW5kbGVNb2RhbERpc21pc3MoZXZlbnQpIHtcbiAgICB0aGlzLnNob3dJbWFnZVBpY2tlciA9IGZhbHNlO1xuICB9XG5cbn1cbiIsIjxuZy1jb250YWluZXI+XG4gICAgPGRpdiAoY2xpY2spPVwiaW5pdGlhbGl6ZUltYWdlUGlja2VyKClcIiBjbGFzcz1cIm1iLTIwIHctMTVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFwcC1pY29uLWxhYmVsXCIgW2F0dHIuZGF0YS10aXRsZV09XCJhcHBJY29uQ29uZmlnPy5kZXNjcmlwdGlvbiA/IGFwcEljb25Db25maWc/LmRlc2NyaXB0aW9uIDogbnVsbFwiPnt7YXBwSWNvbkNvbmZpZz8ubGFiZWx9fTwvZGl2PlxuICAgICAgICA8ZGl2ICpuZ0lmPSchYXBwSWNvbicgY2xhc3M9XCJzYi1jZW50ZXJpY29uXCI+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgIDxpIGlkPVwiaWNvbl9hcHBJY29uXCIgbmFtZT1cImljb25fYXBwSWNvblwiIGNsYXNzPVwiaWNvbiBpbWFnZSBvdXRsaW5lXCIgPjwvaT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZEltYWdlVGV4dFwiPnt7Y29uZmlnU2VydmljZS5sYWJlbENvbmZpZz8ubGJsPy5hZGRBbkltYWdlfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxpbWcgKm5nSWY9XCJhcHBJY29uXCIgXG4gICAgICAgIGNsYXNzPVwidWkgaW1hZ2Ugc2ItYXBwaWNvblwiIFxuICAgICAgICBzcmM9XCJ7e2FwcEljb259fVwiLz5cbiAgICA8L2Rpdj5cbiAgICA8bGliLWFzc2V0LWJyb3dzZXIgKm5nSWY9XCJzaG93SW1hZ2VQaWNrZXJcIiBbc2hvd0ltYWdlUGlja2VyXT1cInNob3dJbWFnZVBpY2tlclwiIChhc3NldEJyb3dzZXJFbWl0dGVyKT1cImNvbGxlY3Rpb25JY29uSGFuZGxlcigkZXZlbnQpXCIgKG1vZGFsRGlzbWlzc0VtaXR0ZXIpPVwiaGFuZGxlTW9kYWxEaXNtaXNzKCRldmVudClcIj48L2xpYi1hc3NldC1icm93c2VyPlxuPC9uZy1jb250YWluZXI+Il19
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1pY29uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbGxlY3Rpb24tZWRpdG9yLWxpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL2NvbGxlY3Rpb24taWNvbi9jb2xsZWN0aW9uLWljb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29sbGVjdGlvbi1lZGl0b3ItbGlicmFyeS9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbi1pY29uL2NvbGxlY3Rpb24taWNvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQVEvRSxNQUFNLE9BQU8sdUJBQXVCO0lBTWxDLFlBQW1CLGFBQTRCO1FBQTVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBSHJDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUN6QyxvQkFBZSxHQUFHLEtBQUssQ0FBQztJQUVvQixDQUFDO0lBRXBELFFBQVE7SUFDUixDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRTtZQUN4QyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQztTQUM3QjthQUFNO1lBQ0wsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBRUQscUJBQXFCLENBQUMsS0FBSztRQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDekIsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDOUIsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQUs7UUFDdEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDL0IsQ0FBQzsrR0EzQlUsdUJBQXVCO21HQUF2Qix1QkFBdUIsb0tDUnBDLGc2QkFZZTs7NEZESkYsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLHFCQUFxQjtvR0FLdEIsT0FBTztzQkFBZixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0ksV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25maWcvY29uZmlnLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItY29sbGVjdGlvbi1pY29uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbGxlY3Rpb24taWNvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbGxlY3Rpb24taWNvbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENvbGxlY3Rpb25JY29uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgYXBwSWNvbjtcbiAgQElucHV0KCkgYXBwSWNvbkNvbmZpZztcbiAgQE91dHB1dCgpIGljb25FbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIHB1YmxpYyBzaG93SW1hZ2VQaWNrZXIgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxuICBpbml0aWFsaXplSW1hZ2VQaWNrZXIoKSB7XG4gICAgaWYgKHRoaXMuYXBwSWNvbkNvbmZpZy5pc0FwcEljb25FZGl0YWJsZSkge1xuICAgICAgdGhpcy5zaG93SW1hZ2VQaWNrZXIgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNob3dJbWFnZVBpY2tlciA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIGNvbGxlY3Rpb25JY29uSGFuZGxlcihldmVudCkge1xuICAgdGhpcy5pY29uRW1pdHRlci5lbWl0KGV2ZW50KTtcbiAgIHRoaXMuYXBwSWNvbiA9IGV2ZW50LnVybDtcbiAgIHRoaXMuc2hvd0ltYWdlUGlja2VyID0gZmFsc2U7XG4gIH1cblxuICBoYW5kbGVNb2RhbERpc21pc3MoZXZlbnQpIHtcbiAgICB0aGlzLnNob3dJbWFnZVBpY2tlciA9IGZhbHNlO1xuICB9XG5cbn1cbiIsIjxuZy1jb250YWluZXI+XG4gICAgPGRpdiAoY2xpY2spPVwiaW5pdGlhbGl6ZUltYWdlUGlja2VyKClcIiBjbGFzcz1cIm1iLTIwIHctMTVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFwcC1pY29uLWxhYmVsXCIgW2F0dHIuZGF0YS10aXRsZV09XCJhcHBJY29uQ29uZmlnPy5kZXNjcmlwdGlvbiA/IGFwcEljb25Db25maWc/LmRlc2NyaXB0aW9uIDogbnVsbFwiPnt7YXBwSWNvbkNvbmZpZz8ubGFiZWx9fTwvZGl2PlxuICAgICAgICA8ZGl2ICpuZ0lmPSchYXBwSWNvbicgY2xhc3M9XCJzYi1jZW50ZXJpY29uXCIgYXJpYS1sYWJlbD1cImFwcCBpY29uXCIgdGFiaW5kZXg9XCIwXCI+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgIDxpIGlkPVwiaWNvbl9hcHBJY29uXCIgbmFtZT1cImljb25fYXBwSWNvblwiIGNsYXNzPVwiaWNvbiBpbWFnZSBvdXRsaW5lXCIgPjwvaT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZEltYWdlVGV4dFwiPnt7Y29uZmlnU2VydmljZS5sYWJlbENvbmZpZz8ubGJsPy5hZGRBbkltYWdlfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxpbWcgKm5nSWY9XCJhcHBJY29uXCIgY2xhc3M9XCJ1aSBpbWFnZSBzYi1hcHBpY29uXCIgc3JjPVwie3thcHBJY29ufX1cIiBhbHQ9XCJhcHAgaWNvblwiLz5cbiAgICA8L2Rpdj5cbiAgICA8bGliLWFzc2V0LWJyb3dzZXIgKm5nSWY9XCJzaG93SW1hZ2VQaWNrZXJcIiBbc2hvd0ltYWdlUGlja2VyXT1cInNob3dJbWFnZVBpY2tlclwiIChhc3NldEJyb3dzZXJFbWl0dGVyKT1cImNvbGxlY3Rpb25JY29uSGFuZGxlcigkZXZlbnQpXCIgKG1vZGFsRGlzbWlzc0VtaXR0ZXIpPVwiaGFuZGxlTW9kYWxEaXNtaXNzKCRldmVudClcIj48L2xpYi1hc3NldC1icm93c2VyPlxuPC9uZy1jb250YWluZXI+Il19
@@ -163,11 +163,11 @@ export class CsvUploadComponent {
163
163
  });
164
164
  }
165
165
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CsvUploadComponent, deps: [{ token: i1.EditorTelemetryService }, { token: i2.ConfigService }, { token: i3.ToasterService }, { token: i4.EditorService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
166
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CsvUploadComponent, selector: "lib-csv-upload", inputs: { collectionId: "collectionId", isCreateCsv: "isCreateCsv" }, outputs: { csvUploadEmitter: "csvUploadEmitter" }, ngImport: i0, template: "<sui-modal [mustScroll]=\"true\" [isClosable]=\"isClosable\" [transitionDuration]=\"0\" [size]=\"'normal'\"\n class=\"sb-modal bx-none overflow-modal\" appBodyScroll (dismissed)=\"closeHierarchyModal(modal)\" #modal>\n <div class=\"sb-modal-header\">\n <span *ngIf=\"isCreateCsv\"> {{configService.labelConfig?.lbl?.createHierarchyCsv}} </span>\n <span *ngIf=\"!isCreateCsv\"> {{configService.labelConfig?.lbl?.uploadUpdateCSV}}</span> \n\n </div>\n <div class=\"sb-modal-content\">\n <div>\n <!-- upload csv file -->\n <div class=\"d-flex\" *ngIf=\"uploadCSVFile\">\n <div class=\"pl-20 pt-20 d-block w-50\">\n <p>{{configService.labelConfig?.lbl?.downloadSampleHierarchyCSv}} </p>\n <div class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.makeSureFile}} </div>\n <ul class=\"ui ordered list sb-dock-ordered-list mt-15\">\n <li class=\"item\">{{configService.labelConfig?.lbl?.allColumnsAreAvailable}}</li>\n <li class=\"item\">{{configService.labelConfig?.lbl?.hasAllMandatoryColumn}}</li>\n <li class=\"item\">{{configService.labelConfig?.lbl?.noDuplicateRow}}</li>\n </ul>\n <a target=\"_blank\" (click)=\"downloadSampleCSVFile()\"\n class=\"sb-btn sb-btn-normal sb-btn-outline-primary my-20 text-decor-none sb-color-primary\"><i\n aria-hidden=\"true\" class=\"fa fa-download pr-10\"></i>{{configService.labelConfig?.lbl?.downloadSampleCSV}}</a>\n </div>\n <div class=\"p-10 w-60 text-center sb-bg-color-primary-0 sb-br-primary\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-20 pb-10\">\n <div id=\"qq-upload-actions\" class=\"upload-file-description d-flex flex-ai-center flex-dc\">\n <h5 class=\"mb-8 sb-color-gray-400\">\n {{configService.labelConfig?.lbl?.dragAndDropCSV}} <br />\n </h5>\n <h6 class=\"mb-8 sb-color-gray-400 mt-10\">{{configService.labelConfig?.lbl?.Or}}</h6>\n <button class=\"upload-input-button sb-btn sb-btn-success sb-btn-normal\"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('select_csv_upload','click',configService.labelConfig?.lbl?.selectFileToUpload,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n ><i aria-hidden=\"true\" class=\"icon upload\"></i>\n {{configService.labelConfig?.lbl?.selectFileToUpload}} \n <input (change)=\"uploadCSV($event)\" accept=\".csv\" type=\"file\" >\n </button>\n <p class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.uploadEntries}}</p>\n <span class=\"sb-color-primary fs-0-785\" *ngIf=\"fileName\">{{fileName}}</span>\n </div>\n </div>\n </div> \n <!-- update csv file -->\n <div class=\"p-20 text-center sb-bg-color-primary-0 sb-br-primary\" *ngIf=\"updateCSVFile\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-10 pb-10\">\n <div id=\"qq-upload-actions\" class=\"upload-file-description d-flex flex-ai-center flex-dc\">\n <h5 class=\"mb-8 sb-color-gray-400\">\n {{configService.labelConfig?.lbl?.dragAndDropCSV}}<br />\n </h5>\n <h6 class=\"mb-8 sb-color-gray-400 mt-10\">{{configService.labelConfig?.lbl?.Or}}</h6>\n <button class=\"upload-input-button sb-btn sb-btn-success sb-btn-normal\"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('select_csv_update','click',configService.labelConfig?.lbl?.selectFileToUpload,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n ><i aria-hidden=\"true\" class=\"icon upload\"></i>\n {{configService.labelConfig?.lbl?.selectFileToUpload}} \n <input (change)=\"uploadCSV($event)\" accept=\".csv\" type=\"file\" >\n </button>\n <p class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.uploadEntries}}</p>\n <span class=\"sb-color-primary fs-0-785\" *ngIf=\"fileName\">{{fileName}}</span>\n </div>\n </div>\n <div *ngIf=\"updateCSVFile\" class=\"py-20\"><i aria-hidden=\"true\" class=\"icon info circle pr-10 sb-color-gray-200\"></i> \n <span class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.csvDownloadInstruction}}</span></div>\n <!-- Validation message -->\n <div class=\"d-flex sb-min-h-250 flex-ai-center mn-15 sb-bg-color-primary-0\" *ngIf=\"showCsvValidationStatus\">\n <div class=\"w-50 text-center\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-30\">\n </div>\n <div class=\"w-50\">\n <div class=\"pos-relative\">\n <span class=\"sb-loader sb-success-loader\"></span>\n <div class=\"font-weight-bold mb-10\">\n {{configService.labelConfig?.lbl?.pleaseWait}}\n </div>\n <span class=\"sb-color-gray-400 \"> {{configService.labelConfig?.lbl?.validateCsvFile}}</span>\n </div>\n </div>\n </div>\n\n <!-- Validation failed message = 4 -->\n <div class=\"d-flex sb-min-h-250 flex-ai-center\" *ngIf=\"errorCsvStatus\">\n <div class=\"w-50 text-center\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-30\">\n </div>\n <div class=\"w-50\">\n <i class=\"fa fa-exclamation-triangle pr-5 sb-color-error pr-10\" aria-hidden=\"true\"></i> {{configService.labelConfig?.lbl?.hierarchyValidationError}}\n <div class=\"sb-color-gray-200 pt-20 fs-0-785\"> {{configService.labelConfig?.lbl?.followingErrors}}</div>\n <ul class=\"mt-15 sb-circle-ul\">\n <li class=\"item\" *ngFor=\"let error of errorCsvMessage\">{{error}}</li>\n </ul>\n <div class=\"qq-upload-button-selector sb-btn sb-btn-normal sb-btn-success my-20\" \n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('select_csv_reupload','click',configService.labelConfig?.lbl?.reUploadCSV,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n (click)=\"onClickReupload()\">\n <div><i aria-hidden=\"true\" class=\"icon refresh\"></i>{{configService.labelConfig?.lbl?.reUploadCSV}}</div>\n </div>\n </div>\n </div>\n\n <div class=\"d-flex sb-bg-color-success-0 p-10 sb-min-h-250 mn-15\" *ngIf=\"showSuccessCsv\">\n <div class=\"w-50 text-center\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-30\">\n </div>\n <div class=\"w-50 flex-ai-center\">\n <div class=\"d-flex\">\n <i class=\"icon check circle outline sb-color-success\" aria-hidden=\"true\"></i>\n <div>\n <span *ngIf=\"isCreateCsv\" class=\"fs-0-92\"> {{configService.labelConfig?.lbl?.hierarchyAdded}} </span>\n <span *ngIf=\"!isCreateCsv\" class=\"fs-0-92\"> {{configService.labelConfig?.lbl?.hierarchyUpdated}} </span>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"sb-modal-actions\">\n <button class=\"sb-btn sb-btn-normal \" \n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('close_popup','click',configService.labelConfig?.button_labels?.close_btn_label,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n (click)=\"closeHierarchyModal(modal)\"[disabled]=\"!isClosable\" \n [ngClass]=\"{'sb-btn-primary': isClosable, 'sb-btn-disabled': !isClosable}\" >\n {{configService.labelConfig?.button_labels?.close_btn_label}}\n </button>\n <button class=\"sb-btn sb-btn-normal \"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('csv_upload','click',configService.labelConfig?.button_labels?.next_btn_label,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n (click)=\"validateCSVFile()\"[disabled]=\"!isUploadCsvEnable\" \n [ngClass]=\"{'sb-btn-primary': isUploadCsvEnable, 'sb-btn-disabled': !isUploadCsvEnable}\" >\n {{configService.labelConfig?.button_labels?.next_btn_label}}\n </button>\n </div>\n</sui-modal>", styles: [".sb-dock-ordered-list li{margin-bottom:.4rem;font-size:.8rem;color:var(--gray-200)!important}.sb-dock-ordered-list li:before{width:1rem;height:1rem;line-height:1rem;border-radius:100%;text-align:center!important;background-color:var(--primary-200);font-size:.6rem;color:var(--white)!important;margin-right:.8rem}.sb-circle-download-icon{background:var(--secondary-100);display:inline-block;width:1.8rem;height:1.8rem;line-height:1.8rem;color:var(--white);border-radius:100%;text-align:center;font-size:.8rem}.sb-list-circle li{list-style-type:disc;font-size:.8rem;margin-bottom:.6rem}.sb-line-height-1-2{line-height:1.2rem}.sb-success-loader{position:absolute!important;top:46%!important;left:50%!important;transform:translate(-46%,-50%)!important}.sb-success-loader:after{width:1.2rem!important;height:1.2rem!important}.sb-dock-loader{position:absolute;top:15%;left:-1%;transform:translate(-50%,-50%)}.sb-bulk-upload img{width:11rem}.sb-bulk-upload img .sb-dock-accordion .sb-toc-accor-1:last-child .title{border-bottom:1px solid var(--gray-100)!important}.sb-bulk-upload img .sb-dock-accordion .title{border:1px solid var(--gray-100)!important;margin:0!important;border-bottom:none!important;border-radius:0!important}.sb-bulk-upload img .sb-dock-accordion .content{border:1px solid var(--gray-100)}.sb-bulk-upload img .sb-dock-accordion .content:last-child{border-bottom:1px solid var(--gray-100)!important}.sb-bulk-upload img .sb-dock-accordion .sb-radio-btn-checkbox label:before{width:1.4rem;height:1.4rem}.sb-bulk-upload img .sb-dock-accordion .sb-radio-btn-checkbox label:after{height:.9rem;width:.9rem}.sb-bulk-upload img .sb-dock-accordion.scrolling.content{max-height:70vh!important}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.SuiDropdownMenuItem, selector: ".item" }, { kind: "component", type: i6.SuiModal, selector: "sui-modal", inputs: ["isClosable", "closeResult", "size", "isCentered", "isFullScreen", "isBasic", "mustScroll", "isInverted", "transition", "transitionDuration"], outputs: ["approved", "denied", "dismissed"] }, { kind: "directive", type: i7.TelemetryInteractDirective, selector: "[libTelemetryInteract]", inputs: ["telemetryInteractEdata"] }] }); }
166
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CsvUploadComponent, selector: "lib-csv-upload", inputs: { collectionId: "collectionId", isCreateCsv: "isCreateCsv" }, outputs: { csvUploadEmitter: "csvUploadEmitter" }, ngImport: i0, template: "<sui-modal [mustScroll]=\"true\" [isClosable]=\"isClosable\" [transitionDuration]=\"0\" [size]=\"'normal'\"\n class=\"sb-modal bx-none overflow-modal\" appBodyScroll (dismissed)=\"closeHierarchyModal(modal)\" #modal>\n <div class=\"sb-modal-header\">\n <span *ngIf=\"isCreateCsv\"> {{configService.labelConfig?.lbl?.createHierarchyCsv}} </span>\n <span *ngIf=\"!isCreateCsv\"> {{configService.labelConfig?.lbl?.uploadUpdateCSV}}</span> \n\n </div>\n <div class=\"sb-modal-content\">\n <div>\n <!-- upload csv file -->\n <div class=\"d-flex\" *ngIf=\"uploadCSVFile\">\n <div class=\"pl-20 pt-20 d-block w-50\">\n <p>{{configService.labelConfig?.lbl?.downloadSampleHierarchyCSv}} </p>\n <div class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.makeSureFile}} </div>\n <ul class=\"ui ordered list sb-dock-ordered-list mt-15\">\n <li class=\"item\">{{configService.labelConfig?.lbl?.allColumnsAreAvailable}}</li>\n <li class=\"item\">{{configService.labelConfig?.lbl?.hasAllMandatoryColumn}}</li>\n <li class=\"item\">{{configService.labelConfig?.lbl?.noDuplicateRow}}</li>\n </ul>\n <a target=\"_blank\" (click)=\"downloadSampleCSVFile()\"\n class=\"sb-btn sb-btn-normal sb-btn-outline-primary my-20 text-decor-none sb-color-primary\"><i\n aria-hidden=\"true\" class=\"fa fa-download pr-10\"></i>{{configService.labelConfig?.lbl?.downloadSampleCSV}}</a>\n </div>\n <div class=\"p-10 w-60 text-center sb-bg-color-primary-0 sb-br-primary\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-20 pb-10\">\n <div id=\"qq-upload-actions\" class=\"upload-file-description d-flex flex-ai-center flex-dc\">\n <h5 class=\"mb-8 sb-color-gray-400\">\n {{configService.labelConfig?.lbl?.dragAndDropCSV}} <br />\n </h5>\n <h6 class=\"mb-8 sb-color-gray-400 mt-10\">{{configService.labelConfig?.lbl?.Or}}</h6>\n <button class=\"upload-input-button sb-btn sb-btn-success sb-btn-normal\"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('select_csv_upload','click',configService.labelConfig?.lbl?.selectFileToUpload,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n ><i aria-hidden=\"true\" class=\"icon upload\"></i>\n {{configService.labelConfig?.lbl?.selectFileToUpload}} \n <input (change)=\"uploadCSV($event)\" accept=\".csv\" type=\"file\" >\n </button>\n <p class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.uploadEntries}}</p>\n <span class=\"sb-color-primary fs-0-785\" *ngIf=\"fileName\">{{fileName}}</span>\n </div>\n </div>\n </div> \n <!-- update csv file -->\n <div class=\"p-20 text-center sb-bg-color-primary-0 sb-br-primary\" *ngIf=\"updateCSVFile\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-10 pb-10\">\n <div id=\"qq-upload-actions\" class=\"upload-file-description d-flex flex-ai-center flex-dc\">\n <h5 class=\"mb-8 sb-color-gray-400\">\n {{configService.labelConfig?.lbl?.dragAndDropCSV}}<br />\n </h5>\n <h6 class=\"mb-8 sb-color-gray-400 mt-10\">{{configService.labelConfig?.lbl?.Or}}</h6>\n <button class=\"upload-input-button sb-btn sb-btn-success sb-btn-normal\"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('select_csv_update','click',configService.labelConfig?.lbl?.selectFileToUpload,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n ><i aria-hidden=\"true\" class=\"icon upload\"></i>\n {{configService.labelConfig?.lbl?.selectFileToUpload}} \n <input (change)=\"uploadCSV($event)\" accept=\".csv\" type=\"file\" >\n </button>\n <p class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.uploadEntries}}</p>\n <span class=\"sb-color-primary fs-0-785\" *ngIf=\"fileName\">{{fileName}}</span>\n </div>\n </div>\n <div *ngIf=\"updateCSVFile\" class=\"py-20\"><i aria-hidden=\"true\" class=\"icon info circle pr-10 sb-color-gray-200\"></i> \n <span class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.csvDownloadInstruction}}</span></div>\n <!-- Validation message -->\n <div class=\"d-flex sb-min-h-250 flex-ai-center mn-15 sb-bg-color-primary-0\" *ngIf=\"showCsvValidationStatus\">\n <div class=\"w-50 text-center\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-30\">\n </div>\n <div class=\"w-50\">\n <div class=\"pos-relative\">\n <span class=\"sb-loader sb-success-loader\"></span>\n <div class=\"font-weight-bold mb-10\">\n {{configService.labelConfig?.lbl?.pleaseWait}}\n </div>\n <span class=\"sb-color-gray-400 \"> {{configService.labelConfig?.lbl?.validateCsvFile}}</span>\n </div>\n </div>\n </div>\n\n <!-- Validation failed message = 4 -->\n <div class=\"d-flex sb-min-h-250 flex-ai-center\" *ngIf=\"errorCsvStatus\">\n <div class=\"w-50 text-center\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-30\">\n </div>\n <div class=\"w-50\">\n <i class=\"fa fa-exclamation-triangle pr-5 sb-color-error pr-10\" aria-hidden=\"true\"></i> {{configService.labelConfig?.lbl?.hierarchyValidationError}}\n <div class=\"sb-color-gray-200 pt-20 fs-0-785\"> {{configService.labelConfig?.lbl?.followingErrors}}</div>\n <ul class=\"mt-15 sb-circle-ul\">\n <li class=\"item\" *ngFor=\"let error of errorCsvMessage\">{{error}}</li>\n </ul>\n <div class=\"qq-upload-button-selector sb-btn sb-btn-normal sb-btn-success my-20\" \n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('select_csv_reupload','click',configService.labelConfig?.lbl?.reUploadCSV,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n (click)=\"onClickReupload()\">\n <div><i aria-hidden=\"true\" class=\"icon refresh\"></i>{{configService.labelConfig?.lbl?.reUploadCSV}}</div>\n </div>\n </div>\n </div>\n\n <div class=\"d-flex sb-bg-color-success-0 p-10 sb-min-h-250 mn-15\" *ngIf=\"showSuccessCsv\">\n <div class=\"w-50 text-center\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-30\">\n </div>\n <div class=\"w-50 flex-ai-center\">\n <div class=\"d-flex\">\n <i class=\"icon check circle outline sb-color-success\" aria-hidden=\"true\"></i>\n <div>\n <span *ngIf=\"isCreateCsv\" class=\"fs-0-92\"> {{configService.labelConfig?.lbl?.hierarchyAdded}} </span>\n <span *ngIf=\"!isCreateCsv\" class=\"fs-0-92\"> {{configService.labelConfig?.lbl?.hierarchyUpdated}} </span>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"sb-modal-actions\">\n <button class=\"sb-btn sb-btn-normal \" \n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('close_popup','click',configService.labelConfig?.button_labels?.close_btn_label,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n (click)=\"closeHierarchyModal(modal)\"[disabled]=\"!isClosable\" \n [ngClass]=\"{'sb-btn-primary': isClosable, 'sb-btn-disabled': !isClosable}\" >\n {{configService.labelConfig?.button_labels?.close_btn_label}}\n </button>\n <button class=\"sb-btn sb-btn-normal \"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('csv_upload','click',configService.labelConfig?.button_labels?.next_btn_label,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n (click)=\"validateCSVFile()\"[disabled]=\"!isUploadCsvEnable\" \n [ngClass]=\"{'sb-btn-primary': isUploadCsvEnable, 'sb-btn-disabled': !isUploadCsvEnable}\" >\n {{configService.labelConfig?.button_labels?.next_btn_label}}\n </button>\n </div>\n</sui-modal>", styles: [".sb-dock-ordered-list li{margin-bottom:.4rem;font-size:.8rem;color:var(--gray-200)!important}.sb-dock-ordered-list li:before{width:1rem;height:1rem;line-height:1rem;border-radius:100%;text-align:center!important;background-color:var(--primary-200);font-size:.6rem;color:var(--white)!important;margin-right:.8rem}.sb-circle-download-icon{background:var(--secondary-100);display:inline-block;width:1.8rem;height:1.8rem;line-height:1.8rem;color:var(--white);border-radius:100%;text-align:center;font-size:.8rem}.sb-list-circle li{list-style-type:disc;font-size:.8rem;margin-bottom:.6rem}.sb-line-height-1-2{line-height:1.2rem}.sb-success-loader{position:absolute!important;top:46%!important;left:50%!important;transform:translate(-46%,-50%)!important}.sb-success-loader:after{width:1.2rem!important;height:1.2rem!important}.sb-dock-loader{position:absolute;top:15%;left:-1%;transform:translate(-50%,-50%)}.sb-bulk-upload img{width:11rem}.sb-bulk-upload img .sb-dock-accordion .sb-toc-accor-1:last-child .title{border-bottom:1px solid var(--gray-100)!important}.sb-bulk-upload img .sb-dock-accordion .title{border:1px solid var(--gray-100)!important;margin:0!important;border-bottom:none!important;border-radius:0!important}.sb-bulk-upload img .sb-dock-accordion .content{border:1px solid var(--gray-100)}.sb-bulk-upload img .sb-dock-accordion .content:last-child{border-bottom:1px solid var(--gray-100)!important}.sb-bulk-upload img .sb-dock-accordion .sb-radio-btn-checkbox label:before{width:1.4rem;height:1.4rem}.sb-bulk-upload img .sb-dock-accordion .sb-radio-btn-checkbox label:after{height:.9rem;width:.9rem}.sb-bulk-upload img .sb-dock-accordion.scrolling.content{max-height:70vh!important}.upload-input-button input[type=file]{position:absolute;right:0;top:0;font-size:118px;margin:0;padding:0;cursor:pointer;opacity:0;height:100%}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.SuiDropdownMenuItem, selector: ".item" }, { kind: "component", type: i6.SuiModal, selector: "sui-modal", inputs: ["isClosable", "closeResult", "size", "isCentered", "isFullScreen", "isBasic", "mustScroll", "isInverted", "transition", "transitionDuration"], outputs: ["approved", "denied", "dismissed"] }, { kind: "directive", type: i7.TelemetryInteractDirective, selector: "[libTelemetryInteract]", inputs: ["telemetryInteractEdata"] }] }); }
167
167
  }
168
168
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CsvUploadComponent, decorators: [{
169
169
  type: Component,
170
- args: [{ selector: 'lib-csv-upload', template: "<sui-modal [mustScroll]=\"true\" [isClosable]=\"isClosable\" [transitionDuration]=\"0\" [size]=\"'normal'\"\n class=\"sb-modal bx-none overflow-modal\" appBodyScroll (dismissed)=\"closeHierarchyModal(modal)\" #modal>\n <div class=\"sb-modal-header\">\n <span *ngIf=\"isCreateCsv\"> {{configService.labelConfig?.lbl?.createHierarchyCsv}} </span>\n <span *ngIf=\"!isCreateCsv\"> {{configService.labelConfig?.lbl?.uploadUpdateCSV}}</span> \n\n </div>\n <div class=\"sb-modal-content\">\n <div>\n <!-- upload csv file -->\n <div class=\"d-flex\" *ngIf=\"uploadCSVFile\">\n <div class=\"pl-20 pt-20 d-block w-50\">\n <p>{{configService.labelConfig?.lbl?.downloadSampleHierarchyCSv}} </p>\n <div class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.makeSureFile}} </div>\n <ul class=\"ui ordered list sb-dock-ordered-list mt-15\">\n <li class=\"item\">{{configService.labelConfig?.lbl?.allColumnsAreAvailable}}</li>\n <li class=\"item\">{{configService.labelConfig?.lbl?.hasAllMandatoryColumn}}</li>\n <li class=\"item\">{{configService.labelConfig?.lbl?.noDuplicateRow}}</li>\n </ul>\n <a target=\"_blank\" (click)=\"downloadSampleCSVFile()\"\n class=\"sb-btn sb-btn-normal sb-btn-outline-primary my-20 text-decor-none sb-color-primary\"><i\n aria-hidden=\"true\" class=\"fa fa-download pr-10\"></i>{{configService.labelConfig?.lbl?.downloadSampleCSV}}</a>\n </div>\n <div class=\"p-10 w-60 text-center sb-bg-color-primary-0 sb-br-primary\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-20 pb-10\">\n <div id=\"qq-upload-actions\" class=\"upload-file-description d-flex flex-ai-center flex-dc\">\n <h5 class=\"mb-8 sb-color-gray-400\">\n {{configService.labelConfig?.lbl?.dragAndDropCSV}} <br />\n </h5>\n <h6 class=\"mb-8 sb-color-gray-400 mt-10\">{{configService.labelConfig?.lbl?.Or}}</h6>\n <button class=\"upload-input-button sb-btn sb-btn-success sb-btn-normal\"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('select_csv_upload','click',configService.labelConfig?.lbl?.selectFileToUpload,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n ><i aria-hidden=\"true\" class=\"icon upload\"></i>\n {{configService.labelConfig?.lbl?.selectFileToUpload}} \n <input (change)=\"uploadCSV($event)\" accept=\".csv\" type=\"file\" >\n </button>\n <p class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.uploadEntries}}</p>\n <span class=\"sb-color-primary fs-0-785\" *ngIf=\"fileName\">{{fileName}}</span>\n </div>\n </div>\n </div> \n <!-- update csv file -->\n <div class=\"p-20 text-center sb-bg-color-primary-0 sb-br-primary\" *ngIf=\"updateCSVFile\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-10 pb-10\">\n <div id=\"qq-upload-actions\" class=\"upload-file-description d-flex flex-ai-center flex-dc\">\n <h5 class=\"mb-8 sb-color-gray-400\">\n {{configService.labelConfig?.lbl?.dragAndDropCSV}}<br />\n </h5>\n <h6 class=\"mb-8 sb-color-gray-400 mt-10\">{{configService.labelConfig?.lbl?.Or}}</h6>\n <button class=\"upload-input-button sb-btn sb-btn-success sb-btn-normal\"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('select_csv_update','click',configService.labelConfig?.lbl?.selectFileToUpload,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n ><i aria-hidden=\"true\" class=\"icon upload\"></i>\n {{configService.labelConfig?.lbl?.selectFileToUpload}} \n <input (change)=\"uploadCSV($event)\" accept=\".csv\" type=\"file\" >\n </button>\n <p class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.uploadEntries}}</p>\n <span class=\"sb-color-primary fs-0-785\" *ngIf=\"fileName\">{{fileName}}</span>\n </div>\n </div>\n <div *ngIf=\"updateCSVFile\" class=\"py-20\"><i aria-hidden=\"true\" class=\"icon info circle pr-10 sb-color-gray-200\"></i> \n <span class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.csvDownloadInstruction}}</span></div>\n <!-- Validation message -->\n <div class=\"d-flex sb-min-h-250 flex-ai-center mn-15 sb-bg-color-primary-0\" *ngIf=\"showCsvValidationStatus\">\n <div class=\"w-50 text-center\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-30\">\n </div>\n <div class=\"w-50\">\n <div class=\"pos-relative\">\n <span class=\"sb-loader sb-success-loader\"></span>\n <div class=\"font-weight-bold mb-10\">\n {{configService.labelConfig?.lbl?.pleaseWait}}\n </div>\n <span class=\"sb-color-gray-400 \"> {{configService.labelConfig?.lbl?.validateCsvFile}}</span>\n </div>\n </div>\n </div>\n\n <!-- Validation failed message = 4 -->\n <div class=\"d-flex sb-min-h-250 flex-ai-center\" *ngIf=\"errorCsvStatus\">\n <div class=\"w-50 text-center\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-30\">\n </div>\n <div class=\"w-50\">\n <i class=\"fa fa-exclamation-triangle pr-5 sb-color-error pr-10\" aria-hidden=\"true\"></i> {{configService.labelConfig?.lbl?.hierarchyValidationError}}\n <div class=\"sb-color-gray-200 pt-20 fs-0-785\"> {{configService.labelConfig?.lbl?.followingErrors}}</div>\n <ul class=\"mt-15 sb-circle-ul\">\n <li class=\"item\" *ngFor=\"let error of errorCsvMessage\">{{error}}</li>\n </ul>\n <div class=\"qq-upload-button-selector sb-btn sb-btn-normal sb-btn-success my-20\" \n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('select_csv_reupload','click',configService.labelConfig?.lbl?.reUploadCSV,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n (click)=\"onClickReupload()\">\n <div><i aria-hidden=\"true\" class=\"icon refresh\"></i>{{configService.labelConfig?.lbl?.reUploadCSV}}</div>\n </div>\n </div>\n </div>\n\n <div class=\"d-flex sb-bg-color-success-0 p-10 sb-min-h-250 mn-15\" *ngIf=\"showSuccessCsv\">\n <div class=\"w-50 text-center\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-30\">\n </div>\n <div class=\"w-50 flex-ai-center\">\n <div class=\"d-flex\">\n <i class=\"icon check circle outline sb-color-success\" aria-hidden=\"true\"></i>\n <div>\n <span *ngIf=\"isCreateCsv\" class=\"fs-0-92\"> {{configService.labelConfig?.lbl?.hierarchyAdded}} </span>\n <span *ngIf=\"!isCreateCsv\" class=\"fs-0-92\"> {{configService.labelConfig?.lbl?.hierarchyUpdated}} </span>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"sb-modal-actions\">\n <button class=\"sb-btn sb-btn-normal \" \n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('close_popup','click',configService.labelConfig?.button_labels?.close_btn_label,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n (click)=\"closeHierarchyModal(modal)\"[disabled]=\"!isClosable\" \n [ngClass]=\"{'sb-btn-primary': isClosable, 'sb-btn-disabled': !isClosable}\" >\n {{configService.labelConfig?.button_labels?.close_btn_label}}\n </button>\n <button class=\"sb-btn sb-btn-normal \"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('csv_upload','click',configService.labelConfig?.button_labels?.next_btn_label,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n (click)=\"validateCSVFile()\"[disabled]=\"!isUploadCsvEnable\" \n [ngClass]=\"{'sb-btn-primary': isUploadCsvEnable, 'sb-btn-disabled': !isUploadCsvEnable}\" >\n {{configService.labelConfig?.button_labels?.next_btn_label}}\n </button>\n </div>\n</sui-modal>", styles: [".sb-dock-ordered-list li{margin-bottom:.4rem;font-size:.8rem;color:var(--gray-200)!important}.sb-dock-ordered-list li:before{width:1rem;height:1rem;line-height:1rem;border-radius:100%;text-align:center!important;background-color:var(--primary-200);font-size:.6rem;color:var(--white)!important;margin-right:.8rem}.sb-circle-download-icon{background:var(--secondary-100);display:inline-block;width:1.8rem;height:1.8rem;line-height:1.8rem;color:var(--white);border-radius:100%;text-align:center;font-size:.8rem}.sb-list-circle li{list-style-type:disc;font-size:.8rem;margin-bottom:.6rem}.sb-line-height-1-2{line-height:1.2rem}.sb-success-loader{position:absolute!important;top:46%!important;left:50%!important;transform:translate(-46%,-50%)!important}.sb-success-loader:after{width:1.2rem!important;height:1.2rem!important}.sb-dock-loader{position:absolute;top:15%;left:-1%;transform:translate(-50%,-50%)}.sb-bulk-upload img{width:11rem}.sb-bulk-upload img .sb-dock-accordion .sb-toc-accor-1:last-child .title{border-bottom:1px solid var(--gray-100)!important}.sb-bulk-upload img .sb-dock-accordion .title{border:1px solid var(--gray-100)!important;margin:0!important;border-bottom:none!important;border-radius:0!important}.sb-bulk-upload img .sb-dock-accordion .content{border:1px solid var(--gray-100)}.sb-bulk-upload img .sb-dock-accordion .content:last-child{border-bottom:1px solid var(--gray-100)!important}.sb-bulk-upload img .sb-dock-accordion .sb-radio-btn-checkbox label:before{width:1.4rem;height:1.4rem}.sb-bulk-upload img .sb-dock-accordion .sb-radio-btn-checkbox label:after{height:.9rem;width:.9rem}.sb-bulk-upload img .sb-dock-accordion.scrolling.content{max-height:70vh!important}\n"] }]
170
+ args: [{ selector: 'lib-csv-upload', template: "<sui-modal [mustScroll]=\"true\" [isClosable]=\"isClosable\" [transitionDuration]=\"0\" [size]=\"'normal'\"\n class=\"sb-modal bx-none overflow-modal\" appBodyScroll (dismissed)=\"closeHierarchyModal(modal)\" #modal>\n <div class=\"sb-modal-header\">\n <span *ngIf=\"isCreateCsv\"> {{configService.labelConfig?.lbl?.createHierarchyCsv}} </span>\n <span *ngIf=\"!isCreateCsv\"> {{configService.labelConfig?.lbl?.uploadUpdateCSV}}</span> \n\n </div>\n <div class=\"sb-modal-content\">\n <div>\n <!-- upload csv file -->\n <div class=\"d-flex\" *ngIf=\"uploadCSVFile\">\n <div class=\"pl-20 pt-20 d-block w-50\">\n <p>{{configService.labelConfig?.lbl?.downloadSampleHierarchyCSv}} </p>\n <div class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.makeSureFile}} </div>\n <ul class=\"ui ordered list sb-dock-ordered-list mt-15\">\n <li class=\"item\">{{configService.labelConfig?.lbl?.allColumnsAreAvailable}}</li>\n <li class=\"item\">{{configService.labelConfig?.lbl?.hasAllMandatoryColumn}}</li>\n <li class=\"item\">{{configService.labelConfig?.lbl?.noDuplicateRow}}</li>\n </ul>\n <a target=\"_blank\" (click)=\"downloadSampleCSVFile()\"\n class=\"sb-btn sb-btn-normal sb-btn-outline-primary my-20 text-decor-none sb-color-primary\"><i\n aria-hidden=\"true\" class=\"fa fa-download pr-10\"></i>{{configService.labelConfig?.lbl?.downloadSampleCSV}}</a>\n </div>\n <div class=\"p-10 w-60 text-center sb-bg-color-primary-0 sb-br-primary\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-20 pb-10\">\n <div id=\"qq-upload-actions\" class=\"upload-file-description d-flex flex-ai-center flex-dc\">\n <h5 class=\"mb-8 sb-color-gray-400\">\n {{configService.labelConfig?.lbl?.dragAndDropCSV}} <br />\n </h5>\n <h6 class=\"mb-8 sb-color-gray-400 mt-10\">{{configService.labelConfig?.lbl?.Or}}</h6>\n <button class=\"upload-input-button sb-btn sb-btn-success sb-btn-normal\"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('select_csv_upload','click',configService.labelConfig?.lbl?.selectFileToUpload,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n ><i aria-hidden=\"true\" class=\"icon upload\"></i>\n {{configService.labelConfig?.lbl?.selectFileToUpload}} \n <input (change)=\"uploadCSV($event)\" accept=\".csv\" type=\"file\" >\n </button>\n <p class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.uploadEntries}}</p>\n <span class=\"sb-color-primary fs-0-785\" *ngIf=\"fileName\">{{fileName}}</span>\n </div>\n </div>\n </div> \n <!-- update csv file -->\n <div class=\"p-20 text-center sb-bg-color-primary-0 sb-br-primary\" *ngIf=\"updateCSVFile\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-10 pb-10\">\n <div id=\"qq-upload-actions\" class=\"upload-file-description d-flex flex-ai-center flex-dc\">\n <h5 class=\"mb-8 sb-color-gray-400\">\n {{configService.labelConfig?.lbl?.dragAndDropCSV}}<br />\n </h5>\n <h6 class=\"mb-8 sb-color-gray-400 mt-10\">{{configService.labelConfig?.lbl?.Or}}</h6>\n <button class=\"upload-input-button sb-btn sb-btn-success sb-btn-normal\"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('select_csv_update','click',configService.labelConfig?.lbl?.selectFileToUpload,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n ><i aria-hidden=\"true\" class=\"icon upload\"></i>\n {{configService.labelConfig?.lbl?.selectFileToUpload}} \n <input (change)=\"uploadCSV($event)\" accept=\".csv\" type=\"file\" >\n </button>\n <p class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.uploadEntries}}</p>\n <span class=\"sb-color-primary fs-0-785\" *ngIf=\"fileName\">{{fileName}}</span>\n </div>\n </div>\n <div *ngIf=\"updateCSVFile\" class=\"py-20\"><i aria-hidden=\"true\" class=\"icon info circle pr-10 sb-color-gray-200\"></i> \n <span class=\"sb-color-gray-200 fs-0-785\">{{configService.labelConfig?.lbl?.csvDownloadInstruction}}</span></div>\n <!-- Validation message -->\n <div class=\"d-flex sb-min-h-250 flex-ai-center mn-15 sb-bg-color-primary-0\" *ngIf=\"showCsvValidationStatus\">\n <div class=\"w-50 text-center\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-30\">\n </div>\n <div class=\"w-50\">\n <div class=\"pos-relative\">\n <span class=\"sb-loader sb-success-loader\"></span>\n <div class=\"font-weight-bold mb-10\">\n {{configService.labelConfig?.lbl?.pleaseWait}}\n </div>\n <span class=\"sb-color-gray-400 \"> {{configService.labelConfig?.lbl?.validateCsvFile}}</span>\n </div>\n </div>\n </div>\n\n <!-- Validation failed message = 4 -->\n <div class=\"d-flex sb-min-h-250 flex-ai-center\" *ngIf=\"errorCsvStatus\">\n <div class=\"w-50 text-center\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-30\">\n </div>\n <div class=\"w-50\">\n <i class=\"fa fa-exclamation-triangle pr-5 sb-color-error pr-10\" aria-hidden=\"true\"></i> {{configService.labelConfig?.lbl?.hierarchyValidationError}}\n <div class=\"sb-color-gray-200 pt-20 fs-0-785\"> {{configService.labelConfig?.lbl?.followingErrors}}</div>\n <ul class=\"mt-15 sb-circle-ul\">\n <li class=\"item\" *ngFor=\"let error of errorCsvMessage\">{{error}}</li>\n </ul>\n <div class=\"qq-upload-button-selector sb-btn sb-btn-normal sb-btn-success my-20\" \n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('select_csv_reupload','click',configService.labelConfig?.lbl?.reUploadCSV,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n (click)=\"onClickReupload()\">\n <div><i aria-hidden=\"true\" class=\"icon refresh\"></i>{{configService.labelConfig?.lbl?.reUploadCSV}}</div>\n </div>\n </div>\n </div>\n\n <div class=\"d-flex sb-bg-color-success-0 p-10 sb-min-h-250 mn-15\" *ngIf=\"showSuccessCsv\">\n <div class=\"w-50 text-center\">\n <img src=\"../../assets/images/bulkuploadfile.png\" alt=\"\" class=\"w-30\">\n </div>\n <div class=\"w-50 flex-ai-center\">\n <div class=\"d-flex\">\n <i class=\"icon check circle outline sb-color-success\" aria-hidden=\"true\"></i>\n <div>\n <span *ngIf=\"isCreateCsv\" class=\"fs-0-92\"> {{configService.labelConfig?.lbl?.hierarchyAdded}} </span>\n <span *ngIf=\"!isCreateCsv\" class=\"fs-0-92\"> {{configService.labelConfig?.lbl?.hierarchyUpdated}} </span>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"sb-modal-actions\">\n <button class=\"sb-btn sb-btn-normal \" \n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('close_popup','click',configService.labelConfig?.button_labels?.close_btn_label,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n (click)=\"closeHierarchyModal(modal)\"[disabled]=\"!isClosable\" \n [ngClass]=\"{'sb-btn-primary': isClosable, 'sb-btn-disabled': !isClosable}\" >\n {{configService.labelConfig?.button_labels?.close_btn_label}}\n </button>\n <button class=\"sb-btn sb-btn-normal \"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('csv_upload','click',configService.labelConfig?.button_labels?.next_btn_label,\n this.telemetryService.telemetryPageId, {key: 'identifier', value: collectionId})\"\n (click)=\"validateCSVFile()\"[disabled]=\"!isUploadCsvEnable\" \n [ngClass]=\"{'sb-btn-primary': isUploadCsvEnable, 'sb-btn-disabled': !isUploadCsvEnable}\" >\n {{configService.labelConfig?.button_labels?.next_btn_label}}\n </button>\n </div>\n</sui-modal>", styles: [".sb-dock-ordered-list li{margin-bottom:.4rem;font-size:.8rem;color:var(--gray-200)!important}.sb-dock-ordered-list li:before{width:1rem;height:1rem;line-height:1rem;border-radius:100%;text-align:center!important;background-color:var(--primary-200);font-size:.6rem;color:var(--white)!important;margin-right:.8rem}.sb-circle-download-icon{background:var(--secondary-100);display:inline-block;width:1.8rem;height:1.8rem;line-height:1.8rem;color:var(--white);border-radius:100%;text-align:center;font-size:.8rem}.sb-list-circle li{list-style-type:disc;font-size:.8rem;margin-bottom:.6rem}.sb-line-height-1-2{line-height:1.2rem}.sb-success-loader{position:absolute!important;top:46%!important;left:50%!important;transform:translate(-46%,-50%)!important}.sb-success-loader:after{width:1.2rem!important;height:1.2rem!important}.sb-dock-loader{position:absolute;top:15%;left:-1%;transform:translate(-50%,-50%)}.sb-bulk-upload img{width:11rem}.sb-bulk-upload img .sb-dock-accordion .sb-toc-accor-1:last-child .title{border-bottom:1px solid var(--gray-100)!important}.sb-bulk-upload img .sb-dock-accordion .title{border:1px solid var(--gray-100)!important;margin:0!important;border-bottom:none!important;border-radius:0!important}.sb-bulk-upload img .sb-dock-accordion .content{border:1px solid var(--gray-100)}.sb-bulk-upload img .sb-dock-accordion .content:last-child{border-bottom:1px solid var(--gray-100)!important}.sb-bulk-upload img .sb-dock-accordion .sb-radio-btn-checkbox label:before{width:1.4rem;height:1.4rem}.sb-bulk-upload img .sb-dock-accordion .sb-radio-btn-checkbox label:after{height:.9rem;width:.9rem}.sb-bulk-upload img .sb-dock-accordion.scrolling.content{max-height:70vh!important}.upload-input-button input[type=file]{position:absolute;right:0;top:0;font-size:118px;margin:0;padding:0;cursor:pointer;opacity:0;height:100%}\n"] }]
171
171
  }], ctorParameters: function () { return [{ type: i1.EditorTelemetryService }, { type: i2.ConfigService }, { type: i3.ToasterService }, { type: i4.EditorService }, { type: i0.NgZone }]; }, propDecorators: { collectionId: [{
172
172
  type: Input
173
173
  }], isCreateCsv: [{