aril 1.2.18 → 1.2.19

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 (376) hide show
  1. package/boot/config/apps/src/interfaces.d.ts +5 -0
  2. package/boot/config/apps/src/route-permissions.d.ts +2 -2
  3. package/esm2022/boot/config/apps/src/apps.service.mjs +5 -5
  4. package/esm2022/boot/config/apps/src/auth.guard.mjs +4 -4
  5. package/esm2022/boot/config/apps/src/interfaces.mjs +1 -1
  6. package/esm2022/boot/config/apps/src/route-permissions.mjs +24 -6
  7. package/esm2022/boot/config/apps/src/showdowDOMWrapper.mjs +4 -4
  8. package/esm2022/boot/host/src/app.component.mjs +4 -4
  9. package/esm2022/boot/mfe/src/app.component.mjs +4 -4
  10. package/esm2022/boot/pages/src/forbidden.component.mjs +4 -4
  11. package/esm2022/boot/pages/src/notFound.component.mjs +4 -4
  12. package/esm2022/http/src/httpBackend.mjs +4 -4
  13. package/esm2022/i18n/src/i18n.module.mjs +5 -5
  14. package/esm2022/i18n/src/loader.mjs +4 -4
  15. package/esm2022/theme/layout/app/breadcrumb/app.breadcrumb.component.mjs +4 -4
  16. package/esm2022/theme/layout/app/expandableMenu/expandable-menu.component.mjs +4 -4
  17. package/esm2022/theme/layout/app/favorite-pages/favorite-pages-sidebar.component.mjs +4 -4
  18. package/esm2022/theme/layout/app/favorite-pages/favorite-pages.service.mjs +4 -4
  19. package/esm2022/theme/layout/app/favorite-pages/modals/add-edit-favorite-modal/add-edit-favorite-modal.component.mjs +4 -4
  20. package/esm2022/theme/layout/app/general-search/general-search.component.mjs +4 -4
  21. package/esm2022/theme/layout/app/history/history-sidebar.component.mjs +4 -4
  22. package/esm2022/theme/layout/app/history/history.service.mjs +4 -4
  23. package/esm2022/theme/layout/app/layout/app.layout.component.mjs +4 -4
  24. package/esm2022/theme/layout/app/layout/mfe.layout.component.mjs +4 -4
  25. package/esm2022/theme/layout/app/notifications/notifications-sidebar.component.mjs +4 -4
  26. package/esm2022/theme/layout/app/profileSidebar/app.profilesidebar.component.mjs +4 -4
  27. package/esm2022/theme/layout/app/profileSidebar/modals/change-password-modal/change-password-modal.component.mjs +4 -4
  28. package/esm2022/theme/layout/app/profileSidebar/modals/edit-profile-modal/edit-profile-modal.component.mjs +4 -4
  29. package/esm2022/theme/layout/app/profileSidebar/profile.service.mjs +4 -4
  30. package/esm2022/theme/layout/app/site-map/site-map-sidebar.component.mjs +4 -4
  31. package/esm2022/theme/layout/app/static-sidebar/static-sidebar.component.mjs +4 -4
  32. package/esm2022/theme/layout/app/topbar/app.topbar.component.mjs +4 -4
  33. package/esm2022/theme/layout/service/app.layout.service.mjs +4 -4
  34. package/esm2022/theme/layout/service/app.menu.service.mjs +4 -4
  35. package/esm2022/theme/layout/service/breadcrumb.service.mjs +4 -4
  36. package/esm2022/theme/layout/service/notifications.service.mjs +4 -4
  37. package/esm2022/theme/layout/service/search.service.mjs +4 -4
  38. package/esm2022/theme/layout/service/selection-group.service.mjs +4 -4
  39. package/esm2022/ui/autoComplete/src/auto-complete.component.mjs +4 -4
  40. package/esm2022/ui/badge/src/badge.component.mjs +4 -4
  41. package/esm2022/ui/button/src/button.component.mjs +4 -4
  42. package/esm2022/ui/button/src/split-button.component.mjs +4 -4
  43. package/esm2022/ui/calendar/src/calendar.component.mjs +4 -4
  44. package/esm2022/ui/charts/src/amCharts/column/column-chart.component.mjs +4 -4
  45. package/esm2022/ui/charts/src/amCharts/line/line-chart.component.mjs +4 -4
  46. package/esm2022/ui/charts/src/amCharts/pie/pie-chart.component.mjs +4 -4
  47. package/esm2022/ui/charts/src/highCharts/area/area-chart.component.mjs +4 -4
  48. package/esm2022/ui/charts/src/highCharts/bar/bar-chart.component.mjs +4 -4
  49. package/esm2022/ui/charts/src/highCharts/column/column-chart.component.mjs +4 -4
  50. package/esm2022/ui/charts/src/highCharts/gauge/solid-gauge.component.mjs +4 -4
  51. package/esm2022/ui/charts/src/highCharts/heatmap/heatMap-chart.component.mjs +4 -4
  52. package/esm2022/ui/charts/src/highCharts/line/line-chart-datetime-axis.component.mjs +4 -4
  53. package/esm2022/ui/charts/src/highCharts/line/line-chart-series.component.mjs +4 -4
  54. package/esm2022/ui/charts/src/highCharts/line/line-chart.component.mjs +4 -4
  55. package/esm2022/ui/charts/src/highCharts/pie/pie-chart.component.mjs +4 -4
  56. package/esm2022/ui/checkbox/src/check-box.component.mjs +4 -4
  57. package/esm2022/ui/checkbox/src/tri-state-checkbox.component.mjs +4 -4
  58. package/esm2022/ui/chip/src/chip.component.mjs +4 -4
  59. package/esm2022/ui/collapse-reorder-list/src/collapse-reorder-list.component.mjs +4 -4
  60. package/esm2022/ui/dxEditor/src/dx-editor.component.mjs +4 -4
  61. package/esm2022/ui/dxField/src/dx-field.component.mjs +4 -4
  62. package/esm2022/ui/editor/src/aril-editor.component.mjs +4 -4
  63. package/esm2022/ui/field/src/field.component.mjs +4 -4
  64. package/esm2022/ui/fileUpload/src/file-upload.component.mjs +4 -4
  65. package/esm2022/ui/form/index.mjs +5 -5
  66. package/esm2022/ui/form/src/form-submit-button.component.mjs +4 -4
  67. package/esm2022/ui/form/src/form.component.mjs +4 -4
  68. package/esm2022/ui/img-viewer/src/img-viewer.component.mjs +4 -4
  69. package/esm2022/ui/json-diff-comparison/src/json-diff.component.mjs +4 -4
  70. package/esm2022/ui/lib/src/form/form-error-message.component.mjs +4 -4
  71. package/esm2022/ui/lib/src/form/form-error-message.directive.mjs +4 -4
  72. package/esm2022/ui/lib/src/grid/enum-color-picker.pipe.mjs +4 -4
  73. package/esm2022/ui/lib/src/grid/flex-grid.directive.mjs +4 -4
  74. package/esm2022/ui/lib/src/input/common-input-validators.service.mjs +4 -4
  75. package/esm2022/ui/lib/src/input/dx-input-error-message.pipe.mjs +4 -4
  76. package/esm2022/ui/lib/src/input/input-disabled.directive.mjs +4 -4
  77. package/esm2022/ui/lib/src/input/input-error-message.pipe.mjs +4 -4
  78. package/esm2022/ui/lib/src/input/value-accessor.directive.mjs +4 -4
  79. package/esm2022/ui/loader/src/loader.component.mjs +4 -4
  80. package/esm2022/ui/mask/src/mask.component.mjs +4 -4
  81. package/esm2022/ui/multiSelect/src/multi-select.component.mjs +4 -4
  82. package/esm2022/ui/number/src/number.component.mjs +4 -4
  83. package/esm2022/ui/operation-types-dialog/src/operation-types-dialog.component.mjs +4 -4
  84. package/esm2022/ui/overlayPanel/src/overlay-panel.component.mjs +4 -4
  85. package/esm2022/ui/panel/src/panel.component.mjs +4 -4
  86. package/esm2022/ui/password/src/password.component.mjs +4 -4
  87. package/esm2022/ui/pdf-viewer/src/pdf-viewer.component.mjs +4 -4
  88. package/esm2022/ui/progressbar/src/progressbar.component.mjs +4 -4
  89. package/esm2022/ui/radioButton/src/radio-button.component.mjs +4 -4
  90. package/esm2022/ui/relativeDateSelector/src/relative-date-selector.component.mjs +4 -4
  91. package/esm2022/ui/selectBox/src/select-box.component.mjs +4 -4
  92. package/esm2022/ui/switch/src/switch.component.mjs +4 -4
  93. package/esm2022/ui/table/index.mjs +5 -5
  94. package/esm2022/ui/table/src/export-overlay-panel.component.mjs +4 -4
  95. package/esm2022/ui/table/src/table-column.component.mjs +4 -4
  96. package/esm2022/ui/table/src/table.component.mjs +4 -4
  97. package/esm2022/ui/table-expand/index.mjs +5 -5
  98. package/esm2022/ui/table-expand/src/table-column.component.mjs +4 -4
  99. package/esm2022/ui/table-expand/src/table-expand-area.component.mjs +4 -4
  100. package/esm2022/ui/table-expand/src/table.component.mjs +4 -4
  101. package/esm2022/ui/tag/src/tag.component.mjs +4 -4
  102. package/esm2022/ui/tagBox/src/tag-box.component.mjs +4 -4
  103. package/esm2022/ui/text/src/text.component.mjs +4 -4
  104. package/esm2022/ui/textArea/src/text-area.component.mjs +4 -4
  105. package/esm2022/ui/toggle-button/src/toggle-button.component.mjs +4 -4
  106. package/esm2022/ui/tooltip/src/tooltip-component.mjs +4 -4
  107. package/esm2022/ui/translate-input/src/aril-lang-modal/aril-lang-modal.component.mjs +4 -4
  108. package/esm2022/ui/translate-input/src/aril-translate-input.component.mjs +4 -4
  109. package/esm2022/ui/tree/src/tree.component.mjs +4 -4
  110. package/esm2022/ui/treeSelect/src/treeSelect.component.mjs +4 -4
  111. package/esm2022/ui/treeTable/src/tree-table.component.mjs +4 -4
  112. package/esm2022/ui/value/src/value.component.mjs +4 -4
  113. package/esm2022/ui-business/assetPicker/src/asset-picker.component.mjs +4 -4
  114. package/esm2022/ui-business/detailed-overlay-panel/src/detailed-overlay-panel.component.mjs +4 -4
  115. package/esm2022/ui-business/enumPicker/src/enum-picker.component.mjs +4 -4
  116. package/esm2022/ui-business/image-viewer/src/aril-image-viewer.component.mjs +4 -4
  117. package/esm2022/ui-business/multiple-ref-value/src/multiple-ref-value.component.mjs +4 -4
  118. package/esm2022/ui-business/notification-templates-dialog/src/notification-templates-dialog.component.mjs +4 -4
  119. package/esm2022/ui-business/operation-types-dialog/src/operation-types-dialog.component.mjs +4 -4
  120. package/esm2022/ui-business/pdf-preview-modal/src/pdf-preview-modal.component.mjs +4 -4
  121. package/esm2022/ui-business/ref-value/src/ref-value.component.mjs +4 -4
  122. package/esm2022/ui-business/rolePicker/src/role-picker.component.mjs +4 -4
  123. package/esm2022/ui-business/trace-drawer/src/app-log.service.mjs +4 -4
  124. package/esm2022/ui-business/trace-drawer/src/trace-drawer.component.mjs +4 -4
  125. package/esm2022/ui-business/trace-drawer/src/trace-log.service.mjs +4 -4
  126. package/esm2022/ui-business/trace-id/src/trace-id.component.mjs +4 -4
  127. package/esm2022/ui-business/userPicker/src/user-picker.component.mjs +4 -4
  128. package/esm2022/util/block/src/block.mjs +7 -7
  129. package/esm2022/util/directives/src/detail-page-customization/detail-page-customization.directive.mjs +4 -4
  130. package/esm2022/util/directives/src/dialog-component/plugin-dialog.component.mjs +4 -4
  131. package/esm2022/util/directives/src/dialog-service/plugin-dialog.service.mjs +4 -4
  132. package/esm2022/util/lib/src/module-router.mjs +4 -4
  133. package/esm2022/util/pipes/src/distance-to-now.pipe.mjs +4 -4
  134. package/esm2022/util/pipes/src/get-column-by-field.pipe.mjs +4 -4
  135. package/esm2022/util/pipes/src/parse.pipe.mjs +4 -4
  136. package/esm2022/util/pipes/src/round-number.pipe.mjs +4 -4
  137. package/esm2022/util/pipes/src/safe.pipe.mjs +4 -4
  138. package/esm2022/util/pipes/src/translate-json/translate-json.pipe.mjs +4 -4
  139. package/esm2022/util/pub-sub/src/pub-sub.service.mjs +4 -4
  140. package/esm2022/util/sync-active-tab-route/src/sync-active-tab-route.directive.mjs +4 -4
  141. package/esm2022/util/unwrap/src/unwrap-tag.directive.mjs +4 -4
  142. package/fesm2022/{aril-app.component-wxP3y8dg.mjs → aril-app.component-Cw1MxAqD.mjs} +4 -4
  143. package/fesm2022/{aril-app.component-wxP3y8dg.mjs.map → aril-app.component-Cw1MxAqD.mjs.map} +1 -1
  144. package/fesm2022/aril-boot-base.mjs +1 -1
  145. package/fesm2022/aril-boot-base.mjs.map +1 -1
  146. package/fesm2022/aril-boot-bridge.mjs.map +1 -1
  147. package/fesm2022/aril-boot-config-api.mjs +1 -1
  148. package/fesm2022/aril-boot-config-api.mjs.map +1 -1
  149. package/fesm2022/aril-boot-config-apps.mjs +34 -16
  150. package/fesm2022/aril-boot-config-apps.mjs.map +1 -1
  151. package/fesm2022/aril-boot-config-plugins.mjs +1 -1
  152. package/fesm2022/aril-boot-config-plugins.mjs.map +1 -1
  153. package/fesm2022/aril-boot-config-translate.mjs.map +1 -1
  154. package/fesm2022/aril-boot-host.mjs +4 -4
  155. package/fesm2022/aril-boot-host.mjs.map +1 -1
  156. package/fesm2022/{aril-boot-mfe-app.component-7IjAmjz0.mjs → aril-boot-mfe-app.component-CCTntpyN.mjs} +5 -5
  157. package/fesm2022/{aril-boot-mfe-app.component-7IjAmjz0.mjs.map → aril-boot-mfe-app.component-CCTntpyN.mjs.map} +1 -1
  158. package/fesm2022/{aril-boot-mfe-aril-boot-mfe-KXDpUyv7.mjs → aril-boot-mfe-aril-boot-mfe-D8DZ-gT-.mjs} +4 -4
  159. package/fesm2022/{aril-boot-mfe-aril-boot-mfe-KXDpUyv7.mjs.map → aril-boot-mfe-aril-boot-mfe-D8DZ-gT-.mjs.map} +1 -1
  160. package/fesm2022/aril-boot-mfe.mjs +1 -1
  161. package/fesm2022/aril-boot-pages.mjs +6 -6
  162. package/fesm2022/aril-boot-pages.mjs.map +1 -1
  163. package/fesm2022/aril-http.mjs +3 -3
  164. package/fesm2022/aril-http.mjs.map +1 -1
  165. package/fesm2022/aril-i18n.mjs +7 -7
  166. package/fesm2022/aril-i18n.mjs.map +1 -1
  167. package/fesm2022/aril-keycloak.mjs.map +1 -1
  168. package/fesm2022/aril-provider.mjs +1 -1
  169. package/fesm2022/aril-provider.mjs.map +1 -1
  170. package/fesm2022/aril-theme-layout.mjs +72 -72
  171. package/fesm2022/aril-theme-layout.mjs.map +1 -1
  172. package/fesm2022/aril-ui-autoComplete.mjs +6 -6
  173. package/fesm2022/aril-ui-autoComplete.mjs.map +1 -1
  174. package/fesm2022/aril-ui-badge.mjs +4 -4
  175. package/fesm2022/aril-ui-badge.mjs.map +1 -1
  176. package/fesm2022/aril-ui-business-assetPicker.mjs +5 -5
  177. package/fesm2022/aril-ui-business-assetPicker.mjs.map +1 -1
  178. package/fesm2022/aril-ui-business-detailed-overlay-panel.mjs +5 -5
  179. package/fesm2022/aril-ui-business-detailed-overlay-panel.mjs.map +1 -1
  180. package/fesm2022/aril-ui-business-enumPicker.mjs +5 -5
  181. package/fesm2022/aril-ui-business-enumPicker.mjs.map +1 -1
  182. package/fesm2022/aril-ui-business-image-viewer.mjs +3 -3
  183. package/fesm2022/aril-ui-business-image-viewer.mjs.map +1 -1
  184. package/fesm2022/aril-ui-business-multiple-ref-value.mjs +4 -4
  185. package/fesm2022/aril-ui-business-multiple-ref-value.mjs.map +1 -1
  186. package/fesm2022/aril-ui-business-notification-templates-dialog.mjs +3 -3
  187. package/fesm2022/aril-ui-business-notification-templates-dialog.mjs.map +1 -1
  188. package/fesm2022/aril-ui-business-operation-types-dialog.mjs +3 -3
  189. package/fesm2022/aril-ui-business-operation-types-dialog.mjs.map +1 -1
  190. package/fesm2022/aril-ui-business-pdf-preview-modal.mjs +3 -3
  191. package/fesm2022/aril-ui-business-pdf-preview-modal.mjs.map +1 -1
  192. package/fesm2022/aril-ui-business-ref-value.mjs +4 -4
  193. package/fesm2022/aril-ui-business-ref-value.mjs.map +1 -1
  194. package/fesm2022/aril-ui-business-rolePicker.mjs +4 -4
  195. package/fesm2022/aril-ui-business-rolePicker.mjs.map +1 -1
  196. package/fesm2022/aril-ui-business-trace-drawer.mjs +10 -10
  197. package/fesm2022/aril-ui-business-trace-drawer.mjs.map +1 -1
  198. package/fesm2022/aril-ui-business-trace-id.mjs +4 -4
  199. package/fesm2022/aril-ui-business-trace-id.mjs.map +1 -1
  200. package/fesm2022/aril-ui-business-userPicker.mjs +3 -3
  201. package/fesm2022/aril-ui-business-userPicker.mjs.map +1 -1
  202. package/fesm2022/aril-ui-button.mjs +7 -7
  203. package/fesm2022/aril-ui-button.mjs.map +1 -1
  204. package/fesm2022/aril-ui-calendar.mjs +3 -3
  205. package/fesm2022/aril-ui-calendar.mjs.map +1 -1
  206. package/fesm2022/aril-ui-charts.mjs +37 -37
  207. package/fesm2022/aril-ui-charts.mjs.map +1 -1
  208. package/fesm2022/aril-ui-checkbox.mjs +6 -6
  209. package/fesm2022/aril-ui-checkbox.mjs.map +1 -1
  210. package/fesm2022/aril-ui-chip.mjs +4 -4
  211. package/fesm2022/aril-ui-chip.mjs.map +1 -1
  212. package/fesm2022/aril-ui-collapse-reorder-list.mjs +4 -4
  213. package/fesm2022/aril-ui-collapse-reorder-list.mjs.map +1 -1
  214. package/fesm2022/aril-ui-dxEditor.mjs +4 -4
  215. package/fesm2022/aril-ui-dxEditor.mjs.map +1 -1
  216. package/fesm2022/aril-ui-dxField.mjs +4 -4
  217. package/fesm2022/aril-ui-dxField.mjs.map +1 -1
  218. package/fesm2022/aril-ui-editor.mjs +4 -4
  219. package/fesm2022/aril-ui-editor.mjs.map +1 -1
  220. package/fesm2022/aril-ui-field.mjs +4 -4
  221. package/fesm2022/aril-ui-field.mjs.map +1 -1
  222. package/fesm2022/aril-ui-fileUpload.mjs +4 -4
  223. package/fesm2022/aril-ui-fileUpload.mjs.map +1 -1
  224. package/fesm2022/aril-ui-form.mjs +11 -11
  225. package/fesm2022/aril-ui-form.mjs.map +1 -1
  226. package/fesm2022/aril-ui-img-viewer.mjs +3 -3
  227. package/fesm2022/aril-ui-img-viewer.mjs.map +1 -1
  228. package/fesm2022/aril-ui-json-diff-comparison.mjs +4 -4
  229. package/fesm2022/aril-ui-json-diff-comparison.mjs.map +1 -1
  230. package/fesm2022/aril-ui-lib.mjs +28 -28
  231. package/fesm2022/aril-ui-lib.mjs.map +1 -1
  232. package/fesm2022/aril-ui-loader.mjs +3 -3
  233. package/fesm2022/aril-ui-loader.mjs.map +1 -1
  234. package/fesm2022/aril-ui-mask.mjs +3 -3
  235. package/fesm2022/aril-ui-mask.mjs.map +1 -1
  236. package/fesm2022/aril-ui-multiSelect.mjs +3 -3
  237. package/fesm2022/aril-ui-multiSelect.mjs.map +1 -1
  238. package/fesm2022/aril-ui-number.mjs +3 -3
  239. package/fesm2022/aril-ui-number.mjs.map +1 -1
  240. package/fesm2022/aril-ui-operation-types-dialog.mjs +3 -3
  241. package/fesm2022/aril-ui-operation-types-dialog.mjs.map +1 -1
  242. package/fesm2022/aril-ui-overlayPanel.mjs +4 -4
  243. package/fesm2022/aril-ui-overlayPanel.mjs.map +1 -1
  244. package/fesm2022/aril-ui-panel.mjs +4 -4
  245. package/fesm2022/aril-ui-panel.mjs.map +1 -1
  246. package/fesm2022/aril-ui-password.mjs +3 -3
  247. package/fesm2022/aril-ui-password.mjs.map +1 -1
  248. package/fesm2022/aril-ui-pdf-viewer.mjs +3 -3
  249. package/fesm2022/aril-ui-pdf-viewer.mjs.map +1 -1
  250. package/fesm2022/aril-ui-progressbar.mjs +3 -3
  251. package/fesm2022/aril-ui-progressbar.mjs.map +1 -1
  252. package/fesm2022/aril-ui-radioButton.mjs +3 -3
  253. package/fesm2022/aril-ui-radioButton.mjs.map +1 -1
  254. package/fesm2022/aril-ui-relativeDateSelector.mjs +4 -4
  255. package/fesm2022/aril-ui-relativeDateSelector.mjs.map +1 -1
  256. package/fesm2022/aril-ui-selectBox.mjs +5 -5
  257. package/fesm2022/aril-ui-selectBox.mjs.map +1 -1
  258. package/fesm2022/aril-ui-switch.mjs +3 -3
  259. package/fesm2022/aril-ui-switch.mjs.map +1 -1
  260. package/fesm2022/aril-ui-table-expand.mjs +14 -14
  261. package/fesm2022/aril-ui-table-expand.mjs.map +1 -1
  262. package/fesm2022/aril-ui-table.mjs +15 -15
  263. package/fesm2022/aril-ui-table.mjs.map +1 -1
  264. package/fesm2022/aril-ui-tag.mjs +3 -3
  265. package/fesm2022/aril-ui-tag.mjs.map +1 -1
  266. package/fesm2022/aril-ui-tagBox.mjs +5 -5
  267. package/fesm2022/aril-ui-tagBox.mjs.map +1 -1
  268. package/fesm2022/aril-ui-text.mjs +3 -3
  269. package/fesm2022/aril-ui-text.mjs.map +1 -1
  270. package/fesm2022/aril-ui-textArea.mjs +3 -3
  271. package/fesm2022/aril-ui-textArea.mjs.map +1 -1
  272. package/fesm2022/aril-ui-toggle-button.mjs +4 -4
  273. package/fesm2022/aril-ui-toggle-button.mjs.map +1 -1
  274. package/fesm2022/aril-ui-tooltip.mjs +3 -3
  275. package/fesm2022/aril-ui-tooltip.mjs.map +1 -1
  276. package/fesm2022/aril-ui-translate-input.mjs +6 -6
  277. package/fesm2022/aril-ui-translate-input.mjs.map +1 -1
  278. package/fesm2022/aril-ui-tree.mjs +4 -4
  279. package/fesm2022/aril-ui-tree.mjs.map +1 -1
  280. package/fesm2022/aril-ui-treeSelect.mjs +4 -4
  281. package/fesm2022/aril-ui-treeSelect.mjs.map +1 -1
  282. package/fesm2022/aril-ui-treeTable.mjs +4 -4
  283. package/fesm2022/aril-ui-treeTable.mjs.map +1 -1
  284. package/fesm2022/aril-ui-value.mjs +5 -5
  285. package/fesm2022/aril-ui-value.mjs.map +1 -1
  286. package/fesm2022/aril-util-block.mjs +6 -6
  287. package/fesm2022/aril-util-block.mjs.map +1 -1
  288. package/fesm2022/aril-util-directives.mjs +10 -10
  289. package/fesm2022/aril-util-directives.mjs.map +1 -1
  290. package/fesm2022/aril-util-lib.mjs +3 -3
  291. package/fesm2022/aril-util-lib.mjs.map +1 -1
  292. package/fesm2022/aril-util-pipes.mjs +18 -18
  293. package/fesm2022/aril-util-pipes.mjs.map +1 -1
  294. package/fesm2022/aril-util-primitive-extensions.mjs.map +1 -1
  295. package/fesm2022/aril-util-pub-sub.mjs +3 -3
  296. package/fesm2022/aril-util-pub-sub.mjs.map +1 -1
  297. package/fesm2022/aril-util-sync-active-tab-route.mjs +4 -4
  298. package/fesm2022/aril-util-sync-active-tab-route.mjs.map +1 -1
  299. package/fesm2022/aril-util-unwrap.mjs +3 -3
  300. package/fesm2022/aril-util-unwrap.mjs.map +1 -1
  301. package/fesm2022/aril.mjs +6 -6
  302. package/fesm2022/aril.mjs.map +1 -1
  303. package/package.json +210 -210
  304. package/theme/layout/app/favorite-pages/favorite-pages-sidebar.component.d.ts +16 -0
  305. package/theme/layout/app/history/history-sidebar.component.d.ts +16 -0
  306. package/theme/layout/app/notifications/notifications-sidebar.component.d.ts +16 -0
  307. package/theme/layout/app/site-map/site-map-sidebar.component.d.ts +16 -0
  308. package/ui/autoComplete/src/auto-complete.component.d.ts +8 -8
  309. package/ui/badge/src/badge.component.d.ts +9 -9
  310. package/ui/button/src/button.component.d.ts +12 -12
  311. package/ui/button/src/split-button.component.d.ts +1 -1
  312. package/ui/calendar/src/calendar.component.d.ts +22 -22
  313. package/ui/charts/src/amCharts/column/column-chart.component.d.ts +4 -4
  314. package/ui/charts/src/amCharts/line/line-chart.component.d.ts +5 -5
  315. package/ui/charts/src/amCharts/pie/pie-chart.component.d.ts +4 -4
  316. package/ui/charts/src/highCharts/area/area-chart.component.d.ts +3 -3
  317. package/ui/charts/src/highCharts/bar/bar-chart.component.d.ts +7 -7
  318. package/ui/charts/src/highCharts/column/column-chart.component.d.ts +9 -9
  319. package/ui/charts/src/highCharts/gauge/solid-gauge.component.d.ts +3 -3
  320. package/ui/charts/src/highCharts/heatmap/heatMap-chart.component.d.ts +4 -4
  321. package/ui/charts/src/highCharts/line/line-chart-datetime-axis.component.d.ts +5 -5
  322. package/ui/charts/src/highCharts/line/line-chart-series.component.d.ts +4 -4
  323. package/ui/charts/src/highCharts/line/line-chart.component.d.ts +4 -4
  324. package/ui/charts/src/highCharts/pie/pie-chart.component.d.ts +7 -7
  325. package/ui/checkbox/src/check-box.component.d.ts +3 -3
  326. package/ui/checkbox/src/tri-state-checkbox.component.d.ts +2 -2
  327. package/ui/chip/src/chip.component.d.ts +7 -7
  328. package/ui/collapse-reorder-list/src/collapse-reorder-list.component.d.ts +4 -4
  329. package/ui/dxEditor/src/dx-editor.component.d.ts +5 -5
  330. package/ui/dxField/src/dx-field.component.d.ts +5 -5
  331. package/ui/editor/src/aril-editor.component.d.ts +3 -3
  332. package/ui/field/src/field.component.d.ts +9 -9
  333. package/ui/fileUpload/src/file-upload.component.d.ts +14 -14
  334. package/ui/form/src/form-submit-button.component.d.ts +1 -1
  335. package/ui/form/src/form.component.d.ts +1 -1
  336. package/ui/img-viewer/src/img-viewer.component.d.ts +1 -1
  337. package/ui/lib/src/form/form-error-message.directive.d.ts +1 -1
  338. package/ui/mask/src/mask.component.d.ts +6 -6
  339. package/ui/multiSelect/src/multi-select.component.d.ts +13 -13
  340. package/ui/number/src/number.component.d.ts +15 -15
  341. package/ui/overlayPanel/src/overlay-panel.component.d.ts +1 -1
  342. package/ui/panel/src/panel.component.d.ts +6 -6
  343. package/ui/password/src/password.component.d.ts +4 -4
  344. package/ui/pdf-viewer/src/pdf-viewer.component.d.ts +12 -12
  345. package/ui/progressbar/src/progressbar.component.d.ts +3 -3
  346. package/ui/radioButton/src/radio-button.component.d.ts +3 -3
  347. package/ui/selectBox/src/select-box.component.d.ts +10 -10
  348. package/ui/switch/src/switch.component.d.ts +1 -1
  349. package/ui/table/src/export-overlay-panel.component.d.ts +2 -2
  350. package/ui/table/src/table-column.component.d.ts +11 -11
  351. package/ui/table/src/table.component.d.ts +35 -35
  352. package/ui/table-expand/src/table-column.component.d.ts +6 -6
  353. package/ui/table-expand/src/table.component.d.ts +20 -20
  354. package/ui/tag/src/tag.component.d.ts +4 -6
  355. package/ui/tagBox/src/tag-box.component.d.ts +7 -7
  356. package/ui/text/src/text.component.d.ts +5 -5
  357. package/ui/textArea/src/text-area.component.d.ts +5 -5
  358. package/ui/toggle-button/src/toggle-button.component.d.ts +1 -1
  359. package/ui/tooltip/src/tooltip-component.d.ts +8 -8
  360. package/ui/translate-input/src/aril-translate-input.component.d.ts +2 -2
  361. package/ui/tree/src/tree.component.d.ts +8 -8
  362. package/ui/treeSelect/src/treeSelect.component.d.ts +12 -12
  363. package/ui/treeTable/src/tree-table.component.d.ts +5 -5
  364. package/ui/value/src/value.component.d.ts +15 -15
  365. package/ui-business/assetPicker/src/asset-picker.component.d.ts +11 -11
  366. package/ui-business/detailed-overlay-panel/src/detailed-overlay-panel.component.d.ts +3 -6
  367. package/ui-business/enumPicker/src/enum-picker.component.d.ts +23 -23
  368. package/ui-business/image-viewer/src/aril-image-viewer.component.d.ts +8 -8
  369. package/ui-business/multiple-ref-value/src/multiple-ref-value.component.d.ts +2 -5
  370. package/ui-business/ref-value/src/ref-value.component.d.ts +5 -5
  371. package/ui-business/rolePicker/src/role-picker.component.d.ts +6 -6
  372. package/ui-business/trace-drawer/src/trace-drawer.component.d.ts +8 -8
  373. package/ui-business/trace-id/src/trace-id.component.d.ts +6 -6
  374. package/ui-business/userPicker/src/user-picker.component.d.ts +3 -3
  375. package/util/block/src/block.d.ts +4 -4
  376. package/util/lib/src/types.d.ts +16 -0
@@ -187,10 +187,10 @@ export class ValueComponent {
187
187
  });
188
188
  });
189
189
  }
190
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ValueComponent, deps: [{ token: i1.TranslocoService }, { token: i2.SelectionGroupService }, { token: i3.MessageService }], target: i0.ɵɵFactoryTarget.Component }); }
191
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: ValueComponent, isStandalone: true, selector: "aril-value", inputs: { model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: true, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, format: { classPropertyName: "format", publicName: "format", isSignal: true, isRequired: false, transformFunction: null }, isClickable: { classPropertyName: "isClickable", publicName: "isClickable", isSignal: true, isRequired: false, transformFunction: null }, groupName: { classPropertyName: "groupName", publicName: "groupName", isSignal: true, isRequired: false, transformFunction: null }, parentSelectionKey: { classPropertyName: "parentSelectionKey", publicName: "parentSelectionKey", isSignal: true, isRequired: false, transformFunction: null }, isTextClamp: { classPropertyName: "isTextClamp", publicName: "isTextClamp", isSignal: true, isRequired: false, transformFunction: null }, textClampCharacters: { classPropertyName: "textClampCharacters", publicName: "textClampCharacters", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, copyable: { classPropertyName: "copyable", publicName: "copyable", isSignal: true, isRequired: false, transformFunction: null }, shouldShowCopyForClampedText: { classPropertyName: "shouldShowCopyForClampedText", publicName: "shouldShowCopyForClampedText", isSignal: true, isRequired: false, transformFunction: null }, arrayTypeDisplayName: { classPropertyName: "arrayTypeDisplayName", publicName: "arrayTypeDisplayName", isSignal: true, isRequired: false, transformFunction: null }, arrayTypeMaxBadgeCount: { classPropertyName: "arrayTypeMaxBadgeCount", publicName: "arrayTypeMaxBadgeCount", isSignal: true, isRequired: false, transformFunction: null }, bigDecimalRoundingMode: { classPropertyName: "bigDecimalRoundingMode", publicName: "bigDecimalRoundingMode", isSignal: true, isRequired: false, transformFunction: null }, bigDecimalScale: { classPropertyName: "bigDecimalScale", publicName: "bigDecimalScale", isSignal: true, isRequired: false, transformFunction: null } }, providers: [DialogService, DecimalPipe], ngImport: i0, template: "@if (model() == undefined || model() == null) {\r\n\t<i\r\n\t\tclass=\"pi pi-minus\"\r\n\t\tstyle=\"color: red\"\r\n\t\t[pTooltip]=\"this.translocoService.translate('validations.noItemToShow')\"></i>\r\n} @else {\r\n\t@if (type() == 'bool') {\r\n\t\t@if (!!model()) {\r\n\t\t\t<i class=\"pi pi-check\" style=\"color: green\"></i>\r\n\t\t} @else {\r\n\t\t\t<i class=\"pi pi-times\" style=\"color: crimson\"></i>\r\n\t\t}\r\n\t} @else if (type() === 'enum') {\r\n\t\t@if (isModelArray()) {\r\n\t\t\t<div class=\"flex align-items-center gap-1\">\r\n\t\t\t\t@for (display of enumArrayDisplays().slice(0, 2); track display; let i = $index) {\r\n\t\t\t\t\t<aril-badge [background]=\"enumArrayBackgroundColors()[i]\" [value]=\"display\" [textClampCharacters]=\"textClampCharacters()\" />\r\n\t\t\t\t}\r\n\t\t\t\t@if (enumArrayDisplays().length > 2) {\r\n\t\t\t\t\t<i class=\"pi pi-ellipsis-v cursor-pointer\" (click)=\"enumOp.toggle($event)\"></i>\r\n\r\n\t\t\t\t\t<p-overlayPanel #enumOp class=\"shadow-4\" appendTo=\"body\">\r\n\t\t\t\t\t\t<div class=\"flex flex-column gap-2 max-w-30rem max-h-20rem pr-3 overflow-y-auto\">\r\n\t\t\t\t\t\t\t@for (display of enumArrayDisplays() | slice: 2; track display; let i = $index) {\r\n\t\t\t\t\t\t\t\t<aril-badge [background]=\"enumArrayBackgroundColors()[i + 2]\" [value]=\"display\" [textClampCharacters]=\"textClampCharacters()\" />\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</p-overlayPanel>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t} @else {\r\n\t\t\t<aril-badge [background]=\"enumBadgeBackgroundColor()\" [value]=\"enumSelectionDisplay()\" [textClampCharacters]=\"textClampCharacters()\" />\r\n\t\t}\r\n\t} @else if (type() === 'array') {\r\n\t\t<div class=\"flex align-items-center gap-1\">\r\n\t\t\t@for (item of model().slice(0, arrayTypeMaxBadgeCount()); track item) {\r\n\t\t\t\t<aril-badge [background]=\"getArrayItemValue(item) || '' | enumColorPicker\" [value]=\"getArrayItemValue(item)\" [textClampCharacters]=\"textClampCharacters()\" />\r\n\t\t\t}\r\n\t\t\t@if (model().length > arrayTypeMaxBadgeCount()) {\r\n\t\t\t\t<i class=\"pi pi-ellipsis-v cursor-pointer\" (click)=\"op.toggle($event)\"></i>\r\n\r\n\t\t\t\t<p-overlayPanel #op class=\"shadow-4\" appendTo=\"body\">\r\n\t\t\t\t\t<div class=\"flex flex-column gap-2 max-w-30rem max-h-20rem pr-3 overflow-y-auto\">\r\n\t\t\t\t\t\t@for (item of model() | slice: arrayTypeMaxBadgeCount(); track item) {\r\n\t\t\t\t\t\t\t<aril-badge\r\n\t\t\t\t\t\t\t\t[background]=\"getArrayItemValue(item) || '' | enumColorPicker\"\r\n\t\t\t\t\t\t\t\t[value]=\"getArrayItemValue(item)\" />\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</p-overlayPanel>\r\n\t\t\t}\r\n\t\t</div>\r\n\t} @else {\r\n\t\t@if (display() == undefined) {\r\n\t\t\t<i\r\n\t\t\t\tclass=\"pi pi-exclamation-circle\"\r\n\t\t\t\tstyle=\"color: red\"\r\n\t\t\t\t[pTooltip]=\"this.translocoService.translate('validations.invalidDataFormat')\">\r\n\t\t\t</i>\r\n\t\t} @else {\r\n\t\t\t<span class=\"flex align-items-center gap-2\">\r\n\t\t\t\t@if (showCopyIcon()) {\r\n\t\t\t\t\t<i\r\n\t\t\t\t\t\tclass=\"pi pi-copy cursor-pointer\"\r\n\t\t\t\t\t\t(click)=\"copyToClipboard(display()?.toString()); $event.stopPropagation()\"\r\n\t\t\t\t\t\tstyle=\"font-size: 1rem; color: green\"></i>\r\n\t\t\t\t}\r\n\t\t\t\t<span\r\n\t\t\t\t\t[pTooltip]=\"\r\n\t\t\t\t\t\ttype() === 'text' && isTextClamp() && display()?.toString().length > textClampCharacters() ?\r\n\t\t\t\t\t\t\tdisplay()?.toString()\r\n\t\t\t\t\t\t:\t''\r\n\t\t\t\t\t\"\r\n\t\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t\t\t[class.text-no-wrap]=\"isTextClamp()\"\r\n\t\t\t\t\t[style]=\"isClickable() ? { 'text-decoration': 'underline', color: '#0000EE', cursor: 'pointer' } : ''\">\r\n\t\t\t\t\t@if (type() === 'number' || type() === 'decimal') {\r\n\t\t\t\t\t\t{{ model() | number: getNumberFormat() : 'tr-TR' }}\r\n\t\t\t\t\t} @else if (type() === 'big_decimal') {\r\n\t\t\t\t\t\t{{ model() | roundNumber: bigDecimalScale() : bigDecimalRoundingMode() : 'tr-TR' }}\r\n\t\t\t\t\t} @else if (type() === 'currency') {\r\n\t\t\t\t\t\t{{ model() | currency: format() ?? 'TRY' : 'symbol' : '1.0-2' }}\r\n\t\t\t\t\t} @else if (type() === 'text' && isTextClamp()) {\r\n\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\tdisplay().length > textClampCharacters() ? display().slice(0, textClampCharacters()) + '...' : display()\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t{{ display() }}\r\n\t\t\t\t\t}\r\n\t\t\t\t</span>\r\n\t\t\t</span>\r\n\t\t}\r\n\t}\r\n}\r\n", styles: [".text-no-wrap{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n"], dependencies: [{ kind: "component", type: BadgeComponent, selector: "aril-badge", inputs: ["icon", "value", "severity", "rounded", "background", "styleClass", "textColor", "borderColor", "textClampCharacters"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "ngmodule", type: OverlayPanelModule }, { kind: "component", type: i5.OverlayPanel, selector: "p-overlayPanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "pipe", type: EnumColorPickerPipe, name: "enumColorPicker" }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "pipe", type: DecimalPipe, name: "number" }, { kind: "pipe", type: CurrencyPipe, name: "currency" }, { kind: "pipe", type: RoundNumberPipe, name: "roundNumber" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
190
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ValueComponent, deps: [{ token: i1.TranslocoService }, { token: i2.SelectionGroupService }, { token: i3.MessageService }], target: i0.ɵɵFactoryTarget.Component }); }
191
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ValueComponent, isStandalone: true, selector: "aril-value", inputs: { model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: true, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, format: { classPropertyName: "format", publicName: "format", isSignal: true, isRequired: false, transformFunction: null }, isClickable: { classPropertyName: "isClickable", publicName: "isClickable", isSignal: true, isRequired: false, transformFunction: null }, groupName: { classPropertyName: "groupName", publicName: "groupName", isSignal: true, isRequired: false, transformFunction: null }, parentSelectionKey: { classPropertyName: "parentSelectionKey", publicName: "parentSelectionKey", isSignal: true, isRequired: false, transformFunction: null }, isTextClamp: { classPropertyName: "isTextClamp", publicName: "isTextClamp", isSignal: true, isRequired: false, transformFunction: null }, textClampCharacters: { classPropertyName: "textClampCharacters", publicName: "textClampCharacters", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, copyable: { classPropertyName: "copyable", publicName: "copyable", isSignal: true, isRequired: false, transformFunction: null }, shouldShowCopyForClampedText: { classPropertyName: "shouldShowCopyForClampedText", publicName: "shouldShowCopyForClampedText", isSignal: true, isRequired: false, transformFunction: null }, arrayTypeDisplayName: { classPropertyName: "arrayTypeDisplayName", publicName: "arrayTypeDisplayName", isSignal: true, isRequired: false, transformFunction: null }, arrayTypeMaxBadgeCount: { classPropertyName: "arrayTypeMaxBadgeCount", publicName: "arrayTypeMaxBadgeCount", isSignal: true, isRequired: false, transformFunction: null }, bigDecimalRoundingMode: { classPropertyName: "bigDecimalRoundingMode", publicName: "bigDecimalRoundingMode", isSignal: true, isRequired: false, transformFunction: null }, bigDecimalScale: { classPropertyName: "bigDecimalScale", publicName: "bigDecimalScale", isSignal: true, isRequired: false, transformFunction: null } }, providers: [DialogService, DecimalPipe], ngImport: i0, template: "@if (model() == undefined || model() == null) {\r\n\t<i\r\n\t\tclass=\"pi pi-minus\"\r\n\t\tstyle=\"color: red\"\r\n\t\t[pTooltip]=\"this.translocoService.translate('validations.noItemToShow')\"></i>\r\n} @else {\r\n\t@if (type() == 'bool') {\r\n\t\t@if (!!model()) {\r\n\t\t\t<i class=\"pi pi-check\" style=\"color: green\"></i>\r\n\t\t} @else {\r\n\t\t\t<i class=\"pi pi-times\" style=\"color: crimson\"></i>\r\n\t\t}\r\n\t} @else if (type() === 'enum') {\r\n\t\t@if (isModelArray()) {\r\n\t\t\t<div class=\"flex align-items-center gap-1\">\r\n\t\t\t\t@for (display of enumArrayDisplays().slice(0, 2); track display; let i = $index) {\r\n\t\t\t\t\t<aril-badge [background]=\"enumArrayBackgroundColors()[i]\" [value]=\"display\" [textClampCharacters]=\"textClampCharacters()\" />\r\n\t\t\t\t}\r\n\t\t\t\t@if (enumArrayDisplays().length > 2) {\r\n\t\t\t\t\t<i class=\"pi pi-ellipsis-v cursor-pointer\" (click)=\"enumOp.toggle($event)\"></i>\r\n\r\n\t\t\t\t\t<p-overlayPanel #enumOp class=\"shadow-4\" appendTo=\"body\">\r\n\t\t\t\t\t\t<div class=\"flex flex-column gap-2 max-w-30rem max-h-20rem pr-3 overflow-y-auto\">\r\n\t\t\t\t\t\t\t@for (display of enumArrayDisplays() | slice: 2; track display; let i = $index) {\r\n\t\t\t\t\t\t\t\t<aril-badge [background]=\"enumArrayBackgroundColors()[i + 2]\" [value]=\"display\" [textClampCharacters]=\"textClampCharacters()\" />\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</p-overlayPanel>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t} @else {\r\n\t\t\t<aril-badge [background]=\"enumBadgeBackgroundColor()\" [value]=\"enumSelectionDisplay()\" [textClampCharacters]=\"textClampCharacters()\" />\r\n\t\t}\r\n\t} @else if (type() === 'array') {\r\n\t\t<div class=\"flex align-items-center gap-1\">\r\n\t\t\t@for (item of model().slice(0, arrayTypeMaxBadgeCount()); track item) {\r\n\t\t\t\t<aril-badge [background]=\"getArrayItemValue(item) || '' | enumColorPicker\" [value]=\"getArrayItemValue(item)\" [textClampCharacters]=\"textClampCharacters()\" />\r\n\t\t\t}\r\n\t\t\t@if (model().length > arrayTypeMaxBadgeCount()) {\r\n\t\t\t\t<i class=\"pi pi-ellipsis-v cursor-pointer\" (click)=\"op.toggle($event)\"></i>\r\n\r\n\t\t\t\t<p-overlayPanel #op class=\"shadow-4\" appendTo=\"body\">\r\n\t\t\t\t\t<div class=\"flex flex-column gap-2 max-w-30rem max-h-20rem pr-3 overflow-y-auto\">\r\n\t\t\t\t\t\t@for (item of model() | slice: arrayTypeMaxBadgeCount(); track item) {\r\n\t\t\t\t\t\t\t<aril-badge\r\n\t\t\t\t\t\t\t\t[background]=\"getArrayItemValue(item) || '' | enumColorPicker\"\r\n\t\t\t\t\t\t\t\t[value]=\"getArrayItemValue(item)\" />\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</p-overlayPanel>\r\n\t\t\t}\r\n\t\t</div>\r\n\t} @else {\r\n\t\t@if (display() == undefined) {\r\n\t\t\t<i\r\n\t\t\t\tclass=\"pi pi-exclamation-circle\"\r\n\t\t\t\tstyle=\"color: red\"\r\n\t\t\t\t[pTooltip]=\"this.translocoService.translate('validations.invalidDataFormat')\">\r\n\t\t\t</i>\r\n\t\t} @else {\r\n\t\t\t<span class=\"flex align-items-center gap-2\">\r\n\t\t\t\t@if (showCopyIcon()) {\r\n\t\t\t\t\t<i\r\n\t\t\t\t\t\tclass=\"pi pi-copy cursor-pointer\"\r\n\t\t\t\t\t\t(click)=\"copyToClipboard(display()?.toString()); $event.stopPropagation()\"\r\n\t\t\t\t\t\tstyle=\"font-size: 1rem; color: green\"></i>\r\n\t\t\t\t}\r\n\t\t\t\t<span\r\n\t\t\t\t\t[pTooltip]=\"\r\n\t\t\t\t\t\ttype() === 'text' && isTextClamp() && display()?.toString().length > textClampCharacters() ?\r\n\t\t\t\t\t\t\tdisplay()?.toString()\r\n\t\t\t\t\t\t:\t''\r\n\t\t\t\t\t\"\r\n\t\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t\t\t[class.text-no-wrap]=\"isTextClamp()\"\r\n\t\t\t\t\t[style]=\"isClickable() ? { 'text-decoration': 'underline', color: '#0000EE', cursor: 'pointer' } : ''\">\r\n\t\t\t\t\t@if (type() === 'number' || type() === 'decimal') {\r\n\t\t\t\t\t\t{{ model() | number: getNumberFormat() : 'tr-TR' }}\r\n\t\t\t\t\t} @else if (type() === 'big_decimal') {\r\n\t\t\t\t\t\t{{ model() | roundNumber: bigDecimalScale() : bigDecimalRoundingMode() : 'tr-TR' }}\r\n\t\t\t\t\t} @else if (type() === 'currency') {\r\n\t\t\t\t\t\t{{ model() | currency: format() ?? 'TRY' : 'symbol' : '1.0-2' }}\r\n\t\t\t\t\t} @else if (type() === 'text' && isTextClamp()) {\r\n\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\tdisplay().length > textClampCharacters() ? display().slice(0, textClampCharacters()) + '...' : display()\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t{{ display() }}\r\n\t\t\t\t\t}\r\n\t\t\t\t</span>\r\n\t\t\t</span>\r\n\t\t}\r\n\t}\r\n}\r\n", styles: [".text-no-wrap{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n"], dependencies: [{ kind: "component", type: BadgeComponent, selector: "aril-badge", inputs: ["icon", "value", "severity", "rounded", "background", "styleClass", "textColor", "borderColor", "textClampCharacters"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "ngmodule", type: OverlayPanelModule }, { kind: "component", type: i5.OverlayPanel, selector: "p-overlayPanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "pipe", type: EnumColorPickerPipe, name: "enumColorPicker" }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "pipe", type: DecimalPipe, name: "number" }, { kind: "pipe", type: CurrencyPipe, name: "currency" }, { kind: "pipe", type: RoundNumberPipe, name: "roundNumber" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
192
192
  }
193
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ValueComponent, decorators: [{
193
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ValueComponent, decorators: [{
194
194
  type: Component,
195
195
  args: [{ standalone: true, selector: 'aril-value', imports: [
196
196
  BadgeComponent,
@@ -204,4 +204,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
204
204
  RoundNumberPipe
205
205
  ], changeDetection: ChangeDetectionStrategy.OnPush, providers: [DialogService, DecimalPipe], template: "@if (model() == undefined || model() == null) {\r\n\t<i\r\n\t\tclass=\"pi pi-minus\"\r\n\t\tstyle=\"color: red\"\r\n\t\t[pTooltip]=\"this.translocoService.translate('validations.noItemToShow')\"></i>\r\n} @else {\r\n\t@if (type() == 'bool') {\r\n\t\t@if (!!model()) {\r\n\t\t\t<i class=\"pi pi-check\" style=\"color: green\"></i>\r\n\t\t} @else {\r\n\t\t\t<i class=\"pi pi-times\" style=\"color: crimson\"></i>\r\n\t\t}\r\n\t} @else if (type() === 'enum') {\r\n\t\t@if (isModelArray()) {\r\n\t\t\t<div class=\"flex align-items-center gap-1\">\r\n\t\t\t\t@for (display of enumArrayDisplays().slice(0, 2); track display; let i = $index) {\r\n\t\t\t\t\t<aril-badge [background]=\"enumArrayBackgroundColors()[i]\" [value]=\"display\" [textClampCharacters]=\"textClampCharacters()\" />\r\n\t\t\t\t}\r\n\t\t\t\t@if (enumArrayDisplays().length > 2) {\r\n\t\t\t\t\t<i class=\"pi pi-ellipsis-v cursor-pointer\" (click)=\"enumOp.toggle($event)\"></i>\r\n\r\n\t\t\t\t\t<p-overlayPanel #enumOp class=\"shadow-4\" appendTo=\"body\">\r\n\t\t\t\t\t\t<div class=\"flex flex-column gap-2 max-w-30rem max-h-20rem pr-3 overflow-y-auto\">\r\n\t\t\t\t\t\t\t@for (display of enumArrayDisplays() | slice: 2; track display; let i = $index) {\r\n\t\t\t\t\t\t\t\t<aril-badge [background]=\"enumArrayBackgroundColors()[i + 2]\" [value]=\"display\" [textClampCharacters]=\"textClampCharacters()\" />\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</p-overlayPanel>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t} @else {\r\n\t\t\t<aril-badge [background]=\"enumBadgeBackgroundColor()\" [value]=\"enumSelectionDisplay()\" [textClampCharacters]=\"textClampCharacters()\" />\r\n\t\t}\r\n\t} @else if (type() === 'array') {\r\n\t\t<div class=\"flex align-items-center gap-1\">\r\n\t\t\t@for (item of model().slice(0, arrayTypeMaxBadgeCount()); track item) {\r\n\t\t\t\t<aril-badge [background]=\"getArrayItemValue(item) || '' | enumColorPicker\" [value]=\"getArrayItemValue(item)\" [textClampCharacters]=\"textClampCharacters()\" />\r\n\t\t\t}\r\n\t\t\t@if (model().length > arrayTypeMaxBadgeCount()) {\r\n\t\t\t\t<i class=\"pi pi-ellipsis-v cursor-pointer\" (click)=\"op.toggle($event)\"></i>\r\n\r\n\t\t\t\t<p-overlayPanel #op class=\"shadow-4\" appendTo=\"body\">\r\n\t\t\t\t\t<div class=\"flex flex-column gap-2 max-w-30rem max-h-20rem pr-3 overflow-y-auto\">\r\n\t\t\t\t\t\t@for (item of model() | slice: arrayTypeMaxBadgeCount(); track item) {\r\n\t\t\t\t\t\t\t<aril-badge\r\n\t\t\t\t\t\t\t\t[background]=\"getArrayItemValue(item) || '' | enumColorPicker\"\r\n\t\t\t\t\t\t\t\t[value]=\"getArrayItemValue(item)\" />\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</p-overlayPanel>\r\n\t\t\t}\r\n\t\t</div>\r\n\t} @else {\r\n\t\t@if (display() == undefined) {\r\n\t\t\t<i\r\n\t\t\t\tclass=\"pi pi-exclamation-circle\"\r\n\t\t\t\tstyle=\"color: red\"\r\n\t\t\t\t[pTooltip]=\"this.translocoService.translate('validations.invalidDataFormat')\">\r\n\t\t\t</i>\r\n\t\t} @else {\r\n\t\t\t<span class=\"flex align-items-center gap-2\">\r\n\t\t\t\t@if (showCopyIcon()) {\r\n\t\t\t\t\t<i\r\n\t\t\t\t\t\tclass=\"pi pi-copy cursor-pointer\"\r\n\t\t\t\t\t\t(click)=\"copyToClipboard(display()?.toString()); $event.stopPropagation()\"\r\n\t\t\t\t\t\tstyle=\"font-size: 1rem; color: green\"></i>\r\n\t\t\t\t}\r\n\t\t\t\t<span\r\n\t\t\t\t\t[pTooltip]=\"\r\n\t\t\t\t\t\ttype() === 'text' && isTextClamp() && display()?.toString().length > textClampCharacters() ?\r\n\t\t\t\t\t\t\tdisplay()?.toString()\r\n\t\t\t\t\t\t:\t''\r\n\t\t\t\t\t\"\r\n\t\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t\t\t[class.text-no-wrap]=\"isTextClamp()\"\r\n\t\t\t\t\t[style]=\"isClickable() ? { 'text-decoration': 'underline', color: '#0000EE', cursor: 'pointer' } : ''\">\r\n\t\t\t\t\t@if (type() === 'number' || type() === 'decimal') {\r\n\t\t\t\t\t\t{{ model() | number: getNumberFormat() : 'tr-TR' }}\r\n\t\t\t\t\t} @else if (type() === 'big_decimal') {\r\n\t\t\t\t\t\t{{ model() | roundNumber: bigDecimalScale() : bigDecimalRoundingMode() : 'tr-TR' }}\r\n\t\t\t\t\t} @else if (type() === 'currency') {\r\n\t\t\t\t\t\t{{ model() | currency: format() ?? 'TRY' : 'symbol' : '1.0-2' }}\r\n\t\t\t\t\t} @else if (type() === 'text' && isTextClamp()) {\r\n\t\t\t\t\t\t{{\r\n\t\t\t\t\t\t\tdisplay().length > textClampCharacters() ? display().slice(0, textClampCharacters()) + '...' : display()\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t{{ display() }}\r\n\t\t\t\t\t}\r\n\t\t\t\t</span>\r\n\t\t\t</span>\r\n\t\t}\r\n\t}\r\n}\r\n", styles: [".text-no-wrap{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n"] }]
206
206
  }], ctorParameters: () => [{ type: i1.TranslocoService }, { type: i2.SelectionGroupService }, { type: i3.MessageService }] });
207
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS92YWx1ZS9zcmMvdmFsdWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS92YWx1ZS9zcmMvdmFsdWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUc1RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxlQUFlLEVBQW9CLE1BQU0sbUJBQW1CLENBQUM7QUFHdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sZ0NBQWdDLENBQUM7Ozs7Ozs7QUFrQ3hDLE1BQU0sT0FBTyxjQUFjO0lBMEIxQixZQUNRLGdCQUFrQyxFQUN4QixxQkFBNEMsRUFDNUMsY0FBOEI7UUFGeEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUN4QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQTVCaEQsVUFBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQW1DLENBQUM7UUFD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QywrQkFBK0IsQ0FBQztnQkFDekUsTUFBTSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsaUNBQWlDLENBQUM7Z0JBQzFFLEdBQUcsRUFBRSxZQUFZO2FBQ2pCLENBQUMsQ0FBQztRQUNKLENBQUMsRUFDRCxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ1AsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUM7Z0JBQ3ZCLFFBQVEsRUFBRSxPQUFPO2dCQUNqQixPQUFPLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxvQ0FBb0MsQ0FBQztnQkFDOUUsTUFBTSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsK0JBQStCLENBQUM7Z0JBQ3hFLEdBQUcsRUFBRSxZQUFZO2FBQ2pCLENBQUMsQ0FBQztRQUNKLENBQUMsQ0FDRCxDQUFDO0lBQ0gsQ0FBQzs4R0F6TlcsY0FBYztrR0FBZCxjQUFjLDRzRUFGZixDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMsMEJDL0N4QyxtM0lBOEZBLHlKRDFERSxjQUFjLHVMQUNkLGFBQWEscVhBQ2IsZUFBZSw4QkFDZixrQkFBa0IsOFZBQ2xCLG1CQUFtQixtREFDbkIsU0FBUyx5Q0FDVCxXQUFXLDBDQUNYLFlBQVksNENBQ1osZUFBZTs7MkZBS0osY0FBYztrQkFuQjFCLFNBQVM7aUNBQ0csSUFBSSxZQUNOLFlBQVksV0FHYjt3QkFDUixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsU0FBUzt3QkFDVCxXQUFXO3dCQUNYLFlBQVk7d0JBQ1osZUFBZTtxQkFDZixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXJyZW5jeVBpcGUsIERlY2ltYWxQaXBlLCBTbGljZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5pbXBvcnQgeyBPdmVybGF5UGFuZWxNb2R1bGUgfSBmcm9tICdwcmltZW5nL292ZXJsYXlwYW5lbCc7XHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsb2NvTW9kdWxlLCBUcmFuc2xvY29TZXJ2aWNlIH0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nO1xyXG5cclxuaW1wb3J0IHsgU2VsZWN0aW9uR3JvdXBTZXJ2aWNlIH0gZnJvbSAnYXJpbC90aGVtZS9sYXlvdXQnO1xyXG5pbXBvcnQgeyBCYWRnZUNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvYmFkZ2UnO1xyXG5pbXBvcnQgeyBFbnVtQ29sb3JQaWNrZXJQaXBlIH0gZnJvbSAnYXJpbC91aS9saWInO1xyXG5pbXBvcnQgeyBEZWNpbWFsUm91bmRpbmdUeXBlIH0gZnJvbSAnYXJpbC91dGlsL2xpYic7XHJcbmltcG9ydCB7IFJvdW5kTnVtYmVyUGlwZSB9IGZyb20gJ2FyaWwvdXRpbC9waXBlcyc7XHJcbmltcG9ydCAnYXJpbC91dGlsL3ByaW1pdGl2ZS1leHRlbnNpb25zJztcclxuXHJcbnR5cGUgVmFsdWVUeXBlcyA9XHJcblx0fCAndGV4dCdcclxuXHR8ICdudW1iZXInXHJcblx0fCAnYm9vbCdcclxuXHR8ICdkZWNpbWFsJ1xyXG5cdHwgJ2JpZ19kZWNpbWFsJ1xyXG5cdHwgJ2RhdGUnXHJcblx0fCAncGFzc3dvcmQnXHJcblx0fCAnZW51bSdcclxuXHR8ICdhcnJheSdcclxuXHR8ICdpc29EYXRlJ1xyXG5cdHwgJ2N1cnJlbmN5JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcmlsLXZhbHVlJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vdmFsdWUuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsOiAnLi92YWx1ZS5jb21wb25lbnQuc2NzcycsXHJcblx0aW1wb3J0czogW1xyXG5cdFx0QmFkZ2VDb21wb25lbnQsXHJcblx0XHRUb29sdGlwTW9kdWxlLFxyXG5cdFx0VHJhbnNsb2NvTW9kdWxlLFxyXG5cdFx0T3ZlcmxheVBhbmVsTW9kdWxlLFxyXG5cdFx0RW51bUNvbG9yUGlja2VyUGlwZSxcclxuXHRcdFNsaWNlUGlwZSxcclxuXHRcdERlY2ltYWxQaXBlLFxyXG5cdFx0Q3VycmVuY3lQaXBlLFxyXG5cdFx0Um91bmROdW1iZXJQaXBlXHJcblx0XSxcclxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuXHRwcm92aWRlcnM6IFtEaWFsb2dTZXJ2aWNlLCBEZWNpbWFsUGlwZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFZhbHVlQ29tcG9uZW50IHtcclxuXHRtb2RlbCA9IGlucHV0LnJlcXVpcmVkPHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBhbnk+KCk7XHJcblx0dHlwZSA9IGlucHV0PFZhbHVlVHlwZXM+KCd0ZXh0Jyk7XHJcblx0Zm9ybWF0ID0gaW5wdXQ8c3RyaW5nPigpO1xyXG5cdGlzQ2xpY2thYmxlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cdGdyb3VwTmFtZSA9IGlucHV0PHN0cmluZz4oKTtcclxuXHRwYXJlbnRTZWxlY3Rpb25LZXkgPSBpbnB1dDxzdHJpbmc+KCdBTEwnKTtcclxuXHRpc1RleHRDbGFtcCA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xyXG5cdHRleHRDbGFtcENoYXJhY3RlcnMgPSBpbnB1dDxudW1iZXI+KDUwKTtcclxuXHRzdHlsZSA9IGlucHV0PHN0cmluZz4oKTtcclxuXHRjb3B5YWJsZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHRzaG91bGRTaG93Q29weUZvckNsYW1wZWRUZXh0ID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cdHNob3dDb3B5SWNvbiA9IGNvbXB1dGVkKFxyXG5cdFx0KCkgPT5cclxuXHRcdFx0KCF0aGlzLnNob3VsZFNob3dDb3B5Rm9yQ2xhbXBlZFRleHQoKSAmJiB0aGlzLmNvcHlhYmxlKCkpIHx8XHJcblx0XHRcdCh0aGlzLnNob3VsZFNob3dDb3B5Rm9yQ2xhbXBlZFRleHQoKSAmJiB0aGlzLm1vZGVsKCkubGVuZ3RoID4gdGhpcy50ZXh0Q2xhbXBDaGFyYWN0ZXJzKCkpXHJcblx0KTtcclxuXHJcblx0Ly8gb25seSBmb3IgYXJyYXkgdHlwZVxyXG5cdGFycmF5VHlwZURpc3BsYXlOYW1lID0gaW5wdXQ8c3RyaW5nPigndmFsdWVEZXNjJyk7XHJcblx0YXJyYXlUeXBlTWF4QmFkZ2VDb3VudCA9IGlucHV0PG51bWJlcj4oMyk7XHJcblxyXG5cdC8vIG9ubHkgZm9yIGJpZ19kZWNpbWFsIHR5cGVcclxuXHRiaWdEZWNpbWFsUm91bmRpbmdNb2RlID0gaW5wdXQ8RGVjaW1hbFJvdW5kaW5nVHlwZT4oKTtcclxuXHRiaWdEZWNpbWFsU2NhbGUgPSBpbnB1dDxudW1iZXI+KCk7XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHVibGljIHRyYW5zbG9jb1NlcnZpY2U6IFRyYW5zbG9jb1NlcnZpY2UsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IHNlbGVjdGlvbkdyb3VwU2VydmljZTogU2VsZWN0aW9uR3JvdXBTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2VcclxuXHQpIHtcclxuXHRcdHRoaXMudHJhbnNsb2NvU2VydmljZS5sYW5nQ2hhbmdlcyQuc3Vic2NyaWJlKChsYW5nKSA9PiB7XHJcblx0XHRcdHRoaXMubGFuZ1NpZ25hbC5zZXQobGFuZyk7XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdGxhbmdTaWduYWwgPSBzaWduYWwodGhpcy50cmFuc2xvY29TZXJ2aWNlLmdldEFjdGl2ZUxhbmcoKSk7XHJcblxyXG5cdGdldE51bWJlckZvcm1hdCgpOiBzdHJpbmcge1xyXG5cdFx0aWYgKHRoaXMudHlwZSgpID09PSAnbnVtYmVyJykgcmV0dXJuICcxLjAtMCc7XHJcblx0XHRlbHNlIGlmICh0aGlzLnR5cGUoKSA9PT0gJ2RlY2ltYWwnKSB7XHJcblx0XHRcdGNvbnN0IGZvcm1hdCA9IHRoaXMuZm9ybWF0KCk7XHJcblxyXG5cdFx0XHRpZiAoIWZvcm1hdCkgcmV0dXJuICcxLjAtMyc7XHJcblxyXG5cdFx0XHQvLyBFxJ9lciBmb3JtYXQgQW5ndWxhciBEZWNpbWFsUGlwZSBmb3JtYXTEsW5kYXlzYSBkaXJla3Qga3VsbGFuXHJcblx0XHRcdGlmIChmb3JtYXQgJiYgdHlwZW9mIGZvcm1hdCA9PT0gJ3N0cmluZycgJiYgZm9ybWF0Lm1hdGNoKC9eXFxkK1xcLlxcZCstXFxkKyQvKSkge1xyXG5cdFx0XHRcdHJldHVybiBmb3JtYXQ7XHJcblx0XHRcdH1cclxuXHRcdFx0Ly8gRcSfZXIgZXNraSBmb3JtYXQgc3RyaW5nJ2kgdmFyc2EgKMO2cm46ICMuMDApIG9udSDDp2V2aXJcclxuXHRcdFx0aWYgKGZvcm1hdCAmJiB0eXBlb2YgZm9ybWF0ID09PSAnc3RyaW5nJyAmJiBmb3JtYXQuaW5jbHVkZXMoJy4nKSkge1xyXG5cdFx0XHRcdGNvbnN0IGRlY2ltYWxQbGFjZXMgPSBmb3JtYXQuc3BsaXQoJy4nKVsxXS5sZW5ndGg7XHJcblx0XHRcdFx0cmV0dXJuIGAxLiR7ZGVjaW1hbFBsYWNlc30tJHtkZWNpbWFsUGxhY2VzfWA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdHJldHVybiAnJztcclxuXHR9XHJcblxyXG5cdGNvbG9yTGlzdCA9IFtcclxuXHRcdCcjMTg5MEZGJyxcclxuXHRcdCcjRkFBRDE0JyxcclxuXHRcdCcjNTJDNDFBJyxcclxuXHRcdCcjNUQ2RDdFJyxcclxuXHRcdCcjRkY2QjZCJyxcclxuXHRcdCcjMTNDMkMyJyxcclxuXHRcdCcjNThENjhEJyxcclxuXHRcdCcjNzIyRUQxJyxcclxuXHRcdCcjODVDMUU5JyxcclxuXHRcdCcjYzQ5ZTA1ZmYnXHJcblx0XTtcclxuXHJcblx0ZGlzcGxheSA9IGNvbXB1dGVkKCgpID0+IHtcclxuXHRcdHN3aXRjaCAodGhpcy50eXBlKCkpIHtcclxuXHRcdFx0Y2FzZSAndGV4dCc6XHJcblx0XHRcdGNhc2UgJ251bWJlcic6XHJcblx0XHRcdGNhc2UgJ2RlY2ltYWwnOlxyXG5cdFx0XHRjYXNlICdjdXJyZW5jeSc6XHJcblx0XHRcdGNhc2UgJ2JpZ19kZWNpbWFsJzpcclxuXHRcdFx0XHRyZXR1cm4gdGhpcy5tb2RlbCgpO1xyXG5cdFx0XHRjYXNlICdkYXRlJzpcclxuXHRcdFx0XHRyZXR1cm4gKDxudW1iZXI+dGhpcy5tb2RlbCgpKS5sb25nVG9TdHJpbmcodGhpcy5mb3JtYXQoKSA/PyAndGltZScpO1xyXG5cdFx0XHRjYXNlICdwYXNzd29yZCc6XHJcblx0XHRcdFx0cmV0dXJuICg8c3RyaW5nPnRoaXMubW9kZWwoKSkucmVwbGFjZSgvLi9nLCAnKicpO1xyXG5cdFx0XHRkZWZhdWx0OlxyXG5cdFx0XHRcdGNvbnNvbGUuZXJyb3IoXCJJbnZhbGlkIHR5cGU6ICdcIiArIHRoaXMudHlwZSgpICsgXCInXCIpO1xyXG5cdFx0XHRcdHJldHVybiAnJztcclxuXHRcdH1cclxuXHR9KTtcclxuXHJcblx0ZW51bVNlbGVjdGlvbkRpc3BsYXkgPSBjb21wdXRlZCgoKSA9PiB7XHJcblx0XHRjb25zdCBjdXJyZW50TGFuZyA9IHRoaXMubGFuZ1NpZ25hbCgpO1xyXG5cclxuXHRcdGNvbnN0IHNlbGVjdGlvbkdyb3VwID1cclxuXHRcdFx0dGhpcy5zZWxlY3Rpb25Hcm91cFNlcnZpY2Uuc2VsZWN0aW9uR3JvdXBzKClbYCR7dGhpcy5ncm91cE5hbWUoKSF9fiR7dGhpcy5wYXJlbnRTZWxlY3Rpb25LZXkoKSF9YF07XHJcblxyXG5cdFx0aWYgKCFzZWxlY3Rpb25Hcm91cCkge1xyXG5cdFx0XHR0aGlzLnNlbGVjdGlvbkdyb3VwU2VydmljZS5mZXRjaEVudW0odGhpcy5ncm91cE5hbWUoKSEsIHRoaXMucGFyZW50U2VsZWN0aW9uS2V5KCkhKTtcclxuXHRcdFx0cmV0dXJuIHRoaXMubW9kZWwoKTtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCByYXdNb2RlbCA9IHRoaXMubW9kZWwoKTtcclxuXHRcdGNvbnN0IGtleSA9XHJcblx0XHRcdHR5cGVvZiByYXdNb2RlbCA9PT0gJ29iamVjdCcgJiYgcmF3TW9kZWwgIT09IG51bGwgJiYgJ3ZhbHVlJyBpbiByYXdNb2RlbCA/IHJhd01vZGVsLnZhbHVlXHJcblx0XHRcdDogdHlwZW9mIHJhd01vZGVsID09PSAnYm9vbGVhbicgPyBTdHJpbmcocmF3TW9kZWwpXHJcblx0XHRcdDogcmF3TW9kZWw7XHJcblxyXG5cdFx0Y29uc3Qgc2VsZWN0aW9uSXRlbSA9IHNlbGVjdGlvbkdyb3VwLnNlbGVjdGlvbkl0ZW1zLmZpbmQoKHQpID0+IHQuc2VsZWN0aW9uS2V5ID09PSBrZXkpIGFzIHtcclxuXHRcdFx0c2VsZWN0aW9uTXVsdGlMYW5ndWFnZURpc3BsYXlzPzogeyBbbGFuZzogc3RyaW5nXTogc3RyaW5nIH07XHJcblx0XHRcdHNlbGVjdGlvbkRpc3BsYXk/OiBzdHJpbmc7XHJcblx0XHR9O1xyXG5cclxuXHRcdGlmICghc2VsZWN0aW9uSXRlbSkgcmV0dXJuIGtleTtcclxuXHJcblx0XHRyZXR1cm4gc2VsZWN0aW9uSXRlbS5zZWxlY3Rpb25NdWx0aUxhbmd1YWdlRGlzcGxheXM/LltjdXJyZW50TGFuZ10gPz8gc2VsZWN0aW9uSXRlbS5zZWxlY3Rpb25EaXNwbGF5ID8/IGtleTtcclxuXHR9KTtcclxuXHJcblx0ZW51bUJhZGdlQmFja2dyb3VuZENvbG9yID0gY29tcHV0ZWQoKCkgPT4ge1xyXG5cdFx0aWYgKHR5cGVvZiB0aGlzLm1vZGVsKCkgPT09ICdib29sZWFuJykge1xyXG5cdFx0XHRyZXR1cm4gdGhpcy5tb2RlbCgpID8gJyMyMmM1NWUnIDogJyNlZjQ0NDQnOyAvLyB0cnVlIGnDp2luIHllxZ9pbCwgZmFsc2UgacOnaW4ga8Sxcm3EsXrEsVxyXG5cdFx0fVxyXG5cclxuXHRcdGNvbnN0IHNlbGVjdGlvbkdyb3VwID1cclxuXHRcdFx0dGhpcy5zZWxlY3Rpb25Hcm91cFNlcnZpY2Uuc2VsZWN0aW9uR3JvdXBzKClbYCR7dGhpcy5ncm91cE5hbWUoKSF9fiR7dGhpcy5wYXJlbnRTZWxlY3Rpb25LZXkoKSF9YF07XHJcblx0XHRjb25zdCBzZWxlY3Rpb25JdGVtcyA9IHNlbGVjdGlvbkdyb3VwPy5zZWxlY3Rpb25JdGVtcyA/PyBbXTtcclxuXHJcblx0XHRjb25zdCBzZWxlY3Rpb25JdGVtID0gc2VsZWN0aW9uSXRlbXMuZmluZCgodCkgPT4gdC5zZWxlY3Rpb25LZXkgPT09IHRoaXMubW9kZWwoKSk7XHJcblxyXG5cdFx0aWYgKCFzZWxlY3Rpb25JdGVtKSB7XHJcblx0XHRcdHJldHVybiAnIzE4OTBGRic7XHJcblx0XHR9IGVsc2UgaWYgKHRoaXMuY29sb3JMaXN0W3NlbGVjdGlvbkl0ZW0uc2hvd09yZGVyXSAhPT0gdW5kZWZpbmVkKSB7XHJcblx0XHRcdHJldHVybiB0aGlzLmNvbG9yTGlzdFtzZWxlY3Rpb25JdGVtLnNob3dPcmRlcl07XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gJyNBMkFGRkYnO1xyXG5cdH0pO1xyXG5cclxuXHRnZXRBcnJheUl0ZW1WYWx1ZShpdGVtOiBhbnkpOiBhbnkge1xyXG5cdFx0cmV0dXJuIGl0ZW1bdGhpcy5hcnJheVR5cGVEaXNwbGF5TmFtZSgpXTtcclxuXHR9XHJcblxyXG5cdGlzTW9kZWxBcnJheSA9IGNvbXB1dGVkKCgpID0+IHtcclxuXHRcdHJldHVybiBBcnJheS5pc0FycmF5KHRoaXMubW9kZWwoKSk7XHJcblx0fSk7XHJcblxyXG5cdC8vIEdldCBlbnVtIGRpc3BsYXkgZm9yIGFycmF5IGl0ZW1zXHJcblx0ZW51bUFycmF5RGlzcGxheXMgPSBjb21wdXRlZCgoKSA9PiB7XHJcblx0XHRpZiAoIXRoaXMuaXNNb2RlbEFycmF5KCkgfHwgIUFycmF5LmlzQXJyYXkodGhpcy5tb2RlbCgpKSkgcmV0dXJuIFtdO1xyXG5cclxuXHRcdGNvbnN0IGN1cnJlbnRMYW5nID0gdGhpcy5sYW5nU2lnbmFsKCk7XHJcblx0XHRjb25zdCBzZWxlY3Rpb25Hcm91cCA9XHJcblx0XHRcdHRoaXMuc2VsZWN0aW9uR3JvdXBTZXJ2aWNlLnNlbGVjdGlvbkdyb3VwcygpW2Ake3RoaXMuZ3JvdXBOYW1lKCkhfX4ke3RoaXMucGFyZW50U2VsZWN0aW9uS2V5KCkhfWBdO1xyXG5cclxuXHRcdGlmICghc2VsZWN0aW9uR3JvdXApIHtcclxuXHRcdFx0dGhpcy5zZWxlY3Rpb25Hcm91cFNlcnZpY2UuZmV0Y2hFbnVtKHRoaXMuZ3JvdXBOYW1lKCkhLCB0aGlzLnBhcmVudFNlbGVjdGlvbktleSgpISk7XHJcblx0XHRcdHJldHVybiB0aGlzLm1vZGVsKCkgYXMgc3RyaW5nW107XHJcblx0XHR9XHJcblxyXG5cdFx0cmV0dXJuIHRoaXMubW9kZWwoKS5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG5cdFx0XHRjb25zdCBrZXkgPVxyXG5cdFx0XHRcdHR5cGVvZiBpdGVtID09PSAnb2JqZWN0JyAmJiBpdGVtICE9PSBudWxsICYmICd2YWx1ZScgaW4gaXRlbSA/IGl0ZW0udmFsdWVcclxuXHRcdFx0XHQ6IHR5cGVvZiBpdGVtID09PSAnYm9vbGVhbicgPyBTdHJpbmcoaXRlbSlcclxuXHRcdFx0XHQ6IGl0ZW07XHJcblxyXG5cdFx0XHRjb25zdCBzZWxlY3Rpb25JdGVtID0gc2VsZWN0aW9uR3JvdXAuc2VsZWN0aW9uSXRlbXMuZmluZCgodCkgPT4gdC5zZWxlY3Rpb25LZXkgPT09IGtleSkgYXMge1xyXG5cdFx0XHRcdHNlbGVjdGlvbk11bHRpTGFuZ3VhZ2VEaXNwbGF5cz86IHsgW2xhbmc6IHN0cmluZ106IHN0cmluZyB9O1xyXG5cdFx0XHRcdHNlbGVjdGlvbkRpc3BsYXk/OiBzdHJpbmc7XHJcblx0XHRcdH07XHJcblxyXG5cdFx0XHRpZiAoIXNlbGVjdGlvbkl0ZW0pIHJldHVybiBrZXk7XHJcblxyXG5cdFx0XHRyZXR1cm4gc2VsZWN0aW9uSXRlbS5zZWxlY3Rpb25NdWx0aUxhbmd1YWdlRGlzcGxheXM/LltjdXJyZW50TGFuZ10gPz8gc2VsZWN0aW9uSXRlbS5zZWxlY3Rpb25EaXNwbGF5ID8/IGtleTtcclxuXHRcdH0pIGFzIHN0cmluZ1tdO1xyXG5cdH0pO1xyXG5cclxuXHQvLyBHZXQgZW51bSBiYWNrZ3JvdW5kIGNvbG9ycyBmb3IgYXJyYXkgaXRlbXNcclxuXHRlbnVtQXJyYXlCYWNrZ3JvdW5kQ29sb3JzID0gY29tcHV0ZWQoKCkgPT4ge1xyXG5cdFx0aWYgKCF0aGlzLmlzTW9kZWxBcnJheSgpIHx8ICFBcnJheS5pc0FycmF5KHRoaXMubW9kZWwoKSkpIHJldHVybiBbXTtcclxuXHJcblx0XHRjb25zdCBzZWxlY3Rpb25Hcm91cCA9XHJcblx0XHRcdHRoaXMuc2VsZWN0aW9uR3JvdXBTZXJ2aWNlLnNlbGVjdGlvbkdyb3VwcygpW2Ake3RoaXMuZ3JvdXBOYW1lKCkhfX4ke3RoaXMucGFyZW50U2VsZWN0aW9uS2V5KCkhfWBdO1xyXG5cdFx0Y29uc3Qgc2VsZWN0aW9uSXRlbXMgPSBzZWxlY3Rpb25Hcm91cD8uc2VsZWN0aW9uSXRlbXMgPz8gW107XHJcblxyXG5cdFx0cmV0dXJuIHRoaXMubW9kZWwoKS5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG5cdFx0XHRpZiAodHlwZW9mIGl0ZW0gPT09ICdib29sZWFuJykge1xyXG5cdFx0XHRcdHJldHVybiBpdGVtID8gJyMyMmM1NWUnIDogJyNlZjQ0NDQnO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRjb25zdCBzZWxlY3Rpb25JdGVtID0gc2VsZWN0aW9uSXRlbXMuZmluZCgodCkgPT4gdC5zZWxlY3Rpb25LZXkgPT09IGl0ZW0pO1xyXG5cclxuXHRcdFx0aWYgKCFzZWxlY3Rpb25JdGVtKSB7XHJcblx0XHRcdFx0cmV0dXJuICcjMTg5MEZGJztcclxuXHRcdFx0fSBlbHNlIGlmICh0aGlzLmNvbG9yTGlzdFtzZWxlY3Rpb25JdGVtLnNob3dPcmRlcl0gIT09IHVuZGVmaW5lZCkge1xyXG5cdFx0XHRcdHJldHVybiB0aGlzLmNvbG9yTGlzdFtzZWxlY3Rpb25JdGVtLnNob3dPcmRlcl07XHJcblx0XHRcdH1cclxuXHRcdFx0cmV0dXJuICcjQTJBRkZGJztcclxuXHRcdH0pO1xyXG5cdH0pO1xyXG5cclxuXHRjb3B5VG9DbGlwYm9hcmQodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xyXG5cdFx0aWYgKCF2YWx1ZSkgcmV0dXJuO1xyXG5cdFx0bmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQodmFsdWUpLnRoZW4oXHJcblx0XHRcdCgpID0+IHtcclxuXHRcdFx0XHR0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcblx0XHRcdFx0XHRzZXZlcml0eTogJ3N1Y2Nlc3MnLFxyXG5cdFx0XHRcdFx0c3VtbWFyeTogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnbWVzc2FnZXMuc3VjY2Vzc01lc3NhZ2VIZWFkZXInKSxcclxuXHRcdFx0XHRcdGRldGFpbDogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnbWVzc2FnZXMuY29weVRvQ2xpcGJvYXJkU3VjY2VzcycpLFxyXG5cdFx0XHRcdFx0a2V5OiAndG9hc3Qtcm9vdCdcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fSxcclxuXHRcdFx0KGVycikgPT4ge1xyXG5cdFx0XHRcdHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHtcclxuXHRcdFx0XHRcdHNldmVyaXR5OiAnZXJyb3InLFxyXG5cdFx0XHRcdFx0c3VtbWFyeTogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnbWVzc2FnZXMudW5zdWNjZXNzZnVsTWVzc2FnZUhlYWRlcicpLFxyXG5cdFx0XHRcdFx0ZGV0YWlsOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdtZXNzYWdlcy5jb3B5VG9DbGlwYm9hcmRFcnJvcicpLFxyXG5cdFx0XHRcdFx0a2V5OiAndG9hc3Qtcm9vdCdcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcbn1cclxuIiwiQGlmIChtb2RlbCgpID09IHVuZGVmaW5lZCB8fCBtb2RlbCgpID09IG51bGwpIHtcclxuXHQ8aVxyXG5cdFx0Y2xhc3M9XCJwaSBwaS1taW51c1wiXHJcblx0XHRzdHlsZT1cImNvbG9yOiByZWRcIlxyXG5cdFx0W3BUb29sdGlwXT1cInRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ3ZhbGlkYXRpb25zLm5vSXRlbVRvU2hvdycpXCI+PC9pPlxyXG59IEBlbHNlIHtcclxuXHRAaWYgKHR5cGUoKSA9PSAnYm9vbCcpIHtcclxuXHRcdEBpZiAoISFtb2RlbCgpKSB7XHJcblx0XHRcdDxpIGNsYXNzPVwicGkgcGktY2hlY2tcIiBzdHlsZT1cImNvbG9yOiBncmVlblwiPjwvaT5cclxuXHRcdH0gQGVsc2Uge1xyXG5cdFx0XHQ8aSBjbGFzcz1cInBpIHBpLXRpbWVzXCIgc3R5bGU9XCJjb2xvcjogY3JpbXNvblwiPjwvaT5cclxuXHRcdH1cclxuXHR9IEBlbHNlIGlmICh0eXBlKCkgPT09ICdlbnVtJykge1xyXG5cdFx0QGlmIChpc01vZGVsQXJyYXkoKSkge1xyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTFcIj5cclxuXHRcdFx0XHRAZm9yIChkaXNwbGF5IG9mIGVudW1BcnJheURpc3BsYXlzKCkuc2xpY2UoMCwgMik7IHRyYWNrIGRpc3BsYXk7IGxldCBpID0gJGluZGV4KSB7XHJcblx0XHRcdFx0XHQ8YXJpbC1iYWRnZSBbYmFja2dyb3VuZF09XCJlbnVtQXJyYXlCYWNrZ3JvdW5kQ29sb3JzKClbaV1cIiBbdmFsdWVdPVwiZGlzcGxheVwiIFt0ZXh0Q2xhbXBDaGFyYWN0ZXJzXT1cInRleHRDbGFtcENoYXJhY3RlcnMoKVwiIC8+XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdEBpZiAoZW51bUFycmF5RGlzcGxheXMoKS5sZW5ndGggPiAyKSB7XHJcblx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWVsbGlwc2lzLXYgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwiZW51bU9wLnRvZ2dsZSgkZXZlbnQpXCI+PC9pPlxyXG5cclxuXHRcdFx0XHRcdDxwLW92ZXJsYXlQYW5lbCAjZW51bU9wIGNsYXNzPVwic2hhZG93LTRcIiBhcHBlbmRUbz1cImJvZHlcIj5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gZ2FwLTIgbWF4LXctMzByZW0gbWF4LWgtMjByZW0gcHItMyBvdmVyZmxvdy15LWF1dG9cIj5cclxuXHRcdFx0XHRcdFx0XHRAZm9yIChkaXNwbGF5IG9mIGVudW1BcnJheURpc3BsYXlzKCkgfCBzbGljZTogMjsgdHJhY2sgZGlzcGxheTsgbGV0IGkgPSAkaW5kZXgpIHtcclxuXHRcdFx0XHRcdFx0XHRcdDxhcmlsLWJhZGdlIFtiYWNrZ3JvdW5kXT1cImVudW1BcnJheUJhY2tncm91bmRDb2xvcnMoKVtpICsgMl1cIiBbdmFsdWVdPVwiZGlzcGxheVwiIFt0ZXh0Q2xhbXBDaGFyYWN0ZXJzXT1cInRleHRDbGFtcENoYXJhY3RlcnMoKVwiIC8+XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdDwvcC1vdmVybGF5UGFuZWw+XHJcblx0XHRcdFx0fVxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdH0gQGVsc2Uge1xyXG5cdFx0XHQ8YXJpbC1iYWRnZSBbYmFja2dyb3VuZF09XCJlbnVtQmFkZ2VCYWNrZ3JvdW5kQ29sb3IoKVwiIFt2YWx1ZV09XCJlbnVtU2VsZWN0aW9uRGlzcGxheSgpXCIgW3RleHRDbGFtcENoYXJhY3RlcnNdPVwidGV4dENsYW1wQ2hhcmFjdGVycygpXCIgLz5cclxuXHRcdH1cclxuXHR9IEBlbHNlIGlmICh0eXBlKCkgPT09ICdhcnJheScpIHtcclxuXHRcdDxkaXYgY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMVwiPlxyXG5cdFx0XHRAZm9yIChpdGVtIG9mIG1vZGVsKCkuc2xpY2UoMCwgYXJyYXlUeXBlTWF4QmFkZ2VDb3VudCgpKTsgdHJhY2sgaXRlbSkge1xyXG5cdFx0XHRcdDxhcmlsLWJhZGdlIFtiYWNrZ3JvdW5kXT1cImdldEFycmF5SXRlbVZhbHVlKGl0ZW0pIHx8ICcnIHwgZW51bUNvbG9yUGlja2VyXCIgW3ZhbHVlXT1cImdldEFycmF5SXRlbVZhbHVlKGl0ZW0pXCIgW3RleHRDbGFtcENoYXJhY3RlcnNdPVwidGV4dENsYW1wQ2hhcmFjdGVycygpXCIgLz5cclxuXHRcdFx0fVxyXG5cdFx0XHRAaWYgKG1vZGVsKCkubGVuZ3RoID4gYXJyYXlUeXBlTWF4QmFkZ2VDb3VudCgpKSB7XHJcblx0XHRcdFx0PGkgY2xhc3M9XCJwaSBwaS1lbGxpcHNpcy12IGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9wLnRvZ2dsZSgkZXZlbnQpXCI+PC9pPlxyXG5cclxuXHRcdFx0XHQ8cC1vdmVybGF5UGFuZWwgI29wIGNsYXNzPVwic2hhZG93LTRcIiBhcHBlbmRUbz1cImJvZHlcIj5cclxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sdW1uIGdhcC0yIG1heC13LTMwcmVtIG1heC1oLTIwcmVtIHByLTMgb3ZlcmZsb3cteS1hdXRvXCI+XHJcblx0XHRcdFx0XHRcdEBmb3IgKGl0ZW0gb2YgbW9kZWwoKSB8IHNsaWNlOiBhcnJheVR5cGVNYXhCYWRnZUNvdW50KCk7IHRyYWNrIGl0ZW0pIHtcclxuXHRcdFx0XHRcdFx0XHQ8YXJpbC1iYWRnZVxyXG5cdFx0XHRcdFx0XHRcdFx0W2JhY2tncm91bmRdPVwiZ2V0QXJyYXlJdGVtVmFsdWUoaXRlbSkgfHwgJycgfCBlbnVtQ29sb3JQaWNrZXJcIlxyXG5cdFx0XHRcdFx0XHRcdFx0W3ZhbHVlXT1cImdldEFycmF5SXRlbVZhbHVlKGl0ZW0pXCIgLz5cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0PC9wLW92ZXJsYXlQYW5lbD5cclxuXHRcdFx0fVxyXG5cdFx0PC9kaXY+XHJcblx0fSBAZWxzZSB7XHJcblx0XHRAaWYgKGRpc3BsYXkoKSA9PSB1bmRlZmluZWQpIHtcclxuXHRcdFx0PGlcclxuXHRcdFx0XHRjbGFzcz1cInBpIHBpLWV4Y2xhbWF0aW9uLWNpcmNsZVwiXHJcblx0XHRcdFx0c3R5bGU9XCJjb2xvcjogcmVkXCJcclxuXHRcdFx0XHRbcFRvb2x0aXBdPVwidGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgndmFsaWRhdGlvbnMuaW52YWxpZERhdGFGb3JtYXQnKVwiPlxyXG5cdFx0XHQ8L2k+XHJcblx0XHR9IEBlbHNlIHtcclxuXHRcdFx0PHNwYW4gY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMlwiPlxyXG5cdFx0XHRcdEBpZiAoc2hvd0NvcHlJY29uKCkpIHtcclxuXHRcdFx0XHRcdDxpXHJcblx0XHRcdFx0XHRcdGNsYXNzPVwicGkgcGktY29weSBjdXJzb3ItcG9pbnRlclwiXHJcblx0XHRcdFx0XHRcdChjbGljayk9XCJjb3B5VG9DbGlwYm9hcmQoZGlzcGxheSgpPy50b1N0cmluZygpKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcclxuXHRcdFx0XHRcdFx0c3R5bGU9XCJmb250LXNpemU6IDFyZW07IGNvbG9yOiBncmVlblwiPjwvaT5cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0PHNwYW5cclxuXHRcdFx0XHRcdFtwVG9vbHRpcF09XCJcclxuXHRcdFx0XHRcdFx0dHlwZSgpID09PSAndGV4dCcgJiYgaXNUZXh0Q2xhbXAoKSAmJiBkaXNwbGF5KCk/LnRvU3RyaW5nKCkubGVuZ3RoID4gdGV4dENsYW1wQ2hhcmFjdGVycygpID9cclxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5KCk/LnRvU3RyaW5nKClcclxuXHRcdFx0XHRcdFx0Olx0JydcclxuXHRcdFx0XHRcdFwiXHJcblx0XHRcdFx0XHR0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxyXG5cdFx0XHRcdFx0W2NsYXNzLnRleHQtbm8td3JhcF09XCJpc1RleHRDbGFtcCgpXCJcclxuXHRcdFx0XHRcdFtzdHlsZV09XCJpc0NsaWNrYWJsZSgpID8geyAndGV4dC1kZWNvcmF0aW9uJzogJ3VuZGVybGluZScsIGNvbG9yOiAnIzAwMDBFRScsIGN1cnNvcjogJ3BvaW50ZXInIH0gOiAnJ1wiPlxyXG5cdFx0XHRcdFx0QGlmICh0eXBlKCkgPT09ICdudW1iZXInIHx8IHR5cGUoKSA9PT0gJ2RlY2ltYWwnKSB7XHJcblx0XHRcdFx0XHRcdHt7IG1vZGVsKCkgfCBudW1iZXI6IGdldE51bWJlckZvcm1hdCgpIDogJ3RyLVRSJyB9fVxyXG5cdFx0XHRcdFx0fSBAZWxzZSBpZiAodHlwZSgpID09PSAnYmlnX2RlY2ltYWwnKSB7XHJcblx0XHRcdFx0XHRcdHt7IG1vZGVsKCkgfCByb3VuZE51bWJlcjogYmlnRGVjaW1hbFNjYWxlKCkgOiBiaWdEZWNpbWFsUm91bmRpbmdNb2RlKCkgOiAndHItVFInIH19XHJcblx0XHRcdFx0XHR9IEBlbHNlIGlmICh0eXBlKCkgPT09ICdjdXJyZW5jeScpIHtcclxuXHRcdFx0XHRcdFx0e3sgbW9kZWwoKSB8IGN1cnJlbmN5OiBmb3JtYXQoKSA/PyAnVFJZJyA6ICdzeW1ib2wnIDogJzEuMC0yJyB9fVxyXG5cdFx0XHRcdFx0fSBAZWxzZSBpZiAodHlwZSgpID09PSAndGV4dCcgJiYgaXNUZXh0Q2xhbXAoKSkge1xyXG5cdFx0XHRcdFx0XHR7e1xyXG5cdFx0XHRcdFx0XHRcdGRpc3BsYXkoKS5sZW5ndGggPiB0ZXh0Q2xhbXBDaGFyYWN0ZXJzKCkgPyBkaXNwbGF5KCkuc2xpY2UoMCwgdGV4dENsYW1wQ2hhcmFjdGVycygpKSArICcuLi4nIDogZGlzcGxheSgpXHJcblx0XHRcdFx0XHRcdH19XHJcblx0XHRcdFx0XHR9IEBlbHNlIHtcclxuXHRcdFx0XHRcdFx0e3sgZGlzcGxheSgpIH19XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0PC9zcGFuPlxyXG5cdFx0XHQ8L3NwYW4+XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiJdfQ==
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS92YWx1ZS9zcmMvdmFsdWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS92YWx1ZS9zcmMvdmFsdWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUc1RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxlQUFlLEVBQW9CLE1BQU0sbUJBQW1CLENBQUM7QUFHdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sZ0NBQWdDLENBQUM7Ozs7Ozs7QUFrQ3hDLE1BQU0sT0FBTyxjQUFjO0lBMEIxQixZQUNRLGdCQUFrQyxFQUN4QixxQkFBNEMsRUFDNUMsY0FBOEI7UUFGeEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUN4QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQTVCaEQsVUFBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQW1DLENBQUM7UUFD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QywrQkFBK0IsQ0FBQztnQkFDekUsTUFBTSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsaUNBQWlDLENBQUM7Z0JBQzFFLEdBQUcsRUFBRSxZQUFZO2FBQ2pCLENBQUMsQ0FBQztRQUNKLENBQUMsRUFDRCxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ1AsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUM7Z0JBQ3ZCLFFBQVEsRUFBRSxPQUFPO2dCQUNqQixPQUFPLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxvQ0FBb0MsQ0FBQztnQkFDOUUsTUFBTSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsK0JBQStCLENBQUM7Z0JBQ3hFLEdBQUcsRUFBRSxZQUFZO2FBQ2pCLENBQUMsQ0FBQztRQUNKLENBQUMsQ0FDRCxDQUFDO0lBQ0gsQ0FBQzsrR0F6TlcsY0FBYzttR0FBZCxjQUFjLDRzRUFGZixDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMsMEJDL0N4QyxtM0lBOEZBLHlKRDFERSxjQUFjLHVMQUNkLGFBQWEscVhBQ2IsZUFBZSw4QkFDZixrQkFBa0IsOFZBQ2xCLG1CQUFtQixtREFDbkIsU0FBUyx5Q0FDVCxXQUFXLDBDQUNYLFlBQVksNENBQ1osZUFBZTs7NEZBS0osY0FBYztrQkFuQjFCLFNBQVM7aUNBQ0csSUFBSSxZQUNOLFlBQVksV0FHYjt3QkFDUixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsU0FBUzt3QkFDVCxXQUFXO3dCQUNYLFlBQVk7d0JBQ1osZUFBZTtxQkFDZixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXJyZW5jeVBpcGUsIERlY2ltYWxQaXBlLCBTbGljZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5pbXBvcnQgeyBPdmVybGF5UGFuZWxNb2R1bGUgfSBmcm9tICdwcmltZW5nL292ZXJsYXlwYW5lbCc7XHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsb2NvTW9kdWxlLCBUcmFuc2xvY29TZXJ2aWNlIH0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nO1xyXG5cclxuaW1wb3J0IHsgU2VsZWN0aW9uR3JvdXBTZXJ2aWNlIH0gZnJvbSAnYXJpbC90aGVtZS9sYXlvdXQnO1xyXG5pbXBvcnQgeyBCYWRnZUNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvYmFkZ2UnO1xyXG5pbXBvcnQgeyBFbnVtQ29sb3JQaWNrZXJQaXBlIH0gZnJvbSAnYXJpbC91aS9saWInO1xyXG5pbXBvcnQgeyBEZWNpbWFsUm91bmRpbmdUeXBlIH0gZnJvbSAnYXJpbC91dGlsL2xpYic7XHJcbmltcG9ydCB7IFJvdW5kTnVtYmVyUGlwZSB9IGZyb20gJ2FyaWwvdXRpbC9waXBlcyc7XHJcbmltcG9ydCAnYXJpbC91dGlsL3ByaW1pdGl2ZS1leHRlbnNpb25zJztcclxuXHJcbnR5cGUgVmFsdWVUeXBlcyA9XHJcblx0fCAndGV4dCdcclxuXHR8ICdudW1iZXInXHJcblx0fCAnYm9vbCdcclxuXHR8ICdkZWNpbWFsJ1xyXG5cdHwgJ2JpZ19kZWNpbWFsJ1xyXG5cdHwgJ2RhdGUnXHJcblx0fCAncGFzc3dvcmQnXHJcblx0fCAnZW51bSdcclxuXHR8ICdhcnJheSdcclxuXHR8ICdpc29EYXRlJ1xyXG5cdHwgJ2N1cnJlbmN5JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcmlsLXZhbHVlJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vdmFsdWUuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsOiAnLi92YWx1ZS5jb21wb25lbnQuc2NzcycsXHJcblx0aW1wb3J0czogW1xyXG5cdFx0QmFkZ2VDb21wb25lbnQsXHJcblx0XHRUb29sdGlwTW9kdWxlLFxyXG5cdFx0VHJhbnNsb2NvTW9kdWxlLFxyXG5cdFx0T3ZlcmxheVBhbmVsTW9kdWxlLFxyXG5cdFx0RW51bUNvbG9yUGlja2VyUGlwZSxcclxuXHRcdFNsaWNlUGlwZSxcclxuXHRcdERlY2ltYWxQaXBlLFxyXG5cdFx0Q3VycmVuY3lQaXBlLFxyXG5cdFx0Um91bmROdW1iZXJQaXBlXHJcblx0XSxcclxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuXHRwcm92aWRlcnM6IFtEaWFsb2dTZXJ2aWNlLCBEZWNpbWFsUGlwZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFZhbHVlQ29tcG9uZW50IHtcclxuXHRtb2RlbCA9IGlucHV0LnJlcXVpcmVkPHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBhbnk+KCk7XHJcblx0dHlwZSA9IGlucHV0PFZhbHVlVHlwZXM+KCd0ZXh0Jyk7XHJcblx0Zm9ybWF0ID0gaW5wdXQ8c3RyaW5nPigpO1xyXG5cdGlzQ2xpY2thYmxlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cdGdyb3VwTmFtZSA9IGlucHV0PHN0cmluZz4oKTtcclxuXHRwYXJlbnRTZWxlY3Rpb25LZXkgPSBpbnB1dDxzdHJpbmc+KCdBTEwnKTtcclxuXHRpc1RleHRDbGFtcCA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xyXG5cdHRleHRDbGFtcENoYXJhY3RlcnMgPSBpbnB1dDxudW1iZXI+KDUwKTtcclxuXHRzdHlsZSA9IGlucHV0PHN0cmluZz4oKTtcclxuXHRjb3B5YWJsZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHRzaG91bGRTaG93Q29weUZvckNsYW1wZWRUZXh0ID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cdHNob3dDb3B5SWNvbiA9IGNvbXB1dGVkKFxyXG5cdFx0KCkgPT5cclxuXHRcdFx0KCF0aGlzLnNob3VsZFNob3dDb3B5Rm9yQ2xhbXBlZFRleHQoKSAmJiB0aGlzLmNvcHlhYmxlKCkpIHx8XHJcblx0XHRcdCh0aGlzLnNob3VsZFNob3dDb3B5Rm9yQ2xhbXBlZFRleHQoKSAmJiB0aGlzLm1vZGVsKCkubGVuZ3RoID4gdGhpcy50ZXh0Q2xhbXBDaGFyYWN0ZXJzKCkpXHJcblx0KTtcclxuXHJcblx0Ly8gb25seSBmb3IgYXJyYXkgdHlwZVxyXG5cdGFycmF5VHlwZURpc3BsYXlOYW1lID0gaW5wdXQ8c3RyaW5nPigndmFsdWVEZXNjJyk7XHJcblx0YXJyYXlUeXBlTWF4QmFkZ2VDb3VudCA9IGlucHV0PG51bWJlcj4oMyk7XHJcblxyXG5cdC8vIG9ubHkgZm9yIGJpZ19kZWNpbWFsIHR5cGVcclxuXHRiaWdEZWNpbWFsUm91bmRpbmdNb2RlID0gaW5wdXQ8RGVjaW1hbFJvdW5kaW5nVHlwZT4oKTtcclxuXHRiaWdEZWNpbWFsU2NhbGUgPSBpbnB1dDxudW1iZXI+KCk7XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHVibGljIHRyYW5zbG9jb1NlcnZpY2U6IFRyYW5zbG9jb1NlcnZpY2UsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IHNlbGVjdGlvbkdyb3VwU2VydmljZTogU2VsZWN0aW9uR3JvdXBTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2VcclxuXHQpIHtcclxuXHRcdHRoaXMudHJhbnNsb2NvU2VydmljZS5sYW5nQ2hhbmdlcyQuc3Vic2NyaWJlKChsYW5nKSA9PiB7XHJcblx0XHRcdHRoaXMubGFuZ1NpZ25hbC5zZXQobGFuZyk7XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdGxhbmdTaWduYWwgPSBzaWduYWwodGhpcy50cmFuc2xvY29TZXJ2aWNlLmdldEFjdGl2ZUxhbmcoKSk7XHJcblxyXG5cdGdldE51bWJlckZvcm1hdCgpOiBzdHJpbmcge1xyXG5cdFx0aWYgKHRoaXMudHlwZSgpID09PSAnbnVtYmVyJykgcmV0dXJuICcxLjAtMCc7XHJcblx0XHRlbHNlIGlmICh0aGlzLnR5cGUoKSA9PT0gJ2RlY2ltYWwnKSB7XHJcblx0XHRcdGNvbnN0IGZvcm1hdCA9IHRoaXMuZm9ybWF0KCk7XHJcblxyXG5cdFx0XHRpZiAoIWZvcm1hdCkgcmV0dXJuICcxLjAtMyc7XHJcblxyXG5cdFx0XHQvLyBFxJ9lciBmb3JtYXQgQW5ndWxhciBEZWNpbWFsUGlwZSBmb3JtYXTEsW5kYXlzYSBkaXJla3Qga3VsbGFuXHJcblx0XHRcdGlmIChmb3JtYXQgJiYgdHlwZW9mIGZvcm1hdCA9PT0gJ3N0cmluZycgJiYgZm9ybWF0Lm1hdGNoKC9eXFxkK1xcLlxcZCstXFxkKyQvKSkge1xyXG5cdFx0XHRcdHJldHVybiBmb3JtYXQ7XHJcblx0XHRcdH1cclxuXHRcdFx0Ly8gRcSfZXIgZXNraSBmb3JtYXQgc3RyaW5nJ2kgdmFyc2EgKMO2cm46ICMuMDApIG9udSDDp2V2aXJcclxuXHRcdFx0aWYgKGZvcm1hdCAmJiB0eXBlb2YgZm9ybWF0ID09PSAnc3RyaW5nJyAmJiBmb3JtYXQuaW5jbHVkZXMoJy4nKSkge1xyXG5cdFx0XHRcdGNvbnN0IGRlY2ltYWxQbGFjZXMgPSBmb3JtYXQuc3BsaXQoJy4nKVsxXS5sZW5ndGg7XHJcblx0XHRcdFx0cmV0dXJuIGAxLiR7ZGVjaW1hbFBsYWNlc30tJHtkZWNpbWFsUGxhY2VzfWA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdHJldHVybiAnJztcclxuXHR9XHJcblxyXG5cdGNvbG9yTGlzdCA9IFtcclxuXHRcdCcjMTg5MEZGJyxcclxuXHRcdCcjRkFBRDE0JyxcclxuXHRcdCcjNTJDNDFBJyxcclxuXHRcdCcjNUQ2RDdFJyxcclxuXHRcdCcjRkY2QjZCJyxcclxuXHRcdCcjMTNDMkMyJyxcclxuXHRcdCcjNThENjhEJyxcclxuXHRcdCcjNzIyRUQxJyxcclxuXHRcdCcjODVDMUU5JyxcclxuXHRcdCcjYzQ5ZTA1ZmYnXHJcblx0XTtcclxuXHJcblx0ZGlzcGxheSA9IGNvbXB1dGVkKCgpID0+IHtcclxuXHRcdHN3aXRjaCAodGhpcy50eXBlKCkpIHtcclxuXHRcdFx0Y2FzZSAndGV4dCc6XHJcblx0XHRcdGNhc2UgJ251bWJlcic6XHJcblx0XHRcdGNhc2UgJ2RlY2ltYWwnOlxyXG5cdFx0XHRjYXNlICdjdXJyZW5jeSc6XHJcblx0XHRcdGNhc2UgJ2JpZ19kZWNpbWFsJzpcclxuXHRcdFx0XHRyZXR1cm4gdGhpcy5tb2RlbCgpO1xyXG5cdFx0XHRjYXNlICdkYXRlJzpcclxuXHRcdFx0XHRyZXR1cm4gKDxudW1iZXI+dGhpcy5tb2RlbCgpKS5sb25nVG9TdHJpbmcodGhpcy5mb3JtYXQoKSA/PyAndGltZScpO1xyXG5cdFx0XHRjYXNlICdwYXNzd29yZCc6XHJcblx0XHRcdFx0cmV0dXJuICg8c3RyaW5nPnRoaXMubW9kZWwoKSkucmVwbGFjZSgvLi9nLCAnKicpO1xyXG5cdFx0XHRkZWZhdWx0OlxyXG5cdFx0XHRcdGNvbnNvbGUuZXJyb3IoXCJJbnZhbGlkIHR5cGU6ICdcIiArIHRoaXMudHlwZSgpICsgXCInXCIpO1xyXG5cdFx0XHRcdHJldHVybiAnJztcclxuXHRcdH1cclxuXHR9KTtcclxuXHJcblx0ZW51bVNlbGVjdGlvbkRpc3BsYXkgPSBjb21wdXRlZCgoKSA9PiB7XHJcblx0XHRjb25zdCBjdXJyZW50TGFuZyA9IHRoaXMubGFuZ1NpZ25hbCgpO1xyXG5cclxuXHRcdGNvbnN0IHNlbGVjdGlvbkdyb3VwID1cclxuXHRcdFx0dGhpcy5zZWxlY3Rpb25Hcm91cFNlcnZpY2Uuc2VsZWN0aW9uR3JvdXBzKClbYCR7dGhpcy5ncm91cE5hbWUoKSF9fiR7dGhpcy5wYXJlbnRTZWxlY3Rpb25LZXkoKSF9YF07XHJcblxyXG5cdFx0aWYgKCFzZWxlY3Rpb25Hcm91cCkge1xyXG5cdFx0XHR0aGlzLnNlbGVjdGlvbkdyb3VwU2VydmljZS5mZXRjaEVudW0odGhpcy5ncm91cE5hbWUoKSEsIHRoaXMucGFyZW50U2VsZWN0aW9uS2V5KCkhKTtcclxuXHRcdFx0cmV0dXJuIHRoaXMubW9kZWwoKTtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCByYXdNb2RlbCA9IHRoaXMubW9kZWwoKTtcclxuXHRcdGNvbnN0IGtleSA9XHJcblx0XHRcdHR5cGVvZiByYXdNb2RlbCA9PT0gJ29iamVjdCcgJiYgcmF3TW9kZWwgIT09IG51bGwgJiYgJ3ZhbHVlJyBpbiByYXdNb2RlbCA/IHJhd01vZGVsLnZhbHVlXHJcblx0XHRcdDogdHlwZW9mIHJhd01vZGVsID09PSAnYm9vbGVhbicgPyBTdHJpbmcocmF3TW9kZWwpXHJcblx0XHRcdDogcmF3TW9kZWw7XHJcblxyXG5cdFx0Y29uc3Qgc2VsZWN0aW9uSXRlbSA9IHNlbGVjdGlvbkdyb3VwLnNlbGVjdGlvbkl0ZW1zLmZpbmQoKHQpID0+IHQuc2VsZWN0aW9uS2V5ID09PSBrZXkpIGFzIHtcclxuXHRcdFx0c2VsZWN0aW9uTXVsdGlMYW5ndWFnZURpc3BsYXlzPzogeyBbbGFuZzogc3RyaW5nXTogc3RyaW5nIH07XHJcblx0XHRcdHNlbGVjdGlvbkRpc3BsYXk/OiBzdHJpbmc7XHJcblx0XHR9O1xyXG5cclxuXHRcdGlmICghc2VsZWN0aW9uSXRlbSkgcmV0dXJuIGtleTtcclxuXHJcblx0XHRyZXR1cm4gc2VsZWN0aW9uSXRlbS5zZWxlY3Rpb25NdWx0aUxhbmd1YWdlRGlzcGxheXM/LltjdXJyZW50TGFuZ10gPz8gc2VsZWN0aW9uSXRlbS5zZWxlY3Rpb25EaXNwbGF5ID8/IGtleTtcclxuXHR9KTtcclxuXHJcblx0ZW51bUJhZGdlQmFja2dyb3VuZENvbG9yID0gY29tcHV0ZWQoKCkgPT4ge1xyXG5cdFx0aWYgKHR5cGVvZiB0aGlzLm1vZGVsKCkgPT09ICdib29sZWFuJykge1xyXG5cdFx0XHRyZXR1cm4gdGhpcy5tb2RlbCgpID8gJyMyMmM1NWUnIDogJyNlZjQ0NDQnOyAvLyB0cnVlIGnDp2luIHllxZ9pbCwgZmFsc2UgacOnaW4ga8Sxcm3EsXrEsVxyXG5cdFx0fVxyXG5cclxuXHRcdGNvbnN0IHNlbGVjdGlvbkdyb3VwID1cclxuXHRcdFx0dGhpcy5zZWxlY3Rpb25Hcm91cFNlcnZpY2Uuc2VsZWN0aW9uR3JvdXBzKClbYCR7dGhpcy5ncm91cE5hbWUoKSF9fiR7dGhpcy5wYXJlbnRTZWxlY3Rpb25LZXkoKSF9YF07XHJcblx0XHRjb25zdCBzZWxlY3Rpb25JdGVtcyA9IHNlbGVjdGlvbkdyb3VwPy5zZWxlY3Rpb25JdGVtcyA/PyBbXTtcclxuXHJcblx0XHRjb25zdCBzZWxlY3Rpb25JdGVtID0gc2VsZWN0aW9uSXRlbXMuZmluZCgodCkgPT4gdC5zZWxlY3Rpb25LZXkgPT09IHRoaXMubW9kZWwoKSk7XHJcblxyXG5cdFx0aWYgKCFzZWxlY3Rpb25JdGVtKSB7XHJcblx0XHRcdHJldHVybiAnIzE4OTBGRic7XHJcblx0XHR9IGVsc2UgaWYgKHRoaXMuY29sb3JMaXN0W3NlbGVjdGlvbkl0ZW0uc2hvd09yZGVyXSAhPT0gdW5kZWZpbmVkKSB7XHJcblx0XHRcdHJldHVybiB0aGlzLmNvbG9yTGlzdFtzZWxlY3Rpb25JdGVtLnNob3dPcmRlcl07XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gJyNBMkFGRkYnO1xyXG5cdH0pO1xyXG5cclxuXHRnZXRBcnJheUl0ZW1WYWx1ZShpdGVtOiBhbnkpOiBhbnkge1xyXG5cdFx0cmV0dXJuIGl0ZW1bdGhpcy5hcnJheVR5cGVEaXNwbGF5TmFtZSgpXTtcclxuXHR9XHJcblxyXG5cdGlzTW9kZWxBcnJheSA9IGNvbXB1dGVkKCgpID0+IHtcclxuXHRcdHJldHVybiBBcnJheS5pc0FycmF5KHRoaXMubW9kZWwoKSk7XHJcblx0fSk7XHJcblxyXG5cdC8vIEdldCBlbnVtIGRpc3BsYXkgZm9yIGFycmF5IGl0ZW1zXHJcblx0ZW51bUFycmF5RGlzcGxheXMgPSBjb21wdXRlZCgoKSA9PiB7XHJcblx0XHRpZiAoIXRoaXMuaXNNb2RlbEFycmF5KCkgfHwgIUFycmF5LmlzQXJyYXkodGhpcy5tb2RlbCgpKSkgcmV0dXJuIFtdO1xyXG5cclxuXHRcdGNvbnN0IGN1cnJlbnRMYW5nID0gdGhpcy5sYW5nU2lnbmFsKCk7XHJcblx0XHRjb25zdCBzZWxlY3Rpb25Hcm91cCA9XHJcblx0XHRcdHRoaXMuc2VsZWN0aW9uR3JvdXBTZXJ2aWNlLnNlbGVjdGlvbkdyb3VwcygpW2Ake3RoaXMuZ3JvdXBOYW1lKCkhfX4ke3RoaXMucGFyZW50U2VsZWN0aW9uS2V5KCkhfWBdO1xyXG5cclxuXHRcdGlmICghc2VsZWN0aW9uR3JvdXApIHtcclxuXHRcdFx0dGhpcy5zZWxlY3Rpb25Hcm91cFNlcnZpY2UuZmV0Y2hFbnVtKHRoaXMuZ3JvdXBOYW1lKCkhLCB0aGlzLnBhcmVudFNlbGVjdGlvbktleSgpISk7XHJcblx0XHRcdHJldHVybiB0aGlzLm1vZGVsKCkgYXMgc3RyaW5nW107XHJcblx0XHR9XHJcblxyXG5cdFx0cmV0dXJuIHRoaXMubW9kZWwoKS5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG5cdFx0XHRjb25zdCBrZXkgPVxyXG5cdFx0XHRcdHR5cGVvZiBpdGVtID09PSAnb2JqZWN0JyAmJiBpdGVtICE9PSBudWxsICYmICd2YWx1ZScgaW4gaXRlbSA/IGl0ZW0udmFsdWVcclxuXHRcdFx0XHQ6IHR5cGVvZiBpdGVtID09PSAnYm9vbGVhbicgPyBTdHJpbmcoaXRlbSlcclxuXHRcdFx0XHQ6IGl0ZW07XHJcblxyXG5cdFx0XHRjb25zdCBzZWxlY3Rpb25JdGVtID0gc2VsZWN0aW9uR3JvdXAuc2VsZWN0aW9uSXRlbXMuZmluZCgodCkgPT4gdC5zZWxlY3Rpb25LZXkgPT09IGtleSkgYXMge1xyXG5cdFx0XHRcdHNlbGVjdGlvbk11bHRpTGFuZ3VhZ2VEaXNwbGF5cz86IHsgW2xhbmc6IHN0cmluZ106IHN0cmluZyB9O1xyXG5cdFx0XHRcdHNlbGVjdGlvbkRpc3BsYXk/OiBzdHJpbmc7XHJcblx0XHRcdH07XHJcblxyXG5cdFx0XHRpZiAoIXNlbGVjdGlvbkl0ZW0pIHJldHVybiBrZXk7XHJcblxyXG5cdFx0XHRyZXR1cm4gc2VsZWN0aW9uSXRlbS5zZWxlY3Rpb25NdWx0aUxhbmd1YWdlRGlzcGxheXM/LltjdXJyZW50TGFuZ10gPz8gc2VsZWN0aW9uSXRlbS5zZWxlY3Rpb25EaXNwbGF5ID8/IGtleTtcclxuXHRcdH0pIGFzIHN0cmluZ1tdO1xyXG5cdH0pO1xyXG5cclxuXHQvLyBHZXQgZW51bSBiYWNrZ3JvdW5kIGNvbG9ycyBmb3IgYXJyYXkgaXRlbXNcclxuXHRlbnVtQXJyYXlCYWNrZ3JvdW5kQ29sb3JzID0gY29tcHV0ZWQoKCkgPT4ge1xyXG5cdFx0aWYgKCF0aGlzLmlzTW9kZWxBcnJheSgpIHx8ICFBcnJheS5pc0FycmF5KHRoaXMubW9kZWwoKSkpIHJldHVybiBbXTtcclxuXHJcblx0XHRjb25zdCBzZWxlY3Rpb25Hcm91cCA9XHJcblx0XHRcdHRoaXMuc2VsZWN0aW9uR3JvdXBTZXJ2aWNlLnNlbGVjdGlvbkdyb3VwcygpW2Ake3RoaXMuZ3JvdXBOYW1lKCkhfX4ke3RoaXMucGFyZW50U2VsZWN0aW9uS2V5KCkhfWBdO1xyXG5cdFx0Y29uc3Qgc2VsZWN0aW9uSXRlbXMgPSBzZWxlY3Rpb25Hcm91cD8uc2VsZWN0aW9uSXRlbXMgPz8gW107XHJcblxyXG5cdFx0cmV0dXJuIHRoaXMubW9kZWwoKS5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG5cdFx0XHRpZiAodHlwZW9mIGl0ZW0gPT09ICdib29sZWFuJykge1xyXG5cdFx0XHRcdHJldHVybiBpdGVtID8gJyMyMmM1NWUnIDogJyNlZjQ0NDQnO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRjb25zdCBzZWxlY3Rpb25JdGVtID0gc2VsZWN0aW9uSXRlbXMuZmluZCgodCkgPT4gdC5zZWxlY3Rpb25LZXkgPT09IGl0ZW0pO1xyXG5cclxuXHRcdFx0aWYgKCFzZWxlY3Rpb25JdGVtKSB7XHJcblx0XHRcdFx0cmV0dXJuICcjMTg5MEZGJztcclxuXHRcdFx0fSBlbHNlIGlmICh0aGlzLmNvbG9yTGlzdFtzZWxlY3Rpb25JdGVtLnNob3dPcmRlcl0gIT09IHVuZGVmaW5lZCkge1xyXG5cdFx0XHRcdHJldHVybiB0aGlzLmNvbG9yTGlzdFtzZWxlY3Rpb25JdGVtLnNob3dPcmRlcl07XHJcblx0XHRcdH1cclxuXHRcdFx0cmV0dXJuICcjQTJBRkZGJztcclxuXHRcdH0pO1xyXG5cdH0pO1xyXG5cclxuXHRjb3B5VG9DbGlwYm9hcmQodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xyXG5cdFx0aWYgKCF2YWx1ZSkgcmV0dXJuO1xyXG5cdFx0bmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQodmFsdWUpLnRoZW4oXHJcblx0XHRcdCgpID0+IHtcclxuXHRcdFx0XHR0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcblx0XHRcdFx0XHRzZXZlcml0eTogJ3N1Y2Nlc3MnLFxyXG5cdFx0XHRcdFx0c3VtbWFyeTogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnbWVzc2FnZXMuc3VjY2Vzc01lc3NhZ2VIZWFkZXInKSxcclxuXHRcdFx0XHRcdGRldGFpbDogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnbWVzc2FnZXMuY29weVRvQ2xpcGJvYXJkU3VjY2VzcycpLFxyXG5cdFx0XHRcdFx0a2V5OiAndG9hc3Qtcm9vdCdcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fSxcclxuXHRcdFx0KGVycikgPT4ge1xyXG5cdFx0XHRcdHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHtcclxuXHRcdFx0XHRcdHNldmVyaXR5OiAnZXJyb3InLFxyXG5cdFx0XHRcdFx0c3VtbWFyeTogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnbWVzc2FnZXMudW5zdWNjZXNzZnVsTWVzc2FnZUhlYWRlcicpLFxyXG5cdFx0XHRcdFx0ZGV0YWlsOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdtZXNzYWdlcy5jb3B5VG9DbGlwYm9hcmRFcnJvcicpLFxyXG5cdFx0XHRcdFx0a2V5OiAndG9hc3Qtcm9vdCdcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcbn1cclxuIiwiQGlmIChtb2RlbCgpID09IHVuZGVmaW5lZCB8fCBtb2RlbCgpID09IG51bGwpIHtcclxuXHQ8aVxyXG5cdFx0Y2xhc3M9XCJwaSBwaS1taW51c1wiXHJcblx0XHRzdHlsZT1cImNvbG9yOiByZWRcIlxyXG5cdFx0W3BUb29sdGlwXT1cInRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ3ZhbGlkYXRpb25zLm5vSXRlbVRvU2hvdycpXCI+PC9pPlxyXG59IEBlbHNlIHtcclxuXHRAaWYgKHR5cGUoKSA9PSAnYm9vbCcpIHtcclxuXHRcdEBpZiAoISFtb2RlbCgpKSB7XHJcblx0XHRcdDxpIGNsYXNzPVwicGkgcGktY2hlY2tcIiBzdHlsZT1cImNvbG9yOiBncmVlblwiPjwvaT5cclxuXHRcdH0gQGVsc2Uge1xyXG5cdFx0XHQ8aSBjbGFzcz1cInBpIHBpLXRpbWVzXCIgc3R5bGU9XCJjb2xvcjogY3JpbXNvblwiPjwvaT5cclxuXHRcdH1cclxuXHR9IEBlbHNlIGlmICh0eXBlKCkgPT09ICdlbnVtJykge1xyXG5cdFx0QGlmIChpc01vZGVsQXJyYXkoKSkge1xyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTFcIj5cclxuXHRcdFx0XHRAZm9yIChkaXNwbGF5IG9mIGVudW1BcnJheURpc3BsYXlzKCkuc2xpY2UoMCwgMik7IHRyYWNrIGRpc3BsYXk7IGxldCBpID0gJGluZGV4KSB7XHJcblx0XHRcdFx0XHQ8YXJpbC1iYWRnZSBbYmFja2dyb3VuZF09XCJlbnVtQXJyYXlCYWNrZ3JvdW5kQ29sb3JzKClbaV1cIiBbdmFsdWVdPVwiZGlzcGxheVwiIFt0ZXh0Q2xhbXBDaGFyYWN0ZXJzXT1cInRleHRDbGFtcENoYXJhY3RlcnMoKVwiIC8+XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdEBpZiAoZW51bUFycmF5RGlzcGxheXMoKS5sZW5ndGggPiAyKSB7XHJcblx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWVsbGlwc2lzLXYgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwiZW51bU9wLnRvZ2dsZSgkZXZlbnQpXCI+PC9pPlxyXG5cclxuXHRcdFx0XHRcdDxwLW92ZXJsYXlQYW5lbCAjZW51bU9wIGNsYXNzPVwic2hhZG93LTRcIiBhcHBlbmRUbz1cImJvZHlcIj5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gZ2FwLTIgbWF4LXctMzByZW0gbWF4LWgtMjByZW0gcHItMyBvdmVyZmxvdy15LWF1dG9cIj5cclxuXHRcdFx0XHRcdFx0XHRAZm9yIChkaXNwbGF5IG9mIGVudW1BcnJheURpc3BsYXlzKCkgfCBzbGljZTogMjsgdHJhY2sgZGlzcGxheTsgbGV0IGkgPSAkaW5kZXgpIHtcclxuXHRcdFx0XHRcdFx0XHRcdDxhcmlsLWJhZGdlIFtiYWNrZ3JvdW5kXT1cImVudW1BcnJheUJhY2tncm91bmRDb2xvcnMoKVtpICsgMl1cIiBbdmFsdWVdPVwiZGlzcGxheVwiIFt0ZXh0Q2xhbXBDaGFyYWN0ZXJzXT1cInRleHRDbGFtcENoYXJhY3RlcnMoKVwiIC8+XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdDwvcC1vdmVybGF5UGFuZWw+XHJcblx0XHRcdFx0fVxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdH0gQGVsc2Uge1xyXG5cdFx0XHQ8YXJpbC1iYWRnZSBbYmFja2dyb3VuZF09XCJlbnVtQmFkZ2VCYWNrZ3JvdW5kQ29sb3IoKVwiIFt2YWx1ZV09XCJlbnVtU2VsZWN0aW9uRGlzcGxheSgpXCIgW3RleHRDbGFtcENoYXJhY3RlcnNdPVwidGV4dENsYW1wQ2hhcmFjdGVycygpXCIgLz5cclxuXHRcdH1cclxuXHR9IEBlbHNlIGlmICh0eXBlKCkgPT09ICdhcnJheScpIHtcclxuXHRcdDxkaXYgY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMVwiPlxyXG5cdFx0XHRAZm9yIChpdGVtIG9mIG1vZGVsKCkuc2xpY2UoMCwgYXJyYXlUeXBlTWF4QmFkZ2VDb3VudCgpKTsgdHJhY2sgaXRlbSkge1xyXG5cdFx0XHRcdDxhcmlsLWJhZGdlIFtiYWNrZ3JvdW5kXT1cImdldEFycmF5SXRlbVZhbHVlKGl0ZW0pIHx8ICcnIHwgZW51bUNvbG9yUGlja2VyXCIgW3ZhbHVlXT1cImdldEFycmF5SXRlbVZhbHVlKGl0ZW0pXCIgW3RleHRDbGFtcENoYXJhY3RlcnNdPVwidGV4dENsYW1wQ2hhcmFjdGVycygpXCIgLz5cclxuXHRcdFx0fVxyXG5cdFx0XHRAaWYgKG1vZGVsKCkubGVuZ3RoID4gYXJyYXlUeXBlTWF4QmFkZ2VDb3VudCgpKSB7XHJcblx0XHRcdFx0PGkgY2xhc3M9XCJwaSBwaS1lbGxpcHNpcy12IGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9wLnRvZ2dsZSgkZXZlbnQpXCI+PC9pPlxyXG5cclxuXHRcdFx0XHQ8cC1vdmVybGF5UGFuZWwgI29wIGNsYXNzPVwic2hhZG93LTRcIiBhcHBlbmRUbz1cImJvZHlcIj5cclxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sdW1uIGdhcC0yIG1heC13LTMwcmVtIG1heC1oLTIwcmVtIHByLTMgb3ZlcmZsb3cteS1hdXRvXCI+XHJcblx0XHRcdFx0XHRcdEBmb3IgKGl0ZW0gb2YgbW9kZWwoKSB8IHNsaWNlOiBhcnJheVR5cGVNYXhCYWRnZUNvdW50KCk7IHRyYWNrIGl0ZW0pIHtcclxuXHRcdFx0XHRcdFx0XHQ8YXJpbC1iYWRnZVxyXG5cdFx0XHRcdFx0XHRcdFx0W2JhY2tncm91bmRdPVwiZ2V0QXJyYXlJdGVtVmFsdWUoaXRlbSkgfHwgJycgfCBlbnVtQ29sb3JQaWNrZXJcIlxyXG5cdFx0XHRcdFx0XHRcdFx0W3ZhbHVlXT1cImdldEFycmF5SXRlbVZhbHVlKGl0ZW0pXCIgLz5cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0PC9wLW92ZXJsYXlQYW5lbD5cclxuXHRcdFx0fVxyXG5cdFx0PC9kaXY+XHJcblx0fSBAZWxzZSB7XHJcblx0XHRAaWYgKGRpc3BsYXkoKSA9PSB1bmRlZmluZWQpIHtcclxuXHRcdFx0PGlcclxuXHRcdFx0XHRjbGFzcz1cInBpIHBpLWV4Y2xhbWF0aW9uLWNpcmNsZVwiXHJcblx0XHRcdFx0c3R5bGU9XCJjb2xvcjogcmVkXCJcclxuXHRcdFx0XHRbcFRvb2x0aXBdPVwidGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgndmFsaWRhdGlvbnMuaW52YWxpZERhdGFGb3JtYXQnKVwiPlxyXG5cdFx0XHQ8L2k+XHJcblx0XHR9IEBlbHNlIHtcclxuXHRcdFx0PHNwYW4gY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMlwiPlxyXG5cdFx0XHRcdEBpZiAoc2hvd0NvcHlJY29uKCkpIHtcclxuXHRcdFx0XHRcdDxpXHJcblx0XHRcdFx0XHRcdGNsYXNzPVwicGkgcGktY29weSBjdXJzb3ItcG9pbnRlclwiXHJcblx0XHRcdFx0XHRcdChjbGljayk9XCJjb3B5VG9DbGlwYm9hcmQoZGlzcGxheSgpPy50b1N0cmluZygpKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcclxuXHRcdFx0XHRcdFx0c3R5bGU9XCJmb250LXNpemU6IDFyZW07IGNvbG9yOiBncmVlblwiPjwvaT5cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0PHNwYW5cclxuXHRcdFx0XHRcdFtwVG9vbHRpcF09XCJcclxuXHRcdFx0XHRcdFx0dHlwZSgpID09PSAndGV4dCcgJiYgaXNUZXh0Q2xhbXAoKSAmJiBkaXNwbGF5KCk/LnRvU3RyaW5nKCkubGVuZ3RoID4gdGV4dENsYW1wQ2hhcmFjdGVycygpID9cclxuXHRcdFx0XHRcdFx0XHRkaXNwbGF5KCk/LnRvU3RyaW5nKClcclxuXHRcdFx0XHRcdFx0Olx0JydcclxuXHRcdFx0XHRcdFwiXHJcblx0XHRcdFx0XHR0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxyXG5cdFx0XHRcdFx0W2NsYXNzLnRleHQtbm8td3JhcF09XCJpc1RleHRDbGFtcCgpXCJcclxuXHRcdFx0XHRcdFtzdHlsZV09XCJpc0NsaWNrYWJsZSgpID8geyAndGV4dC1kZWNvcmF0aW9uJzogJ3VuZGVybGluZScsIGNvbG9yOiAnIzAwMDBFRScsIGN1cnNvcjogJ3BvaW50ZXInIH0gOiAnJ1wiPlxyXG5cdFx0XHRcdFx0QGlmICh0eXBlKCkgPT09ICdudW1iZXInIHx8IHR5cGUoKSA9PT0gJ2RlY2ltYWwnKSB7XHJcblx0XHRcdFx0XHRcdHt7IG1vZGVsKCkgfCBudW1iZXI6IGdldE51bWJlckZvcm1hdCgpIDogJ3RyLVRSJyB9fVxyXG5cdFx0XHRcdFx0fSBAZWxzZSBpZiAodHlwZSgpID09PSAnYmlnX2RlY2ltYWwnKSB7XHJcblx0XHRcdFx0XHRcdHt7IG1vZGVsKCkgfCByb3VuZE51bWJlcjogYmlnRGVjaW1hbFNjYWxlKCkgOiBiaWdEZWNpbWFsUm91bmRpbmdNb2RlKCkgOiAndHItVFInIH19XHJcblx0XHRcdFx0XHR9IEBlbHNlIGlmICh0eXBlKCkgPT09ICdjdXJyZW5jeScpIHtcclxuXHRcdFx0XHRcdFx0e3sgbW9kZWwoKSB8IGN1cnJlbmN5OiBmb3JtYXQoKSA/PyAnVFJZJyA6ICdzeW1ib2wnIDogJzEuMC0yJyB9fVxyXG5cdFx0XHRcdFx0fSBAZWxzZSBpZiAodHlwZSgpID09PSAndGV4dCcgJiYgaXNUZXh0Q2xhbXAoKSkge1xyXG5cdFx0XHRcdFx0XHR7e1xyXG5cdFx0XHRcdFx0XHRcdGRpc3BsYXkoKS5sZW5ndGggPiB0ZXh0Q2xhbXBDaGFyYWN0ZXJzKCkgPyBkaXNwbGF5KCkuc2xpY2UoMCwgdGV4dENsYW1wQ2hhcmFjdGVycygpKSArICcuLi4nIDogZGlzcGxheSgpXHJcblx0XHRcdFx0XHRcdH19XHJcblx0XHRcdFx0XHR9IEBlbHNlIHtcclxuXHRcdFx0XHRcdFx0e3sgZGlzcGxheSgpIH19XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0PC9zcGFuPlxyXG5cdFx0XHQ8L3NwYW4+XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiJdfQ==
@@ -196,10 +196,10 @@ export class AssetPickerComponent extends BaseInputComponent {
196
196
  };
197
197
  this.selectedDefinitionEvent.emit(selectedEvent);
198
198
  }
199
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AssetPickerComponent, deps: [{ token: i1.HttpClient }, { token: i2.TranslocoService }, { token: i3.SelectionGroupService }], target: i0.ɵɵFactoryTarget.Component }); }
200
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: AssetPickerComponent, isStandalone: true, selector: "aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]", inputs: { assetCode: { classPropertyName: "assetCode", publicName: "assetCode", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, forceSelection: { classPropertyName: "forceSelection", publicName: "forceSelection", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, showClear: { classPropertyName: "showClear", publicName: "showClear", isSignal: true, isRequired: false, transformFunction: null }, optionValue: { classPropertyName: "optionValue", publicName: "optionValue", isSignal: true, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null }, mql: { classPropertyName: "mql", publicName: "mql", isSignal: true, isRequired: false, transformFunction: null }, showOnlyAssetNumber: { classPropertyName: "showOnlyAssetNumber", publicName: "showOnlyAssetNumber", isSignal: true, isRequired: false, transformFunction: null }, enableAutoSearchOnInit: { classPropertyName: "enableAutoSearchOnInit", publicName: "enableAutoSearchOnInit", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedDefinitionEvent: "selectedDefinitionEvent" }, viewQueries: [{ propertyName: "autoCompleteRef", first: true, predicate: AutoComplete, descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i4.ValueAccessorDirective }], ngImport: i0, template: "<p-autoComplete\r\n\toptionLabel=\"text\"\r\n\t[optionValue]=\"optionValue()!\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[multiple]=\"multiple()\"\r\n\t[group]=\"true\"\r\n\t[forceSelection]=\"forceSelection()\"\r\n\t[delay]=\"700\"\r\n\t[minLength]=\"3\"\r\n\t[suggestions]=\"filteredSelectionItems\"\r\n\t(completeMethod)=\"search($event)\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t[autoHighlight]=\"true\"\r\n\t[type]=\"type()!\"\r\n\t(ngModelChange)=\"onNgModelChange($event)\"\r\n\t[showClear]=\"showClear()\"\r\n\t[emptyMessage]=\"translocoService.translate('messages.noDataToDisplay')\"\r\n\t(onSelect)=\"triggerSelectedEvents($event)\"\r\n\t[appendTo]=\"appendTo()\">\r\n\t<ng-template let-group pTemplate=\"group\">\r\n\t\t<span class=\"font-bold\">{{ group.text }}</span>\r\n\t</ng-template>\r\n\t@if (showOnlyAssetNumber()) {\r\n\t\t<ng-template let-value pTemplate=\"selectedItem\">\r\n\t\t\t<span>{{ value?.assetNumber || value?.text }}</span>\r\n\t\t</ng-template>\r\n\t}\r\n</p-autoComplete>\r\n", styles: ["::ng-deep .p-autocomplete-multiple-container{flex-wrap:wrap;max-height:50px;overflow-y:auto;align-items:center}::ng-deep .p-autocomplete-token{margin:0;flex-shrink:0}::ng-deep .p-autocomplete-input-token{flex:1;min-width:150px}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: AutoCompleteModule }, { kind: "component", type: i6.AutoComplete, selector: "p-autoComplete", inputs: ["minLength", "delay", "style", "panelStyle", "styleClass", "panelStyleClass", "inputStyle", "inputId", "inputStyleClass", "placeholder", "readonly", "disabled", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "maxlength", "name", "required", "size", "appendTo", "autoHighlight", "forceSelection", "type", "autoZIndex", "baseZIndex", "ariaLabel", "dropdownAriaLabel", "ariaLabelledBy", "dropdownIcon", "unique", "group", "completeOnFocus", "showClear", "field", "dropdown", "showEmptyMessage", "dropdownMode", "multiple", "tabindex", "dataKey", "emptyMessage", "showTransitionOptions", "hideTransitionOptions", "autofocus", "autocomplete", "optionGroupChildren", "optionGroupLabel", "overlayOptions", "suggestions", "itemSize", "optionLabel", "optionValue", "id", "searchMessage", "emptySelectionMessage", "selectionMessage", "autoOptionFocus", "selectOnFocus", "searchLocale", "optionDisabled", "focusOnHover", "variant"], outputs: ["completeMethod", "onSelect", "onUnselect", "onFocus", "onBlur", "onDropdownClick", "onClear", "onKeyUp", "onShow", "onHide", "onLazyLoad"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }] }); }
199
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AssetPickerComponent, deps: [{ token: i1.HttpClient }, { token: i2.TranslocoService }, { token: i3.SelectionGroupService }], target: i0.ɵɵFactoryTarget.Component }); }
200
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: AssetPickerComponent, isStandalone: true, selector: "aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]", inputs: { assetCode: { classPropertyName: "assetCode", publicName: "assetCode", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, forceSelection: { classPropertyName: "forceSelection", publicName: "forceSelection", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, showClear: { classPropertyName: "showClear", publicName: "showClear", isSignal: true, isRequired: false, transformFunction: null }, optionValue: { classPropertyName: "optionValue", publicName: "optionValue", isSignal: true, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null }, mql: { classPropertyName: "mql", publicName: "mql", isSignal: true, isRequired: false, transformFunction: null }, showOnlyAssetNumber: { classPropertyName: "showOnlyAssetNumber", publicName: "showOnlyAssetNumber", isSignal: true, isRequired: false, transformFunction: null }, enableAutoSearchOnInit: { classPropertyName: "enableAutoSearchOnInit", publicName: "enableAutoSearchOnInit", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedDefinitionEvent: "selectedDefinitionEvent" }, viewQueries: [{ propertyName: "autoCompleteRef", first: true, predicate: AutoComplete, descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i4.ValueAccessorDirective }], ngImport: i0, template: "<p-autoComplete\r\n\toptionLabel=\"text\"\r\n\t[optionValue]=\"optionValue()!\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[multiple]=\"multiple()\"\r\n\t[group]=\"true\"\r\n\t[forceSelection]=\"forceSelection()\"\r\n\t[delay]=\"700\"\r\n\t[minLength]=\"3\"\r\n\t[suggestions]=\"filteredSelectionItems\"\r\n\t(completeMethod)=\"search($event)\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t[autoHighlight]=\"true\"\r\n\t[type]=\"type()!\"\r\n\t(ngModelChange)=\"onNgModelChange($event)\"\r\n\t[showClear]=\"showClear()\"\r\n\t[emptyMessage]=\"translocoService.translate('messages.noDataToDisplay')\"\r\n\t(onSelect)=\"triggerSelectedEvents($event)\"\r\n\t[appendTo]=\"appendTo()\">\r\n\t<ng-template let-group pTemplate=\"group\">\r\n\t\t<span class=\"font-bold\">{{ group.text }}</span>\r\n\t</ng-template>\r\n\t@if (showOnlyAssetNumber()) {\r\n\t\t<ng-template let-value pTemplate=\"selectedItem\">\r\n\t\t\t<span>{{ value?.assetNumber || value?.text }}</span>\r\n\t\t</ng-template>\r\n\t}\r\n</p-autoComplete>\r\n", styles: ["::ng-deep .p-autocomplete-multiple-container{flex-wrap:wrap;max-height:50px;overflow-y:auto;align-items:center}::ng-deep .p-autocomplete-token{margin:0;flex-shrink:0}::ng-deep .p-autocomplete-input-token{flex:1;min-width:150px}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: AutoCompleteModule }, { kind: "component", type: i6.AutoComplete, selector: "p-autoComplete", inputs: ["minLength", "delay", "style", "panelStyle", "styleClass", "panelStyleClass", "inputStyle", "inputId", "inputStyleClass", "placeholder", "readonly", "disabled", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "maxlength", "name", "required", "size", "appendTo", "autoHighlight", "forceSelection", "type", "autoZIndex", "baseZIndex", "ariaLabel", "dropdownAriaLabel", "ariaLabelledBy", "dropdownIcon", "unique", "group", "completeOnFocus", "showClear", "field", "dropdown", "showEmptyMessage", "dropdownMode", "multiple", "tabindex", "dataKey", "emptyMessage", "showTransitionOptions", "hideTransitionOptions", "autofocus", "autocomplete", "optionGroupChildren", "optionGroupLabel", "overlayOptions", "suggestions", "itemSize", "optionLabel", "optionValue", "id", "searchMessage", "emptySelectionMessage", "selectionMessage", "autoOptionFocus", "selectOnFocus", "searchLocale", "optionDisabled", "focusOnHover", "variant"], outputs: ["completeMethod", "onSelect", "onUnselect", "onFocus", "onBlur", "onDropdownClick", "onClear", "onKeyUp", "onShow", "onHide", "onLazyLoad"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }] }); }
201
201
  }
202
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AssetPickerComponent, decorators: [{
202
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AssetPickerComponent, decorators: [{
203
203
  type: Component,
204
204
  args: [{ standalone: true, selector: 'aril-asset-picker[ngModel], aril-asset-picker[formControl], aril-asset-picker[formControlName]', imports: [ReactiveFormsModule, AutoCompleteModule], hostDirectives: [ValueAccessorDirective], template: "<p-autoComplete\r\n\toptionLabel=\"text\"\r\n\t[optionValue]=\"optionValue()!\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[multiple]=\"multiple()\"\r\n\t[group]=\"true\"\r\n\t[forceSelection]=\"forceSelection()\"\r\n\t[delay]=\"700\"\r\n\t[minLength]=\"3\"\r\n\t[suggestions]=\"filteredSelectionItems\"\r\n\t(completeMethod)=\"search($event)\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t[autoHighlight]=\"true\"\r\n\t[type]=\"type()!\"\r\n\t(ngModelChange)=\"onNgModelChange($event)\"\r\n\t[showClear]=\"showClear()\"\r\n\t[emptyMessage]=\"translocoService.translate('messages.noDataToDisplay')\"\r\n\t(onSelect)=\"triggerSelectedEvents($event)\"\r\n\t[appendTo]=\"appendTo()\">\r\n\t<ng-template let-group pTemplate=\"group\">\r\n\t\t<span class=\"font-bold\">{{ group.text }}</span>\r\n\t</ng-template>\r\n\t@if (showOnlyAssetNumber()) {\r\n\t\t<ng-template let-value pTemplate=\"selectedItem\">\r\n\t\t\t<span>{{ value?.assetNumber || value?.text }}</span>\r\n\t\t</ng-template>\r\n\t}\r\n</p-autoComplete>\r\n", styles: ["::ng-deep .p-autocomplete-multiple-container{flex-wrap:wrap;max-height:50px;overflow-y:auto;align-items:center}::ng-deep .p-autocomplete-token{margin:0;flex-shrink:0}::ng-deep .p-autocomplete-input-token{flex:1;min-width:150px}\n"] }]
205
205
  }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.TranslocoService }, { type: i3.SelectionGroupService }], propDecorators: { autoCompleteRef: [{
@@ -208,4 +208,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
208
208
  }], selectedDefinitionEvent: [{
209
209
  type: Output
210
210
  }] } });
211
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdWktYnVzaW5lc3MvYXNzZXRQaWNrZXIvc3JjL2Fzc2V0LXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpLWJ1c2luZXNzL2Fzc2V0UGlja2VyL3NyYy9hc3NldC1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUVOLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUVaLE1BQU0sRUFDTixTQUFTLEVBQ1QsTUFBTSxFQUNOLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJELE9BQU8sRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzVDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7Ozs7Ozs7O0FBdUN6RSxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsa0JBQWtCO0lBdUIzRCxZQUNrQixJQUFnQixFQUMxQixnQkFBa0MsRUFDeEIscUJBQTRDO1FBRTdELEtBQUssRUFBRSxDQUFDO1FBSlMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUMxQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ3hCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUF4QjlELGNBQVMsR0FBRyxLQUFLLENBQTJCLElBQUksQ0FBQyxDQUFDO1FBQ2xELFNBQUksR0FBRyxLQUFLLENBQW9CLElBQUksQ0FBQyxDQUFDO1FBRXRDLGdCQUFXLEdBQUcsS0FBSyxDQUFTLFVBQVUsQ0FBQyxDQUFDO1FBQ3hDLG1CQUFjLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ3ZDLGFBQVEsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDakMsY0FBUyxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNsQyxnQkFBVyxHQUFHLEtBQUssQ0FBOEIsSUFBSSxDQUFDLENBQUM7UUFDdkQsYUFBUSxHQUFHLEtBQUssQ0FBOEIsTUFBTSxDQUFDLENBQUM7UUFDdEQsUUFBRyxHQUFHLEtBQUssRUFBVSxDQUFDO1FBQ3RCLHdCQUFtQixHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUM1QywyQkFBc0IsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDL0MsaUJBQVksR0FBRyxNQUFNLENBQVUsS0FBSyxDQUFDLENBQUM7UUFJdEMsd0JBQW1CLEdBQUcsSUFBSSxPQUFPLEVBQXlCLENBQUM7UUFDM0QsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN4QixvQkFBZSxHQUFrQixJQUFJLENBQUM7UUFDcEMsNEJBQXVCLEdBQWlDLElBQUksWUFBWSxFQUFrQixDQUFDO1FBU3BHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDWCxJQUFJLENBQUMscUJBQXFCLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDN0MsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztnQkFDL0IsSUFBSSxDQUFDLDZCQUE2QixFQUFFLENBQUM7WUFDdEMsQ0FBQztRQUNGLENBQUMsQ0FBQyxDQUFDO0lBRUosQ0FBQztJQUVELFFBQVE7UUFDUCxJQUFJLENBQUMsbUJBQW1CO2FBQ3RCLElBQUksQ0FDSixTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBTSxXQUFXLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLDJCQUEyQixFQUFFLE9BQU8sQ0FBQyxDQUN4RyxFQUNELGtCQUFrQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FDbkM7YUFDQSxTQUFTLENBQUMsQ0FBQyxjQUFjLEVBQUUsRUFBRTtZQUM3QixJQUFJLENBQUMsb0JBQW9CLEdBQUcsY0FBYyxDQUFDO1lBQzNDLElBQUksQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUFDO1FBRUosc0ZBQXNGO1FBQ3RGLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQztRQUNwRCxJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxJQUFJLENBQUMsWUFBWSxJQUFJLE9BQU8sWUFBWSxLQUFLLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDeEYsTUFBTSxXQUFXLEdBQUcsT0FBTyxZQUFZLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUM7WUFDekYsSUFBSSxXQUFXLEVBQUUsQ0FBQztnQkFDakIsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxlQUFlLEdBQUcsV0FBVyxDQUFDO2dCQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzNDLENBQUM7UUFDSCxDQUFDO1FBRUQsa0ZBQWtGO1FBQ2xGLElBQUksQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLFlBQVk7YUFDbkMsSUFBSSxDQUNKLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUNkLEtBQUs7WUFDTCxPQUFPLEtBQUssS0FBSyxRQUFRO1lBQ3pCLE1BQU0sSUFBSSxLQUFLO1lBQ2YsQ0FBQyxDQUFDLFlBQVksSUFBSSxLQUFLLENBQUMsQ0FDeEIsRUFDRCxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQ25DO2FBQ0EsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQztnQkFDMUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQztnQkFDbEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDMUMsQ0FBQztRQUNGLENBQUMsQ0FBQyxDQUFDO0lBRUwsQ0FBQztJQUVPLDZCQUE2QjtRQUNwQyxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQjtZQUFFLE9BQU87UUFFdkMsTUFBTSwyQkFBMkIsR0FBMEIsRUFBRSxDQUFDO1FBRTlELE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBVyxFQUFFLEVBQUU7WUFDOUQsTUFBTSxTQUFTLEdBQXdCO2dCQUN0QyxJQUFJLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsbUJBQW1CO2dCQUMvRSxHQUFHLEVBQUUsR0FBRztnQkFDUixLQUFLLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQy9DLENBQUMsSUFBb0IsRUFBRSxFQUFFLENBQ3hCLENBQUM7b0JBQ0EsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFO29CQUNaLElBQUksRUFBRSxJQUFJLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztvQkFDcEQsV0FBVyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO29CQUN0RCxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7b0JBQzNCLG1CQUFtQixFQUFFLElBQUksQ0FBQyxtQkFBbUI7aUJBQzdDLENBQW1CLENBQ3JCO2FBQ0QsQ0FBQztZQUNGLDJCQUEyQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUU1QyxrR0FBa0c7WUFDbEcsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7Z0JBQzNFLE1BQU0sV0FBVyxHQUNoQixTQUFTLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDO29CQUMzQixDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7b0JBQ3BCLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsS0FBSyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7Z0JBQzlFLElBQUksV0FBVyxFQUFFLENBQUM7b0JBQ2pCLElBQUksQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztvQkFDL0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQzdCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO2dCQUM3QixDQUFDO1lBQ0YsQ0FBQztRQUNGLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLHNCQUFzQixHQUFHLDJCQUEyQixDQUFDO0lBQzNELENBQUM7SUFFRCxlQUFlO1FBQ2QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUFXO1FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztZQUN6QixPQUFPLE1BQU0sQ0FBQztRQUNmLENBQUM7UUFFRCxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ2hDLE9BQU8sV0FBVyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUNqRSxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDZixDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQWE7UUFDNUIsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxhQUFhLENBQUMsS0FBYTtRQUMxQixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM5QixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pDLENBQUM7YUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUNuQyxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsMEJBQTBCLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDdEQsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFVLEVBQUUsT0FBTyxHQUFHLEtBQUs7UUFDakMsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLElBQUksT0FBTyxLQUFLLENBQUMsS0FBSyxLQUFLLFFBQVE7WUFBRSxPQUFPO1FBRTdELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFO1lBQUUsT0FBTztRQUUzQixNQUFNLE9BQU8sR0FBMEI7WUFDdEMsVUFBVSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDekIsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBUztZQUN0RyxLQUFLLEVBQUU7Z0JBQ04sUUFBUSxFQUFFLENBQUM7Z0JBQ1gsVUFBVSxFQUFFLENBQUM7YUFDYjtTQUNELENBQUM7UUFFRixJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFBRSxPQUFPLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUVyRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxVQUE4QjtRQUN0RCxNQUFNLGtCQUFrQixHQUFHLENBQUMsU0FBUyxFQUFFLHFCQUFxQixDQUFDLENBQUM7UUFDOUQsT0FBTyxVQUFVO1lBQ2hCLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1lBQy9FLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDZCw0REFBNEQ7WUFDNUQsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLGFBQWEsS0FBSyxRQUFRLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsQ0FBQztnQkFDaEYsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQWUsQ0FBQyxDQUFDO1lBQ3BGLENBQUM7WUFDRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBQzNELE9BQU8sT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUUsQ0FBQyxDQUFDO2FBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2YsQ0FBQztJQUNPLG1CQUFtQixDQUFDLFVBQThCO1FBQ3pELE1BQU0sZUFBZSxHQUFHLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsYUFBYSxLQUFLLGFBQWEsQ0FBQyxDQUFDO1FBQ3BHLElBQUksQ0FBQyxlQUFlO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFDaEMsT0FBTyxNQUFNLENBQUMsZUFBZSxDQUFDLFNBQVMsSUFBSSxlQUFlLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFDTyxtQkFBbUIsQ0FBQyxTQUFpQixFQUFFLEtBQWE7UUFDM0QsTUFBTSxHQUFHLEdBQUcsR0FBRyxTQUFTLE1BQU0sQ0FBQztRQUMvQixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsZUFBZSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFekUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3ZELE9BQU8sS0FBSyxDQUFDO1FBQ2QsQ0FBQztRQUVELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMxRCxNQUFNLGFBQWEsR0FBRyxjQUFjLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFlBQVksS0FBSyxLQUFLLENBR3hGLENBQUM7UUFFRixJQUFJLENBQUMsYUFBYTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBRWpDLE9BQU8sYUFBYSxDQUFDLDhCQUE4QixFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksYUFBYSxDQUFDLGdCQUFnQixJQUFJLEtBQUssQ0FBQztJQUMvRyxDQUFDO0lBRUQscUJBQXFCLENBQUMsS0FBVTtRQUMvQixNQUFNLGFBQWEsR0FBcUIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFXLEVBQUUsRUFBRTtZQUNsRyxPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBb0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxLQUFLLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzVHLENBQUMsQ0FBcUIsQ0FBQztRQUV2QixNQUFNLFlBQVksR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFdEMsTUFBTSxhQUFhLEdBQUc7WUFDckIsR0FBRyxZQUFZO1lBQ2YsR0FBRyxFQUFFLFlBQVksRUFBRSxFQUFFO1lBQ3JCLElBQUksRUFBRSxZQUFZLEVBQUUsbUJBQW1CO1lBQ3ZDLFVBQVUsRUFBRSxZQUFZLEVBQUUsVUFBVTtZQUNwQyxtQkFBbUIsRUFBRSxZQUFZLEVBQUUsbUJBQW1CO1NBQ3RELENBQUM7UUFFRixJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7OEdBcE9XLG9CQUFvQjtrR0FBcEIsb0JBQW9CLDZ2REFDckIsWUFBWSxtSUNsRXhCLDAvQkE0QkEsOFJEa0NXLG1CQUFtQix5VEFBRSxrQkFBa0I7OzJGQUdyQyxvQkFBb0I7a0JBM0JoQyxTQUFTO2lDQUNHLElBQUksWUFDTixnR0FBZ0csV0FzQmpHLENBQUMsbUJBQW1CLEVBQUUsa0JBQWtCLENBQUMsa0JBQ2xDLENBQUMsc0JBQXNCLENBQUM7a0pBR2YsZUFBZTtzQkFBdkMsU0FBUzt1QkFBQyxZQUFZO2dCQW9CYix1QkFBdUI7c0JBQWhDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQge1xyXG5cdEFmdGVyVmlld0luaXQsXHJcblx0Q29tcG9uZW50LFxyXG5cdERlc3Ryb3lSZWYsXHJcblx0RXZlbnRFbWl0dGVyLFxyXG5cdE9uSW5pdCxcclxuXHRPdXRwdXQsXHJcblx0Vmlld0NoaWxkLFxyXG5cdGVmZmVjdCxcclxuXHRpbmplY3QsXHJcblx0aW5wdXQsXHJcblx0c2lnbmFsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IEF1dG9Db21wbGV0ZSwgQXV0b0NvbXBsZXRlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9hdXRvY29tcGxldGUnO1xyXG5pbXBvcnQgeyBPYmplY3RVdGlscyB9IGZyb20gJ3ByaW1lbmcvdXRpbHMnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcclxuaW1wb3J0IHsgU3ViamVjdCwgZmlsdGVyLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEFQSV9DT05GSUdTIH0gZnJvbSAnYXJpbC9ib290L2NvbmZpZy9hcGknO1xyXG5pbXBvcnQgeyBBcHBzIH0gZnJvbSAnYXJpbC9ib290L2NvbmZpZy9hcHBzJztcclxuaW1wb3J0IHsgU2VsZWN0aW9uR3JvdXBTZXJ2aWNlIH0gZnJvbSAnYXJpbC90aGVtZS9sYXlvdXQnO1xyXG5pbXBvcnQgeyBCYXNlSW5wdXRDb21wb25lbnQsIFZhbHVlQWNjZXNzb3JEaXJlY3RpdmUgfSBmcm9tICdhcmlsL3VpL2xpYic7XHJcblxyXG5pbXBvcnQge1xyXG5cdEFzc2V0QWdncmVnYXRlLFxyXG5cdEF0dHJpYnV0ZUVsZW1lbnQsXHJcblx0Q2FjaGVTZWFyY2hSZXF1ZXN0RFRPLFxyXG5cdERlZmF1bHRTZWFyY2hBZ2dyZWdhdGVBc3NldEFnZ3JlZ2F0ZSxcclxuXHRTdWdnZXN0aW9uc0RUTyxcclxuXHRTdWdnZXN0aW9uc0dyb3VwRFRPXHJcbn0gZnJvbSAnLi9pbnRlcmZhY2UnO1xyXG5cclxudHlwZSBWYWx1ZVR5cGVzID0gJ3RleHQnIHwgJ251bWJlcic7XHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcmlsLWFzc2V0LXBpY2tlcltuZ01vZGVsXSwgYXJpbC1hc3NldC1waWNrZXJbZm9ybUNvbnRyb2xdLCBhcmlsLWFzc2V0LXBpY2tlcltmb3JtQ29udHJvbE5hbWVdJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vYXNzZXQtcGlja2VyLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZXM6IFtcclxuXHRcdGBcclxuXHRcdFx0OjpuZy1kZWVwIC5wLWF1dG9jb21wbGV0ZS1tdWx0aXBsZS1jb250YWluZXIge1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHRtYXgtaGVpZ2h0OiA1MHB4O1xyXG5cdFx0XHRcdG92ZXJmbG93LXk6IGF1dG87XHJcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0OjpuZy1kZWVwIC5wLWF1dG9jb21wbGV0ZS10b2tlbiB7XHJcblx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcdGZsZXgtc2hyaW5rOiAwO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQ6Om5nLWRlZXAgLnAtYXV0b2NvbXBsZXRlLWlucHV0LXRva2VuIHtcclxuXHRcdFx0XHRmbGV4OiAxO1xyXG5cdFx0XHRcdG1pbi13aWR0aDogMTUwcHg7XHJcblx0XHRcdH1cclxuXHRcdGBcclxuXHRdLFxyXG5cdGltcG9ydHM6IFtSZWFjdGl2ZUZvcm1zTW9kdWxlLCBBdXRvQ29tcGxldGVNb2R1bGVdLFxyXG5cdGhvc3REaXJlY3RpdmVzOiBbVmFsdWVBY2Nlc3NvckRpcmVjdGl2ZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEFzc2V0UGlja2VyQ29tcG9uZW50IGV4dGVuZHMgQmFzZUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25Jbml0IHtcclxuXHRAVmlld0NoaWxkKEF1dG9Db21wbGV0ZSkgYXV0b0NvbXBsZXRlUmVmITogQXV0b0NvbXBsZXRlO1xyXG5cdGFzc2V0Q29kZSA9IGlucHV0PHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbD4obnVsbCk7XHJcblx0dHlwZSA9IGlucHV0PFZhbHVlVHlwZXMgfCBudWxsPihudWxsKTtcclxuXHJcblx0cGxhY2Vob2xkZXIgPSBpbnB1dDxzdHJpbmc+KCdBcmFtYS4uLicpO1xyXG5cdGZvcmNlU2VsZWN0aW9uID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cdG11bHRpcGxlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cdHNob3dDbGVhciA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHRvcHRpb25WYWx1ZSA9IGlucHV0PGtleW9mIFN1Z2dlc3Rpb25zRFRPIHwgbnVsbD4obnVsbCk7XHJcblx0YXBwZW5kVG8gPSBpbnB1dDxzdHJpbmcgfCBIVE1MRWxlbWVudCB8IG51bGw+KCdib2R5Jyk7XHJcblx0bXFsID0gaW5wdXQ8c3RyaW5nPigpO1xyXG5cdHNob3dPbmx5QXNzZXROdW1iZXIgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XHJcblx0ZW5hYmxlQXV0b1NlYXJjaE9uSW5pdCA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHRpc1VwZGF0ZU1vZGUgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuXHRmaWx0ZXJlZFNlbGVjdGlvbkl0ZW1zITogU3VnZ2VzdGlvbnNHcm91cERUT1tdO1xyXG5cdHNlbGVjdGlvbkRlZmluaXRpb25zITogRGVmYXVsdFNlYXJjaEFnZ3JlZ2F0ZUFzc2V0QWdncmVnYXRlO1xyXG5cdGNhY2hlU2VhcmNoUmVxdWVzdCQgPSBuZXcgU3ViamVjdDxDYWNoZVNlYXJjaFJlcXVlc3REVE8+KCk7XHJcblx0ZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcclxuXHRwcml2YXRlIHVwZGF0ZU1vZGVRdWVyeTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcblx0QE91dHB1dCgpIHNlbGVjdGVkRGVmaW5pdGlvbkV2ZW50OiBFdmVudEVtaXR0ZXI8QXNzZXRBZ2dyZWdhdGU+ID0gbmV3IEV2ZW50RW1pdHRlcjxBc3NldEFnZ3JlZ2F0ZT4oKTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQsXHJcblx0XHRwdWJsaWMgdHJhbnNsb2NvU2VydmljZTogVHJhbnNsb2NvU2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgc2VsZWN0aW9uR3JvdXBTZXJ2aWNlOiBTZWxlY3Rpb25Hcm91cFNlcnZpY2VcclxuXHQpIHtcclxuXHRcdHN1cGVyKCk7XHJcblxyXG5cdFx0ZWZmZWN0KCgpID0+IHtcclxuXHRcdFx0dGhpcy5zZWxlY3Rpb25Hcm91cFNlcnZpY2Uuc2VsZWN0aW9uR3JvdXBzKCk7XHJcblx0XHRcdGlmICh0aGlzLnNlbGVjdGlvbkRlZmluaXRpb25zKSB7XHJcblx0XHRcdFx0dGhpcy5yZWZyZXNoRmlsdGVyZWRTZWxlY3Rpb25JdGVtcygpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHJcblx0fVxyXG5cclxuXHRuZ09uSW5pdCgpIHtcclxuXHRcdHRoaXMuY2FjaGVTZWFyY2hSZXF1ZXN0JFxyXG5cdFx0XHQucGlwZShcclxuXHRcdFx0XHRzd2l0Y2hNYXAoKHBheWxvYWQpID0+XHJcblx0XHRcdFx0XHR0aGlzLmh0dHAucG9zdDxhbnk+KEFQSV9DT05GSUdTLmdldEV4dGVybmFsQXBwRW5kcG9pbnQoQXBwcy5NTkcpICsgJy9tYXN0ZXItZGF0YS9jYWNoZS1zZWFyY2gnLCBwYXlsb2FkKVxyXG5cdFx0XHRcdCksXHJcblx0XHRcdFx0dGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZilcclxuXHRcdFx0KVxyXG5cdFx0XHQuc3Vic2NyaWJlKChzZWxlY3Rpb25Hcm91cCkgPT4ge1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0aW9uRGVmaW5pdGlvbnMgPSBzZWxlY3Rpb25Hcm91cDtcclxuXHRcdFx0XHR0aGlzLnJlZnJlc2hGaWx0ZXJlZFNlbGVjdGlvbkl0ZW1zKCk7XHJcblx0XHRcdH0pO1xyXG5cclxuXHRcdC8vIElmIHRoZSBmb3JtIGNvbnRyb2wncyB2YWx1ZSBpcyBhIHN0cmluZywgcGVyZm9ybSBhIGNhY2hlIHNlYXJjaCB0byByZXRyaWV2ZSB0aGUgSUQuXHJcblx0XHRjb25zdCBjdXJyZW50VmFsdWUgPSB0aGlzLm5nQ29udHJvbD8uY29udHJvbD8udmFsdWU7XHJcblx0XHRpZiAodGhpcy5lbmFibGVBdXRvU2VhcmNoT25Jbml0KCkgfHwgKGN1cnJlbnRWYWx1ZSAmJiB0eXBlb2YgY3VycmVudFZhbHVlID09PSAnc3RyaW5nJykpIHtcclxuXHRcdFx0XHRjb25zdCBzZWFyY2hRdWVyeSA9IHR5cGVvZiBjdXJyZW50VmFsdWUgPT09ICdzdHJpbmcnID8gY3VycmVudFZhbHVlIDogY3VycmVudFZhbHVlPy50ZXh0O1xyXG5cdFx0XHRcdGlmIChzZWFyY2hRdWVyeSkge1xyXG5cdFx0XHRcdFx0dGhpcy5pc1VwZGF0ZU1vZGUuc2V0KHRydWUpO1xyXG5cdFx0XHRcdFx0dGhpcy51cGRhdGVNb2RlUXVlcnkgPSBzZWFyY2hRdWVyeTtcclxuXHRcdFx0XHRcdHRoaXMuc2VhcmNoKHsgcXVlcnk6IHNlYXJjaFF1ZXJ5IH0sIHRydWUpO1xyXG5cdFx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQvLyBSZWFjdCB0byBwcm9ncmFtbWF0aWMgcGF0Y2hlcyAoY3JlYXRlRm9ybURhdGFPYmplY3QgLyBwYXRjaEFzc2V0UmVzcG9uc2VUb0Zvcm0pXHJcblx0XHR0aGlzLm5nQ29udHJvbD8uY29udHJvbD8udmFsdWVDaGFuZ2VzXHJcblx0XHRcdC5waXBlKFxyXG5cdFx0XHRcdGZpbHRlcih2YWx1ZSA9PlxyXG5cdFx0XHRcdFx0dmFsdWUgJiZcclxuXHRcdFx0XHRcdHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiZcclxuXHRcdFx0XHRcdCd0ZXh0JyBpbiB2YWx1ZSAmJlxyXG5cdFx0XHRcdFx0ISgnYXR0cmlidXRlcycgaW4gdmFsdWUpXHJcblx0XHRcdFx0KSxcclxuXHRcdFx0XHR0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKVxyXG5cdFx0XHQpXHJcblx0XHRcdC5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG5cdFx0XHRcdGlmICghdGhpcy5pc1VwZGF0ZU1vZGUoKSkge1xyXG5cdFx0XHRcdFx0dGhpcy5pc1VwZGF0ZU1vZGUuc2V0KHRydWUpO1xyXG5cdFx0XHRcdFx0dGhpcy51cGRhdGVNb2RlUXVlcnkgPSB2YWx1ZS50ZXh0O1xyXG5cdFx0XHRcdFx0dGhpcy5zZWFyY2goeyBxdWVyeTogdmFsdWUudGV4dCB9LCB0cnVlKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0pO1xyXG5cclxuXHR9XHJcblxyXG5cdHByaXZhdGUgcmVmcmVzaEZpbHRlcmVkU2VsZWN0aW9uSXRlbXMoKTogdm9pZCB7XHJcblx0XHRpZiAoIXRoaXMuc2VsZWN0aW9uRGVmaW5pdGlvbnMpIHJldHVybjtcclxuXHJcblx0XHRjb25zdCBuZXdGaWx0ZXJlZEdyb3VwU3VnZ2VzdGlvbnM6IFN1Z2dlc3Rpb25zR3JvdXBEVE9bXSA9IFtdO1xyXG5cclxuXHRcdE9iamVjdC5rZXlzKHRoaXMuc2VsZWN0aW9uRGVmaW5pdGlvbnMpLmZvckVhY2goKGtleTogc3RyaW5nKSA9PiB7XHJcblx0XHRcdGNvbnN0IGdyb3VwRGF0YTogU3VnZ2VzdGlvbnNHcm91cERUTyA9IHtcclxuXHRcdFx0XHR0ZXh0OiB0aGlzLnNlbGVjdGlvbkRlZmluaXRpb25zW2tleV0/LnJlc3VsdFswXT8uYXNzZXRzWzBdPy5hc3NldERlZmluaXRpb25OYW1lLFxyXG5cdFx0XHRcdGtleToga2V5LFxyXG5cdFx0XHRcdGl0ZW1zOiB0aGlzLnNlbGVjdGlvbkRlZmluaXRpb25zW2tleV0ucmVzdWx0Lm1hcChcclxuXHRcdFx0XHRcdChpdGVtOiBBc3NldEFnZ3JlZ2F0ZSkgPT5cclxuXHRcdFx0XHRcdFx0KHtcclxuXHRcdFx0XHRcdFx0XHRrZXk6IGl0ZW0uaWQsXHJcblx0XHRcdFx0XHRcdFx0dGV4dDogdGhpcy5nZXRBdHRpcmlidXRlc1ZhbHVlRGVzY3IoaXRlbS5hdHRyaWJ1dGVzKSxcclxuXHRcdFx0XHRcdFx0XHRhc3NldE51bWJlcjogdGhpcy5nZXRBc3NldE51bWJlclZhbHVlKGl0ZW0uYXR0cmlidXRlcyksXHJcblx0XHRcdFx0XHRcdFx0YXR0cmlidXRlczogaXRlbS5hdHRyaWJ1dGVzLFxyXG5cdFx0XHRcdFx0XHRcdGFzc2V0RGVmaW5pdGlvbkNvZGU6IGl0ZW0uYXNzZXREZWZpbml0aW9uQ29kZVxyXG5cdFx0XHRcdFx0XHR9KSBhcyBTdWdnZXN0aW9uc0RUT1xyXG5cdFx0XHRcdClcclxuXHRcdFx0fTtcclxuXHRcdFx0bmV3RmlsdGVyZWRHcm91cFN1Z2dlc3Rpb25zLnB1c2goZ3JvdXBEYXRhKTtcclxuXHJcblx0XHRcdC8vIElmIHRoZSBzdHJpbmcgdmFsdWUgaXMgcGF0Y2hlZCBpbiB1cGRhdGUgbW9kZSBhbmQgdGhlcmUgaXMgZ3JvdXAgZGF0YSwgc2VsZWN0IHRoZSBtYXRjaGluZyBpdGVtXHJcblx0XHRcdGlmICh0aGlzLmlzVXBkYXRlTW9kZSgpICYmIGdyb3VwRGF0YS5pdGVtcy5sZW5ndGggPiAwICYmICF0aGlzLm11bHRpcGxlKCkpIHtcclxuXHRcdFx0XHRjb25zdCBtYXRjaGVkSXRlbSA9XHJcblx0XHRcdFx0XHRncm91cERhdGEuaXRlbXMubGVuZ3RoID09PSAxXHJcblx0XHRcdFx0XHRcdD8gZ3JvdXBEYXRhLml0ZW1zWzBdXHJcblx0XHRcdFx0XHRcdDogZ3JvdXBEYXRhLml0ZW1zLmZpbmQoKGl0ZW0pID0+IGl0ZW0uYXNzZXROdW1iZXIgPT09IHRoaXMudXBkYXRlTW9kZVF1ZXJ5KTtcclxuXHRcdFx0XHRpZiAobWF0Y2hlZEl0ZW0pIHtcclxuXHRcdFx0XHRcdHRoaXMubmdDb250cm9sPy5jb250cm9sPy5zZXRWYWx1ZShtYXRjaGVkSXRlbSk7XHJcblx0XHRcdFx0XHR0aGlzLmlzVXBkYXRlTW9kZS5zZXQoZmFsc2UpO1xyXG5cdFx0XHRcdFx0dGhpcy51cGRhdGVNb2RlUXVlcnkgPSBudWxsO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblxyXG5cdFx0dGhpcy5maWx0ZXJlZFNlbGVjdGlvbkl0ZW1zID0gbmV3RmlsdGVyZWRHcm91cFN1Z2dlc3Rpb25zO1xyXG5cdH1cclxuXHJcblx0bmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5hdXRvQ29tcGxldGVSZWYuZ2V0T3B0aW9uVmFsdWUgPSB0aGlzLmdldE9wdGlvblZhbHVlLmJpbmQodGhpcyk7XHJcblx0fVxyXG5cclxuXHRnZXRPcHRpb25WYWx1ZShvcHRpb246IGFueSkge1xyXG5cdFx0aWYgKCF0aGlzLm9wdGlvblZhbHVlKCkpIHtcclxuXHRcdFx0cmV0dXJuIG9wdGlvbjtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAodHlwZW9mIG9wdGlvbiA9PT0gJ29iamVjdCcpIHtcclxuXHRcdFx0cmV0dXJuIE9iamVjdFV0aWxzLnJlc29sdmVGaWVsZERhdGEob3B0aW9uLCB0aGlzLm9wdGlvblZhbHVlKCkpO1xyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiBvcHRpb247XHJcblx0fVxyXG5cclxuXHRvbk5nTW9kZWxDaGFuZ2UodmFsdWU6IHN0cmluZykge1xyXG5cdFx0Y29uc3QgdmFsaWRhdGVkVmFsdWUgPSB0aGlzLnZhbGlkYXRlSW5wdXQodmFsdWUpO1xyXG5cdFx0dGhpcy5uZ0NvbnRyb2wudmlld1RvTW9kZWxVcGRhdGUodmFsaWRhdGVkVmFsdWUpO1xyXG5cdH1cclxuXHJcblx0dmFsaWRhdGVJbnB1dCh2YWx1ZTogc3RyaW5nKSB7XHJcblx0XHRpZiAodGhpcy50eXBlKCkgPT09ICdudW1iZXInKSB7XHJcblx0XHRcdHJldHVybiB2YWx1ZS5yZXBsYWNlKC9cXEQvZywgJycpO1xyXG5cdFx0fSBlbHNlIGlmICh0aGlzLnR5cGUoKSA9PT0gJ3RleHQnKSB7XHJcblx0XHRcdHJldHVybiB2YWx1ZS5yZXBsYWNlKC9bXmEtekEtWsSfw7zFn8Sxw7bDp8Sew5zFnsSww5bDh1xcc10vZywgJycpO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHZhbHVlO1xyXG5cdH1cclxuXHJcblx0c2VhcmNoKGV2ZW50OiBhbnksIHNraXBNcWwgPSBmYWxzZSkge1xyXG5cdFx0aWYgKCFldmVudD8ucXVlcnkgfHwgdHlwZW9mIGV2ZW50LnF1ZXJ5ICE9PSAnc3RyaW5nJykgcmV0dXJuO1xyXG5cclxuXHRcdGNvbnN0IHF1ZXJ5ID0gdGhpcy52YWxpZGF0ZUlucHV0KGV2ZW50LnF1ZXJ5KTtcclxuXHRcdGlmICghcXVlcnk/LnRyaW0oKSkgcmV0dXJuO1xyXG5cclxuXHRcdGNvbnN0IHBheWxvYWQ6IENhY2hlU2VhcmNoUmVxdWVzdERUTyA9IHtcclxuXHRcdFx0c2VhcmNoVGV4dDogcXVlcnk/LnRyaW0oKSxcclxuXHRcdFx0YXNzZXREZWZpbml0aW9uQ29kZXM6IEFycmF5LmlzQXJyYXkodGhpcy5hc3NldENvZGUoKSkgPyB0aGlzLmFzc2V0Q29kZSgpIDogKFt0aGlzLmFzc2V0Q29kZSgpXSBhcyBhbnkpLFxyXG5cdFx0XHRwYWdlcjoge1xyXG5cdFx0XHRcdHBhZ2VTaXplOiA1LFxyXG5cdFx0XHRcdHBhZ2VOdW1iZXI6IDFcclxuXHRcdFx0fVxyXG5cdFx0fTtcclxuXHJcblx0XHRpZiAoIXNraXBNcWwgJiYgdGhpcy5tcWwoKSkgcGF5bG9hZC5tcWwgPSB0aGlzLm1xbCgpO1xyXG5cclxuXHRcdHRoaXMuY2FjaGVTZWFyY2hSZXF1ZXN0JC5uZXh0KHBheWxvYWQpO1xyXG5cdH1cclxuXHJcblx0Z2V0QXR0aXJpYnV0ZXNWYWx1ZURlc2NyKGF0dHJpYnV0ZXM6IEF0dHJpYnV0ZUVsZW1lbnRbXSk6IHN0cmluZyB7XHJcblx0XHRjb25zdCBleGNsdWRlZEF0dHJpYnV0ZXMgPSBbJ0Fzc2V0SWQnLCAnQXNzZXREZWZpbml0aW9uTmFtZSddO1xyXG5cdFx0cmV0dXJuIGF0dHJpYnV0ZXNcclxuXHRcdFx0Py5maWx0ZXIoKGF0dHIpID0+ICFleGNsdWRlZEF0dHJpYnV0ZXMuaW5jbHVkZXMoYXR0ci5hdHRyaWJ1dGU/LmF0dHJpYnV0ZUNvZGUpKVxyXG5cdFx0XHQ/Lm1hcCgoYXR0cikgPT4ge1xyXG5cdFx0XHRcdC8vIEhhbmRsZSBTRUxFQ1QgdHlwZSBhdHRyaWJ1dGVzIHVzaW5nIFNlbGVjdGlvbkdyb3VwU2VydmljZVxyXG5cdFx0XHRcdGlmIChhdHRyLmF0dHJpYnV0ZT8uYXR0cmlidXRlVHlwZSA9PT0gJ1NFTEVDVCcgJiYgYXR0ci5hdHRyaWJ1dGU/LnNlbGVjdE9wdGlvbikge1xyXG5cdFx0XHRcdFx0cmV0dXJuIHRoaXMuZ2V0U2VsZWN0aW9uRGlzcGxheShhdHRyLmF0dHJpYnV0ZS5zZWxlY3RPcHRpb24sIGF0dHIudmFsdWUgYXMgc3RyaW5nKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Y29uc3QgdmFsdWUgPSBhdHRyLnZhbHVlRGVzYyA/IGF0dHIudmFsdWVEZXNjIDogYXR0ci52YWx1ZTtcclxuXHRcdFx0XHRyZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyA/IEpTT04uc3RyaW5naWZ5KHZhbHVlKSA6IFN0cmluZyh2YWx1ZSk7XHJcblx0XHRcdH0pXHJcblx0XHRcdC5qb2luKCcgLSAnKTtcclxuXHR9XHJcblx0cHJpdmF0ZSBnZXRBc3NldE51bWJlclZhbHVlKGF0dHJpYnV0ZXM6IEF0dHJpYnV0ZUVsZW1lbnRbXSk6IHN0cmluZyB7XHJcblx0XHRjb25zdCBhc3NldE51bWJlckF0dHIgPSBhdHRyaWJ1dGVzPy5maW5kKChhdHRyKSA9PiBhdHRyLmF0dHJpYnV0ZT8uYXR0cmlidXRlQ29kZSA9PT0gJ0Fzc2V0TnVtYmVyJyk7XHJcblx0XHRpZiAoIWFzc2V0TnVtYmVyQXR0cikgcmV0dXJuICcnO1xyXG5cdFx0cmV0dXJuIFN0cmluZyhhc3NldE51bWJlckF0dHIudmFsdWVEZXNjIHx8IGFzc2V0TnVtYmVyQXR0ci52YWx1ZSB8fCAnJyk7XHJcblx0fVxyXG5cdHByaXZhdGUgZ2V0U2VsZWN0aW9uRGlzcGxheShncm91cE5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XHJcblx0XHRjb25zdCBrZXkgPSBgJHtncm91cE5hbWV9fkFMTGA7XHJcblx0XHRjb25zdCBzZWxlY3Rpb25Hcm91cCA9IHRoaXMuc2VsZWN0aW9uR3JvdXBTZXJ2aWNlLnNlbGVjdGlvbkdyb3VwcygpW2tleV07XHJcblxyXG5cdFx0aWYgKCFzZWxlY3Rpb25Hcm91cCkge1xyXG5cdFx0XHR0aGlzLnNlbGVjdGlvbkdyb3VwU2VydmljZS5mZXRjaEVudW0oZ3JvdXBOYW1lLCAnQUxMJyk7XHJcblx0XHRcdHJldHVybiB2YWx1ZTtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCBjdXJyZW50TGFuZyA9IHRoaXMudHJhbnNsb2NvU2VydmljZS5nZXRBY3RpdmVMYW5nKCk7XHJcblx0XHRjb25zdCBzZWxlY3Rpb25JdGVtID0gc2VsZWN0aW9uR3JvdXAuc2VsZWN0aW9uSXRlbXM/LmZpbmQoKHQpID0+IHQuc2VsZWN0aW9uS2V5ID09PSB2YWx1ZSkgYXMge1xyXG5cdFx0XHRzZWxlY3Rpb25NdWx0aUxhbmd1YWdlRGlzcGxheXM/OiB7IFtsYW5nOiBzdHJpbmddOiBzdHJpbmcgfTtcclxuXHRcdFx0c2VsZWN0aW9uRGlzcGxheT86IHN0cmluZztcclxuXHRcdH07XHJcblxyXG5cdFx0aWYgKCFzZWxlY3Rpb25JdGVtKSByZXR1cm4gdmFsdWU7XHJcblxyXG5cdFx0cmV0dXJuIHNlbGVjdGlvbkl0ZW0uc2VsZWN0aW9uTXVsdGlMYW5ndWFnZURpc3BsYXlzPy5bY3VycmVudExhbmddID8/IHNlbGVjdGlvbkl0ZW0uc2VsZWN0aW9uRGlzcGxheSA/PyB2YWx1ZTtcclxuXHR9XHJcblxyXG5cdHRyaWdnZXJTZWxlY3RlZEV2ZW50cyhldmVudDogYW55KSB7XHJcblx0XHRjb25zdCBzZWxlY3RlZEl0ZW1zOiBBc3NldEFnZ3JlZ2F0ZVtdID0gT2JqZWN0LmtleXModGhpcy5zZWxlY3Rpb25EZWZpbml0aW9ucykubWFwKChrZXk6IHN0cmluZykgPT4ge1xyXG5cdFx0XHRyZXR1cm4gdGhpcy5zZWxlY3Rpb25EZWZpbml0aW9uc1trZXldLnJlc3VsdC5maW5kKChpdGVtOiBBc3NldEFnZ3JlZ2F0ZSkgPT4gaXRlbS5pZCA9PT0gZXZlbnQ/LnZhbHVlPy5rZXkpO1xyXG5cdFx0fSkgYXMgQXNzZXRBZ2dyZWdhdGVbXTtcclxuXHJcblx0XHRjb25zdCBzZWxlY3RlZEl0ZW0gPSBzZWxlY3RlZEl0ZW1zWzBdO1xyXG5cclxuXHRcdGNvbnN0IHNlbGVjdGVkRXZlbnQgPSB7XHJcblx0XHRcdC4uLnNlbGVjdGVkSXRlbSxcclxuXHRcdFx0a2V5OiBzZWxlY3RlZEl0ZW0/LmlkLFxyXG5cdFx0XHR0ZXh0OiBzZWxlY3RlZEl0ZW0/LmFzc2V0RGVmaW5pdGlvbk5hbWUsXHJcblx0XHRcdGF0dHJpYnV0ZXM6IHNlbGVjdGVkSXRlbT8uYXR0cmlidXRlcyxcclxuXHRcdFx0YXNzZXREZWZpbml0aW9uQ29kZTogc2VsZWN0ZWRJdGVtPy5hc3NldERlZmluaXRpb25Db2RlXHJcblx0XHR9O1xyXG5cclxuXHRcdHRoaXMuc2VsZWN0ZWREZWZpbml0aW9uRXZlbnQuZW1pdChzZWxlY3RlZEV2ZW50KTtcclxuXHR9XHJcbn1cclxuIiwiPHAtYXV0b0NvbXBsZXRlXHJcblx0b3B0aW9uTGFiZWw9XCJ0ZXh0XCJcclxuXHRbb3B0aW9uVmFsdWVdPVwib3B0aW9uVmFsdWUoKSFcIlxyXG5cdFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCJcclxuXHRbbXVsdGlwbGVdPVwibXVsdGlwbGUoKVwiXHJcblx0W2dyb3VwXT1cInRydWVcIlxyXG5cdFtmb3JjZVNlbGVjdGlvbl09XCJmb3JjZVNlbGVjdGlvbigpXCJcclxuXHRbZGVsYXldPVwiNzAwXCJcclxuXHRbbWluTGVuZ3RoXT1cIjNcIlxyXG5cdFtzdWdnZXN0aW9uc109XCJmaWx0ZXJlZFNlbGVjdGlvbkl0ZW1zXCJcclxuXHQoY29tcGxldGVNZXRob2QpPVwic2VhcmNoKCRldmVudClcIlxyXG5cdFtmb3JtQ29udHJvbF09XCJuZ0NvbnRyb2wuY29udHJvbFwiXHJcblx0W2F1dG9IaWdobGlnaHRdPVwidHJ1ZVwiXHJcblx0W3R5cGVdPVwidHlwZSgpIVwiXHJcblx0KG5nTW9kZWxDaGFuZ2UpPVwib25OZ01vZGVsQ2hhbmdlKCRldmVudClcIlxyXG5cdFtzaG93Q2xlYXJdPVwic2hvd0NsZWFyKClcIlxyXG5cdFtlbXB0eU1lc3NhZ2VdPVwidHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ21lc3NhZ2VzLm5vRGF0YVRvRGlzcGxheScpXCJcclxuXHQob25TZWxlY3QpPVwidHJpZ2dlclNlbGVjdGVkRXZlbnRzKCRldmVudClcIlxyXG5cdFthcHBlbmRUb109XCJhcHBlbmRUbygpXCI+XHJcblx0PG5nLXRlbXBsYXRlIGxldC1ncm91cCBwVGVtcGxhdGU9XCJncm91cFwiPlxyXG5cdFx0PHNwYW4gY2xhc3M9XCJmb250LWJvbGRcIj57eyBncm91cC50ZXh0IH19PC9zcGFuPlxyXG5cdDwvbmctdGVtcGxhdGU+XHJcblx0QGlmIChzaG93T25seUFzc2V0TnVtYmVyKCkpIHtcclxuXHRcdDxuZy10ZW1wbGF0ZSBsZXQtdmFsdWUgcFRlbXBsYXRlPVwic2VsZWN0ZWRJdGVtXCI+XHJcblx0XHRcdDxzcGFuPnt7IHZhbHVlPy5hc3NldE51bWJlciB8fCB2YWx1ZT8udGV4dCB9fTwvc3Bhbj5cclxuXHRcdDwvbmctdGVtcGxhdGU+XHJcblx0fVxyXG48L3AtYXV0b0NvbXBsZXRlPlxyXG4iXX0=
211
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdWktYnVzaW5lc3MvYXNzZXRQaWNrZXIvc3JjL2Fzc2V0LXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpLWJ1c2luZXNzL2Fzc2V0UGlja2VyL3NyYy9hc3NldC1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUVOLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUVaLE1BQU0sRUFDTixTQUFTLEVBQ1QsTUFBTSxFQUNOLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJELE9BQU8sRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzVDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7Ozs7Ozs7O0FBdUN6RSxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsa0JBQWtCO0lBdUIzRCxZQUNrQixJQUFnQixFQUMxQixnQkFBa0MsRUFDeEIscUJBQTRDO1FBRTdELEtBQUssRUFBRSxDQUFDO1FBSlMsU0FBSSxH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WUFBWSxtSUNsRXhCLDAvQkE0QkEsOFJEa0NXLG1CQUFtQix5VEFBRSxrQkFBa0I7OzRGQUdyQyxvQkFBb0I7a0JBM0JoQyxTQUFTO2lDQUNHLElBQUksWUFDTixnR0FBZ0csV0FzQmpHLENBQUMsbUJBQW1CLEVBQUUsa0JBQWtCLENBQUMsa0JBQ2xDLENBQUMsc0JBQXNCLENBQUM7a0pBR2YsZUFBZTtzQkFBdkMsU0FBUzt1QkFBQyxZQUFZO2dCQW9CYix1QkFBdUI7c0JBQWhDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQge1xyXG5cdEFmdGVyVmlld0luaXQsXHJcblx0Q29tcG9uZW50LFxyXG5cdERlc3Ryb3lSZWYsXHJcblx0RXZlbnRFbWl0dGVyLFxyXG5cdE9uSW5pdCxcclxuXHRPdXRwdXQsXHJcblx0Vmlld0NoaWxkLFxyXG5cdGVmZmVjdCxcclxuXHRpbmplY3QsXHJcblx0aW5wdXQsXHJcblx0c2lnbmFsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IEF1dG9Db21wbGV0ZSwgQXV0b0NvbXBsZXRlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9hdXRvY29tcGxldGUnO1xyXG5pbXBvcnQgeyBPYmplY3RVdGlscyB9IGZyb20gJ3ByaW1lbmcvdXRpbHMnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcclxuaW1wb3J0IHsgU3ViamVjdCwgZmlsdGVyLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEFQSV9DT05GSUdTIH0gZnJvbSAnYXJpbC9ib290L2NvbmZpZy9hcGknO1xyXG5pbXBvcnQgeyBBcHBzIH0gZnJvbSAnYXJpbC9ib290L2NvbmZpZy9hcHBzJztcclxuaW1wb3J0IHsgU2VsZWN0aW9uR3JvdXBTZXJ2aWNlIH0gZnJvbSAnYXJpbC90aGVtZS9sYXlvdXQnO1xyXG5pbXBvcnQgeyBCYXNlSW5wdXRDb21wb25lbnQsIFZhbHVlQWNjZXNzb3JEaXJlY3RpdmUgfSBmcm9tICdhcmlsL3VpL2xpYic7XHJcblxyXG5pbXBvcnQge1xyXG5cdEFzc2V0QWdncmVnYXRlLFxyXG5cdEF0dHJpYnV0ZUVsZW1lbnQsXHJcblx0Q2FjaGVTZWFyY2hSZXF1ZXN0RFRPLFxyXG5cdERlZmF1bHRTZWFyY2hBZ2dyZWdhdGVBc3NldEFnZ3JlZ2F0ZSxcclxuXHRTdWdnZXN0aW9uc0RUTyxcclxuXHRTdWdnZXN0aW9uc0dyb3VwRFRPXHJcbn0gZnJvbSAnLi9pbnRlcmZhY2UnO1xyXG5cclxudHlwZSBWYWx1ZVR5cGVzID0gJ3RleHQnIHwgJ251bWJlcic7XHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcmlsLWFzc2V0LXBpY2tlcltuZ01vZGVsXSwgYXJpbC1hc3NldC1waWNrZXJbZm9ybUNvbnRyb2xdLCBhcmlsLWFzc2V0LXBpY2tlcltmb3JtQ29udHJvbE5hbWVdJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vYXNzZXQtcGlja2VyLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZXM6IFtcclxuXHRcdGBcclxuXHRcdFx0OjpuZy1kZWVwIC5wLWF1dG9jb21wbGV0ZS1tdWx0aXBsZS1jb250YWluZXIge1xyXG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0XHRtYXgtaGVpZ2h0OiA1MHB4O1xyXG5cdFx0XHRcdG92ZXJmbG93LXk6IGF1dG87XHJcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0OjpuZy1kZWVwIC5wLWF1dG9jb21wbGV0ZS10b2tlbiB7XHJcblx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcdGZsZXgtc2hyaW5rOiAwO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQ6Om5nLWRlZXAgLnAtYXV0b2NvbXBsZXRlLWlucHV0LXRva2VuIHtcclxuXHRcdFx0XHRmbGV4OiAxO1xyXG5cdFx0XHRcdG1pbi13aWR0aDogMTUwcHg7XHJcblx0XHRcdH1cclxuXHRcdGBcclxuXHRdLFxyXG5cdGltcG9ydHM6IFtSZWFjdGl2ZUZvcm1zTW9kdWxlLCBBdXRvQ29tcGxldGVNb2R1bGVdLFxyXG5cdGhvc3REaXJlY3RpdmVzOiBbVmFsdWVBY2Nlc3NvckRpcmVjdGl2ZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEFzc2V0UGlja2VyQ29tcG9uZW50IGV4dGVuZHMgQmFzZUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25Jbml0IHtcclxuXHRAVmlld0NoaWxkKEF1dG9Db21wbGV0ZSkgYXV0b0NvbXBsZXRlUmVmITogQXV0b0NvbXBsZXRlO1xyXG5cdGFzc2V0Q29kZSA9IGlucHV0PHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbD4obnVsbCk7XHJcblx0dHlwZSA9IGlucHV0PFZhbHVlVHlwZXMgfCBudWxsPihudWxsKTtcclxuXHJcblx0cGxhY2Vob2xkZXIgPSBpbnB1dDxzdHJpbmc+KCdBcmFtYS4uLicpO1xyXG5cdGZvcmNlU2VsZWN0aW9uID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cdG11bHRpcGxlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cdHNob3dDbGVhciA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHRvcHRpb25WYWx1ZSA9IGlucHV0PGtleW9mIFN1Z2dlc3Rpb25zRFRPIHwgbnVsbD4obnVsbCk7XHJcblx0YXBwZW5kVG8gPSBpbnB1dDxzdHJpbmcgfCBIVE1MRWxlbWVudCB8IG51bGw+KCdib2R5Jyk7XHJcblx0bXFsID0gaW5wdXQ8c3RyaW5nPigpO1xyXG5cdHNob3dPbmx5QXNzZXROdW1iZXIgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XHJcblx0ZW5hYmxlQXV0b1NlYXJjaE9uSW5pdCA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHRpc1VwZGF0ZU1vZGUgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuXHRmaWx0ZXJlZFNlbGVjdGlvbkl0ZW1zITogU3VnZ2VzdGlvbnNHcm91cERUT1tdO1xyXG5cdHNlbGVjdGlvbkRlZmluaXRpb25zITogRGVmYXVsdFNlYXJjaEFnZ3JlZ2F0ZUFzc2V0QWdncmVnYXRlO1xyXG5cdGNhY2hlU2VhcmNoUmVxdWVzdCQgPSBuZXcgU3ViamVjdDxDYWNoZVNlYXJjaFJlcXVlc3REVE8+KCk7XHJcblx0ZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcclxuXHRwcml2YXRlIHVwZGF0ZU1vZGVRdWVyeTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcblx0QE91dHB1dCgpIHNlbGVjdGVkRGVmaW5pdGlvbkV2ZW50OiBFdmVudEVtaXR0ZXI8QXNzZXRBZ2dyZWdhdGU+ID0gbmV3IEV2ZW50RW1pdHRlcjxBc3NldEFnZ3JlZ2F0ZT4oKTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQsXHJcblx0XHRwdWJsaWMgdHJhbnNsb2NvU2VydmljZTogVHJhbnNsb2NvU2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgc2VsZWN0aW9uR3JvdXBTZXJ2aWNlOiBTZWxlY3Rpb25Hcm91cFNlcnZpY2VcclxuXHQpIHtcclxuXHRcdHN1cGVyKCk7XHJcblxyXG5cdFx0ZWZmZWN0KCgpID0+IHtcclxuXHRcdFx0dGhpcy5zZWxlY3Rpb25Hcm91cFNlcnZpY2Uuc2VsZWN0aW9uR3JvdXBzKCk7XHJcblx0XHRcdGlmICh0aGlzLnNlbGVjdGlvbkRlZmluaXRpb25zKSB7XHJcblx0XHRcdFx0dGhpcy5yZWZyZXNoRmlsdGVyZWRTZWxlY3Rpb25JdGVtcygpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHJcblx0fVxyXG5cclxuXHRuZ09uSW5pdCgpIHtcclxuXHRcdHRoaXMuY2FjaGVTZWFyY2hSZXF1ZXN0JFxyXG5cdFx0XHQucGlwZShcclxuXHRcdFx0XHRzd2l0Y2hNYXAoKHBheWxvYWQpID0+XHJcblx0XHRcdFx0XHR0aGlzLmh0dHAucG9zdDxhbnk+KEFQSV9DT05GSUdTLmdldEV4dGVybmFsQXBwRW5kcG9pbnQoQXBwcy5NTkcpICsgJy9tYXN0ZXItZGF0YS9jYWNoZS1zZWFyY2gnLCBwYXlsb2FkKVxyXG5cdFx0XHRcdCksXHJcblx0XHRcdFx0dGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZilcclxuXHRcdFx0KVxyXG5cdFx0XHQuc3Vic2NyaWJlKChzZWxlY3Rpb25Hcm91cCkgPT4ge1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0aW9uRGVmaW5pdGlvbnMgPSBzZWxlY3Rpb25Hcm91cDtcclxuXHRcdFx0XHR0aGlzLnJlZnJlc2hGaWx0ZXJlZFNlbGVjdGlvbkl0ZW1zKCk7XHJcblx0XHRcdH0pO1xyXG5cclxuXHRcdC8vIElmIHRoZSBmb3JtIGNvbnRyb2wncyB2YWx1ZSBpcyBhIHN0cmluZywgcGVyZm9ybSBhIGNhY2hlIHNlYXJjaCB0byByZXRyaWV2ZSB0aGUgSUQuXHJcblx0XHRjb25zdCBjdXJyZW50VmFsdWUgPSB0aGlzLm5nQ29udHJvbD8uY29udHJvbD8udmFsdWU7XHJcblx0XHRpZiAodGhpcy5lbmFibGVBdXRvU2VhcmNoT25Jbml0KCkgfHwgKGN1cnJlbnRWYWx1ZSAmJiB0eXBlb2YgY3VycmVudFZhbHVlID09PSAnc3RyaW5nJykpIHtcclxuXHRcdFx0XHRjb25zdCBzZWFyY2hRdWVyeSA9IHR5cGVvZiBjdXJyZW50VmFsdWUgPT09ICdzdHJpbmcnID8gY3VycmVudFZhbHVlIDogY3VycmVudFZhbHVlPy50ZXh0O1xyXG5cdFx0XHRcdGlmIChzZWFyY2hRdWVyeSkge1xyXG5cdFx0XHRcdFx0dGhpcy5pc1VwZGF0ZU1vZGUuc2V0KHRydWUpO1xyXG5cdFx0XHRcdFx0dGhpcy51cGRhdGVNb2RlUXVlcnkgPSBzZWFyY2hRdWVyeTtcclxuXHRcdFx0XHRcdHRoaXMuc2VhcmNoKHsgcXVlcnk6IHNlYXJjaFF1ZXJ5IH0sIHRydWUpO1xyXG5cdFx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQvLyBSZWFjdCB0byBwcm9ncmFtbWF0aWMgcGF0Y2hlcyAoY3JlYXRlRm9ybURhdGFPYmplY3QgLyBwYXRjaEFzc2V0UmVzcG9uc2VUb0Zvcm0pXHJcblx0XHR0aGlzLm5nQ29udHJvbD8uY29udHJvbD8udmFsdWVDaGFuZ2VzXHJcblx0XHRcdC5waXBlKFxyXG5cdFx0XHRcdGZpbHRlcih2YWx1ZSA9PlxyXG5cdFx0XHRcdFx0dmFsdWUgJiZcclxuXHRcdFx0XHRcdHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiZcclxuXHRcdFx0XHRcdCd0ZXh0JyBpbiB2YWx1ZSAmJlxyXG5cdFx0XHRcdFx0ISgnYXR0cmlidXRlcycgaW4gdmFsdWUpXHJcblx0XHRcdFx0KSxcclxuXHRcdFx0XHR0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKVxyXG5cdFx0XHQpXHJcblx0XHRcdC5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG5cdFx0XHRcdGlmICghdGhpcy5pc1VwZGF0ZU1vZGUoKSkge1xyXG5cdFx0XHRcdFx0dGhpcy5pc1VwZGF0ZU1vZGUuc2V0KHRydWUpO1xyXG5cdFx0XHRcdFx0dGhpcy51cGRhdGVNb2RlUXVlcnkgPSB2YWx1ZS50ZXh0O1xyXG5cdFx0XHRcdFx0dGhpcy5zZWFyY2goeyBxdWVyeTogdmFsdWUudGV4dCB9LCB0cnVlKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0pO1xyXG5cclxuXHR9XHJcblxyXG5cdHByaXZhdGUgcmVmcmVzaEZpbHRlcmVkU2VsZWN0aW9uSXRlbXMoKTogdm9pZCB7XHJcblx0XHRpZiAoIXRoaXMuc2VsZWN0aW9uRGVmaW5pdGlvbnMpIHJldHVybjtcclxuXHJcblx0XHRjb25zdCBuZXdGaWx0ZXJlZEdyb3VwU3VnZ2VzdGlvbnM6IFN1Z2dlc3Rpb25zR3JvdXBEVE9bXSA9IFtdO1xyXG5cclxuXHRcdE9iamVjdC5rZXlzKHRoaXMuc2VsZWN0aW9uRGVmaW5pdGlvbnMpLmZvckVhY2goKGtleTogc3RyaW5nKSA9PiB7XHJcblx0XHRcdGNvbnN0IGdyb3VwRGF0YTogU3VnZ2VzdGlvbnNHcm91cERUTyA9IHtcclxuXHRcdFx0XHR0ZXh0OiB0aGlzLnNlbGVjdGlvbkRlZmluaXRpb25zW2tleV0/LnJlc3VsdFswXT8uYXNzZXRzWzBdPy5hc3NldERlZmluaXRpb25OYW1lLFxyXG5cdFx0XHRcdGtleToga2V5LFxyXG5cdFx0XHRcdGl0ZW1zOiB0aGlzLnNlbGVjdGlvbkRlZmluaXRpb25zW2tleV0ucmVzdWx0Lm1hcChcclxuXHRcdFx0XHRcdChpdGVtOiBBc3NldEFnZ3JlZ2F0ZSkgPT5cclxuXHRcdFx0XHRcdFx0KHtcclxuXHRcdFx0XHRcdFx0XHRrZXk6IGl0ZW0uaWQsXHJcblx0XHRcdFx0XHRcdFx0dGV4dDogdGhpcy5nZXRBdHRpcmlidXRlc1ZhbHVlRGVzY3IoaXRlbS5hdHRyaWJ1dGVzKSxcclxuXHRcdFx0XHRcdFx0XHRhc3NldE51bWJlcjogdGhpcy5nZXRBc3NldE51bWJlclZhbHVlKGl0ZW0uYXR0cmlidXRlcyksXHJcblx0XHRcdFx0XHRcdFx0YXR0cmlidXRlczogaXRlbS5hdHRyaWJ1dGVzLFxyXG5cdFx0XHRcdFx0XHRcdGFzc2V0RGVmaW5pdGlvbkNvZGU6IGl0ZW0uYXNzZXREZWZpbml0aW9uQ29kZVxyXG5cdFx0XHRcdFx0XHR9KSBhcyBTdWdnZXN0aW9uc0RUT1xyXG5cdFx0XHRcdClcclxuXHRcdFx0fTtcclxuXHRcdFx0bmV3RmlsdGVyZWRHcm91cFN1Z2dlc3Rpb25zLnB1c2goZ3JvdXBEYXRhKTtcclxuXHJcblx0XHRcdC8vIElmIHRoZSBzdHJpbmcgdmFsdWUgaXMgcGF0Y2hlZCBpbiB1cGRhdGUgbW9kZSBhbmQgdGhlcmUgaXMgZ3JvdXAgZGF0YSwgc2VsZWN0IHRoZSBtYXRjaGluZyBpdGVtXHJcblx0XHRcdGlmICh0aGlzLmlzVXBkYXRlTW9kZSgpICYmIGdyb3VwRGF0YS5pdGVtcy5sZW5ndGggPiAwICYmICF0aGlzLm11bHRpcGxlKCkpIHtcclxuXHRcdFx0XHRjb25zdCBtYXRjaGVkSXRlbSA9XHJcblx0XHRcdFx0XHRncm91cERhdGEuaXRlbXMubGVuZ3RoID09PSAxXHJcblx0XHRcdFx0XHRcdD8gZ3JvdXBEYXRhLml0ZW1zWzBdXHJcblx0XHRcdFx0XHRcdDogZ3JvdXBEYXRhLml0ZW1zLmZpbmQoKGl0ZW0pID0+IGl0ZW0uYXNzZXROdW1iZXIgPT09IHRoaXMudXBkYXRlTW9kZVF1ZXJ5KTtcclxuXHRcdFx0XHRpZiAobWF0Y2hlZEl0ZW0pIHtcclxuXHRcdFx0XHRcdHRoaXMubmdDb250cm9sPy5jb250cm9sPy5zZXRWYWx1ZShtYXRjaGVkSXRlbSk7XHJcblx0XHRcdFx0XHR0aGlzLmlzVXBkYXRlTW9kZS5zZXQoZmFsc2UpO1xyXG5cdFx0XHRcdFx0dGhpcy51cGRhdGVNb2RlUXVlcnkgPSBudWxsO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblxyXG5cdFx0dGhpcy5maWx0ZXJlZFNlbGVjdGlvbkl0ZW1zID0gbmV3RmlsdGVyZWRHcm91cFN1Z2dlc3Rpb25zO1xyXG5cdH1cclxuXHJcblx0bmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5hdXRvQ29tcGxldGVSZWYuZ2V0T3B0aW9uVmFsdWUgPSB0aGlzLmdldE9wdGlvblZhbHVlLmJpbmQodGhpcyk7XHJcblx0fVxyXG5cclxuXHRnZXRPcHRpb25WYWx1ZShvcHRpb246IGFueSkge1xyXG5cdFx0aWYgKCF0aGlzLm9wdGlvblZhbHVlKCkpIHtcclxuXHRcdFx0cmV0dXJuIG9wdGlvbjtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAodHlwZW9mIG9wdGlvbiA9PT0gJ29iamVjdCcpIHtcclxuXHRcdFx0cmV0dXJuIE9iamVjdFV0aWxzLnJlc29sdmVGaWVsZERhdGEob3B0aW9uLCB0aGlzLm9wdGlvblZhbHVlKCkpO1xyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiBvcHRpb247XHJcblx0fVxyXG5cclxuXHRvbk5nTW9kZWxDaGFuZ2UodmFsdWU6IHN0cmluZykge1xyXG5cdFx0Y29uc3QgdmFsaWRhdGVkVmFsdWUgPSB0aGlzLnZhbGlkYXRlSW5wdXQodmFsdWUpO1xyXG5cdFx0dGhpcy5uZ0NvbnRyb2wudmlld1RvTW9kZWxVcGRhdGUodmFsaWRhdGVkVmFsdWUpO1xyXG5cdH1cclxuXHJcblx0dmFsaWRhdGVJbnB1dCh2YWx1ZTogc3RyaW5nKSB7XHJcblx0XHRpZiAodGhpcy50eXBlKCkgPT09ICdudW1iZXInKSB7XHJcblx0XHRcdHJldHVybiB2YWx1ZS5yZXBsYWNlKC9cXEQvZywgJycpO1xyXG5cdFx0fSBlbHNlIGlmICh0aGlzLnR5cGUoKSA9PT0gJ3RleHQnKSB7XHJcblx0XHRcdHJldHVybiB2YWx1ZS5yZXBsYWNlKC9bXmEtekEtWsSfw7zFn8Sxw7bDp8Sew5zFnsSww5bDh1xcc10vZywgJycpO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHZhbHVlO1xyXG5cdH1cclxuXHJcblx0c2VhcmNoKGV2ZW50OiBhbnksIHNraXBNcWwgPSBmYWxzZSkge1xyXG5cdFx0aWYgKCFldmVudD8ucXVlcnkgfHwgdHlwZW9mIGV2ZW50LnF1ZXJ5ICE9PSAnc3RyaW5nJykgcmV0dXJuO1xyXG5cclxuXHRcdGNvbnN0IHF1ZXJ5ID0gdGhpcy52YWxpZGF0ZUlucHV0KGV2ZW50LnF1ZXJ5KTtcclxuXHRcdGlmICghcXVlcnk/LnRyaW0oKSkgcmV0dXJuO1xyXG5cclxuXHRcdGNvbnN0IHBheWxvYWQ6IENhY2hlU2VhcmNoUmVxdWVzdERUTyA9IHtcclxuXHRcdFx0c2VhcmNoVGV4dDogcXVlcnk/LnRyaW0oKSxcclxuXHRcdFx0YXNzZXREZWZpbml0aW9uQ29kZXM6IEFycmF5LmlzQXJyYXkodGhpcy5hc3NldENvZGUoKSkgPyB0aGlzLmFzc2V0Q29kZSgpIDogKFt0aGlzLmFzc2V0Q29kZSgpXSBhcyBhbnkpLFxyXG5cdFx0XHRwYWdlcjoge1xyXG5cdFx0XHRcdHBhZ2VTaXplOiA1LFxyXG5cdFx0XHRcdHBhZ2VOdW1iZXI6IDFcclxuXHRcdFx0fVxyXG5cdFx0fTtcclxuXHJcblx0XHRpZiAoIXNraXBNcWwgJiYgdGhpcy5tcWwoKSkgcGF5bG9hZC5tcWwgPSB0aGlzLm1xbCgpO1xyXG5cclxuXHRcdHRoaXMuY2FjaGVTZWFyY2hSZXF1ZXN0JC5uZXh0KHBheWxvYWQpO1xyXG5cdH1cclxuXHJcblx0Z2V0QXR0aXJpYnV0ZXNWYWx1ZURlc2NyKGF0dHJpYnV0ZXM6IEF0dHJpYnV0ZUVsZW1lbnRbXSk6IHN0cmluZyB7XHJcblx0XHRjb25zdCBleGNsdWRlZEF0dHJpYnV0ZXMgPSBbJ0Fzc2V0SWQnLCAnQXNzZXREZWZpbml0aW9uTmFtZSddO1xyXG5cdFx0cmV0dXJuIGF0dHJpYnV0ZXNcclxuXHRcdFx0Py5maWx0ZXIoKGF0dHIpID0+ICFleGNsdWRlZEF0dHJpYnV0ZXMuaW5jbHVkZXMoYXR0ci5hdHRyaWJ1dGU/LmF0dHJpYnV0ZUNvZGUpKVxyXG5cdFx0XHQ/Lm1hcCgoYXR0cikgPT4ge1xyXG5cdFx0XHRcdC8vIEhhbmRsZSBTRUxFQ1QgdHlwZSBhdHRyaWJ1dGVzIHVzaW5nIFNlbGVjdGlvbkdyb3VwU2VydmljZVxyXG5cdFx0XHRcdGlmIChhdHRyLmF0dHJpYnV0ZT8uYXR0cmlidXRlVHlwZSA9PT0gJ1NFTEVDVCcgJiYgYXR0ci5hdHRyaWJ1dGU/LnNlbGVjdE9wdGlvbikge1xyXG5cdFx0XHRcdFx0cmV0dXJuIHRoaXMuZ2V0U2VsZWN0aW9uRGlzcGxheShhdHRyLmF0dHJpYnV0ZS5zZWxlY3RPcHRpb24sIGF0dHIudmFsdWUgYXMgc3RyaW5nKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Y29uc3QgdmFsdWUgPSBhdHRyLnZhbHVlRGVzYyA/IGF0dHIudmFsdWVEZXNjIDogYXR0ci52YWx1ZTtcclxuXHRcdFx0XHRyZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyA/IEpTT04uc3RyaW5naWZ5KHZhbHVlKSA6IFN0cmluZyh2YWx1ZSk7XHJcblx0XHRcdH0pXHJcblx0XHRcdC5qb2luKCcgLSAnKTtcclxuXHR9XHJcblx0cHJpdmF0ZSBnZXRBc3NldE51bWJlclZhbHVlKGF0dHJpYnV0ZXM6IEF0dHJpYnV0ZUVsZW1lbnRbXSk6IHN0cmluZyB7XHJcblx0XHRjb25zdCBhc3NldE51bWJlckF0dHIgPSBhdHRyaWJ1dGVzPy5maW5kKChhdHRyKSA9PiBhdHRyLmF0dHJpYnV0ZT8uYXR0cmlidXRlQ29kZSA9PT0gJ0Fzc2V0TnVtYmVyJyk7XHJcblx0XHRpZiAoIWFzc2V0TnVtYmVyQXR0cikgcmV0dXJuICcnO1xyXG5cdFx0cmV0dXJuIFN0cmluZyhhc3NldE51bWJlckF0dHIudmFsdWVEZXNjIHx8IGFzc2V0TnVtYmVyQXR0ci52YWx1ZSB8fCAnJyk7XHJcblx0fVxyXG5cdHByaXZhdGUgZ2V0U2VsZWN0aW9uRGlzcGxheShncm91cE5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XHJcblx0XHRjb25zdCBrZXkgPSBgJHtncm91cE5hbWV9fkFMTGA7XHJcblx0XHRjb25zdCBzZWxlY3Rpb25Hcm91cCA9IHRoaXMuc2VsZWN0aW9uR3JvdXBTZXJ2aWNlLnNlbGVjdGlvbkdyb3VwcygpW2tleV07XHJcblxyXG5cdFx0aWYgKCFzZWxlY3Rpb25Hcm91cCkge1xyXG5cdFx0XHR0aGlzLnNlbGVjdGlvbkdyb3VwU2VydmljZS5mZXRjaEVudW0oZ3JvdXBOYW1lLCAnQUxMJyk7XHJcblx0XHRcdHJldHVybiB2YWx1ZTtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCBjdXJyZW50TGFuZyA9IHRoaXMudHJhbnNsb2NvU2VydmljZS5nZXRBY3RpdmVMYW5nKCk7XHJcblx0XHRjb25zdCBzZWxlY3Rpb25JdGVtID0gc2VsZWN0aW9uR3JvdXAuc2VsZWN0aW9uSXRlbXM/LmZpbmQoKHQpID0+IHQuc2VsZWN0aW9uS2V5ID09PSB2YWx1ZSkgYXMge1xyXG5cdFx0XHRzZWxlY3Rpb25NdWx0aUxhbmd1YWdlRGlzcGxheXM/OiB7IFtsYW5nOiBzdHJpbmddOiBzdHJpbmcgfTtcclxuXHRcdFx0c2VsZWN0aW9uRGlzcGxheT86IHN0cmluZztcclxuXHRcdH07XHJcblxyXG5cdFx0aWYgKCFzZWxlY3Rpb25JdGVtKSByZXR1cm4gdmFsdWU7XHJcblxyXG5cdFx0cmV0dXJuIHNlbGVjdGlvbkl0ZW0uc2VsZWN0aW9uTXVsdGlMYW5ndWFnZURpc3BsYXlzPy5bY3VycmVudExhbmddID8/IHNlbGVjdGlvbkl0ZW0uc2VsZWN0aW9uRGlzcGxheSA/PyB2YWx1ZTtcclxuXHR9XHJcblxyXG5cdHRyaWdnZXJTZWxlY3RlZEV2ZW50cyhldmVudDogYW55KSB7XHJcblx0XHRjb25zdCBzZWxlY3RlZEl0ZW1zOiBBc3NldEFnZ3JlZ2F0ZVtdID0gT2JqZWN0LmtleXModGhpcy5zZWxlY3Rpb25EZWZpbml0aW9ucykubWFwKChrZXk6IHN0cmluZykgPT4ge1xyXG5cdFx0XHRyZXR1cm4gdGhpcy5zZWxlY3Rpb25EZWZpbml0aW9uc1trZXldLnJlc3VsdC5maW5kKChpdGVtOiBBc3NldEFnZ3JlZ2F0ZSkgPT4gaXRlbS5pZCA9PT0gZXZlbnQ/LnZhbHVlPy5rZXkpO1xyXG5cdFx0fSkgYXMgQXNzZXRBZ2dyZWdhdGVbXTtcclxuXHJcblx0XHRjb25zdCBzZWxlY3RlZEl0ZW0gPSBzZWxlY3RlZEl0ZW1zWzBdO1xyXG5cclxuXHRcdGNvbnN0IHNlbGVjdGVkRXZlbnQgPSB7XHJcblx0XHRcdC4uLnNlbGVjdGVkSXRlbSxcclxuXHRcdFx0a2V5OiBzZWxlY3RlZEl0ZW0/LmlkLFxyXG5cdFx0XHR0ZXh0OiBzZWxlY3RlZEl0ZW0/LmFzc2V0RGVmaW5pdGlvbk5hbWUsXHJcblx0XHRcdGF0dHJpYnV0ZXM6IHNlbGVjdGVkSXRlbT8uYXR0cmlidXRlcyxcclxuXHRcdFx0YXNzZXREZWZpbml0aW9uQ29kZTogc2VsZWN0ZWRJdGVtPy5hc3NldERlZmluaXRpb25Db2RlXHJcblx0XHR9O1xyXG5cclxuXHRcdHRoaXMuc2VsZWN0ZWREZWZpbml0aW9uRXZlbnQuZW1pdChzZWxlY3RlZEV2ZW50KTtcclxuXHR9XHJcbn1cclxuIiwiPHAtYXV0b0NvbXBsZXRlXHJcblx0b3B0aW9uTGFiZWw9XCJ0ZXh0XCJcclxuXHRbb3B0aW9uVmFsdWVdPVwib3B0aW9uVmFsdWUoKSFcIlxyXG5cdFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCJcclxuXHRbbXVsdGlwbGVdPVwibXVsdGlwbGUoKVwiXHJcblx0W2dyb3VwXT1cInRydWVcIlxyXG5cdFtmb3JjZVNlbGVjdGlvbl09XCJmb3JjZVNlbGVjdGlvbigpXCJcclxuXHRbZGVsYXldPVwiNzAwXCJcclxuXHRbbWluTGVuZ3RoXT1cIjNcIlxyXG5cdFtzdWdnZXN0aW9uc109XCJmaWx0ZXJlZFNlbGVjdGlvbkl0ZW1zXCJcclxuXHQoY29tcGxldGVNZXRob2QpPVwic2VhcmNoKCRldmVudClcIlxyXG5cdFtmb3JtQ29udHJvbF09XCJuZ0NvbnRyb2wuY29udHJvbFwiXHJcblx0W2F1dG9IaWdobGlnaHRdPVwidHJ1ZVwiXHJcblx0W3R5cGVdPVwidHlwZSgpIVwiXHJcblx0KG5nTW9kZWxDaGFuZ2UpPVwib25OZ01vZGVsQ2hhbmdlKCRldmVudClcIlxyXG5cdFtzaG93Q2xlYXJdPVwic2hvd0NsZWFyKClcIlxyXG5cdFtlbXB0eU1lc3NhZ2VdPVwidHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ21lc3NhZ2VzLm5vRGF0YVRvRGlzcGxheScpXCJcclxuXHQob25TZWxlY3QpPVwidHJpZ2dlclNlbGVjdGVkRXZlbnRzKCRldmVudClcIlxyXG5cdFthcHBlbmRUb109XCJhcHBlbmRUbygpXCI+XHJcblx0PG5nLXRlbXBsYXRlIGxldC1ncm91cCBwVGVtcGxhdGU9XCJncm91cFwiPlxyXG5cdFx0PHNwYW4gY2xhc3M9XCJmb250LWJvbGRcIj57eyBncm91cC50ZXh0IH19PC9zcGFuPlxyXG5cdDwvbmctdGVtcGxhdGU+XHJcblx0QGlmIChzaG93T25seUFzc2V0TnVtYmVyKCkpIHtcclxuXHRcdDxuZy10ZW1wbGF0ZSBsZXQtdmFsdWUgcFRlbXBsYXRlPVwic2VsZWN0ZWRJdGVtXCI+XHJcblx0XHRcdDxzcGFuPnt7IHZhbHVlPy5hc3NldE51bWJlciB8fCB2YWx1ZT8udGV4dCB9fTwvc3Bhbj5cclxuXHRcdDwvbmctdGVtcGxhdGU+XHJcblx0fVxyXG48L3AtYXV0b0NvbXBsZXRlPlxyXG4iXX0=
@@ -48,14 +48,14 @@ export class DetailedOverlayPanelComponent {
48
48
  this.loading = false;
49
49
  }
50
50
  }
51
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DetailedOverlayPanelComponent, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Component }); }
52
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: DetailedOverlayPanelComponent, isStandalone: true, selector: "aril-detailed-oveylay-panel", inputs: { assetId: { classPropertyName: "assetId", publicName: "assetId", isSignal: true, isRequired: true, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "tooltip", first: true, predicate: Tooltip, descendants: true }], ngImport: i0, template: "<span\r\n\t#spanRef\r\n\t(mouseenter)=\"onHover()\"\r\n\t[pTooltip]=\"tooltipContent\"\r\n\t[autoHide]=\"false\"\r\n\ttooltipStyleClass=\"detailed-overlay-tooltip\">\r\n\t<ng-content />\r\n</span>\r\n\r\n<ng-template #tooltipContent>\r\n\t@if (loading) {\r\n\t\t<p-progressSpinner styleClass=\"w-4rem h-4rem\" strokeWidth=\"8\" />\r\n\t} @else {\r\n\t\t<div class=\"w-full mb-2\">\r\n\t\t\t<p class=\"font-semibold\">{{ tableData.assetDefinitionName }} / {{ tableData.assetDefinitionCode }}</p>\r\n\t\t</div>\r\n\t\t<table class=\"w-full\">\r\n\t\t\t@for (infoAttribute of infoAttributes; track infoAttribute) {\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td>\r\n\t\t\t\t\t\t{{ infoAttribute.attribute.attributeName }}\r\n\t\t\t\t\t</td>\r\n\t\t\t\t\t<td>\r\n\t\t\t\t\t\t<p class=\"font-bold m-0\">\r\n\t\t\t\t\t\t\t@switch (infoAttribute.attribute.attributeType) {\r\n\t\t\t\t\t\t\t\t@case ('DATE') {\r\n\t\t\t\t\t\t\t\t\t<aril-value type=\"date\" [model]=\"infoAttribute?.value\" format=\"day\" />\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t@case ('DATE_TIME') {\r\n\t\t\t\t\t\t\t\t\t<aril-value type=\"date\" [model]=\"infoAttribute?.value\" format=\"second\" />\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t@case ('BOOLEAN') {\r\n\t\t\t\t\t\t\t\t\t@if (infoAttribute.value === true || infoAttribute.value === 'true') {\r\n\t\t\t\t\t\t\t\t\t\t<aril-value type=\"text\" model=\"Var\" />\r\n\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t<aril-value type=\"text\" model=\"Yok\" />\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t@default {\r\n\t\t\t\t\t\t\t\t\t<aril-value\r\n\t\t\t\t\t\t\t\t\t\ttype=\"text\"\r\n\t\t\t\t\t\t\t\t\t\t[model]=\"infoAttribute.valueDesc ? infoAttribute.valueDesc : infoAttribute.value\"\r\n\t\t\t\t\t\t\t\t\t\t[shouldShowCopyForClampedText]=\"true\" />\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t</td>\r\n\t\t\t\t</tr>\r\n\t\t\t}\r\n\t\t</table>\r\n\t}\r\n</ng-template>\r\n", styles: ["table{width:100%;border-collapse:collapse}th,td{padding:8px;border:1px solid #ddd}::ng-deep .detailed-overlay-tooltip .p-tooltip-text{background:#fff;color:var(--text-color);width:max-content}\n"], dependencies: [{ kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i2.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: ProgressSpinnerModule }, { kind: "component", type: i3.ProgressSpinner, selector: "p-progressSpinner", inputs: ["styleClass", "style", "strokeWidth", "fill", "animationDuration", "ariaLabel"] }, { kind: "component", type: ValueComponent, selector: "aril-value", inputs: ["model", "type", "format", "isClickable", "groupName", "parentSelectionKey", "isTextClamp", "textClampCharacters", "style", "copyable", "shouldShowCopyForClampedText", "arrayTypeDisplayName", "arrayTypeMaxBadgeCount", "bigDecimalRoundingMode", "bigDecimalScale"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
51
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DetailedOverlayPanelComponent, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Component }); }
52
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: DetailedOverlayPanelComponent, isStandalone: true, selector: "aril-detailed-oveylay-panel", inputs: { assetId: { classPropertyName: "assetId", publicName: "assetId", isSignal: true, isRequired: true, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "tooltip", first: true, predicate: Tooltip, descendants: true }], ngImport: i0, template: "<span\r\n\t#spanRef\r\n\t(mouseenter)=\"onHover()\"\r\n\t[pTooltip]=\"tooltipContent\"\r\n\t[autoHide]=\"false\"\r\n\ttooltipStyleClass=\"detailed-overlay-tooltip\">\r\n\t<ng-content />\r\n</span>\r\n\r\n<ng-template #tooltipContent>\r\n\t@if (loading) {\r\n\t\t<p-progressSpinner styleClass=\"w-4rem h-4rem\" strokeWidth=\"8\" />\r\n\t} @else {\r\n\t\t<div class=\"w-full mb-2\">\r\n\t\t\t<p class=\"font-semibold\">{{ tableData.assetDefinitionName }} / {{ tableData.assetDefinitionCode }}</p>\r\n\t\t</div>\r\n\t\t<table class=\"w-full\">\r\n\t\t\t@for (infoAttribute of infoAttributes; track infoAttribute) {\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td>\r\n\t\t\t\t\t\t{{ infoAttribute.attribute.attributeName }}\r\n\t\t\t\t\t</td>\r\n\t\t\t\t\t<td>\r\n\t\t\t\t\t\t<p class=\"font-bold m-0\">\r\n\t\t\t\t\t\t\t@switch (infoAttribute.attribute.attributeType) {\r\n\t\t\t\t\t\t\t\t@case ('DATE') {\r\n\t\t\t\t\t\t\t\t\t<aril-value type=\"date\" [model]=\"infoAttribute?.value\" format=\"day\" />\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t@case ('DATE_TIME') {\r\n\t\t\t\t\t\t\t\t\t<aril-value type=\"date\" [model]=\"infoAttribute?.value\" format=\"second\" />\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t@case ('BOOLEAN') {\r\n\t\t\t\t\t\t\t\t\t@if (infoAttribute.value === true || infoAttribute.value === 'true') {\r\n\t\t\t\t\t\t\t\t\t\t<aril-value type=\"text\" model=\"Var\" />\r\n\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t<aril-value type=\"text\" model=\"Yok\" />\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t@default {\r\n\t\t\t\t\t\t\t\t\t<aril-value\r\n\t\t\t\t\t\t\t\t\t\ttype=\"text\"\r\n\t\t\t\t\t\t\t\t\t\t[model]=\"infoAttribute.valueDesc ? infoAttribute.valueDesc : infoAttribute.value\"\r\n\t\t\t\t\t\t\t\t\t\t[shouldShowCopyForClampedText]=\"true\" />\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t</td>\r\n\t\t\t\t</tr>\r\n\t\t\t}\r\n\t\t</table>\r\n\t}\r\n</ng-template>\r\n", styles: ["table{width:100%;border-collapse:collapse}th,td{padding:8px;border:1px solid #ddd}::ng-deep .detailed-overlay-tooltip .p-tooltip-text{background:#fff;color:var(--text-color);width:max-content}\n"], dependencies: [{ kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i2.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: ProgressSpinnerModule }, { kind: "component", type: i3.ProgressSpinner, selector: "p-progressSpinner", inputs: ["styleClass", "style", "strokeWidth", "fill", "animationDuration", "ariaLabel"] }, { kind: "component", type: ValueComponent, selector: "aril-value", inputs: ["model", "type", "format", "isClickable", "groupName", "parentSelectionKey", "isTextClamp", "textClampCharacters", "style", "copyable", "shouldShowCopyForClampedText", "arrayTypeDisplayName", "arrayTypeMaxBadgeCount", "bigDecimalRoundingMode", "bigDecimalScale"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
53
53
  }
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DetailedOverlayPanelComponent, decorators: [{
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DetailedOverlayPanelComponent, decorators: [{
55
55
  type: Component,
56
56
  args: [{ selector: 'aril-detailed-oveylay-panel', standalone: true, imports: [TooltipModule, ProgressSpinnerModule, ValueComponent, TooltipModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<span\r\n\t#spanRef\r\n\t(mouseenter)=\"onHover()\"\r\n\t[pTooltip]=\"tooltipContent\"\r\n\t[autoHide]=\"false\"\r\n\ttooltipStyleClass=\"detailed-overlay-tooltip\">\r\n\t<ng-content />\r\n</span>\r\n\r\n<ng-template #tooltipContent>\r\n\t@if (loading) {\r\n\t\t<p-progressSpinner styleClass=\"w-4rem h-4rem\" strokeWidth=\"8\" />\r\n\t} @else {\r\n\t\t<div class=\"w-full mb-2\">\r\n\t\t\t<p class=\"font-semibold\">{{ tableData.assetDefinitionName }} / {{ tableData.assetDefinitionCode }}</p>\r\n\t\t</div>\r\n\t\t<table class=\"w-full\">\r\n\t\t\t@for (infoAttribute of infoAttributes; track infoAttribute) {\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td>\r\n\t\t\t\t\t\t{{ infoAttribute.attribute.attributeName }}\r\n\t\t\t\t\t</td>\r\n\t\t\t\t\t<td>\r\n\t\t\t\t\t\t<p class=\"font-bold m-0\">\r\n\t\t\t\t\t\t\t@switch (infoAttribute.attribute.attributeType) {\r\n\t\t\t\t\t\t\t\t@case ('DATE') {\r\n\t\t\t\t\t\t\t\t\t<aril-value type=\"date\" [model]=\"infoAttribute?.value\" format=\"day\" />\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t@case ('DATE_TIME') {\r\n\t\t\t\t\t\t\t\t\t<aril-value type=\"date\" [model]=\"infoAttribute?.value\" format=\"second\" />\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t@case ('BOOLEAN') {\r\n\t\t\t\t\t\t\t\t\t@if (infoAttribute.value === true || infoAttribute.value === 'true') {\r\n\t\t\t\t\t\t\t\t\t\t<aril-value type=\"text\" model=\"Var\" />\r\n\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t<aril-value type=\"text\" model=\"Yok\" />\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t@default {\r\n\t\t\t\t\t\t\t\t\t<aril-value\r\n\t\t\t\t\t\t\t\t\t\ttype=\"text\"\r\n\t\t\t\t\t\t\t\t\t\t[model]=\"infoAttribute.valueDesc ? infoAttribute.valueDesc : infoAttribute.value\"\r\n\t\t\t\t\t\t\t\t\t\t[shouldShowCopyForClampedText]=\"true\" />\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t</td>\r\n\t\t\t\t</tr>\r\n\t\t\t}\r\n\t\t</table>\r\n\t}\r\n</ng-template>\r\n", styles: ["table{width:100%;border-collapse:collapse}th,td{padding:8px;border:1px solid #ddd}::ng-deep .detailed-overlay-tooltip .p-tooltip-text{background:#fff;color:var(--text-color);width:max-content}\n"] }]
57
57
  }], ctorParameters: () => [{ type: i1.HttpClient }], propDecorators: { tooltip: [{
58
58
  type: ViewChild,
59
59
  args: [Tooltip]
60
60
  }] } });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV0YWlsZWQtb3ZlcmxheS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpLWJ1c2luZXNzL2RldGFpbGVkLW92ZXJsYXktcGFuZWwvc3JjL2RldGFpbGVkLW92ZXJsYXktcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS1idXNpbmVzcy9kZXRhaWxlZC1vdmVybGF5LXBhbmVsL3NyYy9kZXRhaWxlZC1vdmVybGF5LXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXpELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBSS9DOztHQUVHO0FBU0gsTUFBTSxPQUFPLDZCQUE2QjtJQVl6QyxZQUE2QixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBWDdDLFlBQU8sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFPLENBQUM7UUFDaEMsVUFBSyxHQUFHLEtBQUssQ0FBTSxFQUFFLENBQUMsQ0FBQztRQUN2QixlQUFVLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQy9CLFlBQU8sR0FBRyxLQUFLLENBQXNDLEVBQUUsQ0FBQyxDQUFDO1FBQ3pELGNBQVMsR0FBbUIsRUFBb0IsQ0FBQztRQUNqRCxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLG1CQUFjLEdBQXVCLEVBQUUsQ0FBQztRQUN4QyxtQkFBYyxHQUEwQyxFQUFFLENBQUM7SUFJWCxDQUFDO0lBRWpELEtBQUssQ0FBQyxPQUFPO1FBQ1osSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDekMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQ3JELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUM7WUFDaEQsT0FBTztRQUNSLENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUM7WUFDSixNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDcEUsTUFBTSxNQUFNLEdBQUcsTUFBTSxjQUFjLENBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFpQixHQUFHLE9BQU8sZ0JBQWdCLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQy9FLENBQUM7WUFFRixJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUNaLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDO2dCQUM3QyxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQztnQkFDeEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1lBQ3pDLENBQUM7WUFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDckIsQ0FBQztRQUNGLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2hCLE9BQU8sQ0FBQyxLQUFLLENBQUMsOEJBQThCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDckQsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDdEIsQ0FBQztJQUNGLENBQUM7OEdBeENXLDZCQUE2QjtrR0FBN0IsNkJBQTZCLHNvQkFVOUIsT0FBTyxnRENsQ25CLDg0REFvREEsMlBEakNXLGFBQWEscVhBQUUscUJBQXFCLHlNQUFFLGNBQWM7OzJGQUtsRCw2QkFBNkI7a0JBUnpDLFNBQVM7K0JBQ0MsNkJBQTZCLGNBQzNCLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBRSxxQkFBcUIsRUFBRSxjQUFjLEVBQUUsYUFBYSxDQUFDLG1CQUc3RCx1QkFBdUIsQ0FBQyxNQUFNOytFQVkzQixPQUFPO3NCQUExQixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBWaWV3Q2hpbGQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Byb2dyZXNzc3Bpbm5lcic7XHJcbmltcG9ydCB7IFRvb2x0aXAsIFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xyXG5cclxuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEFQSV9DT05GSUdTIH0gZnJvbSAnYXJpbC9ib290L2NvbmZpZy9hcGknO1xyXG5pbXBvcnQgeyBWYWx1ZUNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvdmFsdWUnO1xyXG5cclxuaW1wb3J0IHsgQXNzZXRBZ2dyZWdhdGUsIEF0dHJpYnV0ZUVsZW1lbnQgfSBmcm9tICcuL2ludGVyZmFjZSc7XHJcblxyXG4vKipcclxuICogQSBjb21wb25lbnQgdG8gZGlzcGxheSBkZXRhaWxlZCB0b29sdGlwcyB3aXRoIGNvbmZpZ3VyYWJsZSBwb3NpdGlvbiwgZXZlbnQgdHJpZ2dlcnMsIGFuZCBkZWxheXMuXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2FyaWwtZGV0YWlsZWQtb3ZleWxheS1wYW5lbCcsXHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRpbXBvcnRzOiBbVG9vbHRpcE1vZHVsZSwgUHJvZ3Jlc3NTcGlubmVyTW9kdWxlLCBWYWx1ZUNvbXBvbmVudCwgVG9vbHRpcE1vZHVsZV0sXHJcblx0dGVtcGxhdGVVcmw6ICcuL2RldGFpbGVkLW92ZXJsYXktcGFuZWwuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsOiAnLi9kZXRhaWxlZC1vdmVybGF5LXBhbmVsLmNvbXBvbmVudC5zY3NzJyxcclxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGV0YWlsZWRPdmVybGF5UGFuZWxDb21wb25lbnQge1xyXG5cdGFzc2V0SWQgPSBpbnB1dC5yZXF1aXJlZDxhbnk+KCk7XHJcblx0c3R5bGUgPSBpbnB1dDxhbnk+KHt9KTtcclxuXHRzdHlsZUNsYXNzID0gaW5wdXQ8c3RyaW5nPignJyk7XHJcblx0Y29sdW1ucyA9IGlucHV0PHsgZmllbGQ6IHN0cmluZzsgaGVhZGVyOiBzdHJpbmcgfVtdPihbXSk7XHJcblx0dGFibGVEYXRhOiBBc3NldEFnZ3JlZ2F0ZSA9IHt9IGFzIEFzc2V0QWdncmVnYXRlO1xyXG5cdGxvYWRpbmcgPSBmYWxzZTtcclxuXHRpbmZvQXR0cmlidXRlczogQXR0cmlidXRlRWxlbWVudFtdID0gW107XHJcblx0dGFibGVEYXRhQ2FjaGU6IHsgW2Fzc2V0SWQ6IHN0cmluZ106IEFzc2V0QWdncmVnYXRlIH0gPSB7fTtcclxuXHJcblx0QFZpZXdDaGlsZChUb29sdGlwKSB0b29sdGlwITogVG9vbHRpcDtcclxuXHJcblx0Y29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50KSB7fVxyXG5cclxuXHRhc3luYyBvbkhvdmVyKCkge1xyXG5cdFx0aWYgKHRoaXMudGFibGVEYXRhQ2FjaGVbdGhpcy5hc3NldElkKCldKSB7XHJcblx0XHRcdHRoaXMudGFibGVEYXRhID0gdGhpcy50YWJsZURhdGFDYWNoZVt0aGlzLmFzc2V0SWQoKV07XHJcblx0XHRcdHRoaXMuaW5mb0F0dHJpYnV0ZXMgPSB0aGlzLnRhYmxlRGF0YS5hdHRyaWJ1dGVzO1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblx0XHR0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG5cdFx0dHJ5IHtcclxuXHRcdFx0Y29uc3QgaG9zdEFwaSA9IEFQSV9DT05GSUdTLmFwaS5yZXBsYWNlKC9cXC9bXi9dK1xcL3YxJC8sIGAvaG9zdC92MWApO1xyXG5cdFx0XHRjb25zdCByZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcclxuXHRcdFx0XHR0aGlzLmh0dHAuZ2V0PEFzc2V0QWdncmVnYXRlPihgJHtob3N0QXBpfS9tYXN0ZXItZGF0YS8ke3RoaXMuYXNzZXRJZCgpfS9ob3ZlcmApXHJcblx0XHRcdCk7XHJcblxyXG5cdFx0XHRpZiAocmVzdWx0KSB7XHJcblx0XHRcdFx0dGhpcy50YWJsZURhdGFDYWNoZVt0aGlzLmFzc2V0SWQoKV0gPSByZXN1bHQ7XHJcblx0XHRcdFx0dGhpcy50YWJsZURhdGEgPSByZXN1bHQ7XHJcblx0XHRcdFx0dGhpcy5pbmZvQXR0cmlidXRlcyA9IHJlc3VsdC5hdHRyaWJ1dGVzO1xyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG5cdFx0XHRpZiAodGhpcy50b29sdGlwLmFjdGl2ZSkge1xyXG5cdFx0XHRcdHRoaXMudG9vbHRpcC5zaG93KCk7XHJcblx0XHRcdH1cclxuXHRcdH0gY2F0Y2ggKGVycm9yKSB7XHJcblx0XHRcdGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIGFzc2V0IGRldGFpbDonLCBlcnJvcik7XHJcblx0XHRcdHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCI8c3BhblxyXG5cdCNzcGFuUmVmXHJcblx0KG1vdXNlZW50ZXIpPVwib25Ib3ZlcigpXCJcclxuXHRbcFRvb2x0aXBdPVwidG9vbHRpcENvbnRlbnRcIlxyXG5cdFthdXRvSGlkZV09XCJmYWxzZVwiXHJcblx0dG9vbHRpcFN0eWxlQ2xhc3M9XCJkZXRhaWxlZC1vdmVybGF5LXRvb2x0aXBcIj5cclxuXHQ8bmctY29udGVudCAvPlxyXG48L3NwYW4+XHJcblxyXG48bmctdGVtcGxhdGUgI3Rvb2x0aXBDb250ZW50PlxyXG5cdEBpZiAobG9hZGluZykge1xyXG5cdFx0PHAtcHJvZ3Jlc3NTcGlubmVyIHN0eWxlQ2xhc3M9XCJ3LTRyZW0gaC00cmVtXCIgc3Ryb2tlV2lkdGg9XCI4XCIgLz5cclxuXHR9IEBlbHNlIHtcclxuXHRcdDxkaXYgY2xhc3M9XCJ3LWZ1bGwgbWItMlwiPlxyXG5cdFx0XHQ8cCBjbGFzcz1cImZvbnQtc2VtaWJvbGRcIj57eyB0YWJsZURhdGEuYXNzZXREZWZpbml0aW9uTmFtZSB9fSAvIHt7IHRhYmxlRGF0YS5hc3NldERlZmluaXRpb25Db2RlIH19PC9wPlxyXG5cdFx0PC9kaXY+XHJcblx0XHQ8dGFibGUgY2xhc3M9XCJ3LWZ1bGxcIj5cclxuXHRcdFx0QGZvciAoaW5mb0F0dHJpYnV0ZSBvZiBpbmZvQXR0cmlidXRlczsgdHJhY2sgaW5mb0F0dHJpYnV0ZSkge1xyXG5cdFx0XHRcdDx0cj5cclxuXHRcdFx0XHRcdDx0ZD5cclxuXHRcdFx0XHRcdFx0e3sgaW5mb0F0dHJpYnV0ZS5hdHRyaWJ1dGUuYXR0cmlidXRlTmFtZSB9fVxyXG5cdFx0XHRcdFx0PC90ZD5cclxuXHRcdFx0XHRcdDx0ZD5cclxuXHRcdFx0XHRcdFx0PHAgY2xhc3M9XCJmb250LWJvbGQgbS0wXCI+XHJcblx0XHRcdFx0XHRcdFx0QHN3aXRjaCAoaW5mb0F0dHJpYnV0ZS5hdHRyaWJ1dGUuYXR0cmlidXRlVHlwZSkge1xyXG5cdFx0XHRcdFx0XHRcdFx0QGNhc2UgKCdEQVRFJykge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHQ8YXJpbC12YWx1ZSB0eXBlPVwiZGF0ZVwiIFttb2RlbF09XCJpbmZvQXR0cmlidXRlPy52YWx1ZVwiIGZvcm1hdD1cImRheVwiIC8+XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHRAY2FzZSAoJ0RBVEVfVElNRScpIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0PGFyaWwtdmFsdWUgdHlwZT1cImRhdGVcIiBbbW9kZWxdPVwiaW5mb0F0dHJpYnV0ZT8udmFsdWVcIiBmb3JtYXQ9XCJzZWNvbmRcIiAvPlxyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0QGNhc2UgKCdCT09MRUFOJykge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRAaWYgKGluZm9BdHRyaWJ1dGUudmFsdWUgPT09IHRydWUgfHwgaW5mb0F0dHJpYnV0ZS52YWx1ZSA9PT0gJ3RydWUnKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PGFyaWwtdmFsdWUgdHlwZT1cInRleHRcIiBtb2RlbD1cIlZhclwiIC8+XHJcblx0XHRcdFx0XHRcdFx0XHRcdH0gQGVsc2Uge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxhcmlsLXZhbHVlIHR5cGU9XCJ0ZXh0XCIgbW9kZWw9XCJZb2tcIiAvPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHRAZGVmYXVsdCB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxhcmlsLXZhbHVlXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0dHlwZT1cInRleHRcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFttb2RlbF09XCJpbmZvQXR0cmlidXRlLnZhbHVlRGVzYyA/IGluZm9BdHRyaWJ1dGUudmFsdWVEZXNjIDogaW5mb0F0dHJpYnV0ZS52YWx1ZVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0W3Nob3VsZFNob3dDb3B5Rm9yQ2xhbXBlZFRleHRdPVwidHJ1ZVwiIC8+XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHQ8L3A+XHJcblx0XHRcdFx0XHQ8L3RkPlxyXG5cdFx0XHRcdDwvdHI+XHJcblx0XHRcdH1cclxuXHRcdDwvdGFibGU+XHJcblx0fVxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV0YWlsZWQtb3ZlcmxheS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpLWJ1c2luZXNzL2RldGFpbGVkLW92ZXJsYXktcGFuZWwvc3JjL2RldGFpbGVkLW92ZXJsYXktcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS1idXNpbmVzcy9kZXRhaWxlZC1vdmVybGF5LXBhbmVsL3NyYy9kZXRhaWxlZC1vdmVybGF5LXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXpELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBSS9DOztHQUVHO0FBU0gsTUFBTSxPQUFPLDZCQUE2QjtJQVl6QyxZQUE2QixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBWDdDLFlBQU8sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFPLENBQUM7UUFDaEMsVUFBSyxHQUFHLEtBQUssQ0FBTSxFQUFFLENBQUMsQ0FBQztRQUN2QixlQUFVLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQy9CLFlBQU8sR0FBRyxLQUFLLENBQXNDLEVBQUUsQ0FBQyxDQUFDO1FBQ3pELGNBQVMsR0FBbUIsRUFBb0IsQ0FBQztRQUNqRCxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLG1CQUFjLEdBQXVCLEVBQUUsQ0FBQztRQUN4QyxtQkFBYyxHQUEwQyxFQUFFLENBQUM7SUFJWCxDQUFDO0lBRWpELEtBQUssQ0FBQyxPQUFPO1FBQ1osSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDekMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQ3JELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUM7WUFDaEQsT0FBTztRQUNSLENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUM7WUFDSixNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDcEUsTUFBTSxNQUFNLEdBQUcsTUFBTSxjQUFjLENBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFpQixHQUFHLE9BQU8sZ0JBQWdCLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQy9FLENBQUM7WUFFRixJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUNaLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDO2dCQUM3QyxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQztnQkFDeEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1lBQ3pDLENBQUM7WUFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDckIsQ0FBQztRQUNGLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2hCLE9BQU8sQ0FBQyxLQUFLLENBQUMsOEJBQThCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDckQsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDdEIsQ0FBQztJQUNGLENBQUM7K0dBeENXLDZCQUE2QjttR0FBN0IsNkJBQTZCLHNvQkFVOUIsT0FBTyxnRENsQ25CLDg0REFvREEsMlBEakNXLGFBQWEscVhBQUUscUJBQXFCLHlNQUFFLGNBQWM7OzRGQUtsRCw2QkFBNkI7a0JBUnpDLFNBQVM7K0JBQ0MsNkJBQTZCLGNBQzNCLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBRSxxQkFBcUIsRUFBRSxjQUFjLEVBQUUsYUFBYSxDQUFDLG1CQUc3RCx1QkFBdUIsQ0FBQyxNQUFNOytFQVkzQixPQUFPO3NCQUExQixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBWaWV3Q2hpbGQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Byb2dyZXNzc3Bpbm5lcic7XHJcbmltcG9ydCB7IFRvb2x0aXAsIFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xyXG5cclxuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEFQSV9DT05GSUdTIH0gZnJvbSAnYXJpbC9ib290L2NvbmZpZy9hcGknO1xyXG5pbXBvcnQgeyBWYWx1ZUNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvdmFsdWUnO1xyXG5cclxuaW1wb3J0IHsgQXNzZXRBZ2dyZWdhdGUsIEF0dHJpYnV0ZUVsZW1lbnQgfSBmcm9tICcuL2ludGVyZmFjZSc7XHJcblxyXG4vKipcclxuICogQSBjb21wb25lbnQgdG8gZGlzcGxheSBkZXRhaWxlZCB0b29sdGlwcyB3aXRoIGNvbmZpZ3VyYWJsZSBwb3NpdGlvbiwgZXZlbnQgdHJpZ2dlcnMsIGFuZCBkZWxheXMuXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2FyaWwtZGV0YWlsZWQtb3ZleWxheS1wYW5lbCcsXHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRpbXBvcnRzOiBbVG9vbHRpcE1vZHVsZSwgUHJvZ3Jlc3NTcGlubmVyTW9kdWxlLCBWYWx1ZUNvbXBvbmVudCwgVG9vbHRpcE1vZHVsZV0sXHJcblx0dGVtcGxhdGVVcmw6ICcuL2RldGFpbGVkLW92ZXJsYXktcGFuZWwuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsOiAnLi9kZXRhaWxlZC1vdmVybGF5LXBhbmVsLmNvbXBvbmVudC5zY3NzJyxcclxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGV0YWlsZWRPdmVybGF5UGFuZWxDb21wb25lbnQge1xyXG5cdGFzc2V0SWQgPSBpbnB1dC5yZXF1aXJlZDxhbnk+KCk7XHJcblx0c3R5bGUgPSBpbnB1dDxhbnk+KHt9KTtcclxuXHRzdHlsZUNsYXNzID0gaW5wdXQ8c3RyaW5nPignJyk7XHJcblx0Y29sdW1ucyA9IGlucHV0PHsgZmllbGQ6IHN0cmluZzsgaGVhZGVyOiBzdHJpbmcgfVtdPihbXSk7XHJcblx0dGFibGVEYXRhOiBBc3NldEFnZ3JlZ2F0ZSA9IHt9IGFzIEFzc2V0QWdncmVnYXRlO1xyXG5cdGxvYWRpbmcgPSBmYWxzZTtcclxuXHRpbmZvQXR0cmlidXRlczogQXR0cmlidXRlRWxlbWVudFtdID0gW107XHJcblx0dGFibGVEYXRhQ2FjaGU6IHsgW2Fzc2V0SWQ6IHN0cmluZ106IEFzc2V0QWdncmVnYXRlIH0gPSB7fTtcclxuXHJcblx0QFZpZXdDaGlsZChUb29sdGlwKSB0b29sdGlwITogVG9vbHRpcDtcclxuXHJcblx0Y29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50KSB7fVxyXG5cclxuXHRhc3luYyBvbkhvdmVyKCkge1xyXG5cdFx0aWYgKHRoaXMudGFibGVEYXRhQ2FjaGVbdGhpcy5hc3NldElkKCldKSB7XHJcblx0XHRcdHRoaXMudGFibGVEYXRhID0gdGhpcy50YWJsZURhdGFDYWNoZVt0aGlzLmFzc2V0SWQoKV07XHJcblx0XHRcdHRoaXMuaW5mb0F0dHJpYnV0ZXMgPSB0aGlzLnRhYmxlRGF0YS5hdHRyaWJ1dGVzO1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblx0XHR0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG5cdFx0dHJ5IHtcclxuXHRcdFx0Y29uc3QgaG9zdEFwaSA9IEFQSV9DT05GSUdTLmFwaS5yZXBsYWNlKC9cXC9bXi9dK1xcL3YxJC8sIGAvaG9zdC92MWApO1xyXG5cdFx0XHRjb25zdCByZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcclxuXHRcdFx0XHR0aGlzLmh0dHAuZ2V0PEFzc2V0QWdncmVnYXRlPihgJHtob3N0QXBpfS9tYXN0ZXItZGF0YS8ke3RoaXMuYXNzZXRJZCgpfS9ob3ZlcmApXHJcblx0XHRcdCk7XHJcblxyXG5cdFx0XHRpZiAocmVzdWx0KSB7XHJcblx0XHRcdFx0dGhpcy50YWJsZURhdGFDYWNoZVt0aGlzLmFzc2V0SWQoKV0gPSByZXN1bHQ7XHJcblx0XHRcdFx0dGhpcy50YWJsZURhdGEgPSByZXN1bHQ7XHJcblx0XHRcdFx0dGhpcy5pbmZvQXR0cmlidXRlcyA9IHJlc3VsdC5hdHRyaWJ1dGVzO1xyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG5cdFx0XHRpZiAodGhpcy50b29sdGlwLmFjdGl2ZSkge1xyXG5cdFx0XHRcdHRoaXMudG9vbHRpcC5zaG93KCk7XHJcblx0XHRcdH1cclxuXHRcdH0gY2F0Y2ggKGVycm9yKSB7XHJcblx0XHRcdGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIGFzc2V0IGRldGFpbDonLCBlcnJvcik7XHJcblx0XHRcdHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCI8c3BhblxyXG5cdCNzcGFuUmVmXHJcblx0KG1vdXNlZW50ZXIpPVwib25Ib3ZlcigpXCJcclxuXHRbcFRvb2x0aXBdPVwidG9vbHRpcENvbnRlbnRcIlxyXG5cdFthdXRvSGlkZV09XCJmYWxzZVwiXHJcblx0dG9vbHRpcFN0eWxlQ2xhc3M9XCJkZXRhaWxlZC1vdmVybGF5LXRvb2x0aXBcIj5cclxuXHQ8bmctY29udGVudCAvPlxyXG48L3NwYW4+XHJcblxyXG48bmctdGVtcGxhdGUgI3Rvb2x0aXBDb250ZW50PlxyXG5cdEBpZiAobG9hZGluZykge1xyXG5cdFx0PHAtcHJvZ3Jlc3NTcGlubmVyIHN0eWxlQ2xhc3M9XCJ3LTRyZW0gaC00cmVtXCIgc3Ryb2tlV2lkdGg9XCI4XCIgLz5cclxuXHR9IEBlbHNlIHtcclxuXHRcdDxkaXYgY2xhc3M9XCJ3LWZ1bGwgbWItMlwiPlxyXG5cdFx0XHQ8cCBjbGFzcz1cImZvbnQtc2VtaWJvbGRcIj57eyB0YWJsZURhdGEuYXNzZXREZWZpbml0aW9uTmFtZSB9fSAvIHt7IHRhYmxlRGF0YS5hc3NldERlZmluaXRpb25Db2RlIH19PC9wPlxyXG5cdFx0PC9kaXY+XHJcblx0XHQ8dGFibGUgY2xhc3M9XCJ3LWZ1bGxcIj5cclxuXHRcdFx0QGZvciAoaW5mb0F0dHJpYnV0ZSBvZiBpbmZvQXR0cmlidXRlczsgdHJhY2sgaW5mb0F0dHJpYnV0ZSkge1xyXG5cdFx0XHRcdDx0cj5cclxuXHRcdFx0XHRcdDx0ZD5cclxuXHRcdFx0XHRcdFx0e3sgaW5mb0F0dHJpYnV0ZS5hdHRyaWJ1dGUuYXR0cmlidXRlTmFtZSB9fVxyXG5cdFx0XHRcdFx0PC90ZD5cclxuXHRcdFx0XHRcdDx0ZD5cclxuXHRcdFx0XHRcdFx0PHAgY2xhc3M9XCJmb250LWJvbGQgbS0wXCI+XHJcblx0XHRcdFx0XHRcdFx0QHN3aXRjaCAoaW5mb0F0dHJpYnV0ZS5hdHRyaWJ1dGUuYXR0cmlidXRlVHlwZSkge1xyXG5cdFx0XHRcdFx0XHRcdFx0QGNhc2UgKCdEQVRFJykge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHQ8YXJpbC12YWx1ZSB0eXBlPVwiZGF0ZVwiIFttb2RlbF09XCJpbmZvQXR0cmlidXRlPy52YWx1ZVwiIGZvcm1hdD1cImRheVwiIC8+XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHRAY2FzZSAoJ0RBVEVfVElNRScpIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0PGFyaWwtdmFsdWUgdHlwZT1cImRhdGVcIiBbbW9kZWxdPVwiaW5mb0F0dHJpYnV0ZT8udmFsdWVcIiBmb3JtYXQ9XCJzZWNvbmRcIiAvPlxyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0QGNhc2UgKCdCT09MRUFOJykge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRAaWYgKGluZm9BdHRyaWJ1dGUudmFsdWUgPT09IHRydWUgfHwgaW5mb0F0dHJpYnV0ZS52YWx1ZSA9PT0gJ3RydWUnKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PGFyaWwtdmFsdWUgdHlwZT1cInRleHRcIiBtb2RlbD1cIlZhclwiIC8+XHJcblx0XHRcdFx0XHRcdFx0XHRcdH0gQGVsc2Uge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxhcmlsLXZhbHVlIHR5cGU9XCJ0ZXh0XCIgbW9kZWw9XCJZb2tcIiAvPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHRAZGVmYXVsdCB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxhcmlsLXZhbHVlXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0dHlwZT1cInRleHRcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFttb2RlbF09XCJpbmZvQXR0cmlidXRlLnZhbHVlRGVzYyA/IGluZm9BdHRyaWJ1dGUudmFsdWVEZXNjIDogaW5mb0F0dHJpYnV0ZS52YWx1ZVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0W3Nob3VsZFNob3dDb3B5Rm9yQ2xhbXBlZFRleHRdPVwidHJ1ZVwiIC8+XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHQ8L3A+XHJcblx0XHRcdFx0XHQ8L3RkPlxyXG5cdFx0XHRcdDwvdHI+XHJcblx0XHRcdH1cclxuXHRcdDwvdGFibGU+XHJcblx0fVxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=