barsa-develop-components 1.0.456 → 2.0.1

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 (205) hide show
  1. package/{esm2020 → esm2022}/barsa-develop-components.mjs +4 -4
  2. package/esm2022/lib/accept-reject/accept-reject.component.mjs +68 -0
  3. package/esm2022/lib/avatar/avatar.component.mjs +29 -0
  4. package/esm2022/lib/barcode-format-pipe.mjs +24 -0
  5. package/esm2022/lib/barcode-reader/barcode-reader.component.mjs +62 -0
  6. package/esm2022/lib/barcode-reader-dialog/barcode-reader-dialog.component.mjs +82 -0
  7. package/esm2022/lib/barcode-reader-video/barcode-reader-video.component.mjs +66 -0
  8. package/esm2022/lib/barcode.service.mjs +330 -0
  9. package/{esm2020 → esm2022}/lib/barsa-develop-components.module.mjs +284 -284
  10. package/esm2022/lib/barsa-document-list-item/barsa-document-list-item.component.mjs +104 -0
  11. package/esm2022/lib/barsa-documents/barsa-documents.component.mjs +173 -0
  12. package/esm2022/lib/barsa-geographic-location/barsa-geographic-location.component.mjs +163 -0
  13. package/esm2022/lib/card-content-image-and-title/card-content-image-and-title.component.mjs +50 -0
  14. package/esm2022/lib/card-content-line-chart/card-content-line-chart.component.mjs +37 -0
  15. package/esm2022/lib/card-header-big-image-title-and-subtitle/card-header-big-image-title-and-subtitle.component.mjs +19 -0
  16. package/esm2022/lib/card-header-kpi/card-header-kpi.component.mjs +40 -0
  17. package/esm2022/lib/card-header-logo-title-subtitle/card-header-logo-title-subtitle.component.mjs +45 -0
  18. package/{esm2020 → esm2022}/lib/checkbox-button/checkbox-button.component.mjs +23 -23
  19. package/esm2022/lib/column-form-viewer/column-form-viewer.component.mjs +88 -0
  20. package/{esm2020 → esm2022}/lib/enum-info-micro-proccess-flow/enum-info-micro-proccess-flow.component.mjs +18 -18
  21. package/esm2022/lib/footer/footer.component.mjs +43 -0
  22. package/esm2022/lib/form-card/form-card.component.mjs +17 -0
  23. package/esm2022/lib/form-chart-content/form-chart-content.component.mjs +37 -0
  24. package/esm2022/lib/form-content-quick-view/form-content-quick-view.component.mjs +102 -0
  25. package/esm2022/lib/form-report-view/form-report-view.component.mjs +25 -0
  26. package/esm2022/lib/form-report-view-item/form-report-view-item.component.mjs +45 -0
  27. package/{esm2020 → esm2022}/lib/g4b-details/g4b-details.component.mjs +28 -28
  28. package/esm2022/lib/g4b-estelam/g4b-estelam.component.mjs +30 -0
  29. package/esm2022/lib/geographic-location/geographic-location.component.mjs +85 -0
  30. package/esm2022/lib/login-form/login-form.component.mjs +55 -0
  31. package/{esm2020 → esm2022}/lib/login-social-conncetions/login-social-conncetions.component.mjs +30 -30
  32. package/esm2022/lib/master-detail-card-form/master-detail-card-form.component.mjs +17 -0
  33. package/esm2022/lib/media-file-uploader/media-file-uploader.component.mjs +238 -0
  34. package/esm2022/lib/micro-proccess-flow/micro-proccess-flow.component.mjs +52 -0
  35. package/esm2022/lib/micro-process-flow-view/micro-process-flow-view.component.mjs +24 -0
  36. package/esm2022/lib/mo-info-micro-proccess-flow/mo-info-micro-proccess-flow.component.mjs +23 -0
  37. package/esm2022/lib/models/document-item.mjs +2 -0
  38. package/esm2022/lib/models/documents-setting.mjs +2 -0
  39. package/{esm2020 → esm2022}/lib/models/form-report-view-setting.mjs +2 -2
  40. package/{esm2020 → esm2022}/lib/models/index.mjs +8 -8
  41. package/{esm2020 → esm2022}/lib/models/micro-process-flow-view-setting.mjs +2 -2
  42. package/{esm2020 → esm2022}/lib/models/person.mjs +1 -1
  43. package/{esm2020 → esm2022}/lib/models/service-desk-view-of-services-setting.mjs +2 -2
  44. package/{esm2020 → esm2022}/lib/models/tab-process-view-setting.mjs +2 -2
  45. package/{esm2020 → esm2022}/lib/pipes/datasource-to-flow-item.mjs +22 -22
  46. package/{esm2020 → esm2022}/lib/pipes/index.mjs +2 -2
  47. package/{esm2020 → esm2022}/lib/pipes/mo-list-to-flow-item.pipe.mjs +22 -22
  48. package/esm2022/lib/query-string-form-observable/query-string-form-observable.component.mjs +37 -0
  49. package/esm2022/lib/query-string-observable/query-string-observable.component.mjs +22 -0
  50. package/esm2022/lib/report-button-view/report-button-view.component.mjs +37 -0
  51. package/{esm2020 → esm2022}/lib/report-line-chart-view/report-line-chart-view.component.mjs +13 -13
  52. package/esm2022/lib/report-tab-view/report-tab-view.component.mjs +27 -0
  53. package/esm2022/lib/resend-verification-code/resend-verification-code.component.mjs +62 -0
  54. package/{esm2020 → esm2022}/lib/service-desk-card-content-mojavezhay-akhz-shode/service-desk-card-content-mojavezhay-akhz-shode.component.mjs +28 -28
  55. package/esm2022/lib/service-desk-form-layout-content-mojavez/service-desk-form-layout-content-mojavez.component.mjs +110 -0
  56. package/esm2022/lib/service-desk-header/service-desk-header.component.mjs +240 -0
  57. package/esm2022/lib/service-desk-servcie-detail/service-desk-servcie-detail.component.mjs +142 -0
  58. package/esm2022/lib/service-desk-view-of-services/service-desk-view-of-services.component.mjs +37 -0
  59. package/esm2022/lib/setting-form/setting-form.component.mjs +64 -0
  60. package/esm2022/lib/subform-in-row-report/subform-in-row-report.component.mjs +73 -0
  61. package/esm2022/lib/tab-process-view/tab-process-view.component.mjs +48 -0
  62. package/esm2022/lib/table-view-vertical-columns/table-view-vertical-columns.component.mjs +16 -0
  63. package/esm2022/lib/timer-count-down/timer-count-down.component.mjs +98 -0
  64. package/esm2022/lib/token-report-view/token-report-view.component.mjs +27 -0
  65. package/esm2022/lib/ui-enum-segmented-button/ui-enum-segmented-button.component.mjs +25 -0
  66. package/esm2022/lib/ui-num-rate/ui-num-rate.component.mjs +29 -0
  67. package/esm2022/lib/ui-person/ui-person.component.mjs +160 -0
  68. package/esm2022/lib/ui-person/ui-person.pipe.mjs +40 -0
  69. package/esm2022/lib/ui-pictures-carousel/ui-pictures-carousel.component.mjs +17 -0
  70. package/esm2022/lib/ui-text-field-search/ui-text-field-search.component.mjs +42 -0
  71. package/esm2022/lib/ulv-context-menu-item-show-file-content/ulv-context-menu-item-show-file-content.component.mjs +69 -0
  72. package/{esm2020 → esm2022}/public-api.mjs +62 -62
  73. package/fesm2022/barsa-develop-components.mjs +3626 -0
  74. package/fesm2022/barsa-develop-components.mjs.map +1 -0
  75. package/index.d.ts +5 -5
  76. package/lib/accept-reject/accept-reject.component.d.ts +28 -28
  77. package/lib/avatar/avatar.component.d.ts +12 -12
  78. package/lib/barcode-format-pipe.d.ts +7 -7
  79. package/lib/barcode-reader/barcode-reader.component.d.ts +19 -19
  80. package/lib/barcode-reader-dialog/barcode-reader-dialog.component.d.ts +32 -32
  81. package/lib/barcode-reader-video/barcode-reader-video.component.d.ts +22 -22
  82. package/lib/barcode.service.d.ts +98 -98
  83. package/lib/barsa-develop-components.module.d.ts +117 -117
  84. package/lib/barsa-document-list-item/barsa-document-list-item.component.d.ts +39 -39
  85. package/lib/barsa-documents/barsa-documents.component.d.ts +47 -47
  86. package/lib/barsa-geographic-location/barsa-geographic-location.component.d.ts +45 -46
  87. package/lib/card-content-image-and-title/card-content-image-and-title.component.d.ts +18 -18
  88. package/lib/card-content-line-chart/card-content-line-chart.component.d.ts +9 -9
  89. package/lib/card-header-big-image-title-and-subtitle/card-header-big-image-title-and-subtitle.component.d.ts +6 -6
  90. package/lib/card-header-kpi/card-header-kpi.component.d.ts +14 -14
  91. package/lib/card-header-logo-title-subtitle/card-header-logo-title-subtitle.component.d.ts +23 -23
  92. package/lib/checkbox-button/checkbox-button.component.d.ts +13 -13
  93. package/lib/column-form-viewer/column-form-viewer.component.d.ts +30 -30
  94. package/lib/enum-info-micro-proccess-flow/enum-info-micro-proccess-flow.component.d.ts +8 -8
  95. package/lib/footer/footer.component.d.ts +15 -15
  96. package/lib/form-card/form-card.component.d.ts +8 -8
  97. package/lib/form-chart-content/form-chart-content.component.d.ts +9 -9
  98. package/lib/form-content-quick-view/form-content-quick-view.component.d.ts +18 -18
  99. package/lib/form-report-view/form-report-view.component.d.ts +13 -13
  100. package/lib/form-report-view-item/form-report-view-item.component.d.ts +15 -15
  101. package/lib/g4b-details/g4b-details.component.d.ts +9 -9
  102. package/lib/g4b-estelam/g4b-estelam.component.d.ts +11 -11
  103. package/lib/geographic-location/geographic-location.component.d.ts +33 -34
  104. package/lib/login-form/login-form.component.d.ts +12 -12
  105. package/lib/login-social-conncetions/login-social-conncetions.component.d.ts +12 -12
  106. package/lib/master-detail-card-form/master-detail-card-form.component.d.ts +8 -8
  107. package/lib/media-file-uploader/media-file-uploader.component.d.ts +52 -52
  108. package/lib/micro-proccess-flow/micro-proccess-flow.component.d.ts +28 -28
  109. package/lib/micro-process-flow-view/micro-process-flow-view.component.d.ts +14 -14
  110. package/lib/mo-info-micro-proccess-flow/mo-info-micro-proccess-flow.component.d.ts +9 -9
  111. package/lib/models/document-item.d.ts +19 -19
  112. package/lib/models/documents-setting.d.ts +11 -11
  113. package/lib/models/form-report-view-setting.d.ts +7 -7
  114. package/lib/models/index.d.ts +7 -7
  115. package/lib/models/micro-process-flow-view-setting.d.ts +8 -8
  116. package/lib/models/person.d.ts +10 -10
  117. package/lib/models/service-desk-view-of-services-setting.d.ts +6 -6
  118. package/lib/models/tab-process-view-setting.d.ts +7 -7
  119. package/lib/pipes/datasource-to-flow-item.d.ts +10 -10
  120. package/lib/pipes/index.d.ts +2 -2
  121. package/lib/pipes/mo-list-to-flow-item.pipe.d.ts +10 -10
  122. package/lib/query-string-form-observable/query-string-form-observable.component.d.ts +13 -13
  123. package/lib/query-string-observable/query-string-observable.component.d.ts +9 -9
  124. package/lib/report-button-view/report-button-view.component.d.ts +12 -12
  125. package/lib/report-line-chart-view/report-line-chart-view.component.d.ts +7 -7
  126. package/lib/report-tab-view/report-tab-view.component.d.ts +15 -15
  127. package/lib/resend-verification-code/resend-verification-code.component.d.ts +19 -18
  128. package/lib/service-desk-card-content-mojavezhay-akhz-shode/service-desk-card-content-mojavezhay-akhz-shode.component.d.ts +15 -15
  129. package/lib/service-desk-form-layout-content-mojavez/service-desk-form-layout-content-mojavez.component.d.ts +26 -26
  130. package/lib/service-desk-header/service-desk-header.component.d.ts +63 -63
  131. package/lib/service-desk-servcie-detail/service-desk-servcie-detail.component.d.ts +39 -39
  132. package/lib/service-desk-view-of-services/service-desk-view-of-services.component.d.ts +16 -16
  133. package/lib/setting-form/setting-form.component.d.ts +20 -20
  134. package/lib/subform-in-row-report/subform-in-row-report.component.d.ts +22 -21
  135. package/lib/tab-process-view/tab-process-view.component.d.ts +20 -20
  136. package/lib/table-view-vertical-columns/table-view-vertical-columns.component.d.ts +6 -6
  137. package/lib/timer-count-down/timer-count-down.component.d.ts +15 -15
  138. package/lib/token-report-view/token-report-view.component.d.ts +15 -15
  139. package/lib/ui-enum-segmented-button/ui-enum-segmented-button.component.d.ts +9 -9
  140. package/lib/ui-num-rate/ui-num-rate.component.d.ts +9 -9
  141. package/lib/ui-person/ui-person.component.d.ts +31 -31
  142. package/lib/ui-person/ui-person.pipe.d.ts +7 -7
  143. package/lib/ui-pictures-carousel/ui-pictures-carousel.component.d.ts +6 -6
  144. package/lib/ui-text-field-search/ui-text-field-search.component.d.ts +17 -17
  145. package/lib/ulv-context-menu-item-show-file-content/ulv-context-menu-item-show-file-content.component.d.ts +25 -25
  146. package/package.json +7 -13
  147. package/public-api.d.ts +58 -58
  148. package/esm2020/lib/accept-reject/accept-reject.component.mjs +0 -69
  149. package/esm2020/lib/avatar/avatar.component.mjs +0 -29
  150. package/esm2020/lib/barcode-format-pipe.mjs +0 -24
  151. package/esm2020/lib/barcode-reader/barcode-reader.component.mjs +0 -62
  152. package/esm2020/lib/barcode-reader-dialog/barcode-reader-dialog.component.mjs +0 -82
  153. package/esm2020/lib/barcode-reader-video/barcode-reader-video.component.mjs +0 -66
  154. package/esm2020/lib/barcode.service.mjs +0 -330
  155. package/esm2020/lib/barsa-document-list-item/barsa-document-list-item.component.mjs +0 -104
  156. package/esm2020/lib/barsa-documents/barsa-documents.component.mjs +0 -173
  157. package/esm2020/lib/barsa-geographic-location/barsa-geographic-location.component.mjs +0 -174
  158. package/esm2020/lib/card-content-image-and-title/card-content-image-and-title.component.mjs +0 -51
  159. package/esm2020/lib/card-content-line-chart/card-content-line-chart.component.mjs +0 -38
  160. package/esm2020/lib/card-header-big-image-title-and-subtitle/card-header-big-image-title-and-subtitle.component.mjs +0 -20
  161. package/esm2020/lib/card-header-kpi/card-header-kpi.component.mjs +0 -41
  162. package/esm2020/lib/card-header-logo-title-subtitle/card-header-logo-title-subtitle.component.mjs +0 -46
  163. package/esm2020/lib/column-form-viewer/column-form-viewer.component.mjs +0 -88
  164. package/esm2020/lib/footer/footer.component.mjs +0 -44
  165. package/esm2020/lib/form-card/form-card.component.mjs +0 -18
  166. package/esm2020/lib/form-chart-content/form-chart-content.component.mjs +0 -38
  167. package/esm2020/lib/form-content-quick-view/form-content-quick-view.component.mjs +0 -102
  168. package/esm2020/lib/form-report-view/form-report-view.component.mjs +0 -26
  169. package/esm2020/lib/form-report-view-item/form-report-view-item.component.mjs +0 -45
  170. package/esm2020/lib/g4b-estelam/g4b-estelam.component.mjs +0 -30
  171. package/esm2020/lib/geographic-location/geographic-location.component.mjs +0 -88
  172. package/esm2020/lib/login-form/login-form.component.mjs +0 -55
  173. package/esm2020/lib/master-detail-card-form/master-detail-card-form.component.mjs +0 -17
  174. package/esm2020/lib/media-file-uploader/media-file-uploader.component.mjs +0 -238
  175. package/esm2020/lib/micro-proccess-flow/micro-proccess-flow.component.mjs +0 -53
  176. package/esm2020/lib/micro-process-flow-view/micro-process-flow-view.component.mjs +0 -24
  177. package/esm2020/lib/mo-info-micro-proccess-flow/mo-info-micro-proccess-flow.component.mjs +0 -23
  178. package/esm2020/lib/models/document-item.mjs +0 -2
  179. package/esm2020/lib/models/documents-setting.mjs +0 -2
  180. package/esm2020/lib/query-string-form-observable/query-string-form-observable.component.mjs +0 -37
  181. package/esm2020/lib/query-string-observable/query-string-observable.component.mjs +0 -22
  182. package/esm2020/lib/report-button-view/report-button-view.component.mjs +0 -38
  183. package/esm2020/lib/report-tab-view/report-tab-view.component.mjs +0 -28
  184. package/esm2020/lib/resend-verification-code/resend-verification-code.component.mjs +0 -59
  185. package/esm2020/lib/service-desk-form-layout-content-mojavez/service-desk-form-layout-content-mojavez.component.mjs +0 -110
  186. package/esm2020/lib/service-desk-header/service-desk-header.component.mjs +0 -236
  187. package/esm2020/lib/service-desk-servcie-detail/service-desk-servcie-detail.component.mjs +0 -142
  188. package/esm2020/lib/service-desk-view-of-services/service-desk-view-of-services.component.mjs +0 -37
  189. package/esm2020/lib/setting-form/setting-form.component.mjs +0 -64
  190. package/esm2020/lib/subform-in-row-report/subform-in-row-report.component.mjs +0 -65
  191. package/esm2020/lib/tab-process-view/tab-process-view.component.mjs +0 -49
  192. package/esm2020/lib/table-view-vertical-columns/table-view-vertical-columns.component.mjs +0 -16
  193. package/esm2020/lib/timer-count-down/timer-count-down.component.mjs +0 -98
  194. package/esm2020/lib/token-report-view/token-report-view.component.mjs +0 -27
  195. package/esm2020/lib/ui-enum-segmented-button/ui-enum-segmented-button.component.mjs +0 -25
  196. package/esm2020/lib/ui-num-rate/ui-num-rate.component.mjs +0 -29
  197. package/esm2020/lib/ui-person/ui-person.component.mjs +0 -160
  198. package/esm2020/lib/ui-person/ui-person.pipe.mjs +0 -40
  199. package/esm2020/lib/ui-pictures-carousel/ui-pictures-carousel.component.mjs +0 -17
  200. package/esm2020/lib/ui-text-field-search/ui-text-field-search.component.mjs +0 -42
  201. package/esm2020/lib/ulv-context-menu-item-show-file-content/ulv-context-menu-item-show-file-content.component.mjs +0 -70
  202. package/fesm2015/barsa-develop-components.mjs +0 -3660
  203. package/fesm2015/barsa-develop-components.mjs.map +0 -1
  204. package/fesm2020/barsa-develop-components.mjs +0 -3625
  205. package/fesm2020/barsa-develop-components.mjs.map +0 -1
@@ -1,29 +0,0 @@
1
- import { Component, ChangeDetectionStrategy } from '@angular/core';
2
- import { FieldBaseComponent } from 'barsa-novin-ray-core';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@fundamental-ngx/core/rating-indicator";
5
- import * as i2 from "@angular/common";
6
- export class UiNumRateComponent extends FieldBaseComponent {
7
- onRatingChanged(val) {
8
- this.value = val;
9
- this.valueChange.emit(this.value);
10
- }
11
- _setValue(val) {
12
- if (typeof val === 'string') {
13
- if (isNaN(+val[0])) {
14
- val = val.substring(1, val.length);
15
- }
16
- if (isNaN(+val)) {
17
- return;
18
- }
19
- }
20
- super._setValue(val);
21
- }
22
- }
23
- UiNumRateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiNumRateComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
24
- UiNumRateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiNumRateComponent, selector: "bdc-ui-num-rate", usesInheritance: true, ngImport: i0, template: "<fd-rating-indicator\n [ariaLabel]=\"Setting.NullText || ''\"\n [size]=\"parameters?.SizeValue$Caption\"\n [value]=\"value\"\n [disabled]=\"(disableOrReadonly$ | async) === true\"\n [displayMode]=\"parameters?.DisplayMode\"\n [dynamicTextIndicator]=\"parameters?.TextIndicator\"\n (ratingChanged)=\"onRatingChanged($event)\"\n></fd-rating-indicator>\n", styles: [":host{display:flex}\n"], dependencies: [{ kind: "component", type: i1.RatingIndicatorComponent, selector: "fd-rating-indicator", inputs: ["class", "name", "ariaLabel", "ariaLabelledBy", "disabled", "displayMode", "indicatorCapacity", "allowHalves", "value", "totalRatings", "ratingAverage", "ratings", "displayAllRatings", "ratedIcon", "unratedIcon", "size", "dynamicTextIndicator"], outputs: ["ratingChanged"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiNumRateComponent, decorators: [{
26
- type: Component,
27
- args: [{ selector: 'bdc-ui-num-rate', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fd-rating-indicator\n [ariaLabel]=\"Setting.NullText || ''\"\n [size]=\"parameters?.SizeValue$Caption\"\n [value]=\"value\"\n [disabled]=\"(disableOrReadonly$ | async) === true\"\n [displayMode]=\"parameters?.DisplayMode\"\n [dynamicTextIndicator]=\"parameters?.TextIndicator\"\n (ratingChanged)=\"onRatingChanged($event)\"\n></fd-rating-indicator>\n", styles: [":host{display:flex}\n"] }]
28
- }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbnVtLXJhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdWktbnVtLXJhdGUvdWktbnVtLXJhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdWktbnVtLXJhdGUvdWktbnVtLXJhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQVExRCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsa0JBQWtCO0lBQ3RELGVBQWUsQ0FBQyxHQUFXO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBQ0QsU0FBUyxDQUFDLEdBQVE7UUFDZCxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRTtZQUN6QixJQUFJLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNoQixHQUFHLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ3RDO1lBQ0QsSUFBSSxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDYixPQUFPO2FBQ1Y7U0FDSjtRQUNELEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDekIsQ0FBQzs7K0dBZlEsa0JBQWtCO21HQUFsQixrQkFBa0IsOEVDVC9CLHNYQVNBOzJGREFhLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDSSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRCYXNlQ29tcG9uZW50IH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JkYy11aS1udW0tcmF0ZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VpLW51bS1yYXRlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi91aS1udW0tcmF0ZS5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFVpTnVtUmF0ZUNvbXBvbmVudCBleHRlbmRzIEZpZWxkQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgb25SYXRpbmdDaGFuZ2VkKHZhbDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWw7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgICB9XG4gICAgX3NldFZhbHVlKHZhbDogYW55KTogdm9pZCB7XG4gICAgICAgIGlmICh0eXBlb2YgdmFsID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgaWYgKGlzTmFOKCt2YWxbMF0pKSB7XG4gICAgICAgICAgICAgICAgdmFsID0gdmFsLnN1YnN0cmluZygxLCB2YWwubGVuZ3RoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChpc05hTigrdmFsKSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzdXBlci5fc2V0VmFsdWUodmFsKTtcbiAgICB9XG59XG4iLCI8ZmQtcmF0aW5nLWluZGljYXRvclxuICAgIFthcmlhTGFiZWxdPVwiU2V0dGluZy5OdWxsVGV4dCB8fCAnJ1wiXG4gICAgW3NpemVdPVwicGFyYW1ldGVycz8uU2l6ZVZhbHVlJENhcHRpb25cIlxuICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgW2Rpc2FibGVkXT1cIihkaXNhYmxlT3JSZWFkb25seSQgfCBhc3luYykgPT09IHRydWVcIlxuICAgIFtkaXNwbGF5TW9kZV09XCJwYXJhbWV0ZXJzPy5EaXNwbGF5TW9kZVwiXG4gICAgW2R5bmFtaWNUZXh0SW5kaWNhdG9yXT1cInBhcmFtZXRlcnM/LlRleHRJbmRpY2F0b3JcIlxuICAgIChyYXRpbmdDaGFuZ2VkKT1cIm9uUmF0aW5nQ2hhbmdlZCgkZXZlbnQpXCJcbj48L2ZkLXJhdGluZy1pbmRpY2F0b3I+XG4iXX0=
@@ -1,160 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core';
2
- import { Subject } from 'rxjs';
3
- import { PopoverBodyComponent } from '@fundamental-ngx/core';
4
- import { FieldBaseComponent } from 'barsa-novin-ray-core';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
- import * as i2 from "@angular/forms";
8
- import * as i3 from "@fundamental-ngx/core/bar";
9
- import * as i4 from "@fundamental-ngx/core/link";
10
- import * as i5 from "@fundamental-ngx/core/button";
11
- import * as i6 from "@fundamental-ngx/core/card";
12
- import * as i7 from "@fundamental-ngx/core/form";
13
- import * as i8 from "@fundamental-ngx/core/icon";
14
- import * as i9 from "@fundamental-ngx/core/list";
15
- import * as i10 from "@fundamental-ngx/core/dialog";
16
- import * as i11 from "@fundamental-ngx/core/title";
17
- import * as i12 from "@fundamental-ngx/core/utils";
18
- import * as i13 from "@fundamental-ngx/core/popover";
19
- import * as i14 from "@fundamental-ngx/core/quick-view";
20
- import * as i15 from "@fundamental-ngx/core/table";
21
- import * as i16 from "./ui-person.pipe";
22
- export class UiPersonComponent extends FieldBaseComponent {
23
- constructor() {
24
- super(...arguments);
25
- this.searchResult = [];
26
- this.personCollection = [
27
- {
28
- Id: 1,
29
- FirstName: 'zahra',
30
- LastName: 'darbandy',
31
- FatherName: 'ali',
32
- Birthplace: 'yazd',
33
- NationalCode: '123456789'
34
- },
35
- {
36
- Id: 2,
37
- FirstName: 'ali',
38
- LastName: 'kafdary',
39
- FatherName: 'reza',
40
- Birthplace: 'shiraz',
41
- NationalCode: '754123659'
42
- },
43
- {
44
- Id: 3,
45
- FirstName: 'sara',
46
- LastName: 'rezaee',
47
- FatherName: 'ali',
48
- Birthplace: 'tehran',
49
- NationalCode: '123456789'
50
- },
51
- {
52
- Id: 4,
53
- FirstName: 'علی',
54
- LastName: 'خزایی',
55
- FatherName: 'کمال',
56
- Birthplace: 'اصفهان',
57
- NationalCode: '452145698'
58
- },
59
- {
60
- Id: 5,
61
- FirstName: 'vahid',
62
- LastName: 'alipor',
63
- FatherName: 'ali',
64
- Birthplace: 'shiraz',
65
- NationalCode: '756982456'
66
- },
67
- {
68
- Id: 6,
69
- FirstName: 'mohammad',
70
- LastName: 'kamali',
71
- FatherName: 'vahid',
72
- Birthplace: 'ahvaz',
73
- NationalCode: '32165897'
74
- }
75
- ];
76
- this.onClose$ = new Subject();
77
- }
78
- ngOnInit() {
79
- super.ngOnInit();
80
- this.value = {
81
- Id: 5,
82
- FirstName: 'وحید',
83
- LastName: 'علیپور',
84
- FatherName: 'علی',
85
- Birthplace: 'شیراز',
86
- NationalCode: '756982456',
87
- Mobile: '09175623898'
88
- };
89
- this.onClose$.pipe().subscribe(() => {
90
- // console.log('closed');
91
- });
92
- }
93
- ngAfterViewInit() {
94
- super.ngAfterViewInit();
95
- this.onClose$ = this.popoverBodyDom.onClose;
96
- }
97
- filter() {
98
- this.searchResult = this.personCollection.filter((person) => person.FirstName.toLowerCase().includes(this.filterItems?.FirstName.toLowerCase() || '') &&
99
- person.LastName.toLowerCase().includes(this.filterItems?.LastName.toLowerCase() || '') &&
100
- person.NationalCode.toString().includes(this.filterItems?.NationalCode.toString() || ''));
101
- }
102
- select(person) {
103
- this.selectedPerson = person;
104
- }
105
- confirm() {
106
- this.value = this.selectedPerson ?? this.value;
107
- this.valueChange.emit(this.value);
108
- this.close();
109
- }
110
- close() {
111
- this.dialogRef.close();
112
- this.selectedPerson = null;
113
- }
114
- openDialog(template) {
115
- this.resetTable();
116
- this.dialogRef = this._dialogService.open(template, {
117
- minHeight: '500px',
118
- minWidth: '700px',
119
- maxHeight: '1000px',
120
- maxWidth: '1500px',
121
- draggable: true,
122
- resizable: true,
123
- verticalPadding: false
124
- });
125
- this.dialogRef.loading(true);
126
- setTimeout(() => this.dialogRef.loading(false), 500);
127
- }
128
- resetTable() {
129
- this.filterItems = { FirstName: '', LastName: '', NationalCode: '' };
130
- this.filter();
131
- }
132
- edit() { }
133
- delete() {
134
- this.value = null;
135
- this.valueChange.emit(this.value);
136
- }
137
- openPopover() {
138
- if (!this.isPopoverOpened && this.value) {
139
- setTimeout(() => {
140
- this.popoverDom.open();
141
- }, 1000);
142
- }
143
- }
144
- openChange(isOpen) {
145
- this.isPopoverOpened = isOpen;
146
- }
147
- }
148
- UiPersonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiPersonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
149
- UiPersonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiPersonComponent, selector: "bdc-ui-person", viewQueries: [{ propertyName: "popoverDom", first: true, predicate: ["popover"], descendants: true }, { propertyName: "popoverBodyDom", first: true, predicate: PopoverBodyComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<fd-popover [fillControlMode]=\"'equal'\" #popover (isOpenChange)=\"openChange($event)\">\r\n <fd-popover-control>\r\n <ul fd-list [compact]=\"true\">\r\n <li fd-list-item>\r\n <div fd-list-content>\r\n <div class=\"control-content\" (mouseover)=\"openPopover()\">\r\n <fd-icon glyph=\"person-placeholder\"></fd-icon>\r\n <div>\r\n <span>{{ value?.FirstName }}</span>\r\n </div>\r\n <div>\r\n <span>{{ value?.LastName }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"value; else selectButton\">\r\n <button fd-button fdType=\"transparent\" glyph=\"user-edit\" (click)=\"edit()\"></button>\r\n <button fd-button fdType=\"transparent\" glyph=\"decline\" (click)=\"delete()\"></button>\r\n </ng-container>\r\n <ng-template #selectButton>\r\n <button\r\n fd-button\r\n label=\"\u0627\u0646\u062A\u062E\u0627\u0628 \u0634\u062E\u0635\"\r\n fdType=\"transparent\"\r\n (click)=\"openDialog(dialogTemplate)\"\r\n ></button>\r\n </ng-template>\r\n </li>\r\n </ul>\r\n </fd-popover-control>\r\n <fd-popover-body *ngIf=\"value\" #popoverBody>\r\n <div class=\"resize-quick-view\">\r\n <fd-card cardType=\"quickView\">\r\n <fd-card-content>\r\n <fd-quick-view [id]=\"value.id\">\r\n <fd-quick-view-subheader>\r\n <fd-icon glyph=\"user\"></fd-icon>\r\n <fd-quick-view-subheader-title> \u0645\u0634\u062E\u0635\u0627\u062A </fd-quick-view-subheader-title>\r\n </fd-quick-view-subheader>\r\n\r\n <fd-quick-view-group>\r\n <fd-quick-view-group-item *ngFor=\"let item of value | keyvalue\">\r\n <div *ngIf=\"item.key !== 'Id'\" class=\"popover-body-item\">\r\n <fd-quick-view-group-item-label>\r\n {{ (item.key | uiPerson) + ':' }}\r\n </fd-quick-view-group-item-label>\r\n <fd-quick-view-group-item-content>\r\n <ng-container [ngSwitch]=\"item.value\">\r\n <a\r\n *ngSwitchCase=\"\r\n item.key === 'Mobile' || item.key === 'Phone' ? item.key : ''\r\n \"\r\n [href]=\"'tel:' + item.value\"\r\n [innerText]=\"item.value\"\r\n fd-link\r\n ></a>\r\n <a\r\n *ngSwitchCase=\"'Email'\"\r\n [href]=\"'mailto:' + item.value\"\r\n [innerText]=\"item.value\"\r\n fd-link\r\n ></a>\r\n <div *ngSwitchDefault [innerText]=\"item.value\"></div>\r\n </ng-container>\r\n </fd-quick-view-group-item-content>\r\n </div>\r\n </fd-quick-view-group-item>\r\n </fd-quick-view-group>\r\n </fd-quick-view>\r\n </fd-card-content>\r\n </fd-card>\r\n </div>\r\n </fd-popover-body>\r\n</fd-popover>\r\n\r\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplate>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-header>\r\n <h1 fd-title>\u062C\u0633\u062A\u062C\u0648\u06CC \u0634\u062E\u0635</h1>\r\n <button fd-dialog-close-button (click)=\"dialog.dismiss('Close button')\"></button>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body>\r\n <div class=\"filter\" (keydown.enter)=\"filter()\">\r\n <div fd-form-item>\r\n <label fd-form-label for=\"name\">\u0646\u0627\u0645</label>\r\n <input fd-form-control id=\"name\" [(ngModel)]=\"filterItems.FirstName\" />\r\n </div>\r\n <div fd-form-item>\r\n <label fd-form-label for=\"last-name\">\u0646\u0627\u0645 \u062E\u0627\u0646\u0648\u0627\u062F\u06AF\u06CC</label>\r\n <input fd-form-control id=\"last-name\" [(ngModel)]=\"filterItems.LastName\" />\r\n </div>\r\n <div fd-form-item>\r\n <label fd-form-label for=\"national-code\">\u06A9\u062F\u0645\u0644\u06CC</label>\r\n <input fd-form-control id=\"national-code\" [(ngModel)]=\"filterItems.NationalCode\" />\r\n </div>\r\n\r\n <fd-button-bar fd-initial-focus fdType=\"emphasized\" label=\"\u062C\u0633\u062A\u062C\u0648\" (click)=\"filter()\"> </fd-button-bar>\r\n </div>\r\n\r\n <table fd-table [noBorderX]=\"true\" [noBorderY]=\"true\">\r\n <thead fd-table-header>\r\n <tr fd-table-row>\r\n <th fd-table-cell>\u0646\u0627\u0645</th>\r\n <th fd-table-cell>\u0646\u0627\u0645 \u062E\u0627\u0646\u0648\u0627\u062F\u06AF\u06CC</th>\r\n <th fd-table-cell>\u06A9\u062F \u0645\u0644\u06CC</th>\r\n </tr>\r\n </thead>\r\n <tbody fd-table-body>\r\n <tr\r\n *ngFor=\"let person of searchResult\"\r\n (click)=\"select(person)\"\r\n [class.selected]=\"selectedPerson?.Id === person?.Id\"\r\n fd-table-row\r\n >\r\n <td fd-table-cell>\r\n {{ person.FirstName }}\r\n </td>\r\n <td fd-table-cell>{{ person.LastName }}</td>\r\n <td fd-table-cell>{{ person.NationalCode }}</td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer>\r\n <ng-template fdTemplate=\"footer\">\r\n <div fd-bar-right>\r\n <fd-button-bar fdType=\"emphasized\" label=\"\u062A\u0627\u06CC\u06CC\u062F\" (click)=\"confirm()\"> </fd-button-bar>\r\n <fd-button-bar fd-initial-focus label=\"\u0627\u0646\u0635\u0631\u0627\u0641\" (click)=\"close()\"> </fd-button-bar>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [":host{display:flex;width:100%}::ng-deep .fd-dialog__body{padding:10px 15px!important}::ng-deep .fd-dialog__body .filter{display:flex;column-gap:5px;align-items:flex-end}::ng-deep .fd-dialog__body .filter fd-button-bar{margin-bottom:5px}::ng-deep .fd-dialog__body table{margin-top:25px}::ng-deep .fd-dialog__body table tr:hover{background-color:#f0f5f8}::ng-deep .fd-dialog__body table .selected{background-color:#d0e5ef}::ng-deep .popover-body-item{display:flex;column-gap:5px;align-items:center}::ng-deep .popover-body-item fd-quick-view-group-item-label .fd-form-label__wrapper{padding-left:0}fd-popover{flex:1}fd-popover fd-popover-body{width:300px}li{height:1.625rem!important;min-height:1.625rem!important;display:flex;margin-top:.1875rem!important;margin-bottom:.25rem!important;border:.0625rem solid #89919a!important;padding-left:0}li .fd-list__content{flex:1}li .fd-list__content .control-content{display:flex;column-gap:5px;margin-top:2px;width:-moz-fit-content;width:fit-content}li .fd-list__content .control-content div{margin-top:2px}li .fd-list__content .control-content fd-icon{margin-left:5px}li .fd-list__content .control-content:hover>*{color:#062b42;font-weight:700}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i3.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabel", "ariaLabelledby", "id"] }, { kind: "component", type: i4.LinkComponent, selector: "[fdLink], [fd-link], [fd-breadcrumb-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "component", type: i5.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i6.CardComponent, selector: "fd-card", inputs: ["badge", "isLoading", "cardType", "id", "role"] }, { kind: "component", type: i6.CardContentComponent, selector: "fd-card-content" }, { kind: "component", type: i7.FormControlComponent, selector: "[fd-form-control]", inputs: ["state", "type", "class"] }, { kind: "directive", type: i7.InputFormControlDirective, selector: "input[fd-form-control]" }, { kind: "component", type: i7.FormItemComponent, selector: "[fd-form-item]", inputs: ["isInline", "horizontal"] }, { kind: "component", type: i7.FormLabelComponent, selector: "[fd-form-label]", inputs: ["required", "colon", "checkbox", "radio", "alignLabelEnd", "inlineHelpTitle", "inlineHelpGlyph", "inlineHelpTriggers", "inlineHelpBodyPlacement", "inlineHelpPlacement", "id"] }, { kind: "component", type: i8.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }, { kind: "component", type: i9.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline"], outputs: ["focusEscapeList"] }, { kind: "component", type: i9.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i9.ListContentDirective, selector: "[fdListContent], [fd-list-content]", inputs: ["twoCol"] }, { kind: "directive", type: i9.DeprecatedListContentDensityDirective, selector: "[fd-list][compact], [fdList][compact]" }, { kind: "component", type: i10.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i10.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i10.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i10.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i10.DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title"] }, { kind: "component", type: i11.TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: i12.TemplateDirective, selector: "[fdTemplate]", inputs: ["fdTemplate"] }, { kind: "directive", type: i12.InitialFocusDirective, selector: "[fdInitialFocus], [fd-initial-focus]", inputs: ["fd-initial-focus", "enabled", "focusLastElement"] }, { kind: "component", type: i13.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i13.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i13.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "component", type: i14.QuickViewComponent, selector: "fd-quick-view", inputs: ["id"] }, { kind: "component", type: i14.QuickViewSubheaderComponent, selector: "fd-quick-view-subheader" }, { kind: "component", type: i14.QuickViewSubheaderTitleComponent, selector: "fd-quick-view-subheader-title" }, { kind: "component", type: i14.QuickViewGroupComponent, selector: "fd-quick-view-group" }, { kind: "component", type: i14.QuickViewGroupItemComponent, selector: "fd-quick-view-group-item", inputs: ["id"] }, { kind: "component", type: i14.QuickViewGroupItemLabelComponent, selector: "fd-quick-view-group-item-label" }, { kind: "component", type: i14.QuickViewGroupItemContentComponent, selector: "fd-quick-view-group-item-content" }, { kind: "component", type: i15.TableComponent, selector: "table[fd-table]", inputs: ["noBorderX", "noBorderY", "popIn", "responsive", "keys", "allCellsFocusable"], exportAs: ["fd-table"] }, { kind: "directive", type: i15.TableHeaderDirective, selector: "[fdTableHeader], [fd-table-header]", inputs: ["noBorderX", "noBorderY"] }, { kind: "directive", type: i15.TableBodyDirective, selector: "[fdTableBody], [fd-table-body]", inputs: ["noBorderX", "noBorderY"] }, { kind: "directive", type: i15.TableRowDirective, selector: "[fdTableRow], [fd-table-row]", inputs: ["activable", "highlightActive", "hoverable", "focusable", "main", "secondary", "active"] }, { kind: "directive", type: i15.TableCellDirective, selector: "[fdTableCell], [fd-table-cell]", inputs: ["noBorderX", "noBorderY", "activable", "focusable", "tabindex", "hoverable", "fitContent", "noPadding", "noData", "key", "cellFocusedEventAnnouncer"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i1.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i16.UiPersonPipe, name: "uiPerson" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
150
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiPersonComponent, decorators: [{
151
- type: Component,
152
- args: [{ selector: 'bdc-ui-person', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fd-popover [fillControlMode]=\"'equal'\" #popover (isOpenChange)=\"openChange($event)\">\r\n <fd-popover-control>\r\n <ul fd-list [compact]=\"true\">\r\n <li fd-list-item>\r\n <div fd-list-content>\r\n <div class=\"control-content\" (mouseover)=\"openPopover()\">\r\n <fd-icon glyph=\"person-placeholder\"></fd-icon>\r\n <div>\r\n <span>{{ value?.FirstName }}</span>\r\n </div>\r\n <div>\r\n <span>{{ value?.LastName }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"value; else selectButton\">\r\n <button fd-button fdType=\"transparent\" glyph=\"user-edit\" (click)=\"edit()\"></button>\r\n <button fd-button fdType=\"transparent\" glyph=\"decline\" (click)=\"delete()\"></button>\r\n </ng-container>\r\n <ng-template #selectButton>\r\n <button\r\n fd-button\r\n label=\"\u0627\u0646\u062A\u062E\u0627\u0628 \u0634\u062E\u0635\"\r\n fdType=\"transparent\"\r\n (click)=\"openDialog(dialogTemplate)\"\r\n ></button>\r\n </ng-template>\r\n </li>\r\n </ul>\r\n </fd-popover-control>\r\n <fd-popover-body *ngIf=\"value\" #popoverBody>\r\n <div class=\"resize-quick-view\">\r\n <fd-card cardType=\"quickView\">\r\n <fd-card-content>\r\n <fd-quick-view [id]=\"value.id\">\r\n <fd-quick-view-subheader>\r\n <fd-icon glyph=\"user\"></fd-icon>\r\n <fd-quick-view-subheader-title> \u0645\u0634\u062E\u0635\u0627\u062A </fd-quick-view-subheader-title>\r\n </fd-quick-view-subheader>\r\n\r\n <fd-quick-view-group>\r\n <fd-quick-view-group-item *ngFor=\"let item of value | keyvalue\">\r\n <div *ngIf=\"item.key !== 'Id'\" class=\"popover-body-item\">\r\n <fd-quick-view-group-item-label>\r\n {{ (item.key | uiPerson) + ':' }}\r\n </fd-quick-view-group-item-label>\r\n <fd-quick-view-group-item-content>\r\n <ng-container [ngSwitch]=\"item.value\">\r\n <a\r\n *ngSwitchCase=\"\r\n item.key === 'Mobile' || item.key === 'Phone' ? item.key : ''\r\n \"\r\n [href]=\"'tel:' + item.value\"\r\n [innerText]=\"item.value\"\r\n fd-link\r\n ></a>\r\n <a\r\n *ngSwitchCase=\"'Email'\"\r\n [href]=\"'mailto:' + item.value\"\r\n [innerText]=\"item.value\"\r\n fd-link\r\n ></a>\r\n <div *ngSwitchDefault [innerText]=\"item.value\"></div>\r\n </ng-container>\r\n </fd-quick-view-group-item-content>\r\n </div>\r\n </fd-quick-view-group-item>\r\n </fd-quick-view-group>\r\n </fd-quick-view>\r\n </fd-card-content>\r\n </fd-card>\r\n </div>\r\n </fd-popover-body>\r\n</fd-popover>\r\n\r\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplate>\r\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\r\n <fd-dialog-header>\r\n <h1 fd-title>\u062C\u0633\u062A\u062C\u0648\u06CC \u0634\u062E\u0635</h1>\r\n <button fd-dialog-close-button (click)=\"dialog.dismiss('Close button')\"></button>\r\n </fd-dialog-header>\r\n\r\n <fd-dialog-body>\r\n <div class=\"filter\" (keydown.enter)=\"filter()\">\r\n <div fd-form-item>\r\n <label fd-form-label for=\"name\">\u0646\u0627\u0645</label>\r\n <input fd-form-control id=\"name\" [(ngModel)]=\"filterItems.FirstName\" />\r\n </div>\r\n <div fd-form-item>\r\n <label fd-form-label for=\"last-name\">\u0646\u0627\u0645 \u062E\u0627\u0646\u0648\u0627\u062F\u06AF\u06CC</label>\r\n <input fd-form-control id=\"last-name\" [(ngModel)]=\"filterItems.LastName\" />\r\n </div>\r\n <div fd-form-item>\r\n <label fd-form-label for=\"national-code\">\u06A9\u062F\u0645\u0644\u06CC</label>\r\n <input fd-form-control id=\"national-code\" [(ngModel)]=\"filterItems.NationalCode\" />\r\n </div>\r\n\r\n <fd-button-bar fd-initial-focus fdType=\"emphasized\" label=\"\u062C\u0633\u062A\u062C\u0648\" (click)=\"filter()\"> </fd-button-bar>\r\n </div>\r\n\r\n <table fd-table [noBorderX]=\"true\" [noBorderY]=\"true\">\r\n <thead fd-table-header>\r\n <tr fd-table-row>\r\n <th fd-table-cell>\u0646\u0627\u0645</th>\r\n <th fd-table-cell>\u0646\u0627\u0645 \u062E\u0627\u0646\u0648\u0627\u062F\u06AF\u06CC</th>\r\n <th fd-table-cell>\u06A9\u062F \u0645\u0644\u06CC</th>\r\n </tr>\r\n </thead>\r\n <tbody fd-table-body>\r\n <tr\r\n *ngFor=\"let person of searchResult\"\r\n (click)=\"select(person)\"\r\n [class.selected]=\"selectedPerson?.Id === person?.Id\"\r\n fd-table-row\r\n >\r\n <td fd-table-cell>\r\n {{ person.FirstName }}\r\n </td>\r\n <td fd-table-cell>{{ person.LastName }}</td>\r\n <td fd-table-cell>{{ person.NationalCode }}</td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </fd-dialog-body>\r\n\r\n <fd-dialog-footer>\r\n <ng-template fdTemplate=\"footer\">\r\n <div fd-bar-right>\r\n <fd-button-bar fdType=\"emphasized\" label=\"\u062A\u0627\u06CC\u06CC\u062F\" (click)=\"confirm()\"> </fd-button-bar>\r\n <fd-button-bar fd-initial-focus label=\"\u0627\u0646\u0635\u0631\u0627\u0641\" (click)=\"close()\"> </fd-button-bar>\r\n </div>\r\n </ng-template>\r\n </fd-dialog-footer>\r\n </fd-dialog>\r\n</ng-template>\r\n", styles: [":host{display:flex;width:100%}::ng-deep .fd-dialog__body{padding:10px 15px!important}::ng-deep .fd-dialog__body .filter{display:flex;column-gap:5px;align-items:flex-end}::ng-deep .fd-dialog__body .filter fd-button-bar{margin-bottom:5px}::ng-deep .fd-dialog__body table{margin-top:25px}::ng-deep .fd-dialog__body table tr:hover{background-color:#f0f5f8}::ng-deep .fd-dialog__body table .selected{background-color:#d0e5ef}::ng-deep .popover-body-item{display:flex;column-gap:5px;align-items:center}::ng-deep .popover-body-item fd-quick-view-group-item-label .fd-form-label__wrapper{padding-left:0}fd-popover{flex:1}fd-popover fd-popover-body{width:300px}li{height:1.625rem!important;min-height:1.625rem!important;display:flex;margin-top:.1875rem!important;margin-bottom:.25rem!important;border:.0625rem solid #89919a!important;padding-left:0}li .fd-list__content{flex:1}li .fd-list__content .control-content{display:flex;column-gap:5px;margin-top:2px;width:-moz-fit-content;width:fit-content}li .fd-list__content .control-content div{margin-top:2px}li .fd-list__content .control-content fd-icon{margin-left:5px}li .fd-list__content .control-content:hover>*{color:#062b42;font-weight:700}\n"] }]
153
- }], propDecorators: { popoverDom: [{
154
- type: ViewChild,
155
- args: ['popover']
156
- }], popoverBodyDom: [{
157
- type: ViewChild,
158
- args: [PopoverBodyComponent]
159
- }] } });
160
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktcGVyc29uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLWRldmVsb3AtY29tcG9uZW50cy9zcmMvbGliL3VpLXBlcnNvbi91aS1wZXJzb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdWktcGVyc29uL3VpLXBlcnNvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLHVCQUF1QixFQUFFLFNBQVMsRUFBdUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFhLG9CQUFvQixFQUFvQixNQUFNLHVCQUF1QixDQUFDO0FBRTFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFTMUQsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGtCQUFrQjtJQU56RDs7UUFTSSxpQkFBWSxHQUFhLEVBQUUsQ0FBQztRQUM1QixxQkFBZ0IsR0FBYTtZQUN6QjtnQkFDSSxFQUFFLEVBQUUsQ0FBQztnQkFDTCxTQUFTLEVBQUUsT0FBTztnQkFDbEIsUUFBUSxFQUFFLFVBQVU7Z0JBQ3BCLFVBQVUsRUFBRSxLQUFLO2dCQUNqQixVQUFVLEVBQUUsTUFBTTtnQkFDbEIsWUFBWSxFQUFFLFdBQVc7YUFDNUI7WUFDRDtnQkFDSSxFQUFFLEVBQUUsQ0FBQztnQkFDTCxTQUFTLEVBQUUsS0FBSztnQkFDaEIsUUFBUSxFQUFFLFNBQVM7Z0JBQ25CLFVBQVUsRUFBRSxNQUFNO2dCQUNsQixVQUFVLEVBQUUsUUFBUTtnQkFDcEIsWUFBWSxFQUFFLFdBQVc7YUFDNUI7WUFDRDtnQkFDSSxFQUFFLEVBQUUsQ0FBQztnQkFDTCxTQUFT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LElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDO0lBQ2xDLENBQUM7OzhHQWhKUSxpQkFBaUI7a0dBQWpCLGlCQUFpQiw2TEFFZixvQkFBb0IsdUVDZm5DLHF5T0F1SUE7MkZEMUhhLGlCQUFpQjtrQkFON0IsU0FBUzsrQkFDSSxlQUFlLG1CQUdSLHVCQUF1QixDQUFDLE1BQU07OEJBR3pCLFVBQVU7c0JBQS9CLFNBQVM7dUJBQUMsU0FBUztnQkFDYSxjQUFjO3NCQUE5QyxTQUFTO3VCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IERpYWxvZ1JlZiwgUG9wb3ZlckJvZHlDb21wb25lbnQsIFBvcG92ZXJDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgRmllbGRCYXNlQ29tcG9uZW50IH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBQZXJzb24sIFBlcnNvbkZpbHRlciB9IGZyb20gJy4uL21vZGVscy9wZXJzb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JkYy11aS1wZXJzb24nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VpLXBlcnNvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi91aS1wZXJzb24uY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaVBlcnNvbkNvbXBvbmVudCBleHRlbmRzIEZpZWxkQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgICBAVmlld0NoaWxkKCdwb3BvdmVyJykgcG9wb3ZlckRvbTogUG9wb3ZlckNvbXBvbmVudDtcclxuICAgIEBWaWV3Q2hpbGQoUG9wb3ZlckJvZHlDb21wb25lbnQpIHBvcG92ZXJCb2R5RG9tOiBQb3BvdmVyQm9keUNvbXBvbmVudDtcclxuICAgIHNlYXJjaFJlc3VsdDogUGVyc29uW10gPSBbXTtcclxuICAgIHBlcnNvbkNvbGxlY3Rpb246IFBlcnNvbltdID0gW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgSWQ6IDEsXHJcbiAgICAgICAgICAgIEZpcnN0TmFtZTogJ3phaHJhJyxcclxuICAgICAgICAgICAgTGFzdE5hbWU6ICdkYXJiYW5keScsXHJcbiAgICAgICAgICAgIEZhdGhlck5hbWU6ICdhbGknLFxyXG4gICAgICAgICAgICBCaXJ0aHBsYWNlOiAneWF6ZCcsXHJcbiAgICAgICAgICAgIE5hdGlvbmFsQ29kZTogJzEyMzQ1Njc4OSdcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgSWQ6IDIsXHJcbiAgICAgICAgICAgIEZpcnN0TmFtZTogJ2FsaScsXHJcbiAgICAgICAgICAgIExhc3ROYW1lOiAna2FmZGFyeScsXHJcbiAgICAgICAgICAgIEZhdGhlck5hbWU6ICdyZXphJyxcclxuICAgICAgICAgICAgQmlydGhwbGFjZTogJ3NoaXJheicsXHJcbiAgICAgICAgICAgIE5hdGlvbmFsQ29kZTogJzc1NDEyMzY1OSdcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgSWQ6IDMsXHJcbiAgICAgICAgICAgIEZpcnN0TmFtZTogJ3NhcmEnLFxyXG4gICAgICAgICAgICBMYXN0TmFtZTogJ3JlemFlZScsXHJcbiAgICAgICAgICAgIEZhdGhlck5hbWU6ICdhbGknLFxyXG4gICAgICAgICAgICBCaXJ0aHBsYWNlOiAndGVocmFuJyxcclxuICAgICAgICAgICAgTmF0aW9uYWxDb2RlOiAnMTIzNDU2Nzg5J1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICBJZDogNCxcclxuICAgICAgICAgICAgRmlyc3ROYW1lOiAn2LnZhNuMJyxcclxuICAgICAgICAgICAgTGFzdE5hbWU6ICfYrtiy2KfbjNuMJyxcclxuICAgICAgICAgICAgRmF0aGVyTmFtZTogJ9qp2YXYp9mEJyxcclxuICAgICAgICAgICAgQmlydGhwbGFjZTogJ9in2LXZgdmH2KfZhicsXHJcbiAgICAgICAgICAgIE5hdGlvbmFsQ29kZTogJzQ1MjE0NTY5OCdcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgSWQ6IDUsXHJcbiAgICAgICAgICAgIEZpcnN0TmFtZTogJ3ZhaGlkJyxcclxuICAgICAgICAgICAgTGFzdE5hbWU6ICdhbGlwb3InLFxyXG4gICAgICAgICAgICBGYXRoZXJOYW1lOiAnYWxpJyxcclxuICAgICAgICAgICAgQmlydGhwbGFjZTogJ3NoaXJheicsXHJcbiAgICAgICAgICAgIE5hdGlvbmFsQ29kZTogJzc1Njk4MjQ1NidcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgSWQ6IDYsXHJcbiAgICAgICAgICAgIEZpcnN0TmFtZTogJ21vaGFtbWFkJyxcclxuICAgICAgICAgICAgTGFzdE5hbWU6ICdrYW1hbGknLFxyXG4gICAgICAgICAgICBGYXRoZXJOYW1lOiAndmFoaWQnLFxyXG4gICAgICAgICAgICBCaXJ0aHBsYWNlOiAnYWh2YXonLFxyXG4gICAgICAgICAgICBOYXRpb25hbENvZGU6ICczMjE2NTg5NydcclxuICAgICAgICB9XHJcbiAgICBdO1xyXG5cclxuICAgIHNlbGVjdGVkUGVyc29uOiBQZXJzb24gfCBudWxsO1xyXG4gICAgZGlhbG9nUmVmOiBEaWFsb2dSZWY7XHJcblxyXG4gICAgZmlsdGVySXRlbXM6IFBlcnNvbkZpbHRlcjtcclxuICAgIGlzUG9wb3Zlck9wZW5lZDogYm9vbGVhbjtcclxuICAgIG9uQ2xvc2UkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgICAgIHRoaXMudmFsdWUgPSB7XHJcbiAgICAgICAgICAgIElkOiA1LFxyXG4gICAgICAgICAgICBGaXJzdE5hbWU6ICfZiNit24zYrycsXHJcbiAgICAgICAgICAgIExhc3ROYW1lOiAn2LnZhNuM2b7ZiNixJyxcclxuICAgICAgICAgICAgRmF0aGVyTmFtZTogJ9i52YTbjCcsXHJcbiAgICAgICAgICAgIEJpcnRocGxhY2U6ICfYtNuM2LHYp9iyJyxcclxuICAgICAgICAgICAgTmF0aW9uYWxDb2RlOiAnNzU2OTgyNDU2JyxcclxuICAgICAgICAgICAgTW9iaWxlOiAnMDkxNzU2MjM4OTgnXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLm9uQ2xvc2UkLnBpcGUoKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnY2xvc2VkJyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xyXG4gICAgICAgIHRoaXMub25DbG9zZSQgPSB0aGlzLnBvcG92ZXJCb2R5RG9tLm9uQ2xvc2U7XHJcbiAgICB9XHJcblxyXG4gICAgZmlsdGVyKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2VhcmNoUmVzdWx0ID0gdGhpcy5wZXJzb25Db2xsZWN0aW9uLmZpbHRlcihcclxuICAgICAgICAgICAgKHBlcnNvbikgPT5cclxuICAgICAgICAgICAgICAgIHBlcnNvbi5GaXJzdE5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0aGlzLmZpbHRlckl0ZW1zPy5GaXJzdE5hbWUudG9Mb3dlckNhc2UoKSB8fCAnJykgJiZcclxuICAgICAgICAgICAgICAgIHBlcnNvbi5MYXN0TmFtZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMuZmlsdGVySXRlbXM/Lkxhc3ROYW1lLnRvTG93ZXJDYXNlKCkgfHwgJycpICYmXHJcbiAgICAgICAgICAgICAgICBwZXJzb24uTmF0aW9uYWxDb2RlLnRvU3RyaW5nKCkuaW5jbHVkZXModGhpcy5maWx0ZXJJdGVtcz8uTmF0aW9uYWxDb2RlLnRvU3RyaW5nKCkgfHwgJycpXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3QocGVyc29uOiBQZXJzb24pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkUGVyc29uID0gcGVyc29uO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbmZpcm0oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuc2VsZWN0ZWRQZXJzb24gPz8gdGhpcy52YWx1ZTtcclxuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XHJcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGNsb3NlKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFBlcnNvbiA9IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgb3BlbkRpYWxvZyh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMucmVzZXRUYWJsZSgpO1xyXG4gICAgICAgIHRoaXMuZGlhbG9nUmVmID0gdGhpcy5fZGlhbG9nU2VydmljZS5vcGVuKHRlbXBsYXRlLCB7XHJcbiAgICAgICAgICAgIG1pbkhlaWdodDogJzUwMHB4JyxcclxuICAgICAgICAgICAgbWluV2lkdGg6ICc3MDBweCcsXHJcbiAgICAgICAgICAgIG1heEhlaWdodDogJzEwMDBweCcsXHJcbiAgICAgICAgICAgIG1heFdpZHRoOiAnMTUwMHB4JyxcclxuICAgICAgICAgICAgZHJhZ2dhYmxlOiB0cnVlLFxyXG4gICAgICAgICAgICByZXNpemFibGU6IHRydWUsXHJcbiAgICAgICAgICAgIHZlcnRpY2FsUGFkZGluZzogZmFsc2VcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5sb2FkaW5nKHRydWUpO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5kaWFsb2dSZWYubG9hZGluZyhmYWxzZSksIDUwMCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVzZXRUYWJsZSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmZpbHRlckl0ZW1zID0geyBGaXJzdE5hbWU6ICcnLCBMYXN0TmFtZTogJycsIE5hdGlvbmFsQ29kZTogJycgfTtcclxuICAgICAgICB0aGlzLmZpbHRlcigpO1xyXG4gICAgfVxyXG5cclxuICAgIGVkaXQoKTogdm9pZCB7fVxyXG5cclxuICAgIGRlbGV0ZSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnZhbHVlID0gbnVsbDtcclxuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgb3BlblBvcG92ZXIoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmlzUG9wb3Zlck9wZW5lZCAmJiB0aGlzLnZhbHVlKSB7XHJcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5wb3BvdmVyRG9tLm9wZW4oKTtcclxuICAgICAgICAgICAgfSwgMTAwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG9wZW5DaGFuZ2UoaXNPcGVuOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pc1BvcG92ZXJPcGVuZWQgPSBpc09wZW47XHJcbiAgICB9XHJcbn1cclxuIiwiPGZkLXBvcG92ZXIgW2ZpbGxDb250cm9sTW9kZV09XCInZXF1YWwnXCIgI3BvcG92ZXIgKGlzT3BlbkNoYW5nZSk9XCJvcGVuQ2hhbmdlKCRldmVudClcIj5cclxuICAgIDxmZC1wb3BvdmVyLWNvbnRyb2w+XHJcbiAgICAgICAgPHVsIGZkLWxpc3QgW2NvbXBhY3RdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICA8bGkgZmQtbGlzdC1pdGVtPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBmZC1saXN0LWNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRyb2wtY29udGVudFwiIChtb3VzZW92ZXIpPVwib3BlblBvcG92ZXIoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtaWNvbiBnbHlwaD1cInBlcnNvbi1wbGFjZWhvbGRlclwiPjwvZmQtaWNvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IHZhbHVlPy5GaXJzdE5hbWUgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgdmFsdWU/Lkxhc3ROYW1lIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInZhbHVlOyBlbHNlIHNlbGVjdEJ1dHRvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gZmQtYnV0dG9uIGZkVHlwZT1cInRyYW5zcGFyZW50XCIgZ2x5cGg9XCJ1c2VyLWVkaXRcIiAoY2xpY2spPVwiZWRpdCgpXCI+PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBmZC1idXR0b24gZmRUeXBlPVwidHJhbnNwYXJlbnRcIiBnbHlwaD1cImRlY2xpbmVcIiAoY2xpY2spPVwiZGVsZXRlKClcIj48L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNzZWxlY3RCdXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCLYp9mG2KrYrtin2Kgg2LTYrti1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib3BlbkRpYWxvZyhkaWFsb2dUZW1wbGF0ZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgID48L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgPC91bD5cclxuICAgIDwvZmQtcG9wb3Zlci1jb250cm9sPlxyXG4gICAgPGZkLXBvcG92ZXItYm9keSAqbmdJZj1cInZhbHVlXCIgI3BvcG92ZXJCb2R5PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyZXNpemUtcXVpY2stdmlld1wiPlxyXG4gICAgICAgICAgICA8ZmQtY2FyZCBjYXJkVHlwZT1cInF1aWNrVmlld1wiPlxyXG4gICAgICAgICAgICAgICAgPGZkLWNhcmQtY29udGVudD5cclxuICAgICAgICAgICAgICAgICAgICA8ZmQtcXVpY2stdmlldyBbaWRdPVwidmFsdWUuaWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLXF1aWNrLXZpZXctc3ViaGVhZGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWljb24gZ2x5cGg9XCJ1c2VyXCI+PC9mZC1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLXF1aWNrLXZpZXctc3ViaGVhZGVyLXRpdGxlPiDZhdi02K7Ytdin2KogPC9mZC1xdWljay12aWV3LXN1YmhlYWRlci10aXRsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1xdWljay12aWV3LXN1YmhlYWRlcj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1xdWljay12aWV3LWdyb3VwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbSAqbmdGb3I9XCJsZXQgaXRlbSBvZiB2YWx1ZSB8IGtleXZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIml0ZW0ua2V5ICE9PSAnSWQnXCIgY2xhc3M9XCJwb3BvdmVyLWJvZHktaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtcXVpY2stdmlldy1ncm91cC1pdGVtLWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgKGl0ZW0ua2V5IHwgdWlQZXJzb24pICsgJzonIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtcXVpY2stdmlldy1ncm91cC1pdGVtLWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtcXVpY2stdmlldy1ncm91cC1pdGVtLWNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJpdGVtLnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5rZXkgPT09ICdNb2JpbGUnIHx8IGl0ZW0ua2V5ID09PSAnUGhvbmUnID8gaXRlbS5rZXkgOiAnJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCIndGVsOicgKyBpdGVtLnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lubmVyVGV4dF09XCJpdGVtLnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmQtbGlua1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidFbWFpbCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCInbWFpbHRvOicgKyBpdGVtLnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lubmVyVGV4dF09XCJpdGVtLnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmQtbGlua1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdTd2l0Y2hEZWZhdWx0IFtpbm5lclRleHRdPVwiaXRlbS52YWx1ZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtcXVpY2stdmlldy1ncm91cC1pdGVtLWNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1xdWljay12aWV3LWdyb3VwPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZmQtcXVpY2stdmlldz5cclxuICAgICAgICAgICAgICAgIDwvZmQtY2FyZC1jb250ZW50PlxyXG4gICAgICAgICAgICA8L2ZkLWNhcmQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2ZkLXBvcG92ZXItYm9keT5cclxuPC9mZC1wb3BvdmVyPlxyXG5cclxuPG5nLXRlbXBsYXRlIGxldC1kaWFsb2cgbGV0LWRpYWxvZ0NvbmZpZz1cImRpYWxvZ0NvbmZpZ1wiICNkaWFsb2dUZW1wbGF0ZT5cclxuICAgIDxmZC1kaWFsb2cgW2RpYWxvZ0NvbmZpZ109XCJkaWFsb2dDb25maWdcIiBbZGlhbG9nUmVmXT1cImRpYWxvZ1wiPlxyXG4gICAgICAgIDxmZC1kaWFsb2ctaGVhZGVyPlxyXG4gICAgICAgICAgICA8aDEgZmQtdGl0bGU+2KzYs9iq2KzZiNuMINi02K7YtTwvaDE+XHJcbiAgICAgICAgICAgIDxidXR0b24gZmQtZGlhbG9nLWNsb3NlLWJ1dHRvbiAoY2xpY2spPVwiZGlhbG9nLmRpc21pc3MoJ0Nsb3NlIGJ1dHRvbicpXCI+PC9idXR0b24+XHJcbiAgICAgICAgPC9mZC1kaWFsb2ctaGVhZGVyPlxyXG5cclxuICAgICAgICA8ZmQtZGlhbG9nLWJvZHk+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXJcIiAoa2V5ZG93bi5lbnRlcik9XCJmaWx0ZXIoKVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBmZC1mb3JtLWl0ZW0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZkLWZvcm0tbGFiZWwgZm9yPVwibmFtZVwiPtmG2KfZhTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IGZkLWZvcm0tY29udHJvbCBpZD1cIm5hbWVcIiBbKG5nTW9kZWwpXT1cImZpbHRlckl0ZW1zLkZpcnN0TmFtZVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgZmQtZm9ybS1pdGVtPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmZC1mb3JtLWxhYmVsIGZvcj1cImxhc3QtbmFtZVwiPtmG2KfZhSDYrtin2YbZiNin2K/ar9uMPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgZmQtZm9ybS1jb250cm9sIGlkPVwibGFzdC1uYW1lXCIgWyhuZ01vZGVsKV09XCJmaWx0ZXJJdGVtcy5MYXN0TmFtZVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgZmQtZm9ybS1pdGVtPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmZC1mb3JtLWxhYmVsIGZvcj1cIm5hdGlvbmFsLWNvZGVcIj7aqdiv2YXZhNuMPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgZmQtZm9ybS1jb250cm9sIGlkPVwibmF0aW9uYWwtY29kZVwiIFsobmdNb2RlbCldPVwiZmlsdGVySXRlbXMuTmF0aW9uYWxDb2RlXCIgLz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDxmZC1idXR0b24tYmFyIGZkLWluaXRpYWwtZm9jdXMgZmRUeXBlPVwiZW1waGFzaXplZFwiIGxhYmVsPVwi2KzYs9iq2KzZiFwiIChjbGljayk9XCJmaWx0ZXIoKVwiPiA8L2ZkLWJ1dHRvbi1iYXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPHRhYmxlIGZkLXRhYmxlIFtub0JvcmRlclhdPVwidHJ1ZVwiIFtub0JvcmRlclldPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPHRoZWFkIGZkLXRhYmxlLWhlYWRlcj5cclxuICAgICAgICAgICAgICAgICAgICA8dHIgZmQtdGFibGUtcm93PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGggZmQtdGFibGUtY2VsbD7Zhtin2YU8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGggZmQtdGFibGUtY2VsbD7Zhtin2YUg2K7Yp9mG2YjYp9iv2q/bjDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBmZC10YWJsZS1jZWxsPtqp2K8g2YXZhNuMPC90aD5cclxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgICAgICAgIDx0Ym9keSBmZC10YWJsZS1ib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgIDx0clxyXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgcGVyc29uIG9mIHNlYXJjaFJlc3VsdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3QocGVyc29uKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF09XCJzZWxlY3RlZFBlcnNvbj8uSWQgPT09IHBlcnNvbj8uSWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmZC10YWJsZS1yb3dcclxuICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBmZC10YWJsZS1jZWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgcGVyc29uLkZpcnN0TmFtZSB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgZmQtdGFibGUtY2VsbD57eyBwZXJzb24uTGFzdE5hbWUgfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgZmQtdGFibGUtY2VsbD57eyBwZXJzb24uTmF0aW9uYWxDb2RlIH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICA8L2ZkLWRpYWxvZy1ib2R5PlxyXG5cclxuICAgICAgICA8ZmQtZGlhbG9nLWZvb3Rlcj5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIGZkVGVtcGxhdGU9XCJmb290ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgZmQtYmFyLXJpZ2h0PlxyXG4gICAgICAgICAgICAgICAgICAgIDxmZC1idXR0b24tYmFyIGZkVHlwZT1cImVtcGhhc2l6ZWRcIiBsYWJlbD1cItiq2KfbjNuM2K9cIiAoY2xpY2spPVwiY29uZmlybSgpXCI+IDwvZmQtYnV0dG9uLWJhcj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmQtYnV0dG9uLWJhciBmZC1pbml0aWFsLWZvY3VzIGxhYmVsPVwi2KfZhti12LHYp9mBXCIgKGNsaWNrKT1cImNsb3NlKClcIj4gPC9mZC1idXR0b24tYmFyPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9mZC1kaWFsb2ctZm9vdGVyPlxyXG4gICAgPC9mZC1kaWFsb2c+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -1,40 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class UiPersonPipe {
4
- transform(value) {
5
- let transform;
6
- switch (value) {
7
- case 'FirstName':
8
- transform = 'نام';
9
- break;
10
- case 'LastName':
11
- transform = 'نام خانوادگی';
12
- break;
13
- case 'NationalCode':
14
- transform = 'کد ملی';
15
- break;
16
- case 'FatherName':
17
- transform = 'نام پدر';
18
- break;
19
- case 'Birthplace':
20
- transform = 'محل تولد';
21
- break;
22
- case 'Mobile':
23
- transform = 'محل تولد';
24
- break;
25
- default:
26
- transform = '';
27
- break;
28
- }
29
- return transform;
30
- }
31
- }
32
- UiPersonPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiPersonPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
33
- UiPersonPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.7", ngImport: i0, type: UiPersonPipe, name: "uiPerson" });
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiPersonPipe, decorators: [{
35
- type: Pipe,
36
- args: [{
37
- name: 'uiPerson'
38
- }]
39
- }] });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktcGVyc29uLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1kZXZlbG9wLWNvbXBvbmVudHMvc3JjL2xpYi91aS1wZXJzb24vdWktcGVyc29uLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBS3BELE1BQU0sT0FBTyxZQUFZO0lBQ3JCLFNBQVMsQ0FBQyxLQUFjO1FBQ3BCLElBQUksU0FBUyxDQUFDO1FBQ2QsUUFBUSxLQUFLLEVBQUU7WUFDWCxLQUFLLFdBQVc7Z0JBQ1osU0FBUyxHQUFHLEtBQUssQ0FBQztnQkFDbEIsTUFBTTtZQUNWLEtBQUssVUFBVTtnQkFDWCxTQUFTLEdBQUcsY0FBYyxDQUFDO2dCQUMzQixNQUFNO1lBQ1YsS0FBSyxjQUFjO2dCQUNmLFNBQVMsR0FBRyxRQUFRLENBQUM7Z0JBQ3JCLE1BQU07WUFDVixLQUFLLFlBQVk7Z0JBQ2IsU0FBUyxHQUFHLFNBQVMsQ0FBQztnQkFDdEIsTUFBTTtZQUNWLEtBQUssWUFBWTtnQkFDYixTQUFTLEdBQUcsVUFBVSxDQUFDO2dCQUN2QixNQUFNO1lBQ1YsS0FBSyxRQUFRO2dCQUNULFNBQVMsR0FBRyxVQUFVLENBQUM7Z0JBQ3ZCLE1BQU07WUFDVjtnQkFDSSxTQUFTLEdBQUcsRUFBRSxDQUFDO2dCQUNmLE1BQU07U0FDYjtRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7O3lHQTNCUSxZQUFZO3VHQUFaLFlBQVk7MkZBQVosWUFBWTtrQkFIeEIsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsVUFBVTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiAndWlQZXJzb24nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaVBlcnNvblBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICAgIHRyYW5zZm9ybSh2YWx1ZTogdW5rbm93bik6IHN0cmluZyB7XHJcbiAgICAgICAgbGV0IHRyYW5zZm9ybTtcclxuICAgICAgICBzd2l0Y2ggKHZhbHVlKSB7XHJcbiAgICAgICAgICAgIGNhc2UgJ0ZpcnN0TmFtZSc6XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gPSAn2YbYp9mFJztcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICdMYXN0TmFtZSc6XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gPSAn2YbYp9mFINiu2KfZhtmI2KfYr9qv24wnO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ05hdGlvbmFsQ29kZSc6XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gPSAn2qnYryDZhdmE24wnO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ0ZhdGhlck5hbWUnOlxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtID0gJ9mG2KfZhSDZvtiv2LEnO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ0JpcnRocGxhY2UnOlxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtID0gJ9mF2K3ZhCDYqtmI2YTYryc7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSAnTW9iaWxlJzpcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybSA9ICfZhdit2YQg2KrZiNmE2K8nO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gPSAnJztcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdHJhbnNmb3JtO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,17 +0,0 @@
1
- import { Component, ChangeDetectionStrategy } from '@angular/core';
2
- import { UploadService } from 'barsa-novin-ray-core';
3
- import { UiPicturesInfoComponent } from 'barsa-sap-ui';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- import * as i2 from "barsa-novin-ray-core";
7
- import * as i3 from "barsa-sap-ui";
8
- import * as i4 from "@fundamental-ngx/core/carousel";
9
- export class UiPicturesCarouselComponent extends UiPicturesInfoComponent {
10
- }
11
- UiPicturesCarouselComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiPicturesCarouselComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
12
- UiPicturesCarouselComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiPicturesCarouselComponent, selector: "bdc-ui-pictures-carousel", providers: [UploadService], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"mediaData$ | async as mediaData; else loadingTpl\">\r\n <fd-carousel carouselIndicatorsOrientation=\"top\" width=\"100%\">\r\n <fd-carousel-item *ngFor=\"let media of mediaData; let i = index\">\r\n <img [imgLazy]=\"media.mediaUrl\" [src]=\"media.mediaUrl\" />\r\n </fd-carousel-item>\r\n </fd-carousel>\r\n</ng-container>\r\n<ng-template #loadingTpl>\r\n <div style=\"width: 100%; position: relative\">\r\n <bsu-mask></bsu-mask>\r\n </div>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ImageLazyDirective, selector: "[imgLazy]", inputs: ["auto", "threshold", "imgLazy"], outputs: ["imageLoaded"] }, { kind: "component", type: i3.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: i4.CarouselComponent, selector: "fd-carousel", inputs: ["id", "ariaLabel", "ariaLabelledBy", "ariaDescribedBy", "pageIndicatorsOrientation", "height", "width", "loop", "leftNavigationBtnLabel", "rightNavigationBtnLabel", "navigation", "navigatorInPageIndicator", "numericIndicator", "pageIndicatorContainer", "pageIndicator", "resourceStrings", "slideTransitionDuration", "swipeEnabled", "vertical", "visibleSlidesCount"], outputs: ["slideChange"] }, { kind: "component", type: i4.CarouselItemComponent, selector: "fd-carousel-item", inputs: ["id", "ariaLabel", "ariaLabelledBy", "ariaDescribedBy", "loading", "title", "initialHeight", "initialWidth", "value"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiPicturesCarouselComponent, decorators: [{
14
- type: Component,
15
- args: [{ selector: 'bdc-ui-pictures-carousel', providers: [UploadService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"mediaData$ | async as mediaData; else loadingTpl\">\r\n <fd-carousel carouselIndicatorsOrientation=\"top\" width=\"100%\">\r\n <fd-carousel-item *ngFor=\"let media of mediaData; let i = index\">\r\n <img [imgLazy]=\"media.mediaUrl\" [src]=\"media.mediaUrl\" />\r\n </fd-carousel-item>\r\n </fd-carousel>\r\n</ng-container>\r\n<ng-template #loadingTpl>\r\n <div style=\"width: 100%; position: relative\">\r\n <bsu-mask></bsu-mask>\r\n </div>\r\n</ng-template>\r\n" }]
16
- }] });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktcGljdHVyZXMtY2Fyb3VzZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdWktcGljdHVyZXMtY2Fyb3VzZWwvdWktcGljdHVyZXMtY2Fyb3VzZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdWktcGljdHVyZXMtY2Fyb3VzZWwvdWktcGljdHVyZXMtY2Fyb3VzZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sY0FBYyxDQUFDOzs7Ozs7QUFTdkQsTUFBTSxPQUFPLDJCQUE0QixTQUFRLHVCQUF1Qjs7d0hBQTNELDJCQUEyQjs0R0FBM0IsMkJBQTJCLG1EQUh6QixDQUFDLGFBQWEsQ0FBQyxpRENSOUIsa2hCQVlBOzJGRERhLDJCQUEyQjtrQkFQdkMsU0FBUzsrQkFDSSwwQkFBMEIsYUFHekIsQ0FBQyxhQUFhLENBQUMsbUJBQ1QsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVXBsb2FkU2VydmljZSB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuaW1wb3J0IHsgVWlQaWN0dXJlc0luZm9Db21wb25lbnQgfSBmcm9tICdiYXJzYS1zYXAtdWknO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JkYy11aS1waWN0dXJlcy1jYXJvdXNlbCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktcGljdHVyZXMtY2Fyb3VzZWwuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vdWktcGljdHVyZXMtY2Fyb3VzZWwuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIHByb3ZpZGVyczogW1VwbG9hZFNlcnZpY2VdLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFVpUGljdHVyZXNDYXJvdXNlbENvbXBvbmVudCBleHRlbmRzIFVpUGljdHVyZXNJbmZvQ29tcG9uZW50IHt9XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJtZWRpYURhdGEkIHwgYXN5bmMgYXMgbWVkaWFEYXRhOyBlbHNlIGxvYWRpbmdUcGxcIj5cclxuICAgIDxmZC1jYXJvdXNlbCBjYXJvdXNlbEluZGljYXRvcnNPcmllbnRhdGlvbj1cInRvcFwiIHdpZHRoPVwiMTAwJVwiPlxyXG4gICAgICAgIDxmZC1jYXJvdXNlbC1pdGVtICpuZ0Zvcj1cImxldCBtZWRpYSBvZiBtZWRpYURhdGE7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgPGltZyBbaW1nTGF6eV09XCJtZWRpYS5tZWRpYVVybFwiIFtzcmNdPVwibWVkaWEubWVkaWFVcmxcIiAvPlxyXG4gICAgICAgIDwvZmQtY2Fyb3VzZWwtaXRlbT5cclxuICAgIDwvZmQtY2Fyb3VzZWw+XHJcbjwvbmctY29udGFpbmVyPlxyXG48bmctdGVtcGxhdGUgI2xvYWRpbmdUcGw+XHJcbiAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDEwMCU7IHBvc2l0aW9uOiByZWxhdGl2ZVwiPlxyXG4gICAgICAgIDxic3UtbWFzaz48L2JzdS1tYXNrPlxyXG4gICAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -1,42 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
- import { DeviceInfoFieldBaseComponent } from 'barsa-sap-ui';
3
- import { debounceTime, distinctUntilChanged, Subject } from 'rxjs';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/forms";
6
- import * as i2 from "@fundamental-ngx/core/input-group";
7
- import * as i3 from "@fundamental-ngx/core/toolbar";
8
- import * as i4 from "barsa-novin-ray-core";
9
- export class UiTextFieldSearchComponent extends DeviceInfoFieldBaseComponent {
10
- constructor() {
11
- super(...arguments);
12
- this._debouncer = new Subject();
13
- }
14
- get MinSize() {
15
- // this call from outside.corejs
16
- return { width: 0, height: 30 };
17
- }
18
- ngOnInit() {
19
- super.ngOnInit();
20
- this._debouncer.pipe(debounceTime(300), distinctUntilChanged()).subscribe((value) => {
21
- this.value = value;
22
- this.valueChange.emit(value);
23
- });
24
- }
25
- onSearchSubmit() {
26
- this._valueChange(this.searchTerm);
27
- }
28
- _valueChange(value) {
29
- this._debouncer.next(value);
30
- }
31
- }
32
- UiTextFieldSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiTextFieldSearchComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
33
- UiTextFieldSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiTextFieldSearchComponent, selector: "bdc-ui-text-field-search", inputs: { value: "value", MinSize: "MinSize" }, usesInheritance: true, ngImport: i0, template: "<fd-input-group\n style=\"width: 100%\"\n fd-toolbar-item\n type=\"search\"\n glyph=\"search\"\n [glyphAriaLabel]=\"'Search' | bbbTranslate\"\n [placeholder]=\"'Search' | bbbTranslate\"\n [button]=\"true\"\n [disabled]=\"false\"\n [(ngModel)]=\"searchTerm\"\n (addOnButtonClicked)=\"onSearchSubmit()\"\n (keydown.enter)=\"onSearchSubmit()\"\n>\n</fd-input-group>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.InputGroupComponent, selector: "fd-input-group", inputs: ["inputTemplate", "placement", "required", "inline", "placeholder", "addOnText", "buttonFocusable", "type", "glyph", "button", "disabled", "readonly", "state", "isControl", "showFocus", "isExpanded", "glyphAriaLabel", "iconTitle", "ariaLabelledby", "ariaLabelledBy"], outputs: ["addOnButtonClicked", "search"] }, { kind: "directive", type: i3.ToolbarItemDirective, selector: "[fd-toolbar-item]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i4.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiTextFieldSearchComponent, decorators: [{
35
- type: Component,
36
- args: [{ selector: 'bdc-ui-text-field-search', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fd-input-group\n style=\"width: 100%\"\n fd-toolbar-item\n type=\"search\"\n glyph=\"search\"\n [glyphAriaLabel]=\"'Search' | bbbTranslate\"\n [placeholder]=\"'Search' | bbbTranslate\"\n [button]=\"true\"\n [disabled]=\"false\"\n [(ngModel)]=\"searchTerm\"\n (addOnButtonClicked)=\"onSearchSubmit()\"\n (keydown.enter)=\"onSearchSubmit()\"\n>\n</fd-input-group>\n" }]
37
- }], propDecorators: { value: [{
38
- type: Input
39
- }], MinSize: [{
40
- type: Input
41
- }] } });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktdGV4dC1maWVsZC1zZWFyY2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdWktdGV4dC1maWVsZC1zZWFyY2gvdWktdGV4dC1maWVsZC1zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdWktdGV4dC1maWVsZC1zZWFyY2gvdWktdGV4dC1maWVsZC1zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7QUFPbkUsTUFBTSxPQUFPLDBCQUEyQixTQUFRLDRCQUE0QjtJQU41RTs7UUFRSSxlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQVUsQ0FBQztLQW9CdEM7SUFuQkcsSUFBYSxPQUFPO1FBQ2hCLGdDQUFnQztRQUNoQyxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFLG9CQUFvQixFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNoRixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNuQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxjQUFjO1FBQ1YsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUNELFlBQVksQ0FBQyxLQUFhO1FBQ3RCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLENBQUM7O3VIQXJCUSwwQkFBMEI7MkdBQTFCLDBCQUEwQix1SUNUdkMsK1lBY0E7MkZETGEsMEJBQTBCO2tCQU50QyxTQUFTOytCQUNJLDBCQUEwQixtQkFHbkIsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsS0FBSztzQkFBYixLQUFLO2dCQUVPLE9BQU87c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGV2aWNlSW5mb0ZpZWxkQmFzZUNvbXBvbmVudCB9IGZyb20gJ2JhcnNhLXNhcC11aSc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JkYy11aS10ZXh0LWZpZWxkLXNlYXJjaCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VpLXRleHQtZmllbGQtc2VhcmNoLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi91aS10ZXh0LWZpZWxkLXNlYXJjaC5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFVpVGV4dEZpZWxkU2VhcmNoQ29tcG9uZW50IGV4dGVuZHMgRGV2aWNlSW5mb0ZpZWxkQmFzZUNvbXBvbmVudCB7XG4gICAgQElucHV0KCkgdmFsdWU6IHN0cmluZztcbiAgICBfZGVib3VuY2VyID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xuICAgIEBJbnB1dCgpIGdldCBNaW5TaXplKCk6IHsgd2lkdGg6IG51bWJlcjsgaGVpZ2h0OiBudW1iZXIgfSB7XG4gICAgICAgIC8vIHRoaXMgY2FsbCBmcm9tIG91dHNpZGUuY29yZWpzXG4gICAgICAgIHJldHVybiB7IHdpZHRoOiAwLCBoZWlnaHQ6IDMwIH07XG4gICAgfVxuICAgIHNlYXJjaFRlcm06IHN0cmluZztcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5fZGVib3VuY2VyLnBpcGUoZGVib3VuY2VUaW1lKDMwMCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG9uU2VhcmNoU3VibWl0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl92YWx1ZUNoYW5nZSh0aGlzLnNlYXJjaFRlcm0pO1xuICAgIH1cbiAgICBfdmFsdWVDaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLl9kZWJvdW5jZXIubmV4dCh2YWx1ZSk7XG4gICAgfVxufVxuIiwiPGZkLWlucHV0LWdyb3VwXG4gICAgc3R5bGU9XCJ3aWR0aDogMTAwJVwiXG4gICAgZmQtdG9vbGJhci1pdGVtXG4gICAgdHlwZT1cInNlYXJjaFwiXG4gICAgZ2x5cGg9XCJzZWFyY2hcIlxuICAgIFtnbHlwaEFyaWFMYWJlbF09XCInU2VhcmNoJyB8IGJiYlRyYW5zbGF0ZVwiXG4gICAgW3BsYWNlaG9sZGVyXT1cIidTZWFyY2gnIHwgYmJiVHJhbnNsYXRlXCJcbiAgICBbYnV0dG9uXT1cInRydWVcIlxuICAgIFtkaXNhYmxlZF09XCJmYWxzZVwiXG4gICAgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXJtXCJcbiAgICAoYWRkT25CdXR0b25DbGlja2VkKT1cIm9uU2VhcmNoU3VibWl0KClcIlxuICAgIChrZXlkb3duLmVudGVyKT1cIm9uU2VhcmNoU3VibWl0KClcIlxuPlxuPC9mZC1pbnB1dC1ncm91cD5cbiJdfQ==
@@ -1,70 +0,0 @@
1
- import { Component, ChangeDetectionStrategy } from '@angular/core';
2
- import { BarsaApi, BaseFormToolbaritemPropsComponent } from 'barsa-novin-ray-core';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "barsa-novin-ray-core";
5
- import * as i2 from "@fundamental-ngx/core";
6
- import * as i3 from "@angular/platform-browser";
7
- import * as i4 from "@angular/common";
8
- import * as i5 from "barsa-sap-ui";
9
- import * as i6 from "@fundamental-ngx/core/bar";
10
- import * as i7 from "@fundamental-ngx/core/button";
11
- import * as i8 from "@fundamental-ngx/core/dialog";
12
- import * as i9 from "@fundamental-ngx/core/utils";
13
- export class UlvContextMenuItemShowFileContentComponent extends BaseFormToolbaritemPropsComponent {
14
- constructor(_reportValuePipe, _cdr, _dialogService, _sanitize) {
15
- super(_reportValuePipe, _cdr);
16
- this._reportValuePipe = _reportValuePipe;
17
- this._cdr = _cdr;
18
- this._dialogService = _dialogService;
19
- this._sanitize = _sanitize;
20
- this.disabled = false;
21
- }
22
- ngOnInit() {
23
- super.ngOnInit();
24
- const mo = this.mo;
25
- this.text = this.parameters.ButtonText;
26
- this.fdType = this.parameters.FdType$Caption;
27
- this.compact = this.parameters.Compact;
28
- this.icon = this.parameters.Icon;
29
- this.iconOnly = this.parameters.IconOnly;
30
- this.fileType = this._reportValuePipe.transform(this.parameters.FieldType, mo, this.allColumns); // نوع
31
- this.file = this._reportValuePipe.transform(this.parameters.FieldFile, mo, this.allColumns);
32
- this.videoUrl = this._reportValuePipe.transform(this.parameters.FieldVideoUrl, mo, this.allColumns);
33
- if (this.fileType === '1' && this.file.Files?.length === 0) {
34
- this.disabled = true;
35
- }
36
- if (this.fileType === '2' && this.videoUrl) {
37
- this.disabled = true;
38
- }
39
- }
40
- openDialog(dialog) {
41
- let finalUrl;
42
- if (this.fileType === '1') {
43
- finalUrl = this._sanitize.bypassSecurityTrustResourceUrl(BarsaApi.Common.File.CreateAttachmentUrl(this.file.Files[0].Id, true));
44
- }
45
- if (this.fileType === '2') {
46
- finalUrl = this._sanitize.bypassSecurityTrustResourceUrl(this.videoUrl);
47
- }
48
- const isMobile = this.deviceName === 'mobile';
49
- const x = {
50
- data: {
51
- url: finalUrl,
52
- isVideo: this.fileType === '2',
53
- responsivePadding: true,
54
- mobile: isMobile
55
- }
56
- };
57
- if (!isMobile) {
58
- x.width = '60%';
59
- x.height = '56%';
60
- }
61
- this._dialogService.open(dialog, x);
62
- }
63
- }
64
- UlvContextMenuItemShowFileContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UlvContextMenuItemShowFileContentComponent, deps: [{ token: i1.MoReportValuePipe }, { token: i0.ChangeDetectorRef }, { token: i2.DialogService }, { token: i3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
65
- UlvContextMenuItemShowFileContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UlvContextMenuItemShowFileContentComponent, selector: "bdc-ulv-context-menu-item-show-file-content", usesInheritance: true, ngImport: i0, template: "<button\n fd-button\n [compact]=\"compact\"\n [label]=\"iconOnly ? '' : (text | bbbTranslate)\"\n [fdType]=\"fdType\"\n [glyph]=\"icon\"\n [compact]=\"compact\"\n (click)=\"openDialog(pdfDialog)\"\n></button>\n\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #pdfDialog>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTplRef>\n <fd-dialog-header>\n <ng-template fdTemplate=\"header\">\n <div fd-bar-left></div>\n <div fd-bar-right>\n <fd-button-bar\n *ngIf=\"dialogConfig.height !== '100vh'\"\n ariaLabel=\"fullscreen\"\n [glyph]=\"dialog.data.fullscreen ? 'exitfullscreen' : 'resize'\"\n fullscreenDialog\n [fullscreen]=\"dialog.data.fullscreen\"\n (fullscreenChanged)=\"dialog.data.fullscreen = $event\"\n [dialog]=\"dialog\"\n [dialogComponent]=\"dialogTplRef\"\n ></fd-button-bar>\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"dialog.dismiss()\"></fd-button-bar>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <object\n *ngIf=\"!dialogConfig.data.isVideo\"\n [data]=\"dialogConfig.data.url\"\n type=\"application/pdf\"\n width=\"100%\"\n height=\"98%\"\n ></object>\n <video *ngIf=\"dialogConfig.data.isVideo\" controls style=\"width: 100%; height: 98%\">\n <source [src]=\"dialogConfig.data.url\" type=\"video/mp4\" />\n Your browser does not support HTML video.\n </video>\n </fd-dialog-body>\n </fd-dialog>\n</ng-template>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.FullscreenDialogDirective, selector: "[fullscreenDialog]", inputs: ["dialog", "dialogComponent", "fullscreen"], outputs: ["fullscreenChanged"] }, { kind: "directive", type: i6.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i6.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i6.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabel", "ariaLabelledby", "id"] }, { kind: "component", type: i7.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "directive", type: i7.DeprecatedButtonContentDensityDirective, selector: "[fd-button][compact]" }, { kind: "component", type: i8.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i8.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i8.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i9.TemplateDirective, selector: "[fdTemplate]", inputs: ["fdTemplate"] }, { kind: "pipe", type: i1.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
66
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UlvContextMenuItemShowFileContentComponent, decorators: [{
67
- type: Component,
68
- args: [{ selector: 'bdc-ulv-context-menu-item-show-file-content', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n fd-button\n [compact]=\"compact\"\n [label]=\"iconOnly ? '' : (text | bbbTranslate)\"\n [fdType]=\"fdType\"\n [glyph]=\"icon\"\n [compact]=\"compact\"\n (click)=\"openDialog(pdfDialog)\"\n></button>\n\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #pdfDialog>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTplRef>\n <fd-dialog-header>\n <ng-template fdTemplate=\"header\">\n <div fd-bar-left></div>\n <div fd-bar-right>\n <fd-button-bar\n *ngIf=\"dialogConfig.height !== '100vh'\"\n ariaLabel=\"fullscreen\"\n [glyph]=\"dialog.data.fullscreen ? 'exitfullscreen' : 'resize'\"\n fullscreenDialog\n [fullscreen]=\"dialog.data.fullscreen\"\n (fullscreenChanged)=\"dialog.data.fullscreen = $event\"\n [dialog]=\"dialog\"\n [dialogComponent]=\"dialogTplRef\"\n ></fd-button-bar>\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"dialog.dismiss()\"></fd-button-bar>\n </div>\n </ng-template>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <object\n *ngIf=\"!dialogConfig.data.isVideo\"\n [data]=\"dialogConfig.data.url\"\n type=\"application/pdf\"\n width=\"100%\"\n height=\"98%\"\n ></object>\n <video *ngIf=\"dialogConfig.data.isVideo\" controls style=\"width: 100%; height: 98%\">\n <source [src]=\"dialogConfig.data.url\" type=\"video/mp4\" />\n Your browser does not support HTML video.\n </video>\n </fd-dialog-body>\n </fd-dialog>\n</ng-template>\n", styles: [":host{display:block}\n"] }]
69
- }], ctorParameters: function () { return [{ type: i1.MoReportValuePipe }, { type: i0.ChangeDetectorRef }, { type: i2.DialogService }, { type: i3.DomSanitizer }]; } });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWx2LWNvbnRleHQtbWVudS1pdGVtLXNob3ctZmlsZS1jb250ZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLWRldmVsb3AtY29tcG9uZW50cy9zcmMvbGliL3Vsdi1jb250ZXh0LW1lbnUtaXRlbS1zaG93LWZpbGUtY29udGVudC91bHYtY29udGV4dC1tZW51LWl0ZW0tc2hvdy1maWxlLWNvbnRlbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvdWx2LWNvbnRleHQtbWVudS1pdGVtLXNob3ctZmlsZS1jb250ZW50L3Vsdi1jb250ZXh0LW1lbnUtaXRlbS1zaG93LWZpbGUtY29udGVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLHVCQUF1QixFQUFrQyxNQUFNLGVBQWUsQ0FBQztBQUczRyxPQUFPLEVBQUUsUUFBUSxFQUFFLGlDQUFpQyxFQUFxQixNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7OztBQVF0RyxNQUFNLE9BQU8sMENBQTJDLFNBQVEsaUNBQWlDO0lBVTdGLFlBQ2MsZ0JBQW1DLEVBQ25DLElBQXVCLEVBQ3pCLGNBQTZCLEVBQzdCLFNBQXVCO1FBRS9CLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUxwQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW1CO1FBQ25DLFNBQUksR0FBSixJQUFJLENBQW1CO1FBQ3pCLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFUbkMsYUFBUSxHQUFHLEtBQUssQ0FBQztJQVlqQixDQUFDO0lBQ0QsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixNQUFNLEVBQUUsR0FBRyxJQUFJLENB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WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIFRlbXBsYXRlUmVmLCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBCdXR0b25UeXBlLCBEaWFsb2dDb25maWcsIERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuaW1wb3J0IHsgQmFyc2FBcGksIEJhc2VGb3JtVG9vbGJhcml0ZW1Qcm9wc0NvbXBvbmVudCwgTW9SZXBvcnRWYWx1ZVBpcGUgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYmRjLXVsdi1jb250ZXh0LW1lbnUtaXRlbS1zaG93LWZpbGUtY29udGVudCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Vsdi1jb250ZXh0LW1lbnUtaXRlbS1zaG93LWZpbGUtY29udGVudC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdWx2LWNvbnRleHQtbWVudS1pdGVtLXNob3ctZmlsZS1jb250ZW50LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVWx2Q29udGV4dE1lbnVJdGVtU2hvd0ZpbGVDb250ZW50Q29tcG9uZW50IGV4dGVuZHMgQmFzZUZvcm1Ub29sYmFyaXRlbVByb3BzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBmaWxlVHlwZTogc3RyaW5nO1xuICAgIGZpbGU6IGFueTtcbiAgICB2aWRlb1VybDogc3RyaW5nO1xuICAgIHRleHQ6IHN0cmluZztcbiAgICBkaXNhYmxlZCA9IGZhbHNlO1xuICAgIGNvbXBhY3Q6IGJvb2xlYW47XG4gICAgaWNvbjogc3RyaW5nO1xuICAgIGljb25Pbmx5OiBib29sZWFuO1xuICAgIGZkVHlwZTogQnV0dG9uVHlwZTtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIF9yZXBvcnRWYWx1ZVBpcGU6IE1vUmVwb3J0VmFsdWVQaXBlLFxuICAgICAgICBwcm90ZWN0ZWQgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX3Nhbml0aXplOiBEb21TYW5pdGl6ZXJcbiAgICApIHtcbiAgICAgICAgc3VwZXIoX3JlcG9ydFZhbHVlUGlwZSwgX2Nkcik7XG4gICAgfVxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICBjb25zdCBtbyA9IHRoaXMubW87XG4gICAgICAgIHRoaXMudGV4dCA9IHRoaXMucGFyYW1ldGVycy5CdXR0b25UZXh0O1xuICAgICAgICB0aGlzLmZkVHlwZSA9IHRoaXMucGFyYW1ldGVycy5GZFR5cGUkQ2FwdGlvbjtcbiAgICAgICAgdGhpcy5jb21wYWN0ID0gdGhpcy5wYXJhbWV0ZXJzLkNvbXBhY3Q7XG4gICAgICAgIHRoaXMuaWNvbiA9IHRoaXMucGFyYW1ldGVycy5JY29uO1xuICAgICAgICB0aGlzLmljb25Pbmx5ID0gdGhpcy5wYXJhbWV0ZXJzLkljb25Pbmx5O1xuICAgICAgICB0aGlzLmZpbGVUeXBlID0gdGhpcy5fcmVwb3J0VmFsdWVQaXBlLnRyYW5zZm9ybSh0aGlzLnBhcmFtZXRlcnMuRmllbGRUeXBlLCBtbywgdGhpcy5hbGxDb2x1bW5zKTsgLy8g2YbZiNi5XG4gICAgICAgIHRoaXMuZmlsZSA9IHRoaXMuX3JlcG9ydFZhbHVlUGlwZS50cmFuc2Zvcm0odGhpcy5wYXJhbWV0ZXJzLkZpZWxkRmlsZSwgbW8sIHRoaXMuYWxsQ29sdW1ucyk7XG4gICAgICAgIHRoaXMudmlkZW9VcmwgPSB0aGlzLl9yZXBvcnRWYWx1ZVBpcGUudHJhbnNmb3JtKHRoaXMucGFyYW1ldGVycy5GaWVsZFZpZGVvVXJsLCBtbywgdGhpcy5hbGxDb2x1bW5zKTtcbiAgICAgICAgaWYgKHRoaXMuZmlsZVR5cGUgPT09ICcxJyAmJiB0aGlzLmZpbGUuRmlsZXM/Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5kaXNhYmxlZCA9IHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5maWxlVHlwZSA9PT0gJzInICYmIHRoaXMudmlkZW9VcmwpIHtcbiAgICAgICAgICAgIHRoaXMuZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuICAgIG9wZW5EaWFsb2coZGlhbG9nOiBUZW1wbGF0ZVJlZjxhbnk+KTogdm9pZCB7XG4gICAgICAgIGxldCBmaW5hbFVybDtcbiAgICAgICAgaWYgKHRoaXMuZmlsZVR5cGUgPT09ICcxJykge1xuICAgICAgICAgICAgZmluYWxVcmwgPSB0aGlzLl9zYW5pdGl6ZS5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoXG4gICAgICAgICAgICAgICAgQmFyc2FBcGkuQ29tbW9uLkZpbGUuQ3JlYXRlQXR0YWNobWVudFVybCh0aGlzLmZpbGUuRmlsZXNbMF0uSWQsIHRydWUpXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmZpbGVUeXBlID09PSAnMicpIHtcbiAgICAgICAgICAgIGZpbmFsVXJsID0gdGhpcy5fc2FuaXRpemUuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKHRoaXMudmlkZW9VcmwpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGlzTW9iaWxlID0gdGhpcy5kZXZpY2VOYW1lID09PSAnbW9iaWxlJztcbiAgICAgICAgY29uc3QgeDogRGlhbG9nQ29uZmlnID0ge1xuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIHVybDogZmluYWxVcmwsXG4gICAgICAgICAgICAgICAgaXNWaWRlbzogdGhpcy5maWxlVHlwZSA9PT0gJzInLFxuICAgICAgICAgICAgICAgIHJlc3BvbnNpdmVQYWRkaW5nOiB0cnVlLFxuICAgICAgICAgICAgICAgIG1vYmlsZTogaXNNb2JpbGVcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICBpZiAoIWlzTW9iaWxlKSB7XG4gICAgICAgICAgICB4LndpZHRoID0gJzYwJSc7XG4gICAgICAgICAgICB4LmhlaWdodCA9ICc1NiUnO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2RpYWxvZ1NlcnZpY2Uub3BlbihkaWFsb2csIHgpO1xuICAgIH1cbn1cbiIsIjxidXR0b25cbiAgICBmZC1idXR0b25cbiAgICBbY29tcGFjdF09XCJjb21wYWN0XCJcbiAgICBbbGFiZWxdPVwiaWNvbk9ubHkgPyAnJyA6ICh0ZXh0IHwgYmJiVHJhbnNsYXRlKVwiXG4gICAgW2ZkVHlwZV09XCJmZFR5cGVcIlxuICAgIFtnbHlwaF09XCJpY29uXCJcbiAgICBbY29tcGFjdF09XCJjb21wYWN0XCJcbiAgICAoY2xpY2spPVwib3BlbkRpYWxvZyhwZGZEaWFsb2cpXCJcbj48L2J1dHRvbj5cblxuPG5nLXRlbXBsYXRlIGxldC1kaWFsb2cgbGV0LWRpYWxvZ0NvbmZpZz1cImRpYWxvZ0NvbmZpZ1wiICNwZGZEaWFsb2c+XG4gICAgPGZkLWRpYWxvZyBbZGlhbG9nQ29uZmlnXT1cImRpYWxvZ0NvbmZpZ1wiIFtkaWFsb2dSZWZdPVwiZGlhbG9nXCIgI2RpYWxvZ1RwbFJlZj5cbiAgICAgICAgPGZkLWRpYWxvZy1oZWFkZXI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgZmRUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgZmQtYmFyLWxlZnQ+PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBmZC1iYXItcmlnaHQ+XG4gICAgICAgICAgICAgICAgICAgIDxmZC1idXR0b24tYmFyXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRpYWxvZ0NvbmZpZy5oZWlnaHQgIT09ICcxMDB2aCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgYXJpYUxhYmVsPVwiZnVsbHNjcmVlblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZ2x5cGhdPVwiZGlhbG9nLmRhdGEuZnVsbHNjcmVlbiA/ICdleGl0ZnVsbHNjcmVlbicgOiAncmVzaXplJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBmdWxsc2NyZWVuRGlhbG9nXG4gICAgICAgICAgICAgICAgICAgICAgICBbZnVsbHNjcmVlbl09XCJkaWFsb2cuZGF0YS5mdWxsc2NyZWVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChmdWxsc2NyZWVuQ2hhbmdlZCk9XCJkaWFsb2cuZGF0YS5mdWxsc2NyZWVuID0gJGV2ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaWFsb2ddPVwiZGlhbG9nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaWFsb2dDb21wb25lbnRdPVwiZGlhbG9nVHBsUmVmXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvZmQtYnV0dG9uLWJhcj5cbiAgICAgICAgICAgICAgICAgICAgPGZkLWJ1dHRvbi1iYXIgYXJpYUxhYmVsPVwiY2xvc2VcIiBnbHlwaD1cImRlY2xpbmVcIiAoY2xpY2spPVwiZGlhbG9nLmRpc21pc3MoKVwiPjwvZmQtYnV0dG9uLWJhcj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZmQtZGlhbG9nLWhlYWRlcj5cblxuICAgICAgICA8ZmQtZGlhbG9nLWJvZHk+XG4gICAgICAgICAgICA8b2JqZWN0XG4gICAgICAgICAgICAgICAgKm5nSWY9XCIhZGlhbG9nQ29uZmlnLmRhdGEuaXNWaWRlb1wiXG4gICAgICAgICAgICAgICAgW2RhdGFdPVwiZGlhbG9nQ29uZmlnLmRhdGEudXJsXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwiYXBwbGljYXRpb24vcGRmXCJcbiAgICAgICAgICAgICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgICAgICAgICAgIGhlaWdodD1cIjk4JVwiXG4gICAgICAgICAgICA+PC9vYmplY3Q+XG4gICAgICAgICAgICA8dmlkZW8gKm5nSWY9XCJkaWFsb2dDb25maWcuZGF0YS5pc1ZpZGVvXCIgY29udHJvbHMgc3R5bGU9XCJ3aWR0aDogMTAwJTsgaGVpZ2h0OiA5OCVcIj5cbiAgICAgICAgICAgICAgICA8c291cmNlIFtzcmNdPVwiZGlhbG9nQ29uZmlnLmRhdGEudXJsXCIgdHlwZT1cInZpZGVvL21wNFwiIC8+XG4gICAgICAgICAgICAgICAgWW91ciBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgSFRNTCB2aWRlby5cbiAgICAgICAgICAgIDwvdmlkZW8+XG4gICAgICAgIDwvZmQtZGlhbG9nLWJvZHk+XG4gICAgPC9mZC1kaWFsb2c+XG48L25nLXRlbXBsYXRlPlxuIl19