@churchillliving/se-ui-toolkit 6.54.0 → 6.54.2

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 (151) hide show
  1. package/esm2022/churchillliving-se-ui-toolkit.mjs +5 -0
  2. package/esm2022/lib/components/base/alert-pop-up/alert-pop-up.component.mjs +36 -0
  3. package/esm2022/lib/components/base/caption/caption.component.mjs +73 -0
  4. package/esm2022/lib/components/base/cards/card.component.mjs +175 -0
  5. package/esm2022/lib/components/base/file/file.component.mjs +125 -0
  6. package/esm2022/lib/components/base/file-upload/file-upload.component.mjs +71 -0
  7. package/esm2022/lib/components/base/filter/filter.component.mjs +57 -0
  8. package/esm2022/lib/components/base/form/form.component.mjs +1363 -0
  9. package/esm2022/lib/components/base/form-util/form-util.component.mjs +1152 -0
  10. package/esm2022/lib/components/base/grid/grid.component.mjs +3151 -0
  11. package/esm2022/lib/components/base/grid-row-actions/grid-row-actions.component.mjs +59 -0
  12. package/esm2022/lib/components/base/header/header.component.mjs +100 -0
  13. package/esm2022/lib/components/base/iframe/iframe.component.mjs +44 -0
  14. package/esm2022/lib/components/base/image-gallery/image-gallery.component.mjs +34 -0
  15. package/esm2022/lib/components/base/loader/loader.component.mjs +36 -0
  16. package/esm2022/lib/components/base/menu-bar/menu-bar.component.mjs +130 -0
  17. package/esm2022/lib/components/base/report/report-Filter/report-filter/report-filter.component.mjs +237 -0
  18. package/esm2022/lib/components/base/report/reportGenerateBtn/generate-report-btn/generate-report-btn.component.mjs +42 -0
  19. package/esm2022/lib/components/base/sidebar/sidebar.component.mjs +363 -0
  20. package/esm2022/lib/components/shared/dropdown/dropdown.component.mjs +37 -0
  21. package/esm2022/lib/components/shared/filter-menu/filter-menu.component.mjs +30 -0
  22. package/esm2022/lib/components/shared/global-filters/global-filters.component.mjs +568 -0
  23. package/esm2022/lib/components/shared/grid-update/grid-update.component.mjs +55 -0
  24. package/esm2022/lib/components/shared/notes/notes.component.mjs +32 -0
  25. package/esm2022/lib/directive/add-row.directive.mjs +39 -0
  26. package/{esm2015/lib/models/common.model.js → esm2022/lib/models/common.model.mjs} +1 -1
  27. package/esm2022/lib/models/form.model.mjs +106 -0
  28. package/esm2022/lib/models/grid.model.mjs +134 -0
  29. package/esm2022/lib/models/response.model.mjs +9 -0
  30. package/{esm2015/lib/models/sidebar.model.js → esm2022/lib/models/sidebar.model.mjs} +1 -1
  31. package/esm2022/lib/models/user-info.model.mjs +9 -0
  32. package/esm2022/lib/se-ui-toolkit.module.mjs +268 -0
  33. package/esm2022/lib/services/alert.service.mjs +77 -0
  34. package/{esm2015/lib/services/authentication.service.js → esm2022/lib/services/authentication.service.mjs} +9 -7
  35. package/esm2022/lib/services/card.service.mjs +110 -0
  36. package/esm2022/lib/services/dropdown.service.mjs +69 -0
  37. package/esm2022/lib/services/form.service.mjs +530 -0
  38. package/esm2022/lib/services/grid.service.mjs +1573 -0
  39. package/{esm2015/lib/services/header.service.js → esm2022/lib/services/header.service.mjs} +9 -9
  40. package/esm2022/lib/services/hyperlink.service.mjs +206 -0
  41. package/esm2022/lib/services/loader.service.mjs +36 -0
  42. package/esm2022/lib/services/page-logger.service.mjs +25 -0
  43. package/esm2022/lib/services/report.service.mjs +253 -0
  44. package/esm2022/lib/services/request.service.mjs +77 -0
  45. package/esm2022/lib/services/sidebar.service.mjs +57 -0
  46. package/esm2022/lib/services/system-config.service.mjs +18 -0
  47. package/esm2022/lib/services/toolkit-dialog.service.mjs +31 -0
  48. package/esm2022/lib/services/utilities.service.mjs +1053 -0
  49. package/esm2022/public-api.mjs +61 -0
  50. package/fesm2022/churchillliving-se-ui-toolkit.mjs +12486 -0
  51. package/fesm2022/churchillliving-se-ui-toolkit.mjs.map +1 -0
  52. package/index.d.ts +5 -0
  53. package/lib/components/base/alert-pop-up/alert-pop-up.component.d.ts +3 -0
  54. package/lib/components/base/caption/caption.component.d.ts +3 -0
  55. package/lib/components/base/cards/card.component.d.ts +7 -2
  56. package/lib/components/base/file/file.component.d.ts +3 -0
  57. package/lib/components/base/file-upload/file-upload.component.d.ts +3 -0
  58. package/lib/components/base/filter/filter.component.d.ts +3 -0
  59. package/lib/components/base/form/form.component.d.ts +54 -19
  60. package/lib/components/base/form-util/form-util.component.d.ts +173 -0
  61. package/lib/components/base/grid/grid.component.d.ts +102 -32
  62. package/lib/components/base/grid-row-actions/grid-row-actions.component.d.ts +5 -0
  63. package/lib/components/base/header/header.component.d.ts +3 -0
  64. package/lib/components/base/iframe/iframe.component.d.ts +3 -0
  65. package/lib/components/base/image-gallery/image-gallery.component.d.ts +3 -0
  66. package/lib/components/base/loader/loader.component.d.ts +3 -0
  67. package/lib/components/base/menu-bar/menu-bar.component.d.ts +11 -2
  68. package/lib/components/base/report/report-Filter/report-filter/report-filter.component.d.ts +22 -1
  69. package/lib/components/base/report/reportGenerateBtn/generate-report-btn/generate-report-btn.component.d.ts +15 -13
  70. package/lib/components/base/sidebar/sidebar.component.d.ts +26 -7
  71. package/lib/components/shared/dropdown/dropdown.component.d.ts +3 -0
  72. package/lib/components/shared/filter-menu/filter-menu.component.d.ts +3 -0
  73. package/lib/components/shared/global-filters/global-filters.component.d.ts +25 -12
  74. package/lib/components/shared/grid-update/grid-update.component.d.ts +16 -0
  75. package/lib/components/shared/notes/notes.component.d.ts +3 -0
  76. package/lib/directive/add-row.directive.d.ts +3 -0
  77. package/lib/models/common.model.d.ts +1 -0
  78. package/lib/models/form.model.d.ts +47 -13
  79. package/lib/models/grid.model.d.ts +155 -20
  80. package/lib/models/response.model.d.ts +8 -0
  81. package/lib/models/sidebar.model.d.ts +5 -2
  82. package/lib/models/user-info.model.d.ts +2 -1
  83. package/lib/se-ui-toolkit.module.d.ts +62 -0
  84. package/lib/services/alert.service.d.ts +8 -5
  85. package/lib/services/authentication.service.d.ts +3 -0
  86. package/lib/services/card.service.d.ts +8 -3
  87. package/lib/services/dropdown.service.d.ts +3 -0
  88. package/lib/services/form.service.d.ts +13 -3
  89. package/lib/services/grid.service.d.ts +60 -23
  90. package/lib/services/header.service.d.ts +3 -0
  91. package/lib/services/hyperlink.service.d.ts +12 -5
  92. package/lib/services/loader.service.d.ts +3 -0
  93. package/lib/services/page-logger.service.d.ts +3 -0
  94. package/lib/services/report.service.d.ts +36 -0
  95. package/lib/services/request.service.d.ts +10 -2
  96. package/lib/services/sidebar.service.d.ts +12 -1
  97. package/lib/services/system-config.service.d.ts +7 -0
  98. package/lib/services/toolkit-dialog.service.d.ts +9 -0
  99. package/lib/services/utilities.service.d.ts +17 -9
  100. package/package.json +21 -15
  101. package/public-api.d.ts +5 -1
  102. package/bundles/churchillliving-se-ui-toolkit.umd.js +0 -9296
  103. package/bundles/churchillliving-se-ui-toolkit.umd.js.map +0 -1
  104. package/churchillliving-se-ui-toolkit.d.ts +0 -9
  105. package/churchillliving-se-ui-toolkit.metadata.json +0 -1
  106. package/esm2015/churchillliving-se-ui-toolkit.js +0 -10
  107. package/esm2015/lib/components/base/alert-pop-up/alert-pop-up.component.js +0 -36
  108. package/esm2015/lib/components/base/caption/caption.component.js +0 -75
  109. package/esm2015/lib/components/base/cards/card.component.js +0 -157
  110. package/esm2015/lib/components/base/file/file.component.js +0 -114
  111. package/esm2015/lib/components/base/file-upload/file-upload.component.js +0 -75
  112. package/esm2015/lib/components/base/filter/filter.component.js +0 -54
  113. package/esm2015/lib/components/base/form/form.component.js +0 -942
  114. package/esm2015/lib/components/base/grid/grid.component.js +0 -2221
  115. package/esm2015/lib/components/base/grid-row-actions/grid-row-actions.component.js +0 -44
  116. package/esm2015/lib/components/base/header/header.component.js +0 -99
  117. package/esm2015/lib/components/base/iframe/iframe.component.js +0 -46
  118. package/esm2015/lib/components/base/image-gallery/image-gallery.component.js +0 -33
  119. package/esm2015/lib/components/base/loader/loader.component.js +0 -39
  120. package/esm2015/lib/components/base/menu-bar/menu-bar.component.js +0 -112
  121. package/esm2015/lib/components/base/report/report-Filter/report-filter/report-filter.component.js +0 -127
  122. package/esm2015/lib/components/base/report/reportGenerateBtn/generate-report-btn/generate-report-btn.component.js +0 -98
  123. package/esm2015/lib/components/base/sidebar/sidebar.component.js +0 -272
  124. package/esm2015/lib/components/shared/dropdown/dropdown.component.js +0 -36
  125. package/esm2015/lib/components/shared/filter-menu/filter-menu.component.js +0 -31
  126. package/esm2015/lib/components/shared/global-filters/global-filters.component.js +0 -447
  127. package/esm2015/lib/components/shared/notes/notes.component.js +0 -34
  128. package/esm2015/lib/directive/add-row.directive.js +0 -25
  129. package/esm2015/lib/models/form.model.js +0 -96
  130. package/esm2015/lib/models/grid.model.js +0 -113
  131. package/esm2015/lib/models/response.model.js +0 -2
  132. package/esm2015/lib/models/user-info.model.js +0 -8
  133. package/esm2015/lib/se-ui-toolkit.module.js +0 -152
  134. package/esm2015/lib/services/alert.service.js +0 -80
  135. package/esm2015/lib/services/card.service.js +0 -125
  136. package/esm2015/lib/services/dropdown.service.js +0 -72
  137. package/esm2015/lib/services/form.service.js +0 -398
  138. package/esm2015/lib/services/grid.service.js +0 -986
  139. package/esm2015/lib/services/hyperlink.service.js +0 -114
  140. package/esm2015/lib/services/loader.service.js +0 -36
  141. package/esm2015/lib/services/page-logger.service.js +0 -28
  142. package/esm2015/lib/services/request.service.js +0 -49
  143. package/esm2015/lib/services/sidebar.service.js +0 -37
  144. package/esm2015/lib/services/utilities.service.js +0 -1110
  145. package/esm2015/public-api.js +0 -57
  146. package/fesm2015/churchillliving-se-ui-toolkit.js +0 -8507
  147. package/fesm2015/churchillliving-se-ui-toolkit.js.map +0 -1
  148. /package/{esm2015/lib/components/base/grid/grid.constant.js → esm2022/lib/components/base/grid/grid.constant.mjs} +0 -0
  149. /package/{esm2015/lib/models/header.model.js → esm2022/lib/models/header.model.mjs} +0 -0
  150. /package/{esm2015/lib/models/menu.model.js → esm2022/lib/models/menu.model.mjs} +0 -0
  151. /package/{esm2015/lib/models/request.model.js → esm2022/lib/models/request.model.mjs} +0 -0
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2h1cmNoaWxsbGl2aW5nLXNlLXVpLXRvb2xraXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9jaHVyY2hpbGxsaXZpbmctc2UtdWktdG9vbGtpdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -0,0 +1,36 @@
1
+ import { Component, Optional } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "primeng/dynamicdialog";
4
+ import * as i2 from "@angular/common";
5
+ import * as i3 from "primeng/button";
6
+ export class AlertPopUpComponent {
7
+ constructor(config, ref) {
8
+ this.config = config;
9
+ this.ref = ref;
10
+ }
11
+ ngOnInit() {
12
+ if (this.config?.data) {
13
+ this.message = this.config.data?.alertPopInfo?.message;
14
+ this.buttons = this.config.data?.alertPopInfo?.buttons;
15
+ this.icon = this.config.data?.alertPopInfo?.icon;
16
+ }
17
+ }
18
+ clickedBtn(button) {
19
+ const closeBtn = document.querySelectorAll(".alertPopUp button")[0];
20
+ if (closeBtn) {
21
+ closeBtn?.click();
22
+ this.ref.close(button);
23
+ }
24
+ }
25
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: AlertPopUpComponent, deps: [{ token: i1.DynamicDialogConfig, optional: true }, { token: i1.DynamicDialogRef, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
26
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: AlertPopUpComponent, selector: "lib-alert-pop-up", ngImport: i0, template: "<h4><i [class]=\"icon\"></i> {{message}}</h4>\n<br>\n<button *ngFor=\"let button of buttons\" pButton type=\"button\" [label]=\"button.buttonLabel\"\n [class]=\"button.buttonClass ? button.buttonClass+ ' mr-3' : 'mr-3 p-button-success'\"\n (click)=\"clickedBtn(button)\">\n</button>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }] }); }
27
+ }
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: AlertPopUpComponent, decorators: [{
29
+ type: Component,
30
+ args: [{ selector: 'lib-alert-pop-up', template: "<h4><i [class]=\"icon\"></i> {{message}}</h4>\n<br>\n<button *ngFor=\"let button of buttons\" pButton type=\"button\" [label]=\"button.buttonLabel\"\n [class]=\"button.buttonClass ? button.buttonClass+ ' mr-3' : 'mr-3 p-button-success'\"\n (click)=\"clickedBtn(button)\">\n</button>" }]
31
+ }], ctorParameters: function () { return [{ type: i1.DynamicDialogConfig, decorators: [{
32
+ type: Optional
33
+ }] }, { type: i1.DynamicDialogRef, decorators: [{
34
+ type: Optional
35
+ }] }]; } });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtcG9wLXVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlLXVpLXRvb2xraXQvc3JjL2xpYi9jb21wb25lbnRzL2Jhc2UvYWxlcnQtcG9wLXVwL2FsZXJ0LXBvcC11cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2FsZXJ0LXBvcC11cC9hbGVydC1wb3AtdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBUTVELE1BQU0sT0FBTyxtQkFBbUI7SUFLOUIsWUFBK0IsTUFBMkIsRUFDdkMsR0FBcUI7UUFEVCxXQUFNLEdBQU4sTUFBTSxDQUFxQjtRQUN2QyxRQUFHLEdBQUgsR0FBRyxDQUFrQjtJQUFLLENBQUM7SUFFOUMsUUFBUTtRQUNOLElBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUM7WUFDbkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsT0FBTyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFLE9BQU8sQ0FBQztZQUN2RCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxJQUFJLENBQUM7U0FDbEQ7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLE1BQVc7UUFDcEIsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFzQixDQUFDO1FBQ3pGLElBQUcsUUFBUSxFQUFDO1lBQ1YsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3hCO0lBQ0gsQ0FBQztpSUF0QlUsbUJBQW1CO3FIQUFuQixtQkFBbUIsd0RDUmhDLGtTQUtTOzsyRkRHSSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0Usa0JBQWtCOzswQkFTZixRQUFROzswQkFDcEIsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHluYW1pY0RpYWxvZ0NvbmZpZywgRHluYW1pY0RpYWxvZ1JlZiB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1hbGVydC1wb3AtdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWxlcnQtcG9wLXVwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWxlcnQtcG9wLXVwLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBBbGVydFBvcFVwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgYnV0dG9uczogYW55W11cbiAgbWVzc2FnZTogc3RyaW5nO1xuICBpY29uOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgcHVibGljIGNvbmZpZzogRHluYW1pY0RpYWxvZ0NvbmZpZyxcbiAgQE9wdGlvbmFsKCkgcHVibGljIHJlZjogRHluYW1pY0RpYWxvZ1JlZiwpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmKHRoaXMuY29uZmlnPy5kYXRhKXtcbiAgICAgIHRoaXMubWVzc2FnZSA9IHRoaXMuY29uZmlnLmRhdGE/LmFsZXJ0UG9wSW5mbz8ubWVzc2FnZTtcbiAgICAgIHRoaXMuYnV0dG9ucyA9IHRoaXMuY29uZmlnLmRhdGE/LmFsZXJ0UG9wSW5mbz8uYnV0dG9ucztcbiAgICAgIHRoaXMuaWNvbiA9IHRoaXMuY29uZmlnLmRhdGE/LmFsZXJ0UG9wSW5mbz8uaWNvbjtcbiAgICB9XG4gIH1cblxuICBjbGlja2VkQnRuKGJ1dHRvbjogYW55KXtcbiAgICBjb25zdCBjbG9zZUJ0biA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCIuYWxlcnRQb3BVcCBidXR0b25cIilbMF0gYXMgSFRNTEJ1dHRvbkVsZW1lbnQ7XG4gICAgaWYoY2xvc2VCdG4pe1xuICAgICAgY2xvc2VCdG4/LmNsaWNrKCk7XG4gICAgICB0aGlzLnJlZi5jbG9zZShidXR0b24pO1xuICAgIH1cbiAgfVxufVxuIiwiPGg0PjxpIFtjbGFzc109XCJpY29uXCI+PC9pPiB7e21lc3NhZ2V9fTwvaDQ+XG48YnI+XG48YnV0dG9uICpuZ0Zvcj1cImxldCBidXR0b24gb2YgYnV0dG9uc1wiIHBCdXR0b24gdHlwZT1cImJ1dHRvblwiIFtsYWJlbF09XCJidXR0b24uYnV0dG9uTGFiZWxcIlxuICAgIFtjbGFzc109XCJidXR0b24uYnV0dG9uQ2xhc3MgPyBidXR0b24uYnV0dG9uQ2xhc3MrICcgbXItMycgOiAnbXItMyBwLWJ1dHRvbi1zdWNjZXNzJ1wiXG4gICAgKGNsaWNrKT1cImNsaWNrZWRCdG4oYnV0dG9uKVwiPlxuPC9idXR0b24+Il19
@@ -0,0 +1,73 @@
1
+ import { Component, Optional } from '@angular/core';
2
+ import { EValidator } from '../../../models/form.model';
3
+ import * as utilities from '../../../services/utilities.service';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../../services/form.service";
6
+ import * as i2 from "../../../services/request.service";
7
+ import * as i3 from "../../../services/alert.service";
8
+ import * as i4 from "primeng/dynamicdialog";
9
+ import * as i5 from "@angular/common";
10
+ import * as i6 from "../form/form.component";
11
+ export class CaptionComponent {
12
+ constructor(formService, requestService, alertService, config, ref) {
13
+ this.formService = formService;
14
+ this.requestService = requestService;
15
+ this.alertService = alertService;
16
+ this.config = config;
17
+ this.ref = ref;
18
+ }
19
+ ngOnInit() {
20
+ if (this.config.data) {
21
+ this.id = this.config.data.id;
22
+ this.caption = this.config.data.caption;
23
+ }
24
+ this.initilizeForm();
25
+ }
26
+ initilizeForm() {
27
+ this.dynamicForm = {
28
+ formSections: [
29
+ {
30
+ fields: [
31
+ this.formService.addTextbox({
32
+ field: 'fileCaption',
33
+ label: 'Caption',
34
+ value: this.caption,
35
+ column: 12,
36
+ validations: [{ type: EValidator.REQUIRED }]
37
+ }),
38
+ ],
39
+ },
40
+ ],
41
+ };
42
+ }
43
+ saveForm(formFiels) {
44
+ this.requestService
45
+ .get('/AzureUpload/UpdateCaption', {
46
+ Id: this.id,
47
+ fileCaption: utilities.getFormFieldValue(this.dynamicForm, 'fileCaption'),
48
+ })
49
+ .subscribe((response) => {
50
+ if (response) {
51
+ this.alertService.success('Caption added successfully.');
52
+ this.ref.close(response);
53
+ }
54
+ }, ({ error }) => {
55
+ this.ref.close();
56
+ this.alertService.apiError(error);
57
+ });
58
+ }
59
+ cancelForm(event) {
60
+ //console.log('CancelForm: ', event);
61
+ }
62
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: CaptionComponent, deps: [{ token: i1.FormService }, { token: i2.RequestService }, { token: i3.AlertService }, { token: i4.DynamicDialogConfig, optional: true }, { token: i4.DynamicDialogRef, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
63
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: CaptionComponent, selector: "se-caption", ngImport: i0, template: "<!-- add Caption on DisplayImage Component -->\n<div class=\"caption-form\">\n <se-form\n *ngIf=\"dynamicForm\"\n [form]=\"dynamicForm\"\n (saveForm)=\"saveForm($event)\"\n (cancelForm)=\"cancelForm($event)\"\n >\n </se-form>\n</div>\n", styles: [":host ::ng-deep .caption-form span.error{display:none}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.FormComponent, selector: "se-form", inputs: ["stickyActions", "form", "saveButtonLabel", "cancelButtonLabel", "hideSaveButton", "hideCancelButton", "formButtons", "loading", "activeTestMode"], outputs: ["saveForm", "cancelForm", "dropDownChangeEvent", "sectionClickedEvent"] }] }); }
64
+ }
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: CaptionComponent, decorators: [{
66
+ type: Component,
67
+ args: [{ selector: 'se-caption', template: "<!-- add Caption on DisplayImage Component -->\n<div class=\"caption-form\">\n <se-form\n *ngIf=\"dynamicForm\"\n [form]=\"dynamicForm\"\n (saveForm)=\"saveForm($event)\"\n (cancelForm)=\"cancelForm($event)\"\n >\n </se-form>\n</div>\n", styles: [":host ::ng-deep .caption-form span.error{display:none}\n"] }]
68
+ }], ctorParameters: function () { return [{ type: i1.FormService }, { type: i2.RequestService }, { type: i3.AlertService }, { type: i4.DynamicDialogConfig, decorators: [{
69
+ type: Optional
70
+ }] }, { type: i4.DynamicDialogRef, decorators: [{
71
+ type: Optional
72
+ }] }]; } });
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FwdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2NhcHRpb24vY2FwdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2NhcHRpb24vY2FwdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUF3QixRQUFRLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEYsT0FBTyxFQUFFLFVBQVUsRUFBZ0IsTUFBTSw0QkFBNEIsQ0FBQztBQUl0RSxPQUFPLEtBQUssU0FBUyxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7OztBQU9qRSxNQUFNLE9BQU8sZ0JBQWdCO0lBSzNCLFlBQ1UsV0FBd0IsRUFDeEIsY0FBOEIsRUFDOUIsWUFBMEIsRUFDZixNQUEyQixFQUMzQixHQUFxQjtRQUpoQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDZixXQUFNLEdBQU4sTUFBTSxDQUFxQjtRQUMzQixRQUFHLEdBQUgsR0FBRyxDQUFrQjtJQUN2QyxDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUU7WUFDcEIsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7U0FDekM7UUFDRCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsV0FBVyxHQUFHO1lBQ2pCLFlBQVksRUFBRTtnQkFDWjtvQkFDRSxNQUFNLEVBQUU7d0JBQ04sSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUM7NEJBQzFCLEtBQUssRUFBRSxhQUFhOzRCQUNwQixLQUFLLEVBQUUsU0FBUzs0QkFDaEIsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPOzRCQUNuQixNQUFNLEVBQUUsRUFBRTs0QkFDVixXQUFXLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7eUJBQzdDLENBQUM7cUJBQ0g7aUJBQ0Y7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsUUFBUSxDQUFDLFNBQWM7UUFDckIsSUFBSSxDQUFDLGNBQWM7YUFDaEIsR0FBRyxDQUFhLDRCQUE0QixFQUFFO1lBQzdDLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLFdBQVcsRUFBRSxTQUFTLENBQUMsaUJBQWlCLENBQ3RDLElBQUksQ0FBQyxXQUFXLEVBQ2hCLGFBQWEsQ0FDZDtTQUNGLENBQUM7YUFDRCxTQUFTLENBQ1IsQ0FBQyxRQUFhLEVBQUUsRUFBRTtZQUNoQixJQUFJLFFBQVEsRUFBRTtnQkFDWixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO2dCQUN6RCxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUMxQjtRQUNILENBQUMsRUFDRCxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNaLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUNGLENBQUM7SUFDTixDQUFDO0lBQ0QsVUFBVSxDQUFDLEtBQVU7UUFDbkIscUNBQXFDO0lBQ3ZDLENBQUM7aUlBL0RVLGdCQUFnQjtxSEFBaEIsZ0JBQWdCLGtEQ2I3Qiw0UEFVQTs7MkZER2EsZ0JBQWdCO2tCQUw1QixTQUFTOytCQUNFLFlBQVk7OzBCQWFuQixRQUFROzswQkFDUixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3B0aW9uYWwsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHluYW1pY0RpYWxvZ0NvbmZpZywgRHluYW1pY0RpYWxvZ1JlZiB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XG5pbXBvcnQgeyBFVmFsaWRhdG9yLCBJRHluYW1pY0Zvcm0gfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZm9ybS5tb2RlbCc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hbGVydC5zZXJ2aWNlJztcbmltcG9ydCB7IEZvcm1TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZm9ybS5zZXJ2aWNlJztcbmltcG9ydCB7IFJlcXVlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcmVxdWVzdC5zZXJ2aWNlJztcbmltcG9ydCAqIGFzIHV0aWxpdGllcyBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy91dGlsaXRpZXMuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlLWNhcHRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FwdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhcHRpb24uY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FwdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGR5bmFtaWNGb3JtOiBJRHluYW1pY0Zvcm07XG4gIGlkOiBudW1iZXI7XG4gIGNhcHRpb246IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZvcm1TZXJ2aWNlOiBGb3JtU2VydmljZSxcbiAgICBwcml2YXRlIHJlcXVlc3RTZXJ2aWNlOiBSZXF1ZXN0U2VydmljZSxcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIHB1YmxpYyBjb25maWc6IER5bmFtaWNEaWFsb2dDb25maWcsXG4gICAgQE9wdGlvbmFsKCkgcHVibGljIHJlZjogRHluYW1pY0RpYWxvZ1JlZlxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY29uZmlnLmRhdGEpIHtcbiAgICAgIHRoaXMuaWQgPSB0aGlzLmNvbmZpZy5kYXRhLmlkO1xuICAgICAgdGhpcy5jYXB0aW9uID0gdGhpcy5jb25maWcuZGF0YS5jYXB0aW9uO1xuICAgIH1cbiAgICB0aGlzLmluaXRpbGl6ZUZvcm0oKTtcbiAgfVxuXG4gIGluaXRpbGl6ZUZvcm0oKSB7XG4gICAgdGhpcy5keW5hbWljRm9ybSA9IHtcbiAgICAgIGZvcm1TZWN0aW9uczogW1xuICAgICAgICB7XG4gICAgICAgICAgZmllbGRzOiBbXG4gICAgICAgICAgICB0aGlzLmZvcm1TZXJ2aWNlLmFkZFRleHRib3goe1xuICAgICAgICAgICAgICBmaWVsZDogJ2ZpbGVDYXB0aW9uJyxcbiAgICAgICAgICAgICAgbGFiZWw6ICdDYXB0aW9uJyxcbiAgICAgICAgICAgICAgdmFsdWU6IHRoaXMuY2FwdGlvbixcbiAgICAgICAgICAgICAgY29sdW1uOiAxMixcbiAgICAgICAgICAgICAgdmFsaWRhdGlvbnM6IFt7IHR5cGU6IEVWYWxpZGF0b3IuUkVRVUlSRUQgfV1cbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cblxuICBzYXZlRm9ybShmb3JtRmllbHM6IGFueSkge1xuICAgIHRoaXMucmVxdWVzdFNlcnZpY2VcbiAgICAgIC5nZXQ8YW55W10sIGFueT4oJy9BenVyZVVwbG9hZC9VcGRhdGVDYXB0aW9uJywge1xuICAgICAgICBJZDogdGhpcy5pZCxcbiAgICAgICAgZmlsZUNhcHRpb246IHV0aWxpdGllcy5nZXRGb3JtRmllbGRWYWx1ZShcbiAgICAgICAgICB0aGlzLmR5bmFtaWNGb3JtLFxuICAgICAgICAgICdmaWxlQ2FwdGlvbidcbiAgICAgICAgKSxcbiAgICAgIH0pXG4gICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICAgIGlmIChyZXNwb25zZSkge1xuICAgICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2Uuc3VjY2VzcygnQ2FwdGlvbiBhZGRlZCBzdWNjZXNzZnVsbHkuJyk7XG4gICAgICAgICAgICB0aGlzLnJlZi5jbG9zZShyZXNwb25zZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICAoeyBlcnJvciB9KSA9PiB7XG4gICAgICAgICAgdGhpcy5yZWYuY2xvc2UoKTtcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5hcGlFcnJvcihlcnJvcik7XG4gICAgICAgIH1cbiAgICAgICk7XG4gIH1cbiAgY2FuY2VsRm9ybShldmVudDogYW55KSB7XG4gICAgLy9jb25zb2xlLmxvZygnQ2FuY2VsRm9ybTogJywgZXZlbnQpO1xuICB9XG59XG4iLCI8IS0tIGFkZCBDYXB0aW9uIG9uIERpc3BsYXlJbWFnZSBDb21wb25lbnQgLS0+XG48ZGl2IGNsYXNzPVwiY2FwdGlvbi1mb3JtXCI+XG4gIDxzZS1mb3JtXG4gICAgKm5nSWY9XCJkeW5hbWljRm9ybVwiXG4gICAgW2Zvcm1dPVwiZHluYW1pY0Zvcm1cIlxuICAgIChzYXZlRm9ybSk9XCJzYXZlRm9ybSgkZXZlbnQpXCJcbiAgICAoY2FuY2VsRm9ybSk9XCJjYW5jZWxGb3JtKCRldmVudClcIlxuICA+XG4gIDwvc2UtZm9ybT5cbjwvZGl2PlxuIl19
@@ -0,0 +1,175 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { ESelectFileType } from '../../../models/form.model';
3
+ import { moveItemInArray } from '@angular/cdk/drag-drop';
4
+ import * as utilities from '../../../services/utilities.service';
5
+ import { ESystemConfig } from '../../../models/response.model';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "primeng/dynamicdialog";
8
+ import * as i2 from "../../../services/grid.service";
9
+ import * as i3 from "primeng/api";
10
+ import * as i4 from "../../../services/system-config.service";
11
+ import * as i5 from "@angular/common";
12
+ import * as i6 from "primeng/confirmdialog";
13
+ import * as i7 from "@angular/cdk/drag-drop";
14
+ import * as i8 from "../form-util/form-util.component";
15
+ import * as i9 from "../file/file.component";
16
+ export class CardComponent {
17
+ constructor(dialogService, gridService, confirmationService, systemConfigService) {
18
+ this.dialogService = dialogService;
19
+ this.gridService = gridService;
20
+ this.confirmationService = confirmationService;
21
+ this.systemConfigService = systemConfigService;
22
+ this.selectedCard = new EventEmitter();
23
+ // @Output() onDeleteCard: EventEmitter<any> = new EventEmitter();
24
+ this.data = [];
25
+ this.width = '';
26
+ this.height = '';
27
+ this.showFiles = false;
28
+ }
29
+ ngOnInit() { }
30
+ ngOnChanges() {
31
+ if (this.card) {
32
+ const fileContainerName = this.card?.containerName;
33
+ const fileRootPath = this.systemConfigService.getSystemConfigValue(ESystemConfig.FILEROOTPATH);
34
+ let { data, formSections, cardInfo } = this.card;
35
+ const extensionValues = Object.values(ESelectFileType);
36
+ const hardcodeExtension = extensionValues?.some((ext) => ext?.includes(cardInfo?.extension?.toLowerCase()));
37
+ if (cardInfo && Object.keys(cardInfo).length) {
38
+ this.displayCardInfo = cardInfo;
39
+ data = this.gridService.setDataFields(data);
40
+ const newArr = [];
41
+ data?.forEach((record) => {
42
+ if (record.url && record.fileextension && !record.url.includes(record.fileextension)) {
43
+ if (record.fileextension.startsWith(".")) {
44
+ record.url = record.url + record.fileextension;
45
+ }
46
+ else {
47
+ record.url = record.url + '.' + record.fileextension;
48
+ }
49
+ }
50
+ if (!Object.keys(record)?.includes('azurecontainerid')) {
51
+ const url = (fileRootPath + '/' + fileContainerName + '/')?.toLowerCase();
52
+ newArr.push({ ...record, blobfileurl: url + record[cardInfo?.url?.toLowerCase()], filecaption: record[cardInfo?.caption?.toLowerCase()], fileextension: hardcodeExtension ? cardInfo?.extension?.toLowerCase() : record[cardInfo?.extension?.toLowerCase()] });
53
+ }
54
+ else {
55
+ newArr.push(record);
56
+ }
57
+ });
58
+ this.data = newArr;
59
+ }
60
+ else {
61
+ this.data = this.gridService.setDataFields(data);
62
+ }
63
+ this.dynamicForm = { formSections };
64
+ // set the default value of allowDelete, allowEditableCaption and allowDownload
65
+ this.setCardPropValue('allowDownload');
66
+ this.setCardPropValue('allowDelete');
67
+ this.setCardPropValue('allowEditableCaption');
68
+ //files.allowEditableCaption = this.setCardPropValue(files.allowEditableCaption);
69
+ /** In case of when we are using this component for stand alone then if formSection is exist in
70
+ the this.card and then add in the data array.
71
+ */
72
+ if (this.data) {
73
+ this.data.forEach((x) => {
74
+ if (!x.dynamicform) {
75
+ x.dynamicform = JSON.parse(JSON.stringify(this.dynamicForm));
76
+ }
77
+ utilities.setCardFieldsData(x);
78
+ });
79
+ }
80
+ }
81
+ }
82
+ // set the default value of allowDelete, allowEditableCaption and allowDownload
83
+ setCardPropValue(prop) {
84
+ if (!this.card[prop]?.toString()?.length) {
85
+ this.card[prop] = true;
86
+ }
87
+ }
88
+ dragAndDrop(event) {
89
+ moveItemInArray(this.data, event.previousIndex, event.currentIndex);
90
+ event.item?.element?.nativeElement;
91
+ this.card.data = this.data;
92
+ this.card['change'] = true;
93
+ if (this.card && this.card.onSort) {
94
+ this.card.onSort(this.data);
95
+ }
96
+ }
97
+ deleteImage(event) {
98
+ this.confirmationService.confirm({
99
+ message: 'Are you sure that you want to delete this Image?',
100
+ header: 'Delete Confirmation',
101
+ icon: 'pi pi-exclamation-triangle',
102
+ key: 'handlecolumnActions',
103
+ accept: () => {
104
+ if (this.data && event) {
105
+ let arr = [...this.data];
106
+ const index = arr.findIndex((i) => i.blobfileurl === event.blobfileurl);
107
+ let obj = arr[index];
108
+ arr.splice(index, 1);
109
+ this.data = [...arr];
110
+ if (this.card && this.card.onDelete) {
111
+ obj = this.replacePropName(obj);
112
+ this.card.onDelete(obj);
113
+ // this.onDeleteCard.emit();
114
+ }
115
+ }
116
+ this.confirmationService.close();
117
+ },
118
+ reject: () => {
119
+ this.confirmationService.close();
120
+ },
121
+ });
122
+ }
123
+ replacePropName(cardInfo) {
124
+ if (this.displayCardInfo && Object.keys(this.displayCardInfo).length > 0) {
125
+ const cardProp = { ...this.displayCardInfo };
126
+ const extensionValues = Object.values(ESelectFileType);
127
+ const hardcodeExtension = extensionValues?.some((ext) => ext?.includes(cardInfo?.extension?.toLowerCase()));
128
+ const obj = { ...cardInfo, [cardProp.url]: cardInfo.blobfileurl, [cardProp.caption]: cardInfo.filecaption, [cardProp.extension]: hardcodeExtension ? cardInfo?.extension?.toLowerCase() : cardInfo?.fileextension };
129
+ return obj;
130
+ }
131
+ else {
132
+ return cardInfo;
133
+ }
134
+ }
135
+ saveCaption(event) {
136
+ if (this.data && event) {
137
+ let arr = [...this.data];
138
+ const index = arr.findIndex((i) => i.blobfileurl === event.blobfileurl);
139
+ let obj = arr[index];
140
+ if (index !== -1) {
141
+ obj.filecaption = event.caption;
142
+ arr.splice(index, 1, obj);
143
+ this.card.data = arr;
144
+ this.card['change'] = true;
145
+ }
146
+ if (this.card && this.card?.onCaptionSave) {
147
+ obj = this.replacePropName(obj);
148
+ this.card.onCaptionSave(obj);
149
+ }
150
+ }
151
+ }
152
+ onClickEvent(data, index) {
153
+ data['index'] = index;
154
+ this.selectedCard.emit(data);
155
+ }
156
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: CardComponent, deps: [{ token: i1.DialogService }, { token: i2.GridService }, { token: i3.ConfirmationService }, { token: i4.SystemConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
157
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: CardComponent, selector: "se-card", inputs: { data: "data", width: "width", height: "height", card: "card", setCardData: "setCardData" }, outputs: { selectedCard: "selectedCard" }, usesOnChanges: true, ngImport: i0, template: "<!-- Display Files Card -->\n<p-confirmDialog key=\"handlecolumnActions\"></p-confirmDialog>\n<div\n class=\"card-main-wrapper\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n class=\"example-list\"\n (cdkDropListDropped)=\"dragAndDrop($event)\"\n>\n <div \n class=\"flex cards-wrapper\" \n [ngStyle]=\"{ width: width, height: height }\" \n *ngIf=\"data\" \n [class]=\"card && card.class ? card.class : ''\">\n <div\n cdkDrag\n class=\"example-box flex flex-column cards-wrapper\"\n [class]=\"\n card && card.width && card.width.length > 0\n ? 'col-' + card.width\n : 'col-3'\n \"\n *ngFor=\"let file of data; let i = index\"\n (click)=\"onClickEvent(file,i)\"\n [ngClass]=\"file.selectedCard ? file.selectedCard : ''\"\n >\n <!-- start cards image functionality -->\n <se-file\n [url]=\"file.blobfileurl\"\n [type]=\"file.fileextension\"\n [caption]=\"file?.filecaption\"\n [height]=\"card?.height\"\n [allowDownloadFile]=\"card?.allowDownload\"\n [allowEditableCaption]=\"card?.allowEditableCaption\"\n [allowDeleteFile]=\"card?.allowDelete\"\n [name]=\"file.blobfileurl\"\n [id]=\"file.fileextension\"\n (onDeleteEvent)=\"deleteImage($event)\"\n (onSaveEvent)=\"saveCaption($event)\"\n ></se-file>\n <!-- End cards image functionality -->\n\n <!-- start form functionality in card -->\n <se-form-util\n class=\"form-content\"\n [form]=\"file.dynamicform\"\n [hideSaveButton]=\"true\"\n [hideCancelButton]=\"true\"\n ></se-form-util>\n <!-- End form functionality in card -->\n </div>\n </div>\n\n <!-- in case of form and data is empty or null -->\n <div *ngIf=\"dynamicForm && (!data || data.length == 0)\">\n <se-form-util\n *ngIf=\"dynamicForm\"\n [form]=\"dynamicForm\"\n [hideSaveButton]=\"true\"\n [hideCancelButton]=\"true\"\n ></se-form-util>\n </div>\n</div>\n", styles: [":host ::ng-deep .card-main-wrapper{overflow:scroll}:host ::ng-deep .custom-card .action-buttons{visibility:hidden}:host ::ng-deep .custom-card .image-wrapper:hover .action-buttons{visibility:visible}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box:hover .header-icons{opacity:1}.card-active{transform:scale(1.1);transition:all .2s linear;z-index:999}\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: i5.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i6.ConfirmDialog, selector: "p-confirmDialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position"], outputs: ["onHide"] }, { kind: "directive", type: i7.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i7.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i8.FormUtilComponent, selector: "se-form-util", inputs: ["stickyActions", "form", "hideSaveButton", "hideCancelButton", "formButtons", "loading", "activeTestMode"], outputs: ["saveForm", "cancelForm", "dropDownChangeEvent", "sectionClickedEvent"] }, { kind: "component", type: i9.fileComponent, selector: "se-file", inputs: ["url", "caption", "width", "height", "id", "name", "type", "allowDownloadFile", "allowEditableCaption", "allowDeleteFile"], outputs: ["onDeleteEvent", "onSaveEvent"] }] }); }
158
+ }
159
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: CardComponent, decorators: [{
160
+ type: Component,
161
+ args: [{ selector: 'se-card', template: "<!-- Display Files Card -->\n<p-confirmDialog key=\"handlecolumnActions\"></p-confirmDialog>\n<div\n class=\"card-main-wrapper\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n class=\"example-list\"\n (cdkDropListDropped)=\"dragAndDrop($event)\"\n>\n <div \n class=\"flex cards-wrapper\" \n [ngStyle]=\"{ width: width, height: height }\" \n *ngIf=\"data\" \n [class]=\"card && card.class ? card.class : ''\">\n <div\n cdkDrag\n class=\"example-box flex flex-column cards-wrapper\"\n [class]=\"\n card && card.width && card.width.length > 0\n ? 'col-' + card.width\n : 'col-3'\n \"\n *ngFor=\"let file of data; let i = index\"\n (click)=\"onClickEvent(file,i)\"\n [ngClass]=\"file.selectedCard ? file.selectedCard : ''\"\n >\n <!-- start cards image functionality -->\n <se-file\n [url]=\"file.blobfileurl\"\n [type]=\"file.fileextension\"\n [caption]=\"file?.filecaption\"\n [height]=\"card?.height\"\n [allowDownloadFile]=\"card?.allowDownload\"\n [allowEditableCaption]=\"card?.allowEditableCaption\"\n [allowDeleteFile]=\"card?.allowDelete\"\n [name]=\"file.blobfileurl\"\n [id]=\"file.fileextension\"\n (onDeleteEvent)=\"deleteImage($event)\"\n (onSaveEvent)=\"saveCaption($event)\"\n ></se-file>\n <!-- End cards image functionality -->\n\n <!-- start form functionality in card -->\n <se-form-util\n class=\"form-content\"\n [form]=\"file.dynamicform\"\n [hideSaveButton]=\"true\"\n [hideCancelButton]=\"true\"\n ></se-form-util>\n <!-- End form functionality in card -->\n </div>\n </div>\n\n <!-- in case of form and data is empty or null -->\n <div *ngIf=\"dynamicForm && (!data || data.length == 0)\">\n <se-form-util\n *ngIf=\"dynamicForm\"\n [form]=\"dynamicForm\"\n [hideSaveButton]=\"true\"\n [hideCancelButton]=\"true\"\n ></se-form-util>\n </div>\n</div>\n", styles: [":host ::ng-deep .card-main-wrapper{overflow:scroll}:host ::ng-deep .custom-card .action-buttons{visibility:hidden}:host ::ng-deep .custom-card .image-wrapper:hover .action-buttons{visibility:visible}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box:hover .header-icons{opacity:1}.card-active{transform:scale(1.1);transition:all .2s linear;z-index:999}\n"] }]
162
+ }], ctorParameters: function () { return [{ type: i1.DialogService }, { type: i2.GridService }, { type: i3.ConfirmationService }, { type: i4.SystemConfigService }]; }, propDecorators: { selectedCard: [{
163
+ type: Output
164
+ }], data: [{
165
+ type: Input
166
+ }], width: [{
167
+ type: Input
168
+ }], height: [{
169
+ type: Input
170
+ }], card: [{
171
+ type: Input
172
+ }], setCardData: [{
173
+ type: Input
174
+ }] } });
175
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2NhcmRzL2NhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2UtdWktdG9vbGtpdC9zcmMvbGliL2NvbXBvbmVudHMvYmFzZS9jYXJkcy9jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxFQUFFLGVBQWUsRUFBNkMsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekQsT0FBTyxLQUFLLFNBQVMsTUFBTSxxQ0FBcUMsQ0FBQztBQUVqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7Ozs7O0FBUS9ELE1BQU0sT0FBTyxhQUFhO0lBWXhCLFlBQ1MsYUFBNEIsRUFDM0IsV0FBd0IsRUFDeEIsbUJBQXdDLEVBQ3hDLG1CQUF3QztRQUh6QyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUMzQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4Qix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFmeEMsaUJBQVksR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMvRCxrRUFBa0U7UUFDekQsU0FBSSxHQUFRLEVBQUUsQ0FBQztRQUNmLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsV0FBTSxHQUFXLEVBQUUsQ0FBQztRQUk3QixjQUFTLEdBQVksS0FBSyxDQUFDO0lBUXhCLENBQUM7SUFFSixRQUFRLEtB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QUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XG5pbXBvcnQgeyBFU2VsZWN0RmlsZVR5cGUsIElEeW5hbWljQ2FyZCwgSUR5bmFtaWNGb3JtLCBJVmlld0NhcmRQcm9wIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2Zvcm0ubW9kZWwnO1xuaW1wb3J0IHsgbW92ZUl0ZW1JbkFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBHcmlkU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2dyaWQuc2VydmljZSc7XG5pbXBvcnQgKiBhcyB1dGlsaXRpZXMgZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXRpbGl0aWVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcbmltcG9ydCB7IEVTeXN0ZW1Db25maWcgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmVzcG9uc2UubW9kZWwnO1xuaW1wb3J0IHsgU3lzdGVtQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3N5c3RlbS1jb25maWcuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlLWNhcmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhcmQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBPdXRwdXQoKSBzZWxlY3RlZENhcmQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAvLyBAT3V0cHV0KCkgb25EZWxldGVDYXJkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQElucHV0KCkgZGF0YTogYW55ID0gW107XG4gIEBJbnB1dCgpIHdpZHRoOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgaGVpZ2h0OiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgY2FyZDogYW55O1xuICBASW5wdXQoKSBzZXRDYXJkRGF0YTogYm9vbGVhbjtcbiAgZHluYW1pY0Zvcm06IElEeW5hbWljRm9ybTtcbiAgc2hvd0ZpbGVzOiBib29sZWFuID0gZmFsc2U7XG4gIGRpc3BsYXlDYXJkSW5mbzogSVZpZXdDYXJkUHJvcDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcbiAgICBwcml2YXRlIGdyaWRTZXJ2aWNlOiBHcmlkU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzeXN0ZW1Db25maWdTZXJ2aWNlOiBTeXN0ZW1Db25maWdTZXJ2aWNlLFxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIGlmICh0aGlzLmNhcmQpIHtcbiAgICAgIGNvbnN0IGZpbGVDb250YWluZXJOYW1lID0gdGhpcy5jYXJkPy5jb250YWluZXJOYW1lO1xuICAgICAgY29uc3QgZmlsZVJvb3RQYXRoID0gdGhpcy5zeXN0ZW1Db25maWdTZXJ2aWNlLmdldFN5c3RlbUNvbmZpZ1ZhbHVlKEVTeXN0ZW1Db25maWcuRklMRVJPT1RQQVRIKTtcbiAgICAgIGxldCB7IGRhdGEsIGZvcm1TZWN0aW9ucywgY2FyZEluZm8gfTogYW55ID0gdGhpcy5jYXJkO1xuICAgICAgY29uc3QgZXh0ZW5zaW9uVmFsdWVzID0gT2JqZWN0LnZhbHVlcyhFU2VsZWN0RmlsZVR5cGUpO1xuICAgICAgY29uc3QgaGFyZGNvZGVFeHRlbnNpb24gPSBleHRlbnNpb25WYWx1ZXM/LnNvbWUoKGV4dCkgPT4gZXh0Py5pbmNsdWRlcyhjYXJkSW5mbz8uZXh0ZW5zaW9uPy50b0xvd2VyQ2FzZSgpKSk7XG4gICAgICBpZiAoY2FyZEluZm8gJiYgT2JqZWN0LmtleXMoY2FyZEluZm8pLmxlbmd0aCkge1xuICAgICAgICB0aGlzLmRpc3BsYXlDYXJkSW5mbyA9IGNhcmRJbmZvO1xuICAgICAgICBkYXRhID0gdGhpcy5ncmlkU2VydmljZS5zZXREYXRhRmllbGRzKGRhdGEpO1xuICAgICAgICBjb25zdCBuZXdBcnIgPSBbXTtcbiAgICAgICAgZGF0YT8uZm9yRWFjaCgocmVjb3JkKSA9PiB7XG4gICAgICAgICAgaWYgKHJlY29yZC51cmwgJiYgcmVjb3JkLmZpbGVleHRlbnNpb24gJiYgIXJlY29yZC51cmwuaW5jbHVkZXMocmVjb3JkLmZpbGVleHRlbnNpb24pKSB7XG4gICAgICAgICAgICBpZiAocmVjb3JkLmZpbGVleHRlbnNpb24uc3RhcnRzV2l0aChcIi5cIikpIHtcbiAgICAgICAgICAgICAgcmVjb3JkLnVybCA9IHJlY29yZC51cmwgKyByZWNvcmQuZmlsZWV4dGVuc2lvbjtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHJlY29yZC51cmwgPSByZWNvcmQudXJsICsgJy4nICsgcmVjb3JkLmZpbGVleHRlbnNpb247XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICghT2JqZWN0LmtleXMocmVjb3JkKT8uaW5jbHVkZXMoJ2F6dXJlY29udGFpbmVyaWQnKSkge1xuICAgICAgICAgICAgY29uc3QgdXJsID0gKGZpbGVSb290UGF0aCArICcvJyArIGZpbGVDb250YWluZXJOYW1lICsgJy8nKT8udG9Mb3dlckNhc2UoKTtcbiAgICAgICAgICAgIG5ld0Fyci5wdXNoKHsgLi4ucmVjb3JkLCBibG9iZmlsZXVybDogdXJsICsgcmVjb3JkW2NhcmRJbmZvPy51cmw/LnRvTG93ZXJDYXNlKCldLCBmaWxlY2FwdGlvbjogcmVjb3JkW2NhcmRJbmZvPy5jYXB0aW9uPy50b0xvd2VyQ2FzZSgpXSwgZmlsZWV4dGVuc2lvbjogaGFyZGNvZGVFeHRlbnNpb24gPyBjYXJkSW5mbz8uZXh0ZW5zaW9uPy50b0xvd2VyQ2FzZSgpIDogcmVjb3JkW2NhcmRJbmZvPy5leHRlbnNpb24/LnRvTG93ZXJDYXNlKCldIH0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdBcnIucHVzaChyZWNvcmQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZGF0YSA9IG5ld0FycjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZGF0YSA9IHRoaXMuZ3JpZFNlcnZpY2Uuc2V0RGF0YUZpZWxkcyhkYXRhKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuZHluYW1pY0Zvcm0gPSB7IGZvcm1TZWN0aW9ucyB9O1xuICAgICAgLy8gc2V0IHRoZSBkZWZhdWx0IHZhbHVlIG9mIGFsbG93RGVsZXRlLCBhbGxvd0VkaXRhYmxlQ2FwdGlvbiBhbmQgYWxsb3dEb3dubG9hZFxuICAgICAgdGhpcy5zZXRDYXJkUHJvcFZhbHVlKCdhbGxvd0Rvd25sb2FkJyk7XG4gICAgICB0aGlzLnNldENhcmRQcm9wVmFsdWUoJ2FsbG93RGVsZXRlJyk7XG4gICAgICB0aGlzLnNldENhcmRQcm9wVmFsdWUoJ2FsbG93RWRpdGFibGVDYXB0aW9uJyk7XG4gICAgICAvL2ZpbGVzLmFsbG93RWRpdGFibGVDYXB0aW9uID0gdGhpcy5zZXRDYXJkUHJvcFZhbHVlKGZpbGVzLmFsbG93RWRpdGFibGVDYXB0aW9uKTtcbiAgICAgIC8qKiBJbiBjYXNlIG9mIHdoZW4gd2UgYXJlIHVzaW5nIHRoaXMgY29tcG9uZW50IGZvciBzdGFuZCBhbG9uZSB0aGVuIGlmIGZvcm1TZWN0aW9uIGlzIGV4aXN0IGluXG4gICAgICAgICAgdGhlIHRoaXMuY2FyZCBhbmQgdGhlbiBhZGQgaW4gdGhlIGRhdGEgYXJyYXkuXG4gICAgICAqL1xuICAgICAgaWYgKHRoaXMuZGF0YSkge1xuICAgICAgICB0aGlzLmRhdGEuZm9yRWFjaCgoeDogYW55KSA9PiB7XG4gICAgICAgICAgaWYgKCF4LmR5bmFtaWNmb3JtKSB7XG4gICAgICAgICAgICB4LmR5bmFtaWNmb3JtID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmR5bmFtaWNGb3JtKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHV0aWxpdGllcy5zZXRDYXJkRmllbGRzRGF0YSh4KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc2V0IHRoZSBkZWZhdWx0IHZhbHVlIG9mIGFsbG93RGVsZXRlLCBhbGxvd0VkaXRhYmxlQ2FwdGlvbiBhbmQgYWxsb3dEb3dubG9hZFxuICBzZXRDYXJkUHJvcFZhbHVlKHByb3A6c3RyaW5nKXtcbiAgIGlmKCF0aGlzLmNhcmRbcHJvcF0/LnRvU3RyaW5nKCk/Lmxlbmd0aCkge1xuICAgICAgdGhpcy5jYXJkW3Byb3BdPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIGRyYWdBbmREcm9wKGV2ZW50OiBhbnkpIHtcbiAgICBtb3ZlSXRlbUluQXJyYXkodGhpcy5kYXRhLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xuICAgIGV2ZW50Lml0ZW0/LmVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgdGhpcy5jYXJkLmRhdGEgPSB0aGlzLmRhdGE7XG4gICAgdGhpcy5jYXJkWydjaGFuZ2UnXSA9IHRydWU7XG4gICAgaWYgKHRoaXMuY2FyZCAmJiB0aGlzLmNhcmQub25Tb3J0KSB7XG4gICAgICB0aGlzLmNhcmQub25Tb3J0KHRoaXMuZGF0YSk7XG4gICAgfVxuICB9XG5cbiAgZGVsZXRlSW1hZ2UoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZS5jb25maXJtKHtcbiAgICAgIG1lc3NhZ2U6ICdBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBJbWFnZT8nLFxuICAgICAgaGVhZGVyOiAnRGVsZXRlIENvbmZpcm1hdGlvbicsXG4gICAgICBpY29uOiAncGkgcGktZXhjbGFtYXRpb24tdHJpYW5nbGUnLFxuICAgICAga2V5OiAnaGFuZGxlY29sdW1uQWN0aW9ucycsXG4gICAgICBhY2NlcHQ6ICgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuZGF0YSAmJiBldmVudCkge1xuICAgICAgICAgIGxldCBhcnIgPSBbLi4udGhpcy5kYXRhXTtcbiAgICAgICAgICBjb25zdCBpbmRleCA9IGFyci5maW5kSW5kZXgoXG4gICAgICAgICAgICAoaSkgPT4gaS5ibG9iZmlsZXVybCA9PT0gZXZlbnQuYmxvYmZpbGV1cmxcbiAgICAgICAgICApO1xuICAgICAgICAgIGxldCBvYmogPSBhcnJbaW5kZXhdO1xuICAgICAgICAgIGFyci5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICAgIHRoaXMuZGF0YSA9IFsuLi5hcnJdO1xuXG4gICAgICAgICAgaWYgKHRoaXMuY2FyZCAmJiB0aGlzLmNhcmQub25EZWxldGUpIHtcbiAgICAgICAgICAgIG9iaiA9IHRoaXMucmVwbGFjZVByb3BOYW1lKG9iaik7XG4gICAgICAgICAgICB0aGlzLmNhcmQub25EZWxldGUob2JqKTtcbiAgICAgICAgICAgIC8vIHRoaXMub25EZWxldGVDYXJkLmVtaXQoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNsb3NlKCk7XG4gICAgICB9LFxuICAgICAgcmVqZWN0OiAoKSA9PiB7XG4gICAgICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZS5jbG9zZSgpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHJlcGxhY2VQcm9wTmFtZShjYXJkSW5mbzphbnkpe1xuICAgIGlmKHRoaXMuZGlzcGxheUNhcmRJbmZvICYmIE9iamVjdC5rZXlzKHRoaXMuZGlzcGxheUNhcmRJbmZvKS5sZW5ndGggPiAwKXtcbiAgICAgIGNvbnN0IGNhcmRQcm9wID0gey4uLnRoaXMuZGlzcGxheUNhcmRJbmZvfTtcbiAgICAgIGNvbnN0IGV4dGVuc2lvblZhbHVlcyA9IE9iamVjdC52YWx1ZXMoRVNlbGVjdEZpbGVUeXBlKTtcbiAgICAgIGNvbnN0IGhhcmRjb2RlRXh0ZW5zaW9uID0gZXh0ZW5zaW9uVmFsdWVzPy5zb21lKChleHQpPT4gZXh0Py5pbmNsdWRlcyhjYXJkSW5mbz8uZXh0ZW5zaW9uPy50b0xvd2VyQ2FzZSgpKSk7XG4gICAgICBjb25zdCBvYmogPSB7Li4uY2FyZEluZm8sW2NhcmRQcm9wLnVybF06IGNhcmRJbmZvLmJsb2JmaWxldXJsLFtjYXJkUHJvcC5jYXB0aW9uXTogY2FyZEluZm8uZmlsZWNhcHRpb24sW2NhcmRQcm9wLmV4dGVuc2lvbl06IGhhcmRjb2RlRXh0ZW5zaW9uID8gY2FyZEluZm8/LmV4dGVuc2lvbj8udG9Mb3dlckNhc2UoKSA6IGNhcmRJbmZvPy5maWxlZXh0ZW5zaW9ufTtcbiAgICAgIHJldHVybiBvYmo7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBjYXJkSW5mbztcbiAgICB9XG4gIH1cblxuICBzYXZlQ2FwdGlvbihldmVudDogYW55KSB7XG4gICAgaWYgKHRoaXMuZGF0YSAmJiBldmVudCkge1xuICAgICAgbGV0IGFyciA9IFsuLi50aGlzLmRhdGFdO1xuICAgICAgY29uc3QgaW5kZXggPSBhcnIuZmluZEluZGV4KChpKSA9PiBpLmJsb2JmaWxldXJsID09PSBldmVudC5ibG9iZmlsZXVybCk7XG4gICAgICBsZXQgb2JqID0gYXJyW2luZGV4XTtcbiAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgb2JqLmZpbGVjYXB0aW9uID0gZXZlbnQuY2FwdGlvbjtcbiAgICAgICAgYXJyLnNwbGljZShpbmRleCwgMSwgb2JqKTtcbiAgICAgICAgdGhpcy5jYXJkLmRhdGEgPSBhcnI7XG4gICAgICAgIHRoaXMuY2FyZFsnY2hhbmdlJ10gPSB0cnVlO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuY2FyZCAmJiB0aGlzLmNhcmQ/Lm9uQ2FwdGlvblNhdmUpIHtcbiAgICAgICAgb2JqID0gdGhpcy5yZXBsYWNlUHJvcE5hbWUob2JqKTtcbiAgICAgICAgdGhpcy5jYXJkLm9uQ2FwdGlvblNhdmUob2JqKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvbkNsaWNrRXZlbnQoZGF0YTogYW55LCBpbmRleDogbnVtYmVyKXtcbiAgICBkYXRhWydpbmRleCddID0gaW5kZXg7XG4gICAgdGhpcy5zZWxlY3RlZENhcmQuZW1pdChkYXRhKTtcbiAgfVxuXG59XG4iLCI8IS0tIERpc3BsYXkgRmlsZXMgQ2FyZCAtLT5cbjxwLWNvbmZpcm1EaWFsb2cga2V5PVwiaGFuZGxlY29sdW1uQWN0aW9uc1wiPjwvcC1jb25maXJtRGlhbG9nPlxuPGRpdlxuICBjbGFzcz1cImNhcmQtbWFpbi13cmFwcGVyXCJcbiAgY2RrRHJvcExpc3RcbiAgY2RrRHJvcExpc3RPcmllbnRhdGlvbj1cImhvcml6b250YWxcIlxuICBjbGFzcz1cImV4YW1wbGUtbGlzdFwiXG4gIChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJhZ0FuZERyb3AoJGV2ZW50KVwiXG4+XG4gIDxkaXYgXG4gIGNsYXNzPVwiZmxleCBjYXJkcy13cmFwcGVyXCIgXG4gIFtuZ1N0eWxlXT1cInsgd2lkdGg6IHdpZHRoLCBoZWlnaHQ6IGhlaWdodCB9XCIgXG4gICpuZ0lmPVwiZGF0YVwiIFxuICBbY2xhc3NdPVwiY2FyZCAmJiBjYXJkLmNsYXNzID8gY2FyZC5jbGFzcyA6ICcnXCI+XG4gICAgPGRpdlxuICAgICAgY2RrRHJhZ1xuICAgICAgY2xhc3M9XCJleGFtcGxlLWJveCBmbGV4IGZsZXgtY29sdW1uIGNhcmRzLXdyYXBwZXJcIlxuICAgICAgW2NsYXNzXT1cIlxuICAgICAgICBjYXJkICYmIGNhcmQud2lkdGggJiYgY2FyZC53aWR0aC5sZW5ndGggPiAwXG4gICAgICAgICAgPyAnY29sLScgKyBjYXJkLndpZHRoXG4gICAgICAgICAgOiAnY29sLTMnXG4gICAgICBcIlxuICAgICAgKm5nRm9yPVwibGV0IGZpbGUgb2YgZGF0YTsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAoY2xpY2spPVwib25DbGlja0V2ZW50KGZpbGUsaSlcIlxuICAgICAgW25nQ2xhc3NdPVwiZmlsZS5zZWxlY3RlZENhcmQgPyBmaWxlLnNlbGVjdGVkQ2FyZCA6ICcnXCJcbiAgICA+XG4gICAgICA8IS0tIHN0YXJ0IGNhcmRzIGltYWdlIGZ1bmN0aW9uYWxpdHkgLS0+XG4gICAgICA8c2UtZmlsZVxuICAgICAgICBbdXJsXT1cImZpbGUuYmxvYmZpbGV1cmxcIlxuICAgICAgICBbdHlwZV09XCJmaWxlLmZpbGVleHRlbnNpb25cIlxuICAgICAgICBbY2FwdGlvbl09XCJmaWxlPy5maWxlY2FwdGlvblwiXG4gICAgICAgIFtoZWlnaHRdPVwiY2FyZD8uaGVpZ2h0XCJcbiAgICAgICAgW2FsbG93RG93bmxvYWRGaWxlXT1cImNhcmQ/LmFsbG93RG93bmxvYWRcIlxuICAgICAgICBbYWxsb3dFZGl0YWJsZUNhcHRpb25dPVwiY2FyZD8uYWxsb3dFZGl0YWJsZUNhcHRpb25cIlxuICAgICAgICBbYWxsb3dEZWxldGVGaWxlXT1cImNhcmQ/LmFsbG93RGVsZXRlXCJcbiAgICAgICAgW25hbWVdPVwiZmlsZS5ibG9iZmlsZXVybFwiXG4gICAgICAgIFtpZF09XCJmaWxlLmZpbGVleHRlbnNpb25cIlxuICAgICAgICAob25EZWxldGVFdmVudCk9XCJkZWxldGVJbWFnZSgkZXZlbnQpXCJcbiAgICAgICAgKG9uU2F2ZUV2ZW50KT1cInNhdmVDYXB0aW9uKCRldmVudClcIlxuICAgICAgPjwvc2UtZmlsZT5cbiAgICAgIDwhLS0gRW5kIGNhcmRzIGltYWdlIGZ1bmN0aW9uYWxpdHkgLS0+XG5cbiAgICAgIDwhLS0gc3RhcnQgZm9ybSBmdW5jdGlvbmFsaXR5IGluIGNhcmQgLS0+XG4gICAgICA8c2UtZm9ybS11dGlsXG4gICAgICAgIGNsYXNzPVwiZm9ybS1jb250ZW50XCJcbiAgICAgICAgW2Zvcm1dPVwiZmlsZS5keW5hbWljZm9ybVwiXG4gICAgICAgIFtoaWRlU2F2ZUJ1dHRvbl09XCJ0cnVlXCJcbiAgICAgICAgW2hpZGVDYW5jZWxCdXR0b25dPVwidHJ1ZVwiXG4gICAgICA+PC9zZS1mb3JtLXV0aWw+XG4gICAgICA8IS0tIEVuZCBmb3JtIGZ1bmN0aW9uYWxpdHkgaW4gY2FyZCAtLT5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPCEtLSBpbiBjYXNlIG9mIGZvcm0gYW5kIGRhdGEgaXMgZW1wdHkgb3IgbnVsbCAtLT5cbiAgPGRpdiAqbmdJZj1cImR5bmFtaWNGb3JtICYmICghZGF0YSB8fCBkYXRhLmxlbmd0aCA9PSAwKVwiPlxuICAgIDxzZS1mb3JtLXV0aWxcbiAgICAgICpuZ0lmPVwiZHluYW1pY0Zvcm1cIlxuICAgICAgW2Zvcm1dPVwiZHluYW1pY0Zvcm1cIlxuICAgICAgW2hpZGVTYXZlQnV0dG9uXT1cInRydWVcIlxuICAgICAgW2hpZGVDYW5jZWxCdXR0b25dPVwidHJ1ZVwiXG4gICAgPjwvc2UtZm9ybS11dGlsPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,125 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { ESelectFileType } from '../../../models/form.model';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "primeng/api";
5
+ import * as i2 from "@angular/common";
6
+ import * as i3 from "@angular/forms";
7
+ import * as i4 from "primeng/button";
8
+ import * as i5 from "primeng/inputtext";
9
+ import * as i6 from "primeng/card";
10
+ export class fileComponent {
11
+ constructor(confirmationService) {
12
+ this.confirmationService = confirmationService;
13
+ this.url = '';
14
+ this.caption = '';
15
+ this.width = '';
16
+ this.height = '200px';
17
+ this.onDeleteEvent = new EventEmitter();
18
+ this.onSaveEvent = new EventEmitter();
19
+ this.name = '';
20
+ this.allowDownloadFile = true;
21
+ this.allowEditableCaption = true;
22
+ this.allowDeleteFile = true;
23
+ this.editableCaption = false;
24
+ }
25
+ ngOnInit() {
26
+ this.checkFileExtension();
27
+ }
28
+ checkFileExtension() {
29
+ switch (this.type) {
30
+ case 'png':
31
+ case 'jpeg':
32
+ case 'jfif':
33
+ case 'jpg': {
34
+ this.type = '.image';
35
+ break;
36
+ }
37
+ case 'xlsx':
38
+ case 'xls':
39
+ case 'xlsm':
40
+ case 'txt': {
41
+ this.type = ESelectFileType.EXCEL;
42
+ break;
43
+ }
44
+ case 'pdf':
45
+ case 'html': {
46
+ this.type = ESelectFileType.PDF;
47
+ break;
48
+ }
49
+ case 'doc':
50
+ case 'docx': {
51
+ this.type = ESelectFileType.DOCUMENT;
52
+ break;
53
+ }
54
+ }
55
+ }
56
+ downloadFile(url) {
57
+ const link = document.createElement('a');
58
+ link.href = url;
59
+ link.target = '_blank';
60
+ link.click();
61
+ }
62
+ captionClickEvent() {
63
+ if (this.allowEditableCaption) {
64
+ this.editableCaption = true;
65
+ }
66
+ }
67
+ captionSave(id, name, url, type, caption) {
68
+ let obj = {
69
+ id: id,
70
+ name: name,
71
+ blobfileurl: url,
72
+ type: type,
73
+ caption: caption,
74
+ };
75
+ if (caption !== null) {
76
+ this.caption = caption;
77
+ this.editableCaption = false;
78
+ this.onSaveEvent.emit(obj);
79
+ }
80
+ }
81
+ onDeleteFile(id, name, url, type, caption) {
82
+ let obj = {
83
+ id: id,
84
+ name: name,
85
+ blobfileurl: url,
86
+ type: type,
87
+ caption: caption,
88
+ };
89
+ this.onDeleteEvent.emit(obj);
90
+ }
91
+ cancel() {
92
+ this.editableCaption = false;
93
+ }
94
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: fileComponent, deps: [{ token: i1.ConfirmationService }], target: i0.ɵɵFactoryTarget.Component }); }
95
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: fileComponent, selector: "se-file", inputs: { url: "url", caption: "caption", width: "width", height: "height", id: "id", name: "name", type: "type", allowDownloadFile: "allowDownloadFile", allowEditableCaption: "allowEditableCaption", allowDeleteFile: "allowDeleteFile" }, outputs: { onDeleteEvent: "onDeleteEvent", onSaveEvent: "onSaveEvent" }, ngImport: i0, template: "<div class=\"flex cards-wrapper\">\n <div\n class=\"example-box\"\n [class]=\"width && width.length > 0 ? 'col-' + width : 'col-12'\"\n >\n <p-card class=\"custom-card\">\n <div class=\"image-wrapper\">\n <!-- Start image file type cases -->\n <div [ngSwitch]=\"type\">\n <img\n alt=\"ImageCard\"\n [src]=\"url\"\n [name]=\"name\"\n [id]=\"id\"\n *ngSwitchCase=\"'.image'\"\n [ngStyle]=\"{ height: height }\"\n />\n\n <img\n alt=\"ImageCard\"\n src=\"../../../../assets/images/pdf-file.png\"\n [name]=\"name\"\n [id]=\"id\"\n *ngSwitchCase=\"'.pdf'\"\n [ngStyle]=\"{ height: height }\"\n />\n <img\n alt=\"ImageCard\"\n src=\"../../../../assets/images/xls.png\"\n [name]=\"name\"\n [id]=\"id\"\n *ngSwitchCase=\"'.excel'\"\n [ngStyle]=\"{ height: height }\"\n />\n <img\n alt=\"ImageCard\"\n src=\"../../../../assets/images/doc.png\"\n [name]=\"name\"\n [id]=\"id\"\n *ngSwitchCase=\"'.document'\"\n [ngStyle]=\"{ height: height }\"\n />\n </div>\n <!-- End image file type cases -->\n\n <!-- start caption functionality-->\n <div class=\"edit-caption\">\n <h4\n class=\"example-box\"\n (click)=\"captionClickEvent()\"\n [title]=\"caption\"\n *ngIf=\"!editableCaption\"\n >\n {{ caption }}\n </h4>\n <div\n class=\"flex flex-column align-items-end\" \n *ngIf=\"editableCaption && allowEditableCaption\"\n >\n <input\n type=\"text\"\n name=\"caption\"\n [(ngModel)]=\"caption\"\n pInputText\n (blur)=\"captionSave(id, name, url, type, caption)\"\n />\n <div class=\"icons\">\n <i\n class=\"pi pi-check\"\n (click)=\"captionSave(id, name, url, type, caption)\"\n ></i>\n <i class=\"pi pi-times\" (click)=\"cancel()\"></i>\n </div>\n </div>\n <!-- End caption functionality-->\n\n <!-- start header action button functionality -->\n <div class=\"action-buttons\">\n <button\n pButton\n type=\"button\"\n icon=\"pi pi-arrow-circle-down\"\n (click)=\"downloadFile(url)\"\n class=\"p-button-rounded p-button-text\"\n *ngIf=\"allowDownloadFile\"\n ></button>\n <button\n pButton\n type=\"button\"\n icon=\"pi pi-trash\"\n (click)=\"onDeleteFile(id, name, url, type, caption)\"\n class=\"p-button-rounded p-button-text\"\n *ngIf=\"allowDeleteFile\"\n ></button>\n </div>\n <!-- End header action button functionality -->\n </div>\n </div>\n </p-card>\n </div>\n</div>\n", styles: [":host ::ng-deep .custom-card .action-buttons{visibility:hidden}:host ::ng-deep .custom-card .image-wrapper:hover .action-buttons{visibility:visible}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i5.InputText, selector: "[pInputText]" }, { kind: "component", type: i6.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }] }); }
96
+ }
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: fileComponent, decorators: [{
98
+ type: Component,
99
+ args: [{ selector: 'se-file', template: "<div class=\"flex cards-wrapper\">\n <div\n class=\"example-box\"\n [class]=\"width && width.length > 0 ? 'col-' + width : 'col-12'\"\n >\n <p-card class=\"custom-card\">\n <div class=\"image-wrapper\">\n <!-- Start image file type cases -->\n <div [ngSwitch]=\"type\">\n <img\n alt=\"ImageCard\"\n [src]=\"url\"\n [name]=\"name\"\n [id]=\"id\"\n *ngSwitchCase=\"'.image'\"\n [ngStyle]=\"{ height: height }\"\n />\n\n <img\n alt=\"ImageCard\"\n src=\"../../../../assets/images/pdf-file.png\"\n [name]=\"name\"\n [id]=\"id\"\n *ngSwitchCase=\"'.pdf'\"\n [ngStyle]=\"{ height: height }\"\n />\n <img\n alt=\"ImageCard\"\n src=\"../../../../assets/images/xls.png\"\n [name]=\"name\"\n [id]=\"id\"\n *ngSwitchCase=\"'.excel'\"\n [ngStyle]=\"{ height: height }\"\n />\n <img\n alt=\"ImageCard\"\n src=\"../../../../assets/images/doc.png\"\n [name]=\"name\"\n [id]=\"id\"\n *ngSwitchCase=\"'.document'\"\n [ngStyle]=\"{ height: height }\"\n />\n </div>\n <!-- End image file type cases -->\n\n <!-- start caption functionality-->\n <div class=\"edit-caption\">\n <h4\n class=\"example-box\"\n (click)=\"captionClickEvent()\"\n [title]=\"caption\"\n *ngIf=\"!editableCaption\"\n >\n {{ caption }}\n </h4>\n <div\n class=\"flex flex-column align-items-end\" \n *ngIf=\"editableCaption && allowEditableCaption\"\n >\n <input\n type=\"text\"\n name=\"caption\"\n [(ngModel)]=\"caption\"\n pInputText\n (blur)=\"captionSave(id, name, url, type, caption)\"\n />\n <div class=\"icons\">\n <i\n class=\"pi pi-check\"\n (click)=\"captionSave(id, name, url, type, caption)\"\n ></i>\n <i class=\"pi pi-times\" (click)=\"cancel()\"></i>\n </div>\n </div>\n <!-- End caption functionality-->\n\n <!-- start header action button functionality -->\n <div class=\"action-buttons\">\n <button\n pButton\n type=\"button\"\n icon=\"pi pi-arrow-circle-down\"\n (click)=\"downloadFile(url)\"\n class=\"p-button-rounded p-button-text\"\n *ngIf=\"allowDownloadFile\"\n ></button>\n <button\n pButton\n type=\"button\"\n icon=\"pi pi-trash\"\n (click)=\"onDeleteFile(id, name, url, type, caption)\"\n class=\"p-button-rounded p-button-text\"\n *ngIf=\"allowDeleteFile\"\n ></button>\n </div>\n <!-- End header action button functionality -->\n </div>\n </div>\n </p-card>\n </div>\n</div>\n", styles: [":host ::ng-deep .custom-card .action-buttons{visibility:hidden}:host ::ng-deep .custom-card .image-wrapper:hover .action-buttons{visibility:visible}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
100
+ }], ctorParameters: function () { return [{ type: i1.ConfirmationService }]; }, propDecorators: { url: [{
101
+ type: Input
102
+ }], caption: [{
103
+ type: Input
104
+ }], width: [{
105
+ type: Input
106
+ }], height: [{
107
+ type: Input
108
+ }], onDeleteEvent: [{
109
+ type: Output
110
+ }], onSaveEvent: [{
111
+ type: Output
112
+ }], id: [{
113
+ type: Input
114
+ }], name: [{
115
+ type: Input
116
+ }], type: [{
117
+ type: Input
118
+ }], allowDownloadFile: [{
119
+ type: Input
120
+ }], allowEditableCaption: [{
121
+ type: Input
122
+ }], allowDeleteFile: [{
123
+ type: Input
124
+ }] } });
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2ZpbGUvZmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2ZpbGUvZmlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7Ozs7QUFPN0QsTUFBTSxPQUFPLGFBQWE7SUFleEIsWUFBb0IsbUJBQXdDO1FBQXhDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFkbkQsUUFBRyxHQUFXLEVBQUUsQ0FBQztRQUNqQixZQUFPLEdBQVcsRUFBRSxDQUFDO1FBQ3JCLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsV0FBTSxHQUFXLE9BQU8sQ0FBQztRQUN4QixrQkFBYSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3RELGdCQUFXLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFckQsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUVsQixzQkFBaUIsR0FBWSxJQUFJLENBQUM7UUFDbEMseUJBQW9CLEdBQVksSUFBSSxDQUFDO1FBQ3JDLG9CQUFlLEdBQVksSUFBSSxDQUFDO1FBQ3pDLG9CQUFlLEdBQVksS0FBSyxDQUFDO0lBRThCLENBQUM7SUFFaEUsUUFBUTtRQUNOLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2pC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QWU7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25TZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHsgRVNlbGVjdEZpbGVUeXBlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2Zvcm0ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZS1maWxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWxlLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIGZpbGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSB1cmw6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBjYXB0aW9uOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgd2lkdGg6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBoZWlnaHQ6IHN0cmluZyA9ICcyMDBweCc7XG4gIEBPdXRwdXQoKSBvbkRlbGV0ZUV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uU2F2ZUV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQElucHV0KCkgaWQ6IG51bWJlcjtcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHR5cGU6IGFueTtcbiAgQElucHV0KCkgYWxsb3dEb3dubG9hZEZpbGU6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBhbGxvd0VkaXRhYmxlQ2FwdGlvbjogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGFsbG93RGVsZXRlRmlsZTogYm9vbGVhbiA9IHRydWU7XG4gIGVkaXRhYmxlQ2FwdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29uZmlybWF0aW9uU2VydmljZTogQ29uZmlybWF0aW9uU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrRmlsZUV4dGVuc2lvbigpO1xuICB9XG5cbiAgY2hlY2tGaWxlRXh0ZW5zaW9uKCkge1xuICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICBjYXNlICdwbmcnOlxuICAgICAgY2FzZSAnanBlZyc6XG4gICAgICBjYXNlICdqZmlmJzpcbiAgICAgIGNhc2UgJ2pwZyc6IHtcbiAgICAgICAgdGhpcy50eXBlID0gJy5pbWFnZSc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAneGxzeCc6XG4gICAgICBjYXNlICd4bHMnOlxuICAgICAgY2FzZSAneGxzbSc6XG4gICAgICBjYXNlICd0eHQnOiB7XG4gICAgICAgIHRoaXMudHlwZSA9IEVTZWxlY3RGaWxlVHlwZS5FWENFTDtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlICdwZGYnOlxuICAgICAgY2FzZSAnaHRtbCc6IHtcbiAgICAgICAgdGhpcy50eXBlID0gRVNlbGVjdEZpbGVUeXBlLlBERjtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlICdkb2MnOlxuICAgICAgY2FzZSAnZG9jeCc6IHtcbiAgICAgICAgdGhpcy50eXBlID0gRVNlbGVjdEZpbGVUeXBlLkRPQ1VNRU5UO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBkb3dubG9hZEZpbGUodXJsOiBzdHJpbmcpIHtcbiAgICBjb25zdCBsaW5rOiBhbnkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgbGluay5ocmVmID0gdXJsO1xuICAgIGxpbmsudGFyZ2V0ID0gJ19ibGFuayc7XG4gICAgbGluay5jbGljaygpO1xuICB9XG5cbiAgY2FwdGlvbkNsaWNrRXZlbnQoKSB7XG4gICAgaWYgKHRoaXMuYWxsb3dFZGl0YWJsZUNhcHRpb24pIHtcbiAgICAgIHRoaXMuZWRpdGFibGVDYXB0aW9uID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBjYXB0aW9uU2F2ZShcbiAgICBpZDogbnVtYmVyLFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICB1cmw6IHN0cmluZyxcbiAgICB0eXBlOiBhbnksXG4gICAgY2FwdGlvbjogc3RyaW5nXG4gICkge1xuICAgIGxldCBvYmogPSB7XG4gICAgICBpZDogaWQsXG4gICAgICBuYW1lOiBuYW1lLFxuICAgICAgYmxvYmZpbGV1cmw6IHVybCxcbiAgICAgIHR5cGU6IHR5cGUsXG4gICAgICBjYXB0aW9uOiBjYXB0aW9uLFxuICAgIH07XG4gICAgaWYoY2FwdGlvbiAhPT0gbnVsbCl7XG4gICAgICB0aGlzLmNhcHRpb24gPSBjYXB0aW9uO1xuICAgICAgdGhpcy5lZGl0YWJsZUNhcHRpb24gPSBmYWxzZTtcbiAgICAgIHRoaXMub25TYXZlRXZlbnQuZW1pdChvYmopO1xuICAgIH1cbiAgfVxuXG4gIG9uRGVsZXRlRmlsZShcbiAgICBpZDogbnVtYmVyLFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICB1cmw6IHN0cmluZyxcbiAgICB0eXBlOiBhbnksXG4gICAgY2FwdGlvbjogc3RyaW5nXG4gICkge1xuICAgIGxldCBvYmogPSB7XG4gICAgICBpZDogaWQsXG4gICAgICBuYW1lOiBuYW1lLFxuICAgICAgYmxvYmZpbGV1cmw6IHVybCxcbiAgICAgIHR5cGU6IHR5cGUsXG4gICAgICBjYXB0aW9uOiBjYXB0aW9uLFxuICAgIH07XG4gICAgdGhpcy5vbkRlbGV0ZUV2ZW50LmVtaXQob2JqKTtcbiAgfVxuXG4gIGNhbmNlbCgpIHtcbiAgICB0aGlzLmVkaXRhYmxlQ2FwdGlvbiA9IGZhbHNlO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBjYXJkcy13cmFwcGVyXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImV4YW1wbGUtYm94XCJcbiAgICBbY2xhc3NdPVwid2lkdGggJiYgd2lkdGgubGVuZ3RoID4gMCA/ICdjb2wtJyArIHdpZHRoIDogJ2NvbC0xMidcIlxuICA+XG4gICAgPHAtY2FyZCBjbGFzcz1cImN1c3RvbS1jYXJkXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2Utd3JhcHBlclwiPlxuICAgICAgICA8IS0tIFN0YXJ0IGltYWdlIGZpbGUgdHlwZSBjYXNlcyAtLT5cbiAgICAgICAgPGRpdiBbbmdTd2l0Y2hdPVwidHlwZVwiPlxuICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgIGFsdD1cIkltYWdlQ2FyZFwiXG4gICAgICAgICAgICBbc3JjXT1cInVybFwiXG4gICAgICAgICAgICBbbmFtZV09XCJuYW1lXCJcbiAgICAgICAgICAgIFtpZF09XCJpZFwiXG4gICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJy5pbWFnZSdcIlxuICAgICAgICAgICAgW25nU3R5bGVdPVwieyBoZWlnaHQ6IGhlaWdodCB9XCJcbiAgICAgICAgICAvPlxuXG4gICAgICAgICAgPGltZ1xuICAgICAgICAgICAgYWx0PVwiSW1hZ2VDYXJkXCJcbiAgICAgICAgICAgIHNyYz1cIi4uLy4uLy4uLy4uL2Fzc2V0cy9pbWFnZXMvcGRmLWZpbGUucG5nXCJcbiAgICAgICAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgICAgICAgW2lkXT1cImlkXCJcbiAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInLnBkZidcIlxuICAgICAgICAgICAgW25nU3R5bGVdPVwieyBoZWlnaHQ6IGhlaWdodCB9XCJcbiAgICAgICAgICAvPlxuICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgIGFsdD1cIkltYWdlQ2FyZFwiXG4gICAgICAgICAgICBzcmM9XCIuLi8uLi8uLi8uLi9hc3NldHMvaW1hZ2VzL3hscy5wbmdcIlxuICAgICAgICAgICAgW25hbWVdPVwibmFtZVwiXG4gICAgICAgICAgICBbaWRdPVwiaWRcIlxuICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIicuZXhjZWwnXCJcbiAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsgaGVpZ2h0OiBoZWlnaHQgfVwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8aW1nXG4gICAgICAgICAgICBhbHQ9XCJJbWFnZUNhcmRcIlxuICAgICAgICAgICAgc3JjPVwiLi4vLi4vLi4vLi4vYXNzZXRzL2ltYWdlcy9kb2MucG5nXCJcbiAgICAgICAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgICAgICAgW2lkXT1cImlkXCJcbiAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInLmRvY3VtZW50J1wiXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJ7IGhlaWdodDogaGVpZ2h0IH1cIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tIEVuZCBpbWFnZSBmaWxlIHR5cGUgY2FzZXMgLS0+XG5cbiAgICAgICAgPCEtLSBzdGFydCBjYXB0aW9uIGZ1bmN0aW9uYWxpdHktLT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImVkaXQtY2FwdGlvblwiPlxuICAgICAgICAgIDxoNFxuICAgICAgICAgICAgY2xhc3M9XCJleGFtcGxlLWJveFwiXG4gICAgICAgICAgICAoY2xpY2spPVwiY2FwdGlvbkNsaWNrRXZlbnQoKVwiXG4gICAgICAgICAgICBbdGl0bGVdPVwiY2FwdGlvblwiXG4gICAgICAgICAgICAqbmdJZj1cIiFlZGl0YWJsZUNhcHRpb25cIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7IGNhcHRpb24gfX1cbiAgICAgICAgICA8L2g0PlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtZW5kXCIgXG4gICAgICAgICAgKm5nSWY9XCJlZGl0YWJsZUNhcHRpb24gJiYgYWxsb3dFZGl0YWJsZUNhcHRpb25cIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgIG5hbWU9XCJjYXB0aW9uXCJcbiAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjYXB0aW9uXCJcbiAgICAgICAgICAgICAgcElucHV0VGV4dFxuICAgICAgICAgICAgICAoYmx1cik9XCJjYXB0aW9uU2F2ZShpZCwgbmFtZSwgdXJsLCB0eXBlLCBjYXB0aW9uKVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImljb25zXCI+XG4gICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJwaSBwaS1jaGVja1wiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImNhcHRpb25TYXZlKGlkLCBuYW1lLCB1cmwsIHR5cGUsIGNhcHRpb24pXCJcbiAgICAgICAgICAgICAgPjwvaT5cbiAgICAgICAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS10aW1lc1wiIChjbGljayk9XCJjYW5jZWwoKVwiPjwvaT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwhLS0gRW5kIGNhcHRpb24gZnVuY3Rpb25hbGl0eS0tPlxuXG4gICAgICAgICAgPCEtLSBzdGFydCBoZWFkZXIgYWN0aW9uIGJ1dHRvbiBmdW5jdGlvbmFsaXR5IC0tPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tYnV0dG9uc1wiPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBwQnV0dG9uXG4gICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICBpY29uPVwicGkgcGktYXJyb3ctY2lyY2xlLWRvd25cIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiZG93bmxvYWRGaWxlKHVybClcIlxuICAgICAgICAgICAgICBjbGFzcz1cInAtYnV0dG9uLXJvdW5kZWQgcC1idXR0b24tdGV4dFwiXG4gICAgICAgICAgICAgICpuZ0lmPVwiYWxsb3dEb3dubG9hZEZpbGVcIlxuICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBwQnV0dG9uXG4gICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICBpY29uPVwicGkgcGktdHJhc2hcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25EZWxldGVGaWxlKGlkLCBuYW1lLCB1cmwsIHR5cGUsIGNhcHRpb24pXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJwLWJ1dHRvbi1yb3VuZGVkIHAtYnV0dG9uLXRleHRcIlxuICAgICAgICAgICAgICAqbmdJZj1cImFsbG93RGVsZXRlRmlsZVwiXG4gICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPCEtLSBFbmQgaGVhZGVyIGFjdGlvbiBidXR0b24gZnVuY3Rpb25hbGl0eSAtLT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L3AtY2FyZD5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,71 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../../../services/request.service";
4
+ import * as i2 from "../../../services/alert.service";
5
+ import * as i3 from "primeng/inputtext";
6
+ export class FileUploadComponent {
7
+ constructor(requestService, alertService) {
8
+ this.requestService = requestService;
9
+ this.alertService = alertService;
10
+ this.allowMultiple = false;
11
+ this.fileUrl = new EventEmitter();
12
+ this.uploadFileOnReturn = new EventEmitter();
13
+ }
14
+ ngOnInit() { }
15
+ uploadFile(files) {
16
+ let fileData = new FormData();
17
+ let chooseFile = false;
18
+ for (let i = 0; i < files.length; i++) {
19
+ if (files[i]) {
20
+ chooseFile = true;
21
+ fileData.append(files[i].name, files[i]);
22
+ }
23
+ }
24
+ if (fileData && chooseFile) {
25
+ if (this.fields && this.fields.uniqueKey?.length > 0) {
26
+ fileData.append('uniqueKey', this.fields?.uniqueKey);
27
+ }
28
+ else if (this.fields && this.fields.pathSystemConfig?.length > 0) {
29
+ fileData.append('azureContainer', this.fields.pathSystemConfig);
30
+ }
31
+ this.requestService.get('/Upload', fileData).subscribe((data) => {
32
+ if (data) {
33
+ this.alertService.success('File Upload Successfully.');
34
+ if (this.fields?.onReturn) {
35
+ this.fields.onReturn(data.results);
36
+ this.uploadFileOnReturn.emit();
37
+ }
38
+ this.fileUrl.emit(data.results);
39
+ }
40
+ }, ({ error }) => {
41
+ this.alertService.apiError(error);
42
+ if (this.fields.onReturn) {
43
+ this.fields.onReturn(error);
44
+ this.uploadFileOnReturn.emit();
45
+ }
46
+ });
47
+ }
48
+ }
49
+ onClickEvent() {
50
+ if (this.fields && this.fields.onClick) {
51
+ this.fields.onClick();
52
+ }
53
+ }
54
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: FileUploadComponent, deps: [{ token: i1.RequestService }, { token: i2.AlertService }], target: i0.ɵɵFactoryTarget.Component }); }
55
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: FileUploadComponent, selector: "se-file-upload", inputs: { acceptFileTypes: "acceptFileTypes", allowMultiple: "allowMultiple", fields: "fields" }, outputs: { fileUrl: "fileUrl", uploadFileOnReturn: "uploadFileOnReturn" }, ngImport: i0, template: "<!-- file Upload Component-->\n<input\n pInputText\n #fileInput\n type=\"file\"\n id=\"file\"\n [accept]=\"acceptFileTypes\"\n [multiple]=\"allowMultiple\"\n (change)=\"uploadFile(fileInput.files)\"\n (click)=\"onClickEvent()\"\n/>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.InputText, selector: "[pInputText]" }] }); }
56
+ }
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: FileUploadComponent, decorators: [{
58
+ type: Component,
59
+ args: [{ selector: 'se-file-upload', template: "<!-- file Upload Component-->\n<input\n pInputText\n #fileInput\n type=\"file\"\n id=\"file\"\n [accept]=\"acceptFileTypes\"\n [multiple]=\"allowMultiple\"\n (change)=\"uploadFile(fileInput.files)\"\n (click)=\"onClickEvent()\"\n/>\n" }]
60
+ }], ctorParameters: function () { return [{ type: i1.RequestService }, { type: i2.AlertService }]; }, propDecorators: { acceptFileTypes: [{
61
+ type: Input
62
+ }], allowMultiple: [{
63
+ type: Input
64
+ }], fields: [{
65
+ type: Input
66
+ }], fileUrl: [{
67
+ type: Output
68
+ }], uploadFileOnReturn: [{
69
+ type: Output
70
+ }] } });
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2UtdWktdG9vbGtpdC9zcmMvbGliL2NvbXBvbmVudHMvYmFzZS9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBUy9FLE1BQU0sT0FBTyxtQkFBbUI7SUFPOUIsWUFDVSxjQUE4QixFQUM5QixZQUEwQjtRQUQxQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFQM0Isa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFFOUIsWUFBTyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2hELHVCQUFrQixHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBS2xFLENBQUM7SUFFSixRQUFRLEtBQVUsQ0FBQztJQUVuQixVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLFFBQVEsR0FBSSxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQy9CLElBQUksVUFBVSxHQUFXLEtBQUssQ0FBQztRQUMvQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNyQyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDWixVQUFVLEdBQUcsSUFBSSxDQUFDO2dCQUNsQixRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDMUM7U0FDRjtRQUVELElBQUksUUFBUSxJQUFJLFVBQVUsRUFBRTtZQUMxQixJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDcEQsUUFBUSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQzthQUN0RDtpQkFBSyxJQUFHLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEdBQUcsQ0FBQyxFQUFDO2dCQUMvRCxRQUFRLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzthQUNqRTtZQUNELElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFhLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQyxTQUFTLENBQ2hFLENBQUMsSUFBUyxFQUFFLEVBQUU7Z0JBQ1osSUFBSSxJQUFJLEVBQUU7b0JBQ1IsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FBQztvQkFDdkQsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRTt3QkFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO3dCQUNuQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUM7cUJBQ2hDO29CQUNELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztpQkFDakM7WUFDSCxDQUFDLEVBQ0QsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7Z0JBQ1osSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2xDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUU7b0JBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUM1QixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUM7aUJBQ2hDO1lBQ0gsQ0FBQyxDQUNGLENBQUM7U0FDSDtJQUNILENBQUM7SUFDRCxZQUFZO1FBQ1YsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFO1lBQ3RDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDdkI7SUFDSCxDQUFDO2lJQXZEVSxtQkFBbUI7cUhBQW5CLG1CQUFtQixtT0NUaEMsbVBBV0E7OzJGREZhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxnQkFBZ0I7Z0lBS2pCLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0ksT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFU2VsZWN0RmlsZVR5cGUsIElGb3JtRmllbGQgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZm9ybS5tb2RlbCc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hbGVydC5zZXJ2aWNlJztcbmltcG9ydCB7IFJlcXVlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcmVxdWVzdC5zZXJ2aWNlJztcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlLWZpbGUtdXBsb2FkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsZS11cGxvYWQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRmlsZVVwbG9hZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGFjY2VwdEZpbGVUeXBlczogYW55O1xuICBASW5wdXQoKSBhbGxvd011bHRpcGxlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGZpZWxkczogYW55O1xuICBAT3V0cHV0KCkgZmlsZVVybDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSB1cGxvYWRGaWxlT25SZXR1cm46IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVxdWVzdFNlcnZpY2U6IFJlcXVlc3RTZXJ2aWNlLFxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2VcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge31cblxuICB1cGxvYWRGaWxlKGZpbGVzOiBhbnkpIHtcbiAgICBsZXQgZmlsZURhdGEgPSAgbmV3IEZvcm1EYXRhKCk7IFxuICAgIGxldCBjaG9vc2VGaWxlOmJvb2xlYW4gPSBmYWxzZTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGZpbGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAoZmlsZXNbaV0pIHtcbiAgICAgICAgY2hvb3NlRmlsZSA9IHRydWU7XG4gICAgICAgIGZpbGVEYXRhLmFwcGVuZChmaWxlc1tpXS5uYW1lLCBmaWxlc1tpXSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGZpbGVEYXRhICYmIGNob29zZUZpbGUpIHtcbiAgICAgIGlmICh0aGlzLmZpZWxkcyAmJiB0aGlzLmZpZWxkcy51bmlxdWVLZXk/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgZmlsZURhdGEuYXBwZW5kKCd1bmlxdWVLZXknLCB0aGlzLmZpZWxkcz8udW5pcXVlS2V5KTtcbiAgICAgIH1lbHNlIGlmKHRoaXMuZmllbGRzICYmIHRoaXMuZmllbGRzLnBhdGhTeXN0ZW1Db25maWc/Lmxlbmd0aCA+IDApe1xuICAgICAgICBmaWxlRGF0YS5hcHBlbmQoJ2F6dXJlQ29udGFpbmVyJywgdGhpcy5maWVsZHMucGF0aFN5c3RlbUNvbmZpZyk7XG4gICAgICB9XG4gICAgICB0aGlzLnJlcXVlc3RTZXJ2aWNlLmdldDxhbnlbXSwgYW55PignL1VwbG9hZCcsIGZpbGVEYXRhKS5zdWJzY3JpYmUoXG4gICAgICAgIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2Uuc3VjY2VzcygnRmlsZSBVcGxvYWQgU3VjY2Vzc2Z1bGx5LicpO1xuICAgICAgICAgICAgaWYgKHRoaXMuZmllbGRzPy5vblJldHVybikge1xuICAgICAgICAgICAgICB0aGlzLmZpZWxkcy5vblJldHVybihkYXRhLnJlc3VsdHMpO1xuICAgICAgICAgICAgICB0aGlzLnVwbG9hZEZpbGVPblJldHVybi5lbWl0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmZpbGVVcmwuZW1pdChkYXRhLnJlc3VsdHMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgKHsgZXJyb3IgfSkgPT4ge1xuICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFwaUVycm9yKGVycm9yKTtcbiAgICAgICAgICBpZiAodGhpcy5maWVsZHMub25SZXR1cm4pIHtcbiAgICAgICAgICAgIHRoaXMuZmllbGRzLm9uUmV0dXJuKGVycm9yKTtcbiAgICAgICAgICAgIHRoaXMudXBsb2FkRmlsZU9uUmV0dXJuLmVtaXQoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfVxuICB9XG4gIG9uQ2xpY2tFdmVudCgpIHtcbiAgICBpZiAodGhpcy5maWVsZHMgJiYgdGhpcy5maWVsZHMub25DbGljaykge1xuICAgICAgdGhpcy5maWVsZHMub25DbGljaygpO1xuICAgIH1cbiAgfSAgXG59XG4iLCI8IS0tIGZpbGUgVXBsb2FkIENvbXBvbmVudC0tPlxuPGlucHV0XG4gIHBJbnB1dFRleHRcbiAgI2ZpbGVJbnB1dFxuICB0eXBlPVwiZmlsZVwiXG4gIGlkPVwiZmlsZVwiXG4gIFthY2NlcHRdPVwiYWNjZXB0RmlsZVR5cGVzXCJcbiAgW211bHRpcGxlXT1cImFsbG93TXVsdGlwbGVcIlxuICAoY2hhbmdlKT1cInVwbG9hZEZpbGUoZmlsZUlucHV0LmZpbGVzKVwiXG4gIChjbGljayk9XCJvbkNsaWNrRXZlbnQoKVwiXG4vPlxuIl19