@pepperi-addons/ngx-lib 0.2.59-query-builder.13 → 0.2.61-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (483) hide show
  1. package/README.md +39 -39
  2. package/address/address.component.theme.scss +5 -8
  3. package/address/pepperi-addons-ngx-lib-address.metadata.json +1 -1
  4. package/attachment/attachment.component.theme.scss +4 -3
  5. package/attachment/pepperi-addons-ngx-lib-attachment.metadata.json +1 -1
  6. package/bread-crumbs/bread-crumbs.component.theme.scss +9 -9
  7. package/bread-crumbs/pepperi-addons-ngx-lib-bread-crumbs.metadata.json +1 -1
  8. package/bundles/pepperi-addons-ngx-lib-address.umd.js +2 -2
  9. package/bundles/pepperi-addons-ngx-lib-address.umd.js.map +1 -1
  10. package/bundles/pepperi-addons-ngx-lib-attachment.umd.js +2 -2
  11. package/bundles/pepperi-addons-ngx-lib-attachment.umd.js.map +1 -1
  12. package/bundles/pepperi-addons-ngx-lib-bread-crumbs.umd.js +2 -2
  13. package/bundles/pepperi-addons-ngx-lib-bread-crumbs.umd.js.map +1 -1
  14. package/bundles/pepperi-addons-ngx-lib-button.umd.js +2 -2
  15. package/bundles/pepperi-addons-ngx-lib-button.umd.js.map +1 -1
  16. package/bundles/pepperi-addons-ngx-lib-carousel.umd.js.map +1 -1
  17. package/bundles/pepperi-addons-ngx-lib-checkbox.umd.js +2 -2
  18. package/bundles/pepperi-addons-ngx-lib-checkbox.umd.js.map +1 -1
  19. package/bundles/pepperi-addons-ngx-lib-color.umd.js +4 -4
  20. package/bundles/pepperi-addons-ngx-lib-color.umd.js.map +1 -1
  21. package/bundles/pepperi-addons-ngx-lib-date.umd.js +2 -2
  22. package/bundles/pepperi-addons-ngx-lib-date.umd.js.map +1 -1
  23. package/bundles/pepperi-addons-ngx-lib-dialog.umd.js +3 -3
  24. package/bundles/pepperi-addons-ngx-lib-dialog.umd.js.map +1 -1
  25. package/bundles/pepperi-addons-ngx-lib-field-title.umd.js +2 -2
  26. package/bundles/pepperi-addons-ngx-lib-field-title.umd.js.map +1 -1
  27. package/bundles/pepperi-addons-ngx-lib-files-uploader.umd.js +2 -2
  28. package/bundles/pepperi-addons-ngx-lib-files-uploader.umd.js.map +1 -1
  29. package/bundles/pepperi-addons-ngx-lib-form.umd.js +9 -9
  30. package/bundles/pepperi-addons-ngx-lib-form.umd.js.map +1 -1
  31. package/bundles/pepperi-addons-ngx-lib-group-buttons.umd.js +2 -2
  32. package/bundles/pepperi-addons-ngx-lib-group-buttons.umd.js.map +1 -1
  33. package/bundles/pepperi-addons-ngx-lib-icon.umd.js.map +1 -1
  34. package/bundles/pepperi-addons-ngx-lib-image.umd.js +2 -2
  35. package/bundles/pepperi-addons-ngx-lib-image.umd.js.map +1 -1
  36. package/bundles/pepperi-addons-ngx-lib-images-filmstrip.umd.js +2 -2
  37. package/bundles/pepperi-addons-ngx-lib-images-filmstrip.umd.js.map +1 -1
  38. package/bundles/pepperi-addons-ngx-lib-list.umd.js +9 -9
  39. package/bundles/pepperi-addons-ngx-lib-list.umd.js.map +1 -1
  40. package/bundles/pepperi-addons-ngx-lib-menu.umd.js +2 -2
  41. package/bundles/pepperi-addons-ngx-lib-menu.umd.js.map +1 -1
  42. package/bundles/pepperi-addons-ngx-lib-page-layout.umd.js +1 -1
  43. package/bundles/pepperi-addons-ngx-lib-page-layout.umd.js.map +1 -1
  44. package/bundles/pepperi-addons-ngx-lib-quantity-selector.umd.js +2 -2
  45. package/bundles/pepperi-addons-ngx-lib-quantity-selector.umd.js.map +1 -1
  46. package/bundles/pepperi-addons-ngx-lib-query-builder.umd.js +45 -45
  47. package/bundles/pepperi-addons-ngx-lib-query-builder.umd.js.map +1 -1
  48. package/bundles/pepperi-addons-ngx-lib-rich-html-textarea.umd.js +2 -2
  49. package/bundles/pepperi-addons-ngx-lib-rich-html-textarea.umd.js.map +1 -1
  50. package/bundles/pepperi-addons-ngx-lib-search.umd.js +1 -1
  51. package/bundles/pepperi-addons-ngx-lib-search.umd.js.map +1 -1
  52. package/bundles/pepperi-addons-ngx-lib-select.umd.js +2 -2
  53. package/bundles/pepperi-addons-ngx-lib-select.umd.js.map +1 -1
  54. package/bundles/pepperi-addons-ngx-lib-separator.umd.js +2 -2
  55. package/bundles/pepperi-addons-ngx-lib-separator.umd.js.map +1 -1
  56. package/bundles/pepperi-addons-ngx-lib-side-bar.umd.js +2 -2
  57. package/bundles/pepperi-addons-ngx-lib-side-bar.umd.js.map +1 -1
  58. package/bundles/pepperi-addons-ngx-lib-signature.umd.js +2 -2
  59. package/bundles/pepperi-addons-ngx-lib-signature.umd.js.map +1 -1
  60. package/bundles/pepperi-addons-ngx-lib-size-detector.umd.js +1 -1
  61. package/bundles/pepperi-addons-ngx-lib-size-detector.umd.js.map +1 -1
  62. package/bundles/pepperi-addons-ngx-lib-slider.umd.js +2 -2
  63. package/bundles/pepperi-addons-ngx-lib-slider.umd.js.map +1 -1
  64. package/bundles/pepperi-addons-ngx-lib-smart-filters.umd.js +8 -8
  65. package/bundles/pepperi-addons-ngx-lib-smart-filters.umd.js.map +1 -1
  66. package/bundles/pepperi-addons-ngx-lib-textarea.umd.js +2 -2
  67. package/bundles/pepperi-addons-ngx-lib-textarea.umd.js.map +1 -1
  68. package/bundles/pepperi-addons-ngx-lib-textbox-icon.umd.js +1 -1
  69. package/bundles/pepperi-addons-ngx-lib-textbox-icon.umd.js.map +1 -1
  70. package/bundles/pepperi-addons-ngx-lib-textbox.umd.js +2 -2
  71. package/bundles/pepperi-addons-ngx-lib-textbox.umd.js.map +1 -1
  72. package/bundles/pepperi-addons-ngx-lib-top-bar.umd.js +2 -2
  73. package/bundles/pepperi-addons-ngx-lib-top-bar.umd.js.map +1 -1
  74. package/bundles/pepperi-addons-ngx-lib.umd.js.map +1 -1
  75. package/button/button.component.theme.scss +0 -2
  76. package/button/pepperi-addons-ngx-lib-button.metadata.json +1 -1
  77. package/checkbox/checkbox.component.theme.scss +0 -2
  78. package/checkbox/pepperi-addons-ngx-lib-checkbox.metadata.json +1 -1
  79. package/color/color-picker.component.theme.scss +170 -175
  80. package/color/color.component.theme.scss +0 -7
  81. package/color/pepperi-addons-ngx-lib-color.metadata.json +1 -1
  82. package/date/date.component.theme.scss +39 -45
  83. package/date/pepperi-addons-ngx-lib-date.metadata.json +1 -1
  84. package/dialog/dialog.component.theme.scss +5 -5
  85. package/dialog/pepperi-addons-ngx-lib-dialog.metadata.json +1 -1
  86. package/esm2015/address/address.component.js +3 -3
  87. package/esm2015/address/address.module.js +1 -1
  88. package/esm2015/address/public-api.js +1 -1
  89. package/esm2015/attachment/attachment.component.js +3 -3
  90. package/esm2015/attachment/attachment.module.js +1 -1
  91. package/esm2015/attachment/public-api.js +1 -1
  92. package/esm2015/bread-crumbs/bread-crumbs.component.js +3 -3
  93. package/esm2015/bread-crumbs/bread-crumbs.model.js +1 -1
  94. package/esm2015/bread-crumbs/bread-crumbs.module.js +1 -1
  95. package/esm2015/bread-crumbs/public-api.js +1 -1
  96. package/esm2015/button/button.component.js +3 -3
  97. package/esm2015/button/button.model.js +1 -1
  98. package/esm2015/button/button.module.js +1 -1
  99. package/esm2015/button/public-api.js +1 -1
  100. package/esm2015/carousel/carousel-item.directive.js +1 -1
  101. package/esm2015/carousel/carousel.component.js +15 -15
  102. package/esm2015/carousel/carousel.module.js +1 -1
  103. package/esm2015/carousel/public-api.js +1 -1
  104. package/esm2015/checkbox/checkbox.component.js +3 -3
  105. package/esm2015/checkbox/checkbox.module.js +1 -1
  106. package/esm2015/checkbox/public-api.js +1 -1
  107. package/esm2015/color/color-picker.component.js +29 -29
  108. package/esm2015/color/color.component.js +3 -3
  109. package/esm2015/color/color.model.js +1 -1
  110. package/esm2015/color/color.module.js +1 -1
  111. package/esm2015/color/public-api.js +1 -1
  112. package/esm2015/core/clipboard/clipboard.directive.js +1 -1
  113. package/esm2015/core/clipboard/clipboard.service.js +1 -1
  114. package/esm2015/core/clipboard/index.js +1 -1
  115. package/esm2015/core/clipboard/public-api.js +1 -1
  116. package/esm2015/core/common/directives/auto-width.directive.js +1 -1
  117. package/esm2015/core/common/directives/button-blur.directive.js +1 -1
  118. package/esm2015/core/common/directives/button-loader.directive.js +1 -1
  119. package/esm2015/core/common/directives/data-qa.directive.js +1 -1
  120. package/esm2015/core/common/directives/index.js +1 -1
  121. package/esm2015/core/common/directives/menu-blur.directive.js +1 -1
  122. package/esm2015/core/common/directives/prevent-multi-click.directive.js +1 -1
  123. package/esm2015/core/common/directives/public-api.js +1 -1
  124. package/esm2015/core/common/index.js +1 -1
  125. package/esm2015/core/common/model/index.js +1 -1
  126. package/esm2015/core/common/model/papi.model.js +1 -1
  127. package/esm2015/core/common/model/public-api.js +1 -1
  128. package/esm2015/core/common/model/utilities.model.js +1 -1
  129. package/esm2015/core/common/model/wapi.model.js +1 -1
  130. package/esm2015/core/common/pipes/common-pipes.js +1 -1
  131. package/esm2015/core/common/pipes/index.js +1 -1
  132. package/esm2015/core/common/pipes/public-api.js +1 -1
  133. package/esm2015/core/common/public-api.js +1 -1
  134. package/esm2015/core/common/services/addon.service.js +1 -1
  135. package/esm2015/core/common/services/color.service.js +1 -1
  136. package/esm2015/core/common/services/cookie.service.js +1 -1
  137. package/esm2015/core/common/services/data-convertor.service.js +1 -1
  138. package/esm2015/core/common/services/file.service.js +1 -1
  139. package/esm2015/core/common/services/index.js +1 -1
  140. package/esm2015/core/common/services/jwt-helper.service.js +1 -1
  141. package/esm2015/core/common/services/public-api.js +1 -1
  142. package/esm2015/core/common/services/session.service.js +1 -1
  143. package/esm2015/core/common/services/utilities.service.js +1 -1
  144. package/esm2015/core/common/services/validator.service.js +1 -1
  145. package/esm2015/core/common/services/window-scrolling.service.js +5 -5
  146. package/esm2015/core/customization/customization.model.js +1 -1
  147. package/esm2015/core/customization/customization.service.js +1 -1
  148. package/esm2015/core/customization/index.js +1 -1
  149. package/esm2015/core/customization/public-api.js +1 -1
  150. package/esm2015/core/http/index.js +1 -1
  151. package/esm2015/core/http/interceptors/error.interceptor.js +1 -1
  152. package/esm2015/core/http/interceptors/index.js +1 -1
  153. package/esm2015/core/http/interceptors/loader.interceptor.js +1 -1
  154. package/esm2015/core/http/interceptors/profiler.interceptor.js +1 -1
  155. package/esm2015/core/http/public-api.js +1 -1
  156. package/esm2015/core/http/services/http.service.js +1 -1
  157. package/esm2015/core/http/services/loader.service.js +1 -1
  158. package/esm2015/core/index.js +1 -1
  159. package/esm2015/core/layout/index.js +1 -1
  160. package/esm2015/core/layout/layout.service.js +1 -1
  161. package/esm2015/core/layout/public-api.js +1 -1
  162. package/esm2015/core/layout/rtl.directive.js +1 -1
  163. package/esm2015/core/portal/attach.directive.js +1 -1
  164. package/esm2015/core/portal/index.js +1 -1
  165. package/esm2015/core/portal/portal.service.js +1 -1
  166. package/esm2015/core/portal/public-api.js +1 -1
  167. package/esm2015/core/portal/target.directive.js +1 -1
  168. package/esm2015/core/public-api.js +1 -1
  169. package/esm2015/core/scroll-to/index.js +1 -1
  170. package/esm2015/core/scroll-to/public-api.js +1 -1
  171. package/esm2015/core/scroll-to/scroll-to.service.js +1 -1
  172. package/esm2015/date/date.component.js +3 -3
  173. package/esm2015/date/date.module.js +1 -1
  174. package/esm2015/date/public-api.js +1 -1
  175. package/esm2015/dialog/default-dialog.component.js +2 -2
  176. package/esm2015/dialog/dialog.component.js +3 -3
  177. package/esm2015/dialog/dialog.model.js +1 -1
  178. package/esm2015/dialog/dialog.module.js +1 -1
  179. package/esm2015/dialog/dialog.service.js +1 -1
  180. package/esm2015/dialog/public-api.js +1 -1
  181. package/esm2015/field-title/field-title.component.js +3 -3
  182. package/esm2015/field-title/field-title.module.js +1 -1
  183. package/esm2015/field-title/public-api.js +1 -1
  184. package/esm2015/files-uploader/files-uploader.component.js +3 -3
  185. package/esm2015/files-uploader/files-uploader.module.js +1 -1
  186. package/esm2015/files-uploader/public-api.js +1 -1
  187. package/esm2015/form/field-generator.component.js +2 -2
  188. package/esm2015/form/form.component.js +2 -2
  189. package/esm2015/form/form.module.js +1 -1
  190. package/esm2015/form/indicators.component.js +3 -3
  191. package/esm2015/form/internal-button.component.js +2 -2
  192. package/esm2015/form/internal-carusel.component.js +2 -2
  193. package/esm2015/form/internal-carusel.service.js +1 -1
  194. package/esm2015/form/internal-list.component.js +2 -2
  195. package/esm2015/form/internal-menu.component.js +2 -2
  196. package/esm2015/form/internal-page.component.js +2 -2
  197. package/esm2015/form/internal-page.service.js +1 -1
  198. package/esm2015/form/public-api.js +1 -1
  199. package/esm2015/group-buttons/group-buttons.component.js +3 -3
  200. package/esm2015/group-buttons/group-buttons.module.js +1 -1
  201. package/esm2015/group-buttons/public-api.js +1 -1
  202. package/esm2015/icon/icon-generated-all.model.js +1 -1
  203. package/esm2015/icon/icon-generated.model.js +1 -1
  204. package/esm2015/icon/icon-registry.service.js +2 -2
  205. package/esm2015/icon/icon.component.js +1 -1
  206. package/esm2015/icon/icon.module.js +1 -1
  207. package/esm2015/icon/public-api.js +1 -1
  208. package/esm2015/image/image.component.js +3 -3
  209. package/esm2015/image/image.module.js +1 -1
  210. package/esm2015/image/public-api.js +1 -1
  211. package/esm2015/images-filmstrip/images-filmstrip.component.js +3 -3
  212. package/esm2015/images-filmstrip/images-filmstrip.module.js +1 -1
  213. package/esm2015/images-filmstrip/public-api.js +1 -1
  214. package/esm2015/list/list-actions.component.js +2 -2
  215. package/esm2015/list/list-carousel.component.js +2 -2
  216. package/esm2015/list/list-chooser.component.js +2 -2
  217. package/esm2015/list/list-pager.component.js +2 -2
  218. package/esm2015/list/list-sorting.component.js +2 -2
  219. package/esm2015/list/list-total.component.js +3 -3
  220. package/esm2015/list/list-views.component.js +2 -2
  221. package/esm2015/list/list.component.js +2 -2
  222. package/esm2015/list/list.model.js +1 -1
  223. package/esm2015/list/list.module.js +1 -1
  224. package/esm2015/list/public-api.js +1 -1
  225. package/esm2015/menu/menu-item.component.js +2 -2
  226. package/esm2015/menu/menu.component.js +2 -2
  227. package/esm2015/menu/menu.model.js +1 -1
  228. package/esm2015/menu/menu.module.js +1 -1
  229. package/esm2015/menu/public-api.js +1 -1
  230. package/esm2015/ngx-lib.module.js +1 -1
  231. package/esm2015/page-layout/page-layout.component.js +2 -2
  232. package/esm2015/page-layout/page-layout.module.js +1 -1
  233. package/esm2015/page-layout/public-api.js +1 -1
  234. package/esm2015/public-api.js +1 -1
  235. package/esm2015/quantity-selector/public-api.js +1 -1
  236. package/esm2015/quantity-selector/quantity-selector-validation.directive.js +1 -1
  237. package/esm2015/quantity-selector/quantity-selector.component.js +3 -3
  238. package/esm2015/quantity-selector/quantity-selector.module.js +1 -1
  239. package/esm2015/quantity-selector/quantity-selector.pipes.js +1 -1
  240. package/esm2015/query-builder/common/model/field.js +2 -0
  241. package/esm2015/query-builder/common/model/filter.js +1 -1
  242. package/esm2015/query-builder/common/model/legacy.js +1 -1
  243. package/esm2015/query-builder/common/model/operator-unit.js +1 -1
  244. package/esm2015/query-builder/common/model/operator.js +1 -1
  245. package/esm2015/query-builder/common/model/structure.js +1 -1
  246. package/esm2015/query-builder/common/model/type-map.js +1 -1
  247. package/esm2015/query-builder/common/model/type.js +1 -1
  248. package/esm2015/query-builder/common/services/output-query.service.js +5 -5
  249. package/esm2015/query-builder/common/services/type-convertor.service.js +1 -1
  250. package/esm2015/query-builder/public-api.js +1 -1
  251. package/esm2015/query-builder/query-builder-item/query-builder-item.component.js +28 -20
  252. package/esm2015/query-builder/query-builder-section/query-builder-section.component.js +3 -3
  253. package/esm2015/query-builder/query-builder.component.js +2 -2
  254. package/esm2015/query-builder/query-builder.module.js +1 -1
  255. package/esm2015/query-builder/query-builder.service.js +8 -20
  256. package/esm2015/rich-html-textarea/public-api.js +1 -1
  257. package/esm2015/rich-html-textarea/rich-html-textarea.component.js +3 -3
  258. package/esm2015/rich-html-textarea/rich-html-textarea.module.js +1 -1
  259. package/esm2015/search/public-api.js +1 -1
  260. package/esm2015/search/search.component.js +2 -2
  261. package/esm2015/search/search.model.js +1 -1
  262. package/esm2015/search/search.module.js +1 -1
  263. package/esm2015/select/public-api.js +1 -1
  264. package/esm2015/select/select.component.js +3 -3
  265. package/esm2015/select/select.module.js +1 -1
  266. package/esm2015/separator/public-api.js +1 -1
  267. package/esm2015/separator/separator.component.js +3 -3
  268. package/esm2015/separator/separator.module.js +1 -1
  269. package/esm2015/side-bar/public-api.js +1 -1
  270. package/esm2015/side-bar/side-bar.component.js +3 -3
  271. package/esm2015/side-bar/side-bar.model.js +1 -1
  272. package/esm2015/side-bar/side-bar.module.js +1 -1
  273. package/esm2015/signature/public-api.js +1 -1
  274. package/esm2015/signature/signature.component.js +3 -3
  275. package/esm2015/signature/signature.module.js +1 -1
  276. package/esm2015/size-detector/public-api.js +1 -1
  277. package/esm2015/size-detector/size-detector.component.js +2 -2
  278. package/esm2015/size-detector/size-detector.module.js +1 -1
  279. package/esm2015/slider/public-api.js +1 -1
  280. package/esm2015/slider/slider.component.js +3 -3
  281. package/esm2015/slider/slider.module.js +1 -1
  282. package/esm2015/smart-filters/boolean-filter/boolean-filter.component.js +2 -2
  283. package/esm2015/smart-filters/common/filter-actions.component.js +2 -2
  284. package/esm2015/smart-filters/common/model/base-filter-component.js +1 -1
  285. package/esm2015/smart-filters/common/model/creator.js +1 -1
  286. package/esm2015/smart-filters/common/model/field.js +1 -1
  287. package/esm2015/smart-filters/common/model/filter.js +1 -1
  288. package/esm2015/smart-filters/common/model/operator.js +1 -1
  289. package/esm2015/smart-filters/common/model/type.js +1 -1
  290. package/esm2015/smart-filters/date-filter/date-filter.component.js +2 -2
  291. package/esm2015/smart-filters/multi-select-filter/multi-select-filter.component.js +2 -2
  292. package/esm2015/smart-filters/number-filter/number-filter.component.js +2 -2
  293. package/esm2015/smart-filters/public-api.js +1 -1
  294. package/esm2015/smart-filters/smart-filters.component.js +3 -3
  295. package/esm2015/smart-filters/smart-filters.module.js +1 -1
  296. package/esm2015/smart-filters/text-filter/text-filter.component.js +2 -2
  297. package/esm2015/textarea/public-api.js +1 -1
  298. package/esm2015/textarea/textarea.component.js +3 -3
  299. package/esm2015/textarea/textarea.module.js +1 -1
  300. package/esm2015/textbox/public-api.js +1 -1
  301. package/esm2015/textbox/textbox-validation.directive.js +1 -1
  302. package/esm2015/textbox/textbox.component.js +3 -3
  303. package/esm2015/textbox/textbox.module.js +1 -1
  304. package/esm2015/textbox-icon/public-api.js +1 -1
  305. package/esm2015/textbox-icon/textbox-icon.component.js +2 -2
  306. package/esm2015/textbox-icon/textbox-icon.module.js +1 -1
  307. package/esm2015/top-bar/public-api.js +1 -1
  308. package/esm2015/top-bar/top-bar.component.js +3 -3
  309. package/esm2015/top-bar/top-bar.model.js +1 -1
  310. package/esm2015/top-bar/top-bar.module.js +1 -1
  311. package/fesm2015/pepperi-addons-ngx-lib-address.js +2 -2
  312. package/fesm2015/pepperi-addons-ngx-lib-address.js.map +1 -1
  313. package/fesm2015/pepperi-addons-ngx-lib-attachment.js +2 -2
  314. package/fesm2015/pepperi-addons-ngx-lib-attachment.js.map +1 -1
  315. package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.js +2 -2
  316. package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.js.map +1 -1
  317. package/fesm2015/pepperi-addons-ngx-lib-button.js +2 -2
  318. package/fesm2015/pepperi-addons-ngx-lib-button.js.map +1 -1
  319. package/fesm2015/pepperi-addons-ngx-lib-carousel.js +14 -14
  320. package/fesm2015/pepperi-addons-ngx-lib-carousel.js.map +1 -1
  321. package/fesm2015/pepperi-addons-ngx-lib-checkbox.js +2 -2
  322. package/fesm2015/pepperi-addons-ngx-lib-checkbox.js.map +1 -1
  323. package/fesm2015/pepperi-addons-ngx-lib-color.js +30 -30
  324. package/fesm2015/pepperi-addons-ngx-lib-color.js.map +1 -1
  325. package/fesm2015/pepperi-addons-ngx-lib-date.js +2 -2
  326. package/fesm2015/pepperi-addons-ngx-lib-date.js.map +1 -1
  327. package/fesm2015/pepperi-addons-ngx-lib-dialog.js +3 -3
  328. package/fesm2015/pepperi-addons-ngx-lib-dialog.js.map +1 -1
  329. package/fesm2015/pepperi-addons-ngx-lib-field-title.js +2 -2
  330. package/fesm2015/pepperi-addons-ngx-lib-field-title.js.map +1 -1
  331. package/fesm2015/pepperi-addons-ngx-lib-files-uploader.js +2 -2
  332. package/fesm2015/pepperi-addons-ngx-lib-files-uploader.js.map +1 -1
  333. package/fesm2015/pepperi-addons-ngx-lib-form.js +9 -9
  334. package/fesm2015/pepperi-addons-ngx-lib-form.js.map +1 -1
  335. package/fesm2015/pepperi-addons-ngx-lib-group-buttons.js +2 -2
  336. package/fesm2015/pepperi-addons-ngx-lib-group-buttons.js.map +1 -1
  337. package/fesm2015/pepperi-addons-ngx-lib-icon.js +1 -1
  338. package/fesm2015/pepperi-addons-ngx-lib-icon.js.map +1 -1
  339. package/fesm2015/pepperi-addons-ngx-lib-image.js +2 -2
  340. package/fesm2015/pepperi-addons-ngx-lib-image.js.map +1 -1
  341. package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.js +2 -2
  342. package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.js.map +1 -1
  343. package/fesm2015/pepperi-addons-ngx-lib-list.js +9 -9
  344. package/fesm2015/pepperi-addons-ngx-lib-list.js.map +1 -1
  345. package/fesm2015/pepperi-addons-ngx-lib-menu.js +2 -2
  346. package/fesm2015/pepperi-addons-ngx-lib-menu.js.map +1 -1
  347. package/fesm2015/pepperi-addons-ngx-lib-page-layout.js +1 -1
  348. package/fesm2015/pepperi-addons-ngx-lib-page-layout.js.map +1 -1
  349. package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.js +2 -2
  350. package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.js.map +1 -1
  351. package/fesm2015/pepperi-addons-ngx-lib-query-builder.js +41 -45
  352. package/fesm2015/pepperi-addons-ngx-lib-query-builder.js.map +1 -1
  353. package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.js +2 -2
  354. package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.js.map +1 -1
  355. package/fesm2015/pepperi-addons-ngx-lib-search.js +1 -1
  356. package/fesm2015/pepperi-addons-ngx-lib-search.js.map +1 -1
  357. package/fesm2015/pepperi-addons-ngx-lib-select.js +2 -2
  358. package/fesm2015/pepperi-addons-ngx-lib-select.js.map +1 -1
  359. package/fesm2015/pepperi-addons-ngx-lib-separator.js +2 -2
  360. package/fesm2015/pepperi-addons-ngx-lib-separator.js.map +1 -1
  361. package/fesm2015/pepperi-addons-ngx-lib-side-bar.js +2 -2
  362. package/fesm2015/pepperi-addons-ngx-lib-side-bar.js.map +1 -1
  363. package/fesm2015/pepperi-addons-ngx-lib-signature.js +2 -2
  364. package/fesm2015/pepperi-addons-ngx-lib-signature.js.map +1 -1
  365. package/fesm2015/pepperi-addons-ngx-lib-size-detector.js +1 -1
  366. package/fesm2015/pepperi-addons-ngx-lib-size-detector.js.map +1 -1
  367. package/fesm2015/pepperi-addons-ngx-lib-slider.js +2 -2
  368. package/fesm2015/pepperi-addons-ngx-lib-slider.js.map +1 -1
  369. package/fesm2015/pepperi-addons-ngx-lib-smart-filters.js +8 -8
  370. package/fesm2015/pepperi-addons-ngx-lib-smart-filters.js.map +1 -1
  371. package/fesm2015/pepperi-addons-ngx-lib-textarea.js +2 -2
  372. package/fesm2015/pepperi-addons-ngx-lib-textarea.js.map +1 -1
  373. package/fesm2015/pepperi-addons-ngx-lib-textbox-icon.js +1 -1
  374. package/fesm2015/pepperi-addons-ngx-lib-textbox-icon.js.map +1 -1
  375. package/fesm2015/pepperi-addons-ngx-lib-textbox.js +2 -2
  376. package/fesm2015/pepperi-addons-ngx-lib-textbox.js.map +1 -1
  377. package/fesm2015/pepperi-addons-ngx-lib-top-bar.js +2 -2
  378. package/fesm2015/pepperi-addons-ngx-lib-top-bar.js.map +1 -1
  379. package/fesm2015/pepperi-addons-ngx-lib.js +4 -4
  380. package/fesm2015/pepperi-addons-ngx-lib.js.map +1 -1
  381. package/field-title/field-title.component.theme.scss +0 -2
  382. package/field-title/pepperi-addons-ngx-lib-field-title.metadata.json +1 -1
  383. package/files-uploader/files-uploader.component.theme.scss +3 -2
  384. package/files-uploader/pepperi-addons-ngx-lib-files-uploader.metadata.json +1 -1
  385. package/form/indicators.component.theme.scss +7 -7
  386. package/form/pepperi-addons-ngx-lib-form.metadata.json +1 -1
  387. package/group-buttons/group-buttons.component.theme.scss +15 -15
  388. package/group-buttons/pepperi-addons-ngx-lib-group-buttons.metadata.json +1 -1
  389. package/image/image.component.theme.scss +33 -35
  390. package/image/pepperi-addons-ngx-lib-image.metadata.json +1 -1
  391. package/images-filmstrip/images-filmstrip.component.theme.scss +33 -32
  392. package/images-filmstrip/pepperi-addons-ngx-lib-images-filmstrip.metadata.json +1 -1
  393. package/list/list-total.component.theme.scss +10 -10
  394. package/list/pepperi-addons-ngx-lib-list.metadata.json +1 -1
  395. package/menu/pepperi-addons-ngx-lib-menu.metadata.json +1 -1
  396. package/package.json +5 -5
  397. package/page-layout/page-layout.component.theme.scss +7 -7
  398. package/page-layout/pepperi-addons-ngx-lib-page-layout.metadata.json +1 -1
  399. package/quantity-selector/pepperi-addons-ngx-lib-quantity-selector.metadata.json +1 -1
  400. package/quantity-selector/quantity-selector.component.theme.scss +79 -77
  401. package/query-builder/common/model/field.d.ts +8 -0
  402. package/query-builder/common/model/legacy.d.ts +5 -2
  403. package/query-builder/pepperi-addons-ngx-lib-query-builder.metadata.json +1 -1
  404. package/query-builder/query-builder-item/query-builder-item.component.d.ts +6 -3
  405. package/query-builder/query-builder-section/query-builder-section.component.theme.scss +6 -5
  406. package/query-builder/query-builder.service.d.ts +1 -1
  407. package/rich-html-textarea/pepperi-addons-ngx-lib-rich-html-textarea.metadata.json +1 -1
  408. package/rich-html-textarea/rich-html-textarea.component.theme.scss +243 -236
  409. package/search/pepperi-addons-ngx-lib-search.metadata.json +1 -1
  410. package/select/pepperi-addons-ngx-lib-select.metadata.json +1 -1
  411. package/select/select.component.theme.scss +97 -1
  412. package/separator/pepperi-addons-ngx-lib-separator.metadata.json +1 -1
  413. package/separator/separator.component.theme.scss +2 -2
  414. package/side-bar/pepperi-addons-ngx-lib-side-bar.metadata.json +1 -1
  415. package/side-bar/side-bar.component.theme.scss +26 -25
  416. package/signature/pepperi-addons-ngx-lib-signature.metadata.json +1 -1
  417. package/signature/signature.component.theme.scss +12 -28
  418. package/size-detector/pepperi-addons-ngx-lib-size-detector.metadata.json +1 -1
  419. package/slider/pepperi-addons-ngx-lib-slider.metadata.json +1 -1
  420. package/slider/slider.component.theme.scss +67 -65
  421. package/smart-filters/pepperi-addons-ngx-lib-smart-filters.metadata.json +1 -1
  422. package/smart-filters/smart-filters.component.theme.scss +9 -10
  423. package/src/assets/i18n/de.ngx-lib.json +77 -77
  424. package/src/assets/i18n/en.ngx-lib.json +139 -139
  425. package/src/assets/i18n/es.ngx-lib.json +77 -77
  426. package/src/assets/i18n/fr.ngx-lib.json +78 -78
  427. package/src/assets/i18n/he.ngx-lib.json +78 -78
  428. package/src/assets/i18n/hu.ngx-lib.json +78 -78
  429. package/src/assets/i18n/it.ngx-lib.json +78 -78
  430. package/src/assets/i18n/ja.ngx-lib.json +78 -78
  431. package/src/assets/i18n/nl.ngx-lib.json +78 -78
  432. package/src/assets/i18n/pl.ngx-lib.json +78 -78
  433. package/src/assets/i18n/pt.ngx-lib.json +78 -78
  434. package/src/assets/i18n/ru.ngx-lib.json +78 -78
  435. package/src/assets/i18n/zh.ngx-lib.json +76 -76
  436. package/src/assets/images/no-image.svg +41 -41
  437. package/src/core/style/abstracts/breakpoints.scss +37 -35
  438. package/src/core/style/abstracts/functions.scss +439 -422
  439. package/src/core/style/abstracts/mixins.scss +800 -797
  440. package/src/core/style/abstracts/variables.scss +545 -545
  441. package/src/core/style/base/base.scss +874 -873
  442. package/src/core/style/base/grids.scss +4 -4
  443. package/src/core/style/base/helpers.scss +70 -70
  444. package/src/core/style/base/typography.scss +259 -255
  445. package/src/core/style/components/button.scss +346 -349
  446. package/src/core/style/components/checkbox.scss +476 -473
  447. package/src/core/style/components/datetime.scss +182 -22
  448. package/src/core/style/components/file.scss +237 -219
  449. package/src/core/style/components/general.scss +988 -1088
  450. package/src/core/style/components/input.scss +91 -94
  451. package/src/core/style/components/quantity-selector.scss +17 -14
  452. package/src/core/style/components/radio-button.scss +152 -168
  453. package/src/core/style/components/select.scss +187 -185
  454. package/src/core/style/components/signature.scss +14 -12
  455. package/src/core/style/components/splitter.scss +67 -64
  456. package/src/core/style/components/textarea.scss +206 -195
  457. package/src/core/style/themes/black-theme.scss +7 -7
  458. package/src/core/style/themes/default-theme.scss +144 -144
  459. package/src/core/style/themes/light-theme.scss +7 -7
  460. package/src/core/style/themes/nature-theme.scss +7 -7
  461. package/src/core/style/vendors/normalize.scss +497 -497
  462. package/textarea/pepperi-addons-ngx-lib-textarea.metadata.json +1 -1
  463. package/textarea/textarea.component.theme.scss +3 -2
  464. package/textbox/pepperi-addons-ngx-lib-textbox.metadata.json +1 -1
  465. package/textbox/textbox.component.theme.scss +3 -3
  466. package/textbox-icon/pepperi-addons-ngx-lib-textbox-icon.metadata.json +1 -1
  467. package/theming.scss +126 -224
  468. package/top-bar/pepperi-addons-ngx-lib-top-bar.metadata.json +1 -1
  469. package/top-bar/top-bar.component.theme.scss +9 -9
  470. package/form/form.component.theme.scss +0 -2
  471. package/form/internal-button.component.theme.scss +0 -2
  472. package/form/internal-menu.component.theme.scss +0 -3
  473. package/list/list-actions.component.theme.scss +0 -3
  474. package/list/list-carousel.component.theme.scss +0 -9
  475. package/list/list-chooser.component.theme.scss +0 -3
  476. package/list/list-pager.component.theme.scss +0 -3
  477. package/list/list-sorting.component.theme.scss +0 -3
  478. package/list/list-views.component.theme.scss +0 -3
  479. package/list/list.component.theme.scss +0 -5
  480. package/list/list_old.component.theme.scss +0 -5
  481. package/menu/menu.component.theme.scss +0 -2
  482. package/search/search.component.theme.scss +0 -3
  483. package/textbox-icon/textbox-icon.component.theme.scss +0 -3
@@ -37,7 +37,7 @@ export class PepInternalMenuComponent {
37
37
  PepInternalMenuComponent.decorators = [
38
38
  { type: Component, args: [{
39
39
  selector: 'pep-internal-menu',
40
- template: "<ng-container *ngIf=\"options?.length > 0; then subMenuBlock; else noSubMenuBlock\"></ng-container>\r\n<ng-template #noSubMenuBlock>\r\n <button (click)=\"menuClicked($event)\" title=\"{{ label }}\" mat-button\r\n class=\"pep-button icon-button weak {{ layoutType === 'table' ? 'sm' : 'md' }}\" [ngClass]=\"{\r\n 'lock-events': disabled,\r\n 'left-alignment': xAlignment == 'left',\r\n 'right-alignment': xAlignment == 'right',\r\n 'center-alignment': xAlignment == 'center',\r\n 'invert': invertClass\r\n }\">\r\n <mat-icon>\r\n <pep-icon name=\"system_menu\">\r\n </pep-icon>\r\n </mat-icon>\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #subMenuBlock>\r\n <button mat-button [matMenuTriggerFor]=\"menu\" menu-blur\r\n class=\"pep-button icon-button weak {{ layoutType === 'table' ? 'sm' : 'md' }}\" [ngClass]=\"{\r\n 'left-alignment': xAlignment == 'left',\r\n 'right-alignment': xAlignment == 'right',\r\n 'center-alignment': xAlignment == 'center',\r\n 'invert': invertClass\r\n }\" title=\"{{ label }}\">\r\n <mat-icon>\r\n <pep-icon name=\"system_menu\">\r\n </pep-icon>\r\n </mat-icon>\r\n </button>\r\n\r\n <mat-menu #menu=\"matMenu\" xPosition=\"{{xAlignment == 'right' ? 'after' : 'before'}}\"\r\n [ngClass]=\"{ rtlMenu: xAlignment == 'right' }\">\r\n <button *ngFor=\"let option of options\" mat-menu-item (click)=\"menuItemClicked(option.key)\">\r\n <span>{{ option.value | translate }}</span>\r\n </button>\r\n </mat-menu>\r\n\r\n</ng-template>",
40
+ template: "<ng-container *ngIf=\"options?.length > 0; then subMenuBlock; else noSubMenuBlock\"></ng-container>\n<ng-template #noSubMenuBlock>\n <button (click)=\"menuClicked($event)\" title=\"{{ label }}\" mat-button\n class=\"pep-button icon-button weak {{ layoutType === 'table' ? 'sm' : 'md' }}\" [ngClass]=\"{\n 'lock-events': disabled,\n 'left-alignment': xAlignment == 'left',\n 'right-alignment': xAlignment == 'right',\n 'center-alignment': xAlignment == 'center',\n 'invert': invertClass\n }\">\n <mat-icon>\n <pep-icon name=\"system_menu\">\n </pep-icon>\n </mat-icon>\n </button>\n</ng-template>\n\n<ng-template #subMenuBlock>\n <button mat-button [matMenuTriggerFor]=\"menu\" menu-blur\n class=\"pep-button icon-button weak {{ layoutType === 'table' ? 'sm' : 'md' }}\" [ngClass]=\"{\n 'left-alignment': xAlignment == 'left',\n 'right-alignment': xAlignment == 'right',\n 'center-alignment': xAlignment == 'center',\n 'invert': invertClass\n }\" title=\"{{ label }}\">\n <mat-icon>\n <pep-icon name=\"system_menu\">\n </pep-icon>\n </mat-icon>\n </button>\n\n <mat-menu #menu=\"matMenu\" xPosition=\"{{xAlignment == 'right' ? 'after' : 'before'}}\"\n [ngClass]=\"{ rtlMenu: xAlignment == 'right' }\">\n <button *ngFor=\"let option of options\" mat-menu-item (click)=\"menuItemClicked(option.key)\">\n <span>{{ option.value | translate }}</span>\n </button>\n </mat-menu>\n\n</ng-template>",
41
41
  changeDetection: ChangeDetectionStrategy.OnPush,
42
42
  styles: [":host{height:inherit;display:grid}:host>*{align-self:center}.pep-button,.pepperi-button{cursor:pointer}.pep-button.left-alignment,.pepperi-button.left-alignment{justify-self:flex-start}.pep-button.center-alignment,.pepperi-button.center-alignment{justify-self:center}.pep-button.right-alignment,.pepperi-button.right-alignment{justify-self:flex-end}"]
43
43
  },] }
@@ -52,4 +52,4 @@ PepInternalMenuComponent.propDecorators = {
52
52
  layoutType: [{ type: Input }],
53
53
  elementClick: [{ type: Output }]
54
54
  };
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL2Zvcm0vaW50ZXJuYWwtbWVudS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFFWix1QkFBdUIsR0FFMUIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUlILDRCQUE0QixHQUUvQixNQUFNLHlCQUF5QixDQUFDO0FBUWpDLE1BQU0sT0FBTyx3QkFBd0I7SUFOckM7UUFPYSxRQUFHLEdBQUcsRUFBRSxDQUFDO1FBQ1QsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsZUFBVSxHQUEyQiw0QkFBNEIsQ0FBQztRQUMzRSwrQkFBK0I7UUFDdEIsWUFBTyxHQUFpQixFQUFFLENBQUM7UUFDM0IsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFFNUIsZ0JBQVcsR0FBRyxNQUFNLENBQUM7UUFFWixlQUFVLEdBQWtCLE1BQU0sQ0FBQztRQUU1QyxpQkFBWSxHQUFzQyxJQUFJLFlBQVksRUFBdUIsQ0FBQztJQXdCOUYsQ0FBQztJQXZCRyx3R0FBd0c7SUFFeEcsV0FBVztRQUNQLDJCQUEyQjtRQUMzQix1Q0FBdUM7UUFDdkMsSUFBSTtRQUNKLDRCQUE0QjtRQUM1Qix3Q0FBd0M7UUFDeEMsSUFBSTtJQUNSLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBVTtRQUNsQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztZQUNuQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDYixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsVUFBVSxFQUFFLEtBQUssQ0FBQyxLQUFLO1NBQzFCLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxlQUFlLENBQUMsT0FBWTtRQUN4QixrREFBa0Q7UUFDbEQsNkNBQTZDO0lBQ2pELENBQUM7OztZQTFDSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLG1CQUFtQjtnQkFDN0IsNnJEQUE2QztnQkFFN0MsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2xEOzs7a0JBRUksS0FBSztvQkFDTCxLQUFLO3VCQUNMLEtBQUs7eUJBQ0wsS0FBSztzQkFFTCxLQUFLOzBCQUNMLEtBQUs7eUJBSUwsS0FBSzsyQkFDTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIENvbXBvbmVudCxcclxuICAgIElucHV0LFxyXG4gICAgT3V0cHV0LFxyXG4gICAgRXZlbnRFbWl0dGVyLFxyXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICAgIE9uRGVzdHJveSxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICAgIFBlcExheW91dFR5cGUsXHJcbiAgICBJUGVwT3B0aW9uLFxyXG4gICAgUGVwSG9yaXpvbnRhbEFsaWdubWVudCxcclxuICAgIERFRkFVTFRfSE9SSVpPTlRBTF9BTElHTk1FTlQsXHJcbiAgICBJUGVwRmllbGRDbGlja0V2ZW50LFxyXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdwZXAtaW50ZXJuYWwtbWVudScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW50ZXJuYWwtbWVudS5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9pbnRlcm5hbC1tZW51LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBlcEludGVybmFsTWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgICBASW5wdXQoKSBrZXkgPSAnJztcclxuICAgIEBJbnB1dCgpIGxhYmVsID0gJyc7XHJcbiAgICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgeEFsaWdubWVudDogUGVwSG9yaXpvbnRhbEFsaWdubWVudCA9IERFRkFVTFRfSE9SSVpPTlRBTF9BTElHTk1FTlQ7XHJcbiAgICAvLyBASW5wdXQoKSBoYXNTdWJNZW51ID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBvcHRpb25zOiBJUGVwT3B0aW9uW10gPSBbXTtcclxuICAgIEBJbnB1dCgpIGludmVydENsYXNzID0gdHJ1ZTtcclxuXHJcbiAgICBjb250cm9sVHlwZSA9ICdtZW51JztcclxuXHJcbiAgICBASW5wdXQoKSBsYXlvdXRUeXBlOiBQZXBMYXlvdXRUeXBlID0gJ2Zvcm0nO1xyXG4gICAgQE91dHB1dCgpXHJcbiAgICBlbGVtZW50Q2xpY2s6IEV2ZW50RW1pdHRlcjxJUGVwRmllbGRDbGlja0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8SVBlcEZpZWxkQ2xpY2tFdmVudD4oKTtcclxuICAgIC8vIEBPdXRwdXQoKSBtZW51SXRlbUNsaWNrOiBFdmVudEVtaXR0ZXI8SVBlcEZpZWxkQ2xpY2tFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPElQZXBGaWVsZENsaWNrRXZlbnQ+KCk7XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgLy8gaWYgKHRoaXMuZWxlbWVudENsaWNrKSB7XHJcbiAgICAgICAgLy8gICAgIHRoaXMuZWxlbWVudENsaWNrLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIC8vIGlmICh0aGlzLm1lbnVJdGVtQ2xpY2spIHtcclxuICAgICAgICAvLyAgICAgdGhpcy5tZW51SXRlbUNsaWNrLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgfVxyXG5cclxuICAgIG1lbnVDbGlja2VkKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmVsZW1lbnRDbGljay5lbWl0KHtcclxuICAgICAgICAgICAga2V5OiB0aGlzLmtleSxcclxuICAgICAgICAgICAgY29udHJvbFR5cGU6IHRoaXMuY29udHJvbFR5cGUsXHJcbiAgICAgICAgICAgIGV2ZW50V2hpY2g6IGV2ZW50LndoaWNoLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG1lbnVJdGVtQ2xpY2tlZChpdGVtS2V5OiBhbnkpOiB2b2lkIHtcclxuICAgICAgICAvLyBOb3QgaW4gdXNlIGNvbW1lbnQgaW4gdmVyc2lvbiAxNi41NSBmb3Igd2ViYXBwLlxyXG4gICAgICAgIC8vIHRoaXMubWVudUl0ZW1DbGljay5lbWl0KHsga2V5OiBpdGVtS2V5IH0pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL2Zvcm0vaW50ZXJuYWwtbWVudS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFFWix1QkFBdUIsR0FFMUIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUlILDRCQUE0QixHQUUvQixNQUFNLHlCQUF5QixDQUFDO0FBUWpDLE1BQU0sT0FBTyx3QkFBd0I7SUFOckM7UUFPYSxRQUFHLEdBQUcsRUFBRSxDQUFDO1FBQ1QsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsZUFBVSxHQUEyQiw0QkFBNEIsQ0FBQztRQUMzRSwrQkFBK0I7UUFDdEIsWUFBTyxHQUFpQixFQUFFLENBQUM7UUFDM0IsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFFNUIsZ0JBQVcsR0FBRyxNQUFNLENBQUM7UUFFWixlQUFVLEdBQWtCLE1BQU0sQ0FBQztRQUU1QyxpQkFBWSxHQUFzQyxJQUFJLFlBQVksRUFBdUIsQ0FBQztJQXdCOUYsQ0FBQztJQXZCRyx3R0FBd0c7SUFFeEcsV0FBVztRQUNQLDJCQUEyQjtRQUMzQix1Q0FBdUM7UUFDdkMsSUFBSTtRQUNKLDRCQUE0QjtRQUM1Qix3Q0FBd0M7UUFDeEMsSUFBSTtJQUNSLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBVTtRQUNsQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztZQUNuQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDYixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsVUFBVSxFQUFFLEtBQUssQ0FBQyxLQUFLO1NBQzFCLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxlQUFlLENBQUMsT0FBWTtRQUN4QixrREFBa0Q7UUFDbEQsNkNBQTZDO0lBQ2pELENBQUM7OztZQTFDSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLG1CQUFtQjtnQkFDN0IsaW5EQUE2QztnQkFFN0MsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2xEOzs7a0JBRUksS0FBSztvQkFDTCxLQUFLO3VCQUNMLEtBQUs7eUJBQ0wsS0FBSztzQkFFTCxLQUFLOzBCQUNMLEtBQUs7eUJBSUwsS0FBSzsyQkFDTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBPbkRlc3Ryb3ksXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBQZXBMYXlvdXRUeXBlLFxuICAgIElQZXBPcHRpb24sXG4gICAgUGVwSG9yaXpvbnRhbEFsaWdubWVudCxcbiAgICBERUZBVUxUX0hPUklaT05UQUxfQUxJR05NRU5ULFxuICAgIElQZXBGaWVsZENsaWNrRXZlbnQsXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwZXAtaW50ZXJuYWwtbWVudScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ludGVybmFsLW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ludGVybmFsLW1lbnUuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUGVwSW50ZXJuYWxNZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICBASW5wdXQoKSBrZXkgPSAnJztcbiAgICBASW5wdXQoKSBsYWJlbCA9ICcnO1xuICAgIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gICAgQElucHV0KCkgeEFsaWdubWVudDogUGVwSG9yaXpvbnRhbEFsaWdubWVudCA9IERFRkFVTFRfSE9SSVpPTlRBTF9BTElHTk1FTlQ7XG4gICAgLy8gQElucHV0KCkgaGFzU3ViTWVudSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIG9wdGlvbnM6IElQZXBPcHRpb25bXSA9IFtdO1xuICAgIEBJbnB1dCgpIGludmVydENsYXNzID0gdHJ1ZTtcblxuICAgIGNvbnRyb2xUeXBlID0gJ21lbnUnO1xuXG4gICAgQElucHV0KCkgbGF5b3V0VHlwZTogUGVwTGF5b3V0VHlwZSA9ICdmb3JtJztcbiAgICBAT3V0cHV0KClcbiAgICBlbGVtZW50Q2xpY2s6IEV2ZW50RW1pdHRlcjxJUGVwRmllbGRDbGlja0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8SVBlcEZpZWxkQ2xpY2tFdmVudD4oKTtcbiAgICAvLyBAT3V0cHV0KCkgbWVudUl0ZW1DbGljazogRXZlbnRFbWl0dGVyPElQZXBGaWVsZENsaWNrRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxJUGVwRmllbGRDbGlja0V2ZW50PigpO1xuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIC8vIGlmICh0aGlzLmVsZW1lbnRDbGljaykge1xuICAgICAgICAvLyAgICAgdGhpcy5lbGVtZW50Q2xpY2sudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgLy8gfVxuICAgICAgICAvLyBpZiAodGhpcy5tZW51SXRlbUNsaWNrKSB7XG4gICAgICAgIC8vICAgICB0aGlzLm1lbnVJdGVtQ2xpY2sudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgLy8gfVxuICAgIH1cblxuICAgIG1lbnVDbGlja2VkKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lbGVtZW50Q2xpY2suZW1pdCh7XG4gICAgICAgICAgICBrZXk6IHRoaXMua2V5LFxuICAgICAgICAgICAgY29udHJvbFR5cGU6IHRoaXMuY29udHJvbFR5cGUsXG4gICAgICAgICAgICBldmVudFdoaWNoOiBldmVudC53aGljaCxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbWVudUl0ZW1DbGlja2VkKGl0ZW1LZXk6IGFueSk6IHZvaWQge1xuICAgICAgICAvLyBOb3QgaW4gdXNlIGNvbW1lbnQgaW4gdmVyc2lvbiAxNi41NSBmb3Igd2ViYXBwLlxuICAgICAgICAvLyB0aGlzLm1lbnVJdGVtQ2xpY2suZW1pdCh7IGtleTogaXRlbUtleSB9KTtcbiAgICB9XG59XG4iXX0=
@@ -321,7 +321,7 @@ PepInternalPageComponent.CURRENT_ADDITIONAL_API_NAME = 'item_details_currentAddi
321
321
  PepInternalPageComponent.decorators = [
322
322
  { type: Component, args: [{
323
323
  selector: 'pep-internal-page',
324
- template: "<ng-template #matrixHeaderTemplate>\r\n <div class=\"matrix-title-container pep-border-bottom align-{{\r\n field.xAlignment\r\n }}\" title=\"{{ field.label }}\">\r\n <span class=\"block-with-text body-md\">{{ field.label }}</span>\r\n\r\n <div class=\"buttons-container pep-spacing-element-negative pull-right flip\">\r\n <ng-container *ngIf=\"\r\n currentViewType?.Key == 'OrderCenterMatrix' &&\r\n additionalApiNames &&\r\n additionalApiNames.length > 0\r\n \">\r\n <button class=\"pep-spacing-element pep-button icon-button sm weak\" mat-button [matMenuTriggerFor]=\"menu\"\r\n menu-blur>\r\n <span class=\"pull-left flip\" *ngIf=\"currentAdditionalApiName\">&nbsp;{{\r\n currentAdditionalApiName?.Value }}&nbsp;</span>\r\n\r\n <mat-icon [ngClass]=\"{'pull-left flip': currentAdditionalApiName}\">\r\n <pep-icon name=\"system_info\"></pep-icon>\r\n </mat-icon>\r\n </button>\r\n <mat-menu #menu=\"matMenu\" xPosition=\"before\">\r\n <button mat-menu-item [ngClass]=\"{\r\n selected: currentAdditionalApiName === null\r\n }\" (click)=\"changeAdditionalApiName(null)\">\r\n <span>{{ \"LIST.NONE\" | translate }}</span>\r\n </button>\r\n <button mat-menu-item [ngClass]=\"{\r\n selected:\r\n currentAdditionalApiName?.Key ==\r\n additionalApiName?.Key\r\n }\" *ngFor=\"let additionalApiName of additionalApiNames\"\r\n (click)=\"changeAdditionalApiName(additionalApiName)\">\r\n <span>{{ additionalApiName.Value }}</span>\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n <ng-container *ngIf=\"childViewTypes && childViewTypes.length > 1\">\r\n <button class=\"pep-spacing-element pep-button icon-button sm weak\" mat-button\r\n [matMenuTriggerFor]=\"viewsMenu\" menu-blur>\r\n <mat-icon>\r\n <pep-icon name=\"view_card_md\"></pep-icon>\r\n </mat-icon>\r\n </button>\r\n\r\n <mat-menu #viewsMenu=\"matMenu\" xPosition=\"before\">\r\n <button mat-menu-item [ngClass]=\"{\r\n selected: currentViewType?.Key == viewType?.Key\r\n }\" *ngFor=\"let viewType of childViewTypes\" (click)=\"changeChildrenViewType(viewType?.Key)\">\r\n <mat-icon [ngSwitch]=\"viewType?.Key\">\r\n <pep-icon *ngSwitchCase=\"'OrderCenterMatrix'\" name=\"view_matrix\"></pep-icon>\r\n <pep-icon *ngSwitchCase=\"'OrderCenterFlatMatrixGrid'\" name=\"view_table\"></pep-icon>\r\n <pep-icon *ngSwitchCase=\"'OrderCenterFlatMatrixLine'\" name=\"view_line\"></pep-icon>\r\n </mat-icon>\r\n <span>{{ viewType?.Value }}</span>\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n</ng-template>\r\n\r\n<ng-template #matrixTemplate>\r\n <div #matrixContainer class=\"matrix-container\">\r\n <pep-internal-list (valueChange)=\"onCustomizeObjectChanged($event)\" [parentScroll]=\"matrixContainer\"\r\n (fieldClick)=\"onCustomizeFieldClick($event)\" [totalsRow]=\"totalsRow\"></pep-internal-list>\r\n </div>\r\n</ng-template>\r\n\r\n<div #mainViewCont id=\"mainViewCont\" [ngStyle]=\"{ 'max-width': viewWidth, 'max-height': viewHeight }\">\r\n <div #my1mm id=\"my1_mm\" style=\"height:1mm;width:1mm;visibility: hidden;\"></div>\r\n <ng-container *ngIf=\"coverChildTable && uiControl != null\">\r\n <div class=\"table-cover\"></div>\r\n <button (click)=\"showMatrixDialog()\" class=\"pep-button strong sm table-cover-button\"\r\n [ngClass]=\"{ 'lineview-btn': currentViewType?.Key == 'OrderCenterFlatMatrixLine'}\">\r\n {{ \"INTERNAL_PAGE.CLICK_TO_ORDER\" | translate }}\r\n </button>\r\n </ng-container>\r\n\r\n <ng-container *ngTemplateOutlet=\"matrixHeaderTemplate\"></ng-container>\r\n <ng-container #orgCont></ng-container>\r\n</div>\r\n\r\n<ng-template #matrixDialogTemplate>\r\n\r\n <div mat-dialog-title>\r\n <ng-container *ngTemplateOutlet=\"matrixHeaderTemplate\"></ng-container>\r\n </div>\r\n\r\n <div mat-dialog-content>\r\n <ng-container #dialogCont></ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- <div id=\"childGridModal\" bsModal (onShown)=\"onShown()\" (onHidden)=\"onHidden()\" #childModal=\"bs-modal\" class=\"modal\"\r\n tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"gridModalLabel\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" role=\"document\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-body matrix-dialog-body\">\r\n <ng-container #modalCont></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</div> -->",
324
+ template: "<ng-template #matrixHeaderTemplate>\n <div class=\"matrix-title-container pep-border-bottom align-{{\n field.xAlignment\n }}\" title=\"{{ field.label }}\">\n <span class=\"block-with-text body-md\">{{ field.label }}</span>\n\n <div class=\"buttons-container pep-spacing-element-negative pull-right flip\">\n <ng-container *ngIf=\"\n currentViewType?.Key == 'OrderCenterMatrix' &&\n additionalApiNames &&\n additionalApiNames.length > 0\n \">\n <button class=\"pep-spacing-element pep-button icon-button sm weak\" mat-button [matMenuTriggerFor]=\"menu\"\n menu-blur>\n <span class=\"pull-left flip\" *ngIf=\"currentAdditionalApiName\">&nbsp;{{\n currentAdditionalApiName?.Value }}&nbsp;</span>\n\n <mat-icon [ngClass]=\"{'pull-left flip': currentAdditionalApiName}\">\n <pep-icon name=\"system_info\"></pep-icon>\n </mat-icon>\n </button>\n <mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <button mat-menu-item [ngClass]=\"{\n selected: currentAdditionalApiName === null\n }\" (click)=\"changeAdditionalApiName(null)\">\n <span>{{ \"LIST.NONE\" | translate }}</span>\n </button>\n <button mat-menu-item [ngClass]=\"{\n selected:\n currentAdditionalApiName?.Key ==\n additionalApiName?.Key\n }\" *ngFor=\"let additionalApiName of additionalApiNames\"\n (click)=\"changeAdditionalApiName(additionalApiName)\">\n <span>{{ additionalApiName.Value }}</span>\n </button>\n </mat-menu>\n </ng-container>\n <ng-container *ngIf=\"childViewTypes && childViewTypes.length > 1\">\n <button class=\"pep-spacing-element pep-button icon-button sm weak\" mat-button\n [matMenuTriggerFor]=\"viewsMenu\" menu-blur>\n <mat-icon>\n <pep-icon name=\"view_card_md\"></pep-icon>\n </mat-icon>\n </button>\n\n <mat-menu #viewsMenu=\"matMenu\" xPosition=\"before\">\n <button mat-menu-item [ngClass]=\"{\n selected: currentViewType?.Key == viewType?.Key\n }\" *ngFor=\"let viewType of childViewTypes\" (click)=\"changeChildrenViewType(viewType?.Key)\">\n <mat-icon [ngSwitch]=\"viewType?.Key\">\n <pep-icon *ngSwitchCase=\"'OrderCenterMatrix'\" name=\"view_matrix\"></pep-icon>\n <pep-icon *ngSwitchCase=\"'OrderCenterFlatMatrixGrid'\" name=\"view_table\"></pep-icon>\n <pep-icon *ngSwitchCase=\"'OrderCenterFlatMatrixLine'\" name=\"view_line\"></pep-icon>\n </mat-icon>\n <span>{{ viewType?.Value }}</span>\n </button>\n </mat-menu>\n </ng-container>\n </div>\n </div>\n\n</ng-template>\n\n<ng-template #matrixTemplate>\n <div #matrixContainer class=\"matrix-container\">\n <pep-internal-list (valueChange)=\"onCustomizeObjectChanged($event)\" [parentScroll]=\"matrixContainer\"\n (fieldClick)=\"onCustomizeFieldClick($event)\" [totalsRow]=\"totalsRow\"></pep-internal-list>\n </div>\n</ng-template>\n\n<div #mainViewCont id=\"mainViewCont\" [ngStyle]=\"{ 'max-width': viewWidth, 'max-height': viewHeight }\">\n <div #my1mm id=\"my1_mm\" style=\"height:1mm;width:1mm;visibility: hidden;\"></div>\n <ng-container *ngIf=\"coverChildTable && uiControl != null\">\n <div class=\"table-cover\"></div>\n <button (click)=\"showMatrixDialog()\" class=\"pep-button strong sm table-cover-button\"\n [ngClass]=\"{ 'lineview-btn': currentViewType?.Key == 'OrderCenterFlatMatrixLine'}\">\n {{ \"INTERNAL_PAGE.CLICK_TO_ORDER\" | translate }}\n </button>\n </ng-container>\n\n <ng-container *ngTemplateOutlet=\"matrixHeaderTemplate\"></ng-container>\n <ng-container #orgCont></ng-container>\n</div>\n\n<ng-template #matrixDialogTemplate>\n\n <div mat-dialog-title>\n <ng-container *ngTemplateOutlet=\"matrixHeaderTemplate\"></ng-container>\n </div>\n\n <div mat-dialog-content>\n <ng-container #dialogCont></ng-container>\n </div>\n</ng-template>\n\n<!-- <div id=\"childGridModal\" bsModal (onShown)=\"onShown()\" (onHidden)=\"onHidden()\" #childModal=\"bs-modal\" class=\"modal\"\n tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"gridModalLabel\" aria-hidden=\"true\">\n <div class=\"modal-dialog\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-body matrix-dialog-body\">\n <ng-container #modalCont></ng-container>\n </div>\n </div>\n </div>\n</div> -->",
325
325
  providers: [PepInternalPageService],
326
326
  changeDetection: ChangeDetectionStrategy.OnPush,
327
327
  styles: [":host{display:grid;width:inherit;height:inherit}.matrix-title-container{padding:0;height:2.5rem;height:var(--pep-form-field-height,2.5rem);display:flex;align-items:flex-end}.matrix-title-container .block-with-text{width:100%;max-height:inherit;font-weight:600;font-weight:var(--pep-font-weight-bold,600);display:block;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.matrix-title-container .buttons-container{display:flex;align-self:center}.matrix-title-container .buttons-container .pep-button,.matrix-title-container .buttons-container .pepperi-button{width:-webkit-max-content;width:-moz-max-content;width:max-content}#mainViewCont{width:100%;height:inherit;overflow:hidden;padding:0 .25rem;padding:0 var(--pep-spacing-xs,.25rem)}#mainViewCont .table-cover{background-color:#fff;z-index:98;position:absolute;top:0;width:100%;height:inherit;opacity:.5}#mainViewCont .table-cover-button{position:absolute;left:50%;transform:translate(-50%,-50%);top:calc(50% + 2.5rem);top:calc(50% + var(--pep-form-field-height, 2.5rem));z-index:99}#mainViewCont .table-cover-button.lineview-btn{top:calc(2 * 2.5rem);top:calc(2 * var(--pep-form-field-height, 2.5rem));transform:translate(-50%)}#mainViewCont .underCover{max-height:inherit;overflow:hidden}#mainViewCont ::ng-deep.table-header{top:unset!important}"]
@@ -348,4 +348,4 @@ PepInternalPageComponent.propDecorators = {
348
348
  matrixDialogTemplate: [{ type: ViewChild, args: ['matrixDialogTemplate', { read: TemplateRef },] }],
349
349
  customList: [{ type: ViewChild, args: [PepInternalListComponent,] }]
350
350
  };
351
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtcGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL2Zvcm0vaW50ZXJuYWwtcGFnZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFHVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBQ1QsVUFBVSxFQUNWLGdCQUFnQixFQUNoQixXQUFXLEVBQ1gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixHQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWEsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFakUsT0FBTyxFQUlILHVCQUF1QixFQUd2QixVQUFVLEdBQ2IsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQ0gsd0JBQXdCLEdBRTNCLE1BQU0sMkJBQTJCLENBQUM7QUFLbkMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFTekYsTUFBTSxPQUFPLHdCQUF3QjtJQXVEakMsWUFDYyxFQUFlLEVBQ2pCLGFBQStCLEVBQy9CLG1CQUEyQyxFQUM1QyxvQkFBNkMsRUFDNUMsVUFBc0IsRUFDdEIsaUJBQW9DO1FBTGxDLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDakIsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBQy9CLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBd0I7UUFDNUMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUF5QjtRQUM1QyxlQUFVLEdB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QUMsTUFBTTs7YUFDbEQ7OztZQS9CbUIsV0FBVztZQW9CdEIsZ0JBQWdCO1lBbkJoQixzQkFBc0I7WUFNM0IsdUJBQXVCO1lBYnZCLFVBQVU7WUFJVixpQkFBaUI7OztvQkF3Q2hCLEtBQUs7eUJBQ0wsS0FBSztzQ0FFTCxNQUFNO3FDQUVOLE1BQU07b0JBR04sU0FBUyxTQUFDLE9BQU87MkJBQ2pCLFNBQVMsU0FBQyxjQUFjO3NCQUV4QixTQUFTLFNBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFO3lCQUMvQyxTQUFTLFNBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFOzZCQUVsRCxTQUFTLFNBQUMsZ0JBQWdCO21DQUMxQixTQUFTLFNBQUMsc0JBQXNCLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO3lCQUd2RCxTQUFTLFNBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIENvbXBvbmVudCxcclxuICAgIE9uSW5pdCxcclxuICAgIE9uRGVzdHJveSxcclxuICAgIElucHV0LFxyXG4gICAgT3V0cHV0LFxyXG4gICAgRXZlbnRFbWl0dGVyLFxyXG4gICAgVmlld0NoaWxkLFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIFZpZXdDb250YWluZXJSZWYsXHJcbiAgICBUZW1wbGF0ZVJlZixcclxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybUJ1aWxkZXIgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFBlcEludGVybmFsUGFnZVNlcnZpY2UgfSBmcm9tICcuL2ludGVybmFsLXBhZ2Uuc2VydmljZSc7XHJcblxyXG5pbXBvcnQge1xyXG4gICAgUGVwTGF5b3V0VHlwZSxcclxuICAgIFVJQ29udHJvbCxcclxuICAgIEtleVZhbHVlUGFpcixcclxuICAgIFBlcEN1c3RvbWl6YXRpb25TZXJ2aWNlLFxyXG4gICAgVUlDb250cm9sRmllbGQsXHJcbiAgICBPYmplY3RzRGF0YSxcclxuICAgIEZJRUxEX1RZUEUsXHJcbn0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xyXG5pbXBvcnQge1xyXG4gICAgUGVwSW50ZXJuYWxMaXN0Q29tcG9uZW50LFxyXG4gICAgUGVwTGlzdFZpZXdUeXBlLFxyXG59IGZyb20gJy4vaW50ZXJuYWwtbGlzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gICAgSVBlcEZvcm1GaWVsZENsaWNrRXZlbnQsXHJcbiAgICBJUGVwRm9ybUZpZWxkVmFsdWVDaGFuZ2VFdmVudCxcclxufSBmcm9tICcuL2Zvcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUGVwRGlhbG9nU2VydmljZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL2RpYWxvZyc7XHJcbmltcG9ydCB7IGZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFBlcFF1YW50aXR5U2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9xdWFudGl0eS1zZWxlY3Rvcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAncGVwLWludGVybmFsLXBhZ2UnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ludGVybmFsLXBhZ2UuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vaW50ZXJuYWwtcGFnZS5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgcHJvdmlkZXJzOiBbUGVwSW50ZXJuYWxQYWdlU2VydmljZV0sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBlcEludGVybmFsUGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAgIHN0YXRpYyBDVVJSRU5UX0FERElUSU9OQUxfQVBJX05BTUUgPVxyXG4gICAgICAgICdpdGVtX2RldGFpbHNfY3VycmVudEFkZGl0aW9uYWxBcGlOYW1lJztcclxuXHJcbiAgICBjb250cm9sVHlwZSA9ICdpbnRlcm5hbFBhZ2UnO1xyXG5cclxuICAgIEBJbnB1dCgpIGZpZWxkOiBhbnk7XHJcbiAgICBASW5wdXQoKSBsYXlvdXRUeXBlOiBQZXBMYXlvdXRUeXBlID0gJ2Zvcm0nO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgaW50ZXJuYWxGb3JtRmllbGRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgICBAT3V0cHV0KClcclxuICAgIGludGVybmFsRm9ybUZpZWxkQ2xpY2s6IEV2ZW50RW1pdHRlcjxJUGVwRm9ybUZpZWxkQ2xpY2tFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPElQZXBGb3JtRmllbGRDbGlja0V2ZW50PigpO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoJ215MW1tJykgbXkxbW06IEVsZW1lbnRSZWY7XHJcbiAgICBAVmlld0NoaWxkKCdtYWluVmlld0NvbnQnKSBtYWluVmlld0NvbnQ6IEVsZW1lbnRSZWY7XHJcblxyXG4gICAgQFZpZXdDaGlsZCgnb3JnQ29udCcsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KSBvcmdDb250OiBWaWV3Q29udGFpbmVyUmVmO1xyXG4gICAgQFZpZXdDaGlsZCgnZGlhbG9nQ29udCcsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KVxyXG4gICAgZGlhbG9nQ29udDogVmlld0NvbnRhaW5lclJlZjtcclxuICAgIEBWaWV3Q2hpbGQoJ21hdHJpeFRlbXBsYXRlJykgbWF0cml4VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgICBAVmlld0NoaWxkKCdtYXRyaXhEaWFsb2dUZW1wbGF0ZScsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSlcclxuICAgIG1hdHJpeERpYWxvZ1RlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoUGVwSW50ZXJuYWxMaXN0Q29tcG9uZW50KVxyXG4gICAgY3VzdG9tTGlzdDogUGVwSW50ZXJuYWxMaXN0Q29tcG9uZW50O1xyXG5cclxuICAgIHJlc2l6ZTogYW55O1xyXG4gICAgY2hlY2tGb3JDaGFuZ2VzOiBhbnkgPSBudWxsO1xyXG5cclxuICAgIGNoaWxkRGF0YTogYW55ID0gbnVsbDtcclxuXHJcbiAgICBlbXB0eUZvcm06IEZvcm1Hcm91cDtcclxuICAgIHVpQ29udHJvbDogVUlDb250cm9sO1xyXG4gICAgcm93czogYW55O1xyXG4gICAgbGluZVZpZXdSb3dzOiBhbnk7XHJcbiAgICB0b3RhbHNSb3c6IGFueSA9IFtdO1xyXG4gICAgYWRkaXRpb25hbEFwaU5hbWVzOiBhbnkgPSBudWxsO1xyXG4gICAgY3VycmVudEFkZGl0aW9uYWxBcGlOYW1lOiBhbnkgPSBudWxsO1xyXG4gICAgZm9jdXNlZFFTID0gZmFsc2U7XHJcbiAgICBmaWVsZElkV2l0aEZvY3VzID0gJyc7XHJcbiAgICBjb2x1bW5XaWR0aCA9IDEwMDtcclxuICAgIGNvdmVyQ2hpbGRUYWJsZSA9IGZhbHNlO1xyXG4gICAgY2hpbGRWaWV3VHlwZXM6IEFycmF5PEtleVZhbHVlUGFpcjxzdHJpbmc+PjtcclxuICAgIGN1cnJlbnRWaWV3VHlwZTogS2V5VmFsdWVQYWlyPHN0cmluZz4gPSBudWxsO1xyXG4gICAgY3VycmVudFZpZXdUeXBlVGl0bGU6IHN0cmluZztcclxuICAgIHN1bU9mTWluQ29sV2lkdGggPSAwO1xyXG4gICAgdG90YWxSb3dzV2lkdGggPSAwO1xyXG4gICAgdmlld1dpZHRoID0gJzEwMCUnO1xyXG4gICAgdmlld0hlaWdodCA9ICdhdXRvJztcclxuICAgIGRpc3BsYXlRU2J0bnMgPSB0cnVlO1xyXG4gICAgc2VsZWN0ZWRBcGlOYW1lID0gJyc7XHJcbiAgICBzaG93U29ydCA9IGZhbHNlO1xyXG4gICAgZGVmYXVsdFJvd1NwYW4gPSAtMTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcm90ZWN0ZWQgZmI6IEZvcm1CdWlsZGVyLFxyXG4gICAgICAgIHByaXZhdGUgZGlhbG9nU2VydmljZTogUGVwRGlhbG9nU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGludGVybmFsUGFnZVNlcnZpY2U6IFBlcEludGVybmFsUGFnZVNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIGN1c3RvbWl6YXRpb25TZXJ2aWNlOiBQZXBDdXN0b21pemF0aW9uU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcclxuICAgICkgeyB9XHJcblxyXG4gICAgcHJpdmF0ZSBmaWxsRGF0YShpc0luRGlhbG9nID0gZmFsc2UpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCB2aWV3ID0gdGhpcy5tYXRyaXhUZW1wbGF0ZS5jcmVhdGVFbWJlZGRlZFZpZXcobnVsbCk7XHJcblxyXG4gICAgICAgIHRoaXMuY3VzdG9tTGlzdD8uY2xlYXIoKTtcclxuICAgICAgICB0aGlzLm9yZ0NvbnQ/LmNsZWFyKCk7XHJcblxyXG4gICAgICAgIGlmIChpc0luRGlhbG9nKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nQ29udD8uY2xlYXIoKTtcclxuICAgICAgICAgICAgdGhpcy5kaWFsb2dDb250Py5pbnNlcnQodmlldyk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5vcmdDb250Py5pbnNlcnQodmlldyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgY29uc3Qgdmlld1R5cGU6IFBlcExpc3RWaWV3VHlwZSA9IHRoaXMuaXNUYWJsZVZpZXcoKVxyXG4gICAgICAgICAgICAgICAgPyAndGFibGUnXHJcbiAgICAgICAgICAgICAgICA6ICdsaW5lcyc7XHJcbiAgICAgICAgICAgIHRoaXMuY3VzdG9tTGlzdC5pbml0TGlzdERhdGEoXHJcbiAgICAgICAgICAgICAgICB0aGlzLnVpQ29udHJvbCxcclxuICAgICAgICAgICAgICAgIHRoaXMuY2hpbGREYXRhLlRvdGFsUm93cyxcclxuICAgICAgICAgICAgICAgIHRoaXMuY2hpbGREYXRhLlJvd3MsXHJcbiAgICAgICAgICAgICAgICB2aWV3VHlwZVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB0aGlzLnNldFRvdGFsc1JvdygpO1xyXG5cclxuICAgICAgICAgICAgLy8gaWYgKCF0aGlzLmNoaWxkTW9kYWwuaXNTaG93bikge1xyXG4gICAgICAgICAgICBjb25zdCBjaGlsZHJlbkNvdW50ID0gdGhpcy5jaGlsZERhdGEuUm93c1xyXG4gICAgICAgICAgICAgICAgPyB0aGlzLmNoaWxkRGF0YS5Sb3dzLmxlbmd0aFxyXG4gICAgICAgICAgICAgICAgOiAwO1xyXG4gICAgICAgICAgICBjb25zdCBpc0V2ZW4gPSBjaGlsZHJlbkNvdW50ICUgMiA9PT0gMDtcclxuICAgICAgICAgICAgLy8gMyBmb3IgbWF0cml4ICYgZmxhdCBtYXRyaXggYmVjYXVzZSB0aGUgaGVhZGVyICsgdG90YWwgaXMgMiBtb3JlIHJvd3MuXHJcbiAgICAgICAgICAgIGNvbnN0IHJvd3NUb0FkZCA9XHJcbiAgICAgICAgICAgICAgICB0aGlzLmlzTWF0cml4VmlldygpIHx8IHRoaXMuaXNGbGF0TWF0cml4VmlldygpXHJcbiAgICAgICAgICAgICAgICAgICAgPyBpc0V2ZW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPyAzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDogNFxyXG4gICAgICAgICAgICAgICAgICAgIDogMTtcclxuXHJcbiAgICAgICAgICAgIGNvbnN0IGZvcm1Sb3dIZWlnaHQgPVxyXG4gICAgICAgICAgICAgICAgdGhpcy5jdXN0b21pemF0aW9uU2VydmljZS5jYWxjdWxhdGVGb3JtRmllbGRIZWlnaHQoKSAqIDE2OyAvLyBjb252ZXJ0IHJlbSB0byBwaXhlbFxyXG5cclxuICAgICAgICAgICAgLy8gU2V0IHRoZSBkZWZhdWx0IG9ubHkgaWYgbm90IHNldCB5ZXQuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLmRlZmF1bHRSb3dTcGFuID09PSAtMSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kZWZhdWx0Um93U3BhbiA9IHRoaXMuZmllbGQucm93U3BhbjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy5zdW1PZk1pbkNvbFdpZHRoID0gMDtcclxuICAgICAgICAgICAgdGhpcy50b3RhbFJvd3NXaWR0aCA9IDA7XHJcblxyXG4gICAgICAgICAgICB0aGlzLmNoaWxkRGF0YS5VSUNvbnRyb2wuQ29udHJvbEZpZWxkcy5mb3JFYWNoKFxyXG4gICAgICAgICAgICAgICAgKHVpQ29udHJvbEZpZWxkOiBVSUNvbnRyb2xGaWVsZCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudG90YWxSb3dzV2lkdGggKz0gdWlDb250cm9sRmllbGQuQ29sdW1uV2lkdGg7XHJcbiAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sRmllbGQubWluRmllbGRXaWR0aCA9IHRoaXMubW1Ub1B4KDEyKTsgLy8gTkVFRCBUTyBHRVQgVEhJUyBQQVJBTSBGUk9NIENVU1RPTUlaQVRJT047XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdW1PZk1pbkNvbFdpZHRoICs9IDEyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5zZXRWaWV3Q292ZXIodGhpcy5jaGlsZERhdGEuUm93cyk7XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5jb3ZlckNoaWxkVGFibGUpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZmllbGQucm93U3BhbiA9IHRoaXMuZGVmYXVsdFJvd1NwYW47XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAvLyBGb3IgbGluZSB2aWV3IEFkZCB0aGUgaGVpZ2h0IG9mIHRoZSBsaW5lIChmb3JtIGhlaWdodCkuXHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jdXJyZW50Vmlld1R5cGUuS2V5ID09PSAnT3JkZXJDZW50ZXJGbGF0TWF0cml4TGluZScpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXhSb3cgPSBNYXRoLm1heChcclxuICAgICAgICAgICAgICAgICAgICAgICAgLi4udGhpcy51aUNvbnRyb2wuQ29udHJvbEZpZWxkcy5tYXAoKGYpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmLkxheW91dC5ZICsgZi5MYXlvdXQuSGVpZ2h0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vICogMTYgY29udmVydCByZW0gdG8gcGl4ZWxcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBjYXJkUm93c0hlaWdodCA9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3VzdG9taXphdGlvblNlcnZpY2UuY2FsY3VsYXRlQ2FyZFJvd3NIZWlnaHQoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhSb3dcclxuICAgICAgICAgICAgICAgICAgICAgICAgKSAqIDE2O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAvLyBtYXhSb3cgKiAyNCArIDYwIC0gMjQgZm9yIGVhY2ggcm93IGluIGNhcmQgKyA2MCBmb3IgdGhlIHBhZGRpbmcgb2YgZWFjaCBjYXJkLlxyXG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnN0IHJvd1NwYW5Ub0FkZCA9IE1hdGguZmxvb3IoY2hpbGRyZW5Db3VudCAqICgoY2FyZFJvd3NIZWlnaHQgKyA1NikgLyBmb3JtUm93SGVpZ2h0KSArIHJvd3NUb0FkZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gKyAxNiBpcyB0aGUgMXJlbSBtYXJnaW4gb3V0c2lkZSBjYXJkLlxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJvd1NwYW5Ub0FkZCA9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlbkNvdW50ICogKGNhcmRSb3dzSGVpZ2h0ICsgMTYpKSAvXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Sb3dIZWlnaHQgK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByb3dzVG9BZGQ7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWVsZC5yb3dTcGFuID0gcm93U3BhblRvQWRkO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBjb25zdCB0YWJsZVJvd3NIZWlnaHQgPSB0aGlzLmN1c3RvbWl6YXRpb25TZXJ2aWNlLmNhbGN1bGF0ZVRhYmxlUm93c0hlaWdodChjaGlsZHJlbkNvdW50KSAqIDE2O1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIHRoaXMuZmllbGQucm93U3BhbiA9IE1hdGguY2VpbCgodGFibGVSb3dzSGVpZ2h0ICsgKHJvd3NUb0FkZCAqIDQwKSkgLyBmb3JtUm93SGVpZ2h0KTtcclxuICAgICAgICAgICAgICAgICAgICAvLyAqIDE2IGNvbnZlcnQgcmVtIHRvIHBpeGVsXHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm93c1RvQWRkSGVpZ2h0ID1cclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXN0b21pemF0aW9uU2VydmljZS5jYWxjdWxhdGVUYWJsZVJvd3NIZWlnaHQoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzVG9BZGQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApICogMTY7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdGFibGVSb3dzSGVpZ2h0ID1cclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXN0b21pemF0aW9uU2VydmljZS5jYWxjdWxhdGVUYWJsZVJvd3NIZWlnaHQoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZHJlbkNvdW50XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICkgKiAxNjtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpZWxkLnJvd1NwYW4gPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAocm93c1RvQWRkSGVpZ2h0ICsgdGFibGVSb3dzSGVpZ2h0KSAvIGZvcm1Sb3dIZWlnaHQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LCAwKTtcclxuXHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGZpbGxDaGlsZERhdGEocmVzOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmNoaWxkRGF0YSA9IHJlcztcclxuICAgICAgICB0aGlzLnVpQ29udHJvbCA9IHJlcy5VSUNvbnRyb2w7XHJcbiAgICAgICAgdGhpcy5hZGRpdGlvbmFsQXBpTmFtZXMgPSByZXMuQWRkaXRpb25hbEFwaU5hbWVzO1xyXG5cclxuICAgICAgICB0aGlzLmZpbGxEYXRhKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbW1Ub1B4KG1tKTogbnVtYmVyIHtcclxuICAgICAgICBjb25zdCBoZWlnaHQgPSB0aGlzLm15MW1tLm5hdGl2ZUVsZW1lbnQuY2xpZW50SGVpZ2h0O1xyXG4gICAgICAgIHJldHVybiBNYXRoLmZsb29yKG1tICogaGVpZ2h0KTsgLy8gcmV0dXJucyBzaXplcyBpbiBQWFxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaXNNYXRyaXhWaWV3KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFZpZXdUeXBlICYmXHJcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFZpZXdUeXBlLktleSA9PT0gJ09yZGVyQ2VudGVyTWF0cml4J1xyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpc0ZsYXRNYXRyaXhWaWV3KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFZpZXdUeXBlICYmXHJcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFZpZXdUeXBlLktleSA9PT0gJ09yZGVyQ2VudGVyRmxhdE1hdHJpeEdyaWQnXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBpc1RhYmxlVmlldygpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5pc01hdHJpeFZpZXcoKSB8fCB0aGlzLmlzRmxhdE1hdHJpeFZpZXcoKTtcclxuICAgIH1cclxuXHJcbiAgICBjaGFuZ2VDaGlsZHJlblZpZXdUeXBlKHZpZXdUeXBlS2V5OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnJvd3MgPSBbXTtcclxuICAgICAgICB0aGlzLnVpQ29udHJvbCA9IG51bGw7XHJcblxyXG4gICAgICAgIGZvciAoY29uc3QgdnQgb2YgdGhpcy5jaGlsZFZpZXdUeXBlcykge1xyXG4gICAgICAgICAgICBpZiAodnQuS2V5ID09PSB2aWV3VHlwZUtleSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50Vmlld1R5cGUgPSB2dDtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmN1cnJlbnRWaWV3VHlwZVRpdGxlID0gdGhpcy5jdXJyZW50Vmlld1R5cGUuVmFsdWU7XHJcblxyXG4gICAgICAgIHRoaXMuaW50ZXJuYWxQYWdlU2VydmljZS5jaGFuZ2VDaGlsZHJlblZpZXdUeXBlKFxyXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRWaWV3VHlwZS5LZXksXHJcbiAgICAgICAgICAgIChyZXM6IE9iamVjdHNEYXRhKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAocmVzLlJvd3MpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbGxDaGlsZERhdGEocmVzKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0Vmlld0NvdmVyKHJvd3MpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXJvd3MpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgbWF0cml4Q29udCA9IHRoaXMubWFpblZpZXdDb250Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgY29uc3Qgdmlld1dpZHRoID0gbWF0cml4Q29udC5jbGllbnRXaWR0aDtcclxuXHJcbiAgICAgICAgdGhpcy52aWV3V2lkdGggPSB2aWV3V2lkdGggPyB2aWV3V2lkdGgudG9TdHJpbmcoKSA6ICcxMDAlJztcclxuXHJcbiAgICAgICAgLy8gaWYgdGhlIG1hdHJpeCBsb2NhdGVkIG9uIHRoZSBib3R0b20gLyB0aGVyZSBpcyBub3RoaW5nIHVuZGVyIHRoZSBtYXRyaXggd2UgZG9udCBuZWVkIHRvIGNoZWNrIHRoZSBoZWlnaHRcclxuICAgICAgICBpZiAocGFyc2VJbnQodmlld1dpZHRoLCAxMCkgPCB0aGlzLm1tVG9QeCh0aGlzLnN1bU9mTWluQ29sV2lkdGgpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY292ZXJDaGlsZFRhYmxlID0gdHJ1ZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmNvdmVyQ2hpbGRUYWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH1cclxuXHJcbiAgICBzaG93TWF0cml4RGlhbG9nKCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuZGlhbG9nU2VydmljZS5nZXREaWFsb2dDb25maWcoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIGRpc2FibGVDbG9zZTogZmFsc2UsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICdsYXJnZSdcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZ1NlcnZpY2Uub3BlbkRpYWxvZyhcclxuICAgICAgICAgICAgdGhpcy5tYXRyaXhEaWFsb2dUZW1wbGF0ZSxcclxuICAgICAgICAgICAge30sXHJcbiAgICAgICAgICAgIGNvbmZpZ1xyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGRpYWxvZ1JlZi5hZnRlck9wZW5lZCgpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZmlsbERhdGEodHJ1ZSk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgodmFsdWUpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5maWxsRGF0YShmYWxzZSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gbGV0IGZpZWxkID0gdGhpcy5maWVsZCBhcyBQZXBJbnRlcm5hbFBhZ2VGaWVsZDtcclxuXHJcbiAgICAgICAgdGhpcy5pbnRlcm5hbFBhZ2VTZXJ2aWNlLmluaXREZXRhaWxzKFxyXG4gICAgICAgICAgICB0aGlzLmZpZWxkLm9iamVjdElkLFxyXG4gICAgICAgICAgICB0aGlzLmZpZWxkLnBhcmVudElkLFxyXG4gICAgICAgICAgICB0aGlzLmZpZWxkLnNlYXJjaENvZGUsXHJcbiAgICAgICAgICAgIChyZXNWaWV3VHlwZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgLy8gbXkgY29kZSBESS03MTM0XHJcbiAgICAgICAgICAgICAgICByZXNWaWV3VHlwZXMuUm93cyA9IHJlc1ZpZXdUeXBlcy5Sb3dzLmZpbHRlcihcclxuICAgICAgICAgICAgICAgICAgICAoaXRlbSkgPT4gaXRlbS5LZXkgIT09ICdPcmRlckNlbnRlclZpZXcxJ1xyXG4gICAgICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAocmVzVmlld1R5cGVzLlJvd3MgJiYgcmVzVmlld1R5cGVzLlJvd3MubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICghcmVzVmlld1R5cGVzLkRlZmF1bHQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzVmlld1R5cGVzLkRlZmF1bHQgPSByZXNWaWV3VHlwZXMuUm93c1swXS5LZXk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2hpbGRWaWV3VHlwZXMgPSByZXNWaWV3VHlwZXMuUm93cztcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRWaWV3VHlwZSA9IHJlc1ZpZXdUeXBlcy5Sb3dzWzBdO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAvLyBmb3IgKHZhciBpID0gMDsgaSA8IHJlc1ZpZXdUeXBlcy5Sb3dzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCB2aWV3VHlwZVJvdyBvZiByZXNWaWV3VHlwZXMuUm93cykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodmlld1R5cGVSb3cuVmFsdWUgPT09IHJlc1ZpZXdUeXBlcy5EZWZhdWx0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRWaWV3VHlwZSA9IHZpZXdUeXBlUm93O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRMYXN0QWRkaXRpb25hbEFwaU5hbWUoKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZUNoaWxkcmVuVmlld1R5cGUodGhpcy5jdXJyZW50Vmlld1R5cGUuS2V5KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIHRoaXMucmVzaXplID0gZnJvbUV2ZW50KHdpbmRvdywgJ3Jlc2l6ZScpXHJcbiAgICAgICAgICAgIC5waXBlKGRlYm91bmNlVGltZSgxMCkpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFZpZXdDb3Zlcih0aGlzLnJvd3MpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBsb2FkTGFzdEFkZGl0aW9uYWxBcGlOYW1lKCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGRhYSA9IHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oXHJcbiAgICAgICAgICAgIFBlcEludGVybmFsUGFnZUNvbXBvbmVudC5DVVJSRU5UX0FERElUSU9OQUxfQVBJX05BTUVcclxuICAgICAgICApO1xyXG4gICAgICAgIGlmIChkYWEgJiYgZGFhLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgY29uc3QgYWRkaXRpb25hbEFwaU5hbWUgPSBKU09OLnBhcnNlKGRhYSk7XHJcbiAgICAgICAgICAgIHRoaXMuY3VycmVudEFkZGl0aW9uYWxBcGlOYW1lID0gYWRkaXRpb25hbEFwaU5hbWU7XHJcbiAgICAgICAgICAgIHRoaXMuaW50ZXJuYWxQYWdlU2VydmljZS5hZGRpdGlvbmFsQXBpTmFtZSA9IGFkZGl0aW9uYWxBcGlOYW1lPy5LZXk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLnJlc2l6ZSkge1xyXG4gICAgICAgICAgICB0aGlzLnJlc2l6ZS51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBjaGFuZ2VBZGRpdGlvbmFsQXBpTmFtZShhZGRpdGlvbmFsQXBpTmFtZSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaW50ZXJuYWxQYWdlU2VydmljZS5jaGFuZ2VBZGRpdGlvbmFsQXBpTmFtZShcclxuICAgICAgICAgICAgYWRkaXRpb25hbEFwaU5hbWUgPyBhZGRpdGlvbmFsQXBpTmFtZS5LZXkgOiAnJyxcclxuICAgICAgICAgICAgKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAvLyBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgcmVzLlJvd3MubGVuZ3RoOyBpbmRleCsrKSB7XHJcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHJvdyBvZiByZXMuUm93cykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlQ2hhbmdlcyhyb3cpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG5cclxuICAgICAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKFxyXG4gICAgICAgICAgICBQZXBJbnRlcm5hbFBhZ2VDb21wb25lbnQuQ1VSUkVOVF9BRERJVElPTkFMX0FQSV9OQU1FLFxyXG4gICAgICAgICAgICBKU09OLnN0cmluZ2lmeShhZGRpdGlvbmFsQXBpTmFtZSlcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5jdXJyZW50QWRkaXRpb25hbEFwaU5hbWUgPSBhZGRpdGlvbmFsQXBpTmFtZTtcclxuICAgICAgICB9LCAwKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRUb3RhbHNSb3coKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50b3RhbHNSb3cgPSBbXTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuaXNNYXRyaXhWaWV3KCkgfHwgdGhpcy5pc0ZsYXRNYXRyaXhWaWV3KCkpIHtcclxuICAgICAgICAgICAgbGV0IHRvdGFsQ29sID0gMDtcclxuXHJcbiAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5jdXN0b21MaXN0Lml0ZW1zO1xyXG4gICAgICAgICAgICBpZiAoaXRlbXMpIHtcclxuICAgICAgICAgICAgICAgIGZvciAobGV0IGNvbCA9IDA7IGNvbCA8IGl0ZW1zWzBdLkZpZWxkcy5sZW5ndGg7IGNvbCsrKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZmllbGQgPSBpdGVtc1swXS5GaWVsZHNbY29sXTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLkZpZWxkVHlwZSA9PT0gRklFTERfVFlQRS5OdW1iZXJJbnRlZ2VyRm9yTWF0cml4IHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLkZpZWxkVHlwZSA9PT1cclxuICAgICAgICAgICAgICAgICAgICAgICAgRklFTERfVFlQRS5OdW1iZXJJbnRlZ2VyUXVhbnRpdHlTZWxlY3RvciB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWVsZC5GaWVsZFR5cGUgPT09IEZJRUxEX1RZUEUuTnVtYmVyUmVhbEZvck1hdHJpeCB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWVsZC5GaWVsZFR5cGUgPT09XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEZJRUxEX1RZUEUuTnVtYmVyUmVhbFF1YW50aXR5U2VsZWN0b3IgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQuRmllbGRUeXBlID09PSBGSUVMRF9UWVBFLkNhbGN1bGF0ZWRJbnQgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQuRmllbGRUeXBlID09PSBGSUVMRF9UWVBFLk51bWJlckludGVnZXIgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQuRmllbGRUeXBlID09PSBGSUVMRF9UWVBFLkNhbGN1bGF0ZWRSZWFsIHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLkZpZWxkVHlwZSA9PT0gRklFTERfVFlQRS5OdW1iZXJSZWFsXHJcbiAgICAgICAgICAgICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsQ29sID0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBsaXN0SXRlbSBvZiBpdGVtcykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3RJdGVtLkZpZWxkc1tjb2xdICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdEl0ZW0uRmllbGRzW2NvbF0uVmFsdWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG51bSA9IHBhcnNlRmxvYXQoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3RJdGVtLkZpZWxkc1tjb2xdLlZhbHVlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3RhbENvbCArPSBpc05hTihudW0pID8gMCA6IG51bTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRvdGFsc1Jvdy5wdXNoKHRvdGFsQ29sKTtcclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRvdGFsc1Jvdy5wdXNoKCcnKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlQ2hhbmdlcyhlbGVtZW50VG9VcGRhdGU6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuY3VzdG9tTGlzdC51cGRhdGVJdGVtKGVsZW1lbnRUb1VwZGF0ZSk7XHJcblxyXG4gICAgICAgIC8vIFVwZGF0ZSBtZW1vcnkgZGF0YVxyXG4gICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCB0aGlzLmNoaWxkRGF0YS5Sb3dzLmxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5jaGlsZERhdGEuUm93c1tpbmRleF0uVUlEID09PSBlbGVtZW50VG9VcGRhdGUuVUlEKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNoaWxkRGF0YS5Sb3dzW2luZGV4XSA9IGVsZW1lbnRUb1VwZGF0ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzZXRWYWx1ZUNhbGxiYWNrKGlkOiBhbnksIHJlczogYW55KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHJlcy5Sb3dzLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICAgICAgICBjb25zdCBmaWVsZCA9IHJlcy5Sb3dzWzBdLkZpZWxkcy5maW5kKChmKSA9PiBmLkFwaU5hbWUgPT09ICdPYmplY3RNZW51Jyk7XHJcbiAgICAgICAgICAgIGlmIChmaWVsZCkge1xyXG4gICAgICAgICAgICAgICAgLy8gSEFDSyA6IFVudGlsIFwiRW5hYmxlZFwiIHJldHVybnMgZnJvbSB0aGUgc2VydmVyLCB3ZSBzZXQgUGVwTWVudSB0byBiZVxyXG4gICAgICAgICAgICAgICAgLy8gICAgICAgIERpc2FibGVkIGluIGNhcnQgb24gcmVndWxhciBpdGVtcyBhbmQgbm90IGNhbXBpZ24gaXRlbXMuXHJcbiAgICAgICAgICAgICAgICBmaWVsZC5FbmFibGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy51cGRhdGVDaGFuZ2VzKHJlcy5Sb3dzWzBdKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuc2V0VG90YWxzUm93KCk7XHJcbiAgICAgICAgdGhpcy5jaGVja0ZvckNoYW5nZXMgPSBuZXcgRGF0ZSgpO1xyXG5cclxuICAgICAgICAvLyBESS0xNTk4NVxyXG4gICAgICAgIHRoaXMuaW50ZXJuYWxGb3JtRmllbGRDaGFuZ2UuZW1pdChyZXMpO1xyXG5cclxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uQ3VzdG9taXplT2JqZWN0Q2hhbmdlZChcclxuICAgICAgICBjdXN0b21pemVPYmplY3RDaGFuZ2VkRGF0YTogSVBlcEZvcm1GaWVsZFZhbHVlQ2hhbmdlRXZlbnRcclxuICAgICk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaW50ZXJuYWxQYWdlU2VydmljZS5jaGlsZFZhbHVlQ2hhbmdlZChcclxuICAgICAgICAgICAgY3VzdG9taXplT2JqZWN0Q2hhbmdlZERhdGEuaWQsXHJcbiAgICAgICAgICAgIGN1c3RvbWl6ZU9iamVjdENoYW5nZWREYXRhLmtleSxcclxuICAgICAgICAgICAgY3VzdG9taXplT2JqZWN0Q2hhbmdlZERhdGEudmFsdWUsXHJcbiAgICAgICAgICAgIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRWYWx1ZUNhbGxiYWNrKGN1c3RvbWl6ZU9iamVjdENoYW5nZWREYXRhLmlkLCByZXMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBvbkN1c3RvbWl6ZUZpZWxkQ2xpY2soZmllbGRDbGlja0V2ZW50OiBJUGVwRm9ybUZpZWxkQ2xpY2tFdmVudCk6IHZvaWQge1xyXG4gICAgICAgIGxldCBoYW5kbGVkRXZlbnQgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgLy8gRm9yIHRoZSBuZXcgY3VzdG9tIGZvcm0sIHRoZSBwbHVzIGFuZCBtaW51cyBldmVudHMgdHJhbnNmb3JtIGluIHRoZSBJUGVwRm9ybUZpZWxkVmFsdWVDaGFuZ2VFdmVudFxyXG4gICAgICAgIGlmIChmaWVsZENsaWNrRXZlbnQuY29udHJvbFR5cGUgPT09ICdxcycpIHtcclxuICAgICAgICAgICAgaWYgKGZpZWxkQ2xpY2tFdmVudC52YWx1ZSA9PT0gUGVwUXVhbnRpdHlTZWxlY3RvckNvbXBvbmVudC5QTFVTKSB7XHJcbiAgICAgICAgICAgICAgICBoYW5kbGVkRXZlbnQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pbnRlcm5hbFBhZ2VTZXJ2aWNlLmNoaWxkUGx1c0NsaWNrKFxyXG4gICAgICAgICAgICAgICAgICAgIGZpZWxkQ2xpY2tFdmVudC5pZCxcclxuICAgICAgICAgICAgICAgICAgICBmaWVsZENsaWNrRXZlbnQua2V5LFxyXG4gICAgICAgICAgICAgICAgICAgIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFZhbHVlQ2FsbGJhY2soZmllbGRDbGlja0V2ZW50LmlkLCByZXMpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoXHJcbiAgICAgICAgICAgICAgICBmaWVsZENsaWNrRXZlbnQudmFsdWUgPT09IFBlcFF1YW50aXR5U2VsZWN0b3JDb21wb25lbnQuTUlOVVNcclxuICAgICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgICAgICBoYW5kbGVkRXZlbnQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pbnRlcm5hbFBhZ2VTZXJ2aWNlLmNoaWxkTWludXNDbGljayhcclxuICAgICAgICAgICAgICAgICAgICBmaWVsZENsaWNrRXZlbnQuaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgZmllbGRDbGlja0V2ZW50LmtleSxcclxuICAgICAgICAgICAgICAgICAgICAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRWYWx1ZUNhbGxiYWNrKGZpZWxkQ2xpY2tFdmVudC5pZCwgcmVzKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoIWhhbmRsZWRFdmVudCkge1xyXG4gICAgICAgICAgICB0aGlzLmludGVybmFsRm9ybUZpZWxkQ2xpY2suZW1pdChmaWVsZENsaWNrRXZlbnQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
351
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtcGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL2Zvcm0vaW50ZXJuYWwtcGFnZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFHVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBQ1QsVUFBVSxFQUNWLGdCQUFnQixFQUNoQixXQUFXLEVBQ1gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixHQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWEsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFakUsT0FBTyxFQUlILHVCQUF1QixFQUd2QixVQUFVLEdBQ2IsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQ0gsd0JBQXdCLEdBRTNCLE1BQU0sMkJBQTJCLENBQUM7QUFLbkMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFTekYsTUFBTSxPQUFPLHdCQUF3QjtJQXVEakMsWUFDYyxFQUFlLEVBQ2pCLGFBQStCLEVBQy9CLG1CQUEyQyxFQUM1QyxvQkFBNkMsRUFDNUMsVUFBc0IsRUFDdEIsaUJBQW9DO1FBTGxDLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDakIsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBQy9CLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBd0I7UUFDNUMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUF5QjtRQUM1QyxlQUFVLEdB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QUMsTUFBTTs7YUFDbEQ7OztZQS9CbUIsV0FBVztZQW9CdEIsZ0JBQWdCO1lBbkJoQixzQkFBc0I7WUFNM0IsdUJBQXVCO1lBYnZCLFVBQVU7WUFJVixpQkFBaUI7OztvQkF3Q2hCLEtBQUs7eUJBQ0wsS0FBSztzQ0FFTCxNQUFNO3FDQUVOLE1BQU07b0JBR04sU0FBUyxTQUFDLE9BQU87MkJBQ2pCLFNBQVMsU0FBQyxjQUFjO3NCQUV4QixTQUFTLFNBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFO3lCQUMvQyxTQUFTLFNBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFOzZCQUVsRCxTQUFTLFNBQUMsZ0JBQWdCO21DQUMxQixTQUFTLFNBQUMsc0JBQXNCLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO3lCQUd2RCxTQUFTLFNBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgT25Jbml0LFxuICAgIE9uRGVzdHJveSxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIFZpZXdDaGlsZCxcbiAgICBFbGVtZW50UmVmLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwLCBGb3JtQnVpbGRlciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFBlcEludGVybmFsUGFnZVNlcnZpY2UgfSBmcm9tICcuL2ludGVybmFsLXBhZ2Uuc2VydmljZSc7XG5cbmltcG9ydCB7XG4gICAgUGVwTGF5b3V0VHlwZSxcbiAgICBVSUNvbnRyb2wsXG4gICAgS2V5VmFsdWVQYWlyLFxuICAgIFBlcEN1c3RvbWl6YXRpb25TZXJ2aWNlLFxuICAgIFVJQ29udHJvbEZpZWxkLFxuICAgIE9iamVjdHNEYXRhLFxuICAgIEZJRUxEX1RZUEUsXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcbmltcG9ydCB7XG4gICAgUGVwSW50ZXJuYWxMaXN0Q29tcG9uZW50LFxuICAgIFBlcExpc3RWaWV3VHlwZSxcbn0gZnJvbSAnLi9pbnRlcm5hbC1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICAgIElQZXBGb3JtRmllbGRDbGlja0V2ZW50LFxuICAgIElQZXBGb3JtRmllbGRWYWx1ZUNoYW5nZUV2ZW50LFxufSBmcm9tICcuL2Zvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IFBlcERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9kaWFsb2cnO1xuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBQZXBRdWFudGl0eVNlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvcXVhbnRpdHktc2VsZWN0b3InO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3BlcC1pbnRlcm5hbC1wYWdlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW50ZXJuYWwtcGFnZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vaW50ZXJuYWwtcGFnZS5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1BlcEludGVybmFsUGFnZVNlcnZpY2VdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBQZXBJbnRlcm5hbFBhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgc3RhdGljIENVUlJFTlRfQURESVRJT05BTF9BUElfTkFNRSA9XG4gICAgICAgICdpdGVtX2RldGFpbHNfY3VycmVudEFkZGl0aW9uYWxBcGlOYW1lJztcblxuICAgIGNvbnRyb2xUeXBlID0gJ2ludGVybmFsUGFnZSc7XG5cbiAgICBASW5wdXQoKSBmaWVsZDogYW55O1xuICAgIEBJbnB1dCgpIGxheW91dFR5cGU6IFBlcExheW91dFR5cGUgPSAnZm9ybSc7XG5cbiAgICBAT3V0cHV0KClcbiAgICBpbnRlcm5hbEZvcm1GaWVsZENoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KClcbiAgICBpbnRlcm5hbEZvcm1GaWVsZENsaWNrOiBFdmVudEVtaXR0ZXI8SVBlcEZvcm1GaWVsZENsaWNrRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxJUGVwRm9ybUZpZWxkQ2xpY2tFdmVudD4oKTtcblxuICAgIEBWaWV3Q2hpbGQoJ215MW1tJykgbXkxbW06IEVsZW1lbnRSZWY7XG4gICAgQFZpZXdDaGlsZCgnbWFpblZpZXdDb250JykgbWFpblZpZXdDb250OiBFbGVtZW50UmVmO1xuXG4gICAgQFZpZXdDaGlsZCgnb3JnQ29udCcsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KSBvcmdDb250OiBWaWV3Q29udGFpbmVyUmVmO1xuICAgIEBWaWV3Q2hpbGQoJ2RpYWxvZ0NvbnQnLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYgfSlcbiAgICBkaWFsb2dDb250OiBWaWV3Q29udGFpbmVyUmVmO1xuICAgIEBWaWV3Q2hpbGQoJ21hdHJpeFRlbXBsYXRlJykgbWF0cml4VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgQFZpZXdDaGlsZCgnbWF0cml4RGlhbG9nVGVtcGxhdGUnLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gICAgbWF0cml4RGlhbG9nVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBAVmlld0NoaWxkKFBlcEludGVybmFsTGlzdENvbXBvbmVudClcbiAgICBjdXN0b21MaXN0OiBQZXBJbnRlcm5hbExpc3RDb21wb25lbnQ7XG5cbiAgICByZXNpemU6IGFueTtcbiAgICBjaGVja0ZvckNoYW5nZXM6IGFueSA9IG51bGw7XG5cbiAgICBjaGlsZERhdGE6IGFueSA9IG51bGw7XG5cbiAgICBlbXB0eUZvcm06IEZvcm1Hcm91cDtcbiAgICB1aUNvbnRyb2w6IFVJQ29udHJvbDtcbiAgICByb3dzOiBhbnk7XG4gICAgbGluZVZpZXdSb3dzOiBhbnk7XG4gICAgdG90YWxzUm93OiBhbnkgPSBbXTtcbiAgICBhZGRpdGlvbmFsQXBpTmFtZXM6IGFueSA9IG51bGw7XG4gICAgY3VycmVudEFkZGl0aW9uYWxBcGlOYW1lOiBhbnkgPSBudWxsO1xuICAgIGZvY3VzZWRRUyA9IGZhbHNlO1xuICAgIGZpZWxkSWRXaXRoRm9jdXMgPSAnJztcbiAgICBjb2x1bW5XaWR0aCA9IDEwMDtcbiAgICBjb3ZlckNoaWxkVGFibGUgPSBmYWxzZTtcbiAgICBjaGlsZFZpZXdUeXBlczogQXJyYXk8S2V5VmFsdWVQYWlyPHN0cmluZz4+O1xuICAgIGN1cnJlbnRWaWV3VHlwZTogS2V5VmFsdWVQYWlyPHN0cmluZz4gPSBudWxsO1xuICAgIGN1cnJlbnRWaWV3VHlwZVRpdGxlOiBzdHJpbmc7XG4gICAgc3VtT2ZNaW5Db2xXaWR0aCA9IDA7XG4gICAgdG90YWxSb3dzV2lkdGggPSAwO1xuICAgIHZpZXdXaWR0aCA9ICcxMDAlJztcbiAgICB2aWV3SGVpZ2h0ID0gJ2F1dG8nO1xuICAgIGRpc3BsYXlRU2J0bnMgPSB0cnVlO1xuICAgIHNlbGVjdGVkQXBpTmFtZSA9ICcnO1xuICAgIHNob3dTb3J0ID0gZmFsc2U7XG4gICAgZGVmYXVsdFJvd1NwYW4gPSAtMTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgZmI6IEZvcm1CdWlsZGVyLFxuICAgICAgICBwcml2YXRlIGRpYWxvZ1NlcnZpY2U6IFBlcERpYWxvZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgaW50ZXJuYWxQYWdlU2VydmljZTogUGVwSW50ZXJuYWxQYWdlU2VydmljZSxcbiAgICAgICAgcHVibGljIGN1c3RvbWl6YXRpb25TZXJ2aWNlOiBQZXBDdXN0b21pemF0aW9uU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICAgICkgeyB9XG5cbiAgICBwcml2YXRlIGZpbGxEYXRhKGlzSW5EaWFsb2cgPSBmYWxzZSk6IHZvaWQge1xuICAgICAgICBjb25zdCB2aWV3ID0gdGhpcy5tYXRyaXhUZW1wbGF0ZS5jcmVhdGVFbWJlZGRlZFZpZXcobnVsbCk7XG5cbiAgICAgICAgdGhpcy5jdXN0b21MaXN0Py5jbGVhcigpO1xuICAgICAgICB0aGlzLm9yZ0NvbnQ/LmNsZWFyKCk7XG5cbiAgICAgICAgaWYgKGlzSW5EaWFsb2cpIHtcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nQ29udD8uY2xlYXIoKTtcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nQ29udD8uaW5zZXJ0KHZpZXcpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vcmdDb250Py5pbnNlcnQodmlldyk7XG4gICAgICAgIH1cblxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZpZXdUeXBlOiBQZXBMaXN0Vmlld1R5cGUgPSB0aGlzLmlzVGFibGVWaWV3KClcbiAgICAgICAgICAgICAgICA/ICd0YWJsZSdcbiAgICAgICAgICAgICAgICA6ICdsaW5lcyc7XG4gICAgICAgICAgICB0aGlzLmN1c3RvbUxpc3QuaW5pdExpc3REYXRhKFxuICAgICAgICAgICAgICAgIHRoaXMudWlDb250cm9sLFxuICAgICAgICAgICAgICAgIHRoaXMuY2hpbGREYXRhLlRvdGFsUm93cyxcbiAgICAgICAgICAgICAgICB0aGlzLmNoaWxkRGF0YS5Sb3dzLFxuICAgICAgICAgICAgICAgIHZpZXdUeXBlXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5zZXRUb3RhbHNSb3coKTtcblxuICAgICAgICAgICAgLy8gaWYgKCF0aGlzLmNoaWxkTW9kYWwuaXNTaG93bikge1xuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW5Db3VudCA9IHRoaXMuY2hpbGREYXRhLlJvd3NcbiAgICAgICAgICAgICAgICA/IHRoaXMuY2hpbGREYXRhLlJvd3MubGVuZ3RoXG4gICAgICAgICAgICAgICAgOiAwO1xuICAgICAgICAgICAgY29uc3QgaXNFdmVuID0gY2hpbGRyZW5Db3VudCAlIDIgPT09IDA7XG4gICAgICAgICAgICAvLyAzIGZvciBtYXRyaXggJiBmbGF0IG1hdHJpeCBiZWNhdXNlIHRoZSBoZWFkZXIgKyB0b3RhbCBpcyAyIG1vcmUgcm93cy5cbiAgICAgICAgICAgIGNvbnN0IHJvd3NUb0FkZCA9XG4gICAgICAgICAgICAgICAgdGhpcy5pc01hdHJpeFZpZXcoKSB8fCB0aGlzLmlzRmxhdE1hdHJpeFZpZXcoKVxuICAgICAgICAgICAgICAgICAgICA/IGlzRXZlblxuICAgICAgICAgICAgICAgICAgICAgICAgPyAzXG4gICAgICAgICAgICAgICAgICAgICAgICA6IDRcbiAgICAgICAgICAgICAgICAgICAgOiAxO1xuXG4gICAgICAgICAgICBjb25zdCBmb3JtUm93SGVpZ2h0ID1cbiAgICAgICAgICAgICAgICB0aGlzLmN1c3RvbWl6YXRpb25TZXJ2aWNlLmNhbGN1bGF0ZUZvcm1GaWVsZEhlaWdodCgpICogMTY7IC8vIGNvbnZlcnQgcmVtIHRvIHBpeGVsXG5cbiAgICAgICAgICAgIC8vIFNldCB0aGUgZGVmYXVsdCBvbmx5IGlmIG5vdCBzZXQgeWV0LlxuICAgICAgICAgICAgaWYgKHRoaXMuZGVmYXVsdFJvd1NwYW4gPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kZWZhdWx0Um93U3BhbiA9IHRoaXMuZmllbGQucm93U3BhbjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5zdW1PZk1pbkNvbFdpZHRoID0gMDtcbiAgICAgICAgICAgIHRoaXMudG90YWxSb3dzV2lkdGggPSAwO1xuXG4gICAgICAgICAgICB0aGlzLmNoaWxkRGF0YS5VSUNvbnRyb2wuQ29udHJvbEZpZWxkcy5mb3JFYWNoKFxuICAgICAgICAgICAgICAgICh1aUNvbnRyb2xGaWVsZDogVUlDb250cm9sRmllbGQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50b3RhbFJvd3NXaWR0aCArPSB1aUNvbnRyb2xGaWVsZC5Db2x1bW5XaWR0aDtcbiAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sRmllbGQubWluRmllbGRXaWR0aCA9IHRoaXMubW1Ub1B4KDEyKTsgLy8gTkVFRCBUTyBHRVQgVEhJUyBQQVJBTSBGUk9NIENVU1RPTUlaQVRJT047XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3VtT2ZNaW5Db2xXaWR0aCArPSAxMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICB0aGlzLnNldFZpZXdDb3Zlcih0aGlzLmNoaWxkRGF0YS5Sb3dzKTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuY292ZXJDaGlsZFRhYmxlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5maWVsZC5yb3dTcGFuID0gdGhpcy5kZWZhdWx0Um93U3BhbjtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgLy8gRm9yIGxpbmUgdmlldyBBZGQgdGhlIGhlaWdodCBvZiB0aGUgbGluZSAoZm9ybSBoZWlnaHQpLlxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRWaWV3VHlwZS5LZXkgPT09ICdPcmRlckNlbnRlckZsYXRNYXRyaXhMaW5lJykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXhSb3cgPSBNYXRoLm1heChcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLnRoaXMudWlDb250cm9sLkNvbnRyb2xGaWVsZHMubWFwKChmKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGYuTGF5b3V0LlkgKyBmLkxheW91dC5IZWlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgICAgIC8vICogMTYgY29udmVydCByZW0gdG8gcGl4ZWxcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2FyZFJvd3NIZWlnaHQgPVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXN0b21pemF0aW9uU2VydmljZS5jYWxjdWxhdGVDYXJkUm93c0hlaWdodChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhSb3dcbiAgICAgICAgICAgICAgICAgICAgICAgICkgKiAxNjtcblxuICAgICAgICAgICAgICAgICAgICAvLyBtYXhSb3cgKiAyNCArIDYwIC0gMjQgZm9yIGVhY2ggcm93IGluIGNhcmQgKyA2MCBmb3IgdGhlIHBhZGRpbmcgb2YgZWFjaCBjYXJkLlxuICAgICAgICAgICAgICAgICAgICAvLyBjb25zdCByb3dTcGFuVG9BZGQgPSBNYXRoLmZsb29yKGNoaWxkcmVuQ291bnQgKiAoKGNhcmRSb3dzSGVpZ2h0ICsgNTYpIC8gZm9ybVJvd0hlaWdodCkgKyByb3dzVG9BZGQpO1xuICAgICAgICAgICAgICAgICAgICAvLyArIDE2IGlzIHRoZSAxcmVtIG1hcmdpbiBvdXRzaWRlIGNhcmQuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJvd1NwYW5Ub0FkZCA9XG4gICAgICAgICAgICAgICAgICAgICAgICAoY2hpbGRyZW5Db3VudCAqIChjYXJkUm93c0hlaWdodCArIDE2KSkgL1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybVJvd0hlaWdodCArXG4gICAgICAgICAgICAgICAgICAgICAgICByb3dzVG9BZGQ7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZmllbGQucm93U3BhbiA9IHJvd1NwYW5Ub0FkZDtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAvLyBjb25zdCB0YWJsZVJvd3NIZWlnaHQgPSB0aGlzLmN1c3RvbWl6YXRpb25TZXJ2aWNlLmNhbGN1bGF0ZVRhYmxlUm93c0hlaWdodChjaGlsZHJlbkNvdW50KSAqIDE2O1xuICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLmZpZWxkLnJvd1NwYW4gPSBNYXRoLmNlaWwoKHRhYmxlUm93c0hlaWdodCArIChyb3dzVG9BZGQgKiA0MCkpIC8gZm9ybVJvd0hlaWdodCk7XG4gICAgICAgICAgICAgICAgICAgIC8vICogMTYgY29udmVydCByZW0gdG8gcGl4ZWxcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgcm93c1RvQWRkSGVpZ2h0ID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3VzdG9taXphdGlvblNlcnZpY2UuY2FsY3VsYXRlVGFibGVSb3dzSGVpZ2h0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3NUb0FkZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgKSAqIDE2O1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0YWJsZVJvd3NIZWlnaHQgPVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXN0b21pemF0aW9uU2VydmljZS5jYWxjdWxhdGVUYWJsZVJvd3NIZWlnaHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGRyZW5Db3VudFxuICAgICAgICAgICAgICAgICAgICAgICAgKSAqIDE2O1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpZWxkLnJvd1NwYW4gPVxuICAgICAgICAgICAgICAgICAgICAgICAgKHJvd3NUb0FkZEhlaWdodCArIHRhYmxlUm93c0hlaWdodCkgLyBmb3JtUm93SGVpZ2h0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgMCk7XG5cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZpbGxDaGlsZERhdGEocmVzOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGlsZERhdGEgPSByZXM7XG4gICAgICAgIHRoaXMudWlDb250cm9sID0gcmVzLlVJQ29udHJvbDtcbiAgICAgICAgdGhpcy5hZGRpdGlvbmFsQXBpTmFtZXMgPSByZXMuQWRkaXRpb25hbEFwaU5hbWVzO1xuXG4gICAgICAgIHRoaXMuZmlsbERhdGEoKTtcbiAgICB9XG5cbiAgICBtbVRvUHgobW0pOiBudW1iZXIge1xuICAgICAgICBjb25zdCBoZWlnaHQgPSB0aGlzLm15MW1tLm5hdGl2ZUVsZW1lbnQuY2xpZW50SGVpZ2h0O1xuICAgICAgICByZXR1cm4gTWF0aC5mbG9vcihtbSAqIGhlaWdodCk7IC8vIHJldHVybnMgc2l6ZXMgaW4gUFhcbiAgICB9XG5cbiAgICBwcml2YXRlIGlzTWF0cml4VmlldygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFZpZXdUeXBlICYmXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRWaWV3VHlwZS5LZXkgPT09ICdPcmRlckNlbnRlck1hdHJpeCdcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGlzRmxhdE1hdHJpeFZpZXcoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRWaWV3VHlwZSAmJlxuICAgICAgICAgICAgdGhpcy5jdXJyZW50Vmlld1R5cGUuS2V5ID09PSAnT3JkZXJDZW50ZXJGbGF0TWF0cml4R3JpZCdcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBpc1RhYmxlVmlldygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNNYXRyaXhWaWV3KCkgfHwgdGhpcy5pc0ZsYXRNYXRyaXhWaWV3KCk7XG4gICAgfVxuXG4gICAgY2hhbmdlQ2hpbGRyZW5WaWV3VHlwZSh2aWV3VHlwZUtleTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMucm93cyA9IFtdO1xuICAgICAgICB0aGlzLnVpQ29udHJvbCA9IG51bGw7XG5cbiAgICAgICAgZm9yIChjb25zdCB2dCBvZiB0aGlzLmNoaWxkVmlld1R5cGVzKSB7XG4gICAgICAgICAgICBpZiAodnQuS2V5ID09PSB2aWV3VHlwZUtleSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudFZpZXdUeXBlID0gdnQ7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmN1cnJlbnRWaWV3VHlwZVRpdGxlID0gdGhpcy5jdXJyZW50Vmlld1R5cGUuVmFsdWU7XG5cbiAgICAgICAgdGhpcy5pbnRlcm5hbFBhZ2VTZXJ2aWNlLmNoYW5nZUNoaWxkcmVuVmlld1R5cGUoXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRWaWV3VHlwZS5LZXksXG4gICAgICAgICAgICAocmVzOiBPYmplY3RzRGF0YSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZXMuUm93cykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbGxDaGlsZERhdGEocmVzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgc2V0Vmlld0NvdmVyKHJvd3MpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFyb3dzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtYXRyaXhDb250ID0gdGhpcy5tYWluVmlld0NvbnQubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qgdmlld1dpZHRoID0gbWF0cml4Q29udC5jbGllbnRXaWR0aDtcblxuICAgICAgICB0aGlzLnZpZXdXaWR0aCA9IHZpZXdXaWR0aCA/IHZpZXdXaWR0aC50b1N0cmluZygpIDogJzEwMCUnO1xuXG4gICAgICAgIC8vIGlmIHRoZSBtYXRyaXggbG9jYXRlZCBvbiB0aGUgYm90dG9tIC8gdGhlcmUgaXMgbm90aGluZyB1bmRlciB0aGUgbWF0cml4IHdlIGRvbnQgbmVlZCB0byBjaGVjayB0aGUgaGVpZ2h0XG4gICAgICAgIGlmIChwYXJzZUludCh2aWV3V2lkdGgsIDEwKSA8IHRoaXMubW1Ub1B4KHRoaXMuc3VtT2ZNaW5Db2xXaWR0aCkpIHtcbiAgICAgICAgICAgIHRoaXMuY292ZXJDaGlsZFRhYmxlID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuY292ZXJDaGlsZFRhYmxlID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIHNob3dNYXRyaXhEaWFsb2coKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuZGlhbG9nU2VydmljZS5nZXREaWFsb2dDb25maWcoXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZGlzYWJsZUNsb3NlOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAnbGFyZ2UnXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2dTZXJ2aWNlLm9wZW5EaWFsb2coXG4gICAgICAgICAgICB0aGlzLm1hdHJpeERpYWxvZ1RlbXBsYXRlLFxuICAgICAgICAgICAge30sXG4gICAgICAgICAgICBjb25maWdcbiAgICAgICAgKTtcblxuICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJPcGVuZWQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5maWxsRGF0YSh0cnVlKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5maWxsRGF0YShmYWxzZSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICAvLyBsZXQgZmllbGQgPSB0aGlzLmZpZWxkIGFzIFBlcEludGVybmFsUGFnZUZpZWxkO1xuXG4gICAgICAgIHRoaXMuaW50ZXJuYWxQYWdlU2VydmljZS5pbml0RGV0YWlscyhcbiAgICAgICAgICAgIHRoaXMuZmllbGQub2JqZWN0SWQsXG4gICAgICAgICAgICB0aGlzLmZpZWxkLnBhcmVudElkLFxuICAgICAgICAgICAgdGhpcy5maWVsZC5zZWFyY2hDb2RlLFxuICAgICAgICAgICAgKHJlc1ZpZXdUeXBlczogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgLy8gbXkgY29kZSBESS03MTM0XG4gICAgICAgICAgICAgICAgcmVzVmlld1R5cGVzLlJvd3MgPSByZXNWaWV3VHlwZXMuUm93cy5maWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgIChpdGVtKSA9PiBpdGVtLktleSAhPT0gJ09yZGVyQ2VudGVyVmlldzEnXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIGlmIChyZXNWaWV3VHlwZXMuUm93cyAmJiByZXNWaWV3VHlwZXMuUm93cy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghcmVzVmlld1R5cGVzLkRlZmF1bHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc1ZpZXdUeXBlcy5EZWZhdWx0ID0gcmVzVmlld1R5cGVzLlJvd3NbMF0uS2V5O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2hpbGRWaWV3VHlwZXMgPSByZXNWaWV3VHlwZXMuUm93cztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50Vmlld1R5cGUgPSByZXNWaWV3VHlwZXMuUm93c1swXTtcblxuICAgICAgICAgICAgICAgICAgICAvLyBmb3IgKHZhciBpID0gMDsgaSA8IHJlc1ZpZXdUeXBlcy5Sb3dzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3Qgdmlld1R5cGVSb3cgb2YgcmVzVmlld1R5cGVzLlJvd3MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2aWV3VHlwZVJvdy5WYWx1ZSA9PT0gcmVzVmlld1R5cGVzLkRlZmF1bHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRWaWV3VHlwZSA9IHZpZXdUeXBlUm93O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkTGFzdEFkZGl0aW9uYWxBcGlOYW1lKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlQ2hpbGRyZW5WaWV3VHlwZSh0aGlzLmN1cnJlbnRWaWV3VHlwZS5LZXkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLnJlc2l6ZSA9IGZyb21FdmVudCh3aW5kb3csICdyZXNpemUnKVxuICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDEwKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRWaWV3Q292ZXIodGhpcy5yb3dzKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGxvYWRMYXN0QWRkaXRpb25hbEFwaU5hbWUoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRhYSA9IHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oXG4gICAgICAgICAgICBQZXBJbnRlcm5hbFBhZ2VDb21wb25lbnQuQ1VSUkVOVF9BRERJVElPTkFMX0FQSV9OQU1FXG4gICAgICAgICk7XG4gICAgICAgIGlmIChkYWEgJiYgZGFhLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGFkZGl0aW9uYWxBcGlOYW1lID0gSlNPTi5wYXJzZShkYWEpO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50QWRkaXRpb25hbEFwaU5hbWUgPSBhZGRpdGlvbmFsQXBpTmFtZTtcbiAgICAgICAgICAgIHRoaXMuaW50ZXJuYWxQYWdlU2VydmljZS5hZGRpdGlvbmFsQXBpTmFtZSA9IGFkZGl0aW9uYWxBcGlOYW1lPy5LZXk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucmVzaXplKSB7XG4gICAgICAgICAgICB0aGlzLnJlc2l6ZS51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2hhbmdlQWRkaXRpb25hbEFwaU5hbWUoYWRkaXRpb25hbEFwaU5hbWUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbnRlcm5hbFBhZ2VTZXJ2aWNlLmNoYW5nZUFkZGl0aW9uYWxBcGlOYW1lKFxuICAgICAgICAgICAgYWRkaXRpb25hbEFwaU5hbWUgPyBhZGRpdGlvbmFsQXBpTmFtZS5LZXkgOiAnJyxcbiAgICAgICAgICAgIChyZXM6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCByZXMuUm93cy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHJvdyBvZiByZXMuUm93cykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZUNoYW5nZXMocm93KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuXG4gICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oXG4gICAgICAgICAgICBQZXBJbnRlcm5hbFBhZ2VDb21wb25lbnQuQ1VSUkVOVF9BRERJVElPTkFMX0FQSV9OQU1FLFxuICAgICAgICAgICAgSlNPTi5zdHJpbmdpZnkoYWRkaXRpb25hbEFwaU5hbWUpXG4gICAgICAgICk7XG5cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRBZGRpdGlvbmFsQXBpTmFtZSA9IGFkZGl0aW9uYWxBcGlOYW1lO1xuICAgICAgICB9LCAwKTtcbiAgICB9XG5cbiAgICBzZXRUb3RhbHNSb3coKTogdm9pZCB7XG4gICAgICAgIHRoaXMudG90YWxzUm93ID0gW107XG5cbiAgICAgICAgaWYgKHRoaXMuaXNNYXRyaXhWaWV3KCkgfHwgdGhpcy5pc0ZsYXRNYXRyaXhWaWV3KCkpIHtcbiAgICAgICAgICAgIGxldCB0b3RhbENvbCA9IDA7XG5cbiAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5jdXN0b21MaXN0Lml0ZW1zO1xuICAgICAgICAgICAgaWYgKGl0ZW1zKSB7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgY29sID0gMDsgY29sIDwgaXRlbXNbMF0uRmllbGRzLmxlbmd0aDsgY29sKyspIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZmllbGQgPSBpdGVtc1swXS5GaWVsZHNbY29sXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQuRmllbGRUeXBlID09PSBGSUVMRF9UWVBFLk51bWJlckludGVnZXJGb3JNYXRyaXggfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLkZpZWxkVHlwZSA9PT1cbiAgICAgICAgICAgICAgICAgICAgICAgIEZJRUxEX1RZUEUuTnVtYmVySW50ZWdlclF1YW50aXR5U2VsZWN0b3IgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLkZpZWxkVHlwZSA9PT0gRklFTERfVFlQRS5OdW1iZXJSZWFsRm9yTWF0cml4IHx8XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWVsZC5GaWVsZFR5cGUgPT09XG4gICAgICAgICAgICAgICAgICAgICAgICBGSUVMRF9UWVBFLk51bWJlclJlYWxRdWFudGl0eVNlbGVjdG9yIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWVsZC5GaWVsZFR5cGUgPT09IEZJRUxEX1RZUEUuQ2FsY3VsYXRlZEludCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQuRmllbGRUeXBlID09PSBGSUVMRF9UWVBFLk51bWJlckludGVnZXIgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLkZpZWxkVHlwZSA9PT0gRklFTERfVFlQRS5DYWxjdWxhdGVkUmVhbCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQuRmllbGRUeXBlID09PSBGSUVMRF9UWVBFLk51bWJlclJlYWxcbiAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3RhbENvbCA9IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGxpc3RJdGVtIG9mIGl0ZW1zKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0SXRlbS5GaWVsZHNbY29sXSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0SXRlbS5GaWVsZHNbY29sXS5WYWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBudW0gPSBwYXJzZUZsb2F0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdEl0ZW0uRmllbGRzW2NvbF0uVmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxDb2wgKz0gaXNOYU4obnVtKSA/IDAgOiBudW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy50b3RhbHNSb3cucHVzaCh0b3RhbENvbCk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRvdGFsc1Jvdy5wdXNoKCcnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVwZGF0ZUNoYW5nZXMoZWxlbWVudFRvVXBkYXRlOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jdXN0b21MaXN0LnVwZGF0ZUl0ZW0oZWxlbWVudFRvVXBkYXRlKTtcblxuICAgICAgICAvLyBVcGRhdGUgbWVtb3J5IGRhdGFcbiAgICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IHRoaXMuY2hpbGREYXRhLlJvd3MubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5jaGlsZERhdGEuUm93c1tpbmRleF0uVUlEID09PSBlbGVtZW50VG9VcGRhdGUuVUlEKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jaGlsZERhdGEuUm93c1tpbmRleF0gPSBlbGVtZW50VG9VcGRhdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRWYWx1ZUNhbGxiYWNrKGlkOiBhbnksIHJlczogYW55KTogdm9pZCB7XG4gICAgICAgIGlmIChyZXMuUm93cy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkID0gcmVzLlJvd3NbMF0uRmllbGRzLmZpbmQoKGYpID0+IGYuQXBpTmFtZSA9PT0gJ09iamVjdE1lbnUnKTtcbiAgICAgICAgICAgIGlmIChmaWVsZCkge1xuICAgICAgICAgICAgICAgIC8vIEhBQ0sgOiBVbnRpbCBcIkVuYWJsZWRcIiByZXR1cm5zIGZyb20gdGhlIHNlcnZlciwgd2Ugc2V0IFBlcE1lbnUgdG8gYmVcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgRGlzYWJsZWQgaW4gY2FydCBvbiByZWd1bGFyIGl0ZW1zIGFuZCBub3QgY2FtcGlnbiBpdGVtcy5cbiAgICAgICAgICAgICAgICBmaWVsZC5FbmFibGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy51cGRhdGVDaGFuZ2VzKHJlcy5Sb3dzWzBdKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2V0VG90YWxzUm93KCk7XG4gICAgICAgIHRoaXMuY2hlY2tGb3JDaGFuZ2VzID0gbmV3IERhdGUoKTtcblxuICAgICAgICAvLyBESS0xNTk4NVxuICAgICAgICB0aGlzLmludGVybmFsRm9ybUZpZWxkQ2hhbmdlLmVtaXQocmVzKTtcblxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIG9uQ3VzdG9taXplT2JqZWN0Q2hhbmdlZChcbiAgICAgICAgY3VzdG9taXplT2JqZWN0Q2hhbmdlZERhdGE6IElQZXBGb3JtRmllbGRWYWx1ZUNoYW5nZUV2ZW50XG4gICAgKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW50ZXJuYWxQYWdlU2VydmljZS5jaGlsZFZhbHVlQ2hhbmdlZChcbiAgICAgICAgICAgIGN1c3RvbWl6ZU9iamVjdENoYW5nZWREYXRhLmlkLFxuICAgICAgICAgICAgY3VzdG9taXplT2JqZWN0Q2hhbmdlZERhdGEua2V5LFxuICAgICAgICAgICAgY3VzdG9taXplT2JqZWN0Q2hhbmdlZERhdGEudmFsdWUsXG4gICAgICAgICAgICAocmVzOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldFZhbHVlQ2FsbGJhY2soY3VzdG9taXplT2JqZWN0Q2hhbmdlZERhdGEuaWQsIHJlcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgb25DdXN0b21pemVGaWVsZENsaWNrKGZpZWxkQ2xpY2tFdmVudDogSVBlcEZvcm1GaWVsZENsaWNrRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgbGV0IGhhbmRsZWRFdmVudCA9IGZhbHNlO1xuXG4gICAgICAgIC8vIEZvciB0aGUgbmV3IGN1c3RvbSBmb3JtLCB0aGUgcGx1cyBhbmQgbWludXMgZXZlbnRzIHRyYW5zZm9ybSBpbiB0aGUgSVBlcEZvcm1GaWVsZFZhbHVlQ2hhbmdlRXZlbnRcbiAgICAgICAgaWYgKGZpZWxkQ2xpY2tFdmVudC5jb250cm9sVHlwZSA9PT0gJ3FzJykge1xuICAgICAgICAgICAgaWYgKGZpZWxkQ2xpY2tFdmVudC52YWx1ZSA9PT0gUGVwUXVhbnRpdHlTZWxlY3RvckNvbXBvbmVudC5QTFVTKSB7XG4gICAgICAgICAgICAgICAgaGFuZGxlZEV2ZW50ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLmludGVybmFsUGFnZVNlcnZpY2UuY2hpbGRQbHVzQ2xpY2soXG4gICAgICAgICAgICAgICAgICAgIGZpZWxkQ2xpY2tFdmVudC5pZCxcbiAgICAgICAgICAgICAgICAgICAgZmllbGRDbGlja0V2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgKHJlczogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFZhbHVlQ2FsbGJhY2soZmllbGRDbGlja0V2ZW50LmlkLCByZXMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgICAgICAgZmllbGRDbGlja0V2ZW50LnZhbHVlID09PSBQZXBRdWFudGl0eVNlbGVjdG9yQ29tcG9uZW50Lk1JTlVTXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBoYW5kbGVkRXZlbnQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMuaW50ZXJuYWxQYWdlU2VydmljZS5jaGlsZE1pbnVzQ2xpY2soXG4gICAgICAgICAgICAgICAgICAgIGZpZWxkQ2xpY2tFdmVudC5pZCxcbiAgICAgICAgICAgICAgICAgICAgZmllbGRDbGlja0V2ZW50LmtleSxcbiAgICAgICAgICAgICAgICAgICAgKHJlczogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFZhbHVlQ2FsbGJhY2soZmllbGRDbGlja0V2ZW50LmlkLCByZXMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghaGFuZGxlZEV2ZW50KSB7XG4gICAgICAgICAgICB0aGlzLmludGVybmFsRm9ybUZpZWxkQ2xpY2suZW1pdChmaWVsZENsaWNrRXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -118,4 +118,4 @@ PepInternalPageService.decorators = [
118
118
  PepInternalPageService.ctorParameters = () => [
119
119
  { type: PepHttpService }
120
120
  ];
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtcGFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9mb3JtL2ludGVybmFsLXBhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUd6RCxNQUFNLE9BQU8sc0JBQXNCO0lBUS9CLFlBQW9CLFdBQTJCO1FBQTNCLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUx2QyxhQUFRLEdBQUcsR0FBRyxDQUFDO1FBR2hCLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQUcxQixJQUFJLENBQUMsY0FBYyxHQUFHLDBDQUEwQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxnQkFBZ0I7UUFDWixNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsZUFBZSxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUM7UUFDbEYsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDO0lBRUQsV0FBVyxDQUFDLFlBQWlCOztRQUN6QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ3hCLGNBQWMsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUM3QixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDM0IsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtZQUN6Qyx1QkFBdUIsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN0QyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDMUIsQ0FBQyxDQUFDO1FBRUgscURBQXFEO1FBQ3JELE1BQU0sVUFBVSxHQUNaLENBQUEsTUFBQSxJQUFJLENBQUMsaUJBQWlCLDBDQUFFLE1BQU0sSUFBRyxDQUFDO1lBQzlCLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxp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QUFFLElBQUksQ0FBQzthQUNqRSxTQUFTLENBQ04sQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNKLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN0QixDQUFDO1FBQ0QsaUJBQWlCO1FBQ2pCLFdBQVc7U0FDZCxDQUFDO0lBQ1YsQ0FBQztJQUVELGlCQUFpQixDQUNiLE1BQWMsRUFDZCxZQUFvQixFQUNwQixLQUFhLEVBQ2IsWUFBaUI7UUFFakIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUN4QixjQUFjLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDN0IsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLHVCQUF1QixFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3RDLGtCQUFrQixFQUFFLE1BQU07WUFDMUIsWUFBWSxFQUFFLFlBQVk7WUFDMUIsVUFBVSxFQUFFLEtBQUs7WUFDakIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQzFCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxXQUFXO2FBQ1gsZUFBZSxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxJQUFJLENBQUM7YUFDaEUsU0FBUyxDQUNOLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDSixZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEIsQ0FBQztRQUNELGlCQUFpQjtRQUNqQixXQUFXO1NBQ2QsQ0FBQztJQUNWLENBQUM7OztZQTdKSixVQUFVOzs7WUFGRixjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBQZXBIdHRwU2VydmljZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFBlcEludGVybmFsUGFnZVNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSB0cmFuc2FjdGlvblVybDogc3RyaW5nO1xyXG4gICAgcHJpdmF0ZSBvYmplY3RJZDogc3RyaW5nO1xyXG4gICAgcHJpdmF0ZSBwYXJlbnRJZCA9ICcwJztcclxuICAgIHByaXZhdGUgc2VhcmNoQ29kZTogc3RyaW5nO1xyXG4gICAgcHJpdmF0ZSB2aWV3VHlwZTogc3RyaW5nO1xyXG4gICAgcHVibGljIGFkZGl0aW9uYWxBcGlOYW1lID0gJyc7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwU2VydmljZTogUGVwSHR0cFNlcnZpY2UpIHtcclxuICAgICAgICB0aGlzLnRyYW5zYWN0aW9uVXJsID0gJ1NlcnZpY2UxLnN2Yy92MS9PcmRlckNlbnRlci9UcmFuc2FjdGlvbi8nO1xyXG4gICAgfVxyXG5cclxuICAgIGdldEJhc2VQYXJlbnRVcmwoKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCB1cmwgPSBgJHt0aGlzLnRyYW5zYWN0aW9uVXJsfSR7dGhpcy5vYmplY3RJZH0vUGFyZW50TGluZS8ke3RoaXMucGFyZW50SWR9L2A7XHJcbiAgICAgICAgcmV0dXJuIHVybDtcclxuICAgIH1cclxuXHJcbiAgICBnZXRDaGlsZHJlbihjYWxsYmFja0Z1bmM6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGJvZHkgPSBKU09OLnN0cmluZ2lmeSh7XHJcbiAgICAgICAgICAgIFRyYW5zYWN0aW9uVUlEOiB0aGlzLm9iamVjdElkLFxyXG4gICAgICAgICAgICBTZWFyY2hDb2RlOiB0aGlzLnNlYXJjaENvZGUsXHJcbiAgICAgICAgICAgIEFkZGl0aW9uYWxBcGlOYW1lOiB0aGlzLmFkZGl0aW9uYWxBcGlOYW1lLFxyXG4gICAgICAgICAgICBQYXJlbnRUcmFuc2FjdGlvbkxpbmVJRDogdGhpcy5wYXJlbnRJZCxcclxuICAgICAgICAgICAgVmlld1R5cGU6IHRoaXMudmlld1R5cGUsXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIC8vIFNldCB0aGUgYWRkaXRpb25hbCBhcGkgbmFtZSB3aXRoIHZpZXcgdHlwZSBzdHJpbmcuXHJcbiAgICAgICAgY29uc3QgbW9yZVBhcmFtcyA9XHJcbiAgICAgICAgICAgIHRoaXMuYWRkaXRpb25hbEFwaU5hbWU/Lmxlbmd0aCA+IDBcclxuICAgICAgICAgICAgICAgID8gYCR7dGhpcy5hZGRpdGlvbmFsQXBpTmFtZX0vJHt0aGlzLnZpZXdUeXBlfWBcclxuICAgICAgICAgICAgICAgIDogYCcnLyR7dGhpcy52aWV3VHlwZX1gO1xyXG5cclxuICAgICAgICBjb25zdCB1cmwgPSBgJHt0aGlzLmdldEJhc2VQYXJlbnRVcmwoKX1JdGVtcy8ke21vcmVQYXJhbXN9YDtcclxuXHJcbiAgICAgICAgdGhpcy5odHRwU2VydmljZS5wb3N0V2FwaUFwaUNhbGwodXJsLCBib2R5KS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgIChyZXMpID0+IHtcclxuICAgICAgICAgICAgICAgIGNhbGxiYWNrRnVuYyhyZXMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC8vIChlcnJvcikgPT4ge30sXHJcbiAgICAgICAgICAgIC8vICgpID0+IHt9XHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBpbml0RGV0YWlscyhcclxuICAgICAgICBvYmplY3RJZDogc3RyaW5nLFxyXG4gICAgICAgIHBhcmVudElkOiBzdHJpbmcsXHJcbiAgICAgICAgc2VhcmNoQ29kZTogc3RyaW5nLFxyXG4gICAgICAgIGNhbGxiYWNrRnVuYzogYW55XHJcbiAgICApOiB2b2lkIHtcclxuICAgICAgICBpZiAoIW9iamVjdElkIHx8ICFwYXJlbnRJZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLm9iamVjdElkID0gb2JqZWN0SWQ7XHJcbiAgICAgICAgdGhpcy5wYXJlbnRJZCA9IHBhcmVudElkO1xyXG4gICAgICAgIHRoaXMuc2VhcmNoQ29kZSA9IHNlYXJjaENvZGU7XHJcblxyXG4gICAgICAgIHRoaXMuaHR0cFNlcnZpY2VcclxuICAgICAgICAgICAgLmdldFdhcGlBcGlDYWxsKGAke3RoaXMuZ2V0QmFzZVBhcmVudFVybCgpfVZpZXdUeXBlc2ApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICAocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2tGdW5jKHJlcyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAvLyAoZXJyb3IpID0+IHt9LFxyXG4gICAgICAgICAgICAgICAgLy8gKCkgPT4ge31cclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBjaGFuZ2VDaGlsZHJlblZpZXdUeXBlKHZpZXdUeXBlOiBzdHJpbmcsIGNhbGxiYWNrRnVuYzogYW55KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy52aWV3VHlwZSA9IHZpZXdUeXBlO1xyXG4gICAgICAgIHRoaXMuZ2V0Q2hpbGRyZW4oY2FsbGJhY2tGdW5jKTtcclxuICAgIH1cclxuXHJcbiAgICBjaGFuZ2VBZGRpdGlvbmFsQXBpTmFtZShcclxuICAgICAgICBhZGRpdGlvbmFsQXBpTmFtZTogc3RyaW5nLFxyXG4gICAgICAgIGNhbGxiYWNrRnVuYzogYW55XHJcbiAgICApOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmFkZGl0aW9uYWxBcGlOYW1lID0gYWRkaXRpb25hbEFwaU5hbWU7XHJcbiAgICAgICAgdGhpcy5nZXRDaGlsZHJlbihjYWxsYmFja0Z1bmMpO1xyXG4gICAgfVxyXG5cclxuICAgIGNoaWxkUGx1c0NsaWNrKFxyXG4gICAgICAgIGl0ZW1JZDogc3RyaW5nLFxyXG4gICAgICAgIGZpZWxkQXBpTmFtZTogc3RyaW5nLFxyXG4gICAgICAgIGNhbGxiYWNrRnVuYzogYW55XHJcbiAgICApOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBib2R5ID0gSlNPTi5zdHJpbmdpZnkoe1xyXG4gICAgICAgICAgICBUcmFuc2FjdGlvblVJRDogdGhpcy5vYmplY3RJZCxcclxuICAgICAgICAgICAgU2VhcmNoQ29kZTogdGhpcy5zZWFyY2hDb2RlLFxyXG4gICAgICAgICAgICBQYXJlbnRUcmFuc2FjdGlvbkxpbmVJRDogdGhpcy5wYXJlbnRJZCxcclxuICAgICAgICAgICAgVHJhbnNhY3Rpb25MaW5lVUlEOiBpdGVtSWQsXHJcbiAgICAgICAgICAgIEZpZWxkQXBpTmFtZTogZmllbGRBcGlOYW1lLFxyXG4gICAgICAgICAgICBWaWV3VHlwZTogdGhpcy52aWV3VHlwZSxcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgdGhpcy5odHRwU2VydmljZVxyXG4gICAgICAgICAgICAucG9zdFdhcGlBcGlDYWxsKGAke3RoaXMuZ2V0QmFzZVBhcmVudFVybCgpfUluY3JlbWVudFZhbHVlYCwgYm9keSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAgIChyZXMpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjYWxsYmFja0Z1bmMocmVzKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC8vIChlcnJvcikgPT4ge30sXHJcbiAgICAgICAgICAgICAgICAvLyAoKSA9PiB7fVxyXG4gICAgICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGNoaWxkTWludXNDbGljayhcclxuICAgICAgICBpdGVtSWQ6IHN0cmluZyxcclxuICAgICAgICBmaWVsZEFwaU5hbWU6IHN0cmluZyxcclxuICAgICAgICBjYWxsYmFja0Z1bmM6IGFueVxyXG4gICAgKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgYm9keSA9IEpTT04uc3RyaW5naWZ5KHtcclxuICAgICAgICAgICAgVHJhbnNhY3Rpb25VSUQ6IHRoaXMub2JqZWN0SWQsXHJcbiAgICAgICAgICAgIFNlYXJjaENvZGU6IHRoaXMuc2VhcmNoQ29kZSxcclxuICAgICAgICAgICAgUGFyZW50VHJhbnNhY3Rpb25MaW5lSUQ6IHRoaXMucGFyZW50SWQsXHJcbiAgICAgICAgICAgIFRyYW5zYWN0aW9uTGluZVVJRDogaXRlbUlkLFxyXG4gICAgICAgICAgICBGaWVsZEFwaU5hbWU6IGZpZWxkQXBpTmFtZSxcclxuICAgICAgICAgICAgVmlld1R5cGU6IHRoaXMudmlld1R5cGUsXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuaHR0cFNlcnZpY2VcclxuICAgICAgICAgICAgLnBvc3RXYXBpQXBpQ2FsbChgJHt0aGlzLmdldEJhc2VQYXJlbnRVcmwoKX1EZWNyZW1lbnRWYWx1ZWAsIGJvZHkpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICAocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2tGdW5jKHJlcyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAvLyAoZXJyb3IpID0+IHt9LFxyXG4gICAgICAgICAgICAgICAgLy8gKCkgPT4ge31cclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBjaGlsZFZhbHVlQ2hhbmdlZChcclxuICAgICAgICBpdGVtSWQ6IHN0cmluZyxcclxuICAgICAgICBmaWVsZEFwaU5hbWU6IHN0cmluZyxcclxuICAgICAgICB2YWx1ZTogc3RyaW5nLFxyXG4gICAgICAgIGNhbGxiYWNrRnVuYzogYW55XHJcbiAgICApOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBib2R5ID0gSlNPTi5zdHJpbmdpZnkoe1xyXG4gICAgICAgICAgICBUcmFuc2FjdGlvblVJRDogdGhpcy5vYmplY3RJZCxcclxuICAgICAgICAgICAgU2VhcmNoQ29kZTogdGhpcy5zZWFyY2hDb2RlLFxyXG4gICAgICAgICAgICBQYXJlbnRUcmFuc2FjdGlvbkxpbmVJRDogdGhpcy5wYXJlbnRJZCxcclxuICAgICAgICAgICAgVHJhbnNhY3Rpb25MaW5lVUlEOiBpdGVtSWQsXHJcbiAgICAgICAgICAgIEZpZWxkQXBpTmFtZTogZmllbGRBcGlOYW1lLFxyXG4gICAgICAgICAgICBGaWVsZFZhbHVlOiB2YWx1ZSxcclxuICAgICAgICAgICAgVmlld1R5cGU6IHRoaXMudmlld1R5cGUsXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuaHR0cFNlcnZpY2VcclxuICAgICAgICAgICAgLnBvc3RXYXBpQXBpQ2FsbChgJHt0aGlzLmdldEJhc2VQYXJlbnRVcmwoKX1TZXRGaWVsZFZhbHVlYCwgYm9keSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAgIChyZXMpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjYWxsYmFja0Z1bmMocmVzKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC8vIChlcnJvcikgPT4ge30sXHJcbiAgICAgICAgICAgICAgICAvLyAoKSA9PiB7fVxyXG4gICAgICAgICAgICApO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtcGFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9mb3JtL2ludGVybmFsLXBhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUd6RCxNQUFNLE9BQU8sc0JBQXNCO0lBUS9CLFlBQW9CLFdBQTJCO1FBQTNCLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUx2QyxhQUFRLEdBQUcsR0FBRyxDQUFDO1FBR2hCLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQUcxQixJQUFJLENBQUMsY0FBYyxHQUFHLDBDQUEwQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxnQkFBZ0I7UUFDWixNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsZUFBZSxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUM7UUFDbEYsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDO0lBRUQsV0FBVyxDQUFDLFlBQWlCOztRQUN6QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ3hCLGNBQWMsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUM3QixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDM0IsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtZQUN6Qyx1QkFBdUIsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN0QyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDMUIsQ0FBQyxDQUFDO1FBRUgscURBQXFEO1FBQ3JELE1BQU0sVUFBVSxHQUNaLENBQUEsTUFBQSxJQUFJLENBQUMsaUJBQWlCLDBDQUFFLE1BQU0sSUFBRyxDQUFDO1lBQzlCLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxp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QUFFLElBQUksQ0FBQzthQUNqRSxTQUFTLENBQ04sQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNKLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN0QixDQUFDO1FBQ0QsaUJBQWlCO1FBQ2pCLFdBQVc7U0FDZCxDQUFDO0lBQ1YsQ0FBQztJQUVELGlCQUFpQixDQUNiLE1BQWMsRUFDZCxZQUFvQixFQUNwQixLQUFhLEVBQ2IsWUFBaUI7UUFFakIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUN4QixjQUFjLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDN0IsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLHVCQUF1QixFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3RDLGtCQUFrQixFQUFFLE1BQU07WUFDMUIsWUFBWSxFQUFFLFlBQVk7WUFDMUIsVUFBVSxFQUFFLEtBQUs7WUFDakIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQzFCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxXQUFXO2FBQ1gsZUFBZSxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxJQUFJLENBQUM7YUFDaEUsU0FBUyxDQUNOLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDSixZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEIsQ0FBQztRQUNELGlCQUFpQjtRQUNqQixXQUFXO1NBQ2QsQ0FBQztJQUNWLENBQUM7OztZQTdKSixVQUFVOzs7WUFGRixjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUGVwSHR0cFNlcnZpY2UgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBQZXBJbnRlcm5hbFBhZ2VTZXJ2aWNlIHtcbiAgICBwcml2YXRlIHRyYW5zYWN0aW9uVXJsOiBzdHJpbmc7XG4gICAgcHJpdmF0ZSBvYmplY3RJZDogc3RyaW5nO1xuICAgIHByaXZhdGUgcGFyZW50SWQgPSAnMCc7XG4gICAgcHJpdmF0ZSBzZWFyY2hDb2RlOiBzdHJpbmc7XG4gICAgcHJpdmF0ZSB2aWV3VHlwZTogc3RyaW5nO1xuICAgIHB1YmxpYyBhZGRpdGlvbmFsQXBpTmFtZSA9ICcnO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwU2VydmljZTogUGVwSHR0cFNlcnZpY2UpIHtcbiAgICAgICAgdGhpcy50cmFuc2FjdGlvblVybCA9ICdTZXJ2aWNlMS5zdmMvdjEvT3JkZXJDZW50ZXIvVHJhbnNhY3Rpb24vJztcbiAgICB9XG5cbiAgICBnZXRCYXNlUGFyZW50VXJsKCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHVybCA9IGAke3RoaXMudHJhbnNhY3Rpb25Vcmx9JHt0aGlzLm9iamVjdElkfS9QYXJlbnRMaW5lLyR7dGhpcy5wYXJlbnRJZH0vYDtcbiAgICAgICAgcmV0dXJuIHVybDtcbiAgICB9XG5cbiAgICBnZXRDaGlsZHJlbihjYWxsYmFja0Z1bmM6IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zdCBib2R5ID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgVHJhbnNhY3Rpb25VSUQ6IHRoaXMub2JqZWN0SWQsXG4gICAgICAgICAgICBTZWFyY2hDb2RlOiB0aGlzLnNlYXJjaENvZGUsXG4gICAgICAgICAgICBBZGRpdGlvbmFsQXBpTmFtZTogdGhpcy5hZGRpdGlvbmFsQXBpTmFtZSxcbiAgICAgICAgICAgIFBhcmVudFRyYW5zYWN0aW9uTGluZUlEOiB0aGlzLnBhcmVudElkLFxuICAgICAgICAgICAgVmlld1R5cGU6IHRoaXMudmlld1R5cGUsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFNldCB0aGUgYWRkaXRpb25hbCBhcGkgbmFtZSB3aXRoIHZpZXcgdHlwZSBzdHJpbmcuXG4gICAgICAgIGNvbnN0IG1vcmVQYXJhbXMgPVxuICAgICAgICAgICAgdGhpcy5hZGRpdGlvbmFsQXBpTmFtZT8ubGVuZ3RoID4gMFxuICAgICAgICAgICAgICAgID8gYCR7dGhpcy5hZGRpdGlvbmFsQXBpTmFtZX0vJHt0aGlzLnZpZXdUeXBlfWBcbiAgICAgICAgICAgICAgICA6IGAnJy8ke3RoaXMudmlld1R5cGV9YDtcblxuICAgICAgICBjb25zdCB1cmwgPSBgJHt0aGlzLmdldEJhc2VQYXJlbnRVcmwoKX1JdGVtcy8ke21vcmVQYXJhbXN9YDtcblxuICAgICAgICB0aGlzLmh0dHBTZXJ2aWNlLnBvc3RXYXBpQXBpQ2FsbCh1cmwsIGJvZHkpLnN1YnNjcmliZShcbiAgICAgICAgICAgIChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICBjYWxsYmFja0Z1bmMocmVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIChlcnJvcikgPT4ge30sXG4gICAgICAgICAgICAvLyAoKSA9PiB7fVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGluaXREZXRhaWxzKFxuICAgICAgICBvYmplY3RJZDogc3RyaW5nLFxuICAgICAgICBwYXJlbnRJZDogc3RyaW5nLFxuICAgICAgICBzZWFyY2hDb2RlOiBzdHJpbmcsXG4gICAgICAgIGNhbGxiYWNrRnVuYzogYW55XG4gICAgKTogdm9pZCB7XG4gICAgICAgIGlmICghb2JqZWN0SWQgfHwgIXBhcmVudElkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9iamVjdElkID0gb2JqZWN0SWQ7XG4gICAgICAgIHRoaXMucGFyZW50SWQgPSBwYXJlbnRJZDtcbiAgICAgICAgdGhpcy5zZWFyY2hDb2RlID0gc2VhcmNoQ29kZTtcblxuICAgICAgICB0aGlzLmh0dHBTZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0V2FwaUFwaUNhbGwoYCR7dGhpcy5nZXRCYXNlUGFyZW50VXJsKCl9Vmlld1R5cGVzYClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgKHJlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjYWxsYmFja0Z1bmMocmVzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gKGVycm9yKSA9PiB7fSxcbiAgICAgICAgICAgICAgICAvLyAoKSA9PiB7fVxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBjaGFuZ2VDaGlsZHJlblZpZXdUeXBlKHZpZXdUeXBlOiBzdHJpbmcsIGNhbGxiYWNrRnVuYzogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMudmlld1R5cGUgPSB2aWV3VHlwZTtcbiAgICAgICAgdGhpcy5nZXRDaGlsZHJlbihjYWxsYmFja0Z1bmMpO1xuICAgIH1cblxuICAgIGNoYW5nZUFkZGl0aW9uYWxBcGlOYW1lKFxuICAgICAgICBhZGRpdGlvbmFsQXBpTmFtZTogc3RyaW5nLFxuICAgICAgICBjYWxsYmFja0Z1bmM6IGFueVxuICAgICk6IHZvaWQge1xuICAgICAgICB0aGlzLmFkZGl0aW9uYWxBcGlOYW1lID0gYWRkaXRpb25hbEFwaU5hbWU7XG4gICAgICAgIHRoaXMuZ2V0Q2hpbGRyZW4oY2FsbGJhY2tGdW5jKTtcbiAgICB9XG5cbiAgICBjaGlsZFBsdXNDbGljayhcbiAgICAgICAgaXRlbUlkOiBzdHJpbmcsXG4gICAgICAgIGZpZWxkQXBpTmFtZTogc3RyaW5nLFxuICAgICAgICBjYWxsYmFja0Z1bmM6IGFueVxuICAgICk6IHZvaWQge1xuICAgICAgICBjb25zdCBib2R5ID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgVHJhbnNhY3Rpb25VSUQ6IHRoaXMub2JqZWN0SWQsXG4gICAgICAgICAgICBTZWFyY2hDb2RlOiB0aGlzLnNlYXJjaENvZGUsXG4gICAgICAgICAgICBQYXJlbnRUcmFuc2FjdGlvbkxpbmVJRDogdGhpcy5wYXJlbnRJZCxcbiAgICAgICAgICAgIFRyYW5zYWN0aW9uTGluZVVJRDogaXRlbUlkLFxuICAgICAgICAgICAgRmllbGRBcGlOYW1lOiBmaWVsZEFwaU5hbWUsXG4gICAgICAgICAgICBWaWV3VHlwZTogdGhpcy52aWV3VHlwZSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5odHRwU2VydmljZVxuICAgICAgICAgICAgLnBvc3RXYXBpQXBpQ2FsbChgJHt0aGlzLmdldEJhc2VQYXJlbnRVcmwoKX1JbmNyZW1lbnRWYWx1ZWAsIGJvZHkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgIChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2tGdW5jKHJlcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIChlcnJvcikgPT4ge30sXG4gICAgICAgICAgICAgICAgLy8gKCkgPT4ge31cbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgY2hpbGRNaW51c0NsaWNrKFxuICAgICAgICBpdGVtSWQ6IHN0cmluZyxcbiAgICAgICAgZmllbGRBcGlOYW1lOiBzdHJpbmcsXG4gICAgICAgIGNhbGxiYWNrRnVuYzogYW55XG4gICAgKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGJvZHkgPSBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICBUcmFuc2FjdGlvblVJRDogdGhpcy5vYmplY3RJZCxcbiAgICAgICAgICAgIFNlYXJjaENvZGU6IHRoaXMuc2VhcmNoQ29kZSxcbiAgICAgICAgICAgIFBhcmVudFRyYW5zYWN0aW9uTGluZUlEOiB0aGlzLnBhcmVudElkLFxuICAgICAgICAgICAgVHJhbnNhY3Rpb25MaW5lVUlEOiBpdGVtSWQsXG4gICAgICAgICAgICBGaWVsZEFwaU5hbWU6IGZpZWxkQXBpTmFtZSxcbiAgICAgICAgICAgIFZpZXdUeXBlOiB0aGlzLnZpZXdUeXBlLFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmh0dHBTZXJ2aWNlXG4gICAgICAgICAgICAucG9zdFdhcGlBcGlDYWxsKGAke3RoaXMuZ2V0QmFzZVBhcmVudFVybCgpfURlY3JlbWVudFZhbHVlYCwgYm9keSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgKHJlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjYWxsYmFja0Z1bmMocmVzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gKGVycm9yKSA9PiB7fSxcbiAgICAgICAgICAgICAgICAvLyAoKSA9PiB7fVxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBjaGlsZFZhbHVlQ2hhbmdlZChcbiAgICAgICAgaXRlbUlkOiBzdHJpbmcsXG4gICAgICAgIGZpZWxkQXBpTmFtZTogc3RyaW5nLFxuICAgICAgICB2YWx1ZTogc3RyaW5nLFxuICAgICAgICBjYWxsYmFja0Z1bmM6IGFueVxuICAgICk6IHZvaWQge1xuICAgICAgICBjb25zdCBib2R5ID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgVHJhbnNhY3Rpb25VSUQ6IHRoaXMub2JqZWN0SWQsXG4gICAgICAgICAgICBTZWFyY2hDb2RlOiB0aGlzLnNlYXJjaENvZGUsXG4gICAgICAgICAgICBQYXJlbnRUcmFuc2FjdGlvbkxpbmVJRDogdGhpcy5wYXJlbnRJZCxcbiAgICAgICAgICAgIFRyYW5zYWN0aW9uTGluZVVJRDogaXRlbUlkLFxuICAgICAgICAgICAgRmllbGRBcGlOYW1lOiBmaWVsZEFwaU5hbWUsXG4gICAgICAgICAgICBGaWVsZFZhbHVlOiB2YWx1ZSxcbiAgICAgICAgICAgIFZpZXdUeXBlOiB0aGlzLnZpZXdUeXBlLFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmh0dHBTZXJ2aWNlXG4gICAgICAgICAgICAucG9zdFdhcGlBcGlDYWxsKGAke3RoaXMuZ2V0QmFzZVBhcmVudFVybCgpfVNldEZpZWxkVmFsdWVgLCBib2R5KVxuICAgICAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICAocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrRnVuYyhyZXMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyAoZXJyb3IpID0+IHt9LFxuICAgICAgICAgICAgICAgIC8vICgpID0+IHt9XG4gICAgICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
@@ -3,4 +3,4 @@
3
3
  */
4
4
  export * from './form.module';
5
5
  export * from './form.component';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvZm9ybS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtbGliL2Zvcm1cclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2Zvcm0uY29tcG9uZW50JztcclxuIl19
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvZm9ybS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygbmd4LWxpYi9mb3JtXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vZm9ybS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtLmNvbXBvbmVudCc7XG4iXX0=
@@ -38,8 +38,8 @@ export class PepGroupButtonsComponent {
38
38
  PepGroupButtonsComponent.decorators = [
39
39
  { type: Component, args: [{
40
40
  selector: 'pep-group-buttons',
41
- template: "<div class=\"group-buttons-container\" pepRtlDirection>\r\n <ng-container *ngIf=\"viewType === 'regular'\">\r\n <button *ngFor=\"let button of buttons\" [pepDataQa]=\"button?.value\"\r\n class=\"pep-button pep-spacing-element pull-left flip first-button {{ sizeType }} {{ styleType }}\"\r\n [disabled]=\"buttonsDisabled || button.disabled\" mat-button (click)=\"onButtonClicked($event, button)\">\r\n <span [title]=\"button?.value\">{{ button?.value }}</span>\r\n </button>\r\n </ng-container>\r\n\r\n <div *ngIf=\"viewType === 'dropdown'\" class=\"dropdown-buttons pep-spacing-element\"\r\n [ngClass]=\"{dropup: screenSize >= PepScreenSizeType.MD}\">\r\n <button [pepDataQa]=\"buttons[0]?.value\"\r\n class=\"pep-button pull-left flip first-button {{ sizeType }} {{ styleType }}\"\r\n (click)=\"onButtonClicked($event, buttons[0])\" [disabled]=\"buttonsDisabled || buttons[0].disabled\"\r\n mat-button>\r\n <span class=\"ellipsis\" [title]=\"buttons[0]?.value\">{{ buttons[0]?.value }}</span>\r\n </button>\r\n <button class=\"pep-button icon-button pull-right flip last-button {{ sizeType }} {{ styleType }}\"\r\n [matMenuTriggerFor]=\"actionsMenu\" [disabled]=\"buttonsDisabled\" pepMenuBlur mat-button>\r\n <mat-icon>\r\n <pep-icon name=\"{{ screenSize < PepScreenSizeType.MD ? 'arrow_down' : 'arrow_up' }}\">\r\n </pep-icon>\r\n </mat-icon>\r\n </button>\r\n\r\n <mat-menu #actionsMenu=\"matMenu\" xPosition=\"before\">\r\n <ng-container *ngFor=\"let button of buttons; let i = index; first as isFirst\">\r\n <button *ngIf=\"!isFirst\" mat-menu-item [pepDataQa]=\"button?.value\"\r\n (click)=\"onButtonClicked($event, button)\">\r\n <span [title]=\"button?.value\">{{ button?.value }}</span>\r\n </button>\r\n </ng-container>\r\n </mat-menu>\r\n </div>\r\n\r\n <div *ngIf=\"viewType === 'split'\" class=\"split-buttons\">\r\n <button *ngFor=\"let button of buttons; let index; let isFirst = first; let isLast = last\"\r\n [pepDataQa]=\"button?.value\" mat-button pepButtonBlur\r\n class=\"pep-button {{ sizeType }} {{ styleType }} {{ button?.classNames }} pull-left flip\"\r\n [disabled]=\"buttonsDisabled || button.disabled\" [ngClass]=\"{\r\n 'first-button': isFirst, \r\n 'middle-button': !isFirst && !isLast, \r\n 'last-button': isLast, \r\n 'icon-button': button?.iconName && !button?.value}\" (click)=\"onButtonClicked($event, button)\">\r\n\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: {button: button}\"></ng-container>\r\n </button>\r\n </div>\r\n\r\n <div *ngIf=\"viewType === 'toggle'\" class=\"toggle-buttons\" [ngClass]=\"{ 'stretch': stretch }\">\r\n <button *ngFor=\"let button of buttons; let index; let isFirst = first; let isLast = last\"\r\n [pepDataQa]=\"button?.value\" mat-button pepButtonBlur\r\n class=\"pep-button {{ sizeType }} {{ styleType }} {{ button?.classNames }} pull-left flip\"\r\n [disabled]=\"buttonsDisabled || button.disabled\" [ngClass]=\"{\r\n 'first-button': isFirst && !isLast, \r\n 'middle-button': !isFirst && !isLast, \r\n 'last-button': isLast && !isFirst,\r\n 'icon-button': button?.iconName && !button?.value,\r\n 'is-selected': button?.key !== '' && button?.key === selectedButtonKey}\"\r\n (click)=\"onButtonClicked($event, button)\">\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: {button: button}\"></ng-container>\r\n </button>\r\n </div>\r\n</div>\r\n\r\n<ng-template #contentTemplate let-button=\"button\">\r\n <mat-icon *ngIf=\"button.iconName && (!button.iconPosition || button.iconPosition === 'start')\"\r\n [ngClass]=\"{ 'pull-left flip': button.value }\">\r\n <pep-icon name=\"{{button.iconName}}\"></pep-icon>\r\n </mat-icon>\r\n <span *ngIf=\"button.value\" class=\"ellipsis pull-left flip\"\r\n [ngClass]=\"{ 'button-title-with-icon': button.iconName, 'icon-before': button.iconPosition === 'start' }\"\r\n [title]=\"button.value\">\r\n {{button.value}}\r\n </span>\r\n <mat-icon *ngIf=\"button.iconName && button.iconPosition === 'end'\" [ngClass]=\"{ 'pull-left flip': button.value }\">\r\n <pep-icon name=\"{{button.iconName}}\"></pep-icon>\r\n </mat-icon>\r\n</ng-template>",
42
- styles: [".group-buttons-container{display:flex;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem)}.group-buttons-container .dropdown-buttons .first-button,.group-buttons-container .split-buttons .first-button,.group-buttons-container .toggle-buttons .first-button{-webkit-margin-end:1px;margin-inline-end:1px}.group-buttons-container .dropdown-buttons .first-button,.group-buttons-container .dropdown-buttons .first-button:after,.group-buttons-container .split-buttons .first-button,.group-buttons-container .split-buttons .first-button:after,.group-buttons-container .toggle-buttons .first-button,.group-buttons-container .toggle-buttons .first-button:after{border-radius:.25rem 0 0 .25rem;border-radius:var(--pep-border-radius-md,.25rem) 0 0 var(--pep-border-radius-md,.25rem)}.group-buttons-container .dropdown-buttons .last-button,.group-buttons-container .dropdown-buttons .last-button:after,.group-buttons-container .split-buttons .last-button,.group-buttons-container .split-buttons .last-button:after,.group-buttons-container .toggle-buttons .last-button,.group-buttons-container .toggle-buttons .last-button:after{border-radius:0 .25rem .25rem 0;border-radius:0 var(--pep-border-radius-md,.25rem) var(--pep-border-radius-md,.25rem) 0}.group-buttons-container .dropdown-buttons .pep-button,.group-buttons-container .dropdown-buttons .pepperi-button,.group-buttons-container .split-buttons .pep-button,.group-buttons-container .split-buttons .pepperi-button,.group-buttons-container .toggle-buttons .pep-button,.group-buttons-container .toggle-buttons .pepperi-button{margin-top:0!important}.group-buttons-container .dropdown-buttons .pep-button.cdk-focused,.group-buttons-container .dropdown-buttons .pepperi-button.cdk-focused,.group-buttons-container .split-buttons .pep-button.cdk-focused,.group-buttons-container .split-buttons .pepperi-button.cdk-focused,.group-buttons-container .toggle-buttons .pep-button.cdk-focused,.group-buttons-container .toggle-buttons .pepperi-button.cdk-focused{z-index:2}@media (max-width:599px){.group-buttons-container .dropdown-buttons.dropup .first-button,.group-buttons-container .split-buttons.dropup .first-button,.group-buttons-container .toggle-buttons.dropup .first-button{max-width:200px;padding:0 .25rem}.group-buttons-container .dropdown-buttons.dropup .last-button,.group-buttons-container .split-buttons.dropup .last-button,.group-buttons-container .toggle-buttons.dropup .last-button{padding:0}}.group-buttons-container .split-buttons,.group-buttons-container .toggle-buttons{display:grid;grid-auto-flow:column}.group-buttons-container .split-buttons.stretch,.group-buttons-container .toggle-buttons.stretch{width:100%}.group-buttons-container .split-buttons .pep-button,.group-buttons-container .toggle-buttons .pep-button{max-width:unset}.group-buttons-container .split-buttons .first-button,.group-buttons-container .toggle-buttons .first-button{-webkit-margin-end:-1px;margin-inline-end:-1px}.group-buttons-container .split-buttons .middle-button,.group-buttons-container .toggle-buttons .middle-button{border-radius:0;-webkit-margin-end:-1px;margin-inline-end:-1px}"]
41
+ template: "<div class=\"group-buttons-container\" pepRtlDirection>\n <ng-container *ngIf=\"viewType === 'regular'\">\n <button *ngFor=\"let button of buttons\" [pepDataQa]=\"button?.value\"\n class=\"pep-button pep-spacing-element pull-left flip first-button {{ sizeType }} {{ styleType }}\"\n [disabled]=\"buttonsDisabled || button.disabled\" mat-button (click)=\"onButtonClicked($event, button)\">\n <span [title]=\"button?.value\">{{ button?.value }}</span>\n </button>\n </ng-container>\n\n <div *ngIf=\"viewType === 'dropdown'\" class=\"dropdown-buttons pep-spacing-element\"\n [ngClass]=\"{dropup: screenSize >= PepScreenSizeType.MD}\">\n <button [pepDataQa]=\"buttons[0]?.value\"\n class=\"pep-button pull-left flip first-button {{ sizeType }} {{ styleType }}\"\n (click)=\"onButtonClicked($event, buttons[0])\" [disabled]=\"buttonsDisabled || buttons[0].disabled\"\n mat-button>\n <span class=\"ellipsis\" [title]=\"buttons[0]?.value\">{{ buttons[0]?.value }}</span>\n </button>\n <button class=\"pep-button icon-button pull-right flip last-button {{ sizeType }} {{ styleType }}\"\n [matMenuTriggerFor]=\"actionsMenu\" [disabled]=\"buttonsDisabled\" pepMenuBlur mat-button>\n <mat-icon>\n <pep-icon name=\"{{ screenSize < PepScreenSizeType.MD ? 'arrow_down' : 'arrow_up' }}\">\n </pep-icon>\n </mat-icon>\n </button>\n\n <mat-menu #actionsMenu=\"matMenu\" xPosition=\"before\">\n <ng-container *ngFor=\"let button of buttons; let i = index; first as isFirst\">\n <button *ngIf=\"!isFirst\" mat-menu-item [pepDataQa]=\"button?.value\"\n (click)=\"onButtonClicked($event, button)\">\n <span [title]=\"button?.value\">{{ button?.value }}</span>\n </button>\n </ng-container>\n </mat-menu>\n </div>\n\n <div *ngIf=\"viewType === 'split'\" class=\"split-buttons\">\n <button *ngFor=\"let button of buttons; let index; let isFirst = first; let isLast = last\"\n [pepDataQa]=\"button?.value\" mat-button pepButtonBlur\n class=\"pep-button {{ sizeType }} {{ styleType }} {{ button?.classNames }} pull-left flip\"\n [disabled]=\"buttonsDisabled || button.disabled\" [ngClass]=\"{\n 'first-button': isFirst, \n 'middle-button': !isFirst && !isLast, \n 'last-button': isLast, \n 'icon-button': button?.iconName && !button?.value}\" (click)=\"onButtonClicked($event, button)\">\n\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: {button: button}\"></ng-container>\n </button>\n </div>\n\n <div *ngIf=\"viewType === 'toggle'\" class=\"toggle-buttons\" [ngClass]=\"{ 'stretch': stretch }\">\n <button *ngFor=\"let button of buttons; let index; let isFirst = first; let isLast = last\"\n [pepDataQa]=\"button?.value\" mat-button pepButtonBlur\n class=\"pep-button {{ sizeType }} {{ styleType }} {{ button?.classNames }} pull-left flip\"\n [disabled]=\"buttonsDisabled || button.disabled\" [ngClass]=\"{\n 'first-button': isFirst && !isLast, \n 'middle-button': !isFirst && !isLast, \n 'last-button': isLast && !isFirst,\n 'icon-button': button?.iconName && !button?.value,\n 'is-selected': button?.key !== '' && button?.key === selectedButtonKey}\"\n (click)=\"onButtonClicked($event, button)\">\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: {button: button}\"></ng-container>\n </button>\n </div>\n</div>\n\n<ng-template #contentTemplate let-button=\"button\">\n <mat-icon *ngIf=\"button.iconName && (!button.iconPosition || button.iconPosition === 'start')\"\n [ngClass]=\"{ 'pull-left flip': button.value }\">\n <pep-icon name=\"{{button.iconName}}\"></pep-icon>\n </mat-icon>\n <span *ngIf=\"button.value\" class=\"ellipsis pull-left flip\"\n [ngClass]=\"{ 'button-title-with-icon': button.iconName, 'icon-before': button.iconPosition === 'start' }\"\n [title]=\"button.value\">\n {{button.value}}\n </span>\n <mat-icon *ngIf=\"button.iconName && button.iconPosition === 'end'\" [ngClass]=\"{ 'pull-left flip': button.value }\">\n <pep-icon name=\"{{button.iconName}}\"></pep-icon>\n </mat-icon>\n</ng-template>",
42
+ styles: [".group-buttons-container{display:flex;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem)}.group-buttons-container .dropdown-buttons .first-button,.group-buttons-container .split-buttons .first-button,.group-buttons-container .toggle-buttons .first-button{-webkit-margin-end:1px;margin-inline-end:1px}.group-buttons-container .dropdown-buttons .first-button,.group-buttons-container .dropdown-buttons .first-button:after,.group-buttons-container .split-buttons .first-button,.group-buttons-container .split-buttons .first-button:after,.group-buttons-container .toggle-buttons .first-button,.group-buttons-container .toggle-buttons .first-button:after{border-radius:.25rem 0 0 .25rem;border-radius:var(--pep-border-radius-md,.25rem) 0 0 var(--pep-border-radius-md,.25rem)}.group-buttons-container .dropdown-buttons .last-button,.group-buttons-container .dropdown-buttons .last-button:after,.group-buttons-container .split-buttons .last-button,.group-buttons-container .split-buttons .last-button:after,.group-buttons-container .toggle-buttons .last-button,.group-buttons-container .toggle-buttons .last-button:after{border-radius:0 .25rem .25rem 0;border-radius:0 var(--pep-border-radius-md,.25rem) var(--pep-border-radius-md,.25rem) 0}.group-buttons-container .dropdown-buttons .pep-button,.group-buttons-container .dropdown-buttons .pepperi-button,.group-buttons-container .split-buttons .pep-button,.group-buttons-container .split-buttons .pepperi-button,.group-buttons-container .toggle-buttons .pep-button,.group-buttons-container .toggle-buttons .pepperi-button{margin-top:0!important}.group-buttons-container .dropdown-buttons .pep-button.cdk-focused,.group-buttons-container .dropdown-buttons .pepperi-button.cdk-focused,.group-buttons-container .split-buttons .pep-button.cdk-focused,.group-buttons-container .split-buttons .pepperi-button.cdk-focused,.group-buttons-container .toggle-buttons .pep-button.cdk-focused,.group-buttons-container .toggle-buttons .pepperi-button.cdk-focused{z-index:2}@media (max-width:599px){.group-buttons-container .dropdown-buttons.dropup .first-button,.group-buttons-container .split-buttons.dropup .first-button,.group-buttons-container .toggle-buttons.dropup .first-button{max-width:200px;padding:0 .25rem}.group-buttons-container .dropdown-buttons.dropup .last-button,.group-buttons-container .split-buttons.dropup .last-button,.group-buttons-container .toggle-buttons.dropup .last-button{padding:0}}.group-buttons-container .split-buttons,.group-buttons-container .toggle-buttons{display:grid;grid-auto-flow:column}.group-buttons-container .split-buttons.stretch,.group-buttons-container .toggle-buttons.stretch{width:100%}.group-buttons-container .split-buttons .pep-button,.group-buttons-container .toggle-buttons .pep-button{max-width:unset}.group-buttons-container .split-buttons .first-button,.group-buttons-container .toggle-buttons .first-button{-webkit-margin-end:-1px;margin-inline-end:-1px}.group-buttons-container .split-buttons .middle-button,.group-buttons-container .toggle-buttons .middle-button{border-radius:0;-webkit-margin-end:-1px;margin-inline-end:-1px}", ".group-buttons-container .toggle-buttons .is-selected.weak{background:#fafafa;background:hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),98%);box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.08);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.08);border:1px solid hsl(0,0%,calc(10% + 30%));border:1px solid hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),calc(var(--pep-color-regular-l, 10%) + 30%))}.group-buttons-container .toggle-buttons .is-selected.weak:hover{background:#fafafa;background:hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),98%);box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.16);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.16);border:1px solid hsl(0,0%,calc(10% + 20%));border:1px solid hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),calc(var(--pep-color-regular-l, 10%) + 20%))}.group-buttons-container .toggle-buttons .is-selected.weak:focus{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.16);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.16);box-shadow:0 0 0 .25rem rgba(23,102,166,.5);box-shadow:0 0 0 var(--pep-spacing-xs,.25rem) hsla(var(--pep-color-text-link-h,207),var(--pep-color-text-link-s,76%),var(--pep-color-text-link-l,37%),.5)}.group-buttons-container .toggle-buttons .is-selected.weak:active,.group-buttons-container .toggle-buttons .is-selected.weak:focus{background:#e0e0e0;background:hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),88%);border:1px solid #1a1a1a;border:1px solid hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),var(--pep-color-regular-l,10%))}.group-buttons-container .toggle-buttons .is-selected.weak:active{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.32);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.32)}.group-buttons-container .toggle-buttons .is-selected.weak:disabled:not(.ignore-disabled){box-shadow:unset;border:unset;color:rgba(26,26,26,.35)!important;color:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)!important;background:#e0e0e0!important;background:hsl(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),88%)!important;box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.04)!important;box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.04)!important;border:1px solid rgba(26,26,26,.08);border:1px solid hsla(var(--pep-color-regular-h,0),var(--pep-color-regular-s,0%),var(--pep-color-regular-l,10%),.08)}.group-buttons-container .toggle-buttons .is-selected.weak:disabled:not(.ignore-disabled):after{border:unset}.group-buttons-container .toggle-buttons .is-selected.weak:disabled:not(.ignore-disabled) .svg-icon{fill:rgba(26,26,26,.35);fill:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)}.group-buttons-container .toggle-buttons .is-selected.weak:disabled:not(.ignore-disabled) .svg-icon.stroke{fill:unset;stroke:rgba(26,26,26,.35);stroke:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)}.group-buttons-container .toggle-buttons .is-selected.regular{background:rgba(26,26,26,.12);background:hsla(var(--pep-color-weak-h,0),var(--pep-color-weak-s,0%),var(--pep-color-weak-l,10%),.12)}.group-buttons-container .toggle-buttons .is-selected.regular:hover{background:rgba(26,26,26,.16);background:hsla(var(--pep-color-weak-h,0),var(--pep-color-weak-s,0%),var(--pep-color-weak-l,10%),.16)}.group-buttons-container .toggle-buttons .is-selected.regular:focus{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.08);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.08);position:relative;box-shadow:0 0 0 .25rem rgba(23,102,166,.5);box-shadow:0 0 0 var(--pep-spacing-xs,.25rem) hsla(var(--pep-color-text-link-h,207),var(--pep-color-text-link-s,76%),var(--pep-color-text-link-l,37%),.5)}.group-buttons-container .toggle-buttons .is-selected.regular:focus:not(.keep-background-on-focus){background:#fff;background:hsl(var(--pep-color-system-primary-invert-h,255),var(--pep-color-system-primary-invert-s,100%),var(--pep-color-system-primary-invert-l,100%))}.group-buttons-container .toggle-buttons .is-selected.regular:focus:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid #1a1a1a;border:1px solid hsl(var(--pep-color-weak-h,0),var(--pep-color-weak-s,0%),var(--pep-color-weak-l,10%))}.group-buttons-container .toggle-buttons .is-selected.regular:active{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.08);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.08);position:relative}.group-buttons-container .toggle-buttons .is-selected.regular:active:not(.keep-background-on-focus){background:#fff;background:hsl(var(--pep-color-system-primary-invert-h,255),var(--pep-color-system-primary-invert-s,100%),var(--pep-color-system-primary-invert-l,100%))}.group-buttons-container .toggle-buttons .is-selected.regular:active:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid #1a1a1a;border:1px solid hsl(var(--pep-color-weak-h,0),var(--pep-color-weak-s,0%),var(--pep-color-weak-l,10%))}.group-buttons-container .toggle-buttons .is-selected.regular:disabled:not(.ignore-disabled){box-shadow:unset;border:unset;color:rgba(26,26,26,.35)!important;color:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)!important;background:rgba(26,26,26,.04)!important;background:hsla(var(--pep-color-weak-h,0),var(--pep-color-weak-s,0%),var(--pep-color-weak-l,10%),.04)!important}.group-buttons-container .toggle-buttons .is-selected.regular:disabled:not(.ignore-disabled):after{border:unset}.group-buttons-container .toggle-buttons .is-selected.regular:disabled:not(.ignore-disabled) .svg-icon{fill:rgba(26,26,26,.35);fill:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)}.group-buttons-container .toggle-buttons .is-selected.regular:disabled:not(.ignore-disabled) .svg-icon.stroke{fill:unset;stroke:rgba(26,26,26,.35);stroke:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)}"]
43
43
  },] }
44
44
  ];
45
45
  PepGroupButtonsComponent.ctorParameters = () => [
@@ -55,4 +55,4 @@ PepGroupButtonsComponent.propDecorators = {
55
55
  stretch: [{ type: Input }],
56
56
  buttonClick: [{ type: Output }]
57
57
  };
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtYnV0dG9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL2dyb3VwLWJ1dHRvbnMvZ3JvdXAtYnV0dG9ucy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFFVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQ3RDLE1BQU0seUJBQXlCLENBQUM7QUFZakMsTUFBTSxPQUFPLHdCQUF3QjtJQWdCakMsWUFBbUIsYUFBK0I7UUFBL0Isa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBZmxELHNCQUFpQixHQUFHLGlCQUFpQixDQUFDO1FBRzdCLGFBQVEsR0FBNEIsU0FBUyxDQUFDO1FBQzlDLGNBQVMsR0FBaUIsTUFBTSxDQUFDO1FBQ2pDLGFBQVEsR0FBZ0IsSUFBSSxDQUFDO1FBQzdCLFlBQU8sR0FBcUIsRUFBRSxDQUFDO1FBQy9CLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQUN2QixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBR3pCLGdCQUFXLEdBQXVDLElBQUksWUFBWSxFQUF3QixDQUFDO1FBSXZGLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQzVDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7UUFDUCwwQkFBMEI7UUFDMUIsc0NBQXNDO1FBQ3RDLElBQUk7SUFDUixDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQVksRUFBRSxNQUFpQjtRQUMzQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLEdBQUcsQ0FBQztRQUVyQyxNQUFNLFdBQVcsR0FBRztZQUNoQixNQUFNLEVBQUUsTUFBTTtZQUNkLEtBQUs7U0FDUixDQUFDO1FBRUYsSUFBSSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsUUFBUSxFQUFFO1lBQ2xCLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDaEM7YUFBTTtZQUNILElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ3RDO0lBQ0wsQ0FBQzs7O1lBOUNKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3Qiw2bkpBQTZDOzthQUVoRDs7O1lBWkcsZ0JBQWdCOzs7dUJBaUJmLEtBQUs7d0JBQ0wsS0FBSzt1QkFDTCxLQUFLO3NCQUNMLEtBQUs7OEJBQ0wsS0FBSztnQ0FDTCxLQUFLO3NCQUNMLEtBQUs7MEJBRUwsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBPbkRlc3Ryb3ksXHJcbiAgICBJbnB1dCxcclxuICAgIE91dHB1dCxcclxuICAgIEV2ZW50RW1pdHRlcixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICAgIFBlcExheW91dFNlcnZpY2UsIFBlcFNjcmVlblNpemVUeXBlLCBQZXBTdHlsZVR5cGUsIFBlcFNpemVUeXBlXHJcbn0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xyXG5pbXBvcnQge1xyXG4gICAgUGVwQnV0dG9uLFxyXG4gICAgSVBlcEJ1dHRvbkNsaWNrRXZlbnQsXHJcbn0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvYnV0dG9uJztcclxuXHJcbmV4cG9ydCB0eXBlIFBlcEdyb3VwQnV0dG9uc1ZpZXdUeXBlID0gJ3JlZ3VsYXInIHwgJ2Ryb3Bkb3duJyB8ICdzcGxpdCcgfCAndG9nZ2xlJztcclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3BlcC1ncm91cC1idXR0b25zJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9ncm91cC1idXR0b25zLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2dyb3VwLWJ1dHRvbnMuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBlcEdyb3VwQnV0dG9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgICBQZXBTY3JlZW5TaXplVHlwZSA9IFBlcFNjcmVlblNpemVUeXBlO1xyXG4gICAgc2NyZWVuU2l6ZTogUGVwU2NyZWVuU2l6ZVR5cGU7XHJcblxyXG4gICAgQElucHV0KCkgdmlld1R5cGU6IFBlcEdyb3VwQnV0dG9uc1ZpZXdUeXBlID0gJ3JlZ3VsYXInO1xyXG4gICAgQElucHV0KCkgc3R5bGVUeXBlOiBQZXBTdHlsZVR5cGUgPSAnd2Vhayc7XHJcbiAgICBASW5wdXQoKSBzaXplVHlwZTogUGVwU2l6ZVR5cGUgPSAnbWQnO1xyXG4gICAgQElucHV0KCkgYnV0dG9uczogQXJyYXk8UGVwQnV0dG9uPiA9IFtdO1xyXG4gICAgQElucHV0KCkgYnV0dG9uc0Rpc2FibGVkID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBzZWxlY3RlZEJ1dHRvbktleSA9ICcnO1xyXG4gICAgQElucHV0KCkgc3RyZXRjaCA9IGZhbHNlO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgYnV0dG9uQ2xpY2s6IEV2ZW50RW1pdHRlcjxJUGVwQnV0dG9uQ2xpY2tFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPElQZXBCdXR0b25DbGlja0V2ZW50PigpO1xyXG5cclxuXHJcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgbGF5b3V0U2VydmljZTogUGVwTGF5b3V0U2VydmljZSkge1xyXG4gICAgICAgIHRoaXMubGF5b3V0U2VydmljZS5vblJlc2l6ZSQuc3Vic2NyaWJlKChzaXplKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuc2NyZWVuU2l6ZSA9IHNpemU7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgLy8gaWYgKHRoaXMuYnV0dG9uQ2xpY2spIHtcclxuICAgICAgICAvLyAgICAgdGhpcy5idXR0b25DbGljay51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIC8vIH1cclxuICAgIH1cclxuXHJcbiAgICBvbkJ1dHRvbkNsaWNrZWQoZXZlbnQ6IEV2ZW50LCBidXR0b246IFBlcEJ1dHRvbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRCdXR0b25LZXkgPSBidXR0b24/LmtleTtcclxuXHJcbiAgICAgICAgY29uc3QgYnV0dG9uQ2xpY2sgPSB7XHJcbiAgICAgICAgICAgIHNvdXJjZTogYnV0dG9uLFxyXG4gICAgICAgICAgICBldmVudCxcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICBpZiAoYnV0dG9uPy5jYWxsYmFjaykge1xyXG4gICAgICAgICAgICBidXR0b24uY2FsbGJhY2soYnV0dG9uQ2xpY2spO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuYnV0dG9uQ2xpY2suZW1pdChidXR0b25DbGljayk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtYnV0dG9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL2dyb3VwLWJ1dHRvbnMvZ3JvdXAtYnV0dG9ucy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFFVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQ3RDLE1BQU0seUJBQXlCLENBQUM7QUFZakMsTUFBTSxPQUFPLHdCQUF3QjtJQWdCakMsWUFBbUIsYUFBK0I7UUFBL0Isa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBZmxELHNCQUFpQixHQUFHLGlCQUFpQixDQUFDO1FBRzdCLGFBQVEsR0FBNEIsU0FBUyxDQUFDO1FBQzlDLGNBQVMsR0FBaUIsTUFBTSxDQUFDO1FBQ2pDLGFBQVEsR0FBZ0IsSUFBSSxDQUFDO1FBQzdCLFlBQU8sR0FBcUIsRUFBRSxDQUFDO1FBQy9CLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQUN2QixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBR3pCLGdCQUFXLEdBQXVDLElBQUksWUFBWSxFQUF3QixDQUFDO1FBSXZGLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQzVDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7UUFDUCwwQkFBMEI7UUFDMUIsc0NBQXNDO1FBQ3RDLElBQUk7SUFDUixDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQVksRUFBRSxNQUFpQjtRQUMzQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLEdBQUcsQ0FBQztRQUVyQyxNQUFNLFdBQVcsR0FBRztZQUNoQixNQUFNLEVBQUUsTUFBTTtZQUNkLEtBQUs7U0FDUixDQUFDO1FBRUYsSUFBSSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsUUFBUSxFQUFFO1lBQ2xCLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDaEM7YUFBTTtZQUNILElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ3RDO0lBQ0wsQ0FBQzs7O1lBOUNKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QixpK0lBQTZDOzthQUVoRDs7O1lBWkcsZ0JBQWdCOzs7dUJBaUJmLEtBQUs7d0JBQ0wsS0FBSzt1QkFDTCxLQUFLO3NCQUNMLEtBQUs7OEJBQ0wsS0FBSztnQ0FDTCxLQUFLO3NCQUNMLEtBQUs7MEJBRUwsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIE9uRGVzdHJveSxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgRXZlbnRFbWl0dGVyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgUGVwTGF5b3V0U2VydmljZSwgUGVwU2NyZWVuU2l6ZVR5cGUsIFBlcFN0eWxlVHlwZSwgUGVwU2l6ZVR5cGVcbn0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xuaW1wb3J0IHtcbiAgICBQZXBCdXR0b24sXG4gICAgSVBlcEJ1dHRvbkNsaWNrRXZlbnQsXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL2J1dHRvbic7XG5cbmV4cG9ydCB0eXBlIFBlcEdyb3VwQnV0dG9uc1ZpZXdUeXBlID0gJ3JlZ3VsYXInIHwgJ2Ryb3Bkb3duJyB8ICdzcGxpdCcgfCAndG9nZ2xlJztcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncGVwLWdyb3VwLWJ1dHRvbnMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ncm91cC1idXR0b25zLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ncm91cC1idXR0b25zLmNvbXBvbmVudC5zY3NzJywgJy4vZ3JvdXAtYnV0dG9ucy5jb21wb25lbnQudGhlbWUuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQZXBHcm91cEJ1dHRvbnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIFBlcFNjcmVlblNpemVUeXBlID0gUGVwU2NyZWVuU2l6ZVR5cGU7XG4gICAgc2NyZWVuU2l6ZTogUGVwU2NyZWVuU2l6ZVR5cGU7XG5cbiAgICBASW5wdXQoKSB2aWV3VHlwZTogUGVwR3JvdXBCdXR0b25zVmlld1R5cGUgPSAncmVndWxhcic7XG4gICAgQElucHV0KCkgc3R5bGVUeXBlOiBQZXBTdHlsZVR5cGUgPSAnd2Vhayc7XG4gICAgQElucHV0KCkgc2l6ZVR5cGU6IFBlcFNpemVUeXBlID0gJ21kJztcbiAgICBASW5wdXQoKSBidXR0b25zOiBBcnJheTxQZXBCdXR0b24+ID0gW107XG4gICAgQElucHV0KCkgYnV0dG9uc0Rpc2FibGVkID0gZmFsc2U7XG4gICAgQElucHV0KCkgc2VsZWN0ZWRCdXR0b25LZXkgPSAnJztcbiAgICBASW5wdXQoKSBzdHJldGNoID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KClcbiAgICBidXR0b25DbGljazogRXZlbnRFbWl0dGVyPElQZXBCdXR0b25DbGlja0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8SVBlcEJ1dHRvbkNsaWNrRXZlbnQ+KCk7XG5cblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBsYXlvdXRTZXJ2aWNlOiBQZXBMYXlvdXRTZXJ2aWNlKSB7XG4gICAgICAgIHRoaXMubGF5b3V0U2VydmljZS5vblJlc2l6ZSQuc3Vic2NyaWJlKChzaXplKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNjcmVlblNpemUgPSBzaXplO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgLy8gaWYgKHRoaXMuYnV0dG9uQ2xpY2spIHtcbiAgICAgICAgLy8gICAgIHRoaXMuYnV0dG9uQ2xpY2sudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgLy8gfVxuICAgIH1cblxuICAgIG9uQnV0dG9uQ2xpY2tlZChldmVudDogRXZlbnQsIGJ1dHRvbjogUGVwQnV0dG9uKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRCdXR0b25LZXkgPSBidXR0b24/LmtleTtcblxuICAgICAgICBjb25zdCBidXR0b25DbGljayA9IHtcbiAgICAgICAgICAgIHNvdXJjZTogYnV0dG9uLFxuICAgICAgICAgICAgZXZlbnQsXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKGJ1dHRvbj8uY2FsbGJhY2spIHtcbiAgICAgICAgICAgIGJ1dHRvbi5jYWxsYmFjayhidXR0b25DbGljayk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmJ1dHRvbkNsaWNrLmVtaXQoYnV0dG9uQ2xpY2spO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -35,4 +35,4 @@ PepGroupButtonsModule.decorators = [
35
35
  PepGroupButtonsModule.ctorParameters = () => [
36
36
  { type: PepIconRegistry }
37
37
  ];
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtYnV0dG9ucy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL2dyb3VwLWJ1dHRvbnMvZ3JvdXAtYnV0dG9ucy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQ0gsYUFBYSxFQUNiLGVBQWUsRUFDZixjQUFjLEVBQ2QsZ0JBQWdCLEdBQ25CLE1BQU0sOEJBQThCLENBQUM7QUFFdEMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFrQnJFLE1BQU0sT0FBTyxxQkFBcUI7SUFDOUIsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hELElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLENBQUMsY0FBYyxFQUFFLGdCQUFnQixDQUFDLENBQUMsQ0FBQztJQUMzRSxDQUFDOzs7WUFuQkosUUFBUSxTQUFDO2dCQUNOLE9BQU8sRUFBRTtvQkFDTCxZQUFZO29CQUNaLG1CQUFtQjtvQkFDbkIsZUFBZTtvQkFDZixrQkFBa0I7b0JBQ2xCLGVBQWU7b0JBQ2YsYUFBYTtvQkFDYixhQUFhO29CQUNiLGtCQUFrQjtvQkFDbEIsZUFBZTtvQkFDZixhQUFhO2lCQUNoQjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztnQkFDbkMsWUFBWSxFQUFFLENBQUMsd0JBQXdCLENBQUM7YUFDM0M7OztZQXRCRyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbmltcG9ydCB7IE1hdENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcblxyXG5pbXBvcnQgeyBQZXBOZ3hMaWJNb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYic7XHJcbmltcG9ydCB7XHJcbiAgICBQZXBJY29uTW9kdWxlLFxyXG4gICAgUGVwSWNvblJlZ2lzdHJ5LFxyXG4gICAgcGVwSWNvbkFycm93VXAsXHJcbiAgICBwZXBJY29uQXJyb3dEb3duLFxyXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL2ljb24nO1xyXG5cclxuaW1wb3J0IHsgUGVwR3JvdXBCdXR0b25zQ29tcG9uZW50IH0gZnJvbSAnLi9ncm91cC1idXR0b25zLmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICAvLyBNYXRlcmlhbCBtb2R1bGVzXHJcbiAgICAgICAgTWF0Q29tbW9uTW9kdWxlLFxyXG4gICAgICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcclxuICAgICAgICBNYXRCdXR0b25Nb2R1bGUsXHJcbiAgICAgICAgTWF0TWVudU1vZHVsZSxcclxuICAgICAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgICAgIC8vIG5neC1saWIgbW9kdWxlc1xyXG4gICAgICAgIFBlcE5neExpYk1vZHVsZSxcclxuICAgICAgICBQZXBJY29uTW9kdWxlLFxyXG4gICAgXSxcclxuICAgIGV4cG9ydHM6IFtQZXBHcm91cEJ1dHRvbnNDb21wb25lbnRdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbUGVwR3JvdXBCdXR0b25zQ29tcG9uZW50XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBlcEdyb3VwQnV0dG9uc01vZHVsZSB7XHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBlcEljb25SZWdpc3RyeTogUGVwSWNvblJlZ2lzdHJ5KSB7XHJcbiAgICAgICAgdGhpcy5wZXBJY29uUmVnaXN0cnkucmVnaXN0ZXJJY29ucyhbcGVwSWNvbkFycm93VXAsIHBlcEljb25BcnJvd0Rvd25dKTtcclxuICAgIH1cclxufVxyXG4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtYnV0dG9ucy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL2dyb3VwLWJ1dHRvbnMvZ3JvdXAtYnV0dG9ucy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQ0gsYUFBYSxFQUNiLGVBQWUsRUFDZixjQUFjLEVBQ2QsZ0JBQWdCLEdBQ25CLE1BQU0sOEJBQThCLENBQUM7QUFFdEMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFrQnJFLE1BQU0sT0FBTyxxQkFBcUI7SUFDOUIsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hELElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLENBQUMsY0FBYyxFQUFFLGdCQUFnQixDQUFDLENBQUMsQ0FBQztJQUMzRSxDQUFDOzs7WUFuQkosUUFBUSxTQUFDO2dCQUNOLE9BQU8sRUFBRTtvQkFDTCxZQUFZO29CQUNaLG1CQUFtQjtvQkFDbkIsZUFBZTtvQkFDZixrQkFBa0I7b0JBQ2xCLGVBQWU7b0JBQ2YsYUFBYTtvQkFDYixhQUFhO29CQUNiLGtCQUFrQjtvQkFDbEIsZUFBZTtvQkFDZixhQUFhO2lCQUNoQjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztnQkFDbkMsWUFBWSxFQUFFLENBQUMsd0JBQXdCLENBQUM7YUFDM0M7OztZQXRCRyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IE1hdENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuXG5pbXBvcnQgeyBQZXBOZ3hMaWJNb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYic7XG5pbXBvcnQge1xuICAgIFBlcEljb25Nb2R1bGUsXG4gICAgUGVwSWNvblJlZ2lzdHJ5LFxuICAgIHBlcEljb25BcnJvd1VwLFxuICAgIHBlcEljb25BcnJvd0Rvd24sXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL2ljb24nO1xuXG5pbXBvcnQgeyBQZXBHcm91cEJ1dHRvbnNDb21wb25lbnQgfSBmcm9tICcuL2dyb3VwLWJ1dHRvbnMuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgLy8gTWF0ZXJpYWwgbW9kdWxlc1xuICAgICAgICBNYXRDb21tb25Nb2R1bGUsXG4gICAgICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICAgICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgICAgICBNYXRNZW51TW9kdWxlLFxuICAgICAgICBNYXRJY29uTW9kdWxlLFxuICAgICAgICAvLyBuZ3gtbGliIG1vZHVsZXNcbiAgICAgICAgUGVwTmd4TGliTW9kdWxlLFxuICAgICAgICBQZXBJY29uTW9kdWxlLFxuICAgIF0sXG4gICAgZXhwb3J0czogW1BlcEdyb3VwQnV0dG9uc0NvbXBvbmVudF0sXG4gICAgZGVjbGFyYXRpb25zOiBbUGVwR3JvdXBCdXR0b25zQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgUGVwR3JvdXBCdXR0b25zTW9kdWxlIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBlcEljb25SZWdpc3RyeTogUGVwSWNvblJlZ2lzdHJ5KSB7XG4gICAgICAgIHRoaXMucGVwSWNvblJlZ2lzdHJ5LnJlZ2lzdGVySWNvbnMoW3BlcEljb25BcnJvd1VwLCBwZXBJY29uQXJyb3dEb3duXSk7XG4gICAgfVxufVxuIl19
@@ -3,4 +3,4 @@
3
3
  */
4
4
  export * from './group-buttons.module';
5
5
  export * from './group-buttons.component';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvZ3JvdXAtYnV0dG9ucy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5neC1saWIvZ3JvdXAtYnV0dG9uc1xyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9ncm91cC1idXR0b25zLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZ3JvdXAtYnV0dG9ucy5jb21wb25lbnQnO1xyXG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvZ3JvdXAtYnV0dG9ucy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtbGliL2dyb3VwLWJ1dHRvbnNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9ncm91cC1idXR0b25zLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2dyb3VwLWJ1dHRvbnMuY29tcG9uZW50JztcbiJdfQ==