qms-angular 1.0.56 → 1.0.57

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 (449) hide show
  1. package/bundles/qms-angular.umd.js +22071 -13193
  2. package/bundles/qms-angular.umd.js.map +1 -1
  3. package/esm2015/lib/components/app-icon/app-icon.module.js +29 -16
  4. package/esm2015/lib/components/app-icon/icon-registry.service.js +9 -7
  5. package/esm2015/lib/components/badges/qms-badges.component.js +24 -15
  6. package/esm2015/lib/components/badges/qms-badges.module.js +33 -18
  7. package/esm2015/lib/components/banner/qms-banner/qms-banner.component.js +28 -16
  8. package/esm2015/lib/components/banner/qms-banner/qms-banner.module.js +36 -19
  9. package/esm2015/lib/components/banner/qms-banner-confirm/qms-banner-confirm.component.js +28 -16
  10. package/esm2015/lib/components/banner/qms-banner-confirm/qms-banner-confirm.module.js +36 -19
  11. package/esm2015/lib/components/banner/qms-banner-loading/qms-banner-loading.component.js +19 -13
  12. package/esm2015/lib/components/banner/qms-banner-loading/qms-banner-loading.module.js +30 -17
  13. package/esm2015/lib/components/breadcrumb/breadcrumb-direction-icon.directive.js +11 -10
  14. package/esm2015/lib/components/breadcrumb/breadcrumb-item.directive.js +20 -17
  15. package/esm2015/lib/components/breadcrumb/breadcrumb.js +40 -28
  16. package/esm2015/lib/components/breadcrumb/breadcrumb.module.js +50 -26
  17. package/esm2015/lib/components/button/button-toggle.js +120 -85
  18. package/esm2015/lib/components/button/button.js +86 -78
  19. package/esm2015/lib/components/button/button.module.js +51 -27
  20. package/esm2015/lib/components/comment/comment.js +29 -18
  21. package/esm2015/lib/components/dialog/dialog.js +38 -28
  22. package/esm2015/lib/components/edit-file-name-dialog/edit-file-name-dialog.js +24 -16
  23. package/esm2015/lib/components/edit-file-name-dialog/edit-file-name-dialog.module.js +71 -31
  24. package/esm2015/lib/components/list/list.js +101 -89
  25. package/esm2015/lib/components/list/list.module.js +94 -50
  26. package/esm2015/lib/components/qms-app-bar/qms-app-bar.component.js +55 -29
  27. package/esm2015/lib/components/qms-app-bar/qms-app-bar.module.js +39 -20
  28. package/esm2015/lib/components/qms-stepper/qms-stepper.component.js +32 -22
  29. package/esm2015/lib/components/qms-stepper/qms-stepper.module.js +35 -25
  30. package/esm2015/lib/components/related/content/related-content.component.js +19 -12
  31. package/esm2015/lib/components/related/list-other-related/list-related.component.js +29 -25
  32. package/esm2015/lib/components/related/model/popup-data.model.js +1 -1
  33. package/esm2015/lib/components/related/popup/related-popup.component.js +54 -42
  34. package/esm2015/lib/components/related/related.module.js +96 -43
  35. package/esm2015/lib/components/related/risk/analysis/analysis.component.js +23 -17
  36. package/esm2015/lib/components/related/risk/list/list.component.js +22 -18
  37. package/esm2015/lib/components/related/risk/result/result.component.js +23 -16
  38. package/esm2015/lib/components/related/service/related-global.service.js +7 -6
  39. package/esm2015/lib/components/related/sidenav/sidenav.component.js +21 -12
  40. package/esm2015/lib/components/reports/qms-report-content-portrait/qms-report-content-portrait.component.js +22 -18
  41. package/esm2015/lib/components/reports/qms-report-cover-portrait/qms-report-cover-portrait.component.js +22 -18
  42. package/esm2015/lib/components/reports/qms-reports.module.js +29 -20
  43. package/esm2015/lib/components/rich-text/rich-text.js +47 -32
  44. package/esm2015/lib/components/rich-text/rich-text.module.js +35 -21
  45. package/esm2015/lib/components/select-dialog/select-dialog.js +31 -16
  46. package/esm2015/lib/components/select-include-children/enum/select-option-type.enum.js +7 -0
  47. package/esm2015/lib/components/select-include-children/model/select-option.model.js +1 -1
  48. package/esm2015/lib/components/select-include-children/model/select-popup-data.model.js +1 -1
  49. package/esm2015/lib/components/select-include-children/model/select-search-option.model.js +4 -0
  50. package/esm2015/lib/components/select-include-children/model/seleted-option.model.js +3 -0
  51. package/esm2015/lib/components/select-include-children/select-include-children.component.js +449 -347
  52. package/esm2015/lib/components/select-include-children/select-include-children.module.js +78 -33
  53. package/esm2015/lib/components/select-include-children/services/select-global.service.js +9 -12
  54. package/esm2015/lib/components/select-one/common/data-type.enum.js +14 -0
  55. package/esm2015/lib/components/select-one/common/document-folder-type.enum.js +12 -0
  56. package/esm2015/lib/components/select-one/common/module-type.enum.js +8 -0
  57. package/esm2015/lib/components/select-one/common/select-data.model.js +3 -0
  58. package/esm2015/lib/components/select-one/common/selected-node.model.js +3 -0
  59. package/esm2015/lib/components/select-one/common/selectone-popup-data.model.js +11 -0
  60. package/esm2015/lib/components/select-one/common/show-hide-search-result.const.js +6 -0
  61. package/esm2015/lib/components/select-one/index.js +2 -0
  62. package/esm2015/lib/components/select-one/public_api.js +7 -0
  63. package/esm2015/lib/components/select-one/select-one.component.js +359 -0
  64. package/esm2015/lib/components/select-one/select-one.module.js +94 -0
  65. package/esm2015/lib/components/select-one/service/select-one-global.service.js +18 -0
  66. package/esm2015/lib/components/suffix-field/suffix-field.directive.js +22 -21
  67. package/esm2015/lib/components/table/table-action.js +31 -31
  68. package/esm2015/lib/components/table/table.module.js +37 -21
  69. package/esm2015/lib/components/test-only/test-only.component.js +14 -11
  70. package/esm2015/lib/components/tooltip/tooltip.js +24 -19
  71. package/esm2015/lib/components/tooltip/tooltip.module.js +38 -20
  72. package/esm2015/lib/components/tree/tree.component.js +99 -35
  73. package/esm2015/lib/components/tree/tree.module.js +69 -30
  74. package/esm2015/lib/components/upload-file-error-dialog/upload-file-error-dialog.js +22 -16
  75. package/esm2015/lib/components/upload-file-error-dialog/upload-file-error-dialog.module.js +71 -31
  76. package/esm2015/lib/directives/chip-input/chip-input-chip-list.directive.js +13 -13
  77. package/esm2015/lib/directives/chip-input/chip-input-field.directive.js +11 -10
  78. package/esm2015/lib/directives/chip-input/chip-input-select-dropdown.directive.js +11 -10
  79. package/esm2015/lib/directives/chip-input/chip-input-select-field.directive.js +17 -14
  80. package/esm2015/lib/directives/chip-input/chip-input-select-trigger.directive.js +14 -13
  81. package/esm2015/lib/directives/chips/chip-body.directive.js +11 -10
  82. package/esm2015/lib/directives/chips/chip.directive.js +13 -13
  83. package/esm2015/lib/directives/dropdown-menu/dropdown-item.directive.js +16 -14
  84. package/esm2015/lib/directives/file-upload/file-upload-attachment-list.directive.js +11 -10
  85. package/esm2015/lib/directives/file-upload/file-upload-display.directive.js +19 -16
  86. package/esm2015/lib/directives/file-upload/file-upload-multiple-display.directive.js +16 -14
  87. package/esm2015/lib/directives/file-upload/file-upload-multiple-selector.directive.js +26 -20
  88. package/esm2015/lib/directives/file-upload/file-upload-multiple.directive.js +19 -15
  89. package/esm2015/lib/directives/file-upload/file-upload-scrollable-attachment-list.directive.js +11 -10
  90. package/esm2015/lib/directives/file-upload/file-upload-selector.directive.js +25 -18
  91. package/esm2015/lib/directives/file-upload/file-upload.directive.js +24 -20
  92. package/esm2015/lib/directives/form.directive.js +48 -51
  93. package/esm2015/lib/directives/margin.directive.js +15 -14
  94. package/esm2015/lib/directives/range-slider/range-slider-lockup.directive.js +11 -10
  95. package/esm2015/lib/directives/range-slider/range-slider.directive.js +17 -14
  96. package/esm2015/lib/directives/scroll-selected/scroll-to-selected.directive.js +16 -15
  97. package/esm2015/lib/directives/scrollbar/scrollbar.directive.js +13 -13
  98. package/esm2015/lib/directives/search-field.directive.js +21 -22
  99. package/esm2015/lib/directives/side-sheet/drawer-content.directive.js +11 -10
  100. package/esm2015/lib/directives/side-sheet/drawer-header-action.directive.js +11 -10
  101. package/esm2015/lib/directives/side-sheet/drawer-header.directive.js +11 -10
  102. package/esm2015/lib/directives/side-sheet/drawer.directive.js +11 -10
  103. package/esm2015/lib/directives/tab/tab-group-advanced.directive.js +15 -14
  104. package/esm2015/lib/directives/tab/tab-group.directive.js +11 -10
  105. package/esm2015/lib/directives/tab/tab-label.directive.js +11 -10
  106. package/esm2015/lib/directives/text-block/text-block-line.directive.js +20 -16
  107. package/esm2015/lib/directives/text-block/text-block.directive.js +17 -14
  108. package/esm2015/lib/directives/tooltip/tooltip-image.directive.js +14 -13
  109. package/esm2015/lib/directives/tooltip/tooltip-renderer.directive.js +35 -22
  110. package/esm2015/lib/material-module.js +35 -16
  111. package/esm2015/lib/model/en.js +35 -4
  112. package/esm2015/lib/model/no.js +34 -3
  113. package/esm2015/lib/pipe/dateFormat.pipe.js +11 -10
  114. package/esm2015/lib/qms-angular.component.js +13 -11
  115. package/esm2015/lib/qms-angular.module.js +232 -121
  116. package/esm2015/lib/qms-angular.service.js +9 -8
  117. package/esm2015/lib/qms-ckeditor-components/common/bpmn/toolbar.function.js +32 -12
  118. package/esm2015/lib/qms-ckeditor-components/common/constants/ckeditorEvent.constant.js +5 -1
  119. package/esm2015/lib/qms-ckeditor-components/common/constants/ckeditorFlowchart.const.js +10 -1
  120. package/esm2015/lib/qms-ckeditor-components/common/constants/ckeditorLink.constant.js +7 -0
  121. package/esm2015/lib/qms-ckeditor-components/common/enums/document-type.enum.js +2 -1
  122. package/esm2015/lib/qms-ckeditor-components/common/enums/shape-flow-chart-connection-type.js +8 -0
  123. package/esm2015/lib/qms-ckeditor-components/common/flowchart/sample/sample-graphs.js +16 -0
  124. package/esm2015/lib/qms-ckeditor-components/common/flowchart/service/halo-service.js +105 -0
  125. package/esm2015/lib/qms-ckeditor-components/common/flowchart/service/inspector-service.js +3762 -0
  126. package/esm2015/lib/qms-ckeditor-components/common/flowchart/service/keyboard-service.js +68 -0
  127. package/esm2015/lib/qms-ckeditor-components/common/flowchart/service/kitchensink-service.js +372 -0
  128. package/esm2015/lib/qms-ckeditor-components/common/flowchart/service/stencil-service.js +1041 -0
  129. package/esm2015/lib/qms-ckeditor-components/common/flowchart/service/toolbar-service.js +326 -0
  130. package/esm2015/lib/qms-ckeditor-components/common/flowchart/shapes/app-shapes.js +318 -0
  131. package/esm2015/lib/qms-ckeditor-components/common/flowchart/themes/theme-picker.js +80 -0
  132. package/esm2015/lib/qms-ckeditor-components/common/functions/common.function.js +2 -2
  133. package/esm2015/lib/qms-ckeditor-components/common/models/qms-ckeditor-flowchart-template.model.js +9 -0
  134. package/esm2015/lib/qms-ckeditor-components/common/models/qms-ckeditor-flowchart.model.js +9 -0
  135. package/esm2015/lib/qms-ckeditor-components/common/models/qms-ckeditor-save-as-template.model.js +3 -0
  136. package/esm2015/lib/qms-ckeditor-components/common/module/confirm/qms-ckeditor-confirm.component.js +23 -16
  137. package/esm2015/lib/qms-ckeditor-components/common/module/tree/qms-ckeditor-tree.component.js +34 -19
  138. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-about/qms-ckeditor-about.component.js +43 -0
  139. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-bpmn/qms-ckeditor-bpmn.component.js +577 -53
  140. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-bpmn/save-template/save-template.component.js +69 -35
  141. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-flowchart/qms-ckeditor-flowchart.component.js +322 -0
  142. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-fullscreen/qms-ckeditor-fullscreen.component.js +12 -8
  143. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-imagemap/qms-ckeditor-imagemap.component.js +39 -30
  144. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-link/attachments/link-attachment.component.js +22 -18
  145. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-link/qms-ckeditor-link.component.js +29 -20
  146. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-load-template/qms-ckeditor-load-template.component.js +22 -18
  147. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-relation/qmsckeditor-related.component.js +35 -23
  148. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-template/qms-ckeditor-template.component.js +30 -20
  149. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-tooltip/qms-ckeditor-tooltip.component.js +27 -18
  150. package/esm2015/lib/qms-ckeditor-components/models/qms-ckeditor-bpmn-data.model.js +8 -0
  151. package/esm2015/lib/qms-ckeditor-components/qms-ckeditor-base.component.js +7 -4
  152. package/esm2015/lib/qms-ckeditor-components/qms-ckeditor.component.js +118 -44
  153. package/esm2015/lib/qms-ckeditor-components/qms-ckeditor.module.js +131 -55
  154. package/esm2015/lib/qms-ckeditor-components/services/qms-ckeditor-base.service.js +10 -10
  155. package/esm2015/lib/qms-ckeditor-components/services/qms-ckeditor-bpmn-api.service.js +9 -9
  156. package/esm2015/lib/qms-ckeditor-components/services/qms-ckeditor-bpmn.service.js +66 -26
  157. package/esm2015/lib/qms-ckeditor-components/services/qms-ckeditor-flowchart.service.js +26 -0
  158. package/esm2015/lib/qms-ckeditor-components/services/qms-ckeditor-global.service.js +9 -8
  159. package/esm2015/lib/qms-ckeditor-components/services/qms-ckeditor-link.service.js +9 -9
  160. package/esm2015/lib/qms-ckeditor-components/services/qms-ckeditor-tree.service.js +9 -9
  161. package/esm2015/lib/qms-ckeditor-components/services/qms-ckedtior-template.service.js +9 -9
  162. package/esm2015/lib/services/translation-registry.service.js +9 -8
  163. package/esm2015/lib/shared.module.js +9 -4
  164. package/esm2015/public-api.js +20 -1
  165. package/esm2015/qms-angular.js +1 -9
  166. package/fesm2015/qms-angular.js +14918 -6210
  167. package/fesm2015/qms-angular.js.map +1 -1
  168. package/lib/components/app-icon/app-icon.module.d.ts +7 -0
  169. package/lib/components/app-icon/icon-registry.service.d.ts +3 -0
  170. package/lib/components/badges/qms-badges.component.d.ts +3 -0
  171. package/lib/components/badges/qms-badges.module.d.ts +9 -0
  172. package/lib/components/banner/qms-banner/qms-banner.component.d.ts +3 -0
  173. package/lib/components/banner/qms-banner/qms-banner.module.d.ts +10 -0
  174. package/lib/components/banner/qms-banner-confirm/qms-banner-confirm.component.d.ts +3 -0
  175. package/lib/components/banner/qms-banner-confirm/qms-banner-confirm.module.d.ts +10 -0
  176. package/lib/components/banner/qms-banner-loading/qms-banner-loading.component.d.ts +3 -0
  177. package/lib/components/banner/qms-banner-loading/qms-banner-loading.module.d.ts +8 -0
  178. package/lib/components/breadcrumb/breadcrumb-direction-icon.directive.d.ts +3 -0
  179. package/lib/components/breadcrumb/breadcrumb-item.directive.d.ts +3 -0
  180. package/lib/components/breadcrumb/breadcrumb.d.ts +3 -0
  181. package/lib/components/breadcrumb/breadcrumb.module.d.ts +13 -0
  182. package/lib/components/button/button-toggle.d.ts +5 -0
  183. package/lib/components/button/button.d.ts +7 -0
  184. package/lib/components/button/button.module.d.ts +9 -0
  185. package/lib/components/comment/comment.d.ts +3 -0
  186. package/lib/components/dialog/dialog.d.ts +5 -0
  187. package/lib/components/edit-file-name-dialog/edit-file-name-dialog.d.ts +3 -0
  188. package/lib/components/edit-file-name-dialog/edit-file-name-dialog.module.d.ts +16 -0
  189. package/lib/components/list/list.d.ts +15 -0
  190. package/lib/components/list/list.module.d.ts +11 -0
  191. package/lib/components/qms-app-bar/qms-app-bar.component.d.ts +3 -0
  192. package/lib/components/qms-app-bar/qms-app-bar.module.d.ts +12 -0
  193. package/lib/components/qms-stepper/qms-stepper.component.d.ts +3 -0
  194. package/lib/components/qms-stepper/qms-stepper.module.d.ts +8 -0
  195. package/lib/components/related/content/related-content.component.d.ts +3 -0
  196. package/lib/components/related/list-other-related/list-related.component.d.ts +3 -0
  197. package/lib/components/related/model/popup-data.model.d.ts +0 -1
  198. package/lib/components/related/popup/related-popup.component.d.ts +7 -5
  199. package/lib/components/related/related.module.d.ts +29 -0
  200. package/lib/components/related/risk/analysis/analysis.component.d.ts +3 -0
  201. package/lib/components/related/risk/list/list.component.d.ts +3 -0
  202. package/lib/components/related/risk/result/result.component.d.ts +3 -0
  203. package/lib/components/related/service/related-global.service.d.ts +3 -0
  204. package/lib/components/related/sidenav/sidenav.component.d.ts +3 -0
  205. package/lib/components/reports/qms-report-content-portrait/qms-report-content-portrait.component.d.ts +3 -0
  206. package/lib/components/reports/qms-report-cover-portrait/qms-report-cover-portrait.component.d.ts +3 -0
  207. package/lib/components/reports/qms-reports.module.d.ts +7 -0
  208. package/lib/components/rich-text/rich-text.d.ts +3 -0
  209. package/lib/components/rich-text/rich-text.module.d.ts +8 -0
  210. package/lib/components/select-dialog/select-dialog.d.ts +3 -0
  211. package/lib/components/select-include-children/enum/select-option-type.enum.d.ts +5 -0
  212. package/lib/components/select-include-children/model/select-option.model.d.ts +2 -0
  213. package/lib/components/select-include-children/model/select-popup-data.model.d.ts +4 -0
  214. package/lib/components/select-include-children/model/select-search-option.model.d.ts +7 -0
  215. package/lib/components/select-include-children/model/seleted-option.model.d.ts +15 -0
  216. package/lib/components/select-include-children/select-include-children.component.d.ts +35 -18
  217. package/lib/components/select-include-children/select-include-children.module.d.ts +25 -0
  218. package/lib/components/select-include-children/services/select-global.service.d.ts +6 -5
  219. package/lib/components/select-one/common/data-type.enum.d.ts +12 -0
  220. package/lib/components/select-one/common/document-folder-type.enum.d.ts +10 -0
  221. package/lib/components/select-one/common/module-type.enum.d.ts +6 -0
  222. package/lib/components/select-one/common/select-data.model.d.ts +12 -0
  223. package/lib/components/select-one/common/selected-node.model.d.ts +12 -0
  224. package/lib/components/select-one/common/selectone-popup-data.model.d.ts +12 -0
  225. package/lib/components/select-one/common/show-hide-search-result.const.d.ts +5 -0
  226. package/lib/components/select-one/index.d.ts +1 -0
  227. package/lib/components/select-one/public_api.d.ts +6 -0
  228. package/lib/components/select-one/select-one.component.d.ts +80 -0
  229. package/lib/components/select-one/select-one.module.d.ts +25 -0
  230. package/lib/components/select-one/service/select-one-global.service.d.ts +10 -0
  231. package/lib/components/suffix-field/suffix-field.directive.d.ts +5 -0
  232. package/lib/components/table/table-action.d.ts +5 -0
  233. package/lib/components/table/table.module.d.ts +8 -0
  234. package/lib/components/test-only/test-only.component.d.ts +3 -0
  235. package/lib/components/tooltip/tooltip.d.ts +3 -0
  236. package/lib/components/tooltip/tooltip.module.d.ts +9 -0
  237. package/lib/components/tree/tree.component.d.ts +7 -0
  238. package/lib/components/tree/tree.module.d.ts +22 -0
  239. package/lib/components/upload-file-error-dialog/upload-file-error-dialog.d.ts +3 -0
  240. package/lib/components/upload-file-error-dialog/upload-file-error-dialog.module.d.ts +16 -0
  241. package/lib/directives/chip-input/chip-input-chip-list.directive.d.ts +3 -0
  242. package/lib/directives/chip-input/chip-input-field.directive.d.ts +3 -0
  243. package/lib/directives/chip-input/chip-input-select-dropdown.directive.d.ts +3 -0
  244. package/lib/directives/chip-input/chip-input-select-field.directive.d.ts +3 -0
  245. package/lib/directives/chip-input/chip-input-select-trigger.directive.d.ts +3 -0
  246. package/lib/directives/chips/chip-body.directive.d.ts +3 -0
  247. package/lib/directives/chips/chip.directive.d.ts +3 -0
  248. package/lib/directives/dropdown-menu/dropdown-item.directive.d.ts +3 -0
  249. package/lib/directives/file-upload/file-upload-attachment-list.directive.d.ts +3 -0
  250. package/lib/directives/file-upload/file-upload-display.directive.d.ts +3 -0
  251. package/lib/directives/file-upload/file-upload-multiple-display.directive.d.ts +3 -0
  252. package/lib/directives/file-upload/file-upload-multiple-selector.directive.d.ts +3 -0
  253. package/lib/directives/file-upload/file-upload-multiple.directive.d.ts +3 -0
  254. package/lib/directives/file-upload/file-upload-scrollable-attachment-list.directive.d.ts +3 -0
  255. package/lib/directives/file-upload/file-upload-selector.directive.d.ts +3 -0
  256. package/lib/directives/file-upload/file-upload.directive.d.ts +5 -0
  257. package/lib/directives/form.directive.d.ts +11 -0
  258. package/lib/directives/margin.directive.d.ts +3 -0
  259. package/lib/directives/range-slider/range-slider-lockup.directive.d.ts +3 -0
  260. package/lib/directives/range-slider/range-slider.directive.d.ts +3 -0
  261. package/lib/directives/scroll-selected/scroll-to-selected.directive.d.ts +3 -0
  262. package/lib/directives/scrollbar/scrollbar.directive.d.ts +3 -0
  263. package/lib/directives/search-field.directive.d.ts +5 -0
  264. package/lib/directives/side-sheet/drawer-content.directive.d.ts +3 -0
  265. package/lib/directives/side-sheet/drawer-header-action.directive.d.ts +3 -0
  266. package/lib/directives/side-sheet/drawer-header.directive.d.ts +3 -0
  267. package/lib/directives/side-sheet/drawer.directive.d.ts +3 -0
  268. package/lib/directives/tab/tab-group-advanced.directive.d.ts +3 -0
  269. package/lib/directives/tab/tab-group.directive.d.ts +3 -0
  270. package/lib/directives/tab/tab-label.directive.d.ts +3 -0
  271. package/lib/directives/text-block/text-block-line.directive.d.ts +3 -0
  272. package/lib/directives/text-block/text-block.directive.d.ts +3 -0
  273. package/lib/directives/tooltip/tooltip-image.directive.d.ts +3 -0
  274. package/lib/directives/tooltip/tooltip-renderer.directive.d.ts +3 -0
  275. package/lib/material-module.d.ts +12 -0
  276. package/lib/model/en.d.ts +31 -0
  277. package/lib/model/no.d.ts +31 -0
  278. package/lib/pipe/dateFormat.pipe.d.ts +3 -0
  279. package/lib/qms-angular.component.d.ts +3 -0
  280. package/lib/qms-angular.module.d.ts +49 -0
  281. package/lib/qms-angular.service.d.ts +3 -0
  282. package/lib/qms-ckeditor-components/common/bpmn/toolbar.function.d.ts +2 -2
  283. package/lib/qms-ckeditor-components/common/constants/ckeditorEvent.constant.d.ts +4 -0
  284. package/lib/qms-ckeditor-components/common/constants/ckeditorFlowchart.const.d.ts +9 -0
  285. package/lib/qms-ckeditor-components/common/constants/ckeditorLink.constant.d.ts +6 -0
  286. package/lib/qms-ckeditor-components/common/enums/document-type.enum.d.ts +1 -0
  287. package/lib/qms-ckeditor-components/common/enums/shape-flow-chart-connection-type.d.ts +6 -0
  288. package/lib/qms-ckeditor-components/common/flowchart/sample/sample-graphs.d.ts +14 -0
  289. package/lib/qms-ckeditor-components/common/flowchart/service/halo-service.d.ts +48 -0
  290. package/lib/qms-ckeditor-components/common/flowchart/service/inspector-service.d.ts +18 -0
  291. package/lib/qms-ckeditor-components/common/flowchart/service/keyboard-service.d.ts +17 -0
  292. package/lib/qms-ckeditor-components/common/flowchart/service/kitchensink-service.d.ts +62 -0
  293. package/lib/qms-ckeditor-components/common/flowchart/service/stencil-service.d.ts +1183 -0
  294. package/lib/qms-ckeditor-components/common/flowchart/service/toolbar-service.d.ts +216 -0
  295. package/lib/qms-ckeditor-components/common/flowchart/shapes/app-shapes.d.ts +61 -0
  296. package/lib/qms-ckeditor-components/common/flowchart/themes/theme-picker.d.ts +36 -0
  297. package/lib/qms-ckeditor-components/common/models/qms-ckeditor-flowchart-template.model.d.ts +7 -0
  298. package/lib/qms-ckeditor-components/common/models/qms-ckeditor-flowchart.model.d.ts +7 -0
  299. package/lib/qms-ckeditor-components/common/models/qms-ckeditor-save-as-template.model.d.ts +7 -0
  300. package/lib/qms-ckeditor-components/common/module/confirm/qms-ckeditor-confirm.component.d.ts +3 -0
  301. package/lib/qms-ckeditor-components/common/module/tree/qms-ckeditor-tree.component.d.ts +3 -0
  302. package/lib/qms-ckeditor-components/components/qms-ckeditor-about/qms-ckeditor-about.component.d.ts +18 -0
  303. package/lib/qms-ckeditor-components/components/qms-ckeditor-bpmn/qms-ckeditor-bpmn.component.d.ts +88 -4
  304. package/lib/qms-ckeditor-components/components/qms-ckeditor-bpmn/save-template/save-template.component.d.ts +11 -2
  305. package/lib/qms-ckeditor-components/components/qms-ckeditor-flowchart/qms-ckeditor-flowchart.component.d.ts +44 -0
  306. package/lib/qms-ckeditor-components/components/qms-ckeditor-fullscreen/qms-ckeditor-fullscreen.component.d.ts +3 -0
  307. package/lib/qms-ckeditor-components/components/qms-ckeditor-imagemap/qms-ckeditor-imagemap.component.d.ts +3 -0
  308. package/lib/qms-ckeditor-components/components/qms-ckeditor-link/attachments/link-attachment.component.d.ts +3 -0
  309. package/lib/qms-ckeditor-components/components/qms-ckeditor-link/qms-ckeditor-link.component.d.ts +3 -0
  310. package/lib/qms-ckeditor-components/components/qms-ckeditor-load-template/qms-ckeditor-load-template.component.d.ts +3 -0
  311. package/lib/qms-ckeditor-components/components/qms-ckeditor-relation/qmsckeditor-related.component.d.ts +4 -0
  312. package/lib/qms-ckeditor-components/components/qms-ckeditor-template/qms-ckeditor-template.component.d.ts +3 -0
  313. package/lib/qms-ckeditor-components/components/qms-ckeditor-tooltip/qms-ckeditor-tooltip.component.d.ts +3 -0
  314. package/lib/qms-ckeditor-components/models/qms-ckeditor-bpmn-data.model.d.ts +7 -0
  315. package/lib/qms-ckeditor-components/qms-ckeditor-base.component.d.ts +3 -0
  316. package/lib/qms-ckeditor-components/qms-ckeditor.component.d.ts +8 -0
  317. package/lib/qms-ckeditor-components/qms-ckeditor.module.d.ts +44 -0
  318. package/lib/qms-ckeditor-components/services/qms-ckeditor-base.service.d.ts +3 -0
  319. package/lib/qms-ckeditor-components/services/qms-ckeditor-bpmn-api.service.d.ts +3 -0
  320. package/lib/qms-ckeditor-components/services/qms-ckeditor-bpmn.service.d.ts +4 -0
  321. package/lib/qms-ckeditor-components/services/qms-ckeditor-flowchart.service.d.ts +13 -0
  322. package/lib/qms-ckeditor-components/services/qms-ckeditor-global.service.d.ts +3 -0
  323. package/lib/qms-ckeditor-components/services/qms-ckeditor-link.service.d.ts +3 -0
  324. package/lib/qms-ckeditor-components/services/qms-ckeditor-tree.service.d.ts +3 -0
  325. package/lib/qms-ckeditor-components/services/qms-ckedtior-template.service.d.ts +3 -0
  326. package/lib/services/translation-registry.service.d.ts +3 -0
  327. package/lib/shared.module.d.ts +4 -0
  328. package/lib.theme.scss +8 -0
  329. package/package.json +1 -2
  330. package/public-api.d.ts +18 -0
  331. package/qms-angular.d.ts +1 -8
  332. package/src/assets/images/ckeditor5.svg +1 -0
  333. package/src/assets/jointjs/fonts/Alegreya_Sans/AlegreyaSans-Bold.ttf +0 -0
  334. package/src/assets/jointjs/fonts/Alegreya_Sans/AlegreyaSans-Light.ttf +0 -0
  335. package/src/assets/jointjs/fonts/Alegreya_Sans/AlegreyaSans-Regular.ttf +0 -0
  336. package/src/assets/jointjs/fonts/Alegreya_Sans/OFL.txt +92 -0
  337. package/src/assets/jointjs/fonts/Averia_Libre/AveriaLibre-Bold.ttf +0 -0
  338. package/src/assets/jointjs/fonts/Averia_Libre/AveriaLibre-Light.ttf +0 -0
  339. package/src/assets/jointjs/fonts/Averia_Libre/AveriaLibre-Regular.ttf +0 -0
  340. package/src/assets/jointjs/fonts/Averia_Libre/OFL.txt +93 -0
  341. package/src/assets/jointjs/fonts/Roboto_Condensed/LICENSE.txt +202 -0
  342. package/src/assets/jointjs/fonts/Roboto_Condensed/RobotoCondensed-Bold.ttf +0 -0
  343. package/src/assets/jointjs/fonts/Roboto_Condensed/RobotoCondensed-Light.ttf +0 -0
  344. package/src/assets/jointjs/fonts/Roboto_Condensed/RobotoCondensed-Regular.ttf +0 -0
  345. package/src/assets/jointjs/images/delete-icon-modern.png +0 -0
  346. package/src/assets/jointjs/images/image-icon1.svg +1 -0
  347. package/src/assets/jointjs/images/image-icon2.svg +6 -0
  348. package/src/assets/jointjs/images/image-icon3.svg +11 -0
  349. package/src/assets/jointjs/images/image-icon4.svg +8 -0
  350. package/src/assets/jointjs/images/member-female.png +0 -0
  351. package/src/assets/jointjs/images/member-male.png +0 -0
  352. package/src/assets/jointjs/images/no-color-icon.svg +72 -0
  353. package/src/assets/jointjs/images/reset-icon-modern.png +0 -0
  354. package/src/assets/jointjs/images/save-icon-modern.png +0 -0
  355. package/src/assets/jointjs/images/to-front-icon-modern.png +0 -0
  356. package/src/assets/jointjs/images/toback-icon-modern.png +0 -0
  357. package/src/assets/jointjs/images/toolbar-icons-dark.woff +0 -0
  358. package/src/assets/jointjs/images/toolbar-icons-material.png +0 -0
  359. package/src/assets/jointjs/images/toolbar-icons-modern.png +0 -0
  360. package/src/assets/jointjs/images/transparent-icon.svg +50 -0
  361. package/src/assets/jointjs/scss/bpmn.scss +36 -35
  362. package/src/assets/jointjs/scss/style.dark.scss +233 -0
  363. package/src/assets/jointjs/scss/style.material.scss +234 -0
  364. package/src/assets/jointjs/scss/style.modern.scss +225 -0
  365. package/src/assets/jointjs/scss/style.scss +216 -0
  366. package/src/assets/jointjs/scss/theme-picker.scss +21 -0
  367. package/src/assets/qms-ckeditor-plugin/build/ckeditor.js +1 -1
  368. package/src/assets/qms-ckeditor-plugin/build/ckeditor.js.map +1 -1
  369. package/src/assets/qms-ckeditor-plugin/build/translations/ar.js +1 -1
  370. package/src/assets/qms-ckeditor-plugin/build/translations/az.js +1 -1
  371. package/src/assets/qms-ckeditor-plugin/build/translations/bg.js +1 -1
  372. package/src/assets/qms-ckeditor-plugin/build/translations/cs.js +1 -1
  373. package/src/assets/qms-ckeditor-plugin/build/translations/da.js +1 -1
  374. package/src/assets/qms-ckeditor-plugin/build/translations/de-ch.js +1 -1
  375. package/src/assets/qms-ckeditor-plugin/build/translations/de.js +1 -1
  376. package/src/assets/qms-ckeditor-plugin/build/translations/en-au.js +1 -1
  377. package/src/assets/qms-ckeditor-plugin/build/translations/en-gb.js +1 -1
  378. package/src/assets/qms-ckeditor-plugin/build/translations/es.js +1 -1
  379. package/src/assets/qms-ckeditor-plugin/build/translations/et.js +1 -1
  380. package/src/assets/qms-ckeditor-plugin/build/translations/fa.js +1 -1
  381. package/src/assets/qms-ckeditor-plugin/build/translations/fi.js +1 -1
  382. package/src/assets/qms-ckeditor-plugin/build/translations/fr.js +1 -1
  383. package/src/assets/qms-ckeditor-plugin/build/translations/gl.js +1 -1
  384. package/src/assets/qms-ckeditor-plugin/build/translations/he.js +1 -1
  385. package/src/assets/qms-ckeditor-plugin/build/translations/hi.js +1 -1
  386. package/src/assets/qms-ckeditor-plugin/build/translations/hr.js +1 -1
  387. package/src/assets/qms-ckeditor-plugin/build/translations/hu.js +1 -1
  388. package/src/assets/qms-ckeditor-plugin/build/translations/id.js +1 -1
  389. package/src/assets/qms-ckeditor-plugin/build/translations/it.js +1 -1
  390. package/src/assets/qms-ckeditor-plugin/build/translations/ja.js +1 -1
  391. package/src/assets/qms-ckeditor-plugin/build/translations/ko.js +1 -1
  392. package/src/assets/qms-ckeditor-plugin/build/translations/ku.js +1 -1
  393. package/src/assets/qms-ckeditor-plugin/build/translations/lt.js +1 -1
  394. package/src/assets/qms-ckeditor-plugin/build/translations/lv.js +1 -1
  395. package/src/assets/qms-ckeditor-plugin/build/translations/nb.js +1 -1
  396. package/src/assets/qms-ckeditor-plugin/build/translations/ne.js +1 -1
  397. package/src/assets/qms-ckeditor-plugin/build/translations/nl.js +1 -1
  398. package/src/assets/qms-ckeditor-plugin/build/translations/no.js +1 -1
  399. package/src/assets/qms-ckeditor-plugin/build/translations/pl.js +1 -1
  400. package/src/assets/qms-ckeditor-plugin/build/translations/pt-br.js +1 -1
  401. package/src/assets/qms-ckeditor-plugin/build/translations/ro.js +1 -1
  402. package/src/assets/qms-ckeditor-plugin/build/translations/ru.js +1 -1
  403. package/src/assets/qms-ckeditor-plugin/build/translations/sk.js +1 -1
  404. package/src/assets/qms-ckeditor-plugin/build/translations/sl.js +1 -1
  405. package/src/assets/qms-ckeditor-plugin/build/translations/sq.js +1 -1
  406. package/src/assets/qms-ckeditor-plugin/build/translations/sr-latn.js +1 -1
  407. package/src/assets/qms-ckeditor-plugin/build/translations/sr.js +1 -1
  408. package/src/assets/qms-ckeditor-plugin/build/translations/sv.js +1 -1
  409. package/src/assets/qms-ckeditor-plugin/build/translations/th.js +1 -1
  410. package/src/assets/qms-ckeditor-plugin/build/translations/tk.js +1 -1
  411. package/src/assets/qms-ckeditor-plugin/build/translations/tr.js +1 -1
  412. package/src/assets/qms-ckeditor-plugin/build/translations/ug.js +1 -1
  413. package/src/assets/qms-ckeditor-plugin/build/translations/uk.js +1 -1
  414. package/src/assets/qms-ckeditor-plugin/build/translations/vi.js +1 -1
  415. package/src/assets/qms-ckeditor-plugin/build/translations/zh-cn.js +1 -1
  416. package/src/assets/qms-ckeditor-plugin/build/translations/zh.js +1 -1
  417. package/src/assets/qms-ckeditor-plugin/package-lock.json +17 -12177
  418. package/src/assets/qms-ckeditor-plugin/package.json +1 -0
  419. package/src/assets/qms-ckeditor-plugin/src/ckeditor.js +22 -3
  420. package/src/assets/qms-ckeditor-plugin/src/plugins/aboutckeditor/aboutckeditor.js +28 -0
  421. package/src/assets/qms-ckeditor-plugin/src/plugins/bpmn/qmsCKEditorBpmnPlugin.js +24 -5
  422. package/src/assets/qms-ckeditor-plugin/src/plugins/common/qmsCKEditorConstant.js +7 -1
  423. package/src/assets/qms-ckeditor-plugin/src/plugins/common/qmsCKEditorService.js +20 -0
  424. package/src/assets/qms-ckeditor-plugin/src/plugins/flowchart/qmsCKEditorFlowchartPlugin.js +63 -0
  425. package/src/assets/qms-ckeditor-plugin/src/plugins/imagemap/imagemapediting.js +47 -43
  426. package/src/assets/qms-ckeditor-plugin/src/plugins/imagemap/imagemapui.js +1 -1
  427. package/src/assets/qms-ckeditor-plugin/src/plugins/imagemap/insertimagemapcommand.js +72 -108
  428. package/src/assets/qms-ckeditor-plugin/src/plugins/imagemap/openimagemapcommand.js +58 -0
  429. package/src/assets/qms-ckeditor-plugin/src/plugins/imagemap/resizeimagemapcommand.js +4 -3
  430. package/src/assets/qms-ckeditor-plugin/src/plugins/imagemap/utils.js +13 -0
  431. package/src/assets/qms-ckeditor-plugin/src/plugins/timestamp/timestamp.js +8 -8
  432. package/src/assets/qms-ckeditor-plugin/src/plugins/tooltip/tooltipui.js +23 -24
  433. package/src/assets/qms-ckeditor-plugin/src/themes/icons/flowchart.svg +507 -0
  434. package/src/assets/qms-ckeditor-plugin/src/themes/icons/information.svg +1 -50
  435. package/src/assets/qms-ckeditor-plugin/src/themes/icons/timestamp.svg +1 -1
  436. package/src/assets/qms-ckeditor-plugin/src/themes/icons/tooltip.svg +1 -0
  437. package/src/lib/components/qms-app-bar/qms-app-bar.component.scss +7 -0
  438. package/src/lib/components/select-include-children/select-include-children.component.scss +11 -4
  439. package/src/lib/components/select-one/select-one.component.scss +240 -0
  440. package/src/lib/components/tree/tree.component.scss +1 -1
  441. package/src/lib/qms-ckeditor-components/components/qms-ckeditor-about/qms-ckeditor-about.component.scss +16 -0
  442. package/src/lib/qms-ckeditor-components/components/qms-ckeditor-bpmn/qms-ckeditor-bpmn.component.scss +15 -1
  443. package/src/lib/qms-ckeditor-components/components/qms-ckeditor-flowchart/qms-ckeditor-flowchart.component.scss +5 -0
  444. package/src/lib/qms-ckeditor-components/styles/_layout.scss +24 -0
  445. package/src/lib/qms-ckeditor-components/styles/_modules.scss +8 -0
  446. package/src/themes/_non-bg-srcollbar.scss +4 -0
  447. package/qms-angular.metadata.json +0 -1
  448. package/src/assets/qms-ckeditor-plugin/src/dist/ckeditor.dev.js +0 -173
  449. package/src/assets/qms-ckeditor-plugin/src/plugins/fullscreen/dist/qmsCKEditorFullscreenPlugin.dev.js +0 -87
@@ -0,0 +1,359 @@
1
+ import { EventEmitter, ViewChild, ViewEncapsulation, ViewChildren } from '@angular/core';
2
+ import { Component, HostListener, Inject } from '@angular/core';
3
+ import { FormControl } from '@angular/forms';
4
+ import { MatAutocompleteTrigger } from '@angular/material/autocomplete';
5
+ import { MAT_DIALOG_DATA } from '@angular/material/dialog';
6
+ import { Subject } from 'rxjs';
7
+ import { debounceTime, takeUntil } from 'rxjs/operators';
8
+ import { DataType } from './common/data-type.enum';
9
+ import { DocumentNodeType } from './common/document-folder-type.enum';
10
+ import { ModuleType } from './common/module-type.enum';
11
+ import { ShowHideSearchResultConst } from './common/show-hide-search-result.const';
12
+ import { TreeComponent } from '../tree/tree.component';
13
+ import * as i0 from "@angular/core";
14
+ import * as i1 from "../../services/translation-registry.service";
15
+ import * as i2 from "@angular/material/dialog";
16
+ import * as i3 from "./service/select-one-global.service";
17
+ import * as i4 from "@angular/material/icon";
18
+ import * as i5 from "@angular/platform-browser";
19
+ import * as i6 from "../app-icon/icon-registry.service";
20
+ import * as i7 from "@angular/material/autocomplete";
21
+ import * as i8 from "@angular/cdk/scrolling";
22
+ import * as i9 from "@angular/material/core";
23
+ import * as i10 from "../list/list";
24
+ import * as i11 from "../breadcrumb/breadcrumb";
25
+ import * as i12 from "@angular/material/expansion";
26
+ import * as i13 from "../tree/tree.component";
27
+ import * as i14 from "@angular/material/button";
28
+ import * as i15 from "../button/button";
29
+ import * as i16 from "@angular/material/input";
30
+ import * as i17 from "@angular/forms";
31
+ import * as i18 from "../../directives/scrollbar/scrollbar.directive";
32
+ import * as i19 from "@angular/common";
33
+ import * as i20 from "../../directives/tooltip/tooltip-renderer.directive";
34
+ import * as i21 from "./common/selectone-popup-data.model";
35
+ export class SelectOneDialog {
36
+ constructor(cdRef, translate, dialogRef, globalService, iconRegistry, sanitizer, appIconService, data) {
37
+ this.cdRef = cdRef;
38
+ this.translate = translate;
39
+ this.dialogRef = dialogRef;
40
+ this.globalService = globalService;
41
+ this.iconRegistry = iconRegistry;
42
+ this.sanitizer = sanitizer;
43
+ this.appIconService = appIconService;
44
+ this.data = data;
45
+ this.ngUnsubscribe = new Subject();
46
+ this.moduleId = 0;
47
+ this.moduleName = '';
48
+ this.treeData = [];
49
+ this.checkedNodeList = [];
50
+ this.selectedNode = [];
51
+ this.selectedData = [];
52
+ this.module = ModuleType;
53
+ this.dataType = DataType;
54
+ this.itemType = 0;
55
+ this.selectedRiskData = [];
56
+ this.disabledList = [];
57
+ this.expandToChildNode = [];
58
+ this.isCommonExpanded = true;
59
+ this.myControl = new FormControl();
60
+ this.filteredOptions = [];
61
+ this.isInputValue = false;
62
+ this.selectedFolder = null;
63
+ this.listChildrenSelectOne = [];
64
+ this.onSearch = new EventEmitter();
65
+ this.onExpandFolder = new EventEmitter();
66
+ this.moduleId = data.moduleId;
67
+ this.moduleName = data.moduleName;
68
+ this.treeData = data.treeData;
69
+ this.treeConfig = data.treeConfig;
70
+ this.selectedRiskData = (data === null || data === void 0 ? void 0 : data.selectedNode) || [];
71
+ this.disabledList = data.disabledList || [];
72
+ this.expandToChildNode = data.expandToChildNode;
73
+ appIconService.registerProcessIcon(iconRegistry, sanitizer);
74
+ appIconService.registerProcessAreaIcon(iconRegistry, sanitizer);
75
+ appIconService.registerDocumentIcon(iconRegistry, sanitizer);
76
+ appIconService.registerFolderIcon(iconRegistry, sanitizer);
77
+ appIconService.registerDeviationIcon(iconRegistry, sanitizer);
78
+ appIconService.registerChecklistIcon(iconRegistry, sanitizer);
79
+ appIconService.registerRiskIcon(iconRegistry, sanitizer);
80
+ }
81
+ ngOnDestroy() {
82
+ this.ngUnsubscribe.next();
83
+ this.ngUnsubscribe.complete();
84
+ this.globalService.setSearchRelated([]);
85
+ this.selectedFolder = null;
86
+ }
87
+ onMessage(event) {
88
+ if (event.data === ShowHideSearchResultConst.HIDE_SEARCH_RESULT) {
89
+ this.autoComplete.closePanel();
90
+ }
91
+ }
92
+ ngOnInit() {
93
+ this.translate.getLanguageSubject$.pipe().subscribe((res) => {
94
+ if (res) {
95
+ this.LANG = this.translate.getObjectLang(res);
96
+ }
97
+ });
98
+ this.globalService.searchRelated.pipe(takeUntil(this.ngUnsubscribe)).subscribe((res) => {
99
+ if (res && res.length) {
100
+ this.filteredOptions = res;
101
+ }
102
+ });
103
+ this.myControl.valueChanges.pipe(debounceTime(1000)).subscribe((val) => {
104
+ this.isInputValue = true;
105
+ this.onSearchRelated(val);
106
+ });
107
+ this.itemType = this.getDataTypeId(this.moduleId);
108
+ }
109
+ ngAfterViewChecked() {
110
+ this.cdRef.detectChanges();
111
+ if (this.filteredOptions && this.filteredOptions.length) {
112
+ this.autoComplete.openPanel();
113
+ this.setResultHeight();
114
+ }
115
+ else if (this.autoComplete) {
116
+ this.autoComplete.closePanel();
117
+ }
118
+ }
119
+ getDataTypeId(moduleId) {
120
+ let itemType;
121
+ switch (moduleId) {
122
+ case ModuleType.documentProcess:
123
+ itemType = this.dataType.process;
124
+ break;
125
+ case ModuleType.deviation:
126
+ itemType = this.dataType.deviation;
127
+ break;
128
+ case ModuleType.checklist:
129
+ itemType = this.dataType.checklist;
130
+ break;
131
+ case ModuleType.risk:
132
+ itemType = this.dataType.risk;
133
+ break;
134
+ default:
135
+ itemType = this.dataType.document;
136
+ break;
137
+ }
138
+ return itemType;
139
+ }
140
+ setResultHeight(arr) {
141
+ let maxHeight = 484;
142
+ const popup_content = document.getElementsByClassName('qmslib_related_popup_content')[0];
143
+ const line__divider = document.getElementsByClassName('line__divider')[0];
144
+ if (popup_content && line__divider) {
145
+ maxHeight = this.getOffsetHeight(popup_content, true) + this.getOffsetHeight(line__divider, true) * 2;
146
+ }
147
+ const contentResult = document.getElementsByClassName('cdk-virtual-scroll-content-wrapper')[0];
148
+ const viewreports = document.getElementsByClassName('related-viewport')[0];
149
+ if (viewreports) {
150
+ if (contentResult.offsetHeight <= maxHeight) {
151
+ viewreports.style.height = `${contentResult.offsetHeight}px`;
152
+ }
153
+ else {
154
+ viewreports.style.height = `${maxHeight}px`;
155
+ }
156
+ }
157
+ }
158
+ onSearchRelated(_val) {
159
+ this.filteredOptions = [];
160
+ if (typeof (_val) === 'object') {
161
+ this.myControl.setValue('');
162
+ }
163
+ else if (typeof (_val) === 'string') {
164
+ if (!!_val) {
165
+ this.onSearch.emit(_val);
166
+ }
167
+ }
168
+ }
169
+ getModuleFilteredOptions() {
170
+ if (this.listChildrenSelectOne.length) {
171
+ for (let index = 0; index < this.listChildrenSelectOne.length; index++) {
172
+ const firstEl = this.listChildrenSelectOne[index];
173
+ for (let j = 0; j < this.filteredOptions.length; j++) {
174
+ const secondEl = this.filteredOptions[j];
175
+ if (firstEl.id === secondEl.id) {
176
+ this.filteredOptions.splice(j, 1);
177
+ }
178
+ }
179
+ }
180
+ }
181
+ return this.filteredOptions;
182
+ }
183
+ showSearchResult() {
184
+ this.autoComplete.openPanel();
185
+ }
186
+ displayRelated(related) {
187
+ return related ? related.itemName : undefined;
188
+ }
189
+ selectItemSearched(item) {
190
+ var _a;
191
+ if ((_a = this.treeConfig) === null || _a === void 0 ? void 0 : _a.selectOne) {
192
+ this.disabledList = [];
193
+ }
194
+ // reset to root
195
+ this.expandToChildNode = [''];
196
+ this.checkedNodeList = [];
197
+ let position = -1;
198
+ let node;
199
+ let typeId;
200
+ position = this.treeData.findIndex(x => {
201
+ return x.rootId === item.id;
202
+ });
203
+ typeId = item.itemType;
204
+ if (position >= 0) {
205
+ node = this.treeData[position];
206
+ this.checkedNodeList.push({
207
+ moduleId: this.moduleId,
208
+ id: node.rootId,
209
+ itemName: node.rootName || node.subName,
210
+ itemType: typeId,
211
+ itemNumberId: item.itemNumberId,
212
+ levelType: item.levelType
213
+ });
214
+ }
215
+ const treeNode = {
216
+ id: node.rootId,
217
+ name: !!node.rootId ? node.subName : node.rootName,
218
+ children: [],
219
+ parentId: node.parentId
220
+ };
221
+ this.dataTrees.toArray()[0].todoFolderSelection([treeNode]);
222
+ return;
223
+ }
224
+ onCloseClick() {
225
+ this.selectedFolder = null;
226
+ this.dialogRef.close();
227
+ }
228
+ ;
229
+ onAddClick() {
230
+ this.selectedFolder = null;
231
+ this.dialogRef.close(this.checkedNodeList);
232
+ }
233
+ getOffsetHeight(element, includeMargin) {
234
+ let elmHeight = 0, elmMargin = 0;
235
+ elmHeight = element.offsetHeight;
236
+ if (includeMargin) {
237
+ const style = window.getComputedStyle(element);
238
+ elmMargin = parseFloat(style.marginTop.replace('px', '')) + parseFloat(style.marginBottom.replace('px', ''));
239
+ }
240
+ return (elmHeight + elmMargin);
241
+ }
242
+ getItemChipName(item) {
243
+ if (item.itemType === DataType.checklist || item.itemType === DataType.deviation) {
244
+ return (item.parentName && item.itemName !== item.parentName) ? `${item.parentName}/${item.itemName}` : item.itemName;
245
+ }
246
+ return item.itemName;
247
+ }
248
+ isEllipsisActive(e) {
249
+ return e ? (e.clientWidth < e.scrollWidth) : false;
250
+ }
251
+ getNodeIcon(item) {
252
+ switch (item.itemType) {
253
+ case DataType.folder: {
254
+ switch (item.levelType) {
255
+ case DocumentNodeType.DepartmentFolder:
256
+ return 'department_folder_outlined';
257
+ case DocumentNodeType.RegionalFolder:
258
+ return 'regional_folder_outlined';
259
+ case DocumentNodeType.TopFolder:
260
+ return 'enterprise_folder_outlined';
261
+ case DocumentNodeType.Folder:
262
+ return 'local_folder_outlined';
263
+ default:
264
+ return 'folder_outlined';
265
+ }
266
+ }
267
+ case DataType.document: {
268
+ switch (item.levelType) {
269
+ case DocumentNodeType.DepartmentFolder:
270
+ return 'document_department';
271
+ case DocumentNodeType.RegionalFolder:
272
+ return 'document_regional';
273
+ case DocumentNodeType.TopFolder:
274
+ return 'document_enterprise';
275
+ case DocumentNodeType.Folder:
276
+ return 'document_local';
277
+ default:
278
+ return 'document';
279
+ }
280
+ }
281
+ case DataType.area:
282
+ return 'process_area_outlined';
283
+ case DataType.process:
284
+ return 'process';
285
+ case DataType.deviation:
286
+ return 'deviation';
287
+ case DataType.checklist:
288
+ return 'checklist';
289
+ case DataType.risk:
290
+ return 'risk';
291
+ default:
292
+ return 'folder_outlined';
293
+ }
294
+ }
295
+ getParentName(item) {
296
+ if (item.itemType === this.dataType.checklist || item.itemType === this.dataType.deviation) {
297
+ return item.parentName;
298
+ }
299
+ return null;
300
+ }
301
+ getItemId(item) {
302
+ if (item.itemType === this.dataType.process) {
303
+ return `${this.LANG.PROCESS_ID}: ${item.itemNumberId}; ${item.statusName}`;
304
+ }
305
+ else if (item.itemType === this.dataType.document) {
306
+ return `${this.LANG.DOCUMENT_ID}: ${item.itemNumberId}; ${item.statusName}`;
307
+ }
308
+ return null;
309
+ }
310
+ selectNodeTreeEvent(node) {
311
+ var _a, _b;
312
+ let position = -1;
313
+ let parentName = '';
314
+ let itemNumberId = '';
315
+ position = !node.expandable ? this.treeData.findIndex(p => p.childId === node.id && p.rootId === node.parentId) :
316
+ this.treeData.findIndex(p => p.rootId === node.id);
317
+ parentName = this.treeData[position].parentId ? this.treeData[position].subName : this.treeData[position].rootName;
318
+ itemNumberId = (_b = (_a = this.treeData[position]) === null || _a === void 0 ? void 0 : _a.displayId) === null || _b === void 0 ? void 0 : _b.toString();
319
+ this.checkedNodeList = [];
320
+ this.checkedNodeList.push({
321
+ moduleId: this.moduleId,
322
+ id: node.id,
323
+ itemName: node.name,
324
+ itemType: node.itemType,
325
+ parentId: node.parentId,
326
+ parentName: parentName,
327
+ itemNumberId: itemNumberId,
328
+ levelType: node.levelType
329
+ });
330
+ }
331
+ getChildNodeSelectOne(listChildren) {
332
+ this.listChildrenSelectOne = [];
333
+ this.listChildrenSelectOne = listChildren;
334
+ }
335
+ }
336
+ SelectOneDialog.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: SelectOneDialog, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.TranslateLibraryService }, { token: i2.MatDialogRef }, { token: i3.QMSSelectOneGlobalService }, { token: i4.MatIconRegistry }, { token: i5.DomSanitizer }, { token: i6.QMSIconRegistryService }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
337
+ SelectOneDialog.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: SelectOneDialog, selector: "qms-select-one", host: { listeners: { "window:message": "onMessage($event)" } }, viewQueries: [{ propertyName: "autoComplete", first: true, predicate: ["autoCompleteInputSearch"], descendants: true, read: MatAutocompleteTrigger, static: true }, { propertyName: "dataTrees", predicate: TreeComponent, descendants: true }], ngImport: i0, template: "<div id=\"qmslib_related_popup\" class=\"qmslib__related__popup__container\">\r\n <div id=\"qmslib_related_popup_header\">\r\n <span mat-icon-button class=\"button__close\" (click)=\"onCloseClick()\">\r\n <mat-icon mat-icon>close</mat-icon>\r\n </span>\r\n <div id=\"qmslib_related_popup_header_001\" mat-dialog-content>\r\n <span>{{ moduleName }}</span>\r\n </div>\r\n </div>\r\n\r\n <div\r\n id=\"qmslib_related_popup_search\"\r\n class=\"input__field\"\r\n (click)=\"showSearchResult()\"\r\n >\r\n <input\r\n #name\r\n type=\"text\"\r\n placeholder=\"{{ LANG.SEARCH }}\"\r\n matInput\r\n [formControl]=\"myControl\"\r\n [matAutocomplete]=\"auto\"\r\n #autoCompleteInputSearch\r\n />\r\n <mat-icon>search</mat-icon>\r\n </div>\r\n\r\n <div class=\"line__divider\"></div>\r\n\r\n <mat-autocomplete\r\n #auto=\"matAutocomplete\"\r\n [displayWith]=\"displayRelated\"\r\n class=\"mat-autocomplete_related-viewport\"\r\n >\r\n <cdk-virtual-scroll-viewport\r\n qms-scrollbar\r\n itemSize=\"10\"\r\n class=\"related-viewport\"\r\n >\r\n <div class=\"search__module-result\" *ngIf=\"filteredOptions.length\">\r\n <mat-option\r\n class=\"search__option\"\r\n *ngFor=\"let option of getModuleFilteredOptions()\"\r\n [value]=\"option\"\r\n (click)=\"selectItemSearched(option)\"\r\n >\r\n <qms-list-item type=\"image-square\">\r\n <mat-icon\r\n leading-icon\r\n type=\"image-square\"\r\n [svgIcon]=\"getNodeIcon(option)\"\r\n ></mat-icon>\r\n <div qms-list-header>\r\n <div\r\n qms-line\r\n type=\"caption\"\r\n qms-tool-tip=\"{{\r\n isEllipsisActive(searchItemResult) ? option.parentName : ''\r\n }}\"\r\n mode=\"dark\"\r\n *ngIf=\"getParentName(option)\"\r\n >\r\n <span #searchItemResult class=\"search__result__parent-name\">\r\n {{ option.parentName }}\r\n </span>\r\n </div>\r\n <div qms-line type=\"subtitle\" class=\"search__option-name\">\r\n {{ option.itemName }}\r\n </div>\r\n <div\r\n class=\"caption\"\r\n *ngIf=\"option.breadcumbs && option.breadcumbs.length\"\r\n >\r\n <qms-breadcrumb\r\n class=\"breadcrumb-containe\"\r\n type=\"table\"\r\n numDisplayItem=\"1\"\r\n [nodes]=\"option.breadcumbs\"\r\n >\r\n </qms-breadcrumb>\r\n </div>\r\n </div>\r\n <div qms-line color=\"default-subtitle\" *ngIf=\"getItemId(option)\">\r\n <span class=\"material-icons-outlined search__description-icon\">\r\n local_offer\r\n </span>\r\n {{ getItemId(option) }}\r\n </div>\r\n </qms-list-item>\r\n </mat-option>\r\n </div>\r\n </cdk-virtual-scroll-viewport>\r\n </mat-autocomplete>\r\n\r\n <div class=\"row\">\r\n <div\r\n class=\"qms-scrollbar col-12 qmslib_related_popup_content\"\r\n [ngClass]=\"{\r\n panel__content_item: checkedNodeList.length,\r\n panel__content: !checkedNodeList.length\r\n }\"\r\n >\r\n <mat-expansion-panel\r\n hideToggle\r\n id=\"qmslib_related_popup_common_001\"\r\n [expanded]=\"isCommonExpanded\"\r\n (opened)=\"isCommonExpanded = true\"\r\n (closed)=\"isCommonExpanded = false\"\r\n class=\"panel-tree\"\r\n >\r\n <div id=\"qmslib_related_popup_common_002\">\r\n <qms-tree\r\n [treeData]=\"treeData\"\r\n [treeConfig]=\"treeConfig\"\r\n [selectedData]=\"selectedData\"\r\n [selectedRiskData]=\"selectedRiskData\"\r\n [disabledList]=\"disabledList\"\r\n (selectNodeEvent)=\"selectNodeTreeEvent($event)\"\r\n (getChildNodeSelectOne)=\"getChildNodeSelectOne($event)\"\r\n [expandOnTitleClick]=\"true\"\r\n [expandToChildNode]=\"expandToChildNode\"\r\n ></qms-tree>\r\n </div>\r\n </mat-expansion-panel>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"checkedNodeList.length\" class=\"line__divider\"></div>\r\n\r\n <div *ngIf=\"checkedNodeList.length\" class=\"panel__item qms-scrollbar\">\r\n <div class=\"related__item__inline\" *ngFor=\"let item of checkedNodeList\">\r\n <button\r\n *ngIf=\"item.itemName\"\r\n mat-button\r\n class=\"related__item__content\"\r\n qms-tool-tip=\"{{\r\n isEllipsisActive(itemName) ? getItemChipName(item) : ''\r\n }}\"\r\n mode=\"dark\"\r\n >\r\n <span class=\"related__item__content_name\" #itemName>{{\r\n getItemChipName(item)\r\n }}</span>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <div class=\"line__divider\"></div>\r\n\r\n <div class=\"confirm__button__groups\">\r\n <button\r\n *ngIf=\"!checkedNodeList.length\"\r\n qms-btn\r\n style=\"margin-top: 7px\"\r\n (click)=\"onAddClick()\"\r\n >\r\n {{ LANG.ADD }}\r\n </button>\r\n <button\r\n *ngIf=\"checkedNodeList.length\"\r\n qms-btn\r\n style=\"margin-top: 0px\"\r\n (click)=\"onAddClick()\"\r\n >\r\n {{ LANG.ADD }} ({{ checkedNodeList.length }})\r\n </button>\r\n <button\r\n qms-btn-text\r\n [ngStyle]=\"{ 'margin-top': checkedNodeList.length ? '0px' : '7px' }\"\r\n (click)=\"onCloseClick()\"\r\n >\r\n {{ LANG.CANCEL }}\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".qms-scrollbar::-webkit-scrollbar{width:12px}.qms-scrollbar::-webkit-scrollbar-track{background:rgba(0,0,0,.12);background-clip:content-box}.qms-scrollbar::-webkit-scrollbar-thumb{background:rgba(0,0,0,.38);border-radius:20px;width:4px;border:4px solid transparent;background-clip:content-box}.qms-scrollbar::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.5);background-clip:content-box;border:4px solid transparent}.qms-scrollbar.none-scroll-bg::-webkit-scrollbar-track{background:transparent;background-clip:content-box}.qms__popup .button__close{float:right;top:-24px;right:-24px;cursor:pointer}.qms__danger button{border:none;color:#fff;padding:0;text-align:center;text-decoration:none;display:inline-block;cursor:pointer;height:20px;width:20px;font-family:Open Sans;font-size:12px;font-weight:600;font-style:normal;line-height:16px}.qms__danger .red{background-color:#9e360f;margin-left:10px}.qms__danger .yellow{background-color:#e4cf53;margin-left:10px;color:#323232}.qms__danger .green{background-color:#00804c;margin-left:10px}.confirm__button__groups{margin-top:11px}.confirm__button__groups button{min-height:36px;width:auto;font-family:Open Sans;font-weight:500;font-size:14px;letter-spacing:1px;line-height:16px;padding-left:15px;padding-right:15px;margin-right:5px;float:right}.confirm__button__groups .confirm{background:#f8f9f9}.confirm__button__groups .confirm:hover{background:#001983;color:#fff}.confirm__button__groups .confirm:disabled{cursor:not-allowed}.confirm__button__groups .cancel{background:#f8f9f9}.confirm__button__groups .cancel:hover{background:#001983;color:#fff}.qmslib__related__popup__container .input__field{display:flex;align-items:center}.qmslib__related__popup__container .input__field input{width:100%;padding:10px;outline:none;border:none;background:#eee}.qmslib__related__popup__container .input__field .mat-icon{margin-left:-30px;cursor:pointer;vertical-align:middle}.qmslib__related__popup__container .line__divider{border-bottom:1px solid #ccc;height:1px;margin-top:10px;min-width:300px;max-width:100%}.qmslib__related__popup__container .button__close{float:right;top:-24px;right:-24px;cursor:pointer}.qmslib__related__popup__container .panel__content{height:450px;overflow:auto;margin-top:12px}.qmslib__related__popup__container .panel__content_item{height:350px;overflow:auto;margin-top:12px}.qmslib__related__popup__container .panel-tree .mat-expansion-panel-body{padding:0 12px 12px}.qmslib__related__popup__container .mat-expansion-panel-header{height:30px;font-size:12px;letter-spacing:1px;font-family:Raleway;font-weight:600;padding:0}.qmslib__related__popup__container .mat-expansion-panel-header .mat-expansion-panel-header-title{align-items:center;margin-left:12px}.qmslib__related__popup__container .mat-expansion-panel-header .related_popup_toggle-btn{width:1.5rem;height:1.5rem;line-height:1.5rem}.qmslib__related__popup__container .mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:none}.qmslib__related__popup__container .panel__item{height:100px;margin-top:12px;overflow-x:hidden;overflow-y:auto;padding-right:5px;width:100%;max-width:100%;display:flex;flex-wrap:wrap;align-content:flex-start}.qmslib__related__popup__container .panel__item .related__item__inline{max-width:100%}.qmslib__related__popup__container .panel__item .related__item__content{height:32px;line-height:32px;background-color:#e5e5e5;max-width:100%;margin-bottom:5px;margin-left:2.5px;margin-right:2.5px}.qmslib__related__popup__container .panel__item .related__item__content .mat-icon{color:#8e8e8e;font-size:24px}.qmslib__related__popup__container .panel__item .related__item__content span.related__item__content_name{display:inline-block;min-width:calc(100% - 13px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:320px}cdk-virtual-scroll-viewport{overflow-x:hidden}cdk-virtual-scroll-viewport .search__module-result{margin:1.5rem;padding:0 0 .5rem}cdk-virtual-scroll-viewport .search__module-result .search__module-title{font-size:14px;font-weight:600}cdk-virtual-scroll-viewport .search__module-result .search__option{height:auto;line-height:normal;padding:8px 0;border-bottom:1px solid #e0e0e0}cdk-virtual-scroll-viewport .search__module-result .search__option .qms-list-item.mat-2-line.image-item{height:auto}cdk-virtual-scroll-viewport .search__module-result .search__option .qms-list-item-content{margin:0;border-bottom:none}cdk-virtual-scroll-viewport .search__module-result .search__option .qms-list-item-content .wrap-image.image-square{width:2.5rem;height:100%;background:transparent;align-self:center;margin-right:0}cdk-virtual-scroll-viewport .search__module-result .search__option .qms-list-item-content .wrap-image.image-square img{width:24px;height:24px}cdk-virtual-scroll-viewport .search__module-result .search__option .qms-list-item-content .material-icons-outlined.leading-icon,cdk-virtual-scroll-viewport .search__module-result .search__option .qms-list-item-content mat-icon.leading-icon{padding:4px 0 4px 4px}cdk-virtual-scroll-viewport .search__module-result .search__option .qms-list-item-content .subtitle{font-weight:400}cdk-virtual-scroll-viewport .search__module-result .search__option .qms-list-item-content .caption{overflow:hidden;line-height:normal;white-space:normal;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;padding:0;margin:0}cdk-virtual-scroll-viewport .search__module-result .search__option .qms-list-item-content .caption span.search__result__parent-name{display:inline-block;width:auto;width:calc(100% - 13px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}cdk-virtual-scroll-viewport .search__module-result .search__option .qms-list-item-content .default-subtitle{color:rgba(0,0,0,.38)}cdk-virtual-scroll-viewport .search__module-result .search__option .qms-list-item-content .search__description-icon{margin-right:0;width:12px;height:12px;font-size:12px}cdk-virtual-scroll-viewport .search__module-result .search__option .qms-list-item-content .qms-list-text{border-bottom:none}cdk-virtual-scroll-viewport .search__module-result .search__option .qms-list-item-content .breadcrumb-containe .qms-breadcrumb-item .mat-icon{font-size:16px!important;padding-bottom:1px}cdk-virtual-scroll-viewport .search__module-result svg{display:block}#qmslib_related_popup_header_001{margin-bottom:20px;padding:0;font-weight:600;font-family:Raleway}.padding-5{padding:5px}.mat-autocomplete_related-viewport{height:100%;max-height:100%!important}.mat-autocomplete_related-viewport .cdk-virtual-scroll-content-wrapper{width:100%}.mat-autocomplete_related-viewport .related-viewport{min-height:10.25rem}"], components: [{ type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i7.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i8.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation"], outputs: ["scrolledIndexChange"] }, { type: i9.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i10.QMSListItem, selector: "qms-list-item", inputs: ["type"] }, { type: i11.QMSBreadcrumb, selector: "qms-breadcrumb", inputs: ["nodes", "type", "maxLine", "numDisplayItem", "onlyItem", "disabledLastItem"], outputs: ["onItemClick"] }, { type: i12.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { type: i13.TreeComponent, selector: "qms-tree", inputs: ["treeData", "treeConfig", "selectedData", "selectedRiskData", "disabledList", "expandOnTitleClick", "expandToChildNode"], outputs: ["selectNodeEvent", "selectFolderEvent", "checkBoxEvent", "childCheckedEvent", "nodeExpandEvent", "getChildNodeSelectOne"] }, { type: i14.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i15.QMSButton, selector: "button[qms-btn], button[qms-btn-lg], button[qms-btn-outlined],\n button[qms-btn-outlined-lg], button[qms-btn-text], button[qms-btn-text-lg],\n button[qms-btn-fab],button[qms-btn-fab-sm],button[qms-btn-fab-ext],\n button[qms-btn-fab-outlined],button[qms-btn-fab-outlined-sm],button[qms-btn-fab-outlined-ext]", inputs: ["disabled", "color"], exportAs: ["qmsButton"] }], directives: [{ type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i16.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i17.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i7.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i17.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i17.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i8.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { type: i18.QMSScrollbarDirective, selector: "[qms-scrollbar]", inputs: ["isNoneBackground"] }, { type: i19.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i19.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.QMSListLeadingIcon, selector: "[leading-icon]" }, { type: i10.QMSListHeader, selector: "[qms-list-header]" }, { type: i10.QMSListLine, selector: "[qms-line]", inputs: ["size", "type", "color"] }, { type: i20.QMSToolTipRendererDirective, selector: "[qms-tool-tip]", inputs: ["showToolTip", "mode", "qms-tool-tip", "contentTemplate", "position"] }, { type: i19.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i19.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], encapsulation: i0.ViewEncapsulation.None });
338
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: SelectOneDialog, decorators: [{
339
+ type: Component,
340
+ args: [{
341
+ selector: 'qms-select-one',
342
+ templateUrl: './select-one.component.html',
343
+ styleUrls: ['./select-one.component.scss'],
344
+ encapsulation: ViewEncapsulation.None
345
+ }]
346
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.TranslateLibraryService }, { type: i2.MatDialogRef }, { type: i3.QMSSelectOneGlobalService }, { type: i4.MatIconRegistry }, { type: i5.DomSanitizer }, { type: i6.QMSIconRegistryService }, { type: i21.SelectOnePopupData, decorators: [{
347
+ type: Inject,
348
+ args: [MAT_DIALOG_DATA]
349
+ }] }]; }, propDecorators: { dataTrees: [{
350
+ type: ViewChildren,
351
+ args: [TreeComponent, {}]
352
+ }], autoComplete: [{
353
+ type: ViewChild,
354
+ args: ['autoCompleteInputSearch', { read: MatAutocompleteTrigger, static: true }]
355
+ }], onMessage: [{
356
+ type: HostListener,
357
+ args: ['window:message', ['$event']]
358
+ }] } });
359
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW9uZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9xbXMtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0LW9uZS9zZWxlY3Qtb25lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Ftcy1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3Qtb25lL3NlbGVjdC1vbmUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixZQUFZLEVBQWEsU0FBUyxFQUFFLGlCQUFpQixFQUErQixZQUFZLEVBQWMsTUFBTSxlQUFlLENBQUM7QUFDaEssT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4RSxPQUFPLEVBQWdCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBR3pFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUt6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBVW5GLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFVdkQsTUFB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Q3ZCLFVBQVUsRUFBRSxVQUFVO1lBQ3RCLFlBQVksRUFBRSxZQUFZO1lBQzFCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztTQUM1QixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQscUJBQXFCLENBQUMsWUFBWTtRQUM5QixJQUFJLENBQUMscUJBQXFCLEdBQUcsRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxZQUFZLENBQUM7SUFDOUMsQ0FBQzs7NEdBaldRLGVBQWUsZ1FBNENaLGVBQWU7Z0dBNUNsQixlQUFlLDBOQWtDc0Isc0JBQXNCLDBEQUZ0RCxhQUFhLGdEQ3BFL0IsdXZMQStLQTsyRkQzSWEsZUFBZTtrQkFOM0IsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixXQUFXLEVBQUUsNkJBQTZCO29CQUMxQyxTQUFTLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztvQkFDMUMsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3hDOzswQkE2Q1EsTUFBTTsyQkFBQyxlQUFlOzRDQVpNLFNBQVM7c0JBQXpDLFlBQVk7dUJBQUMsYUFBYSxFQUFFLEVBQUU7Z0JBRy9CLFlBQVk7c0JBRFgsU0FBUzt1QkFBQyx5QkFBeUIsRUFBRSxFQUFFLElBQUksRUFBRSxzQkFBc0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQW9DcEYsU0FBUztzQkFEUixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIEV2ZW50RW1pdHRlciwgT25EZXN0cm95LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uLCBBZnRlclZpZXdDaGVja2VkLCBRdWVyeUxpc3QsIFZpZXdDaGlsZHJlbiwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IE1hdEljb25SZWdpc3RyeSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IFRyYW5zbGF0ZUxpYnJhcnlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdHJhbnNsYXRpb24tcmVnaXN0cnkuc2VydmljZSc7XHJcbmltcG9ydCB7IFFNU0ljb25SZWdpc3RyeVNlcnZpY2UgfSBmcm9tICcuLi9hcHAtaWNvbi9pY29uLXJlZ2lzdHJ5LnNlcnZpY2UnO1xyXG5cclxuaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICcuL2NvbW1vbi9kYXRhLXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IERvY3VtZW50Tm9kZVR5cGUgfSBmcm9tICcuL2NvbW1vbi9kb2N1bWVudC1mb2xkZXItdHlwZS5lbnVtJztcclxuaW1wb3J0IHsgTW9kdWxlVHlwZSB9IGZyb20gJy4vY29tbW9uL21vZHVsZS10eXBlLmVudW0nO1xyXG5pbXBvcnQgeyBTaG93SGlkZVNlYXJjaFJlc3VsdENvbnN0IH0gZnJvbSAnLi9jb21tb24vc2hvdy1oaWRlLXNlYXJjaC1yZXN1bHQuY29uc3QnO1xyXG5pbXBvcnQgeyBTZWxlY3RPbmVQb3B1cERhdGEgfSBmcm9tICcuL2NvbW1vbi9zZWxlY3RvbmUtcG9wdXAtZGF0YS5tb2RlbCc7XHJcbmltcG9ydCB7IElTZWxlY3RPbmVJdGVtIH0gZnJvbSAnLi9jb21tb24vc2VsZWN0LWRhdGEubW9kZWwnO1xyXG5pbXBvcnQgeyBTZWxlY3RlZE5vZGUgfSBmcm9tICcuL2NvbW1vbi9zZWxlY3RlZC1ub2RlLm1vZGVsJztcclxuaW1wb3J0IHsgUU1TU2VsZWN0T25lR2xvYmFsU2VydmljZSB9IGZyb20gJy4vc2VydmljZS9zZWxlY3Qtb25lLWdsb2JhbC5zZXJ2aWNlJztcclxuXHJcbmltcG9ydCB7IFRyZWVDb25maWcgfSBmcm9tICcuLi90cmVlL21vZGVsL3RyZWUtY29uZmlnLm1vZGVsJztcclxuaW1wb3J0IHsgVHJlZUZsYXROb2RlIH0gZnJvbSAnLi4vdHJlZS9tb2RlbC90cmVlLWZsYXQtbm9kZS5tb2RlbCc7XHJcbmltcG9ydCB7IFRyZWVOb2RlIH0gZnJvbSAnLi4vdHJlZS9tb2RlbC90cmVlLW5vZGUubW9kZWwnO1xyXG5pbXBvcnQgeyBUcmVlTW9kZWwgfSBmcm9tICcuLi90cmVlL21vZGVsL3RyZWUubW9kZWwnO1xyXG5pbXBvcnQgeyBUcmVlQ29tcG9uZW50IH0gZnJvbSAnLi4vdHJlZS90cmVlLmNvbXBvbmVudCc7XHJcblxyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdxbXMtc2VsZWN0LW9uZScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2VsZWN0LW9uZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9zZWxlY3Qtb25lLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZWxlY3RPbmVEaWFsb2cgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3Q2hlY2tlZCB7XHJcbiAgICBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgICBMQU5HOiBhbnk7XHJcbiAgICBtb2R1bGVJZCA9IDA7XHJcbiAgICBtb2R1bGVOYW1lID0gJyc7XHJcbiAgICB0cmVlRGF0YTogQXJyYXk8VHJlZU1vZGVsPiA9IFtdO1xyXG4gICAgdHJlZUNvbmZpZzogVHJlZUNvbmZpZztcclxuXHJcbiAgICBjaGVja2VkTm9kZUxpc3Q6IEFycmF5PFNlbGVjdGVkTm9kZT4gPSBbXTtcclxuICAgIHNlbGVjdGVkTm9kZTogQXJyYXk8U2VsZWN0ZWROb2RlPiA9IFtdO1xyXG4gICAgc2VsZWN0ZWREYXRhOiBBcnJheTxUcmVlRmxhdE5vZGU+ID0gW107XHJcblxyXG4gICAgbW9kdWxlID0gTW9kdWxlVHlwZTtcclxuICAgIGRhdGFUeXBlID0gRGF0YVR5cGU7XHJcbiAgICBpdGVtVHlwZSA9IDA7XHJcbiAgICBzZWxlY3RlZFJpc2tEYXRhOiBhbnkgPSBbXTtcclxuICAgIGRpc2FibGVkTGlzdDogYW55ID0gW107XHJcbiAgICBleHBhbmRUb0NoaWxkTm9kZTogYW55ID0gW107XHJcblxyXG4gICAgaXNDb21tb25FeHBhbmRlZCA9IHRydWU7XHJcblxyXG4gICAgbXlDb250cm9sID0gbmV3IEZvcm1Db250cm9sKCk7XHJcbiAgICBmaWx0ZXJlZE9wdGlvbnM6IElTZWxlY3RPbmVJdGVtW10gPSBbXTtcclxuICAgIGlzSW5wdXRWYWx1ZSA9IGZhbHNlO1xyXG5cclxuICAgIHNlbGVjdGVkRm9sZGVyOiBUcmVlRmxhdE5vZGUgPSBudWxsO1xyXG4gICAgbGlzdENoaWxkcmVuU2VsZWN0T25lOiBhbnkgPSBbXTtcclxuXHJcbiAgICBvblNlYXJjaCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAgIG9uRXhwYW5kRm9sZGVyID0gbmV3IEV2ZW50RW1pdHRlcjxJU2VsZWN0T25lSXRlbT4oKTtcclxuXHJcbiAgICBAVmlld0NoaWxkcmVuKFRyZWVDb21wb25lbnQsIHt9KSBkYXRhVHJlZXM6IFF1ZXJ5TGlzdDxUcmVlQ29tcG9uZW50PjtcclxuXHJcbiAgICBAVmlld0NoaWxkKCdhdXRvQ29tcGxldGVJbnB1dFNlYXJjaCcsIHsgcmVhZDogTWF0QXV0b2NvbXBsZXRlVHJpZ2dlciwgc3RhdGljOiB0cnVlIH0pXHJcbiAgICBhdXRvQ29tcGxldGU6IE1hdEF1dG9jb21wbGV0ZVRyaWdnZXI7XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgICAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVMaWJyYXJ5U2VydmljZSxcclxuICAgICAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8U2VsZWN0T25lRGlhbG9nPixcclxuICAgICAgICBwdWJsaWMgZ2xvYmFsU2VydmljZTogUU1TU2VsZWN0T25lR2xvYmFsU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGljb25SZWdpc3RyeTogTWF0SWNvblJlZ2lzdHJ5LFxyXG4gICAgICAgIHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBhcHBJY29uU2VydmljZTogUU1TSWNvblJlZ2lzdHJ5U2VydmljZSxcclxuICAgICAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IFNlbGVjdE9uZVBvcHVwRGF0YVxyXG4gICAgKSB7XHJcbiAgICAgICAgdGhpcy5tb2R1bGVJZCA9IGRhdGEubW9kdWxlSWQ7XHJcbiAgICAgICAgdGhpcy5tb2R1bGVOYW1lID0gZGF0YS5tb2R1bGVOYW1lO1xyXG4gICAgICAgIHRoaXMudHJlZURhdGEgPSBkYXRhLnRyZWVEYXRhO1xyXG4gICAgICAgIHRoaXMudHJlZUNvbmZpZyA9IGRhdGEudHJlZUNvbmZpZztcclxuICAgICAgICB0aGlzLnNlbGVjdGVkUmlza0RhdGEgPSBkYXRhPy5zZWxlY3RlZE5vZGUgfHwgW107XHJcbiAgICAgICAgdGhpcy5kaXNhYmxlZExpc3QgPSBkYXRhLmRpc2FibGVkTGlzdCB8fCBbXTtcclxuICAgICAgICB0aGlzLmV4cGFuZFRvQ2hpbGROb2RlID0gZGF0YS5leHBhbmRUb0NoaWxkTm9kZTtcclxuICAgICAgICBhcHBJY29uU2VydmljZS5yZWdpc3RlclByb2Nlc3NJY29uKGljb25SZWdpc3RyeSwgc2FuaXRpemVyKTtcclxuICAgICAgICBhcHBJY29uU2VydmljZS5yZWdpc3RlclByb2Nlc3NBcmVhSWNvbihpY29uUmVnaXN0cnksIHNhbml0aXplcik7XHJcbiAgICAgICAgYXBwSWNvblNlcnZpY2UucmVnaXN0ZXJEb2N1bWVudEljb24oaWNvblJlZ2lzdHJ5LCBzYW5pdGl6ZXIpO1xyXG4gICAgICAgIGFwcEljb25TZXJ2aWNlLnJlZ2lzdGVyRm9sZGVySWNvbihpY29uUmVnaXN0cnksIHNhbml0aXplcik7XHJcbiAgICAgICAgYXBwSWNvblNlcnZpY2UucmVnaXN0ZXJEZXZpYXRpb25JY29uKGljb25SZWdpc3RyeSwgc2FuaXRpemVyKTtcclxuICAgICAgICBhcHBJY29uU2VydmljZS5yZWdpc3RlckNoZWNrbGlzdEljb24oaWNvblJlZ2lzdHJ5LCBzYW5pdGl6ZXIpO1xyXG4gICAgICAgIGFwcEljb25TZXJ2aWNlLnJlZ2lzdGVyUmlza0ljb24oaWNvblJlZ2lzdHJ5LCBzYW5pdGl6ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XHJcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XHJcbiAgICAgICAgdGhpcy5nbG9iYWxTZXJ2aWNlLnNldFNlYXJjaFJlbGF0ZWQoW10pO1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRGb2xkZXIgPSBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzptZXNzYWdlJywgWyckZXZlbnQnXSlcclxuICAgIG9uTWVzc2FnZShldmVudCkge1xyXG4gICAgICAgIGlmIChldmVudC5kYXRhID09PSBTaG93SGlkZVNlYXJjaFJlc3VsdENvbnN0LkhJREVfU0VBUkNIX1JFU1VMVCkge1xyXG4gICAgICAgICAgICB0aGlzLmF1dG9Db21wbGV0ZS5jbG9zZVBhbmVsKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMudHJhbnNsYXRlLmdldExhbmd1YWdlU3ViamVjdCQucGlwZSgpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuTEFORyA9IHRoaXMudHJhbnNsYXRlLmdldE9iamVjdExhbmcocmVzKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICB0aGlzLmdsb2JhbFNlcnZpY2Uuc2VhcmNoUmVsYXRlZC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzICYmIHJlcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyZWRPcHRpb25zID0gcmVzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMubXlDb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKGRlYm91bmNlVGltZSgxMDAwKSkuc3Vic2NyaWJlKCh2YWwpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5pc0lucHV0VmFsdWUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLm9uU2VhcmNoUmVsYXRlZCh2YWwpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICB0aGlzLml0ZW1UeXBlID0gdGhpcy5nZXREYXRhVHlwZUlkKHRoaXMubW9kdWxlSWQpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpIHtcclxuICAgICAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICBpZiAodGhpcy5maWx0ZXJlZE9wdGlvbnMgJiYgdGhpcy5maWx0ZXJlZE9wdGlvbnMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXV0b0NvbXBsZXRlLm9wZW5QYW5lbCgpO1xyXG4gICAgICAgICAgICB0aGlzLnNldFJlc3VsdEhlaWdodCgpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5hdXRvQ29tcGxldGUpIHtcclxuICAgICAgICAgICAgdGhpcy5hdXRvQ29tcGxldGUuY2xvc2VQYW5lbCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBnZXREYXRhVHlwZUlkKG1vZHVsZUlkOiBudW1iZXIpIHtcclxuICAgICAgICBsZXQgaXRlbVR5cGU7XHJcbiAgICAgICAgc3dpdGNoIChtb2R1bGVJZCkge1xyXG4gICAgICAgICAgICBjYXNlIE1vZHVsZVR5cGUuZG9jdW1lbnRQcm9jZXNzOlxyXG4gICAgICAgICAgICAgICAgaXRlbVR5cGUgPSB0aGlzLmRhdGFUeXBlLnByb2Nlc3M7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSBNb2R1bGVUeXBlLmRldmlhdGlvbjpcclxuICAgICAgICAgICAgICAgIGl0ZW1UeXBlID0gdGhpcy5kYXRhVHlwZS5kZXZpYXRpb247XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSBNb2R1bGVUeXBlLmNoZWNrbGlzdDpcclxuICAgICAgICAgICAgICAgIGl0ZW1UeXBlID0gdGhpcy5kYXRhVHlwZS5jaGVja2xpc3Q7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSBNb2R1bGVUeXBlLnJpc2s6XHJcbiAgICAgICAgICAgICAgICBpdGVtVHlwZSA9IHRoaXMuZGF0YVR5cGUucmlzaztcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgaXRlbVR5cGUgPSB0aGlzLmRhdGFUeXBlLmRvY3VtZW50O1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBpdGVtVHlwZTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRSZXN1bHRIZWlnaHQoYXJyPzogSVNlbGVjdE9uZUl0ZW1bXSkge1xyXG4gICAgICAgIGxldCBtYXhIZWlnaHQgPSA0ODQ7XHJcbiAgICAgICAgY29uc3QgcG9wdXBfY29udGVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ3Ftc2xpYl9yZWxhdGVkX3BvcHVwX2NvbnRlbnQnKVswXSBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgICBjb25zdCBsaW5lX19kaXZpZGVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnbGluZV9fZGl2aWRlcicpWzBdIGFzIEhUTUxFbGVtZW50O1xyXG4gICAgICAgIGlmIChwb3B1cF9jb250ZW50ICYmIGxpbmVfX2RpdmlkZXIpIHtcclxuICAgICAgICAgICAgbWF4SGVpZ2h0ID0gdGhpcy5nZXRPZmZzZXRIZWlnaHQocG9wdXBfY29udGVudCwgdHJ1ZSkgKyB0aGlzLmdldE9mZnNldEhlaWdodChsaW5lX19kaXZpZGVyLCB0cnVlKSAqIDI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBjb250ZW50UmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnY2RrLXZpcnR1YWwtc2Nyb2xsLWNvbnRlbnQtd3JhcHBlcicpWzBdIGFzIEhUTUxFbGVtZW50O1xyXG4gICAgICAgIGNvbnN0IHZpZXdyZXBvcnRzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgncmVsYXRlZC12aWV3cG9ydCcpWzBdIGFzIEhUTUxFbGVtZW50O1xyXG5cclxuICAgICAgICBpZiAodmlld3JlcG9ydHMpIHtcclxuICAgICAgICAgICAgaWYgKGNvbnRlbnRSZXN1bHQub2Zmc2V0SGVpZ2h0IDw9IG1heEhlaWdodCkge1xyXG4gICAgICAgICAgICAgICAgdmlld3JlcG9ydHMuc3R5bGUuaGVpZ2h0ID0gYCR7Y29udGVudFJlc3VsdC5vZmZzZXRIZWlnaHR9cHhgO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdmlld3JlcG9ydHMuc3R5bGUuaGVpZ2h0ID0gYCR7bWF4SGVpZ2h0fXB4YDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvblNlYXJjaFJlbGF0ZWQoX3ZhbDogYW55KSB7XHJcbiAgICAgICAgdGhpcy5maWx0ZXJlZE9wdGlvbnMgPSBbXTtcclxuICAgICAgICBpZiAodHlwZW9mIChfdmFsKSA9PT0gJ29iamVjdCcpIHtcclxuICAgICAgICAgICAgdGhpcy5teUNvbnRyb2wuc2V0VmFsdWUoJycpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmICh0eXBlb2YgKF92YWwpID09PSAnc3RyaW5nJykge1xyXG4gICAgICAgICAgICBpZiAoISFfdmFsKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm9uU2VhcmNoLmVtaXQoX3ZhbCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0TW9kdWxlRmlsdGVyZWRPcHRpb25zKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmxpc3RDaGlsZHJlblNlbGVjdE9uZS5sZW5ndGgpIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IHRoaXMubGlzdENoaWxkcmVuU2VsZWN0T25lLmxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgZmlyc3RFbCA9IHRoaXMubGlzdENoaWxkcmVuU2VsZWN0T25lW2luZGV4XTtcclxuICAgICAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgdGhpcy5maWx0ZXJlZE9wdGlvbnMubGVuZ3RoOyBqKyspIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBzZWNvbmRFbCA9IHRoaXMuZmlsdGVyZWRPcHRpb25zW2pdO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChmaXJzdEVsLmlkID09PSBzZWNvbmRFbC5pZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucy5zcGxpY2UoaiwgMSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXJlZE9wdGlvbnM7XHJcbiAgICB9XHJcblxyXG4gICAgc2hvd1NlYXJjaFJlc3VsdCgpIHtcclxuICAgICAgICB0aGlzLmF1dG9Db21wbGV0ZS5vcGVuUGFuZWwoKTtcclxuICAgIH1cclxuXHJcbiAgICBkaXNwbGF5UmVsYXRlZChyZWxhdGVkPzogSVNlbGVjdE9uZUl0ZW0pOiBzdHJpbmcgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIHJldHVybiByZWxhdGVkID8gcmVsYXRlZC5pdGVtTmFtZSA6IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3RJdGVtU2VhcmNoZWQoaXRlbTogSVNlbGVjdE9uZUl0ZW0pIHtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMudHJlZUNvbmZpZz8uc2VsZWN0T25lKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGlzYWJsZWRMaXN0ID0gW107XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIHJlc2V0IHRvIHJvb3RcclxuICAgICAgICB0aGlzLmV4cGFuZFRvQ2hpbGROb2RlID0gWycnXTtcclxuICAgICAgICB0aGlzLmNoZWNrZWROb2RlTGlzdCA9IFtdO1xyXG5cclxuICAgICAgICBsZXQgcG9zaXRpb24gPSAtMTtcclxuICAgICAgICBsZXQgbm9kZTogYW55O1xyXG4gICAgICAgIGxldCB0eXBlSWQ6IG51bWJlcjtcclxuXHJcbiAgICAgICAgcG9zaXRpb24gPSB0aGlzLnRyZWVEYXRhLmZpbmRJbmRleCh4ID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIHgucm9vdElkID09PSBpdGVtLmlkO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHR5cGVJZCA9IGl0ZW0uaXRlbVR5cGU7XHJcblxyXG4gICAgICAgIGlmIChwb3NpdGlvbiA+PSAwKSB7XHJcbiAgICAgICAgICAgIG5vZGUgPSB0aGlzLnRyZWVEYXRhW3Bvc2l0aW9uXTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuY2hlY2tlZE5vZGVMaXN0LnB1c2goe1xyXG4gICAgICAgICAgICAgICAgbW9kdWxlSWQ6IHRoaXMubW9kdWxlSWQsXHJcbiAgICAgICAgICAgICAgICBpZDogbm9kZS5yb290SWQsXHJcbiAgICAgICAgICAgICAgICBpdGVtTmFtZTogbm9kZS5yb290TmFtZSB8fCBub2RlLnN1Yk5hbWUsXHJcbiAgICAgICAgICAgICAgICBpdGVtVHlwZTogdHlwZUlkLFxyXG4gICAgICAgICAgICAgICAgaXRlbU51bWJlcklkOiBpdGVtLml0ZW1OdW1iZXJJZCxcclxuICAgICAgICAgICAgICAgIGxldmVsVHlwZTogaXRlbS5sZXZlbFR5cGVcclxuICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCB0cmVlTm9kZSA9IHtcclxuICAgICAgICAgICAgaWQ6IG5vZGUucm9vdElkLFxyXG4gICAgICAgICAgICBuYW1lOiAhIW5vZGUucm9vdElkID8gbm9kZS5zdWJOYW1lIDogbm9kZS5yb290TmFtZSxcclxuICAgICAgICAgICAgY2hpbGRyZW46IFtdLFxyXG4gICAgICAgICAgICBwYXJlbnRJZDogbm9kZS5wYXJlbnRJZFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgdGhpcy5kYXRhVHJlZXMudG9BcnJheSgpWzBdLnRvZG9Gb2xkZXJTZWxlY3Rpb24oW3RyZWVOb2RlXSk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgb25DbG9zZUNsaWNrKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRGb2xkZXIgPSBudWxsO1xyXG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XHJcbiAgICB9O1xyXG5cclxuICAgIG9uQWRkQ2xpY2soKSB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEZvbGRlciA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodGhpcy5jaGVja2VkTm9kZUxpc3QpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldE9mZnNldEhlaWdodChlbGVtZW50OiBIVE1MRWxlbWVudCwgaW5jbHVkZU1hcmdpbjogYm9vbGVhbik6IG51bWJlciB7XHJcbiAgICAgICAgbGV0IGVsbUhlaWdodCA9IDAsIGVsbU1hcmdpbiA9IDA7XHJcblxyXG4gICAgICAgIGVsbUhlaWdodCA9IGVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xyXG4gICAgICAgIGlmIChpbmNsdWRlTWFyZ2luKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XHJcbiAgICAgICAgICAgIGVsbU1hcmdpbiA9IHBhcnNlRmxvYXQoc3R5bGUubWFyZ2luVG9wLnJlcGxhY2UoJ3B4JywgJycpKSArIHBhcnNlRmxvYXQoc3R5bGUubWFyZ2luQm90dG9tLnJlcGxhY2UoJ3B4JywgJycpKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiAoZWxtSGVpZ2h0ICsgZWxtTWFyZ2luKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRJdGVtQ2hpcE5hbWUoaXRlbTogU2VsZWN0ZWROb2RlKSB7XHJcbiAgICAgICAgaWYgKGl0ZW0uaXRlbVR5cGUgPT09IERhdGFUeXBlLmNoZWNrbGlzdCB8fCBpdGVtLml0ZW1UeXBlID09PSBEYXRhVHlwZS5kZXZpYXRpb24pIHtcclxuICAgICAgICAgICAgcmV0dXJuIChpdGVtLnBhcmVudE5hbWUgJiYgaXRlbS5pdGVtTmFtZSAhPT0gaXRlbS5wYXJlbnROYW1lKSA/IGAke2l0ZW0ucGFyZW50TmFtZX0vJHtpdGVtLml0ZW1OYW1lfWAgOiBpdGVtLml0ZW1OYW1lO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gaXRlbS5pdGVtTmFtZTtcclxuICAgIH1cclxuXHJcbiAgICBpc0VsbGlwc2lzQWN0aXZlKGU6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIGUgPyAoZS5jbGllbnRXaWR0aCA8IGUuc2Nyb2xsV2lkdGgpIDogZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0Tm9kZUljb24oaXRlbTogSVNlbGVjdE9uZUl0ZW0pIHtcclxuICAgICAgICBzd2l0Y2ggKGl0ZW0uaXRlbVR5cGUpIHtcclxuICAgICAgICAgICAgY2FzZSBEYXRhVHlwZS5mb2xkZXI6IHtcclxuICAgICAgICAgICAgICAgIHN3aXRjaCAoaXRlbS5sZXZlbFR5cGUpIHtcclxuICAgICAgICAgICAgICAgICAgICBjYXNlIERvY3VtZW50Tm9kZVR5cGUuRGVwYXJ0bWVudEZvbGRlcjpcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdkZXBhcnRtZW50X2ZvbGRlcl9vdXRsaW5lZCc7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBEb2N1bWVudE5vZGVUeXBlLlJlZ2lvbmFsRm9sZGVyOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3JlZ2lvbmFsX2ZvbGRlcl9vdXRsaW5lZCc7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBEb2N1bWVudE5vZGVUeXBlLlRvcEZvbGRlcjpcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdlbnRlcnByaXNlX2ZvbGRlcl9vdXRsaW5lZCc7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBEb2N1bWVudE5vZGVUeXBlLkZvbGRlcjpcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdsb2NhbF9mb2xkZXJfb3V0bGluZWQnO1xyXG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnZm9sZGVyX291dGxpbmVkJztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjYXNlIERhdGFUeXBlLmRvY3VtZW50OiB7XHJcbiAgICAgICAgICAgICAgICBzd2l0Y2ggKGl0ZW0ubGV2ZWxUeXBlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBEb2N1bWVudE5vZGVUeXBlLkRlcGFydG1lbnRGb2xkZXI6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnZG9jdW1lbnRfZGVwYXJ0bWVudCc7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBEb2N1bWVudE5vZGVUeXBlLlJlZ2lvbmFsRm9sZGVyOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2RvY3VtZW50X3JlZ2lvbmFsJztcclxuICAgICAgICAgICAgICAgICAgICBjYXNlIERvY3VtZW50Tm9kZVR5cGUuVG9wRm9sZGVyOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2RvY3VtZW50X2VudGVycHJpc2UnO1xyXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgRG9jdW1lbnROb2RlVHlwZS5Gb2xkZXI6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnZG9jdW1lbnRfbG9jYWwnO1xyXG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnZG9jdW1lbnQnO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNhc2UgRGF0YVR5cGUuYXJlYTpcclxuICAgICAgICAgICAgICAgIHJldHVybiAncHJvY2Vzc19hcmVhX291dGxpbmVkJztcclxuICAgICAgICAgICAgY2FzZSBEYXRhVHlwZS5wcm9jZXNzOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICdwcm9jZXNzJztcclxuICAgICAgICAgICAgY2FzZSBEYXRhVHlwZS5kZXZpYXRpb246XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2RldmlhdGlvbic7XHJcbiAgICAgICAgICAgIGNhc2UgRGF0YVR5cGUuY2hlY2tsaXN0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICdjaGVja2xpc3QnO1xyXG4gICAgICAgICAgICBjYXNlIERhdGFUeXBlLnJpc2s6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ3Jpc2snO1xyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICdmb2xkZXJfb3V0bGluZWQnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgZ2V0UGFyZW50TmFtZShpdGVtOiBJU2VsZWN0T25lSXRlbSkge1xyXG4gICAgICAgIGlmIChpdGVtLml0ZW1UeXBlID09PSB0aGlzLmRhdGFUeXBlLmNoZWNrbGlzdCB8fCBpdGVtLml0ZW1UeXBlID09PSB0aGlzLmRhdGFUeXBlLmRldmlhdGlvbikge1xyXG4gICAgICAgICAgICByZXR1cm4gaXRlbS5wYXJlbnROYW1lO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBnZXRJdGVtSWQoaXRlbTogSVNlbGVjdE9uZUl0ZW0pIHtcclxuICAgICAgICBpZiAoaXRlbS5pdGVtVHlwZSA9PT0gdGhpcy5kYXRhVHlwZS5wcm9jZXNzKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBgJHt0aGlzLkxBTkcuUFJPQ0VTU19JRH06ICR7aXRlbS5pdGVtTnVtYmVySWR9OyAke2l0ZW0uc3RhdHVzTmFtZX1gO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChpdGVtLml0ZW1UeXBlID09PSB0aGlzLmRhdGFUeXBlLmRvY3VtZW50KSB7XHJcbiAgICAgICAgICAgIHJldHVybiBgJHt0aGlzLkxBTkcuRE9DVU1FTlRfSUR9OiAke2l0ZW0uaXRlbU51bWJlcklkfTsgJHtpdGVtLnN0YXR1c05hbWV9YDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHNlbGVjdE5vZGVUcmVlRXZlbnQobm9kZSkge1xyXG4gICAgICAgIGxldCBwb3NpdGlvbiA9IC0xO1xyXG4gICAgICAgIGxldCBwYXJlbnROYW1lID0gJyc7XHJcbiAgICAgICAgbGV0IGl0ZW1OdW1iZXJJZCA9ICcnO1xyXG5cclxuICAgICAgICBwb3NpdGlvbiA9ICFub2RlLmV4cGFuZGFibGUgPyB0aGlzLnRyZWVEYXRhLmZpbmRJbmRleChwID0+IHAuY2hpbGRJZCA9PT0gbm9kZS5pZCAmJiBwLnJvb3RJZCA9PT0gbm9kZS5wYXJlbnRJZCkgOlxyXG4gICAgICAgICAgICB0aGlzLnRyZWVEYXRhLmZpbmRJbmRleChwID0+IHAucm9vdElkID09PSBub2RlLmlkKTtcclxuICAgICAgICBwYXJlbnROYW1lID0gdGhpcy50cmVlRGF0YVtwb3NpdGlvbl0ucGFyZW50SWQgPyB0aGlzLnRyZWVEYXRhW3Bvc2l0aW9uXS5zdWJOYW1lIDogdGhpcy50cmVlRGF0YVtwb3NpdGlvbl0ucm9vdE5hbWU7XHJcbiAgICAgICAgaXRlbU51bWJlcklkID0gdGhpcy50cmVlRGF0YVtwb3NpdGlvbl0/LmRpc3BsYXlJZD8udG9TdHJpbmcoKTtcclxuXHJcblxyXG4gICAgICAgIHRoaXMuY2hlY2tlZE5vZGVMaXN0ID0gW107XHJcbiAgICAgICAgdGhpcy5jaGVja2VkTm9kZUxpc3QucHVzaCh7XHJcbiAgICAgICAgICAgIG1vZHVsZUlkOiB0aGlzLm1vZHVsZUlkLFxyXG4gICAgICAgICAgICBpZDogbm9kZS5pZCxcclxuICAgICAgICAgICAgaXRlbU5hbWU6IG5vZGUubmFtZSxcclxuICAgICAgICAgICAgaXRlbVR5cGU6IG5vZGUuaXRlbVR5cGUsXHJcbiAgICAgICAgICAgIHBhcmVudElkOiBub2RlLnBhcmVudElkLFxyXG4gICAgICAgICAgICBwYXJlbnROYW1lOiBwYXJlbnROYW1lLFxyXG4gICAgICAgICAgICBpdGVtTnVtYmVySWQ6IGl0ZW1OdW1iZXJJZCxcclxuICAgICAgICAgICAgbGV2ZWxUeXBlOiBub2RlLmxldmVsVHlwZVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGdldENoaWxkTm9kZVNlbGVjdE9uZShsaXN0Q2hpbGRyZW4pIHtcclxuICAgICAgICB0aGlzLmxpc3RDaGlsZHJlblNlbGVjdE9uZSA9IFtdO1xyXG4gICAgICAgIHRoaXMubGlzdENoaWxkcmVuU2VsZWN0T25lID0gbGlzdENoaWxkcmVuO1xyXG4gICAgfVxyXG59XHJcbiIsIjxkaXYgaWQ9XCJxbXNsaWJfcmVsYXRlZF9wb3B1cFwiIGNsYXNzPVwicW1zbGliX19yZWxhdGVkX19wb3B1cF9fY29udGFpbmVyXCI+XHJcbiAgPGRpdiBpZD1cInFtc2xpYl9yZWxhdGVkX3BvcHVwX2hlYWRlclwiPlxyXG4gICAgPHNwYW4gbWF0LWljb24tYnV0dG9uIGNsYXNzPVwiYnV0dG9uX19jbG9zZVwiIChjbGljayk9XCJvbkNsb3NlQ2xpY2soKVwiPlxyXG4gICAgICA8bWF0LWljb24gbWF0LWljb24+Y2xvc2U8L21hdC1pY29uPlxyXG4gICAgPC9zcGFuPlxyXG4gICAgPGRpdiBpZD1cInFtc2xpYl9yZWxhdGVkX3BvcHVwX2hlYWRlcl8wMDFcIiBtYXQtZGlhbG9nLWNvbnRlbnQ+XHJcbiAgICAgIDxzcGFuPnt7IG1vZHVsZU5hbWUgfX08L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdlxyXG4gICAgaWQ9XCJxbXNsaWJfcmVsYXRlZF9wb3B1cF9zZWFyY2hcIlxyXG4gICAgY2xhc3M9XCJpbnB1dF9fZmllbGRcIlxyXG4gICAgKGNsaWNrKT1cInNob3dTZWFyY2hSZXN1bHQoKVwiXHJcbiAgPlxyXG4gICAgPGlucHV0XHJcbiAgICAgICNuYW1lXHJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgcGxhY2Vob2xkZXI9XCJ7eyBMQU5HLlNFQVJDSCB9fVwiXHJcbiAgICAgIG1hdElucHV0XHJcbiAgICAgIFtmb3JtQ29udHJvbF09XCJteUNvbnRyb2xcIlxyXG4gICAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIlxyXG4gICAgICAjYXV0b0NvbXBsZXRlSW5wdXRTZWFyY2hcclxuICAgIC8+XHJcbiAgICA8bWF0LWljb24+c2VhcmNoPC9tYXQtaWNvbj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImxpbmVfX2RpdmlkZXJcIj48L2Rpdj5cclxuXHJcbiAgPG1hdC1hdXRvY29tcGxldGVcclxuICAgICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCJcclxuICAgIFtkaXNwbGF5V2l0aF09XCJkaXNwbGF5UmVsYXRlZFwiXHJcbiAgICBjbGFzcz1cIm1hdC1hdXRvY29tcGxldGVfcmVsYXRlZC12aWV3cG9ydFwiXHJcbiAgPlxyXG4gICAgPGNkay12aXJ0dWFsLXNjcm9sbC12aWV3cG9ydFxyXG4gICAgICBxbXMtc2Nyb2xsYmFyXHJcbiAgICAgIGl0ZW1TaXplPVwiMTBcIlxyXG4gICAgICBjbGFzcz1cInJlbGF0ZWQtdmlld3BvcnRcIlxyXG4gICAgPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoX19tb2R1bGUtcmVzdWx0XCIgKm5nSWY9XCJmaWx0ZXJlZE9wdGlvbnMubGVuZ3RoXCI+XHJcbiAgICAgICAgPG1hdC1vcHRpb25cclxuICAgICAgICAgIGNsYXNzPVwic2VhcmNoX19vcHRpb25cIlxyXG4gICAgICAgICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBnZXRNb2R1bGVGaWx0ZXJlZE9wdGlvbnMoKVwiXHJcbiAgICAgICAgICBbdmFsdWVdPVwib3B0aW9uXCJcclxuICAgICAgICAgIChjbGljayk9XCJzZWxlY3RJdGVtU2VhcmNoZWQob3B0aW9uKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPHFtcy1saXN0LWl0ZW0gdHlwZT1cImltYWdlLXNxdWFyZVwiPlxyXG4gICAgICAgICAgICA8bWF0LWljb25cclxuICAgICAgICAgICAgICBsZWFkaW5nLWljb25cclxuICAgICAgICAgICAgICB0eXBlPVwiaW1hZ2Utc3F1YXJlXCJcclxuICAgICAgICAgICAgICBbc3ZnSWNvbl09XCJnZXROb2RlSWNvbihvcHRpb24pXCJcclxuICAgICAgICAgICAgPjwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIDxkaXYgcW1zLWxpc3QtaGVhZGVyPlxyXG4gICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgIHFtcy1saW5lXHJcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2FwdGlvblwiXHJcbiAgICAgICAgICAgICAgICBxbXMtdG9vbC10aXA9XCJ7e1xyXG4gICAgICAgICAgICAgICAgICBpc0VsbGlwc2lzQWN0aXZlKHNlYXJjaEl0ZW1SZXN1bHQpID8gb3B0aW9uLnBhcmVudE5hbWUgOiAnJ1xyXG4gICAgICAgICAgICAgICAgfX1cIlxyXG4gICAgICAgICAgICAgICAgbW9kZT1cImRhcmtcIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRQYXJlbnROYW1lKG9wdGlvbilcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxzcGFuICNzZWFyY2hJdGVtUmVzdWx0IGNsYXNzPVwic2VhcmNoX19yZXN1bHRfX3BhcmVudC1uYW1lXCI+XHJcbiAgICAgICAgICAgICAgICAgIHt7IG9wdGlvbi5wYXJlbnROYW1lIH19XHJcbiAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBxbXMtbGluZSB0eXBlPVwic3VidGl0bGVcIiBjbGFzcz1cInNlYXJjaF9fb3B0aW9uLW5hbWVcIj5cclxuICAgICAgICAgICAgICAgIHt7IG9wdGlvbi5pdGVtTmFtZSB9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FwdGlvblwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cIm9wdGlvbi5icmVhZGN1bWJzICYmIG9wdGlvbi5icmVhZGN1bWJzLmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHFtcy1icmVhZGNydW1iXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnJlYWRjcnVtYi1jb250YWluZVwiXHJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0YWJsZVwiXHJcbiAgICAgICAgICAgICAgICAgIG51bURpc3BsYXlJdGVtPVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgIFtub2Rlc109XCJvcHRpb24uYnJlYWRjdW1ic1wiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8L3Ftcy1icmVhZGNydW1iPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBxbXMtbGluZSBjb2xvcj1cImRlZmF1bHQtc3VidGl0bGVcIiAqbmdJZj1cImdldEl0ZW1JZChvcHRpb24pXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1pY29ucy1vdXRsaW5lZCBzZWFyY2hfX2Rlc2NyaXB0aW9uLWljb25cIj5cclxuICAgICAgICAgICAgICAgIGxvY2FsX29mZmVyXHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgIHt7IGdldEl0ZW1JZChvcHRpb24pIH19XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9xbXMtbGlzdC1pdGVtPlxyXG4gICAgICAgIDwvbWF0LW9wdGlvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Nkay12aXJ0dWFsLXNjcm9sbC12aWV3cG9ydD5cclxuICA8L21hdC1hdXRvY29tcGxldGU+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJxbXMtc2Nyb2xsYmFyIGNvbC0xMiBxbXNsaWJfcmVsYXRlZF9wb3B1cF9jb250ZW50XCJcclxuICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgIHBhbmVsX19jb250ZW50X2l0ZW06IGNoZWNrZWROb2RlTGlzdC5sZW5ndGgsXHJcbiAgICAgICAgcGFuZWxfX2NvbnRlbnQ6ICFjaGVja2VkTm9kZUxpc3QubGVuZ3RoXHJcbiAgICAgIH1cIlxyXG4gICAgPlxyXG4gICAgICA8bWF0LWV4cGFuc2lvbi1wYW5lbFxyXG4gICAgICAgIGhpZGVUb2dnbGVcclxuICAgICAgICBpZD1cInFtc2xpYl9yZWxhdGVkX3BvcHVwX2NvbW1vbl8wMDFcIlxyXG4gICAgICAgIFtleHBhbmRlZF09XCJpc0NvbW1vbkV4cGFuZGVkXCJcclxuICAgICAgICAob3BlbmVkKT1cImlzQ29tbW9uRXhwYW5kZWQgPSB0cnVlXCJcclxuICAgICAgICAoY2xvc2VkKT1cImlzQ29tbW9uRXhwYW5kZWQgPSBmYWxzZVwiXHJcbiAgICAgICAgY2xhc3M9XCJwYW5lbC10cmVlXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxkaXYgaWQ9XCJxbXNsaWJfcmVsYXRlZF9wb3B1cF9jb21tb25fMDAyXCI+XHJcbiAgICAgICAgICA8cW1zLXRyZWVcclxuICAgICAgICAgICAgW3RyZWVEYXRhXT1cInRyZWVEYXRhXCJcclxuICAgICAgICAgICAgW3RyZWVDb25maWddPVwidHJlZUNvbmZpZ1wiXHJcbiAgICAgICAgICAgIFtzZWxlY3RlZERhdGFdPVwic2VsZWN0ZWREYXRhXCJcclxuICAgICAgICAgICAgW3NlbGVjdGVkUmlza0RhdGFdPVwic2VsZWN0ZWRSaXNrRGF0YVwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZExpc3RdPVwiZGlzYWJsZWRMaXN0XCJcclxuICAgICAgICAgICAgKHNlbGVjdE5vZGVFdmVudCk9XCJzZWxlY3ROb2RlVHJlZUV2ZW50KCRldmVudClcIlxyXG4gICAgICAgICAgICAoZ2V0Q2hpbGROb2RlU2VsZWN0T25lKT1cImdldENoaWxkTm9kZVNlbGVjdE9uZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgW2V4cGFuZE9uVGl0bGVDbGlja109XCJ0cnVlXCJcclxuICAgICAgICAgICAgW2V4cGFuZFRvQ2hpbGROb2RlXT1cImV4cGFuZFRvQ2hpbGROb2RlXCJcclxuICAgICAgICAgID48L3Ftcy10cmVlPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L21hdC1leHBhbnNpb24tcGFuZWw+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiAqbmdJZj1cImNoZWNrZWROb2RlTGlzdC5sZW5ndGhcIiBjbGFzcz1cImxpbmVfX2RpdmlkZXJcIj48L2Rpdj5cclxuXHJcbiAgPGRpdiAqbmdJZj1cImNoZWNrZWROb2RlTGlzdC5sZW5ndGhcIiBjbGFzcz1cInBhbmVsX19pdGVtIHFtcy1zY3JvbGxiYXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyZWxhdGVkX19pdGVtX19pbmxpbmVcIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjaGVja2VkTm9kZUxpc3RcIj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgICpuZ0lmPVwiaXRlbS5pdGVtTmFtZVwiXHJcbiAgICAgICAgbWF0LWJ1dHRvblxyXG4gICAgICAgIGNsYXNzPVwicmVsYXRlZF9faXRlbV9fY29udGVudFwiXHJcbiAgICAgICAgcW1zLXRvb2wtdGlwPVwie3tcclxuICAgICAgICAgIGlzRWxsaXBzaXNBY3RpdmUoaXRlbU5hbWUpID8gZ2V0SXRlbUNoaXBOYW1lKGl0ZW0pIDogJydcclxuICAgICAgICB9fVwiXHJcbiAgICAgICAgbW9kZT1cImRhcmtcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJyZWxhdGVkX19pdGVtX19jb250ZW50X25hbWVcIiAjaXRlbU5hbWU+e3tcclxuICAgICAgICAgIGdldEl0ZW1DaGlwTmFtZShpdGVtKVxyXG4gICAgICAgIH19PC9zcGFuPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwibGluZV9fZGl2aWRlclwiPjwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiY29uZmlybV9fYnV0dG9uX19ncm91cHNcIj5cclxuICAgIDxidXR0b25cclxuICAgICAgKm5nSWY9XCIhY2hlY2tlZE5vZGVMaXN0Lmxlbmd0aFwiXHJcbiAgICAgIHFtcy1idG5cclxuICAgICAgc3R5bGU9XCJtYXJnaW4tdG9wOiA3cHhcIlxyXG4gICAgICAoY2xpY2spPVwib25BZGRDbGljaygpXCJcclxuICAgID5cclxuICAgICAge3sgTEFORy5BREQgfX1cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvblxyXG4gICAgICAqbmdJZj1cImNoZWNrZWROb2RlTGlzdC5sZW5ndGhcIlxyXG4gICAgICBxbXMtYnRuXHJcbiAgICAgIHN0eWxlPVwibWFyZ2luLXRvcDogMHB4XCJcclxuICAgICAgKGNsaWNrKT1cIm9uQWRkQ2xpY2soKVwiXHJcbiAgICA+XHJcbiAgICAgIHt7IExBTkcuQUREIH19ICh7eyBjaGVja2VkTm9kZUxpc3QubGVuZ3RoIH19KVxyXG4gICAgPC9idXR0b24+XHJcbiAgICA8YnV0dG9uXHJcbiAgICAgIHFtcy1idG4tdGV4dFxyXG4gICAgICBbbmdTdHlsZV09XCJ7ICdtYXJnaW4tdG9wJzogY2hlY2tlZE5vZGVMaXN0Lmxlbmd0aCA/ICcwcHgnIDogJzdweCcgfVwiXHJcbiAgICAgIChjbGljayk9XCJvbkNsb3NlQ2xpY2soKVwiXHJcbiAgICA+XHJcbiAgICAgIHt7IExBTkcuQ0FOQ0VMIH19XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -0,0 +1,94 @@
1
+ import { ScrollingModule } from "@angular/cdk/scrolling";
2
+ import { CommonModule } from "@angular/common";
3
+ import { NgModule } from "@angular/core";
4
+ import { ReactiveFormsModule } from "@angular/forms";
5
+ import { MatAutocompleteModule } from "@angular/material/autocomplete";
6
+ import { MatButtonModule } from "@angular/material/button";
7
+ import { MatCardModule } from "@angular/material/card";
8
+ import { MatCheckboxModule } from "@angular/material/checkbox";
9
+ import { MatExpansionModule } from "@angular/material/expansion";
10
+ import { MatIconModule } from "@angular/material/icon";
11
+ import { MatListModule } from "@angular/material/list";
12
+ import { MatSidenavModule } from '@angular/material/sidenav';
13
+ import { MatTreeModule } from "@angular/material/tree";
14
+ import { SharedMaterialModule } from '../../material-module';
15
+ import { QmsAngularModule } from '../../qms-angular.module';
16
+ import { QMSAppIconModule } from "../app-icon/app-icon.module";
17
+ import { QMSBreadcrumbModule } from "../breadcrumb/breadcrumb.module";
18
+ import { QMSListModule } from "../list/list.module";
19
+ import { QMSTreeModule } from "../tree/tree.module";
20
+ import { SelectOneDialog } from "./select-one.component";
21
+ import * as i0 from "@angular/core";
22
+ export class QMSSelectOneModule {
23
+ }
24
+ QMSSelectOneModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: QMSSelectOneModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
25
+ QMSSelectOneModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: QMSSelectOneModule, declarations: [SelectOneDialog], imports: [CommonModule,
26
+ MatTreeModule,
27
+ MatIconModule,
28
+ MatButtonModule,
29
+ MatCheckboxModule,
30
+ MatExpansionModule,
31
+ MatAutocompleteModule,
32
+ ReactiveFormsModule,
33
+ ScrollingModule,
34
+ MatCardModule,
35
+ MatSidenavModule,
36
+ MatListModule,
37
+ SharedMaterialModule,
38
+ QMSListModule,
39
+ QmsAngularModule,
40
+ QMSBreadcrumbModule,
41
+ QMSAppIconModule,
42
+ QMSTreeModule], exports: [SelectOneDialog] });
43
+ QMSSelectOneModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: QMSSelectOneModule, imports: [[
44
+ CommonModule,
45
+ MatTreeModule,
46
+ MatIconModule,
47
+ MatButtonModule,
48
+ MatCheckboxModule,
49
+ MatExpansionModule,
50
+ MatAutocompleteModule,
51
+ ReactiveFormsModule,
52
+ ScrollingModule,
53
+ MatCardModule,
54
+ MatSidenavModule,
55
+ MatListModule,
56
+ SharedMaterialModule,
57
+ QMSListModule,
58
+ QmsAngularModule,
59
+ QMSBreadcrumbModule,
60
+ QMSAppIconModule,
61
+ QMSTreeModule
62
+ ]] });
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: QMSSelectOneModule, decorators: [{
64
+ type: NgModule,
65
+ args: [{
66
+ declarations: [
67
+ SelectOneDialog
68
+ ],
69
+ imports: [
70
+ CommonModule,
71
+ MatTreeModule,
72
+ MatIconModule,
73
+ MatButtonModule,
74
+ MatCheckboxModule,
75
+ MatExpansionModule,
76
+ MatAutocompleteModule,
77
+ ReactiveFormsModule,
78
+ ScrollingModule,
79
+ MatCardModule,
80
+ MatSidenavModule,
81
+ MatListModule,
82
+ SharedMaterialModule,
83
+ QMSListModule,
84
+ QmsAngularModule,
85
+ QMSBreadcrumbModule,
86
+ QMSAppIconModule,
87
+ QMSTreeModule
88
+ ],
89
+ exports: [
90
+ SelectOneDialog
91
+ ]
92
+ }]
93
+ }] });
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW9uZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9xbXMtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0LW9uZS9zZWxlY3Qtb25lLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXBELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUE4QnpELE1BQU0sT0FBTyxrQkFBa0I7OytHQUFsQixrQkFBa0I7Z0hBQWxCLGtCQUFrQixpQkExQnZCLGVBQWUsYUFHZixZQUFZO1FBQ1osYUFBYTtRQUNiLGFBQWE7UUFDYixlQUFlO1FBQ2YsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQixxQkFBcUI7UUFDckIsbUJBQW1CO1FBQ25CLGVBQWU7UUFDZixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixvQkFBb0I7UUFDcEIsYUFBYTtRQUNiLGdCQUFnQjtRQUNoQixtQkFBbUI7UUFDbkIsZ0JBQWdCO1FBQ2hCLGFBQWEsYUFHYixlQUFlO2dIQUdWLGtCQUFrQixZQXhCbEI7WUFDTCxZQUFZO1lBQ1osYUFBYTtZQUNiLGFBQWE7WUFDYixlQUFlO1lBQ2YsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixxQkFBcUI7WUFDckIsbUJBQW1CO1lBQ25CLGVBQWU7WUFDZixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixvQkFBb0I7WUFDcEIsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixtQkFBbUI7WUFDbkIsZ0JBQWdCO1lBQ2hCLGFBQWE7U0FDaEI7MkZBS1Esa0JBQWtCO2tCQTVCOUIsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUU7d0JBQ1YsZUFBZTtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixrQkFBa0I7d0JBQ2xCLHFCQUFxQjt3QkFDckIsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLG9CQUFvQjt3QkFDcEIsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3dCQUNoQixhQUFhO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsZUFBZTtxQkFDbEI7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTY3JvbGxpbmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL3Njcm9sbGluZ1wiO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlXCI7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9idXR0b25cIjtcclxuaW1wb3J0IHsgTWF0Q2FyZE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9jYXJkXCI7XHJcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94XCI7XHJcbmltcG9ydCB7IE1hdEV4cGFuc2lvbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9leHBhbnNpb25cIjtcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9pY29uXCI7XHJcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdFwiO1xyXG5pbXBvcnQgeyBNYXRTaWRlbmF2TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XHJcbmltcG9ydCB7IE1hdFRyZWVNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvdHJlZVwiO1xyXG5pbXBvcnQgeyBTaGFyZWRNYXRlcmlhbE1vZHVsZSB9IGZyb20gJy4uLy4uL21hdGVyaWFsLW1vZHVsZSc7XHJcbmltcG9ydCB7IFFtc0FuZ3VsYXJNb2R1bGUgfSBmcm9tICcuLi8uLi9xbXMtYW5ndWxhci5tb2R1bGUnO1xyXG5pbXBvcnQgeyBRTVNBcHBJY29uTW9kdWxlIH0gZnJvbSBcIi4uL2FwcC1pY29uL2FwcC1pY29uLm1vZHVsZVwiO1xyXG5pbXBvcnQgeyBRTVNCcmVhZGNydW1iTW9kdWxlIH0gZnJvbSBcIi4uL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5tb2R1bGVcIjtcclxuaW1wb3J0IHsgUU1TTGlzdE1vZHVsZSB9IGZyb20gXCIuLi9saXN0L2xpc3QubW9kdWxlXCI7XHJcbmltcG9ydCB7IFFNU1RyZWVNb2R1bGUgfSBmcm9tIFwiLi4vdHJlZS90cmVlLm1vZHVsZVwiO1xyXG5cclxuaW1wb3J0IHsgU2VsZWN0T25lRGlhbG9nIH0gZnJvbSBcIi4vc2VsZWN0LW9uZS5jb21wb25lbnRcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBkZWNsYXJhdGlvbnM6IFtcclxuICAgICAgICBTZWxlY3RPbmVEaWFsb2dcclxuICAgIF0sXHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgICAgIE1hdFRyZWVNb2R1bGUsXHJcbiAgICAgICAgTWF0SWNvbk1vZHVsZSxcclxuICAgICAgICBNYXRCdXR0b25Nb2R1bGUsXHJcbiAgICAgICAgTWF0Q2hlY2tib3hNb2R1bGUsXHJcbiAgICAgICAgTWF0RXhwYW5zaW9uTW9kdWxlLFxyXG4gICAgICAgIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSxcclxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgICAgIFNjcm9sbGluZ01vZHVsZSxcclxuICAgICAgICBNYXRDYXJkTW9kdWxlLFxyXG4gICAgICAgIE1hdFNpZGVuYXZNb2R1bGUsXHJcbiAgICAgICAgTWF0TGlzdE1vZHVsZSxcclxuICAgICAgICBTaGFyZWRNYXRlcmlhbE1vZHVsZSxcclxuICAgICAgICBRTVNMaXN0TW9kdWxlLFxyXG4gICAgICAgIFFtc0FuZ3VsYXJNb2R1bGUsXHJcbiAgICAgICAgUU1TQnJlYWRjcnVtYk1vZHVsZSxcclxuICAgICAgICBRTVNBcHBJY29uTW9kdWxlLFxyXG4gICAgICAgIFFNU1RyZWVNb2R1bGVcclxuICAgIF0sXHJcbiAgICBleHBvcnRzOiBbXHJcbiAgICAgICAgU2VsZWN0T25lRGlhbG9nXHJcbiAgICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBRTVNTZWxlY3RPbmVNb2R1bGUgeyB9XHJcbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { Injectable } from "@angular/core";
2
+ import { BehaviorSubject } from "rxjs";
3
+ import * as i0 from "@angular/core";
4
+ export class QMSSelectOneGlobalService {
5
+ constructor() {
6
+ this.searchRelated = new BehaviorSubject([]);
7
+ }
8
+ setSearchRelated(result) {
9
+ this.searchRelated.next(result);
10
+ }
11
+ }
12
+ QMSSelectOneGlobalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: QMSSelectOneGlobalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
13
+ QMSSelectOneGlobalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: QMSSelectOneGlobalService, providedIn: 'root' });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: QMSSelectOneGlobalService, decorators: [{
15
+ type: Injectable,
16
+ args: [{ providedIn: 'root' }]
17
+ }], ctorParameters: function () { return []; } });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW9uZS1nbG9iYWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Ftcy1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3Qtb25lL3NlcnZpY2Uvc2VsZWN0LW9uZS1nbG9iYWwuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBSXZDLE1BQU0sT0FBTyx5QkFBeUI7SUFFbEM7UUFEQSxrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFtQixFQUFFLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRWpCLGdCQUFnQixDQUFDLE1BQXdCO1FBQ3JDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7O3NIQU5RLHlCQUF5QjswSEFBekIseUJBQXlCLGNBRFosTUFBTTsyRkFDbkIseUJBQXlCO2tCQURyQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBJU2VsZWN0T25lSXRlbSB9IGZyb20gXCIuLi9jb21tb24vc2VsZWN0LWRhdGEubW9kZWxcIjtcclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBRTVNTZWxlY3RPbmVHbG9iYWxTZXJ2aWNlIHtcclxuICAgIHNlYXJjaFJlbGF0ZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElTZWxlY3RPbmVJdGVtW10+KFtdKTtcclxuICAgIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gICAgc2V0U2VhcmNoUmVsYXRlZChyZXN1bHQ6IElTZWxlY3RPbmVJdGVtW10pIHtcclxuICAgICAgICB0aGlzLnNlYXJjaFJlbGF0ZWQubmV4dChyZXN1bHQpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==