barsa-sap-ui 2.2.1 → 2.2.3

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 (242) hide show
  1. package/esm2022/barsa-sap-ui.mjs +5 -0
  2. package/esm2022/lib/apply-conditional-formmatings.directive.mjs +90 -0
  3. package/esm2022/lib/avatar-size.pipe.mjs +41 -0
  4. package/esm2022/lib/barsa-answer-card/barsa-answer-card.component.mjs +41 -0
  5. package/esm2022/lib/barsa-asp-viewer/barsa-asp-viewer.component.mjs +145 -0
  6. package/esm2022/lib/barsa-bar-download-file/barsa-bar-download-file.component.mjs +23 -0
  7. package/esm2022/lib/barsa-bar-panel/barsa-bar-panel.component.mjs +23 -0
  8. package/esm2022/lib/barsa-base-panel/barsa-base-layout-panel.component.mjs +29 -0
  9. package/esm2022/lib/barsa-breadcrumbs/barsa-breadcrumbs.component.mjs +24 -0
  10. package/esm2022/lib/barsa-card-layout-panel/barsa-card-layout-panel.component.mjs +24 -0
  11. package/esm2022/lib/barsa-card-row-payam/barsa-card-row-payam.component.mjs +31 -0
  12. package/esm2022/lib/barsa-cartable-form/barsa-cartable-form.component.mjs +41 -0
  13. package/esm2022/lib/barsa-cartable-template/barsa-cartable-template.component.mjs +24 -0
  14. package/esm2022/lib/barsa-chat/barsa-chat.component.mjs +242 -0
  15. package/esm2022/lib/barsa-chat/chat.model.mjs +8 -0
  16. package/esm2022/lib/barsa-chat-content/barsa-chat-content.component.mjs +13 -0
  17. package/esm2022/lib/barsa-chat-content-toolbar/barsa-chat-content-toolbar.component.mjs +22 -0
  18. package/esm2022/lib/barsa-chat-list/barsa-chat-list.component.mjs +66 -0
  19. package/esm2022/lib/barsa-chat-message/barsa-chat-message.component.mjs +78 -0
  20. package/esm2022/lib/barsa-chat-thread/barsa-chat-thread.component.mjs +22 -0
  21. package/esm2022/lib/barsa-chat-threads-list/barsa-chat-threads-list.component.mjs +13 -0
  22. package/esm2022/lib/barsa-chat-threads-list-toolbar/barsa-chat-threads-list-toolbar.component.mjs +15 -0
  23. package/esm2022/lib/barsa-chip/barsa-chip.component.mjs +72 -0
  24. package/esm2022/lib/barsa-column-indicator/barsa-column-indicator.component.mjs +23 -0
  25. package/esm2022/lib/barsa-column-rownumber/barsa-column-rownumber.component.mjs +14 -0
  26. package/esm2022/lib/barsa-custom-inline-edit/barsa-custom-inline-edit.component.mjs +14 -0
  27. package/esm2022/lib/barsa-custom-inline-edit-row/barsa-custom-inline-edit-row.component.mjs +26 -0
  28. package/esm2022/lib/barsa-date-time-picker/barsa-date-time-picker.component.mjs +71 -0
  29. package/esm2022/lib/barsa-dynamic-field/barsa-dynamic-field.component.mjs +40 -0
  30. package/esm2022/lib/barsa-enum-menu-button/barsa-enum-menu-button.component.mjs +61 -0
  31. package/esm2022/lib/barsa-field-key-value/barsa-field-key-value.component.mjs +45 -0
  32. package/esm2022/lib/barsa-form-side-content/barsa-form-side-content.component.mjs +58 -0
  33. package/esm2022/lib/barsa-grid-layout-panel/barsa-grid-layout-panel.component.mjs +27 -0
  34. package/esm2022/lib/barsa-group-cartable/barsa-cartable-group.component.mjs +94 -0
  35. package/esm2022/lib/barsa-horizontal-flex-panel/barsa-horizontal-flex-panel.component.mjs +22 -0
  36. package/esm2022/lib/barsa-linkable-items-panel/barsa-linkable-items-panel.component.mjs +37 -0
  37. package/esm2022/lib/barsa-list-file-linear/barsa-list-file-linear.component.mjs +41 -0
  38. package/esm2022/lib/barsa-list-file-linear-gmail/barsa-list-file-linear-gmail.component.mjs +29 -0
  39. package/esm2022/lib/barsa-list-layout-panel/barsa-list-layout-panel.component.mjs +23 -0
  40. package/esm2022/lib/barsa-modal/barsa-modal.component.mjs +43 -0
  41. package/esm2022/lib/barsa-monaco-editor/barsa-monaco-editor.component.mjs +83 -0
  42. package/esm2022/lib/barsa-network-offline/barsa-network-offline.component.mjs +57 -0
  43. package/esm2022/lib/barsa-pishnamayesh-payam/barsa-pishnamayesh-payam.component.mjs +159 -0
  44. package/esm2022/lib/barsa-question-answer-comments-section/barsa-question-answer-comments-section.component.mjs +17 -0
  45. package/esm2022/lib/barsa-question-answer-content-actions-section/barsa-question-answer-content-actions-section.component.mjs +30 -0
  46. package/esm2022/lib/barsa-question-answer-creator-time-section/barsa-question-answer-creator-time-section.component.mjs +14 -0
  47. package/esm2022/lib/barsa-question-answer-form/barsa-question-answer-form.component.mjs +34 -0
  48. package/esm2022/lib/barsa-question-answer-form-add-comment/barsa-question-answer-form-add-comment.component.mjs +46 -0
  49. package/esm2022/lib/barsa-question-answer-vote-section/barsa-question-answer-vote-section.component.mjs +79 -0
  50. package/esm2022/lib/barsa-question-post/barsa-question-post.component.mjs +30 -0
  51. package/esm2022/lib/barsa-report-card-flex-view/barsa-report-card-flex-view.component.mjs +31 -0
  52. package/esm2022/lib/barsa-report-checkbox-switch-button/barsa-report-checkbox-switch-button.component.mjs +28 -0
  53. package/esm2022/lib/barsa-report-one-of-list/barsa-report-one-of-list.component.mjs +102 -0
  54. package/esm2022/lib/barsa-row-inline-actionlist/barsa-row-inline-actionlist.component.mjs +26 -0
  55. package/esm2022/lib/barsa-sap-ui-routing.module.mjs +18 -0
  56. package/esm2022/lib/barsa-sap-ui.module.mjs +377 -0
  57. package/esm2022/lib/barsa-search-form/barsa-search-form.component.mjs +29 -0
  58. package/esm2022/lib/barsa-simple-form/barsa-simple-form.component.mjs +170 -0
  59. package/esm2022/lib/barsa-tab-route-manager/barsa-tab-route-manager.component.mjs +18 -0
  60. package/esm2022/lib/barsa-table-column/barsa-table-column.component.mjs +29 -0
  61. package/esm2022/lib/barsa-table-header/barsa-table-header.component.mjs +222 -0
  62. package/esm2022/lib/barsa-table-row/barsa-table-row.component.mjs +87 -0
  63. package/esm2022/lib/barsa-tag-categories/barsa-tag-categories.component.mjs +60 -0
  64. package/esm2022/lib/barsa-tag-chip/barsa-tag-chip.component.mjs +26 -0
  65. package/esm2022/lib/barsa-tags-category-row/barsa-tags-category-row.component.mjs +23 -0
  66. package/esm2022/lib/barsa-text-ellipsis/barsa-text-ellipsis.component.mjs +37 -0
  67. package/esm2022/lib/barsa-tinyemce/barsa-tinyemce.component.mjs +418 -0
  68. package/esm2022/lib/barsa-toolbaritem-search/barsa-toolbaritem-search.component.mjs +36 -0
  69. package/esm2022/lib/barsa-tree-item/barsa-tree-item.component.mjs +153 -0
  70. package/esm2022/lib/barsa-tree-item/node-has-one-depth-level.pipe.mjs +20 -0
  71. package/esm2022/lib/barsa-ulv-main/barsa-ulv-main.component.mjs +216 -0
  72. package/esm2022/lib/blob-viewer/blob-viewer.component.mjs +74 -0
  73. package/esm2022/lib/breadcrumb/breadcrumb.component.mjs +50 -0
  74. package/esm2022/lib/captcha-field/captcha-field.component.mjs +28 -0
  75. package/esm2022/lib/card-item/card-item.component.mjs +74 -0
  76. package/esm2022/lib/card-view-content/card-view-content.component.mjs +46 -0
  77. package/esm2022/lib/col-renderer.directive.mjs +47 -0
  78. package/esm2022/lib/column-matrix-renderer/column-matrix-renderer.component.mjs +56 -0
  79. package/esm2022/lib/column-matrix-renderer/matrix-value.pipe.mjs +61 -0
  80. package/esm2022/lib/column-renderer/column-renderer.component.mjs +97 -0
  81. package/esm2022/lib/constants.mjs +450 -0
  82. package/esm2022/lib/custom-date-time/custom-date-time.component.mjs +41 -0
  83. package/esm2022/lib/device-info-field-base.mjs +24 -0
  84. package/esm2022/lib/dialog-handler.directive.mjs +29 -0
  85. package/esm2022/lib/download-files.directive.mjs +34 -0
  86. package/esm2022/lib/dynamic-page-size.pipe.mjs +27 -0
  87. package/esm2022/lib/file-in-dialog/file-in-dialog.component.mjs +44 -0
  88. package/esm2022/lib/file-viewer/file-viewer.component.mjs +47 -0
  89. package/esm2022/lib/file-viewer-content/file-viewer-content.component.mjs +71 -0
  90. package/esm2022/lib/file-viewer-popover/file-viewer-popover.component.mjs +37 -0
  91. package/esm2022/lib/form-dialog/form-dialog.component.mjs +171 -0
  92. package/esm2022/lib/form-dialog-less/form-dialog-less.component.mjs +50 -0
  93. package/esm2022/lib/form-toolbar/form-toolbar.component.mjs +62 -0
  94. package/esm2022/lib/form-toolbar-button/form-toolbar-button.component.mjs +45 -0
  95. package/esm2022/lib/form-wizard/form-wizard.component.mjs +21 -0
  96. package/esm2022/lib/fullscreen-dialog.directive.mjs +60 -0
  97. package/esm2022/lib/fullscreen-files.directive.mjs +43 -0
  98. package/esm2022/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.mjs +217 -0
  99. package/esm2022/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.mjs +215 -0
  100. package/esm2022/lib/global-search/global-search.component.mjs +27 -0
  101. package/esm2022/lib/global-search-module/global-search-module.component.mjs +29 -0
  102. package/esm2022/lib/global-search-panel/global-search-panel.component.mjs +25 -0
  103. package/esm2022/lib/header-avatar/header-avatar.component.mjs +18 -0
  104. package/esm2022/lib/htree-create-new/htree-create-new.component.mjs +48 -0
  105. package/esm2022/lib/hyperlink/hyperlink.component.mjs +23 -0
  106. package/esm2022/lib/index.mjs +549 -0
  107. package/esm2022/lib/inline-save-and-cancel/inline-save-and-cancel.component.mjs +32 -0
  108. package/esm2022/lib/layout-actions/layout-actions.component.mjs +70 -0
  109. package/esm2022/lib/layout-control/layout-control.component.mjs +302 -0
  110. package/esm2022/lib/layout-wizard/layout-wizard.component.mjs +180 -0
  111. package/esm2022/lib/list-item/list-item.component.mjs +34 -0
  112. package/esm2022/lib/ly-empty-space/ly-empty-space.component.mjs +42 -0
  113. package/esm2022/lib/ly-horizontal-layout/ly-horizontal-layout.component.mjs +82 -0
  114. package/esm2022/lib/ly-label/ly-label.component.mjs +37 -0
  115. package/esm2022/lib/ly-layout-container/ly-layout-container.component.mjs +83 -0
  116. package/esm2022/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.mjs +17 -0
  117. package/esm2022/lib/ly-layout-field-label/ly-layout-field-label.component.mjs +24 -0
  118. package/esm2022/lib/ly-layout-panel/ly-layout-panel.component.mjs +83 -0
  119. package/esm2022/lib/ly-line/ly-line.component.mjs +56 -0
  120. package/esm2022/lib/ly-simple-label/ly-simple-label.component.mjs +22 -0
  121. package/esm2022/lib/ly-tab-container/ly-tab-container.component.mjs +44 -0
  122. package/esm2022/lib/ly-tab-page/ly-tab-page.component.mjs +44 -0
  123. package/esm2022/lib/ly-vertical-layout/ly-vertical-layout.component.mjs +51 -0
  124. package/esm2022/lib/manage-filters-report/manage-filters-report.component.mjs +43 -0
  125. package/esm2022/lib/mask/mask.component.mjs +22 -0
  126. package/esm2022/lib/message-strip/message-strip.component.mjs +28 -0
  127. package/esm2022/lib/models/grid-data-provider.mjs +114 -0
  128. package/esm2022/lib/models/grid-view.mjs +2 -0
  129. package/esm2022/lib/models/index.mjs +2 -0
  130. package/esm2022/lib/no-data/no-data.component.mjs +31 -0
  131. package/esm2022/lib/notification-item/notification-item.component.mjs +57 -0
  132. package/esm2022/lib/notification-item-actions/notification-item-actions.component.mjs +79 -0
  133. package/esm2022/lib/notification-popup.service.mjs +92 -0
  134. package/esm2022/lib/object-status-icon.pipe.mjs +27 -0
  135. package/esm2022/lib/progress-indicator/progress-indicator.component.mjs +18 -0
  136. package/esm2022/lib/report-navigator/report-navigator.component.mjs +68 -0
  137. package/esm2022/lib/report-new-top-form/report-new-top-form.component.mjs +60 -0
  138. package/esm2022/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.mjs +35 -0
  139. package/esm2022/lib/report-search-fields-manage/report-search-fields-manage.component.mjs +97 -0
  140. package/esm2022/lib/report-search-panel-save/report-search-panel-save.component.mjs +88 -0
  141. package/esm2022/lib/report-tree-base.mjs +387 -0
  142. package/esm2022/lib/report-view-renderer.directive.mjs +392 -0
  143. package/esm2022/lib/responsive-toolbar/responsive-toolbar.component.mjs +50 -0
  144. package/esm2022/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.mjs +84 -0
  145. package/esm2022/lib/rich-text-static/rich-text-static.component.mjs +72 -0
  146. package/esm2022/lib/sap-font-class.pipe.mjs +30 -0
  147. package/esm2022/lib/sap-font.pipe.mjs +30 -0
  148. package/esm2022/lib/sap-size.pipe.mjs +28 -0
  149. package/esm2022/lib/sap-ui-report-base.component.mjs +809 -0
  150. package/esm2022/lib/search-panel/search-panel.component.mjs +63 -0
  151. package/esm2022/lib/static-text/static-text.component.mjs +15 -0
  152. package/esm2022/lib/table-th.directive.mjs +87 -0
  153. package/esm2022/lib/title/title.component.mjs +15 -0
  154. package/esm2022/lib/ui-asp-report-viewer/ui-asp-report-viewer.component.mjs +34 -0
  155. package/esm2022/lib/ui-bpmn-viewer/ui-bpmn-viewer.component.mjs +33 -0
  156. package/esm2022/lib/ui-button/ui-button.component.mjs +32 -0
  157. package/esm2022/lib/ui-calendar/ui-calendar.component.mjs +53 -0
  158. package/esm2022/lib/ui-card-view/ui-card-view.component.mjs +58 -0
  159. package/esm2022/lib/ui-card-view-horizontal-group/ui-card-view-horizontal-group.component.mjs +42 -0
  160. package/esm2022/lib/ui-check-box/ui-check-box.component.mjs +39 -0
  161. package/esm2022/lib/ui-color-ui/ui-color-ui.component.mjs +50 -0
  162. package/esm2022/lib/ui-container-with-button/ui-container-with-button.component.mjs +38 -0
  163. package/esm2022/lib/ui-date-range-ex/ui-date-range-ex.component.mjs +191 -0
  164. package/esm2022/lib/ui-date-time/ui-date-time.component.mjs +150 -0
  165. package/esm2022/lib/ui-editable-grid/ui-editable-grid.component.mjs +108 -0
  166. package/esm2022/lib/ui-exception-form/ui-exception-form.component.mjs +53 -0
  167. package/esm2022/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.mjs +124 -0
  168. package/esm2022/lib/ui-form-panel/ui-form-panel.component.mjs +103 -0
  169. package/esm2022/lib/ui-gantt-chart/ui-gantt-chart.component.mjs +32 -0
  170. package/esm2022/lib/ui-graph/ui-graph.component.mjs +17 -0
  171. package/esm2022/lib/ui-grid/ui-grid.component.mjs +25 -0
  172. package/esm2022/lib/ui-grid-columns/ui-grid-columns.component.mjs +43 -0
  173. package/esm2022/lib/ui-grid-filter-item/ui-grid-filter-item.component.mjs +66 -0
  174. package/esm2022/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.mjs +75 -0
  175. package/esm2022/lib/ui-grid-sort-item/ui-grid-sort-item.component.mjs +58 -0
  176. package/esm2022/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.mjs +123 -0
  177. package/esm2022/lib/ui-html-viewer/ui-html-viewer.component.mjs +16 -0
  178. package/esm2022/lib/ui-info-bar-panel/ui-info-bar-panel.component.mjs +11 -0
  179. package/esm2022/lib/ui-label/ui-label.component.mjs +12 -0
  180. package/esm2022/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.mjs +379 -0
  181. package/esm2022/lib/ui-list-view/ui-list-view.component.mjs +84 -0
  182. package/esm2022/lib/ui-map/ui-map.component.mjs +68 -0
  183. package/esm2022/lib/ui-matrix-view/ui-matrix-view.component.mjs +124 -0
  184. package/esm2022/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.mjs +19 -0
  185. package/esm2022/lib/ui-mo-info-general-object-ui/ui-mo-info-general-object-ui.component.mjs +14 -0
  186. package/esm2022/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.mjs +55 -0
  187. package/esm2022/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.mjs +429 -0
  188. package/esm2022/lib/ui-monaco-editor/ui-monaco-editor.component.mjs +28 -0
  189. package/esm2022/lib/ui-multi-select-card/ui-multi-select-card.component.mjs +37 -0
  190. package/esm2022/lib/ui-multi-select-checkbox/ui-multi-select-checkbox.component.mjs +59 -0
  191. package/esm2022/lib/ui-multi-select-combo/ui-multi-select-combo.component.mjs +93 -0
  192. package/esm2022/lib/ui-multi-select-radio/ui-multi-select-radio.component.mjs +36 -0
  193. package/esm2022/lib/ui-multi-select-slider/ui-multi-select-slider.component.mjs +56 -0
  194. package/esm2022/lib/ui-multi-select-smile/ui-multi-select-smile.component.mjs +28 -0
  195. package/esm2022/lib/ui-notification-view/ui-notification-view.component.mjs +47 -0
  196. package/esm2022/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.mjs +33 -0
  197. package/esm2022/lib/ui-num-int-slider/ui-num-int-slider.component.mjs +27 -0
  198. package/esm2022/lib/ui-num-int-ui/ui-num-int-ui.component.mjs +21 -0
  199. package/esm2022/lib/ui-pdf-viewer/ui-pdf-viewer.component.mjs +268 -0
  200. package/esm2022/lib/ui-picture-file/ui-picture-file.component.mjs +101 -0
  201. package/esm2022/lib/ui-pictures-info/ui-pictures-info.component.mjs +261 -0
  202. package/esm2022/lib/ui-radio-group/ui-radio-group.component.mjs +48 -0
  203. package/esm2022/lib/ui-read-only-field/ui-read-only-field.component.mjs +36 -0
  204. package/esm2022/lib/ui-report-container/ui-report-container.component.mjs +46 -0
  205. package/esm2022/lib/ui-search-command-info-ui/ui-search-command-info-ui.component.mjs +24 -0
  206. package/esm2022/lib/ui-simple-combo/ui-simple-combo.component.mjs +55 -0
  207. package/esm2022/lib/ui-single-picture/ui-single-picture.component.mjs +36 -0
  208. package/esm2022/lib/ui-switch-button/ui-switch-button.component.mjs +20 -0
  209. package/esm2022/lib/ui-table-view/ui-table-view.component.mjs +296 -0
  210. package/esm2022/lib/ui-text-area/ui-text-area.component.mjs +49 -0
  211. package/esm2022/lib/ui-text-field/ui-text-field.component.mjs +52 -0
  212. package/esm2022/lib/ui-text-field-auto-complete/ui-text-field-auto-complete.component.mjs +48 -0
  213. package/esm2022/lib/ui-time-span/ui-time-span.component.mjs +24 -0
  214. package/esm2022/lib/ui-tinymce/ui-tinymce.component.mjs +53 -0
  215. package/esm2022/lib/ui-tree/ui-tree.component.mjs +114 -0
  216. package/esm2022/lib/ui-tree-view/ui-tree-view.component.mjs +100 -0
  217. package/esm2022/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.mjs +23 -0
  218. package/esm2022/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.mjs +310 -0
  219. package/esm2022/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.mjs +25 -0
  220. package/esm2022/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.mjs +93 -0
  221. package/esm2022/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.mjs +119 -0
  222. package/esm2022/lib/ul-notify-popup/ul-notify-popup.component.mjs +32 -0
  223. package/esm2022/lib/ul-toast-adapter/ul-toast-adapter.component.mjs +48 -0
  224. package/esm2022/lib/ulv-column-settings/ulv-column-settings.component.mjs +53 -0
  225. package/esm2022/lib/ulv-context-menu/ulv-context-menu.component.mjs +116 -0
  226. package/esm2022/lib/ulv-filter-settings/ulv-filter-settings.component.mjs +43 -0
  227. package/esm2022/lib/ulv-form-multi-select/ulv-form-multi-select.component.mjs +196 -0
  228. package/esm2022/lib/ulv-groupby-settings/ulv-groupby-settings.component.mjs +44 -0
  229. package/esm2022/lib/ulv-paging/ulv-paging.component.mjs +84 -0
  230. package/esm2022/lib/ulv-selection/ulv-selection.component.mjs +65 -0
  231. package/esm2022/lib/ulv-settings/ulv-settings.component.mjs +116 -0
  232. package/esm2022/lib/ulv-sort-settings/ulv-sort-settings.component.mjs +54 -0
  233. package/esm2022/lib/ulv-toolbar/ulv-toolbar.component.mjs +177 -0
  234. package/esm2022/lib/upload-file-status.pipe.mjs +29 -0
  235. package/esm2022/lib/util-chat-time-badge.pipe.mjs +18 -0
  236. package/esm2022/lib/util-date-to-hh-mm.pipe.mjs +23 -0
  237. package/esm2022/lib/wizard-layout.directive.mjs +104 -0
  238. package/esm2022/public-api.mjs +236 -0
  239. package/fesm2022/barsa-sap-ui.mjs +6 -13
  240. package/fesm2022/barsa-sap-ui.mjs.map +1 -1
  241. package/lib/layout-wizard/layout-wizard.component.d.ts +0 -1
  242. package/package.json +3 -1
@@ -0,0 +1,84 @@
1
+ import { ChangeDetectionStrategy, Component, TemplateRef, ViewChild } from '@angular/core';
2
+ import { ReportViewBaseComponent, enumValueToStringSize } from 'barsa-novin-ray-core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "barsa-novin-ray-core";
6
+ import * as i3 from "@fundamental-ngx/core/link";
7
+ import * as i4 from "@fundamental-ngx/core/content-density";
8
+ import * as i5 from "@fundamental-ngx/core/button";
9
+ import * as i6 from "@fundamental-ngx/core/icon";
10
+ import * as i7 from "@fundamental-ngx/core/layout-panel";
11
+ import * as i8 from "@fundamental-ngx/core/list";
12
+ import * as i9 from "@fundamental-ngx/core/menu";
13
+ import * as i10 from "@fundamental-ngx/core/object-status";
14
+ import * as i11 from "@fundamental-ngx/core/popover";
15
+ import * as i12 from "@fundamental-ngx/core/toolbar";
16
+ import * as i13 from "@fundamental-ngx/core/token";
17
+ import * as i14 from "../no-data/no-data.component";
18
+ import * as i15 from "../list-item/list-item.component";
19
+ export class UiListViewComponent extends ReportViewBaseComponent {
20
+ constructor() {
21
+ super(...arguments);
22
+ this.detailsColumns = [];
23
+ this.popoverOpen = false;
24
+ this.columnComponents = [];
25
+ this.popupMode = false;
26
+ }
27
+ ngOnInit() {
28
+ super.ngOnInit();
29
+ this.popupMode = this.viewSetting.MenuInSmallDevice === true && this.deviceSize === 's';
30
+ this.selectedPresentaionTemplate = this.popupMode ? this.popupModeTemplateRef : this._getPresentaionMode();
31
+ this.isDisplayType = this.viewSetting.ItemType$Caption === 'Display';
32
+ const viewSetting = this.viewSetting;
33
+ this.hasRowOlgo = this.viewSetting?.RowOlgo?.Selector;
34
+ const findColumn = this._findColumnByDbName;
35
+ this.avatarSize = enumValueToStringSize(viewSetting.AvatarSize, this.contentDensity === 'compact' ? 's' : 'm');
36
+ this.listSetting = {
37
+ ...viewSetting,
38
+ TitleField: findColumn.transform(this.allColumns, viewSetting.Title),
39
+ SubtitleField: findColumn.transform(this.allColumns, viewSetting.Subtitle) ?? '',
40
+ CounterField: findColumn.transform(this.allColumns, viewSetting.Counter) ?? '',
41
+ AvatarField: findColumn.transform(this.allColumns, viewSetting.Avatar),
42
+ IconFont: viewSetting.IconFont || null,
43
+ StatusField: findColumn.transform(this.allColumns, viewSetting.Status),
44
+ DescriptionField: findColumn.transform(this.allColumns, viewSetting.Description)
45
+ };
46
+ }
47
+ onOlgoEvents(e) {
48
+ if (this._menu) {
49
+ this._menu.close();
50
+ }
51
+ super.onOlgoEvents(e);
52
+ }
53
+ onListCheckboxClick(mo, index) {
54
+ this.rowCheck.emit({ mo, index });
55
+ }
56
+ onListNavigationClick(mo, index) {
57
+ this.rowClick.emit({ mo, index });
58
+ }
59
+ _getPresentaionMode() {
60
+ switch (this.viewSetting.PresentaionMode) {
61
+ default:
62
+ return this.defaultModeTemplateRef;
63
+ case '2':
64
+ this.popupMode = true;
65
+ return this.popupModeTemplateRef;
66
+ }
67
+ }
68
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiListViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
69
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UiListViewComponent, selector: "bsu-ui-list-view", viewQueries: [{ propertyName: "popupModeTemplateRef", first: true, predicate: ["popupModeTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "defaultModeTemplateRef", first: true, predicate: ["defaultMode"], descendants: true, read: TemplateRef, static: true }, { propertyName: "_menu", first: true, predicate: ["menu"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"selectedPresentaionTemplate\"></ng-container>\r\n\r\n<ng-template #popupModeTemplate>\r\n <ng-container *ngTemplateOutlet=\"deviceSize === 's' ? mobileTpl : desktopTpl\"></ng-container>\r\n\r\n <!-- <fd-menu [appendTo]=\"_el\"\r\n #menu [mobile]=\"deviceSize === 's'\" >\r\n</fd-menu> -->\r\n</ng-template>\r\n<ng-template #mobileTpl>\r\n <div class=\"popup-mode\">\r\n <ng-container *ngTemplateOutlet=\"buttonDropDown; context: { menu: menu }\"></ng-container>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"tokensTpl\"></ng-container>\r\n <fd-menu #menu [mobile]=\"true\" [mobileConfig]=\"{ title: title | bbbTranslate, hasCloseButton: true }\">\r\n <ng-container *ngTemplateOutlet=\"defaultMode; context: { popover: menu, popupMode: true }\"></ng-container>\r\n </fd-menu>\r\n</ng-template>\r\n<ng-template #desktopTpl>\r\n <fd-popover #popover fillControlMode=\"equal\">\r\n <fd-popover-control class=\"popup-mode\">\r\n <ng-container *ngTemplateOutlet=\"buttonDropDown\"></ng-container>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ng-container\r\n *ngTemplateOutlet=\"defaultMode; context: { popover: popover, popupMode: true }\"\r\n ></ng-container>\r\n </fd-popover-body>\r\n </fd-popover>\r\n <ng-container *ngTemplateOutlet=\"tokensTpl\"></ng-container>\r\n</ng-template>\r\n<ng-template #buttonDropDown let-menu=\"menu\">\r\n <button\r\n class=\"drop-down\"\r\n fd-button\r\n [label]=\"selectedMo ? (selectedMo.$Caption | bbbTranslate) : (title | bbbTranslate)\"\r\n [fdMenu]=\"true\"\r\n [fdMenuTrigger]=\"menu\"\r\n >\r\n @if (selectedCount > 0 && isCheckList) {\r\n <span fd-object-status [inverted]=\"true\" [label]=\"selectedCount\" [title]=\"selectedCount\"></span>\r\n }\r\n </button>\r\n</ng-template>\r\n<ng-template #tokensTpl>\r\n @if (isCheckList && hasSelected) {\r\n <div style=\"padding: 5px; display: flex; flex-wrap: wrap; row-gap: 5px; column-gap: 5px\">\r\n @for (mo of moDataList; track mo; let index = $index) { @if (mo.$IsChecked) {\r\n <fd-token fdCozy [readOnly]=\"false\" (onCloseClick)=\"onRowCheck({mo, index})\">{{\r\n columns[0].Caption | rval: mo:columns:true\r\n }}</fd-token>\r\n } }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template #defaultMode let-popover=\"popover\" let-popupMode=\"popupMode\">\r\n <fd-layout-panel [class.popup-mode]=\"popupMode\" [ngClass]=\"'size-' + deviceSize\">\r\n <fd-layout-panel-header>\r\n <fd-layout-panel-head>\r\n <h4 fd-layout-panel-title>{{ title | bbbTranslate }}</h4>\r\n @if (selectedCount > 0) {\r\n <span fd-object-status [inverted]=\"true\" [label]=\"selectedCount\" [title]=\"selectedCount\"></span>\r\n }\r\n </fd-layout-panel-head>\r\n <fd-layout-panel-actions>\r\n @if (deviceSize !== 's') {\r\n <button\r\n style=\"margin-top: 5px\"\r\n fd-button\r\n glyph=\"decline\"\r\n fdType=\"transparent\"\r\n (click)=\"popover.close()\"\r\n ></button>\r\n }\r\n </fd-layout-panel-actions>\r\n </fd-layout-panel-header>\r\n @if (isCheckList && moDataList.length) {\r\n <fd-layout-panel-filters>\r\n <fd-toolbar fdType=\"transparent\" [clearBorder]=\"true\">\r\n <a class=\"clearCheckAll\" (click)=\"onAllCheckbox($event)\" fd-link [aria-label]=\"'All' | bbbTranslate\">{{\r\n 'All' | bbbTranslate\r\n }}</a>\r\n <label fd-toolbar-label style=\"font-size: 1rem; font-weight: bold\">.</label>\r\n <a\r\n (click)=\"onClearCheckbox()\"\r\n fd-toolbar-item\r\n class=\"clearCheckAll\"\r\n fd-link\r\n [aria-label]=\"'Clear' | bbbTranslate\"\r\n >{{ 'Clear' | bbbTranslate }}</a\r\n >\r\n </fd-toolbar>\r\n </fd-layout-panel-filters>\r\n }\r\n\r\n <fd-layout-panel-body [bleed]=\"true\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n isDisplayType ? displayListTemplate : standardListTemplate;\r\n context: {\r\n $implicit: moDataList,\r\n isCheckList: isCheckList,\r\n groupby: groupby,\r\n conditionalFormats: conditionalFormats,\r\n deviceName: deviceName,\r\n viewSetting: viewSetting,\r\n allColumns: allColumns,\r\n access: access,\r\n rtl: rtl,\r\n popover: popover\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n </fd-layout-panel-body>\r\n </fd-layout-panel>\r\n</ng-template>\r\n\r\n<!--display list-->\r\n<ng-template\r\n #displayListTemplate\r\n let-moDataList\r\n let-isCheckList=\"isCheckList\"\r\n let-groupby=\"groupby\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-deviceName=\"deviceName\"\r\n let-allColumns=\"allColumns\"\r\n let-viewSetting=\"viewSetting\"\r\n let-access=\"access\"\r\n let-rtl=\"rtl\"\r\n>\r\n @if (moDataList && moDataList.length > 0) {\r\n <ul fd-list class=\"display-list fd-list--navigation\" ellipsify>\r\n @for (mo of moDataList | multipleGroupBy: groupby; track mo; let index = $index; let last = $last) { @if\r\n (!mo.parent || mo.parent?.expanded) {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n itemTemplate;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n last: last,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n ></ng-container>\r\n } }\r\n </ul>\r\n } @else {\r\n <bsu-no-data [simple]=\"popupMode\"></bsu-no-data>\r\n }\r\n</ng-template>\r\n<!--standard list-->\r\n<ng-template\r\n #standardListTemplate\r\n let-moDataList\r\n let-isCheckList=\"isCheckList\"\r\n let-groupby=\"groupby\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-allColumns=\"allColumns\"\r\n let-deviceName=\"deviceName\"\r\n let-access=\"access\"\r\n let-viewSetting=\"viewSetting\"\r\n let-rtl=\"rtl\"\r\n let-last=\"last\"\r\n>\r\n @if (moDataList && moDataList.length > 0) {\r\n <ul class=\"fd-list--navigation\" [class.fd-list--byline]=\"!isDisplayType\" fd-list [byline]=\"true\" ellipsify>\r\n @for (mo of moDataList | multipleGroupBy: groupby; track mo; let index = $index) { @if (!mo.parent ||\r\n mo.parent?.expanded) {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n itemTemplate;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n last: last,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n ></ng-container>\r\n } }\r\n </ul>\r\n } @else {\r\n <bsu-no-data [simple]=\"popupMode\"></bsu-no-data>\r\n }\r\n</ng-template>\r\n\r\n<!--noData-->\r\n<ng-template\r\n #itemTemplate\r\n let-mo\r\n let-index=\"index\"\r\n let-last=\"last\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n>\r\n @if (mo.group || mo.group === '') {\r\n <li\r\n fd-list-group-header\r\n [style.padding-right]=\"'calc( 1rem + ' + mo.level * 12 + 'px' + ' )'\"\r\n [attr.level]=\"mo.level\"\r\n [class.root-group]=\"mo.level === 0\"\r\n >\r\n <fd-icon\r\n [glyph]=\"mo.expanded ? 'navigation-down-arrow' : 'navigation-left-arrow'\"\r\n class=\"cell-expand\"\r\n (click)=\"onExpandClick(mo)\"\r\n ></fd-icon>\r\n <span fd-list-title>{{ mo.group }}</span>\r\n </li>\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n hasRowOlgo ? dynamicItemTemplate : defaultItem;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n ></ng-container>\r\n <ng-template\r\n #defaultItem\r\n let-mo\r\n let-index=\"index\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n >\r\n @if (!hasRowOlgo) {\r\n <bsu-list-item\r\n [isDisplayType]=\"isDisplayType\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [index]=\"index\"\r\n [last]=\"last\"\r\n [setting]=\"listSetting\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [formSetting]=\"formSetting\"\r\n [allColumns]=\"allColumns\"\r\n [contentDensity]=\"contentDensity\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n (rowCheck)=\"onRowCheck($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (ulvCommand)=\"onUlvCommand($event)\"\r\n (editFormPanelSave)=\"onEditFormPanelSave($event)\"\r\n (editFormPanelCancel)=\"onEditFormPanelCancel($event)\"\r\n >\r\n </bsu-list-item>\r\n } @else {\r\n <bnrc-dynamic-item-component\r\n [component]=\"viewSetting.RowOlgo\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [moDataList]=\"moDataList\"\r\n [showDetailsInRow]=\"showDetailsInRow\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [detailsColumns]=\"detailsColumns\"\r\n [columnComponents]=\"viewSetting?.ColumnComponents || null\"\r\n [cartableTemplate]=\"cartableTemplates[mo.RelatedMo?.$TypeDefId]\"\r\n [cartableMo]=\"mo.RelatedMo\"\r\n [cartableWorkflowData]=\"mo.SerializedWorkflowData\"\r\n [serializedRelatedMo]=\"mo.SerializedRelatedMo\"\r\n [detailsText]=\"viewSetting?.DetailsSetting?.ButtonText\"\r\n [detailsComponent]=\"detailsComponent\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [visibility]=\"mo.$Visibility\"\r\n [expanded]=\"mo.$Expanded\"\r\n [level]=\"mo.$Level\"\r\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\r\n [moDataListCount]=\"moDataListCount\"\r\n [columnsCount]=\"columnsCount - detailsColumns.length\"\r\n [typeDefId]=\"typeDefId\"\r\n [extraRelation]=\"extraRelation\"\r\n [formSetting]=\"formSetting\"\r\n [index]=\"index\"\r\n [last]=\"last\"\r\n [setting]=\"viewSetting\"\r\n [secondaryColumns]=\"secondaryColumns | filterColumnsByDetails: detailsColumns:false\"\r\n [columns]=\"columns | filterColumnsByDetails: detailsColumns:false\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [access]=\"access\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [allowInlineEdit]=\"allowInlineEdit\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n [rowIndicator]=\"columns[0].MetaFieldTypeId === '41'\"\r\n (events)=\"onOlgoEvents($event)\"\r\n >\r\n </bnrc-dynamic-item-component>\r\n }\r\n </ng-template>\r\n <ng-template\r\n #dynamicItemTemplate\r\n let-mo\r\n let-index=\"index\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n >\r\n <bnrc-dynamic-item-component\r\n [component]=\"viewSetting.RowOlgo\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [moDataList]=\"moDataList\"\r\n [showDetailsInRow]=\"showDetailsInRow\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [detailsColumns]=\"detailsColumns\"\r\n [columnComponents]=\"viewSetting?.ColumnComponents || null\"\r\n [cartableTemplate]=\"cartableTemplates[mo.RelatedMo?.$TypeDefId]\"\r\n [cartableMo]=\"mo.RelatedMo\"\r\n [cartableWorkflowData]=\"mo.SerializedWorkflowData\"\r\n [serializedRelatedMo]=\"mo.SerializedRelatedMo\"\r\n [detailsText]=\"viewSetting?.DetailsSetting?.ButtonText\"\r\n [detailsComponent]=\"detailsComponent\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [visibility]=\"mo.$Visibility\"\r\n [expanded]=\"mo.$Expanded\"\r\n [level]=\"mo.$Level\"\r\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\r\n [moDataListCount]=\"moDataListCount\"\r\n [columnsCount]=\"columnsCount - detailsColumns.length\"\r\n [typeDefId]=\"typeDefId\"\r\n [extraRelation]=\"extraRelation\"\r\n [formSetting]=\"formSetting\"\r\n [index]=\"index\"\r\n [last]=\"last\"\r\n [setting]=\"viewSetting\"\r\n [secondaryColumns]=\"secondaryColumns | filterColumnsByDetails: detailsColumns:false\"\r\n [columns]=\"columns | filterColumnsByDetails: detailsColumns:false\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [access]=\"access\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [allowInlineEdit]=\"allowInlineEdit\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n [rowIndicator]=\"columns[0].MetaFieldTypeId === '41'\"\r\n (events)=\"onOlgoEvents($event)\"\r\n >\r\n </bnrc-dynamic-item-component>\r\n </ng-template>\r\n }\r\n</ng-template>\r\n", styles: [":host{display:block}.fd-list__group-header{column-gap:10px;align-items:center}.header th{border-left:none!important;border-right:none!important}.clearCheckAll{text-decoration:none!important}.fd-list--navigation-indication .fd-list__item:after{min-width:0!important}li.standard-list-row{padding-top:.2rem;padding-bottom:.2rem;min-height:4rem;justify-content:space-evenly;column-gap:10px}li.standard-list-row:hover:not(.selected){background-color:var(--sapBackgroundColor, #f7f7f7)}li.standard-list-row .fd-list__content{row-gap:.4rem}li.standard-list-row .fd-list__content .fd-list__byline{padding:0;font-size:.775rem}li.standard-list-row ::ng-deep .fd-form-item{position:static}li.standard-list-row ::ng-deep .fd-form-item .fd-checkbox__label--compact{padding:0;margin-left:0}li.standard-list-row ::ng-deep fd-icon{font-size:.75rem!important}fd-layout-panel{height:100%}.li-link.checklink[rtl=true]{padding-right:0!important}.li-link.checklist[rtl=false]{padding-left:0!important}.standard-list-group-label{padding-top:10px;padding-bottom:3px}fd-layout-panel-header{display:none}fd-layout-panel.popup-mode.size-s{box-shadow:none!important}fd-layout-panel.popup-mode.size-s fd-layout-panel-header{display:none!important}.popup-mode fd-layout-panel-header{display:flex;min-height:1rem;height:1rem;border:none!important}.popup-mode fd-layout-panel-header h4{font-weight:700;font-size:1rem}.popup-mode fd-layout-panel-head{display:flex;column-gap:5px;align-items:center;justify-content:center}.popup-mode ::ng-deep li{border:none!important}.popup-mode fd-layout-panel-body{margin-top:.3rem}.popup-mode fd-layout-panel-filters{border:none!important;padding:0 1rem}.popup-mode .drop-down{width:100%;max-width:100%;max-height:2rem!important;height:2rem!important;background:var(--sapButton_Background)!important;border:1px solid #ccc!important}.popup-mode .drop-down ::ng-deep span{font-size:1rem!important;line-height:1.2rem!important}.popup-mode .drop-down ::ng-deep fd-icon{position:absolute;left:10px}fd-popover{width:100%;max-width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicItemComponent, selector: "bnrc-dynamic-item-component", inputs: ["mo", "allColumns", "moDataList", "columns", "column", "index", "last", "deviceName", "deviceSize", "rtl", "editMode", "setting", "parameters", "contextMenuItems", "canView", "showRowNumber", "rowNumber", "formSetting", "conditionalFormats", "disableOverflowContextMenu", "navigationArrow", "isCheckList", "fields", "isChecked", "layout94$", "inlineEditMode", "isNewInlineMo", "allowInlineEdit", "typeDefId", "rowIndicator", "rowIndicatorColor", "UlvMainCtrlr"] }, { kind: "directive", type: i2.EllipsifyDirective, selector: "[ellipsify]", inputs: ["limitLine"] }, { kind: "directive", type: i2.MobileDirective, selector: "[mobile]" }, { kind: "component", type: i3.LinkComponent, selector: "[fdLink], [fd-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "directive", type: i4.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i5.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i6.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i7.LayoutPanelComponent, selector: "fd-layout-panel", inputs: ["backgroundImage", "id", "transparent"] }, { kind: "component", type: i7.LayoutPanelHeaderComponent, selector: "fd-layout-panel-header" }, { kind: "component", type: i7.LayoutPanelHeadComponent, selector: "fd-layout-panel-head" }, { kind: "directive", type: i7.LayoutPanelTitleDirective, selector: "[fd-layout-panel-title]" }, { kind: "component", type: i7.LayoutPanelActionsComponent, selector: "fd-layout-panel-actions" }, { kind: "component", type: i7.LayoutPanelFiltersComponent, selector: "fd-layout-panel-filters" }, { kind: "component", type: i7.LayoutPanelBodyComponent, selector: "fd-layout-panel-body", inputs: ["bleed"] }, { kind: "component", type: i8.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "unreadIndicator", "role"], outputs: ["focusEscapeList"] }, { kind: "directive", type: i8.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i8.ListGroupHeaderDirective, selector: "[fdListGroupHeader], [fd-list-group-header]", inputs: ["nativeElementId"], outputs: ["keyDown"] }, { kind: "component", type: i9.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "directive", type: i9.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i10.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: i11.PopoverControlComponent, selector: "fd-popover-control, [fdPopoverControl]" }, { kind: "component", type: i11.PopoverBodyComponent, selector: "fd-popover-body", inputs: ["minWidth", "maxWidth", "minHeight", "maxHeight"] }, { kind: "component", type: i11.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll"] }, { kind: "component", type: i12.ToolbarComponent, selector: "fd-toolbar", inputs: ["titleId", "class", "shouldOverflow", "fdType", "title", "active", "clearBorder", "forceOverflow", "tabindex", "headingLevel", "ariaLabel", "ariaLabelledBy"] }, { kind: "directive", type: i12.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "directive", type: i12.ToolbarLabelDirective, selector: "[fd-toolbar-label]" }, { kind: "component", type: i13.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown", "elementFocused"] }, { kind: "component", type: i14.NoDataComponent, selector: "bsu-no-data", inputs: ["simple"] }, { kind: "component", type: i15.ListItemComponent, selector: "bsu-list-item", inputs: ["setting", "isDisplayType"] }, { kind: "pipe", type: i2.MultipleGroupByPipe, name: "multipleGroupBy" }, { kind: "pipe", type: i2.MoReportValuePipe, name: "rval" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i2.FilterColumnsByDetailsPipe, name: "filterColumnsByDetails" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
70
+ }
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiListViewComponent, decorators: [{
72
+ type: Component,
73
+ args: [{ selector: 'bsu-ui-list-view', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<ng-container *ngTemplateOutlet=\"selectedPresentaionTemplate\"></ng-container>\r\n\r\n<ng-template #popupModeTemplate>\r\n <ng-container *ngTemplateOutlet=\"deviceSize === 's' ? mobileTpl : desktopTpl\"></ng-container>\r\n\r\n <!-- <fd-menu [appendTo]=\"_el\"\r\n #menu [mobile]=\"deviceSize === 's'\" >\r\n</fd-menu> -->\r\n</ng-template>\r\n<ng-template #mobileTpl>\r\n <div class=\"popup-mode\">\r\n <ng-container *ngTemplateOutlet=\"buttonDropDown; context: { menu: menu }\"></ng-container>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"tokensTpl\"></ng-container>\r\n <fd-menu #menu [mobile]=\"true\" [mobileConfig]=\"{ title: title | bbbTranslate, hasCloseButton: true }\">\r\n <ng-container *ngTemplateOutlet=\"defaultMode; context: { popover: menu, popupMode: true }\"></ng-container>\r\n </fd-menu>\r\n</ng-template>\r\n<ng-template #desktopTpl>\r\n <fd-popover #popover fillControlMode=\"equal\">\r\n <fd-popover-control class=\"popup-mode\">\r\n <ng-container *ngTemplateOutlet=\"buttonDropDown\"></ng-container>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ng-container\r\n *ngTemplateOutlet=\"defaultMode; context: { popover: popover, popupMode: true }\"\r\n ></ng-container>\r\n </fd-popover-body>\r\n </fd-popover>\r\n <ng-container *ngTemplateOutlet=\"tokensTpl\"></ng-container>\r\n</ng-template>\r\n<ng-template #buttonDropDown let-menu=\"menu\">\r\n <button\r\n class=\"drop-down\"\r\n fd-button\r\n [label]=\"selectedMo ? (selectedMo.$Caption | bbbTranslate) : (title | bbbTranslate)\"\r\n [fdMenu]=\"true\"\r\n [fdMenuTrigger]=\"menu\"\r\n >\r\n @if (selectedCount > 0 && isCheckList) {\r\n <span fd-object-status [inverted]=\"true\" [label]=\"selectedCount\" [title]=\"selectedCount\"></span>\r\n }\r\n </button>\r\n</ng-template>\r\n<ng-template #tokensTpl>\r\n @if (isCheckList && hasSelected) {\r\n <div style=\"padding: 5px; display: flex; flex-wrap: wrap; row-gap: 5px; column-gap: 5px\">\r\n @for (mo of moDataList; track mo; let index = $index) { @if (mo.$IsChecked) {\r\n <fd-token fdCozy [readOnly]=\"false\" (onCloseClick)=\"onRowCheck({mo, index})\">{{\r\n columns[0].Caption | rval: mo:columns:true\r\n }}</fd-token>\r\n } }\r\n </div>\r\n }\r\n</ng-template>\r\n<ng-template #defaultMode let-popover=\"popover\" let-popupMode=\"popupMode\">\r\n <fd-layout-panel [class.popup-mode]=\"popupMode\" [ngClass]=\"'size-' + deviceSize\">\r\n <fd-layout-panel-header>\r\n <fd-layout-panel-head>\r\n <h4 fd-layout-panel-title>{{ title | bbbTranslate }}</h4>\r\n @if (selectedCount > 0) {\r\n <span fd-object-status [inverted]=\"true\" [label]=\"selectedCount\" [title]=\"selectedCount\"></span>\r\n }\r\n </fd-layout-panel-head>\r\n <fd-layout-panel-actions>\r\n @if (deviceSize !== 's') {\r\n <button\r\n style=\"margin-top: 5px\"\r\n fd-button\r\n glyph=\"decline\"\r\n fdType=\"transparent\"\r\n (click)=\"popover.close()\"\r\n ></button>\r\n }\r\n </fd-layout-panel-actions>\r\n </fd-layout-panel-header>\r\n @if (isCheckList && moDataList.length) {\r\n <fd-layout-panel-filters>\r\n <fd-toolbar fdType=\"transparent\" [clearBorder]=\"true\">\r\n <a class=\"clearCheckAll\" (click)=\"onAllCheckbox($event)\" fd-link [aria-label]=\"'All' | bbbTranslate\">{{\r\n 'All' | bbbTranslate\r\n }}</a>\r\n <label fd-toolbar-label style=\"font-size: 1rem; font-weight: bold\">.</label>\r\n <a\r\n (click)=\"onClearCheckbox()\"\r\n fd-toolbar-item\r\n class=\"clearCheckAll\"\r\n fd-link\r\n [aria-label]=\"'Clear' | bbbTranslate\"\r\n >{{ 'Clear' | bbbTranslate }}</a\r\n >\r\n </fd-toolbar>\r\n </fd-layout-panel-filters>\r\n }\r\n\r\n <fd-layout-panel-body [bleed]=\"true\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n isDisplayType ? displayListTemplate : standardListTemplate;\r\n context: {\r\n $implicit: moDataList,\r\n isCheckList: isCheckList,\r\n groupby: groupby,\r\n conditionalFormats: conditionalFormats,\r\n deviceName: deviceName,\r\n viewSetting: viewSetting,\r\n allColumns: allColumns,\r\n access: access,\r\n rtl: rtl,\r\n popover: popover\r\n }\r\n \"\r\n >\r\n </ng-container>\r\n </fd-layout-panel-body>\r\n </fd-layout-panel>\r\n</ng-template>\r\n\r\n<!--display list-->\r\n<ng-template\r\n #displayListTemplate\r\n let-moDataList\r\n let-isCheckList=\"isCheckList\"\r\n let-groupby=\"groupby\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-deviceName=\"deviceName\"\r\n let-allColumns=\"allColumns\"\r\n let-viewSetting=\"viewSetting\"\r\n let-access=\"access\"\r\n let-rtl=\"rtl\"\r\n>\r\n @if (moDataList && moDataList.length > 0) {\r\n <ul fd-list class=\"display-list fd-list--navigation\" ellipsify>\r\n @for (mo of moDataList | multipleGroupBy: groupby; track mo; let index = $index; let last = $last) { @if\r\n (!mo.parent || mo.parent?.expanded) {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n itemTemplate;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n last: last,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n ></ng-container>\r\n } }\r\n </ul>\r\n } @else {\r\n <bsu-no-data [simple]=\"popupMode\"></bsu-no-data>\r\n }\r\n</ng-template>\r\n<!--standard list-->\r\n<ng-template\r\n #standardListTemplate\r\n let-moDataList\r\n let-isCheckList=\"isCheckList\"\r\n let-groupby=\"groupby\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-allColumns=\"allColumns\"\r\n let-deviceName=\"deviceName\"\r\n let-access=\"access\"\r\n let-viewSetting=\"viewSetting\"\r\n let-rtl=\"rtl\"\r\n let-last=\"last\"\r\n>\r\n @if (moDataList && moDataList.length > 0) {\r\n <ul class=\"fd-list--navigation\" [class.fd-list--byline]=\"!isDisplayType\" fd-list [byline]=\"true\" ellipsify>\r\n @for (mo of moDataList | multipleGroupBy: groupby; track mo; let index = $index) { @if (!mo.parent ||\r\n mo.parent?.expanded) {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n itemTemplate;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n last: last,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n ></ng-container>\r\n } }\r\n </ul>\r\n } @else {\r\n <bsu-no-data [simple]=\"popupMode\"></bsu-no-data>\r\n }\r\n</ng-template>\r\n\r\n<!--noData-->\r\n<ng-template\r\n #itemTemplate\r\n let-mo\r\n let-index=\"index\"\r\n let-last=\"last\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n>\r\n @if (mo.group || mo.group === '') {\r\n <li\r\n fd-list-group-header\r\n [style.padding-right]=\"'calc( 1rem + ' + mo.level * 12 + 'px' + ' )'\"\r\n [attr.level]=\"mo.level\"\r\n [class.root-group]=\"mo.level === 0\"\r\n >\r\n <fd-icon\r\n [glyph]=\"mo.expanded ? 'navigation-down-arrow' : 'navigation-left-arrow'\"\r\n class=\"cell-expand\"\r\n (click)=\"onExpandClick(mo)\"\r\n ></fd-icon>\r\n <span fd-list-title>{{ mo.group }}</span>\r\n </li>\r\n } @else {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n hasRowOlgo ? dynamicItemTemplate : defaultItem;\r\n context: {\r\n $implicit: mo,\r\n index: index,\r\n columns: columns,\r\n moDataList: moDataList,\r\n moDataListCount: moDataList.length\r\n }\r\n \"\r\n ></ng-container>\r\n <ng-template\r\n #defaultItem\r\n let-mo\r\n let-index=\"index\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n >\r\n @if (!hasRowOlgo) {\r\n <bsu-list-item\r\n [isDisplayType]=\"isDisplayType\"\r\n [mo]=\"mo\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [index]=\"index\"\r\n [last]=\"last\"\r\n [setting]=\"listSetting\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [formSetting]=\"formSetting\"\r\n [allColumns]=\"allColumns\"\r\n [contentDensity]=\"contentDensity\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n (rowCheck)=\"onRowCheck($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (ulvCommand)=\"onUlvCommand($event)\"\r\n (editFormPanelSave)=\"onEditFormPanelSave($event)\"\r\n (editFormPanelCancel)=\"onEditFormPanelCancel($event)\"\r\n >\r\n </bsu-list-item>\r\n } @else {\r\n <bnrc-dynamic-item-component\r\n [component]=\"viewSetting.RowOlgo\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [moDataList]=\"moDataList\"\r\n [showDetailsInRow]=\"showDetailsInRow\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [detailsColumns]=\"detailsColumns\"\r\n [columnComponents]=\"viewSetting?.ColumnComponents || null\"\r\n [cartableTemplate]=\"cartableTemplates[mo.RelatedMo?.$TypeDefId]\"\r\n [cartableMo]=\"mo.RelatedMo\"\r\n [cartableWorkflowData]=\"mo.SerializedWorkflowData\"\r\n [serializedRelatedMo]=\"mo.SerializedRelatedMo\"\r\n [detailsText]=\"viewSetting?.DetailsSetting?.ButtonText\"\r\n [detailsComponent]=\"detailsComponent\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [visibility]=\"mo.$Visibility\"\r\n [expanded]=\"mo.$Expanded\"\r\n [level]=\"mo.$Level\"\r\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\r\n [moDataListCount]=\"moDataListCount\"\r\n [columnsCount]=\"columnsCount - detailsColumns.length\"\r\n [typeDefId]=\"typeDefId\"\r\n [extraRelation]=\"extraRelation\"\r\n [formSetting]=\"formSetting\"\r\n [index]=\"index\"\r\n [last]=\"last\"\r\n [setting]=\"viewSetting\"\r\n [secondaryColumns]=\"secondaryColumns | filterColumnsByDetails: detailsColumns:false\"\r\n [columns]=\"columns | filterColumnsByDetails: detailsColumns:false\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [access]=\"access\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [allowInlineEdit]=\"allowInlineEdit\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n [rowIndicator]=\"columns[0].MetaFieldTypeId === '41'\"\r\n (events)=\"onOlgoEvents($event)\"\r\n >\r\n </bnrc-dynamic-item-component>\r\n }\r\n </ng-template>\r\n <ng-template\r\n #dynamicItemTemplate\r\n let-mo\r\n let-index=\"index\"\r\n let-columns=\"columns\"\r\n let-moDataListCount=\"moDataListCount\"\r\n let-moDataList=\"moDataList\"\r\n >\r\n <bnrc-dynamic-item-component\r\n [component]=\"viewSetting.RowOlgo\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [moDataList]=\"moDataList\"\r\n [showDetailsInRow]=\"showDetailsInRow\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [detailsColumns]=\"detailsColumns\"\r\n [columnComponents]=\"viewSetting?.ColumnComponents || null\"\r\n [cartableTemplate]=\"cartableTemplates[mo.RelatedMo?.$TypeDefId]\"\r\n [cartableMo]=\"mo.RelatedMo\"\r\n [cartableWorkflowData]=\"mo.SerializedWorkflowData\"\r\n [serializedRelatedMo]=\"mo.SerializedRelatedMo\"\r\n [detailsText]=\"viewSetting?.DetailsSetting?.ButtonText\"\r\n [detailsComponent]=\"detailsComponent\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [visibility]=\"mo.$Visibility\"\r\n [expanded]=\"mo.$Expanded\"\r\n [level]=\"mo.$Level\"\r\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\r\n [moDataListCount]=\"moDataListCount\"\r\n [columnsCount]=\"columnsCount - detailsColumns.length\"\r\n [typeDefId]=\"typeDefId\"\r\n [extraRelation]=\"extraRelation\"\r\n [formSetting]=\"formSetting\"\r\n [index]=\"index\"\r\n [last]=\"last\"\r\n [setting]=\"viewSetting\"\r\n [secondaryColumns]=\"secondaryColumns | filterColumnsByDetails: detailsColumns:false\"\r\n [columns]=\"columns | filterColumnsByDetails: detailsColumns:false\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [access]=\"access\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [allowInlineEdit]=\"allowInlineEdit\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n [rowIndicator]=\"columns[0].MetaFieldTypeId === '41'\"\r\n (events)=\"onOlgoEvents($event)\"\r\n >\r\n </bnrc-dynamic-item-component>\r\n </ng-template>\r\n }\r\n</ng-template>\r\n", styles: [":host{display:block}.fd-list__group-header{column-gap:10px;align-items:center}.header th{border-left:none!important;border-right:none!important}.clearCheckAll{text-decoration:none!important}.fd-list--navigation-indication .fd-list__item:after{min-width:0!important}li.standard-list-row{padding-top:.2rem;padding-bottom:.2rem;min-height:4rem;justify-content:space-evenly;column-gap:10px}li.standard-list-row:hover:not(.selected){background-color:var(--sapBackgroundColor, #f7f7f7)}li.standard-list-row .fd-list__content{row-gap:.4rem}li.standard-list-row .fd-list__content .fd-list__byline{padding:0;font-size:.775rem}li.standard-list-row ::ng-deep .fd-form-item{position:static}li.standard-list-row ::ng-deep .fd-form-item .fd-checkbox__label--compact{padding:0;margin-left:0}li.standard-list-row ::ng-deep fd-icon{font-size:.75rem!important}fd-layout-panel{height:100%}.li-link.checklink[rtl=true]{padding-right:0!important}.li-link.checklist[rtl=false]{padding-left:0!important}.standard-list-group-label{padding-top:10px;padding-bottom:3px}fd-layout-panel-header{display:none}fd-layout-panel.popup-mode.size-s{box-shadow:none!important}fd-layout-panel.popup-mode.size-s fd-layout-panel-header{display:none!important}.popup-mode fd-layout-panel-header{display:flex;min-height:1rem;height:1rem;border:none!important}.popup-mode fd-layout-panel-header h4{font-weight:700;font-size:1rem}.popup-mode fd-layout-panel-head{display:flex;column-gap:5px;align-items:center;justify-content:center}.popup-mode ::ng-deep li{border:none!important}.popup-mode fd-layout-panel-body{margin-top:.3rem}.popup-mode fd-layout-panel-filters{border:none!important;padding:0 1rem}.popup-mode .drop-down{width:100%;max-width:100%;max-height:2rem!important;height:2rem!important;background:var(--sapButton_Background)!important;border:1px solid #ccc!important}.popup-mode .drop-down ::ng-deep span{font-size:1rem!important;line-height:1.2rem!important}.popup-mode .drop-down ::ng-deep fd-icon{position:absolute;left:10px}fd-popover{width:100%;max-width:100%}\n"] }]
74
+ }], propDecorators: { popupModeTemplateRef: [{
75
+ type: ViewChild,
76
+ args: ['popupModeTemplate', { static: true, read: TemplateRef }]
77
+ }], defaultModeTemplateRef: [{
78
+ type: ViewChild,
79
+ args: ['defaultMode', { static: true, read: TemplateRef }]
80
+ }], _menu: [{
81
+ type: ViewChild,
82
+ args: ['menu']
83
+ }] } });
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbGlzdC12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL3VpLWxpc3Qtdmlldy91aS1saXN0LXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktbGlzdC12aWV3L3VpLWxpc3Qtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFVLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkcsT0FBTyxFQUdILHVCQUF1QixFQUV2QixxQkFBcUIsRUFDeEIsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFXOUIsTUFBTSxPQUFPLG1CQUFvQixTQUFRLHVCQUEwQztJQVBuRjs7UUFjSSxtQkFBYyxHQUF1QixFQUFFLENBQUM7UUFJeEMsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIscUJBQWdCLEdBQW1FLEVBQUUsQ0FBQztRQUV0RixjQUFTLEdBQUcsS0FBSyxDQUFDO0tBZ0RyQjtJQS9DRyxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxHQUFHLENBQUM7UUFDeEYsSUFBSSxDQUFDLDJCQUEyQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFFM0csSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixLQUFLLFNBQVMsQ0FB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QUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkluaXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWVudUNvbXBvbmVudCwgU2l6ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgICBFanJheU9sZ28sXHJcbiAgICBNZXRhb2JqZWN0RGF0YU1vZGVsLFxyXG4gICAgUmVwb3J0Vmlld0Jhc2VDb21wb25lbnQsXHJcbiAgICBSZXBvcnRWaWV3Q29sdW1uLFxyXG4gICAgZW51bVZhbHVlVG9TdHJpbmdTaXplXHJcbn0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5cclxuaW1wb3J0IHsgVWlMaXN0Vmlld1NldHRpbmcgfSBmcm9tICcuLi9tb2RlbHMvZ3JpZC12aWV3JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdic3UtdWktbGlzdC12aWV3JyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi91aS1saXN0LXZpZXcuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vdWktbGlzdC12aWV3LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaUxpc3RWaWV3Q29tcG9uZW50IGV4dGVuZHMgUmVwb3J0Vmlld0Jhc2VDb21wb25lbnQ8VWlMaXN0Vmlld1NldHRpbmc+IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBWaWV3Q2hpbGQoJ3BvcHVwTW9kZVRlbXBsYXRlJywgeyBzdGF0aWM6IHRydWUsIHJlYWQ6IFRlbXBsYXRlUmVmIH0pIHBvcHVwTW9kZVRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gICAgQFZpZXdDaGlsZCgnZGVmYXVsdE1vZGUnLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogVGVtcGxhdGVSZWYgfSkgZGVmYXVsdE1vZGVUZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcclxuICAgIEBWaWV3Q2hpbGQoJ21lbnUnKSBfbWVudTogTWVudUNvbXBvbmVudDtcclxuICAgIGxpc3RTZXR0aW5nOiBVaUxpc3RWaWV3U2V0dGluZztcclxuICAgIGF2YXRhclNpemU6IFNpemU7XHJcbiAgICBpc0Rpc3BsYXlUeXBlOiBib29sZWFuO1xyXG4gICAgZGV0YWlsc0NvbHVtbnM6IFJlcG9ydFZpZXdDb2x1bW5bXSA9IFtdO1xyXG4gICAgZGV0YWlsc0NvbXBvbmVudDogRWpyYXlPbGdvO1xyXG4gICAgc2hvd0RldGFpbHNJblJvdzogYm9vbGVhbjtcclxuICAgIGhhc1Jvd09sZ286IGJvb2xlYW47XHJcbiAgICBwb3BvdmVyT3BlbiA9IGZhbHNlO1xyXG4gICAgY29sdW1uQ29tcG9uZW50czogeyBjb2x1bW46IFJlcG9ydFZpZXdDb2x1bW47IGNvbXBvbmVudDogTWV0YW9iamVjdERhdGFNb2RlbCB9W10gPSBbXTtcclxuICAgIHNlbGVjdGVkUHJlc2VudGFpb25UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICAgIHBvcHVwTW9kZSA9IGZhbHNlO1xyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICB0aGlzLnBvcHVwTW9kZSA9IHRoaXMudmlld1NldHRpbmcuTWVudUluU21hbGxEZXZpY2UgPT09IHRydWUgJiYgdGhpcy5kZXZpY2VTaXplID09PSAncyc7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFByZXNlbnRhaW9uVGVtcGxhdGUgPSB0aGlzLnBvcHVwTW9kZSA/IHRoaXMucG9wdXBNb2RlVGVtcGxhdGVSZWYgOiB0aGlzLl9nZXRQcmVzZW50YWlvbk1vZGUoKTtcclxuXHJcbiAgICAgICAgdGhpcy5pc0Rpc3BsYXlUeXBlID0gdGhpcy52aWV3U2V0dGluZy5JdGVtVHlwZSRDYXB0aW9uID09PSAnRGlzcGxheSc7XHJcbiAgICAgICAgY29uc3Qgdmlld1NldHRpbmcgPSB0aGlzLnZpZXdTZXR0aW5nO1xyXG4gICAgICAgIHRoaXMuaGFzUm93T2xnbyA9IHRoaXMudmlld1NldHRpbmc/LlJvd09sZ28/LlNlbGVjdG9yO1xyXG4gICAgICAgIGNvbnN0IGZpbmRDb2x1bW4gPSB0aGlzLl9maW5kQ29sdW1uQnlEYk5hbWU7XHJcbiAgICAgICAgdGhpcy5hdmF0YXJTaXplID0gZW51bVZhbHVlVG9TdHJpbmdTaXplKFxyXG4gICAgICAgICAgICB2aWV3U2V0dGluZy5BdmF0YXJTaXplLFxyXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnREZW5zaXR5ID09PSAnY29tcGFjdCcgPyAncycgOiAnbSdcclxuICAgICAgICApIGFzIFNpemU7XHJcblxyXG4gICAgICAgIHRoaXMubGlzdFNldHRpbmcgPSB7XHJcbiAgICAgICAgICAgIC4uLnZpZXdTZXR0aW5nLFxyXG4gICAgICAgICAgICBUaXRsZUZpZWxkOiBmaW5kQ29sdW1uLnRyYW5zZm9ybSh0aGlzLmFsbENvbHVtbnMsIHZpZXdTZXR0aW5nLlRpdGxlKSxcclxuICAgICAgICAgICAgU3VidGl0bGVGaWVsZDogZmluZENvbHVtbi50cmFuc2Zvcm0odGhpcy5hbGxDb2x1bW5zLCB2aWV3U2V0dGluZy5TdWJ0aXRsZSkgPz8gJycsXHJcbiAgICAgICAgICAgIENvdW50ZXJGaWVsZDogZmluZENvbHVtbi50cmFuc2Zvcm0odGhpcy5hbGxDb2x1bW5zLCB2aWV3U2V0dGluZy5Db3VudGVyKSA/PyAnJyxcclxuICAgICAgICAgICAgQXZhdGFyRmllbGQ6IGZpbmRDb2x1bW4udHJhbnNmb3JtKHRoaXMuYWxsQ29sdW1ucywgdmlld1NldHRpbmcuQXZhdGFyKSxcclxuICAgICAgICAgICAgSWNvbkZvbnQ6IHZpZXdTZXR0aW5nLkljb25Gb250IHx8IG51bGwsXHJcbiAgICAgICAgICAgIFN0YXR1c0ZpZWxkOiBmaW5kQ29sdW1uLnRyYW5zZm9ybSh0aGlzLmFsbENvbHVtbnMsIHZpZXdTZXR0aW5nLlN0YXR1cyksXHJcbiAgICAgICAgICAgIERlc2NyaXB0aW9uRmllbGQ6IGZpbmRDb2x1bW4udHJhbnNmb3JtKHRoaXMuYWxsQ29sdW1ucywgdmlld1NldHRpbmcuRGVzY3JpcHRpb24pXHJcbiAgICAgICAgfTtcclxuICAgIH1cclxuICAgIG9uT2xnb0V2ZW50cyhlOiB7IHRpdGxlOiBzdHJpbmc7IGRhdGE/OiBhbnkgfSk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLl9tZW51KSB7XHJcbiAgICAgICAgICAgIHRoaXMuX21lbnUuY2xvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgc3VwZXIub25PbGdvRXZlbnRzKGUpO1xyXG4gICAgfVxyXG4gICAgb25MaXN0Q2hlY2tib3hDbGljayhtbywgaW5kZXgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnJvd0NoZWNrLmVtaXQoeyBtbywgaW5kZXggfSk7XHJcbiAgICB9XHJcblxyXG4gICAgb25MaXN0TmF2aWdhdGlvbkNsaWNrKG1vLCBpbmRleCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMucm93Q2xpY2suZW1pdCh7IG1vLCBpbmRleCB9KTtcclxuICAgIH1cclxuICAgIF9nZXRQcmVzZW50YWlvbk1vZGUoKTogVGVtcGxhdGVSZWY8YW55PiB7XHJcbiAgICAgICAgc3dpdGNoICh0aGlzLnZpZXdTZXR0aW5nLlByZXNlbnRhaW9uTW9kZSkge1xyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVmYXVsdE1vZGVUZW1wbGF0ZVJlZjtcclxuICAgICAgICAgICAgY2FzZSAnMic6XHJcbiAgICAgICAgICAgICAgICB0aGlzLnBvcHVwTW9kZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wb3B1cE1vZGVUZW1wbGF0ZVJlZjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNlbGVjdGVkUHJlc2VudGFpb25UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG5cclxuPG5nLXRlbXBsYXRlICNwb3B1cE1vZGVUZW1wbGF0ZT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZXZpY2VTaXplID09PSAncycgPyBtb2JpbGVUcGwgOiBkZXNrdG9wVHBsXCI+PC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSA8ZmQtbWVudSBbYXBwZW5kVG9dPVwiX2VsXCJcclxuICAjbWVudSBbbW9iaWxlXT1cImRldmljZVNpemUgPT09ICdzJ1wiID5cclxuPC9mZC1tZW51PiAtLT5cclxuPC9uZy10ZW1wbGF0ZT5cclxuPG5nLXRlbXBsYXRlICNtb2JpbGVUcGw+XHJcbiAgICA8ZGl2IGNsYXNzPVwicG9wdXAtbW9kZVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJidXR0b25Ecm9wRG93bjsgY29udGV4dDogeyBtZW51OiBtZW51IH1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRva2Vuc1RwbFwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPGZkLW1lbnUgI21lbnUgW21vYmlsZV09XCJ0cnVlXCIgW21vYmlsZUNvbmZpZ109XCJ7IHRpdGxlOiB0aXRsZSB8IGJiYlRyYW5zbGF0ZSwgaGFzQ2xvc2VCdXR0b246IHRydWUgfVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZWZhdWx0TW9kZTsgY29udGV4dDogeyBwb3BvdmVyOiBtZW51LCBwb3B1cE1vZGU6IHRydWUgfVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9mZC1tZW51PlxyXG48L25nLXRlbXBsYXRlPlxyXG48bmctdGVtcGxhdGUgI2Rlc2t0b3BUcGw+XHJcbiAgICA8ZmQtcG9wb3ZlciAjcG9wb3ZlciBmaWxsQ29udHJvbE1vZGU9XCJlcXVhbFwiPlxyXG4gICAgICAgIDxmZC1wb3BvdmVyLWNvbnRyb2wgY2xhc3M9XCJwb3B1cC1tb2RlXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJidXR0b25Ecm9wRG93blwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZmQtcG9wb3Zlci1jb250cm9sPlxyXG4gICAgICAgIDxmZC1wb3BvdmVyLWJvZHk+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGVmYXVsdE1vZGU7IGNvbnRleHQ6IHsgcG9wb3ZlcjogcG9wb3ZlciwgcG9wdXBNb2RlOiB0cnVlIH1cIlxyXG4gICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9mZC1wb3BvdmVyLWJvZHk+XHJcbiAgICA8L2ZkLXBvcG92ZXI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidG9rZW5zVHBsXCI+PC9uZy1jb250YWluZXI+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjYnV0dG9uRHJvcERvd24gbGV0LW1lbnU9XCJtZW51XCI+XHJcbiAgICA8YnV0dG9uXHJcbiAgICAgICAgY2xhc3M9XCJkcm9wLWRvd25cIlxyXG4gICAgICAgIGZkLWJ1dHRvblxyXG4gICAgICAgIFtsYWJlbF09XCJzZWxlY3RlZE1vID8gKHNlbGVjdGVkTW8uJENhcHRpb24gfCBiYmJUcmFuc2xhdGUpIDogKHRpdGxlIHwgYmJiVHJhbnNsYXRlKVwiXHJcbiAgICAgICAgW2ZkTWVudV09XCJ0cnVlXCJcclxuICAgICAgICBbZmRNZW51VHJpZ2dlcl09XCJtZW51XCJcclxuICAgID5cclxuICAgICAgICBAaWYgKHNlbGVjdGVkQ291bnQgPiAwICYmIGlzQ2hlY2tMaXN0KSB7XHJcbiAgICAgICAgPHNwYW4gZmQtb2JqZWN0LXN0YXR1cyBbaW52ZXJ0ZWRdPVwidHJ1ZVwiIFtsYWJlbF09XCJzZWxlY3RlZENvdW50XCIgW3RpdGxlXT1cInNlbGVjdGVkQ291bnRcIj48L3NwYW4+XHJcbiAgICAgICAgfVxyXG4gICAgPC9idXR0b24+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjdG9rZW5zVHBsPlxyXG4gICAgQGlmIChpc0NoZWNrTGlzdCAmJiBoYXNTZWxlY3RlZCkge1xyXG4gICAgPGRpdiBzdHlsZT1cInBhZGRpbmc6IDVweDsgZGlzcGxheTogZmxleDsgZmxleC13cmFwOiB3cmFwOyByb3ctZ2FwOiA1cHg7IGNvbHVtbi1nYXA6IDVweFwiPlxyXG4gICAgICAgIEBmb3IgKG1vIG9mIG1vRGF0YUxpc3Q7IHRyYWNrIG1vOyBsZXQgaW5kZXggPSAkaW5kZXgpIHsgQGlmIChtby4kSXNDaGVja2VkKSB7XHJcbiAgICAgICAgPGZkLXRva2VuIGZkQ296eSBbcmVhZE9ubHldPVwiZmFsc2VcIiAob25DbG9zZUNsaWNrKT1cIm9uUm93Q2hlY2soe21vLCBpbmRleH0pXCI+e3tcclxuICAgICAgICAgICAgY29sdW1uc1swXS5DYXB0aW9uIHwgcnZhbDogbW86Y29sdW1uczp0cnVlXHJcbiAgICAgICAgfX08L2ZkLXRva2VuPlxyXG4gICAgICAgIH0gfVxyXG4gICAgPC9kaXY+XHJcbiAgICB9XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdE1vZGUgbGV0LXBvcG92ZXI9XCJwb3BvdmVyXCIgbGV0LXBvcHVwTW9kZT1cInBvcHVwTW9kZVwiPlxyXG4gICAgPGZkLWxheW91dC1wYW5lbCBbY2xhc3MucG9wdXAtbW9kZV09XCJwb3B1cE1vZGVcIiBbbmdDbGFzc109XCInc2l6ZS0nICsgZGV2aWNlU2l6ZVwiPlxyXG4gICAgICAgIDxmZC1sYXlvdXQtcGFuZWwtaGVhZGVyPlxyXG4gICAgICAgICAgICA8ZmQtbGF5b3V0LXBhbmVsLWhlYWQ+XHJcbiAgICAgICAgICAgICAgICA8aDQgZmQtbGF5b3V0LXBhbmVsLXRpdGxlPnt7IHRpdGxlIHwgYmJiVHJhbnNsYXRlIH19PC9oND5cclxuICAgICAgICAgICAgICAgIEBpZiAoc2VsZWN0ZWRDb3VudCA+IDApIHtcclxuICAgICAgICAgICAgICAgIDxzcGFuIGZkLW9iamVjdC1zdGF0dXMgW2ludmVydGVkXT1cInRydWVcIiBbbGFiZWxdPVwic2VsZWN0ZWRDb3VudFwiIFt0aXRsZV09XCJzZWxlY3RlZENvdW50XCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA8L2ZkLWxheW91dC1wYW5lbC1oZWFkPlxyXG4gICAgICAgICAgICA8ZmQtbGF5b3V0LXBhbmVsLWFjdGlvbnM+XHJcbiAgICAgICAgICAgICAgICBAaWYgKGRldmljZVNpemUgIT09ICdzJykge1xyXG4gICAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPVwibWFyZ2luLXRvcDogNXB4XCJcclxuICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICBnbHlwaD1cImRlY2xpbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwicG9wb3Zlci5jbG9zZSgpXCJcclxuICAgICAgICAgICAgICAgID48L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPC9mZC1sYXlvdXQtcGFuZWwtYWN0aW9ucz5cclxuICAgICAgICA8L2ZkLWxheW91dC1wYW5lbC1oZWFkZXI+XHJcbiAgICAgICAgQGlmIChpc0NoZWNrTGlzdCAmJiBtb0RhdGFMaXN0Lmxlbmd0aCkge1xyXG4gICAgICAgIDxmZC1sYXlvdXQtcGFuZWwtZmlsdGVycz5cclxuICAgICAgICAgICAgPGZkLXRvb2xiYXIgZmRUeXBlPVwidHJhbnNwYXJlbnRcIiBbY2xlYXJCb3JkZXJdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJjbGVhckNoZWNrQWxsXCIgKGNsaWNrKT1cIm9uQWxsQ2hlY2tib3goJGV2ZW50KVwiIGZkLWxpbmsgW2FyaWEtbGFiZWxdPVwiJ0FsbCcgfCBiYmJUcmFuc2xhdGVcIj57e1xyXG4gICAgICAgICAgICAgICAgICAgICdBbGwnIHwgYmJiVHJhbnNsYXRlXHJcbiAgICAgICAgICAgICAgICB9fTwvYT5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBmZC10b29sYmFyLWxhYmVsIHN0eWxlPVwiZm9udC1zaXplOiAxcmVtOyBmb250LXdlaWdodDogYm9sZFwiPi48L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbGVhckNoZWNrYm94KClcIlxyXG4gICAgICAgICAgICAgICAgICAgIGZkLXRvb2xiYXItaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2xlYXJDaGVja0FsbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgZmQtbGlua1xyXG4gICAgICAgICAgICAgICAgICAgIFthcmlhLWxhYmVsXT1cIidDbGVhcicgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgID57eyAnQ2xlYXInIHwgYmJiVHJhbnNsYXRlIH19PC9hXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDwvZmQtdG9vbGJhcj5cclxuICAgICAgICA8L2ZkLWxheW91dC1wYW5lbC1maWx0ZXJzPlxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPGZkLWxheW91dC1wYW5lbC1ib2R5IFtibGVlZF09XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXHJcbiAgICAgICAgICAgICAgICAgICAgaXNEaXNwbGF5VHlwZSA/IGRpc3BsYXlMaXN0VGVtcGxhdGUgOiBzdGFuZGFyZExpc3RUZW1wbGF0ZTtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICRpbXBsaWNpdDogbW9EYXRhTGlzdCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXNDaGVja0xpc3Q6IGlzQ2hlY2tMaXN0LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBncm91cGJ5OiBncm91cGJ5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25kaXRpb25hbEZvcm1hdHM6IGNvbmRpdGlvbmFsRm9ybWF0cyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGV2aWNlTmFtZTogZGV2aWNlTmFtZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmlld1NldHRpbmc6IHZpZXdTZXR0aW5nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBhbGxDb2x1bW5zOiBhbGxDb2x1bW5zLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBhY2Nlc3M6IGFjY2VzcyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnRsOiBydGwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvcG92ZXI6IHBvcG92ZXJcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZmQtbGF5b3V0LXBhbmVsLWJvZHk+XHJcbiAgICA8L2ZkLWxheW91dC1wYW5lbD5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjwhLS1kaXNwbGF5IGxpc3QtLT5cclxuPG5nLXRlbXBsYXRlXHJcbiAgICAjZGlzcGxheUxpc3RUZW1wbGF0ZVxyXG4gICAgbGV0LW1vRGF0YUxpc3RcclxuICAgIGxldC1pc0NoZWNrTGlzdD1cImlzQ2hlY2tMaXN0XCJcclxuICAgIGxldC1ncm91cGJ5PVwiZ3JvdXBieVwiXHJcbiAgICBsZXQtY29uZGl0aW9uYWxGb3JtYXRzPVwiY29uZGl0aW9uYWxGb3JtYXRzXCJcclxuICAgIGxldC1kZXZpY2VOYW1lPVwiZGV2aWNlTmFtZVwiXHJcbiAgICBsZXQtYWxsQ29sdW1ucz1cImFsbENvbHVtbnNcIlxyXG4gICAgbGV0LXZpZXdTZXR0aW5nPVwidmlld1NldHRpbmdcIlxyXG4gICAgbGV0LWFjY2Vzcz1cImFjY2Vzc1wiXHJcbiAgICBsZXQtcnRsPVwicnRsXCJcclxuPlxyXG4gICAgQGlmIChtb0RhdGFMaXN0ICYmIG1vRGF0YUxpc3QubGVuZ3RoID4gMCkge1xyXG4gICAgPHVsIGZkLWxpc3QgY2xhc3M9XCJkaXNwbGF5LWxpc3QgZmQtbGlzdC0tbmF2aWdhdGlvblwiIGVsbGlwc2lmeT5cclxuICAgICAgICBAZm9yIChtbyBvZiBtb0RhdGFMaXN0IHwgbXVsdGlwbGVHcm91cEJ5OiBncm91cGJ5OyB0cmFjayBtbzsgbGV0IGluZGV4ID0gJGluZGV4OyBsZXQgbGFzdCA9ICRsYXN0KSB7IEBpZlxyXG4gICAgICAgICghbW8ucGFyZW50IHx8IG1vLnBhcmVudD8uZXhwYW5kZWQpIHtcclxuICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXHJcbiAgICAgICAgICAgICAgICBpdGVtVGVtcGxhdGU7XHJcbiAgICAgICAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiBtbyxcclxuICAgICAgICAgICAgICAgICAgICBpbmRleDogaW5kZXgsXHJcbiAgICAgICAgICAgICAgICAgICAgbGFzdDogbGFzdCxcclxuICAgICAgICAgICAgICAgICAgICBjb2x1bW5zOiBjb2x1bW5zLFxyXG4gICAgICAgICAgICAgICAgICAgIG1vRGF0YUxpc3Q6IG1vRGF0YUxpc3QsXHJcbiAgICAgICAgICAgICAgICAgICAgbW9EYXRhTGlzdENvdW50OiBtb0RhdGFMaXN0Lmxlbmd0aFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcIlxyXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICB9IH1cclxuICAgIDwvdWw+XHJcbiAgICB9IEBlbHNlIHtcclxuICAgIDxic3Utbm8tZGF0YSBbc2ltcGxlXT1cInBvcHVwTW9kZVwiPjwvYnN1LW5vLWRhdGE+XHJcbiAgICB9XHJcbjwvbmctdGVtcGxhdGU+XHJcbjwhLS1zdGFuZGFyZCBsaXN0LS0+XHJcbjxuZy10ZW1wbGF0ZVxyXG4gICAgI3N0YW5kYXJkTGlzdFRlbXBsYXRlXHJcbiAgICBsZXQtbW9EYXRhTGlzdFxyXG4gICAgbGV0LWlzQ2hlY2tMaXN0PVwiaXNDaGVja0xpc3RcIlxyXG4gICAgbGV0LWdyb3VwYnk9XCJncm91cGJ5XCJcclxuICAgIGxldC1jb25kaXRpb25hbEZvcm1hdHM9XCJjb25kaXRpb25hbEZvcm1hdHNcIlxyXG4gICAgbGV0LWFsbENvbHVtbnM9XCJhbGxDb2x1bW5zXCJcclxuICAgIGxldC1kZXZpY2VOYW1lPVwiZGV2aWNlTmFtZVwiXHJcbiAgICBsZXQtYWNjZXNzPVwiYWNjZXNzXCJcclxuICAgIGxldC12aWV3U2V0dGluZz1cInZpZXdTZXR0aW5nXCJcclxuICAgIGxldC1ydGw9XCJydGxcIlxyXG4gICAgbGV0LWxhc3Q9XCJsYXN0XCJcclxuPlxyXG4gICAgQGlmIChtb0RhdGFMaXN0ICYmIG1vRGF0YUxpc3QubGVuZ3RoID4gMCkge1xyXG4gICAgPHVsIGNsYXNzPVwiZmQtbGlzdC0tbmF2aWdhdGlvblwiIFtjbGFzcy5mZC1saXN0LS1ieWxpbmVdPVwiIWlzRGlzcGxheVR5cGVcIiBmZC1saXN0IFtieWxpbmVdPVwidHJ1ZVwiIGVsbGlwc2lmeT5cclxuICAgICAgICBAZm9yIChtbyBvZiBtb0RhdGFMaXN0IHwgbXVsdGlwbGVHcm91cEJ5OiBncm91cGJ5OyB0cmFjayBtbzsgbGV0IGluZGV4ID0gJGluZGV4KSB7IEBpZiAoIW1vLnBhcmVudCB8fFxyXG4gICAgICAgIG1vLnBhcmVudD8uZXhwYW5kZWQpIHtcclxuICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXHJcbiAgICAgICAgICAgICAgICBpdGVtVGVtcGxhdGU7XHJcbiAgICAgICAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiBtbyxcclxuICAgICAgICAgICAgICAgICAgICBpbmRleDogaW5kZXgsXHJcbiAgICAgICAgICAgICAgICAgICAgbGFzdDogbGFzdCxcclxuICAgICAgICAgICAgICAgICAgICBjb2x1bW5zOiBjb2x1bW5zLFxyXG4gICAgICAgICAgICAgICAgICAgIG1vRGF0YUxpc3Q6IG1vRGF0YUxpc3QsXHJcbiAgICAgICAgICAgICAgICAgICAgbW9EYXRhTGlzdENvdW50OiBtb0RhdGFMaXN0Lmxlbmd0aFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcIlxyXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICB9IH1cclxuICAgIDwvdWw+XHJcbiAgICB9IEBlbHNlIHtcclxuICAgIDxic3Utbm8tZGF0YSBbc2ltcGxlXT1cInBvcHVwTW9kZVwiPjwvYnN1LW5vLWRhdGE+XHJcbiAgICB9XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48IS0tbm9EYXRhLS0+XHJcbjxuZy10ZW1wbGF0ZVxyXG4gICAgI2l0ZW1UZW1wbGF0ZVxyXG4gICAgbGV0LW1vXHJcbiAgICBsZXQtaW5kZXg9XCJpbmRleFwiXHJcbiAgICBsZXQtbGFzdD1cImxhc3RcIlxyXG4gICAgbGV0LWNvbHVtbnM9XCJjb2x1bW5zXCJcclxuICAgIGxldC1tb0RhdGFMaXN0Q291bnQ9XCJtb0RhdGFMaXN0Q291bnRcIlxyXG4gICAgbGV0LW1vRGF0YUxpc3Q9XCJtb0RhdGFMaXN0XCJcclxuPlxyXG4gICAgQGlmIChtby5ncm91cCB8fCBtby5ncm91cCA9PT0gJycpIHtcclxuICAgIDxsaVxyXG4gICAgICAgIGZkLWxpc3QtZ3JvdXAtaGVhZGVyXHJcbiAgICAgICAgW3N0eWxlLnBhZGRpbmctcmlnaHRdPVwiJ2NhbGMoIDFyZW0gKyAnICsgbW8ubGV2ZWwgKiAxMiArICdweCcgKyAnICknXCJcclxuICAgICAgICBbYXR0ci5sZXZlbF09XCJtby5sZXZlbFwiXHJcbiAgICAgICAgW2NsYXNzLnJvb3QtZ3JvdXBdPVwibW8ubGV2ZWwgPT09IDBcIlxyXG4gICAgPlxyXG4gICAgICAgIDxmZC1pY29uXHJcbiAgICAgICAgICAgIFtnbHlwaF09XCJtby5leHBhbmRlZCA/ICduYXZpZ2F0aW9uLWRvd24tYXJyb3cnIDogJ25hdmlnYXRpb24tbGVmdC1hcnJvdydcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImNlbGwtZXhwYW5kXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uRXhwYW5kQ2xpY2sobW8pXCJcclxuICAgICAgICA+PC9mZC1pY29uPlxyXG4gICAgICAgIDxzcGFuIGZkLWxpc3QtdGl0bGU+e3sgbW8uZ3JvdXAgfX08L3NwYW4+XHJcbiAgICA8L2xpPlxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcclxuICAgICAgICAgICAgaGFzUm93T2xnbyA/IGR5bmFtaWNJdGVtVGVtcGxhdGUgOiBkZWZhdWx0SXRlbTtcclxuICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgJGltcGxpY2l0OiBtbyxcclxuICAgICAgICAgICAgICAgIGluZGV4OiBpbmRleCxcclxuICAgICAgICAgICAgICAgIGNvbHVtbnM6IGNvbHVtbnMsXHJcbiAgICAgICAgICAgICAgICBtb0RhdGFMaXN0OiBtb0RhdGFMaXN0LFxyXG4gICAgICAgICAgICAgICAgbW9EYXRhTGlzdENvdW50OiBtb0RhdGFMaXN0Lmxlbmd0aFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgXCJcclxuICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICAgICNkZWZhdWx0SXRlbVxyXG4gICAgICAgIGxldC1tb1xyXG4gICAgICAgIGxldC1pbmRleD1cImluZGV4XCJcclxuICAgICAgICBsZXQtY29sdW1ucz1cImNvbHVtbnNcIlxyXG4gICAgICAgIGxldC1tb0RhdGFMaXN0Q291bnQ9XCJtb0RhdGFMaXN0Q291bnRcIlxyXG4gICAgICAgIGxldC1tb0RhdGFMaXN0PVwibW9EYXRhTGlzdFwiXHJcbiAgICA+XHJcbiAgICAgICAgQGlmICghaGFzUm93T2xnbykge1xyXG4gICAgICAgIDxic3UtbGlzdC1pdGVtXHJcbiAgICAgICAgICAgIFtpc0Rpc3BsYXlUeXBlXT1cImlzRGlzcGxheVR5cGVcIlxyXG4gICAgICAgICAgICBbbW9dPVwibW9cIlxyXG4gICAgICAgICAgICBbaXNDaGVja2VkXT1cIm1vLiRJc0NoZWNrZWRcIlxyXG4gICAgICAgICAgICBbc3R5bGVJbmRleF09XCJtby4kU3R5bGVJbmRleFwiXHJcbiAgICAgICAgICAgIFtpc05ld0lubGluZU1vXT1cIm1vLiROZXdJbmxpbmVNb1wiXHJcbiAgICAgICAgICAgIFtpbmRleF09XCJpbmRleFwiXHJcbiAgICAgICAgICAgIFtsYXN0XT1cImxhc3RcIlxyXG4gICAgICAgICAgICBbc2V0dGluZ109XCJsaXN0U2V0dGluZ1wiXHJcbiAgICAgICAgICAgIFtlZGl0TW9kZV09XCJpbmxpbmVFZGl0TW9kZVwiXHJcbiAgICAgICAgICAgIFtydGxdPVwicnRsXCJcclxuICAgICAgICAgICAgW2hpZGVPcGVuSWNvbl09XCJoaWRlT3Blbkljb25cIlxyXG4gICAgICAgICAgICBbZGV2aWNlTmFtZV09XCJkZXZpY2VOYW1lXCJcclxuICAgICAgICAgICAgW2RldmljZVNpemVdPVwiZGV2aWNlU2l6ZVwiXHJcbiAgICAgICAgICAgIFtpbmRleF09XCJpbmRleFwiXHJcbiAgICAgICAgICAgIFtmb3JtU2V0dGluZ109XCJmb3JtU2V0dGluZ1wiXHJcbiAgICAgICAgICAgIFthbGxDb2x1bW5zXT1cImFsbENvbHVtbnNcIlxyXG4gICAgICAgICAgICBbY29udGVudERlbnNpdHldPVwiY29udGVudERlbnNpdHlcIlxyXG4gICAgICAgICAgICBbY29udGV4dE1lbnVJdGVtc109XCJjb250ZXh0TWVudUl0ZW1zXCJcclxuICAgICAgICAgICAgW2NhblZpZXddPVwiY2FuVmlld1wiXHJcbiAgICAgICAgICAgIFtjb25kaXRpb25hbEZvcm1hdHNdPVwiY29uZGl0aW9uYWxGb3JtYXRzXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XT1cImRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XCJcclxuICAgICAgICAgICAgW25hdmlnYXRpb25BcnJvd109XCJuYXZpZ2F0aW9uQXJyb3dcIlxyXG4gICAgICAgICAgICBbaXNDaGVja0xpc3RdPVwiaXNDaGVja0xpc3RcIlxyXG4gICAgICAgICAgICAocm93Q2hlY2spPVwib25Sb3dDaGVjaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgKHJvd0NsaWNrKT1cIm9uUm93Q2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICh1bHZDb21tYW5kKT1cIm9uVWx2Q29tbWFuZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgKGVkaXRGb3JtUGFuZWxTYXZlKT1cIm9uRWRpdEZvcm1QYW5lbFNhdmUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIChlZGl0Rm9ybVBhbmVsQ2FuY2VsKT1cIm9uRWRpdEZvcm1QYW5lbENhbmNlbCgkZXZlbnQpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9ic3UtbGlzdC1pdGVtPlxyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIDxibnJjLWR5bmFtaWMtaXRlbS1jb21wb25lbnRcclxuICAgICAgICAgICAgW2NvbXBvbmVudF09XCJ2aWV3U2V0dGluZy5Sb3dPbGdvXCJcclxuICAgICAgICAgICAgW21vXT1cIm1vXCJcclxuICAgICAgICAgICAgW3N0eWxlSW5kZXhdPVwibW8uJFN0eWxlSW5kZXhcIlxyXG4gICAgICAgICAgICBbbW9EYXRhTGlzdF09XCJtb0RhdGFMaXN0XCJcclxuICAgICAgICAgICAgW3Nob3dEZXRhaWxzSW5Sb3ddPVwic2hvd0RldGFpbHNJblJvd1wiXHJcbiAgICAgICAgICAgIFtoaWRlT3Blbkljb25dPVwiaGlkZU9wZW5JY29uXCJcclxuICAgICAgICAgICAgW2RldGFpbHNDb2x1bW5zXT1cImRldGFpbHNDb2x1bW5zXCJcclxuICAgICAgICAgICAgW2NvbHVtbkNvbXBvbmVudHNdPVwidmlld1NldHRpbmc/LkNvbHVtbkNvbXBvbmVudHMgfHwgbnVsbFwiXHJcbiAgICAgICAgICAgIFtjYXJ0YWJsZVRlbXBsYXRlXT1cImNhcnRhYmxlVGVtcGxhdGVzW21vLlJlbGF0ZWRNbz8uJFR5cGVEZWZJZF1cIlxyXG4gICAgICAgICAgICBbY2FydGFibGVNb109XCJtby5SZWxhdGVkTW9cIlxyXG4gICAgICAgICAgICBbY2FydGFibGVXb3JrZmxvd0RhdGFdPVwibW8uU2VyaWFsaXplZFdvcmtmbG93RGF0YVwiXHJcbiAgICAgICAgICAgIFtzZXJpYWxpemVkUmVsYXRlZE1vXT1cIm1vLlNlcmlhbGl6ZWRSZWxhdGVkTW9cIlxyXG4gICAgICAgICAgICBbZGV0YWlsc1RleHRdPVwidmlld1NldHRpbmc/LkRldGFpbHNTZXR0aW5nPy5CdXR0b25UZXh0XCJcclxuICAgICAgICAgICAgW2RldGFpbHNDb21wb25lbnRdPVwiZGV0YWlsc0NvbXBvbmVudFwiXHJcbiAgICAgICAgICAgIFtpc0NoZWNrZWRdPVwibW8uJElzQ2hlY2tlZFwiXHJcbiAgICAgICAgICAgIFt2aXNpYmlsaXR5XT1cIm1vLiRWaXNpYmlsaXR5XCJcclxuICAgICAgICAgICAgW2V4cGFuZGVkXT1cIm1vLiRFeHBhbmRlZFwiXHJcbiAgICAgICAgICAgIFtsZXZlbF09XCJtby4kTGV2ZWxcIlxyXG4gICAgICAgICAgICBbcGFyZW50RXhwYW5kZWRdPVwibW8uJFBhcmVudD8uJEV4cGFuZGVkXCJcclxuICAgICAgICAgICAgW21vRGF0YUxpc3RDb3VudF09XCJtb0RhdGFMaXN0Q291bnRcIlxyXG4gICAgICAgICAgICBbY29sdW1uc0NvdW50XT1cImNvbHVtbnNDb3VudCAtIGRldGFpbHNDb2x1bW5zLmxlbmd0aFwiXHJcbiAgICAgICAgICAgIFt0eXBlRGVmSWRdPVwidHlwZURlZklkXCJcclxuICAgICAgICAgICAgW2V4dHJhUmVsYXRpb25dPVwiZXh0cmFSZWxhdGlvblwiXHJcbiAgICAgICAgICAgIFtmb3JtU2V0dGluZ109XCJmb3JtU2V0dGluZ1wiXHJcbiAgICAgICAgICAgIFtpbmRleF09XCJpbmRleFwiXHJcbiAgICAgICAgICAgIFtsYXN0XT1cImxhc3RcIlxyXG4gICAgICAgICAgICBbc2V0dGluZ109XCJ2aWV3U2V0dGluZ1wiXHJcbiAgICAgICAgICAgIFtzZWNvbmRhcnlDb2x1bW5zXT1cInNlY29uZGFyeUNvbHVtbnMgfCBmaWx0ZXJDb2x1bW5zQnlEZXRhaWxzOiBkZXRhaWxzQ29sdW1uczpmYWxzZVwiXHJcbiAgICAgICAgICAgIFtjb2x1bW5zXT1cImNvbHVtbnMgfCBmaWx0ZXJDb2x1bW5zQnlEZXRhaWxzOiBkZXRhaWxzQ29sdW1uczpmYWxzZVwiXHJcbiAgICAgICAgICAgIFtpc05ld0lubGluZU1vXT1cIm1vLiROZXdJbmxpbmVNb1wiXHJcbiAgICAgICAgICAgIFthY2Nlc3NdPVwiYWNjZXNzXCJcclxuICAgICAgICAgICAgW2lubGluZUVkaXRNb2RlXT1cImlubGluZUVkaXRNb2RlXCJcclxuICAgICAgICAgICAgW2FsbG93SW5saW5lRWRpdF09XCJhbGxvd0lubGluZUVkaXRcIlxyXG4gICAgICAgICAgICBbcnRsXT1cInJ0bFwiXHJcbiAgICAgICAgICAgIFtkZXZpY2VOYW1lXT1cImRldmljZU5hbWVcIlxyXG4gICAgICAgICAgICBbZGV2aWNlU2l6ZV09XCJkZXZpY2VTaXplXCJcclxuICAgICAgICAgICAgW2FsbENvbHVtbnNdPVwiYWxsQ29sdW1uc1wiXHJcbiAgICAgICAgICAgIFtjb250ZXh0TWVudUl0ZW1zXT1cImNvbnRleHRNZW51SXRlbXNcIlxyXG4gICAgICAgICAgICBbY2FuVmlld109XCJjYW5WaWV3XCJcclxuICAgICAgICAgICAgW2NvbmRpdGlvbmFsRm9ybWF0c109XCJjb25kaXRpb25hbEZvcm1hdHNcIlxyXG4gICAgICAgICAgICBbZGlzYWJsZU92ZXJmbG93Q29udGV4dE1lbnVdPVwiZGlzYWJsZU92ZXJmbG93Q29udGV4dE1lbnVcIlxyXG4gICAgICAgICAgICBbbmF2aWdhdGlvbkFycm93XT1cIm5hdmlnYXRpb25BcnJvd1wiXHJcbiAgICAgICAgICAgIFtpc0NoZWNrTGlzdF09XCJpc0NoZWNrTGlzdFwiXHJcbiAgICAgICAgICAgIFtyb3dJbmRpY2F0b3JdPVwiY29sdW1uc1swXS5NZXRhRmllbGRUeXBlSWQgPT09ICc0MSdcIlxyXG4gICAgICAgICAgICAoZXZlbnRzKT1cIm9uT2xnb0V2ZW50cygkZXZlbnQpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9ibnJjLWR5bmFtaWMtaXRlbS1jb21wb25lbnQ+XHJcbiAgICAgICAgfVxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICAgICNkeW5hbWljSXRlbVRlbXBsYXRlXHJcbiAgICAgICAgbGV0LW1vXHJcbiAgICAgICAgbGV0LWluZGV4PVwiaW5kZXhcIlxyXG4gICAgICAgIGxldC1jb2x1bW5zPVwiY29sdW1uc1wiXHJcbiAgICAgICAgbGV0LW1vRGF0YUxpc3RDb3VudD1cIm1vRGF0YUxpc3RDb3VudFwiXHJcbiAgICAgICAgbGV0LW1vRGF0YUxpc3Q9XCJtb0RhdGFMaXN0XCJcclxuICAgID5cclxuICAgICAgICA8Ym5yYy1keW5hbWljLWl0ZW0tY29tcG9uZW50XHJcbiAgICAgICAgICAgIFtjb21wb25lbnRdPVwidmlld1NldHRpbmcuUm93T2xnb1wiXHJcbiAgICAgICAgICAgIFttb109XCJtb1wiXHJcbiAgICAgICAgICAgIFtzdHlsZUluZGV4XT1cIm1vLiRTdHlsZUluZGV4XCJcclxuICAgICAgICAgICAgW21vRGF0YUxpc3RdPVwibW9EYXRhTGlzdFwiXHJcbiAgICAgICAgICAgIFtzaG93RGV0YWlsc0luUm93XT1cInNob3dEZXRhaWxzSW5Sb3dcIlxyXG4gICAgICAgICAgICBbaGlkZU9wZW5JY29uXT1cImhpZGVPcGVuSWNvblwiXHJcbiAgICAgICAgICAgIFtkZXRhaWxzQ29sdW1uc109XCJkZXRhaWxzQ29sdW1uc1wiXHJcbiAgICAgICAgICAgIFtjb2x1bW5Db21wb25lbnRzXT1cInZpZXdTZXR0aW5nPy5Db2x1bW5Db21wb25lbnRzIHx8IG51bGxcIlxyXG4gICAgICAgICAgICBbY2FydGFibGVUZW1wbGF0ZV09XCJjYXJ0YWJsZVRlbXBsYXRlc1ttby5SZWxhdGVkTW8/LiRUeXBlRGVmSWRdXCJcclxuICAgICAgICAgICAgW2NhcnRhYmxlTW9dPVwibW8uUmVsYXRlZE1vXCJcclxuICAgICAgICAgICAgW2NhcnRhYmxlV29ya2Zsb3dEYXRhXT1cIm1vLlNlcmlhbGl6ZWRXb3JrZmxvd0RhdGFcIlxyXG4gICAgICAgICAgICBbc2VyaWFsaXplZFJlbGF0ZWRNb109XCJtby5TZXJpYWxpemVkUmVsYXRlZE1vXCJcclxuICAgICAgICAgICAgW2RldGFpbHNUZXh0XT1cInZpZXdTZXR0aW5nPy5EZXRhaWxzU2V0dGluZz8uQnV0dG9uVGV4dFwiXHJcbiAgICAgICAgICAgIFtkZXRhaWxzQ29tcG9uZW50XT1cImRldGFpbHNDb21wb25lbnRcIlxyXG4gICAgICAgICAgICBbaXNDaGVja2VkXT1cIm1vLiRJc0NoZWNrZWRcIlxyXG4gICAgICAgICAgICBbdmlzaWJpbGl0eV09XCJtby4kVmlzaWJpbGl0eVwiXHJcbiAgICAgICAgICAgIFtleHBhbmRlZF09XCJtby4kRXhwYW5kZWRcIlxyXG4gICAgICAgICAgICBbbGV2ZWxdPVwibW8uJExldmVsXCJcclxuICAgICAgICAgICAgW3BhcmVudEV4cGFuZGVkXT1cIm1vLiRQYXJlbnQ/LiRFeHBhbmRlZFwiXHJcbiAgICAgICAgICAgIFttb0RhdGFMaXN0Q291bnRdPVwibW9EYXRhTGlzdENvdW50XCJcclxuICAgICAgICAgICAgW2NvbHVtbnNDb3VudF09XCJjb2x1bW5zQ291bnQgLSBkZXRhaWxzQ29sdW1ucy5sZW5ndGhcIlxyXG4gICAgICAgICAgICBbdHlwZURlZklkXT1cInR5cGVEZWZJZFwiXHJcbiAgICAgICAgICAgIFtleHRyYVJlbGF0aW9uXT1cImV4dHJhUmVsYXRpb25cIlxyXG4gICAgICAgICAgICBbZm9ybVNldHRpbmddPVwiZm9ybVNldHRpbmdcIlxyXG4gICAgICAgICAgICBbaW5kZXhdPVwiaW5kZXhcIlxyXG4gICAgICAgICAgICBbbGFzdF09XCJsYXN0XCJcclxuICAgICAgICAgICAgW3NldHRpbmddPVwidmlld1NldHRpbmdcIlxyXG4gICAgICAgICAgICBbc2Vjb25kYXJ5Q29sdW1uc109XCJzZWNvbmRhcnlDb2x1bW5zIHwgZmlsdGVyQ29sdW1uc0J5RGV0YWlsczogZGV0YWlsc0NvbHVtbnM6ZmFsc2VcIlxyXG4gICAgICAgICAgICBbY29sdW1uc109XCJjb2x1bW5zIHwgZmlsdGVyQ29sdW1uc0J5RGV0YWlsczogZGV0YWlsc0NvbHVtbnM6ZmFsc2VcIlxyXG4gICAgICAgICAgICBbaXNOZXdJbmxpbmVNb109XCJtby4kTmV3SW5saW5lTW9cIlxyXG4gICAgICAgICAgICBbYWNjZXNzXT1cImFjY2Vzc1wiXHJcbiAgICAgICAgICAgIFtpbmxpbmVFZGl0TW9kZV09XCJpbmxpbmVFZGl0TW9kZVwiXHJcbiAgICAgICAgICAgIFthbGxvd0lubGluZUVkaXRdPVwiYWxsb3dJbmxpbmVFZGl0XCJcclxuICAgICAgICAgICAgW3J0bF09XCJydGxcIlxyXG4gICAgICAgICAgICBbZGV2aWNlTmFtZV09XCJkZXZpY2VOYW1lXCJcclxuICAgICAgICAgICAgW2RldmljZVNpemVdPVwiZGV2aWNlU2l6ZVwiXHJcbiAgICAgICAgICAgIFthbGxDb2x1bW5zXT1cImFsbENvbHVtbnNcIlxyXG4gICAgICAgICAgICBbY29udGV4dE1lbnVJdGVtc109XCJjb250ZXh0TWVudUl0ZW1zXCJcclxuICAgICAgICAgICAgW2NhblZpZXddPVwiY2FuVmlld1wiXHJcbiAgICAgICAgICAgIFtjb25kaXRpb25hbEZvcm1hdHNdPVwiY29uZGl0aW9uYWxGb3JtYXRzXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XT1cImRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XCJcclxuICAgICAgICAgICAgW25hdmlnYXRpb25BcnJvd109XCJuYXZpZ2F0aW9uQXJyb3dcIlxyXG4gICAgICAgICAgICBbaXNDaGVja0xpc3RdPVwiaXNDaGVja0xpc3RcIlxyXG4gICAgICAgICAgICBbcm93SW5kaWNhdG9yXT1cImNvbHVtbnNbMF0uTWV0YUZpZWxkVHlwZUlkID09PSAnNDEnXCJcclxuICAgICAgICAgICAgKGV2ZW50cyk9XCJvbk9sZ29FdmVudHMoJGV2ZW50KVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvYm5yYy1keW5hbWljLWl0ZW0tY29tcG9uZW50PlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIH1cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
@@ -0,0 +1,68 @@
1
+ import { ChangeDetectionStrategy, Component, ElementRef, ViewChild } from '@angular/core';
2
+ import { SapUiReportBaseComponent } from '../sap-ui-report-base.component';
3
+ import { UlvContextMenuComponent } from '../ulv-context-menu/ulv-context-menu.component';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "barsa-novin-ray-core";
6
+ import * as i2 from "../ulv-context-menu/ulv-context-menu.component";
7
+ import * as i3 from "@angular/common";
8
+ export class UiMapComponent extends SapUiReportBaseComponent {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.renderedMap = false;
12
+ }
13
+ ngAfterViewInit() {
14
+ super.ngAfterViewInit();
15
+ }
16
+ onElemCreated(e) {
17
+ this.elemPopover = e;
18
+ }
19
+ onVisibilityChange(e) {
20
+ if (e === 'Visible') {
21
+ if (this.renderedMap) {
22
+ return;
23
+ }
24
+ this.renderedMap = true;
25
+ const pn = this.el.nativeElement.parentNode;
26
+ let boundPn = pn.getBoundingClientRect();
27
+ if (this.layoutInfo) {
28
+ boundPn = this.layoutInfo.ControlBounds;
29
+ }
30
+ this._renderer.setStyle(this.el.nativeElement, 'height', boundPn.height + 'px');
31
+ this.context.Draw(this._mapContainer.nativeElement);
32
+ const bound = this._mapContainer.nativeElement.getBoundingClientRect();
33
+ this._mapContainer.nativeElement.getX = () => bound.x;
34
+ this._mapContainer.nativeElement.getY = () => bound.y;
35
+ this._ulvMainService.showContextMenu$.subscribe((c) => {
36
+ const x = this._ulvContextMenuCmp;
37
+ this.popoverX = c[0];
38
+ this.popoverY = c[1];
39
+ const el = this.elemPopover;
40
+ if (el) {
41
+ el.style.left = c[0] + 'px';
42
+ el.style.top = c[1] + 'px';
43
+ }
44
+ x.OpenPopover();
45
+ });
46
+ this.context?.fireEvent('render', this);
47
+ }
48
+ }
49
+ _windowResized() {
50
+ this._renderer.setStyle(this.el.nativeElement, 'height', this.parentHeight + 'px');
51
+ }
52
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiMapComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
53
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UiMapComponent, selector: "bsu-ui-map", viewQueries: [{ propertyName: "_mapContainer", first: true, predicate: ["mapContainer"], descendants: true, read: ElementRef }, { propertyName: "_popoverExt", first: true, predicate: ["popoverExt"], descendants: true }, { propertyName: "_ulvContextMenuCmp", first: true, predicate: UlvContextMenuComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n #mapContainer\r\n absDiv\r\n (elemCreated)=\"onElemCreated($event)\"\r\n [x]=\"popoverX\"\r\n [y]=\"popoverY\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"onVisibilityChange($event)\"\r\n></div>\r\n@if(elemPopover){\r\n<div\r\n ulvContextMenu\r\n [menuItems]=\"(toolbarButtons$ | async)!! | seperatorFix: true\"\r\n [rightClickEnable]=\"true\"\r\n [appendTo]=\"elemPopover\"\r\n [showText]=\"true\"\r\n></div>\r\n}\r\n", styles: [":host{display:block}:host>div:first-child{height:100%;width:100%}\n"], dependencies: [{ kind: "directive", type: i1.IntersectionObserverDirective, selector: "[intersectionObserver]", inputs: ["intersectionDebounce", "intersectionRootMargin", "intersectionRoot", "intersectionThreshold"], outputs: ["visibilityChange"] }, { kind: "directive", type: i1.AbsoluteDivBodyDirective, selector: "[absDiv]", outputs: ["elemCreated"] }, { kind: "component", type: i2.UlvContextMenuComponent, selector: "bsu-ulv-context-menu,[ulvContextMenu]", inputs: ["onlyOverflow", "rightClickEnable", "deviceName", "menuItems", "allColumns", "index", "mo", "styleIndex", "conditionalFormats", "disableOverflowContextMenu", "footerMode", "contextMenuOverflowText", "appendTo"], outputs: ["commandClick"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.SeperatorFixPipe, name: "seperatorFix" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
54
+ }
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiMapComponent, decorators: [{
56
+ type: Component,
57
+ args: [{ selector: 'bsu-ui-map', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div\r\n #mapContainer\r\n absDiv\r\n (elemCreated)=\"onElemCreated($event)\"\r\n [x]=\"popoverX\"\r\n [y]=\"popoverY\"\r\n intersectionObserver\r\n [intersectionThreshold]=\"0.1\"\r\n (visibilityChange)=\"onVisibilityChange($event)\"\r\n></div>\r\n@if(elemPopover){\r\n<div\r\n ulvContextMenu\r\n [menuItems]=\"(toolbarButtons$ | async)!! | seperatorFix: true\"\r\n [rightClickEnable]=\"true\"\r\n [appendTo]=\"elemPopover\"\r\n [showText]=\"true\"\r\n></div>\r\n}\r\n", styles: [":host{display:block}:host>div:first-child{height:100%;width:100%}\n"] }]
58
+ }], propDecorators: { _mapContainer: [{
59
+ type: ViewChild,
60
+ args: ['mapContainer', { read: ElementRef }]
61
+ }], _popoverExt: [{
62
+ type: ViewChild,
63
+ args: ['popoverExt']
64
+ }], _ulvContextMenuCmp: [{
65
+ type: ViewChild,
66
+ args: [UlvContextMenuComponent]
67
+ }] } });
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL3VpLW1hcC91aS1tYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktbWFwL3VpLW1hcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3pHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDOzs7OztBQVN6RixNQUFNLE9BQU8sY0FBZSxTQUFRLHdCQUFpRDtJQVByRjs7UUFjSSxnQkFBVyxHQUFHLEtBQUssQ0FBQztLQTZDdkI7SUE1Q0csZUFBZTtRQUNYLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBQ0QsYUFBYSxDQUFDLENBQUM7UUFDWCxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBQ0Qsa0JBQWtCLENBQUMsQ0FBQztRQUNoQixJQUFJLENBQUMsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNsQixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDbkIsT0FBTztZQUNYLENBQUM7WUFDRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztZQUN4QixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7WUFDNUMsSUFBSSxPQUFPLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixFQUFFLENBQUM7WUFFekMsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ2xCLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztZQUM1QyxDQUFDO1lBRUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFFaEYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNwRCxNQUFNLEtBQUssR0FBSSxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQTZCLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUN4RixJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEdBQUcsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUV0RCxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEdBQUcsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNsRCxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUM7Z0JBRWxDLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNyQixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDckIsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztnQkFDNUIsSUFBSSxFQUFFLEVBQUUsQ0FBQztvQkFDTCxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO29CQUM1QixFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO2dCQUMvQixDQUFDO2dCQUNELENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNwQixDQUFDLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM1QyxDQUFDO0lBQ0wsQ0FBQztJQUNTLGNBQWM7UUFDcEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDdkYsQ0FBQzsrR0FuRFEsY0FBYzttR0FBZCxjQUFjLDRJQUNZLFVBQVUsOEpBRWxDLHVCQUF1Qix1RUNoQnRDLDhmQW1CQTs7NEZETmEsY0FBYztrQkFQMUIsU0FBUzsrQkFDSSxZQUFZLG1CQUdMLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsS0FBSzs4QkFHZ0MsYUFBYTtzQkFBN0QsU0FBUzt1QkFBQyxjQUFjLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQUN0QixXQUFXO3NCQUFuQyxTQUFTO3VCQUFDLFlBQVk7Z0JBQ2Esa0JBQWtCO3NCQUFyRCxTQUFTO3VCQUFDLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7IFNhcFVpUmVwb3J0QmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL3NhcC11aS1yZXBvcnQtYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbHZDb250ZXh0TWVudUNvbXBvbmVudCB9IGZyb20gJy4uL3Vsdi1jb250ZXh0LW1lbnUvdWx2LWNvbnRleHQtbWVudS5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JzdS11aS1tYXAnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VpLW1hcC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi91aS1tYXAuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIFVpTWFwQ29tcG9uZW50IGV4dGVuZHMgU2FwVWlSZXBvcnRCYXNlQ29tcG9uZW50PFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nPiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG4gICAgQFZpZXdDaGlsZCgnbWFwQ29udGFpbmVyJywgeyByZWFkOiBFbGVtZW50UmVmIH0pIF9tYXBDb250YWluZXI6IEVsZW1lbnRSZWY7XHJcbiAgICBAVmlld0NoaWxkKCdwb3BvdmVyRXh0JykgX3BvcG92ZXJFeHQ6IEVsZW1lbnRSZWY7XHJcbiAgICBAVmlld0NoaWxkKFVsdkNvbnRleHRNZW51Q29tcG9uZW50KSBfdWx2Q29udGV4dE1lbnVDbXA6IFVsdkNvbnRleHRNZW51Q29tcG9uZW50O1xyXG4gICAgZWxlbVBvcG92ZXI6IEhUTUxFbGVtZW50O1xyXG4gICAgcG9wb3Zlclg6IG51bWJlcjtcclxuICAgIHBvcG92ZXJZOiBudW1iZXI7XHJcbiAgICByZW5kZXJlZE1hcCA9IGZhbHNlO1xyXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xyXG4gICAgfVxyXG4gICAgb25FbGVtQ3JlYXRlZChlKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5lbGVtUG9wb3ZlciA9IGU7XHJcbiAgICB9XHJcbiAgICBvblZpc2liaWxpdHlDaGFuZ2UoZSk6IHZvaWQge1xyXG4gICAgICAgIGlmIChlID09PSAnVmlzaWJsZScpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMucmVuZGVyZWRNYXApIHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVkTWFwID0gdHJ1ZTtcclxuICAgICAgICAgICAgY29uc3QgcG4gPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucGFyZW50Tm9kZTtcclxuICAgICAgICAgICAgbGV0IGJvdW5kUG4gPSBwbi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLmxheW91dEluZm8pIHtcclxuICAgICAgICAgICAgICAgIGJvdW5kUG4gPSB0aGlzLmxheW91dEluZm8uQ29udHJvbEJvdW5kcztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnaGVpZ2h0JywgYm91bmRQbi5oZWlnaHQgKyAncHgnKTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuY29udGV4dC5EcmF3KHRoaXMuX21hcENvbnRhaW5lci5uYXRpdmVFbGVtZW50KTtcclxuICAgICAgICAgICAgY29uc3QgYm91bmQgPSAodGhpcy5fbWFwQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICAgICAgICB0aGlzLl9tYXBDb250YWluZXIubmF0aXZlRWxlbWVudC5nZXRYID0gKCkgPT4gYm91bmQueDtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuX21hcENvbnRhaW5lci5uYXRpdmVFbGVtZW50LmdldFkgPSAoKSA9PiBib3VuZC55O1xyXG4gICAgICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5zaG93Q29udGV4dE1lbnUkLnN1YnNjcmliZSgoYykgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgeCA9IHRoaXMuX3VsdkNvbnRleHRNZW51Q21wO1xyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMucG9wb3ZlclggPSBjWzBdO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5wb3BvdmVyWSA9IGNbMV07XHJcbiAgICAgICAgICAgICAgICBjb25zdCBlbCA9IHRoaXMuZWxlbVBvcG92ZXI7XHJcbiAgICAgICAgICAgICAgICBpZiAoZWwpIHtcclxuICAgICAgICAgICAgICAgICAgICBlbC5zdHlsZS5sZWZ0ID0gY1swXSArICdweCc7XHJcbiAgICAgICAgICAgICAgICAgICAgZWwuc3R5bGUudG9wID0gY1sxXSArICdweCc7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB4Lk9wZW5Qb3BvdmVyKCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB0aGlzLmNvbnRleHQ/LmZpcmVFdmVudCgncmVuZGVyJywgdGhpcyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF93aW5kb3dSZXNpemVkKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsIHRoaXMucGFyZW50SGVpZ2h0ICsgJ3B4Jyk7XHJcbiAgICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gICAgI21hcENvbnRhaW5lclxyXG4gICAgYWJzRGl2XHJcbiAgICAoZWxlbUNyZWF0ZWQpPVwib25FbGVtQ3JlYXRlZCgkZXZlbnQpXCJcclxuICAgIFt4XT1cInBvcG92ZXJYXCJcclxuICAgIFt5XT1cInBvcG92ZXJZXCJcclxuICAgIGludGVyc2VjdGlvbk9ic2VydmVyXHJcbiAgICBbaW50ZXJzZWN0aW9uVGhyZXNob2xkXT1cIjAuMVwiXHJcbiAgICAodmlzaWJpbGl0eUNoYW5nZSk9XCJvblZpc2liaWxpdHlDaGFuZ2UoJGV2ZW50KVwiXHJcbj48L2Rpdj5cclxuQGlmKGVsZW1Qb3BvdmVyKXtcclxuPGRpdlxyXG4gICAgdWx2Q29udGV4dE1lbnVcclxuICAgIFttZW51SXRlbXNdPVwiKHRvb2xiYXJCdXR0b25zJCB8IGFzeW5jKSEhIHwgc2VwZXJhdG9yRml4OiB0cnVlXCJcclxuICAgIFtyaWdodENsaWNrRW5hYmxlXT1cInRydWVcIlxyXG4gICAgW2FwcGVuZFRvXT1cImVsZW1Qb3BvdmVyXCJcclxuICAgIFtzaG93VGV4dF09XCJ0cnVlXCJcclxuPjwvZGl2PlxyXG59XHJcbiJdfQ==
@@ -0,0 +1,124 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
+ import { EllipsifyDirective, ReportViewBaseComponent } 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/layout-panel";
6
+ import * as i3 from "@fundamental-ngx/core/table";
7
+ import * as i4 from "../column-matrix-renderer/column-matrix-renderer.component";
8
+ import * as i5 from "../apply-conditional-formmatings.directive";
9
+ export class UiMatrixViewComponent extends ReportViewBaseComponent {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.selectionChange = new EventEmitter();
13
+ }
14
+ ngOnChanges(changes) {
15
+ const { fitWidth } = changes;
16
+ if (fitWidth && !fitWidth.firstChange) {
17
+ this.initializeCellsWidth(fitWidth.currentValue, this.cellWidth, this.verticalLabelWidth);
18
+ }
19
+ }
20
+ ngOnInit() {
21
+ super.ngOnInit();
22
+ this.moDataList = this.moDataList.filter((mo) => mo.VerticalColumn);
23
+ }
24
+ onChangeToEdit(i, j) {
25
+ const mo = this.moDataList[i];
26
+ const column = this.columns[j];
27
+ this.selectionChange.emit({ value: mo[column.Caption], index: { i, j } });
28
+ }
29
+ ngAfterViewInit() {
30
+ super.ngAfterViewInit();
31
+ this.initializeCellsWidth(this.fitWidth, this.cellWidth, this.verticalLabelWidth);
32
+ this.initializeCellsHeight(this.cellHeight);
33
+ }
34
+ onSelectionChange({ value, index }) {
35
+ this.selectionChange.emit({ value, index });
36
+ // this.ellipsifyDirective.resetDir();
37
+ }
38
+ initializeCellsWidth(fitWidth, cellWidth, verticalLabelWidth) {
39
+ const el = this._el.nativeElement;
40
+ if (!el) {
41
+ return;
42
+ }
43
+ const emptyHeadCell = el.querySelector('th.empty-cell');
44
+ this._renderer2.setStyle(emptyHeadCell, 'width', verticalLabelWidth + 'px');
45
+ this._renderer2.setStyle(emptyHeadCell, 'min-width', verticalLabelWidth + 'px');
46
+ const headCells = el.querySelectorAll('th:not(.empty-cell)');
47
+ if (fitWidth) {
48
+ const columnCount = this.columns.length;
49
+ const totalWidth = this.tableHead.nativeElement.offsetWidth - verticalLabelWidth;
50
+ cellWidth = totalWidth / columnCount;
51
+ this._renderer2.addClass(el, 'fit-width');
52
+ }
53
+ else {
54
+ this._renderer2.removeClass(el, 'fit-width');
55
+ }
56
+ this.setWidthAndHeight(headCells, 'width', cellWidth);
57
+ this.setWidthAndHeight(headCells, 'min-width', cellWidth);
58
+ }
59
+ initializeCellsHeight(cellHeight) {
60
+ const rows = this._el.nativeElement.querySelectorAll('tr');
61
+ rows.forEach((row) => {
62
+ this._renderer2.setStyle(row, 'height', cellHeight + 'px');
63
+ });
64
+ }
65
+ setWidthAndHeight(els, name, value) {
66
+ const valueStr = value.toString() + 'px';
67
+ if (els?.length > 0) {
68
+ els.forEach((tableCell) => {
69
+ this._renderer2.setStyle(tableCell, name, valueStr);
70
+ });
71
+ }
72
+ }
73
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiMatrixViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
74
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UiMatrixViewComponent, selector: "bsu-ui-matrix-view", inputs: { deviceSize: "deviceSize", deviceName: "deviceName", moDataList: "moDataList", columns: "columns", formLayout: "formLayout", conditionalFormat: "conditionalFormat", activeCell: "activeCell", valueControlFieldCaption: "valueControlFieldCaption", formTemplate: "formTemplate", valueType: "valueType", cellWidth: "cellWidth", cellHeight: "cellHeight", verticalLabelWidth: "verticalLabelWidth", fitWidth: "fitWidth", minWidth: "minWidth", minHeight: "minHeight", rowResizer: "rowResizer", enableResizing: "enableResizing" }, outputs: { selectionChange: "selectionChange" }, viewQueries: [{ propertyName: "tableHead", first: true, predicate: ["tableHead"], descendants: true }, { propertyName: "ellipsifyDirective", first: true, predicate: EllipsifyDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<fd-layout-panel style=\"border-radius: 0\">\r\n <fd-layout-panel-body [bleed]=\"true\">\r\n <table\r\n fd-table\r\n ellipsify\r\n [fitWidth]=\"fitWidth\"\r\n [minWidth]=\"minWidth\"\r\n [minHeight]=\"minHeight\"\r\n [VerticalLableVisible]=\"false\"\r\n [rowResizer]=\"rowResizer\"\r\n [enableResizing]=\"enableResizing\"\r\n >\r\n <thead fd-table-header #tableHead>\r\n <tr fd-table-row>\r\n <th fd-table-cell class=\"empty-cell\"></th>\r\n @for (column of columns; track column) {\r\n <th fd-table-cell>\r\n <span>\r\n {{ column.Caption }}\r\n </span>\r\n </th>\r\n }\r\n </tr>\r\n </thead>\r\n <tbody fd-table-body>\r\n @if (moDataList?.length) { @for (mo of moDataList; track mo; let i = $index) { @if (mo.VerticalColumn) {\r\n <tr\r\n fd-table-row\r\n #trEl\r\n [applyConditionalFormats]=\"conditionalFormat\"\r\n [styleIndex]=\"mo.$StyleIndex ? mo.$StyleIndex : []\"\r\n [hostEl]=\"trEl\"\r\n [hoverable]=\"false\"\r\n [class]=\"'row_' + mo?.VerticalData?.Id\"\r\n >\r\n <td fd-table-cell class=\"vertical-label\">\r\n <span>{{ mo.VerticalColumn }}</span>\r\n </td>\r\n @for (column of columns; track column; let j = $index; let first = $first; let last = $last) {\r\n <td fd-table-cell [hoverable]=\"true\">\r\n <bsu-column-matrix-renderer\r\n class=\"column-renderer\"\r\n (cellClick)=\"onSelectionChange({ value: mo[column.Caption], index: { i: i, j: j } })\"\r\n [value]=\"mo[column.Caption]\"\r\n [isActive]=\"i === activeCell?.i && j === activeCell?.j\"\r\n [formLayout]=\"formLayout\"\r\n [uiControl]=\"valueControlFieldCaption | controlUi: formLayout\"\r\n [columnCaption]=\"column.Caption\"\r\n [valueType]=\"valueType\"\r\n [height]=\"mo.height\"\r\n (changeToEdit)=\"onChangeToEdit(i, j)\"\r\n ></bsu-column-matrix-renderer>\r\n </td>\r\n }\r\n </tr>\r\n } } }\r\n </tbody>\r\n </table>\r\n </fd-layout-panel-body>\r\n</fd-layout-panel>\r\n", styles: ["fd-layout-panel{height:100%}fd-layout-panel table thead tr{background-color:var(--sapList_HeaderBackground, #f2f2f2)}fd-layout-panel table tbody{border-bottom:none}fd-layout-panel table tbody .fd-table__cell.vertical-label{background-color:var(--sapList_HeaderBackground, #f2f2f2)}:host{display:block;width:100%;height:100%;overflow:hidden}::-webkit-scrollbar{height:7px;width:7px}::-webkit-scrollbar-track{box-shadow:inset 0 0 2px #d0cece;border-radius:10px}::-webkit-scrollbar-thumb{background:#c8cacb;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#adb0b2}\n"], dependencies: [{ kind: "directive", type: i1.EllipsifyDirective, selector: "[ellipsify]", inputs: ["limitLine"] }, { kind: "component", type: i2.LayoutPanelComponent, selector: "fd-layout-panel", inputs: ["backgroundImage", "id", "transparent"] }, { kind: "component", type: i2.LayoutPanelBodyComponent, selector: "fd-layout-panel-body", inputs: ["bleed"] }, { kind: "component", type: i3.TableComponent, selector: "table[fd-table]", inputs: ["noBorderX", "noBorderY", "noOuterBorder", "topBorder", "popIn", "responsive", "keys", "allCellsFocusable"], exportAs: ["fd-table"] }, { kind: "directive", type: i3.TableHeaderDirective, selector: "[fdTableHeader], [fd-table-header]", inputs: ["noBorderX", "noBorderY", "nonInteractive"] }, { kind: "directive", type: i3.TableBodyDirective, selector: "[fdTableBody], [fd-table-body]", inputs: ["noBorderX", "noBorderY"] }, { kind: "directive", type: i3.TableRowDirective, selector: "[fdTableRow], [fd-table-row]", inputs: ["activable", "highlightActive", "hoverable", "focusable", "main", "secondary", "active"] }, { kind: "directive", type: i3.TableCellDirective, selector: "[fdTableCell], [fd-table-cell]", inputs: ["noBorderX", "noBorderY", "activable", "focusable", "hoverable", "fitContent", "noPadding", "noData", "nonInteractive", "key"] }, { kind: "component", type: i4.ColumnMatrixRendererComponent, selector: "bsu-column-matrix-renderer", inputs: ["value", "valueCaption", "formLayout", "columnCaption", "uiControl", "valueType", "isActive", "height"], outputs: ["cellClick", "changeToEdit"] }, { kind: "directive", type: i5.ApplyConditionalFormatsDirective, selector: "[applyConditionalFormats]", inputs: ["applyConditionalFormats", "styleIndex", "hostEl", "dbName"] }, { kind: "pipe", type: i1.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
75
+ }
76
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiMatrixViewComponent, decorators: [{
77
+ type: Component,
78
+ args: [{ selector: 'bsu-ui-matrix-view', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<fd-layout-panel style=\"border-radius: 0\">\r\n <fd-layout-panel-body [bleed]=\"true\">\r\n <table\r\n fd-table\r\n ellipsify\r\n [fitWidth]=\"fitWidth\"\r\n [minWidth]=\"minWidth\"\r\n [minHeight]=\"minHeight\"\r\n [VerticalLableVisible]=\"false\"\r\n [rowResizer]=\"rowResizer\"\r\n [enableResizing]=\"enableResizing\"\r\n >\r\n <thead fd-table-header #tableHead>\r\n <tr fd-table-row>\r\n <th fd-table-cell class=\"empty-cell\"></th>\r\n @for (column of columns; track column) {\r\n <th fd-table-cell>\r\n <span>\r\n {{ column.Caption }}\r\n </span>\r\n </th>\r\n }\r\n </tr>\r\n </thead>\r\n <tbody fd-table-body>\r\n @if (moDataList?.length) { @for (mo of moDataList; track mo; let i = $index) { @if (mo.VerticalColumn) {\r\n <tr\r\n fd-table-row\r\n #trEl\r\n [applyConditionalFormats]=\"conditionalFormat\"\r\n [styleIndex]=\"mo.$StyleIndex ? mo.$StyleIndex : []\"\r\n [hostEl]=\"trEl\"\r\n [hoverable]=\"false\"\r\n [class]=\"'row_' + mo?.VerticalData?.Id\"\r\n >\r\n <td fd-table-cell class=\"vertical-label\">\r\n <span>{{ mo.VerticalColumn }}</span>\r\n </td>\r\n @for (column of columns; track column; let j = $index; let first = $first; let last = $last) {\r\n <td fd-table-cell [hoverable]=\"true\">\r\n <bsu-column-matrix-renderer\r\n class=\"column-renderer\"\r\n (cellClick)=\"onSelectionChange({ value: mo[column.Caption], index: { i: i, j: j } })\"\r\n [value]=\"mo[column.Caption]\"\r\n [isActive]=\"i === activeCell?.i && j === activeCell?.j\"\r\n [formLayout]=\"formLayout\"\r\n [uiControl]=\"valueControlFieldCaption | controlUi: formLayout\"\r\n [columnCaption]=\"column.Caption\"\r\n [valueType]=\"valueType\"\r\n [height]=\"mo.height\"\r\n (changeToEdit)=\"onChangeToEdit(i, j)\"\r\n ></bsu-column-matrix-renderer>\r\n </td>\r\n }\r\n </tr>\r\n } } }\r\n </tbody>\r\n </table>\r\n </fd-layout-panel-body>\r\n</fd-layout-panel>\r\n", styles: ["fd-layout-panel{height:100%}fd-layout-panel table thead tr{background-color:var(--sapList_HeaderBackground, #f2f2f2)}fd-layout-panel table tbody{border-bottom:none}fd-layout-panel table tbody .fd-table__cell.vertical-label{background-color:var(--sapList_HeaderBackground, #f2f2f2)}:host{display:block;width:100%;height:100%;overflow:hidden}::-webkit-scrollbar{height:7px;width:7px}::-webkit-scrollbar-track{box-shadow:inset 0 0 2px #d0cece;border-radius:10px}::-webkit-scrollbar-thumb{background:#c8cacb;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#adb0b2}\n"] }]
79
+ }], propDecorators: { tableHead: [{
80
+ type: ViewChild,
81
+ args: ['tableHead']
82
+ }], ellipsifyDirective: [{
83
+ type: ViewChild,
84
+ args: [EllipsifyDirective]
85
+ }], deviceSize: [{
86
+ type: Input
87
+ }], deviceName: [{
88
+ type: Input
89
+ }], moDataList: [{
90
+ type: Input
91
+ }], columns: [{
92
+ type: Input
93
+ }], formLayout: [{
94
+ type: Input
95
+ }], conditionalFormat: [{
96
+ type: Input
97
+ }], activeCell: [{
98
+ type: Input
99
+ }], valueControlFieldCaption: [{
100
+ type: Input
101
+ }], formTemplate: [{
102
+ type: Input
103
+ }], valueType: [{
104
+ type: Input
105
+ }], cellWidth: [{
106
+ type: Input
107
+ }], cellHeight: [{
108
+ type: Input
109
+ }], verticalLabelWidth: [{
110
+ type: Input
111
+ }], fitWidth: [{
112
+ type: Input
113
+ }], minWidth: [{
114
+ type: Input
115
+ }], minHeight: [{
116
+ type: Input
117
+ }], rowResizer: [{
118
+ type: Input
119
+ }], enableResizing: [{
120
+ type: Input
121
+ }], selectionChange: [{
122
+ type: Output
123
+ }] } });
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbWF0cml4LXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktbWF0cml4LXZpZXcvdWktbWF0cml4LXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktbWF0cml4LXZpZXcvdWktbWF0cml4LXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILHVCQUF1QixFQUN2QixTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBRU4sU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFHSCxrQkFBa0IsRUFHbEIsdUJBQXVCLEVBRzFCLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7QUFTOUIsTUFBTSxPQUFPLHFCQUNULFNBQVEsdUJBQWdEO0lBUjVEOztRQStCYyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUd4QyxDQUFDO0tBbUVSO0lBakVHLFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQzdCLElBQUksUUFBUSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3BDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDOUYsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsQ0FB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SztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNJLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQWZ0ZXJWaWV3SW5pdCxcclxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIEV2ZW50RW1pdHRlcixcclxuICAgIElucHV0LFxyXG4gICAgT25DaGFuZ2VzLFxyXG4gICAgT25Jbml0LFxyXG4gICAgT3V0cHV0LFxyXG4gICAgU2ltcGxlQ2hhbmdlcyxcclxuICAgIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gICAgQWJicmV2YXRpb25EZXZpY2VTaXplLFxyXG4gICAgRGV2aWNlU2l6ZSxcclxuICAgIEVsbGlwc2lmeURpcmVjdGl2ZSxcclxuICAgIExheW91dFNldHRpbmcsXHJcbiAgICBNZXRhb2JqZWN0RGF0YU1vZGVsLFxyXG4gICAgUmVwb3J0Vmlld0Jhc2VDb21wb25lbnQsXHJcbiAgICBSZXBvcnRWaWV3Q29sdW1uLFxyXG4gICAgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmdcclxufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYnN1LXVpLW1hdHJpeC12aWV3JyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi91aS1tYXRyaXgtdmlldy5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi91aS1tYXRyaXgtdmlldy5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVWlNYXRyaXhWaWV3Q29tcG9uZW50XHJcbiAgICBleHRlbmRzIFJlcG9ydFZpZXdCYXNlQ29tcG9uZW50PFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nPlxyXG4gICAgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdFxyXG57XHJcbiAgICBAVmlld0NoaWxkKCd0YWJsZUhlYWQnKSB0YWJsZUhlYWQ6IEVsZW1lbnRSZWY8YW55PjtcclxuICAgIEBWaWV3Q2hpbGQoRWxsaXBzaWZ5RGlyZWN0aXZlKSBlbGxpcHNpZnlEaXJlY3RpdmU6IEVsbGlwc2lmeURpcmVjdGl2ZTtcclxuICAgIEBJbnB1dCgpIGRldmljZVNpemU6IEFiYnJldmF0aW9uRGV2aWNlU2l6ZTtcclxuICAgIEBJbnB1dCgpIGRldmljZU5hbWU6IERldmljZVNpemU7XHJcbiAgICBASW5wdXQoKSBtb0RhdGFMaXN0OiBNZXRhb2JqZWN0RGF0YU1vZGVsW107XHJcbiAgICBASW5wdXQoKSBjb2x1bW5zOiBSZXBvcnRWaWV3Q29sdW1uW107XHJcbiAgICBASW5wdXQoKSBmb3JtTGF5b3V0OiBMYXlvdXRTZXR0aW5nO1xyXG4gICAgQElucHV0KCkgY29uZGl0aW9uYWxGb3JtYXQ7XHJcbiAgICBASW5wdXQoKSBhY3RpdmVDZWxsO1xyXG4gICAgQElucHV0KCkgdmFsdWVDb250cm9sRmllbGRDYXB0aW9uOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBmb3JtVGVtcGxhdGU7XHJcbiAgICBASW5wdXQoKSB2YWx1ZVR5cGU7XHJcbiAgICBASW5wdXQoKSBjZWxsV2lkdGg7XHJcbiAgICBASW5wdXQoKSBjZWxsSGVpZ2h0O1xyXG4gICAgQElucHV0KCkgdmVydGljYWxMYWJlbFdpZHRoO1xyXG4gICAgQElucHV0KCkgZml0V2lkdGg6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBtaW5XaWR0aDtcclxuICAgIEBJbnB1dCgpIG1pbkhlaWdodDtcclxuICAgIEBJbnB1dCgpIHJvd1Jlc2l6ZXI7XHJcbiAgICBASW5wdXQoKSBlbmFibGVSZXNpemluZztcclxuICAgIEBPdXRwdXQoKSBzZWxlY3Rpb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHtcclxuICAgICAgICB2YWx1ZTogYW55O1xyXG4gICAgICAgIGluZGV4OiB7IGk6IG51bWJlcjsgajogbnVtYmVyIH07XHJcbiAgICB9PigpO1xyXG5cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCB7IGZpdFdpZHRoIH0gPSBjaGFuZ2VzO1xyXG4gICAgICAgIGlmIChmaXRXaWR0aCAmJiAhZml0V2lkdGguZmlyc3RDaGFuZ2UpIHtcclxuICAgICAgICAgICAgdGhpcy5pbml0aWFsaXplQ2VsbHNXaWR0aChmaXRXaWR0aC5jdXJyZW50VmFsdWUsIHRoaXMuY2VsbFdpZHRoLCB0aGlzLnZlcnRpY2FsTGFiZWxXaWR0aCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICAgICAgdGhpcy5tb0RhdGFMaXN0ID0gdGhpcy5tb0RhdGFMaXN0LmZpbHRlcigobW8pID0+IG1vLlZlcnRpY2FsQ29sdW1uKTtcclxuICAgIH1cclxuICAgIG9uQ2hhbmdlVG9FZGl0KGksIGopOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBtbyA9IHRoaXMubW9EYXRhTGlzdFtpXTtcclxuICAgICAgICBjb25zdCBjb2x1bW4gPSB0aGlzLmNvbHVtbnNbal07XHJcbiAgICAgICAgdGhpcy5zZWxlY3Rpb25DaGFuZ2UuZW1pdCh7IHZhbHVlOiBtb1tjb2x1bW4uQ2FwdGlvbl0sIGluZGV4OiB7IGksIGogfSB9KTtcclxuICAgIH1cclxuXHJcbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XHJcbiAgICAgICAgdGhpcy5pbml0aWFsaXplQ2VsbHNXaWR0aCh0aGlzLmZpdFdpZHRoLCB0aGlzLmNlbGxXaWR0aCwgdGhpcy52ZXJ0aWNhbExhYmVsV2lkdGgpO1xyXG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZUNlbGxzSGVpZ2h0KHRoaXMuY2VsbEhlaWdodCk7XHJcbiAgICB9XHJcblxyXG4gICAgb25TZWxlY3Rpb25DaGFuZ2UoeyB2YWx1ZSwgaW5kZXggfSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0aW9uQ2hhbmdlLmVtaXQoeyB2YWx1ZSwgaW5kZXggfSk7XHJcbiAgICAgICAgLy8gdGhpcy5lbGxpcHNpZnlEaXJlY3RpdmUucmVzZXREaXIoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGluaXRpYWxpemVDZWxsc1dpZHRoKGZpdFdpZHRoOiBib29sZWFuLCBjZWxsV2lkdGgsIHZlcnRpY2FsTGFiZWxXaWR0aCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGVsID0gdGhpcy5fZWwubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBpZiAoIWVsKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgZW1wdHlIZWFkQ2VsbCA9IGVsLnF1ZXJ5U2VsZWN0b3IoJ3RoLmVtcHR5LWNlbGwnKTtcclxuICAgICAgICB0aGlzLl9yZW5kZXJlcjIuc2V0U3R5bGUoZW1wdHlIZWFkQ2VsbCwgJ3dpZHRoJywgdmVydGljYWxMYWJlbFdpZHRoICsgJ3B4Jyk7XHJcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIyLnNldFN0eWxlKGVtcHR5SGVhZENlbGwsICdtaW4td2lkdGgnLCB2ZXJ0aWNhbExhYmVsV2lkdGggKyAncHgnKTtcclxuXHJcbiAgICAgICAgY29uc3QgaGVhZENlbGxzID0gZWwucXVlcnlTZWxlY3RvckFsbCgndGg6bm90KC5lbXB0eS1jZWxsKScpO1xyXG4gICAgICAgIGlmIChmaXRXaWR0aCkge1xyXG4gICAgICAgICAgICBjb25zdCBjb2x1bW5Db3VudCA9IHRoaXMuY29sdW1ucy5sZW5ndGg7XHJcbiAgICAgICAgICAgIGNvbnN0IHRvdGFsV2lkdGggPSB0aGlzLnRhYmxlSGVhZC5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoIC0gdmVydGljYWxMYWJlbFdpZHRoO1xyXG4gICAgICAgICAgICBjZWxsV2lkdGggPSB0b3RhbFdpZHRoIC8gY29sdW1uQ291bnQ7XHJcbiAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyMi5hZGRDbGFzcyhlbCwgJ2ZpdC13aWR0aCcpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyMi5yZW1vdmVDbGFzcyhlbCwgJ2ZpdC13aWR0aCcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNldFdpZHRoQW5kSGVpZ2h0KGhlYWRDZWxscywgJ3dpZHRoJywgY2VsbFdpZHRoKTtcclxuICAgICAgICB0aGlzLnNldFdpZHRoQW5kSGVpZ2h0KGhlYWRDZWxscywgJ21pbi13aWR0aCcsIGNlbGxXaWR0aCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpbml0aWFsaXplQ2VsbHNIZWlnaHQoY2VsbEhlaWdodCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHJvd3MgPSB0aGlzLl9lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3RyJyk7XHJcbiAgICAgICAgcm93cy5mb3JFYWNoKChyb3cpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXIyLnNldFN0eWxlKHJvdywgJ2hlaWdodCcsIGNlbGxIZWlnaHQgKyAncHgnKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHNldFdpZHRoQW5kSGVpZ2h0KGVscywgbmFtZTogc3RyaW5nLCB2YWx1ZTogbnVtYmVyKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgdmFsdWVTdHIgPSB2YWx1ZS50b1N0cmluZygpICsgJ3B4JztcclxuICAgICAgICBpZiAoZWxzPy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGVscy5mb3JFYWNoKCh0YWJsZUNlbGwpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyMi5zZXRTdHlsZSh0YWJsZUNlbGwsIG5hbWUsIHZhbHVlU3RyKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIjxmZC1sYXlvdXQtcGFuZWwgc3R5bGU9XCJib3JkZXItcmFkaXVzOiAwXCI+XHJcbiAgICA8ZmQtbGF5b3V0LXBhbmVsLWJvZHkgW2JsZWVkXT1cInRydWVcIj5cclxuICAgICAgICA8dGFibGVcclxuICAgICAgICAgICAgZmQtdGFibGVcclxuICAgICAgICAgICAgZWxsaXBzaWZ5XHJcbiAgICAgICAgICAgIFtmaXRXaWR0aF09XCJmaXRXaWR0aFwiXHJcbiAgICAgICAgICAgIFttaW5XaWR0aF09XCJtaW5XaWR0aFwiXHJcbiAgICAgICAgICAgIFttaW5IZWlnaHRdPVwibWluSGVpZ2h0XCJcclxuICAgICAgICAgICAgW1ZlcnRpY2FsTGFibGVWaXNpYmxlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgW3Jvd1Jlc2l6ZXJdPVwicm93UmVzaXplclwiXHJcbiAgICAgICAgICAgIFtlbmFibGVSZXNpemluZ109XCJlbmFibGVSZXNpemluZ1wiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgICA8dGhlYWQgZmQtdGFibGUtaGVhZGVyICN0YWJsZUhlYWQ+XHJcbiAgICAgICAgICAgICAgICA8dHIgZmQtdGFibGUtcm93PlxyXG4gICAgICAgICAgICAgICAgICAgIDx0aCBmZC10YWJsZS1jZWxsIGNsYXNzPVwiZW1wdHktY2VsbFwiPjwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgQGZvciAoY29sdW1uIG9mIGNvbHVtbnM7IHRyYWNrIGNvbHVtbikge1xyXG4gICAgICAgICAgICAgICAgICAgIDx0aCBmZC10YWJsZS1jZWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbHVtbi5DYXB0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgIDx0Ym9keSBmZC10YWJsZS1ib2R5PlxyXG4gICAgICAgICAgICAgICAgQGlmIChtb0RhdGFMaXN0Py5sZW5ndGgpIHsgQGZvciAobW8gb2YgbW9EYXRhTGlzdDsgdHJhY2sgbW87IGxldCBpID0gJGluZGV4KSB7IEBpZiAobW8uVmVydGljYWxDb2x1bW4pIHtcclxuICAgICAgICAgICAgICAgIDx0clxyXG4gICAgICAgICAgICAgICAgICAgIGZkLXRhYmxlLXJvd1xyXG4gICAgICAgICAgICAgICAgICAgICN0ckVsXHJcbiAgICAgICAgICAgICAgICAgICAgW2FwcGx5Q29uZGl0aW9uYWxGb3JtYXRzXT1cImNvbmRpdGlvbmFsRm9ybWF0XCJcclxuICAgICAgICAgICAgICAgICAgICBbc3R5bGVJbmRleF09XCJtby4kU3R5bGVJbmRleCA/IG1vLiRTdHlsZUluZGV4IDogW11cIlxyXG4gICAgICAgICAgICAgICAgICAgIFtob3N0RWxdPVwidHJFbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2hvdmVyYWJsZV09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIidyb3dfJyArIG1vPy5WZXJ0aWNhbERhdGE/LklkXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8dGQgZmQtdGFibGUtY2VsbCBjbGFzcz1cInZlcnRpY2FsLWxhYmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IG1vLlZlcnRpY2FsQ29sdW1uIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgQGZvciAoY29sdW1uIG9mIGNvbHVtbnM7IHRyYWNrIGNvbHVtbjsgbGV0IGogPSAkaW5kZXg7IGxldCBmaXJzdCA9ICRmaXJzdDsgbGV0IGxhc3QgPSAkbGFzdCkge1xyXG4gICAgICAgICAgICAgICAgICAgIDx0ZCBmZC10YWJsZS1jZWxsIFtob3ZlcmFibGVdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnN1LWNvbHVtbi1tYXRyaXgtcmVuZGVyZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY29sdW1uLXJlbmRlcmVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjZWxsQ2xpY2spPVwib25TZWxlY3Rpb25DaGFuZ2UoeyB2YWx1ZTogbW9bY29sdW1uLkNhcHRpb25dLCBpbmRleDogeyBpOiBpLCBqOiBqIH0gfSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cIm1vW2NvbHVtbi5DYXB0aW9uXVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNBY3RpdmVdPVwiaSA9PT0gYWN0aXZlQ2VsbD8uaSAmJiBqID09PSBhY3RpdmVDZWxsPy5qXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JtTGF5b3V0XT1cImZvcm1MYXlvdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3VpQ29udHJvbF09XCJ2YWx1ZUNvbnRyb2xGaWVsZENhcHRpb24gfCBjb250cm9sVWk6IGZvcm1MYXlvdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbHVtbkNhcHRpb25dPVwiY29sdW1uLkNhcHRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlVHlwZV09XCJ2YWx1ZVR5cGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hlaWdodF09XCJtby5oZWlnaHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZVRvRWRpdCk9XCJvbkNoYW5nZVRvRWRpdChpLCBqKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L2JzdS1jb2x1bW4tbWF0cml4LXJlbmRlcmVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgIH0gfSB9XHJcbiAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgPC90YWJsZT5cclxuICAgIDwvZmQtbGF5b3V0LXBhbmVsLWJvZHk+XHJcbjwvZmQtbGF5b3V0LXBhbmVsPlxyXG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { ChangeDetectionStrategy, Component } 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/button";
5
+ import * as i2 from "@fundamental-ngx/core/text";
6
+ import * as i3 from "@angular/common";
7
+ import * as i4 from "barsa-novin-ray-core";
8
+ export class UiMoInfoComboViewerComponent extends FieldBaseComponent {
9
+ onBtnClick() {
10
+ this.context.fireEvent('ButtonClick', this.context);
11
+ }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiMoInfoComboViewerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
13
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UiMoInfoComboViewerComponent, selector: "bsu-ui-mo-info-combo-viewer", usesInheritance: true, ngImport: i0, template: "<fd-text class=\"bold\" [text]=\"value | bbbTranslate\" hyphenation=\"auto\"></fd-text>\r\n@if ((disableOrReadonly$ | async) !== true && !Setting.IsReadOnly && Setting.ViewRelatedFormType !== 'Hide') {\r\n<button fd-button [glyph]=\"'edit'\" [fdType]=\"'transparent'\" (click)=\"onBtnClick()\"></button>\r\n}\r\n", styles: [":host{display:flex;min-height:var(--sapElement_Height);height:auto;align-items:center}h5{align-self:center}\n"], dependencies: [{ kind: "component", type: i1.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i2.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14
+ }
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiMoInfoComboViewerComponent, decorators: [{
16
+ type: Component,
17
+ args: [{ selector: 'bsu-ui-mo-info-combo-viewer', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<fd-text class=\"bold\" [text]=\"value | bbbTranslate\" hyphenation=\"auto\"></fd-text>\r\n@if ((disableOrReadonly$ | async) !== true && !Setting.IsReadOnly && Setting.ViewRelatedFormType !== 'Hide') {\r\n<button fd-button [glyph]=\"'edit'\" [fdType]=\"'transparent'\" (click)=\"onBtnClick()\"></button>\r\n}\r\n", styles: [":host{display:flex;min-height:var(--sapElement_Height);height:auto;align-items:center}h5{align-self:center}\n"] }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbW8taW5mby1jb21iby12aWV3ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktbW8taW5mby1jb21iby12aWV3ZXIvdWktbW8taW5mby1jb21iby12aWV3ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktbW8taW5mby1jb21iby12aWV3ZXIvdWktbW8taW5mby1jb21iby12aWV3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7O0FBUTFELE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxrQkFBa0I7SUFDaEUsVUFBVTtRQUNOLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDeEQsQ0FBQzsrR0FIUSw0QkFBNEI7bUdBQTVCLDRCQUE0QiwwRkNWekMsMFRBSUE7OzRGRE1hLDRCQUE0QjtrQkFQeEMsU0FBUzsrQkFDSSw2QkFBNkIsbUJBR3RCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IEZpZWxkQmFzZUNvbXBvbmVudCB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JzdS11aS1tby1pbmZvLWNvbWJvLXZpZXdlcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktbW8taW5mby1jb21iby12aWV3ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vdWktbW8taW5mby1jb21iby12aWV3ZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIFVpTW9JbmZvQ29tYm9WaWV3ZXJDb21wb25lbnQgZXh0ZW5kcyBGaWVsZEJhc2VDb21wb25lbnQge1xyXG4gICAgb25CdG5DbGljaygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmNvbnRleHQuZmlyZUV2ZW50KCdCdXR0b25DbGljaycsIHRoaXMuY29udGV4dCk7XHJcbiAgICB9XHJcbn1cclxuIiwiPGZkLXRleHQgY2xhc3M9XCJib2xkXCIgW3RleHRdPVwidmFsdWUgfCBiYmJUcmFuc2xhdGVcIiBoeXBoZW5hdGlvbj1cImF1dG9cIj48L2ZkLXRleHQ+XHJcbkBpZiAoKGRpc2FibGVPclJlYWRvbmx5JCB8IGFzeW5jKSAhPT0gdHJ1ZSAmJiAhU2V0dGluZy5Jc1JlYWRPbmx5ICYmIFNldHRpbmcuVmlld1JlbGF0ZWRGb3JtVHlwZSAhPT0gJ0hpZGUnKSB7XHJcbjxidXR0b24gZmQtYnV0dG9uIFtnbHlwaF09XCInZWRpdCdcIiBbZmRUeXBlXT1cIid0cmFuc3BhcmVudCdcIiAoY2xpY2spPVwib25CdG5DbGljaygpXCI+PC9idXR0b24+XHJcbn1cclxuIl19
@@ -0,0 +1,14 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { FieldBaseComponent } 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 "@angular/common";
6
+ export class UiMoInfoGeneralObjectUiComponent extends FieldBaseComponent {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiMoInfoGeneralObjectUiComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
8
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UiMoInfoGeneralObjectUiComponent, selector: "bsu-ui-mo-info-general-object-ui", usesInheritance: true, ngImport: i0, template: "<bnrc-field-ui\n [class.control-disabled]=\"(disableOrReadonly$ | async) === true\"\n class=\"inner-control\"\n [customField]=\"context?._typeComboControl\"\n></bnrc-field-ui>\n<bnrc-field-ui\n [class.control-disabled]=\"(disableOrReadonly$ | async) === true\"\n class=\"inner-control\"\n [customField]=\"context?._objectComboControl\"\n></bnrc-field-ui>\n", styles: [":host{display:flex;column-gap:10px;align-items:center}:host bnrc-field-ui:first-child{flex:30}:host bnrc-field-ui:last-child{flex:70}\n"], dependencies: [{ kind: "component", type: i1.FieldUiComponent, selector: "bnrc-field-ui", inputs: ["isSearchPanel", "customField", "componentUi", "layoutInfo", "inlineEdit", "focusControl", "formHeight"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiMoInfoGeneralObjectUiComponent, decorators: [{
11
+ type: Component,
12
+ args: [{ selector: 'bsu-ui-mo-info-general-object-ui', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<bnrc-field-ui\n [class.control-disabled]=\"(disableOrReadonly$ | async) === true\"\n class=\"inner-control\"\n [customField]=\"context?._typeComboControl\"\n></bnrc-field-ui>\n<bnrc-field-ui\n [class.control-disabled]=\"(disableOrReadonly$ | async) === true\"\n class=\"inner-control\"\n [customField]=\"context?._objectComboControl\"\n></bnrc-field-ui>\n", styles: [":host{display:flex;column-gap:10px;align-items:center}:host bnrc-field-ui:first-child{flex:30}:host bnrc-field-ui:last-child{flex:70}\n"] }]
13
+ }] });
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbW8taW5mby1nZW5lcmFsLW9iamVjdC11aS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi91aS1tby1pbmZvLWdlbmVyYWwtb2JqZWN0LXVpL3VpLW1vLWluZm8tZ2VuZXJhbC1vYmplY3QtdWkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktbW8taW5mby1nZW5lcmFsLW9iamVjdC11aS91aS1tby1pbmZvLWdlbmVyYWwtb2JqZWN0LXVpLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7QUFRMUQsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLGtCQUFrQjsrR0FBM0QsZ0NBQWdDO21HQUFoQyxnQ0FBZ0MsK0ZDVjdDLHdYQVVBOzs0RkRBYSxnQ0FBZ0M7a0JBUDVDLFNBQVM7K0JBQ0ksa0NBQWtDLG1CQUczQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBGaWVsZEJhc2VDb21wb25lbnQgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdic3UtdWktbW8taW5mby1nZW5lcmFsLW9iamVjdC11aScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktbW8taW5mby1nZW5lcmFsLW9iamVjdC11aS5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi91aS1tby1pbmZvLWdlbmVyYWwtb2JqZWN0LXVpLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaU1vSW5mb0dlbmVyYWxPYmplY3RVaUNvbXBvbmVudCBleHRlbmRzIEZpZWxkQmFzZUNvbXBvbmVudCB7fVxyXG4iLCI8Ym5yYy1maWVsZC11aVxuICAgIFtjbGFzcy5jb250cm9sLWRpc2FibGVkXT1cIihkaXNhYmxlT3JSZWFkb25seSQgfCBhc3luYykgPT09IHRydWVcIlxuICAgIGNsYXNzPVwiaW5uZXItY29udHJvbFwiXG4gICAgW2N1c3RvbUZpZWxkXT1cImNvbnRleHQ/Ll90eXBlQ29tYm9Db250cm9sXCJcbj48L2JucmMtZmllbGQtdWk+XG48Ym5yYy1maWVsZC11aVxuICAgIFtjbGFzcy5jb250cm9sLWRpc2FibGVkXT1cIihkaXNhYmxlT3JSZWFkb25seSQgfCBhc3luYykgPT09IHRydWVcIlxuICAgIGNsYXNzPVwiaW5uZXItY29udHJvbFwiXG4gICAgW2N1c3RvbUZpZWxkXT1cImNvbnRleHQ/Ll9vYmplY3RDb21ib0NvbnRyb2xcIlxuPjwvYm5yYy1maWVsZC11aT5cbiJdfQ==