ontimize-web-ngx 15.7.0 → 15.8.0

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 (402) hide show
  1. package/esm2020/lib/components/app-header/o-app-header.component.mjs +4 -4
  2. package/esm2020/lib/components/app-header/o-app-header.module.mjs +5 -5
  3. package/esm2020/lib/components/app-sidenav/image/o-app-sidenav-image.component.mjs +4 -4
  4. package/esm2020/lib/components/app-sidenav/menu-group/o-app-sidenav-menu-group.component.mjs +4 -4
  5. package/esm2020/lib/components/app-sidenav/menu-item/o-app-sidenav-menu-item.component.mjs +4 -4
  6. package/esm2020/lib/components/app-sidenav/o-app-sidenav.component.mjs +4 -4
  7. package/esm2020/lib/components/app-sidenav/o-app-sidenav.module.mjs +5 -5
  8. package/esm2020/lib/components/bar-menu/locale-menu-item/o-locale-bar-menu-item.component.mjs +4 -4
  9. package/esm2020/lib/components/bar-menu/menu-group/o-bar-menu-group.component.mjs +4 -4
  10. package/esm2020/lib/components/bar-menu/menu-item/o-bar-menu-item.component.mjs +4 -4
  11. package/esm2020/lib/components/bar-menu/menu-nested/o-bar-menu-nested.component.mjs +4 -4
  12. package/esm2020/lib/components/bar-menu/menu-separator/o-bar-menu-separator.component.mjs +4 -4
  13. package/esm2020/lib/components/bar-menu/o-bar-menu-base.class.mjs +4 -4
  14. package/esm2020/lib/components/bar-menu/o-bar-menu.component.mjs +4 -4
  15. package/esm2020/lib/components/bar-menu/o-bar-menu.module.mjs +5 -5
  16. package/esm2020/lib/components/bar-menu/o-base-menu-item.class.mjs +4 -4
  17. package/esm2020/lib/components/breadcrumb/o-breadcrumb.component.mjs +4 -4
  18. package/esm2020/lib/components/breadcrumb/o-breadcrumb.module.mjs +5 -5
  19. package/esm2020/lib/components/button/o-button.component.mjs +4 -4
  20. package/esm2020/lib/components/button/o-button.module.mjs +5 -5
  21. package/esm2020/lib/components/button-toggle/o-button-toggle-group/o-button-toggle-group.component.mjs +4 -4
  22. package/esm2020/lib/components/button-toggle/o-button-toggle.component.mjs +4 -4
  23. package/esm2020/lib/components/button-toggle/o-button-toggle.module.mjs +5 -5
  24. package/esm2020/lib/components/card-menu-item/o-card-menu-item.component.mjs +4 -4
  25. package/esm2020/lib/components/card-menu-item/o-card-menu-item.module.mjs +5 -5
  26. package/esm2020/lib/components/container/column/o-column.component.mjs +4 -4
  27. package/esm2020/lib/components/container/column/o-column.module.mjs +5 -5
  28. package/esm2020/lib/components/container/column-collapsible/o-column-collapsible.component.mjs +4 -4
  29. package/esm2020/lib/components/container/column-collapsible/o-column-collapsible.module.mjs +5 -5
  30. package/esm2020/lib/components/container/o-container-collapsible-component.class.mjs +4 -4
  31. package/esm2020/lib/components/container/o-container-component.class.mjs +4 -4
  32. package/esm2020/lib/components/container/row/o-row.component.mjs +4 -4
  33. package/esm2020/lib/components/container/row/o-row.module.mjs +5 -5
  34. package/esm2020/lib/components/container/row-collapsible/o-row-collapsible.component.mjs +4 -4
  35. package/esm2020/lib/components/container/row-collapsible/o-row-collapsible.module.mjs +5 -5
  36. package/esm2020/lib/components/contextmenu/context-menu/o-context-menu-content.component.mjs +4 -4
  37. package/esm2020/lib/components/contextmenu/context-menu/o-wrapper-content-menu/o-wrapper-content-menu.component.mjs +4 -4
  38. package/esm2020/lib/components/contextmenu/context-menu-group/o-context-menu-group.component.mjs +4 -4
  39. package/esm2020/lib/components/contextmenu/context-menu-item/o-context-menu-item.component.mjs +4 -4
  40. package/esm2020/lib/components/contextmenu/context-menu-separator/o-context-menu-separator.component.mjs +4 -4
  41. package/esm2020/lib/components/contextmenu/o-content-menu-base-item.class.mjs +4 -4
  42. package/esm2020/lib/components/contextmenu/o-context-menu-overlay.service.mjs +4 -4
  43. package/esm2020/lib/components/contextmenu/o-context-menu.component.mjs +4 -4
  44. package/esm2020/lib/components/contextmenu/o-context-menu.directive.mjs +4 -4
  45. package/esm2020/lib/components/contextmenu/o-context-menu.module.mjs +5 -5
  46. package/esm2020/lib/components/contextmenu/o-context-menu.service.mjs +4 -4
  47. package/esm2020/lib/components/dual-list-selector/dual-list-selector-item/date/o-dual-list-selector-date-item.component.mjs +4 -4
  48. package/esm2020/lib/components/dual-list-selector/o-dual-list-selector.component.mjs +4 -4
  49. package/esm2020/lib/components/dual-list-selector/o-dual-list-selector.module.mjs +5 -5
  50. package/esm2020/lib/components/expandable-container/o-expandable-container.component.mjs +4 -4
  51. package/esm2020/lib/components/expandable-container/o-expandable-container.module.mjs +5 -5
  52. package/esm2020/lib/components/filter-builder/filter-builder-menu/filter-builder-menu.component.mjs +4 -4
  53. package/esm2020/lib/components/filter-builder/o-filter-builder-clear.directive.mjs +4 -4
  54. package/esm2020/lib/components/filter-builder/o-filter-builder-query.directive.mjs +4 -4
  55. package/esm2020/lib/components/filter-builder/o-filter-builder.component.mjs +4 -4
  56. package/esm2020/lib/components/filter-builder/o-filter-builder.module.mjs +5 -5
  57. package/esm2020/lib/components/form/guards/o-form-can-deactivate.guard.mjs +4 -4
  58. package/esm2020/lib/components/form/navigation/o-form-confirm-exit.service.mjs +4 -4
  59. package/esm2020/lib/components/form/navigation/o-form-navigation.component.mjs +4 -4
  60. package/esm2020/lib/components/form/o-form.component.mjs +4 -4
  61. package/esm2020/lib/components/form/o-form.module.mjs +5 -5
  62. package/esm2020/lib/components/form/services/o-form-message.service.mjs +4 -4
  63. package/esm2020/lib/components/form/toolbar/o-form-toolbar.component.mjs +4 -4
  64. package/esm2020/lib/components/form/toolbar/o-form-toolbar.module.mjs +5 -5
  65. package/esm2020/lib/components/form-container/o-form-container.component.mjs +4 -4
  66. package/esm2020/lib/components/form-container/o-form-container.module.mjs +5 -5
  67. package/esm2020/lib/components/grid/grid-item/o-grid-item.component.mjs +4 -4
  68. package/esm2020/lib/components/grid/grid-item/o-grid-item.directive.mjs +4 -4
  69. package/esm2020/lib/components/grid/o-grid.component.mjs +4 -4
  70. package/esm2020/lib/components/grid/o-grid.module.mjs +5 -5
  71. package/esm2020/lib/components/grid/skeketon/o-grid-skeleton.component.mjs +4 -4
  72. package/esm2020/lib/components/image/fullscreen/fullscreen-dialog.component.mjs +4 -4
  73. package/esm2020/lib/components/image/o-image.component.mjs +4 -4
  74. package/esm2020/lib/components/image/o-image.module.mjs +5 -5
  75. package/esm2020/lib/components/input/checkbox/o-checkbox.component.mjs +4 -4
  76. package/esm2020/lib/components/input/checkbox/o-checkbox.module.mjs +5 -5
  77. package/esm2020/lib/components/input/combo/combo-renderer/boolean/o-combo-renderer-boolean.component.mjs +4 -4
  78. package/esm2020/lib/components/input/combo/combo-renderer/currency/o-combo-renderer-currency.component.mjs +4 -4
  79. package/esm2020/lib/components/input/combo/combo-renderer/date/o-combo-renderer-date.component.mjs +4 -4
  80. package/esm2020/lib/components/input/combo/combo-renderer/icon/o-combo-renderer-icon.component.mjs +4 -4
  81. package/esm2020/lib/components/input/combo/combo-renderer/integer/o-combo-renderer-integer.component.mjs +4 -4
  82. package/esm2020/lib/components/input/combo/combo-renderer/o-combo-renderer.class.mjs +4 -4
  83. package/esm2020/lib/components/input/combo/combo-renderer/percentage/o-combo-renderer-percentage.component.mjs +4 -4
  84. package/esm2020/lib/components/input/combo/combo-renderer/real/o-combo-renderer-real.component.mjs +4 -4
  85. package/esm2020/lib/components/input/combo/combo-search/o-combo-search.component.mjs +4 -4
  86. package/esm2020/lib/components/input/combo/o-combo.component.mjs +4 -4
  87. package/esm2020/lib/components/input/combo/o-combo.module.mjs +5 -5
  88. package/esm2020/lib/components/input/currency-input/o-currency-input.component.mjs +4 -4
  89. package/esm2020/lib/components/input/currency-input/o-currency-input.module.mjs +5 -5
  90. package/esm2020/lib/components/input/date-input/o-date-input.component.mjs +4 -4
  91. package/esm2020/lib/components/input/date-input/o-date-input.module.mjs +5 -5
  92. package/esm2020/lib/components/input/date-range/o-daterange-input.component.mjs +4 -4
  93. package/esm2020/lib/components/input/date-range/o-daterange-input.module.mjs +5 -5
  94. package/esm2020/lib/components/input/date-range-legacy/o-daterange-input.component.mjs +4 -4
  95. package/esm2020/lib/components/input/date-range-legacy/o-daterange-input.directive.mjs +4 -4
  96. package/esm2020/lib/components/input/date-range-legacy/o-daterange-input.module.mjs +5 -5
  97. package/esm2020/lib/components/input/date-range-legacy/o-daterange-picker.component.mjs +4 -4
  98. package/esm2020/lib/components/input/email-input/o-email-input.component.mjs +4 -4
  99. package/esm2020/lib/components/input/email-input/o-email-input.module.mjs +5 -5
  100. package/esm2020/lib/components/input/file-input/o-file-input.component.mjs +4 -4
  101. package/esm2020/lib/components/input/file-input/o-file-input.module.mjs +5 -5
  102. package/esm2020/lib/components/input/hour-input/index.mjs +4 -0
  103. package/esm2020/lib/components/input/hour-input/o-hour-input.component.mjs +38 -9
  104. package/esm2020/lib/components/input/hour-input/o-hour-input.directive.mjs +46 -0
  105. package/esm2020/lib/components/input/hour-input/o-hour-input.module.mjs +8 -7
  106. package/esm2020/lib/components/input/html-input/o-html-input.component.mjs +4 -4
  107. package/esm2020/lib/components/input/html-input/o-html-input.module.mjs +5 -5
  108. package/esm2020/lib/components/input/index.mjs +2 -3
  109. package/esm2020/lib/components/input/integer-input/o-integer-input.component.mjs +4 -4
  110. package/esm2020/lib/components/input/integer-input/o-integer-input.module.mjs +5 -5
  111. package/esm2020/lib/components/input/listpicker/listpicker-renderer/currency/o-list-picker-renderer-currency.component.mjs +4 -4
  112. package/esm2020/lib/components/input/listpicker/listpicker-renderer/date/o-list-picker-renderer-date.component.mjs +4 -4
  113. package/esm2020/lib/components/input/listpicker/listpicker-renderer/integer/o-list-picker-renderer-integer.component.mjs +4 -4
  114. package/esm2020/lib/components/input/listpicker/listpicker-renderer/o-list-picker-renderer.class.mjs +4 -4
  115. package/esm2020/lib/components/input/listpicker/listpicker-renderer/percentage/o-list-picker-renderer-percentage.component.mjs +4 -4
  116. package/esm2020/lib/components/input/listpicker/listpicker-renderer/real/o-list-picker-renderer-real.component.mjs +4 -4
  117. package/esm2020/lib/components/input/listpicker/o-list-picker-dialog.component.mjs +4 -4
  118. package/esm2020/lib/components/input/listpicker/o-list-picker.component.mjs +4 -4
  119. package/esm2020/lib/components/input/listpicker/o-list-picker.module.mjs +5 -5
  120. package/esm2020/lib/components/input/nif-input/o-nif-input.component.mjs +4 -4
  121. package/esm2020/lib/components/input/nif-input/o-nif-input.module.mjs +5 -5
  122. package/esm2020/lib/components/input/o-boolean-form-data-component.class.mjs +4 -4
  123. package/esm2020/lib/components/input/o-form-service-component.class.mjs +4 -4
  124. package/esm2020/lib/components/input/password-input/o-password-input.component.mjs +4 -4
  125. package/esm2020/lib/components/input/password-input/o-password-input.module.mjs +5 -5
  126. package/esm2020/lib/components/input/percent-input/o-percent-input.component.mjs +4 -4
  127. package/esm2020/lib/components/input/percent-input/o-percent-input.module.mjs +5 -5
  128. package/esm2020/lib/components/input/phone-input/data/country-code.mjs +4 -4
  129. package/esm2020/lib/components/input/phone-input/o-phone-input.component.mjs +4 -4
  130. package/esm2020/lib/components/input/phone-input/o-phone-input.module.mjs +5 -5
  131. package/esm2020/lib/components/input/radio/o-radio.component.mjs +4 -4
  132. package/esm2020/lib/components/input/radio/o-radio.module.mjs +5 -5
  133. package/esm2020/lib/components/input/real-input/o-real-input.component.mjs +4 -4
  134. package/esm2020/lib/components/input/real-input/o-real-input.module.mjs +5 -5
  135. package/esm2020/lib/components/input/search-input/o-search-input.component.mjs +4 -4
  136. package/esm2020/lib/components/input/search-input/o-search-input.module.mjs +5 -5
  137. package/esm2020/lib/components/input/slide-toggle/o-slide-toggle.component.mjs +4 -4
  138. package/esm2020/lib/components/input/slide-toggle/o-slide-toggle.module.mjs +5 -5
  139. package/esm2020/lib/components/input/slider/o-slider.component.mjs +4 -4
  140. package/esm2020/lib/components/input/slider/o-slider.module.mjs +5 -5
  141. package/esm2020/lib/components/input/text-input/o-text-input.component.mjs +4 -4
  142. package/esm2020/lib/components/input/text-input/o-text-input.module.mjs +5 -5
  143. package/esm2020/lib/components/input/textarea-input/o-textarea-input.component.mjs +4 -4
  144. package/esm2020/lib/components/input/textarea-input/o-textarea-input.module.mjs +5 -5
  145. package/esm2020/lib/components/input/time-input/o-time-input.component.mjs +4 -4
  146. package/esm2020/lib/components/input/time-input/o-time-input.module.mjs +5 -5
  147. package/esm2020/lib/components/language-selector/o-language-selector.component.mjs +4 -4
  148. package/esm2020/lib/components/language-selector/o-language-selector.module.mjs +5 -5
  149. package/esm2020/lib/components/list/list-item/o-list-item.component.mjs +4 -4
  150. package/esm2020/lib/components/list/list-item/o-list-item.directive.mjs +4 -4
  151. package/esm2020/lib/components/list/o-list.component.mjs +4 -4
  152. package/esm2020/lib/components/list/o-list.module.mjs +5 -5
  153. package/esm2020/lib/components/list/renderers/avatar/o-list-item-avatar.component.mjs +4 -4
  154. package/esm2020/lib/components/list/renderers/card/o-list-item-card.component.mjs +4 -4
  155. package/esm2020/lib/components/list/renderers/card-image/o-list-item-card-image.component.mjs +4 -4
  156. package/esm2020/lib/components/list/renderers/o-list-item-card-renderer.class.mjs +4 -4
  157. package/esm2020/lib/components/list/renderers/o-list-item-text-renderer.class.mjs +4 -4
  158. package/esm2020/lib/components/list/renderers/text/o-list-item-text.component.mjs +4 -4
  159. package/esm2020/lib/components/list/skeleton/o-list-skeleton.component.mjs +4 -4
  160. package/esm2020/lib/components/material/ckeditor/ck-editor.component.mjs +4 -4
  161. package/esm2020/lib/components/material/ckeditor/ck-editor.module.mjs +5 -5
  162. package/esm2020/lib/components/o-data-toolbar/o-data-toolbar.component.mjs +4 -4
  163. package/esm2020/lib/components/o-data-toolbar/o-data-toolbar.module.mjs +5 -5
  164. package/esm2020/lib/components/o-form-data-component.class.mjs +4 -4
  165. package/esm2020/lib/components/o-repeatable-skeleton.component.mjs +4 -4
  166. package/esm2020/lib/components/o-service-base-component.class.mjs +15 -10
  167. package/esm2020/lib/components/o-service-component.class.mjs +7 -7
  168. package/esm2020/lib/components/o-skeleton.component.mjs +4 -4
  169. package/esm2020/lib/components/table/column/calculated/o-table-column-calculated.component.mjs +4 -4
  170. package/esm2020/lib/components/table/column/cell-editor/boolean/o-table-cell-editor-boolean.component.mjs +4 -4
  171. package/esm2020/lib/components/table/column/cell-editor/date/o-table-cell-editor-date.component.mjs +4 -4
  172. package/esm2020/lib/components/table/column/cell-editor/email/o-table-cell-editor-email.component.mjs +4 -4
  173. package/esm2020/lib/components/table/column/cell-editor/integer/o-table-cell-editor-integer.component.mjs +4 -4
  174. package/esm2020/lib/components/table/column/cell-editor/o-base-table-cell-editor.class.mjs +10 -4
  175. package/esm2020/lib/components/table/column/cell-editor/real/o-table-cell-editor-real.component.mjs +4 -4
  176. package/esm2020/lib/components/table/column/cell-editor/text/o-table-cell-editor-text.component.mjs +4 -4
  177. package/esm2020/lib/components/table/column/cell-editor/time/o-table-cell-editor-time.component.mjs +26 -12
  178. package/esm2020/lib/components/table/column/cell-renderer/action/o-table-cell-renderer-action.component.mjs +4 -4
  179. package/esm2020/lib/components/table/column/cell-renderer/boolean/o-table-cell-renderer-boolean.component.mjs +4 -4
  180. package/esm2020/lib/components/table/column/cell-renderer/cell-renderer.mjs +11 -4
  181. package/esm2020/lib/components/table/column/cell-renderer/chip/o-table-cell-renderer-chip.component.mjs +65 -0
  182. package/esm2020/lib/components/table/column/cell-renderer/currency/o-table-cell-renderer-currency.component.mjs +4 -4
  183. package/esm2020/lib/components/table/column/cell-renderer/date/o-table-cell-renderer-date.component.mjs +4 -4
  184. package/esm2020/lib/components/table/column/cell-renderer/image/o-table-cell-renderer-image.component.mjs +4 -4
  185. package/esm2020/lib/components/table/column/cell-renderer/index.mjs +3 -1
  186. package/esm2020/lib/components/table/column/cell-renderer/integer/o-table-cell-renderer-integer.component.mjs +4 -4
  187. package/esm2020/lib/components/table/column/cell-renderer/list/o-table-cell-renderer-list.component.mjs +41 -0
  188. package/esm2020/lib/components/table/column/cell-renderer/o-base-table-cell-renderer.class.mjs +4 -4
  189. package/esm2020/lib/components/table/column/cell-renderer/percentage/o-table-cell-renderer-percentage.component.mjs +4 -4
  190. package/esm2020/lib/components/table/column/cell-renderer/real/o-table-cell-renderer-real.component.mjs +4 -4
  191. package/esm2020/lib/components/table/column/cell-renderer/service/o-table-cell-renderer-service.component.mjs +4 -4
  192. package/esm2020/lib/components/table/column/cell-renderer/time/o-table-cell-renderer-time.component.mjs +4 -4
  193. package/esm2020/lib/components/table/column/cell-renderer/translate/o-table-cell-renderer-translate.component.mjs +4 -4
  194. package/esm2020/lib/components/table/column/o-table-column.component.mjs +10 -4
  195. package/esm2020/lib/components/table/extensions/contextmenu/o-table-context-menu.component.mjs +4 -4
  196. package/esm2020/lib/components/table/extensions/default-o-table.datasource.mjs +137 -66
  197. package/esm2020/lib/components/table/extensions/dialog/apply-configuration/o-table-apply-configuration-dialog.component.mjs +4 -4
  198. package/esm2020/lib/components/table/extensions/dialog/export/o-table-export-dialog.component.mjs +4 -4
  199. package/esm2020/lib/components/table/extensions/dialog/filter-by-column/o-table-filter-by-column-data-dialog.component.mjs +5 -5
  200. package/esm2020/lib/components/table/extensions/dialog/filter-by-column/o-table-filter-by-column.service.mjs +4 -4
  201. package/esm2020/lib/components/table/extensions/dialog/group-by-columns/o-table-group-by-columns-dialog.component.mjs +4 -4
  202. package/esm2020/lib/components/table/extensions/dialog/o-table-base-dialog.class.mjs +4 -4
  203. package/esm2020/lib/components/table/extensions/dialog/store-configuration/o-table-store-configuration-dialog.component.mjs +4 -4
  204. package/esm2020/lib/components/table/extensions/dialog/visible-columns/o-table-visible-columns-dialog.component.mjs +4 -4
  205. package/esm2020/lib/components/table/extensions/export-button/o-table-export-button.component.mjs +4 -4
  206. package/esm2020/lib/components/table/extensions/export-button/o-table-export-button.service.mjs +4 -4
  207. package/esm2020/lib/components/table/extensions/footer/aggregate/o-table-column-aggregate.component.mjs +6 -6
  208. package/esm2020/lib/components/table/extensions/footer/expanded/o-table-expanded-footer.directive.mjs +11 -14
  209. package/esm2020/lib/components/table/extensions/footer/paginator/o-table-mat-paginator-intl.mjs +4 -4
  210. package/esm2020/lib/components/table/extensions/footer/paginator/o-table-paginator.component.mjs +4 -4
  211. package/esm2020/lib/components/table/extensions/header/table-button/o-table-button.component.mjs +4 -4
  212. package/esm2020/lib/components/table/extensions/header/table-buttons/o-table-buttons.component.mjs +4 -4
  213. package/esm2020/lib/components/table/extensions/header/table-column-resizer/o-table-column-resizer.component.mjs +4 -4
  214. package/esm2020/lib/components/table/extensions/header/table-column-select-all/o-table-column-select-all.directive.mjs +4 -4
  215. package/esm2020/lib/components/table/extensions/header/table-columns-filter/columns/o-table-columns-filter-column.component.mjs +4 -4
  216. package/esm2020/lib/components/table/extensions/header/table-columns-filter/o-table-columns-filter.component.mjs +4 -4
  217. package/esm2020/lib/components/table/extensions/header/table-columns-grouping/columns/o-table-columns-grouping-column.component.mjs +4 -4
  218. package/esm2020/lib/components/table/extensions/header/table-columns-grouping/o-table-columns-grouping.component.mjs +4 -4
  219. package/esm2020/lib/components/table/extensions/header/table-header/o-table-header.component.mjs +4 -4
  220. package/esm2020/lib/components/table/extensions/header/table-header-column-filter-icon/o-table-header-column-filter-icon.component.mjs +5 -5
  221. package/esm2020/lib/components/table/extensions/header/table-header-select-all/o-table-header-select-all.component.mjs +6 -4
  222. package/esm2020/lib/components/table/extensions/header/table-insertable-row/o-table-insertable-row.component.mjs +4 -4
  223. package/esm2020/lib/components/table/extensions/header/table-menu/o-table-menu.component.mjs +4 -4
  224. package/esm2020/lib/components/table/extensions/header/table-option/o-table-option.component.mjs +4 -4
  225. package/esm2020/lib/components/table/extensions/header/table-quickfilter/o-table-quickfilter.component.mjs +4 -4
  226. package/esm2020/lib/components/table/extensions/o-table-datasource.service.mjs +4 -4
  227. package/esm2020/lib/components/table/extensions/o-table-strategy.service.mjs +10 -4
  228. package/esm2020/lib/components/table/extensions/pipes/o-table-row-class.pipe.mjs +4 -4
  229. package/esm2020/lib/components/table/extensions/row/o-table-row.directive.mjs +4 -4
  230. package/esm2020/lib/components/table/extensions/row/table-row-expandable/o-table-row-expandable.component.mjs +4 -4
  231. package/esm2020/lib/components/table/extensions/skeleton/o-table-skeleton.component.mjs +19 -19
  232. package/esm2020/lib/components/table/extensions/sort/o-mat-sort-header.mjs +14 -7
  233. package/esm2020/lib/components/table/extensions/sort/o-mat-sort-module.mjs +5 -5
  234. package/esm2020/lib/components/table/extensions/sort/o-mat-sort.mjs +4 -4
  235. package/esm2020/lib/components/table/index.mjs +2 -1
  236. package/esm2020/lib/components/table/o-table-base.class.mjs +1 -1
  237. package/esm2020/lib/components/table/o-table-loading.service.mjs +113 -0
  238. package/esm2020/lib/components/table/o-table.component.mjs +317 -121
  239. package/esm2020/lib/components/table/o-table.module.mjs +46 -40
  240. package/esm2020/lib/components/tree/header/tree-menu/o-tree-menu.component.mjs +4 -4
  241. package/esm2020/lib/components/tree/o-tree-dao.service.mjs +4 -4
  242. package/esm2020/lib/components/tree/o-tree.component.mjs +4 -4
  243. package/esm2020/lib/components/tree/o-tree.module.mjs +5 -5
  244. package/esm2020/lib/components/tree/tree-node/tree-node.component.mjs +4 -4
  245. package/esm2020/lib/components/user-info/o-user-info.component.mjs +4 -4
  246. package/esm2020/lib/components/user-info/o-user-info.module.mjs +5 -5
  247. package/esm2020/lib/components/user-info/user-info-configuration/o-user-info-configuration.directive.mjs +4 -4
  248. package/esm2020/lib/components/user-info/user-info-configuration-item/o-user-info-configuration-item.directive.mjs +4 -4
  249. package/esm2020/lib/config/o-modules.mjs +5 -5
  250. package/esm2020/lib/directives/input-regulate.directive.mjs +4 -4
  251. package/esm2020/lib/directives/keyboard-listener.directive.mjs +4 -4
  252. package/esm2020/lib/directives/locker.directive.mjs +4 -4
  253. package/esm2020/lib/directives/o-file-drag-and-drop.directive.mjs +4 -4
  254. package/esm2020/lib/directives/o-hidden.directive.mjs +4 -4
  255. package/esm2020/lib/directives/o-mat-error.directive.mjs +4 -4
  256. package/esm2020/lib/directives/o-mat-prefix.directive.mjs +4 -4
  257. package/esm2020/lib/directives/o-mat-suffix.directive.mjs +4 -4
  258. package/esm2020/lib/directives/o-tab-group.directive.mjs +4 -4
  259. package/esm2020/lib/interfaces/column-filter-change-event.interface.mjs +2 -0
  260. package/esm2020/lib/interfaces/index.mjs +2 -1
  261. package/esm2020/lib/layouts/app-layout/app-layout-header/o-app-layout-header.component.mjs +4 -4
  262. package/esm2020/lib/layouts/app-layout/app-layout-sidenav/o-app-layout-sidenav.component.mjs +4 -4
  263. package/esm2020/lib/layouts/app-layout/o-app-layout.component.mjs +4 -4
  264. package/esm2020/lib/layouts/app-layout/o-app-layout.module.mjs +5 -5
  265. package/esm2020/lib/layouts/card-menu-layout/o-card-menu-layout.component.mjs +4 -4
  266. package/esm2020/lib/layouts/card-menu-layout/o-card-menu-layout.module.mjs +5 -5
  267. package/esm2020/lib/layouts/form-layout/dialog/o-form-layout-dialog.component.mjs +4 -4
  268. package/esm2020/lib/layouts/form-layout/dialog/options/o-form-layout-dialog-options.directive.mjs +4 -4
  269. package/esm2020/lib/layouts/form-layout/directives/o-form-layout-manager-content.directive.mjs +4 -4
  270. package/esm2020/lib/layouts/form-layout/guards/o-form-layout-can-activate-child.guard.mjs +4 -4
  271. package/esm2020/lib/layouts/form-layout/o-form-layout-manager.component.mjs +4 -4
  272. package/esm2020/lib/layouts/form-layout/o-form-layout-manager.module.mjs +5 -5
  273. package/esm2020/lib/layouts/form-layout/split-pane/o-form-layout-split-pane.component.mjs +4 -4
  274. package/esm2020/lib/layouts/form-layout/split-pane/options/o-form-layout-split-pane-options.directive.mjs +4 -4
  275. package/esm2020/lib/layouts/form-layout/tabgroup/o-form-layout-tabgroup.component.mjs +4 -4
  276. package/esm2020/lib/layouts/form-layout/tabgroup/options/o-form-layout-tabgroup-options.directive.mjs +4 -4
  277. package/esm2020/lib/ontimize-web-ngx.module.mjs +5 -5
  278. package/esm2020/lib/pipes/columns-filter.pipe.mjs +4 -4
  279. package/esm2020/lib/pipes/is-empty-value.pipe.mjs +4 -4
  280. package/esm2020/lib/pipes/o-currency.pipe.mjs +4 -4
  281. package/esm2020/lib/pipes/o-icon.pipe.mjs +4 -4
  282. package/esm2020/lib/pipes/o-integer.pipe.mjs +4 -4
  283. package/esm2020/lib/pipes/o-moment.pipe.mjs +4 -4
  284. package/esm2020/lib/pipes/o-percentage.pipe.mjs +4 -4
  285. package/esm2020/lib/pipes/o-real.pipe.mjs +4 -4
  286. package/esm2020/lib/pipes/o-safe.pipe.mjs +4 -4
  287. package/esm2020/lib/pipes/o-translate.pipe.mjs +8 -8
  288. package/esm2020/lib/pipes/order-by.pipe.mjs +4 -4
  289. package/esm2020/lib/services/app-menu.service.mjs +4 -4
  290. package/esm2020/lib/services/appearance.service.mjs +4 -4
  291. package/esm2020/lib/services/auth-guard.service.mjs +4 -4
  292. package/esm2020/lib/services/auth.service.mjs +4 -4
  293. package/esm2020/lib/services/base-service-response.adapter.mjs +4 -4
  294. package/esm2020/lib/services/base-service.class.mjs +4 -4
  295. package/esm2020/lib/services/currency.service.mjs +4 -4
  296. package/esm2020/lib/services/dialog.service.mjs +4 -4
  297. package/esm2020/lib/services/icon.service.mjs +4 -4
  298. package/esm2020/lib/services/jsonapi/jsonapi-preferences.service.mjs +4 -4
  299. package/esm2020/lib/services/jsonapi/jsonapi-service-response.adapter.mjs +4 -4
  300. package/esm2020/lib/services/jsonapi/jsonapi.service.mjs +4 -4
  301. package/esm2020/lib/services/local-storage.service.mjs +4 -4
  302. package/esm2020/lib/services/login-storage.service.mjs +4 -4
  303. package/esm2020/lib/services/moment.service.mjs +4 -4
  304. package/esm2020/lib/services/navigation.service.mjs +4 -4
  305. package/esm2020/lib/services/number.service.mjs +4 -4
  306. package/esm2020/lib/services/o-auth.service.mjs +4 -4
  307. package/esm2020/lib/services/o-breadcrumb.service.mjs +4 -4
  308. package/esm2020/lib/services/o-error-dialog-manager.service.mjs +4 -4
  309. package/esm2020/lib/services/o-form-layout-manager.service.mjs +4 -4
  310. package/esm2020/lib/services/o-modules-info.service.mjs +4 -4
  311. package/esm2020/lib/services/o-user-info.service.mjs +4 -4
  312. package/esm2020/lib/services/ontimize/o-preference-response.adapter.mjs +4 -4
  313. package/esm2020/lib/services/ontimize/ontimize-base-service.class.mjs +4 -4
  314. package/esm2020/lib/services/ontimize/ontimize-ee.service.mjs +4 -4
  315. package/esm2020/lib/services/ontimize/ontimize-export-3xx.service.mjs +4 -4
  316. package/esm2020/lib/services/ontimize/ontimize-export.service.mjs +4 -4
  317. package/esm2020/lib/services/ontimize/ontimize-file.service.mjs +4 -4
  318. package/esm2020/lib/services/ontimize/ontimize-preferences.service.mjs +4 -4
  319. package/esm2020/lib/services/ontimize/ontimize-service-response.adapter.mjs +4 -4
  320. package/esm2020/lib/services/ontimize/ontimize.service.mjs +4 -4
  321. package/esm2020/lib/services/ontimize-export-data-base-provider.service.mjs +4 -4
  322. package/esm2020/lib/services/ontimize-export-data-provider-3x.service.mjs +4 -4
  323. package/esm2020/lib/services/ontimize-export-data-provider.service.mjs +4 -4
  324. package/esm2020/lib/services/ontimize-icon-registry.service.mjs +4 -4
  325. package/esm2020/lib/services/pagination-context.service.mjs +4 -4
  326. package/esm2020/lib/services/parser/o-service-response.parser.mjs +4 -4
  327. package/esm2020/lib/services/permissions/o-permissions.module.mjs +5 -5
  328. package/esm2020/lib/services/permissions/ontimize-ee-permissions.service.mjs +4 -4
  329. package/esm2020/lib/services/permissions/ontimize-permissions.service.mjs +4 -4
  330. package/esm2020/lib/services/permissions/permissions-can-activate.guard.mjs +4 -4
  331. package/esm2020/lib/services/permissions/permissions.service.mjs +4 -4
  332. package/esm2020/lib/services/remote-config.service.mjs +5 -5
  333. package/esm2020/lib/services/request-adapter/jsonapi-request-arguments.adapter.mjs +4 -4
  334. package/esm2020/lib/services/request-adapter/ontimize-request-arguments.adapter.mjs +4 -4
  335. package/esm2020/lib/services/share-can-activate-child.service.mjs +4 -4
  336. package/esm2020/lib/services/snackbar.service.mjs +4 -4
  337. package/esm2020/lib/services/state/o-app-menu-component-state.service.mjs +4 -4
  338. package/esm2020/lib/services/state/o-component-state.service.mjs +10 -10
  339. package/esm2020/lib/services/state/o-filter-builder-component-state.service.mjs +4 -4
  340. package/esm2020/lib/services/state/o-form-layout-manager-component-state.service.mjs +4 -4
  341. package/esm2020/lib/services/state/o-grid-component-state.service.mjs +4 -4
  342. package/esm2020/lib/services/state/o-list-component-state.service.mjs +4 -4
  343. package/esm2020/lib/services/state/o-table-component-state.class.mjs +1 -1
  344. package/esm2020/lib/services/state/o-table-component-state.service.mjs +4 -4
  345. package/esm2020/lib/services/state/o-tree-component-state.service.mjs +4 -4
  346. package/esm2020/lib/services/translate/o-translate.parser.mjs +4 -4
  347. package/esm2020/lib/services/translate/o-translate.service.mjs +4 -4
  348. package/esm2020/lib/shared/components/dialog/o-dialog-internal.component.mjs +4 -4
  349. package/esm2020/lib/shared/components/dialog/o-dialog.component.mjs +4 -4
  350. package/esm2020/lib/shared/components/error403/o-error-403.component.mjs +4 -4
  351. package/esm2020/lib/shared/components/filter/load-filter/o-load-filter-dialog.component.mjs +4 -4
  352. package/esm2020/lib/shared/components/filter/store-filter/o-store-filter-dialog.component.mjs +4 -4
  353. package/esm2020/lib/shared/components/snackbar/o-snackbar-base.class.mjs +4 -4
  354. package/esm2020/lib/shared/components/snackbar/o-snackbar.component.mjs +4 -4
  355. package/esm2020/lib/shared/components/validation/o-error.component.mjs +4 -4
  356. package/esm2020/lib/shared/components/validation/o-validator.component.mjs +4 -4
  357. package/esm2020/lib/shared/material/custom.material.module.mjs +5 -5
  358. package/esm2020/lib/shared/material/date/ontimize-moment-date-adapter.mjs +4 -4
  359. package/esm2020/lib/shared/shared.module.mjs +5 -5
  360. package/esm2020/lib/types/aggregate-function.type.mjs +1 -1
  361. package/esm2020/lib/types/table/o-table-global-config.type.mjs +1 -1
  362. package/fesm2015/ontimize-web-ngx.mjs +1945 -1348
  363. package/fesm2015/ontimize-web-ngx.mjs.map +1 -1
  364. package/fesm2020/ontimize-web-ngx.mjs +1928 -1345
  365. package/fesm2020/ontimize-web-ngx.mjs.map +1 -1
  366. package/lib/components/app-sidenav/o-app-sidenav.component.d.ts +1 -1
  367. package/lib/components/dual-list-selector/o-dual-list-selector.component.d.ts +1 -1
  368. package/lib/components/filter-builder/o-filter-builder.component.d.ts +1 -1
  369. package/lib/components/input/hour-input/index.d.ts +3 -0
  370. package/lib/components/input/hour-input/o-hour-input.component.d.ts +6 -2
  371. package/lib/components/input/hour-input/o-hour-input.directive.d.ts +8 -0
  372. package/lib/components/input/hour-input/o-hour-input.module.d.ts +5 -4
  373. package/lib/components/input/index.d.ts +1 -2
  374. package/lib/components/o-service-base-component.class.d.ts +2 -1
  375. package/lib/components/o-service-component.class.d.ts +1 -1
  376. package/lib/components/table/column/cell-editor/o-base-table-cell-editor.class.d.ts +5 -3
  377. package/lib/components/table/column/cell-editor/time/o-table-cell-editor-time.component.d.ts +2 -2
  378. package/lib/components/table/column/cell-renderer/cell-renderer.d.ts +5 -1
  379. package/lib/components/table/column/cell-renderer/chip/o-table-cell-renderer-chip.component.d.ts +23 -0
  380. package/lib/components/table/column/cell-renderer/index.d.ts +2 -0
  381. package/lib/components/table/column/cell-renderer/list/o-table-cell-renderer-list.component.d.ts +14 -0
  382. package/lib/components/table/column/o-table-column.component.d.ts +2 -1
  383. package/lib/components/table/extensions/default-o-table.datasource.d.ts +6 -1
  384. package/lib/components/table/extensions/dialog/group-by-columns/o-table-group-by-columns-dialog.component.d.ts +1 -1
  385. package/lib/components/table/extensions/footer/aggregate/o-table-column-aggregate.component.d.ts +1 -1
  386. package/lib/components/table/extensions/footer/expanded/o-table-expanded-footer.directive.d.ts +1 -2
  387. package/lib/components/table/extensions/header/table-header-select-all/o-table-header-select-all.component.d.ts +2 -1
  388. package/lib/components/table/extensions/o-table-strategy.service.d.ts +2 -1
  389. package/lib/components/table/extensions/skeleton/o-table-skeleton.component.d.ts +1 -0
  390. package/lib/components/table/extensions/sort/o-mat-sort-header.d.ts +5 -3
  391. package/lib/components/table/index.d.ts +1 -0
  392. package/lib/components/table/o-table-base.class.d.ts +3 -1
  393. package/lib/components/table/o-table-loading.service.d.ts +28 -0
  394. package/lib/components/table/o-table.component.d.ts +25 -4
  395. package/lib/components/table/o-table.module.d.ts +48 -45
  396. package/lib/interfaces/column-filter-change-event.interface.d.ts +6 -0
  397. package/lib/interfaces/index.d.ts +1 -0
  398. package/lib/services/state/o-table-component-state.class.d.ts +1 -1
  399. package/lib/types/aggregate-function.type.d.ts +2 -1
  400. package/lib/types/table/o-table-global-config.type.d.ts +6 -0
  401. package/package.json +2 -2
  402. package/theme.scss +0 -2
@@ -7,10 +7,10 @@ import { OFormToolbarModule } from './toolbar/o-form-toolbar.module';
7
7
  import * as i0 from "@angular/core";
8
8
  export class OFormModule {
9
9
  }
10
- OFormModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- OFormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: OFormModule, declarations: [OFormComponent], imports: [CommonModule, OFormToolbarModule, OSharedModule], exports: [OFormComponent, OFormToolbarModule] });
12
- OFormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormModule, providers: [{ provide: CanDeactivateFormGuard, useClass: CanDeactivateFormGuard }], imports: [CommonModule, OFormToolbarModule, OSharedModule, OFormToolbarModule] });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormModule, decorators: [{
10
+ OFormModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ OFormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: OFormModule, declarations: [OFormComponent], imports: [CommonModule, OFormToolbarModule, OSharedModule], exports: [OFormComponent, OFormToolbarModule] });
12
+ OFormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormModule, providers: [{ provide: CanDeactivateFormGuard, useClass: CanDeactivateFormGuard }], imports: [CommonModule, OFormToolbarModule, OSharedModule, OFormToolbarModule] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{
16
16
  declarations: [OFormComponent],
@@ -20,4 +20,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
20
20
  schemas: [CUSTOM_ELEMENTS_SCHEMA]
21
21
  }]
22
22
  }] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1mb3JtLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vby1mb3JtLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQVNyRSxNQUFNLE9BQU8sV0FBVzs7d0dBQVgsV0FBVzt5R0FBWCxXQUFXLGlCQU5QLGNBQWMsYUFDbkIsWUFBWSxFQUFFLGtCQUFrQixFQUFFLGFBQWEsYUFDL0MsY0FBYyxFQUFFLGtCQUFrQjt5R0FJakMsV0FBVyxhQUhYLENBQUMsRUFBRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFLENBQUMsWUFGeEUsWUFBWSxFQUFFLGtCQUFrQixFQUFFLGFBQWEsRUFDL0Isa0JBQWtCOzJGQUlqQyxXQUFXO2tCQVB2QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGNBQWMsQ0FBQztvQkFDOUIsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGtCQUFrQixFQUFFLGFBQWEsQ0FBQztvQkFDMUQsT0FBTyxFQUFFLENBQUMsY0FBYyxFQUFFLGtCQUFrQixDQUFDO29CQUM3QyxTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQztvQkFDbEYsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9TaGFyZWRNb2R1bGUgfSBmcm9tICcuLi8uLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5pbXBvcnQgeyBDYW5EZWFjdGl2YXRlRm9ybUd1YXJkIH0gZnJvbSAnLi9ndWFyZHMvby1mb3JtLWNhbi1kZWFjdGl2YXRlLmd1YXJkJztcbmltcG9ydCB7IE9Gb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9vLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IE9Gb3JtVG9vbGJhck1vZHVsZSB9IGZyb20gJy4vdG9vbGJhci9vLWZvcm0tdG9vbGJhci5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtPRm9ybUNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE9Gb3JtVG9vbGJhck1vZHVsZSwgT1NoYXJlZE1vZHVsZV0sXG4gIGV4cG9ydHM6IFtPRm9ybUNvbXBvbmVudCwgT0Zvcm1Ub29sYmFyTW9kdWxlXSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBDYW5EZWFjdGl2YXRlRm9ybUd1YXJkLCB1c2VDbGFzczogQ2FuRGVhY3RpdmF0ZUZvcm1HdWFyZCB9XSxcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdXG59KVxuZXhwb3J0IGNsYXNzIE9Gb3JtTW9kdWxlIHsgfVxuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1mb3JtLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vby1mb3JtLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQVNyRSxNQUFNLE9BQU8sV0FBVzs7eUdBQVgsV0FBVzswR0FBWCxXQUFXLGlCQU5QLGNBQWMsYUFDbkIsWUFBWSxFQUFFLGtCQUFrQixFQUFFLGFBQWEsYUFDL0MsY0FBYyxFQUFFLGtCQUFrQjswR0FJakMsV0FBVyxhQUhYLENBQUMsRUFBRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFLENBQUMsWUFGeEUsWUFBWSxFQUFFLGtCQUFrQixFQUFFLGFBQWEsRUFDL0Isa0JBQWtCOzRGQUlqQyxXQUFXO2tCQVB2QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGNBQWMsQ0FBQztvQkFDOUIsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGtCQUFrQixFQUFFLGFBQWEsQ0FBQztvQkFDMUQsT0FBTyxFQUFFLENBQUMsY0FBYyxFQUFFLGtCQUFrQixDQUFDO29CQUM3QyxTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQztvQkFDbEYsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9TaGFyZWRNb2R1bGUgfSBmcm9tICcuLi8uLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5pbXBvcnQgeyBDYW5EZWFjdGl2YXRlRm9ybUd1YXJkIH0gZnJvbSAnLi9ndWFyZHMvby1mb3JtLWNhbi1kZWFjdGl2YXRlLmd1YXJkJztcbmltcG9ydCB7IE9Gb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9vLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IE9Gb3JtVG9vbGJhck1vZHVsZSB9IGZyb20gJy4vdG9vbGJhci9vLWZvcm0tdG9vbGJhci5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtPRm9ybUNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE9Gb3JtVG9vbGJhck1vZHVsZSwgT1NoYXJlZE1vZHVsZV0sXG4gIGV4cG9ydHM6IFtPRm9ybUNvbXBvbmVudCwgT0Zvcm1Ub29sYmFyTW9kdWxlXSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBDYW5EZWFjdGl2YXRlRm9ybUd1YXJkLCB1c2VDbGFzczogQ2FuRGVhY3RpdmF0ZUZvcm1HdWFyZCB9XSxcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdXG59KVxuZXhwb3J0IGNsYXNzIE9Gb3JtTW9kdWxlIHsgfVxuIl19
@@ -47,9 +47,9 @@ export class OFormMessageService {
47
47
  return 'CONFIRM';
48
48
  }
49
49
  }
50
- OFormMessageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormMessageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
51
- OFormMessageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormMessageService });
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormMessageService, decorators: [{
50
+ OFormMessageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormMessageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
51
+ OFormMessageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormMessageService });
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormMessageService, decorators: [{
53
53
  type: Injectable
54
54
  }] });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1mb3JtLW1lc3NhZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vc2VydmljZXMvby1mb3JtLW1lc3NhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUczQyxNQUFNLE9BQU8sbUJBQW1CO0lBRTlCLG9CQUFvQjtRQUNsQixPQUFPLHNCQUFzQixDQUFDO0lBQ2hDLENBQUM7SUFFRCx1QkFBdUI7UUFDckIsT0FBTyxnQkFBZ0IsQ0FBQztJQUMxQixDQUFDO0lBRUQscUJBQXFCO1FBQ25CLE9BQU8sdUJBQXVCLENBQUM7SUFDakMsQ0FBQztJQUVELHVCQUF1QjtRQUNyQixPQUFPLGtCQUFrQixDQUFDO0lBQzVCLENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsT0FBTyx1QkFBdUIsQ0FBQztJQUNqQyxDQUFDO0lBRUQsNEJBQTRCO1FBQzFCLE9BQU8sOEJBQThCLENBQUM7SUFDeEMsQ0FBQztJQUVELGdDQUFnQztRQUM5QixPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQsdUJBQXVCO1FBQ3JCLE9BQU8sbUJBQW1CLENBQUM7SUFDN0IsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixPQUFPLHVCQUF1QixDQUFDO0lBQ2pDLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsT0FBTyxnQ0FBZ0MsQ0FBQztJQUMxQyxDQUFDO0lBRUQsNkJBQTZCO1FBQzNCLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCx5QkFBeUI7UUFDdkIsT0FBTyxzQ0FBc0MsQ0FBQztJQUNoRCxDQUFDO0lBRUQsb0NBQW9DO1FBQ2xDLE9BQU8sMkNBQTJDLENBQUM7SUFDckQsQ0FBQztJQUVELG9DQUFvQztRQUNsQyxPQUFPLG9DQUFvQyxDQUFDO0lBQzlDLENBQUM7SUFFRCx3Q0FBd0M7UUFDdEMsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzs7Z0hBNURVLG1CQUFtQjtvSEFBbkIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPRm9ybU1lc3NhZ2VTZXJ2aWNlIHtcblxuICBnZXRRdWVyeUVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnTUVTU0FHRVMuRVJST1JfUVVFUlknO1xuICB9XG5cbiAgZ2V0VXBkYXRlU3VjY2Vzc01lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ01FU1NBR0VTLlNBVkVEJztcbiAgfVxuXG4gIGdldFVwZGF0ZUVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnTUVTU0FHRVMuRVJST1JfVVBEQVRFJztcbiAgfVxuXG4gIGdldERlbGV0ZVN1Y2Nlc3NNZXNzYWdlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdNRVNTQUdFUy5ERUxFVEVEJztcbiAgfVxuXG4gIGdldERlbGV0ZUVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnTUVTU0FHRVMuRVJST1JfREVMRVRFJztcbiAgfVxuXG4gIGdldERlbGV0ZUNvbmZpcm1hdGlvbk1lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ01FU1NBR0VTLkNPTkZJUk1fREVMRVRFX0lURU0nO1xuICB9XG5cbiAgZ2V0RGVsZXRlQ29uZmlybWF0aW9uRGlhbG9nVGl0bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ0NPTkZJUk0nO1xuICB9XG5cbiAgZ2V0SW5zZXJ0U3VjY2Vzc01lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ01FU1NBR0VTLklOU0VSVEVEJztcbiAgfVxuXG4gIGdldEluc2VydEVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnTUVTU0FHRVMuRVJST1JfSU5TRVJUJztcbiAgfVxuXG4gIGdldFZhbGlkYXRpb25FcnJvcigpOiBzdHJpbmcge1xuICAgIHJldHVybiAnTUVTU0FHRVMuRk9STV9WQUxJREFUSU9OX0VSUk9SJztcbiAgfVxuXG4gIGdldFZhbGlkYXRpb25FcnJvckRpYWxvZ1RpdGxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdFUlJPUic7XG4gIH1cblxuICBnZXROb3RoaW5nVG9VcGRhdGVNZXNzYWdlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdNRVNTQUdFUy5GT1JNX05PVEhJTkdfVE9fVVBEQVRFX0lORk8nO1xuICB9XG5cbiAgZ2V0QWN0aW9uUGVybWlzc2lvbk5vdEVuYWJsZWRNZXNzYWdlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdNRVNTQUdFUy5PUEVSQVRJT05fTk9UX0FMTE9XRURfUEVSTUlTU0lPTic7XG4gIH1cblxuICBnZXREaXNjYXJkQ2hhbmdlc0NvbmZpcm1hdGlvbk1lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ01FU1NBR0VTLkZPUk1fQ0hBTkdFU19XSUxMX0JFX0xPU1QnO1xuICB9XG5cbiAgZ2V0RGlzY2FyZENoYW5nZXNDb25maXJtYXRpb25EaWFsb2dUaXRsZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnQ09ORklSTSc7XG4gIH1cblxufVxuIl19
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1mb3JtLW1lc3NhZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vc2VydmljZXMvby1mb3JtLW1lc3NhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUczQyxNQUFNLE9BQU8sbUJBQW1CO0lBRTlCLG9CQUFvQjtRQUNsQixPQUFPLHNCQUFzQixDQUFDO0lBQ2hDLENBQUM7SUFFRCx1QkFBdUI7UUFDckIsT0FBTyxnQkFBZ0IsQ0FBQztJQUMxQixDQUFDO0lBRUQscUJBQXFCO1FBQ25CLE9BQU8sdUJBQXVCLENBQUM7SUFDakMsQ0FBQztJQUVELHVCQUF1QjtRQUNyQixPQUFPLGtCQUFrQixDQUFDO0lBQzVCLENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsT0FBTyx1QkFBdUIsQ0FBQztJQUNqQyxDQUFDO0lBRUQsNEJBQTRCO1FBQzFCLE9BQU8sOEJBQThCLENBQUM7SUFDeEMsQ0FBQztJQUVELGdDQUFnQztRQUM5QixPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQsdUJBQXVCO1FBQ3JCLE9BQU8sbUJBQW1CLENBQUM7SUFDN0IsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixPQUFPLHVCQUF1QixDQUFDO0lBQ2pDLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsT0FBTyxnQ0FBZ0MsQ0FBQztJQUMxQyxDQUFDO0lBRUQsNkJBQTZCO1FBQzNCLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCx5QkFBeUI7UUFDdkIsT0FBTyxzQ0FBc0MsQ0FBQztJQUNoRCxDQUFDO0lBRUQsb0NBQW9DO1FBQ2xDLE9BQU8sMkNBQTJDLENBQUM7SUFDckQsQ0FBQztJQUVELG9DQUFvQztRQUNsQyxPQUFPLG9DQUFvQyxDQUFDO0lBQzlDLENBQUM7SUFFRCx3Q0FBd0M7UUFDdEMsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzs7aUhBNURVLG1CQUFtQjtxSEFBbkIsbUJBQW1COzRGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPRm9ybU1lc3NhZ2VTZXJ2aWNlIHtcblxuICBnZXRRdWVyeUVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnTUVTU0FHRVMuRVJST1JfUVVFUlknO1xuICB9XG5cbiAgZ2V0VXBkYXRlU3VjY2Vzc01lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ01FU1NBR0VTLlNBVkVEJztcbiAgfVxuXG4gIGdldFVwZGF0ZUVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnTUVTU0FHRVMuRVJST1JfVVBEQVRFJztcbiAgfVxuXG4gIGdldERlbGV0ZVN1Y2Nlc3NNZXNzYWdlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdNRVNTQUdFUy5ERUxFVEVEJztcbiAgfVxuXG4gIGdldERlbGV0ZUVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnTUVTU0FHRVMuRVJST1JfREVMRVRFJztcbiAgfVxuXG4gIGdldERlbGV0ZUNvbmZpcm1hdGlvbk1lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ01FU1NBR0VTLkNPTkZJUk1fREVMRVRFX0lURU0nO1xuICB9XG5cbiAgZ2V0RGVsZXRlQ29uZmlybWF0aW9uRGlhbG9nVGl0bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ0NPTkZJUk0nO1xuICB9XG5cbiAgZ2V0SW5zZXJ0U3VjY2Vzc01lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ01FU1NBR0VTLklOU0VSVEVEJztcbiAgfVxuXG4gIGdldEluc2VydEVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnTUVTU0FHRVMuRVJST1JfSU5TRVJUJztcbiAgfVxuXG4gIGdldFZhbGlkYXRpb25FcnJvcigpOiBzdHJpbmcge1xuICAgIHJldHVybiAnTUVTU0FHRVMuRk9STV9WQUxJREFUSU9OX0VSUk9SJztcbiAgfVxuXG4gIGdldFZhbGlkYXRpb25FcnJvckRpYWxvZ1RpdGxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdFUlJPUic7XG4gIH1cblxuICBnZXROb3RoaW5nVG9VcGRhdGVNZXNzYWdlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdNRVNTQUdFUy5GT1JNX05PVEhJTkdfVE9fVVBEQVRFX0lORk8nO1xuICB9XG5cbiAgZ2V0QWN0aW9uUGVybWlzc2lvbk5vdEVuYWJsZWRNZXNzYWdlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdNRVNTQUdFUy5PUEVSQVRJT05fTk9UX0FMTE9XRURfUEVSTUlTU0lPTic7XG4gIH1cblxuICBnZXREaXNjYXJkQ2hhbmdlc0NvbmZpcm1hdGlvbk1lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ01FU1NBR0VTLkZPUk1fQ0hBTkdFU19XSUxMX0JFX0xPU1QnO1xuICB9XG5cbiAgZ2V0RGlzY2FyZENoYW5nZXNDb25maXJtYXRpb25EaWFsb2dUaXRsZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnQ09ORklSTSc7XG4gIH1cblxufVxuIl19
@@ -326,8 +326,8 @@ export class OFormToolbarComponent {
326
326
  return enabledPermision;
327
327
  }
328
328
  }
329
- OFormToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormToolbarComponent, deps: [{ token: i1.OFormBase }, { token: i0.ElementRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
330
- OFormToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OFormToolbarComponent, selector: "o-form-toolbar", inputs: { labelHeader: ["label-header", "labelHeader"], labelHeaderAlign: ["label-header-align", "labelHeaderAlign"], headeractions: ["header-actions", "headeractions"], showHeaderActionsText: ["show-header-actions-text", "showHeaderActionsText"], showHeaderNavigation: ["show-header-navigation", "showHeaderNavigation"] }, outputs: { onCancel: "onCancel" }, host: { properties: { "class.o-form-toolbar": "true" } }, providers: [{ provide: OFormToolbarBase, useExisting: forwardRef(() => OFormToolbarComponent) }], viewQueries: [{ propertyName: "breadContainer", first: true, predicate: ["breadcrumb"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<mat-toolbar class=\"o-form-toolbar-header\" [class.breadcrumb]=\"includeBreadcrumb\" fxLayout=\"column\" fxLayoutAlign=\"center center\">\n\n <ng-template *ngIf=\"includeBreadcrumb\" #breadcrumb></ng-template>\n\n <div class=\"mat-toolbar-tools\" fxLayout=\"row\" fxLayoutAlign=\"space-between center\">\n <button type=\"button\" mat-icon-button (click)=\"onBack()\" *ngIf=\"isDetail\" class=\"o-form-toolbar-button o-form-toolbar-back\">\n <mat-icon svgIcon=\"ontimize:arrow_back\"></mat-icon>\n </button>\n\n <o-form-navigation #formNavigation *ngIf=\"showNavigation\" fxLayout=\"row\" fxLayoutAlign=\"space-between center\">\n </o-form-navigation>\n\n <span *ngIf=\"getLabelHeaderAlign() === 'center' || getLabelHeaderAlign() === 'end'\" class=\"fill-remaining\"></span>\n <div *ngIf=\"labelHeader!=''\" fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <span>{{ labelHeader | oTranslate }}</span>\n </div>\n <span *ngIf=\"getLabelHeaderAlign() === 'start' || getLabelHeaderAlign() === 'center'\" class=\"fill-remaining\"></span>\n\n <ng-content select=\"[o-custom-form-toolbar-buttons-wrapper]\"></ng-content>\n\n <ng-template [ngIf]=\"showHeaderActionsText\" [ngIfElse]=\"undoBtnWithoutText\">\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-undo\" mat-stroked-button (click)=\"onUndoLastChange()\"\n [disabled]=\"isChangesStackEmpty\" *ngIf=\"showUndoButton\">\n <mat-icon svgIcon=\"ontimize:undo\"></mat-icon>\n <span>{{ 'UNDO' | oTranslate }}</span>\n </button>\n </ng-template>\n <ng-template #undoBtnWithoutText>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-undo\" mat-icon-button (click)=\"onUndoLastChange()\"\n [disabled]=\"isChangesStackEmpty\" *ngIf=\"showUndoButton\">\n <mat-icon svgIcon=\"ontimize:undo\"></mat-icon>\n </button>\n </ng-template>\n\n <ng-container *ngIf=\"initialMode\">\n <ng-template [ngIf]=\"showHeaderActionsText\" [ngIfElse]=\"buttonsWithouText\">\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-refresh\" mat-stroked-button (click)=\"onReload()\"\n *ngIf=\"isRefreshBtnEnabled\" attr=\"refresh\">\n <mat-icon svgIcon=\"ontimize:autorenew\"></mat-icon>\n <span>{{ 'REFRESH' | oTranslate }}</span>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-insert\" mat-stroked-button (click)=\"onInsert()\"\n *ngIf=\"isInsertBtnEnabled\" attr=\"insert\">\n <mat-icon svgIcon=\"ontimize:add\"></mat-icon>\n <span>{{ 'ADD' | oTranslate }}</span>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-edit\" mat-stroked-button (click)=\"onEdit()\"\n *ngIf=\"isEditBtnEnabled | async\" attr=\"edit\">\n <mat-icon svgIcon=\"ontimize:edit\"></mat-icon>\n <span>{{ 'EDIT' | oTranslate }}</span>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-delete\" mat-stroked-button (click)=\"onDelete()\"\n *ngIf=\"isDeleteBtnEnabled\" attr=\"delete\">\n <mat-icon svgIcon=\"ontimize:delete\"></mat-icon>\n <span>{{ 'DELETE' | oTranslate }}</span>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-save\" mat-stroked-button (click)=\"onSave()\"\n [disabled]=\"!(existsChangesToSave | async)\" *ngIf=\"isSaveBtnEnabled | async\" attr=\"update\">\n <mat-icon svgIcon=\"ontimize:save\"></mat-icon>\n <span>{{ 'SAVE' | oTranslate }}</span>\n </button>\n </ng-template>\n <ng-template #buttonsWithouText>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-refresh\" mat-icon-button (click)=\"onReload()\"\n *ngIf=\"isRefreshBtnEnabled\" attr=\"refresh\">\n <mat-icon svgIcon=\"ontimize:autorenew\"></mat-icon>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-insert\" mat-icon-button (click)=\"onInsert()\"\n *ngIf=\"isInsertBtnEnabled\" attr=\"insert\">\n <mat-icon svgIcon=\"ontimize:add\"></mat-icon>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button-o-form-toolbar-button-edit\" mat-icon-button (click)=\"onEdit()\"\n *ngIf=\"isEditBtnEnabled | async\" attr=\"edit\">\n <mat-icon svgIcon=\"ontimize:edit\"></mat-icon>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-delete\" mat-icon-button (click)=\"onDelete()\"\n *ngIf=\"isDeleteBtnEnabled\" attr=\"delete\">\n <mat-icon svgIcon=\"ontimize:delete\"></mat-icon>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-save\" mat-icon-button (click)=\"onSave()\"\n [disabled]=\"!existsChangesToSave\" *ngIf=\"isSaveBtnEnabled | async\" attr=\"update\">\n <mat-icon svgIcon=\"ontimize:save\"></mat-icon>\n </button>\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"editMode || insertMode\">\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-cancel\" mat-stroked-button (click)=\"cancelOperation()\">\n <mat-icon svgIcon=\"ontimize:clear\"></mat-icon>\n <span *ngIf=\"showHeaderActionsText\">{{ 'CANCEL' | oTranslate }}</span>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-insert\" mat-stroked-button color=\"primary\" (click)=\"acceptOperation()\">\n <mat-icon svgIcon=\"ontimize:done\"></mat-icon>\n <span *ngIf=\"showHeaderActionsText\">{{ 'INSERT' | oTranslate }}</span>\n </button>\n </ng-container>\n </div>\n\n</mat-toolbar>\n", styles: [".o-form-toolbar{flex:none;display:block}.o-form-toolbar .o-form-toolbar-header{min-height:50px;max-height:50px;padding:0 16px 0 4px}.o-form-toolbar .o-form-toolbar-header.breadcrumb{padding:16px;min-height:84px;max-height:84px}.o-form-toolbar .o-form-toolbar-header .mat-toolbar-tools{width:100%}.o-form-toolbar .o-form-toolbar-header .mat-toolbar-tools button.o-form-toolbar-button.mat-mdc-icon-button.mat-mdc-button-base{padding:0;margin:0;background:transparent}.o-form-toolbar .o-form-toolbar-header .o-breadcrumb{width:100%;height:32px;min-height:initial}.o-form-toolbar .o-form-toolbar-header .o-breadcrumb .mat-toolbar{padding:0;min-height:initial;max-height:initial;height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i7.OFormNavigationComponent, selector: "o-form-navigation" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i8.OTranslatePipe, name: "oTranslate" }], encapsulation: i0.ViewEncapsulation.None });
329
+ OFormToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormToolbarComponent, deps: [{ token: i1.OFormBase }, { token: i0.ElementRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
330
+ OFormToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: OFormToolbarComponent, selector: "o-form-toolbar", inputs: { labelHeader: ["label-header", "labelHeader"], labelHeaderAlign: ["label-header-align", "labelHeaderAlign"], headeractions: ["header-actions", "headeractions"], showHeaderActionsText: ["show-header-actions-text", "showHeaderActionsText"], showHeaderNavigation: ["show-header-navigation", "showHeaderNavigation"] }, outputs: { onCancel: "onCancel" }, host: { properties: { "class.o-form-toolbar": "true" } }, providers: [{ provide: OFormToolbarBase, useExisting: forwardRef(() => OFormToolbarComponent) }], viewQueries: [{ propertyName: "breadContainer", first: true, predicate: ["breadcrumb"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<mat-toolbar class=\"o-form-toolbar-header\" [class.breadcrumb]=\"includeBreadcrumb\" fxLayout=\"column\" fxLayoutAlign=\"center center\">\n\n <ng-template *ngIf=\"includeBreadcrumb\" #breadcrumb></ng-template>\n\n <div class=\"mat-toolbar-tools\" fxLayout=\"row\" fxLayoutAlign=\"space-between center\">\n <button type=\"button\" mat-icon-button (click)=\"onBack()\" *ngIf=\"isDetail\" class=\"o-form-toolbar-button o-form-toolbar-back\">\n <mat-icon svgIcon=\"ontimize:arrow_back\"></mat-icon>\n </button>\n\n <o-form-navigation #formNavigation *ngIf=\"showNavigation\" fxLayout=\"row\" fxLayoutAlign=\"space-between center\">\n </o-form-navigation>\n\n <span *ngIf=\"getLabelHeaderAlign() === 'center' || getLabelHeaderAlign() === 'end'\" class=\"fill-remaining\"></span>\n <div *ngIf=\"labelHeader!=''\" fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <span>{{ labelHeader | oTranslate }}</span>\n </div>\n <span *ngIf=\"getLabelHeaderAlign() === 'start' || getLabelHeaderAlign() === 'center'\" class=\"fill-remaining\"></span>\n\n <ng-content select=\"[o-custom-form-toolbar-buttons-wrapper]\"></ng-content>\n\n <ng-template [ngIf]=\"showHeaderActionsText\" [ngIfElse]=\"undoBtnWithoutText\">\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-undo\" mat-stroked-button (click)=\"onUndoLastChange()\"\n [disabled]=\"isChangesStackEmpty\" *ngIf=\"showUndoButton\">\n <mat-icon svgIcon=\"ontimize:undo\"></mat-icon>\n <span>{{ 'UNDO' | oTranslate }}</span>\n </button>\n </ng-template>\n <ng-template #undoBtnWithoutText>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-undo\" mat-icon-button (click)=\"onUndoLastChange()\"\n [disabled]=\"isChangesStackEmpty\" *ngIf=\"showUndoButton\">\n <mat-icon svgIcon=\"ontimize:undo\"></mat-icon>\n </button>\n </ng-template>\n\n <ng-container *ngIf=\"initialMode\">\n <ng-template [ngIf]=\"showHeaderActionsText\" [ngIfElse]=\"buttonsWithouText\">\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-refresh\" mat-stroked-button (click)=\"onReload()\"\n *ngIf=\"isRefreshBtnEnabled\" attr=\"refresh\">\n <mat-icon svgIcon=\"ontimize:autorenew\"></mat-icon>\n <span>{{ 'REFRESH' | oTranslate }}</span>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-insert\" mat-stroked-button (click)=\"onInsert()\"\n *ngIf=\"isInsertBtnEnabled\" attr=\"insert\">\n <mat-icon svgIcon=\"ontimize:add\"></mat-icon>\n <span>{{ 'ADD' | oTranslate }}</span>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-edit\" mat-stroked-button (click)=\"onEdit()\"\n *ngIf=\"isEditBtnEnabled | async\" attr=\"edit\">\n <mat-icon svgIcon=\"ontimize:edit\"></mat-icon>\n <span>{{ 'EDIT' | oTranslate }}</span>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-delete\" mat-stroked-button (click)=\"onDelete()\"\n *ngIf=\"isDeleteBtnEnabled\" attr=\"delete\">\n <mat-icon svgIcon=\"ontimize:delete\"></mat-icon>\n <span>{{ 'DELETE' | oTranslate }}</span>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-save\" mat-stroked-button (click)=\"onSave()\"\n [disabled]=\"!(existsChangesToSave | async)\" *ngIf=\"isSaveBtnEnabled | async\" attr=\"update\">\n <mat-icon svgIcon=\"ontimize:save\"></mat-icon>\n <span>{{ 'SAVE' | oTranslate }}</span>\n </button>\n </ng-template>\n <ng-template #buttonsWithouText>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-refresh\" mat-icon-button (click)=\"onReload()\"\n *ngIf=\"isRefreshBtnEnabled\" attr=\"refresh\">\n <mat-icon svgIcon=\"ontimize:autorenew\"></mat-icon>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-insert\" mat-icon-button (click)=\"onInsert()\"\n *ngIf=\"isInsertBtnEnabled\" attr=\"insert\">\n <mat-icon svgIcon=\"ontimize:add\"></mat-icon>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button-o-form-toolbar-button-edit\" mat-icon-button (click)=\"onEdit()\"\n *ngIf=\"isEditBtnEnabled | async\" attr=\"edit\">\n <mat-icon svgIcon=\"ontimize:edit\"></mat-icon>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-delete\" mat-icon-button (click)=\"onDelete()\"\n *ngIf=\"isDeleteBtnEnabled\" attr=\"delete\">\n <mat-icon svgIcon=\"ontimize:delete\"></mat-icon>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-save\" mat-icon-button (click)=\"onSave()\"\n [disabled]=\"!existsChangesToSave\" *ngIf=\"isSaveBtnEnabled | async\" attr=\"update\">\n <mat-icon svgIcon=\"ontimize:save\"></mat-icon>\n </button>\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"editMode || insertMode\">\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-cancel\" mat-stroked-button (click)=\"cancelOperation()\">\n <mat-icon svgIcon=\"ontimize:clear\"></mat-icon>\n <span *ngIf=\"showHeaderActionsText\">{{ 'CANCEL' | oTranslate }}</span>\n </button>\n <button type=\"button\" class=\"o-form-toolbar-button o-form-toolbar-button-insert\" mat-stroked-button color=\"primary\" (click)=\"acceptOperation()\">\n <mat-icon svgIcon=\"ontimize:done\"></mat-icon>\n <span *ngIf=\"showHeaderActionsText\">{{ 'INSERT' | oTranslate }}</span>\n </button>\n </ng-container>\n </div>\n\n</mat-toolbar>\n", styles: [".o-form-toolbar{flex:none;display:block}.o-form-toolbar .o-form-toolbar-header{min-height:50px;max-height:50px;padding:0 16px 0 4px}.o-form-toolbar .o-form-toolbar-header.breadcrumb{padding:16px;min-height:84px;max-height:84px}.o-form-toolbar .o-form-toolbar-header .mat-toolbar-tools{width:100%}.o-form-toolbar .o-form-toolbar-header .mat-toolbar-tools button.o-form-toolbar-button.mat-mdc-icon-button.mat-mdc-button-base{padding:0;margin:0;background:transparent}.o-form-toolbar .o-form-toolbar-header .o-breadcrumb{width:100%;height:32px;min-height:initial}.o-form-toolbar .o-form-toolbar-header .o-breadcrumb .mat-toolbar{padding:0;min-height:initial;max-height:initial;height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i7.OFormNavigationComponent, selector: "o-form-navigation" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i8.OTranslatePipe, name: "oTranslate" }], encapsulation: i0.ViewEncapsulation.None });
331
331
  __decorate([
332
332
  BooleanInputConverter(),
333
333
  __metadata("design:type", Boolean)
@@ -336,7 +336,7 @@ __decorate([
336
336
  BooleanInputConverter(),
337
337
  __metadata("design:type", Boolean)
338
338
  ], OFormToolbarComponent.prototype, "showHeaderNavigation", void 0);
339
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormToolbarComponent, decorators: [{
339
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormToolbarComponent, decorators: [{
340
340
  type: Component,
341
341
  args: [{ selector: 'o-form-toolbar', inputs: DEFAULT_INPUTS_O_FORM_TOOLBAR, outputs: DEFAULT_OUTPUTS_O_FORM_TOOLBAR, encapsulation: ViewEncapsulation.None, host: {
342
342
  '[class.o-form-toolbar]': 'true'
@@ -345,4 +345,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
345
345
  type: ViewChild,
346
346
  args: ['breadcrumb', { read: ViewContainerRef }]
347
347
  }] } });
348
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1mb3JtLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS90b29sYmFyL28tZm9ybS10b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vdG9vbGJhci9vLWZvcm0tdG9vbGJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQXFCLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUssT0FBTyxFQUFFLGVBQWUsRUFBNEIsTUFBTSxNQUFNLENBQUM7QUFFakUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUVyRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7Ozs7OztBQUUvRCxNQUFNLENBQUMsTUFBTSw2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RSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDckIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsb0NBQW9DLEVBQUUsQ0FBQyxDQUFDO1NBQzdGO1FBQ0QsT0FBTyxnQkFBZ0IsQ0FBQztJQUMxQixDQUFDOztrSEF2WFUscUJBQXFCO3NHQUFyQixxQkFBcUIsMGNBRnJCLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLENBQUMsbUhBd0IvRCxnQkFBZ0IsNkJDN0RuRCwyekxBbUdBO0FEckRFO0lBQUMscUJBQXFCLEVBQUU7O29FQUNxQjtBQUM3QztJQUFDLHFCQUFxQixFQUFFOzttRUFDb0I7MkZBVmpDLHFCQUFxQjtrQkFaakMsU0FBUzsrQkFDRSxnQkFBZ0IsVUFHbEIsNkJBQTZCLFdBQzVCLDhCQUE4QixpQkFDeEIsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSix3QkFBd0IsRUFBRSxNQUFNO3FCQUNqQyxhQUNVLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsc0JBQXNCLENBQUMsRUFBRSxDQUFDO2dKQVV6RixxQkFBcUIsTUFFckIsb0JBQW9CLE1BYXBCLGNBQWM7c0JBRHBCLFNBQVM7dUJBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEluamVjdG9yLCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmLCBWaWV3RW5jYXBzdWxhdGlvbiwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQm9vbGVhbklucHV0Q29udmVydGVyIH0gZnJvbSAnLi4vLi4vLi4vZGVjb3JhdG9ycy9pbnB1dC1jb252ZXJ0ZXInO1xuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2RpYWxvZy5zZXJ2aWNlJztcbmltcG9ydCB7IE5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbmF2aWdhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFNuYWNrQmFyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3NuYWNrYmFyLnNlcnZpY2UnO1xuaW1wb3J0IHsgT1Blcm1pc3Npb25zIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvby1wZXJtaXNzaW9ucy50eXBlJztcbmltcG9ydCB7IENvZGVzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbC9jb2Rlcyc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uc1V0aWxzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbC9wZXJtaXNzaW9ucyc7XG5pbXBvcnQgeyBVdGlsIH0gZnJvbSAnLi4vLi4vLi4vdXRpbC91dGlsJztcbmltcG9ydCB7IE9Gb3JtQmFzZSB9IGZyb20gJy4uL28tZm9ybS1iYXNlLmNsYXNzJztcbmltcG9ydCB7IE9Gb3JtVG9vbGJhckJhc2UgfSBmcm9tICcuL28tZm9ybS10b29sYmFyLWJhc2UuY2xhc3MnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9JTlBVVFNfT19GT1JNX1RPT0xCQVIgPSBbXG4gICdsYWJlbEhlYWRlcjogbGFiZWwtaGVhZGVyJyxcbiAgJ2xhYmVsSGVhZGVyQWxpZ246IGxhYmVsLWhlYWRlci1hbGlnbicsXG4gICdoZWFkZXJhY3Rpb25zOiBoZWFkZXItYWN0aW9ucycsXG4gICdzaG93SGVhZGVyQWN0aW9uc1RleHQ6IHNob3ctaGVhZGVyLWFjdGlvbnMtdGV4dCcsXG4gIC8vIHNob3ctaGVhZGVyLW5hdmlnYXRpb24gW3N0cmluZ11beWVzfG5vfHRydWV8ZmFsc2VdOiBJbmNsdWRlIG5hdmlnYXRpb25zIGJ1dHRvbnMgaW4gZm9ybS10b29sYmFyLiBEZWZhdWx0OiB0cnVlO1xuICAnc2hvd0hlYWRlck5hdmlnYXRpb246c2hvdy1oZWFkZXItbmF2aWdhdGlvbidcbl07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX09VVFBVVFNfT19GT1JNX1RPT0xCQVIgPSBbXG4gICdvbkNhbmNlbCdcbl07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ28tZm9ybS10b29sYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL28tZm9ybS10b29sYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vby1mb3JtLXRvb2xiYXIuY29tcG9uZW50LnNjc3MnXSxcbiAgaW5wdXRzOiBERUZBVUxUX0lOUFVUU19PX0ZPUk1fVE9PTEJBUixcbiAgb3V0cHV0czogREVGQVVMVF9PVVRQVVRTX09fRk9STV9UT09MQkFSLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5vLWZvcm0tdG9vbGJhcl0nOiAndHJ1ZSdcbiAgfSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBPRm9ybVRvb2xiYXJCYXNlLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBPRm9ybVRvb2xiYXJDb21wb25lbnQpIH1dLFxufSlcbmV4cG9ydCBjbGFzcyBPRm9ybVRvb2xiYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgLyogQmluZGluZ3MgKi9cbiAgcHVibGljIGxhYmVsSGVhZGVyOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIGhlYWRlcmFjdGlvbnM6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgbGFiZWxIZWFkZXJBbGlnbjogc3RyaW5nID0gJ2NlbnRlcic7XG5cbiAgQEJvb2xlYW5JbnB1dENvbnZlcnRlcigpXG4gIHB1YmxpYyBzaG93SGVhZGVyQWN0aW9uc1RleHQ6IGJvb2xlYW4gPSB0cnVlO1xuICBAQm9vbGVhbklucHV0Q29udmVydGVyKClcbiAgcHVibGljIHNob3dIZWFkZXJOYXZpZ2F0aW9uOiBib29sZWFuID0gdHJ1ZTtcblxuICBwdWJsaWMgZm9ybUFjdGlvbnM6IHN0cmluZ1tdO1xuICBwdWJsaWMgaXNEZXRhaWw6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIHB1YmxpYyBlZGl0TW9kZTogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgaW5zZXJ0TW9kZTogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgaW5pdGlhbE1vZGU6IGJvb2xlYW4gPSB0cnVlO1xuICBwdWJsaWMgcmVmcmVzaEJ0bkVuYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGluc2VydEJ0bkVuYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGRlbGV0ZUJ0bkVuYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBAVmlld0NoaWxkKCdicmVhZGNydW1iJywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmIH0pXG4gIHB1YmxpYyBicmVhZENvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZjtcblxuICBwdWJsaWMgb25DYW5jZWw6IEV2ZW50RW1pdHRlcjxudWxsPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwdWJsaWMgaXNTYXZlQnRuRW5hYmxlZDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgcHVibGljIGlzRWRpdEJ0bkVuYWJsZWQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIHB1YmxpYyBleGlzdHNDaGFuZ2VzVG9TYXZlOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIGdldCBjaGFuZ2VzVG9TYXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9jaGFuZ2VzVG9TYXZlO1xuICB9XG5cbiAgc2V0IGNoYW5nZXNUb1NhdmUodmFsOiBib29sZWFuKSB7XG4gICAgdGhpcy5fY2hhbmdlc1RvU2F2ZSA9IHZhbDtcbiAgICBjb25zdCBhdHRyID0gdGhpcy5fZm9ybS5pc0VkaXRhYmxlRGV0YWlsKCkgPyBQZXJtaXNzaW9uc1V0aWxzLkFDVElPTl9VUERBVEUgOiBQZXJtaXNzaW9uc1V0aWxzLkFDVElPTl9JTlNFUlQ7XG4gICAgY29uc3QgcGVybWlzc2lvbnM6IE9QZXJtaXNzaW9ucyA9ICh0aGlzLmFjdGlvbnNQZXJtaXNzaW9ucyB8fCBbXSkuZmluZChwID0+IHAuYXR0ciA9PT0gYXR0cik7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHBlcm1pc3Npb25zKSAmJiBwZXJtaXNzaW9ucy5lbmFibGVkID09PSBmYWxzZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2V4aXN0c0NoYW5nZXNUb1NhdmVTdWJqZWN0Lm5leHQodmFsKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfY2hhbmdlc1RvU2F2ZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGdldCBlZGl0QnRuRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZWRpdEJ0bkVuYWJsZWQ7XG4gIH1cbiAgc2V0IGVkaXRCdG5FbmFibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZWRpdEJ0bkVuYWJsZWQgPSB2YWx1ZTtcbiAgICB0aGlzLl9pc0VkaXRCdG5FbmFibGVkU3ViamVjdC5uZXh0KHRoaXMuX2VkaXRCdG5FbmFibGVkKTtcbiAgfVxuICBwcm90ZWN0ZWQgX2VkaXRCdG5FbmFibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgZ2V0IHNhdmVCdG5FbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zYXZlQnRuRW5hYmxlZDtcbiAgfVxuICBzZXQgc2F2ZUJ0bkVuYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zYXZlQnRuRW5hYmxlZCA9IHZhbHVlO1xuICAgIHRoaXMuX2lzU2F2ZUJ0bkVuYWJsZWRTdWJqZWN0Lm5leHQodGhpcy5fc2F2ZUJ0bkVuYWJsZWQpO1xuICB9XG4gIHByb3RlY3RlZCBfc2F2ZUJ0bkVuYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwcm90ZWN0ZWQgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2U7XG4gIHByb3RlY3RlZCBfbmF2aWdhdGlvblNlcnZpY2U6IE5hdmlnYXRpb25TZXJ2aWNlO1xuICBwcm90ZWN0ZWQgbXV0YXRpb25PYnNlcnZlcnM6IE11dGF0aW9uT2JzZXJ2ZXJbXSA9IFtdO1xuXG4gIHByb3RlY3RlZCBmb3JtQ2FjaGVTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHJvdGVjdGVkIGFjdGlvbnNQZXJtaXNzaW9uczogT1Blcm1pc3Npb25zW107XG4gIHByb3RlY3RlZCBzbmFja0JhclNlcnZpY2U6IFNuYWNrQmFyU2VydmljZTtcblxuICBwcm90ZWN0ZWQgX2luY2x1ZGVCcmVhZGNydW1iOiBib29sZWFuO1xuXG4gIHByb3RlY3RlZCBfaXNTYXZlQnRuRW5hYmxlZFN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJvdGVjdGVkIF9pc0VkaXRCdG5FbmFibGVkU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcm90ZWN0ZWQgX2V4aXN0c0NoYW5nZXNUb1NhdmVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfZm9ybTogT0Zvcm1CYXNlLFxuICAgIHB1YmxpYyBlbGVtZW50OiBFbGVtZW50UmVmLFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3JcbiAgKSB7XG4gICAgdGhpcy5pc1NhdmVCdG5FbmFibGVkID0gdGhpcy5faXNTYXZlQnRuRW5hYmxlZFN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gICAgdGhpcy5pc0VkaXRCdG5FbmFibGVkID0gdGhpcy5faXNFZGl0QnRuRW5hYmxlZFN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gICAgdGhpcy5leGlzdHNDaGFuZ2VzVG9TYXZlID0gdGhpcy5fZXhpc3RzQ2hhbmdlc1RvU2F2ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG5cbiAgICB0aGlzLl9mb3JtLnJlZ2lzdGVyVG9vbGJhcih0aGlzKTtcbiAgICB0aGlzLl9kaWFsb2dTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoRGlhbG9nU2VydmljZSk7XG4gICAgdGhpcy5fbmF2aWdhdGlvblNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChOYXZpZ2F0aW9uU2VydmljZSk7XG4gICAgdGhpcy5zbmFja0JhclNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChTbmFja0JhclNlcnZpY2UpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZm9ybUFjdGlvbnMgPSBVdGlsLnBhcnNlQXJyYXkodGhpcy5oZWFkZXJhY3Rpb25zKTtcbiAgICBpZiAodGhpcy5mb3JtQWN0aW9ucyAmJiB0aGlzLmZvcm1BY3Rpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMucmVmcmVzaEJ0bkVuYWJsZWQgPSB0aGlzLmZvcm1BY3Rpb25zLmluZGV4T2YoJ1InKSAhPT0gLTE7XG4gICAgICB0aGlzLmluc2VydEJ0bkVuYWJsZWQgPSB0aGlzLmZvcm1BY3Rpb25zLmluZGV4T2YoJ0knKSAhPT0gLTE7XG4gICAgICB0aGlzLmVkaXRCdG5FbmFibGVkID0gdGhpcy5mb3JtQWN0aW9ucy5pbmRleE9mKCdVJykgIT09IC0xO1xuICAgICAgdGhpcy5kZWxldGVCdG5FbmFibGVkID0gIXRoaXMuaW5zZXJ0TW9kZSAmJiB0aGlzLmZvcm1BY3Rpb25zLmluZGV4T2YoJ0QnKSAhPT0gLTE7XG4gICAgfVxuICAgIGlmICh0aGlzLl9uYXZpZ2F0aW9uU2VydmljZSkge1xuICAgICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgICB0aGlzLl9uYXZpZ2F0aW9uU2VydmljZS5vblRpdGxlQ2hhbmdlKHRpdGxlID0+IHtcbiAgICAgICAgc2VsZi5sYWJlbEhlYWRlciA9IHRpdGxlO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMuaW5jbHVkZUJyZWFkY3J1bWIgPSB0aGlzLl9mb3JtLmluY2x1ZGVCcmVhZGNydW1iICYmIHRoaXMuX2Zvcm0uZm9ybUNvbnRhaW5lci5icmVhZGNydW1iO1xuICAgIGlmICh0aGlzLmluY2x1ZGVCcmVhZGNydW1iKSB7XG4gICAgICB0aGlzLl9mb3JtLmZvcm1Db250YWluZXIuYnJlYWRjcnVtYiA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mb3JtQ2FjaGVTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMuZm9ybUNhY2hlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIGlmICh0aGlzLm11dGF0aW9uT2JzZXJ2ZXJzKSB7XG4gICAgICB0aGlzLm11dGF0aW9uT2JzZXJ2ZXJzLmZvckVhY2goKG06IE11dGF0aW9uT2JzZXJ2ZXIpID0+IHtcbiAgICAgICAgbS5kaXNjb25uZWN0KCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucGFyc2VQZXJtaXNzaW9ucygpO1xuICAgIGlmICh0aGlzLmluY2x1ZGVCcmVhZGNydW1iKSB7XG4gICAgICB0aGlzLl9mb3JtLmZvcm1Db250YWluZXIuY3JlYXRlQnJlYWRjcnVtYih0aGlzLmJyZWFkQ29udGFpbmVyKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2V0SW5pdGlhbE1vZGUoKTogdm9pZCB7XG4gICAgdGhpcy5tYW5hZ2VFZGl0YWJsZURldGFpbCgpO1xuICAgIHRoaXMuaW5pdGlhbE1vZGUgPSB0cnVlO1xuICAgIHRoaXMuaW5zZXJ0TW9kZSA9IGZhbHNlO1xuICAgIHRoaXMuZWRpdE1vZGUgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRJbnNlcnRNb2RlKCk6IHZvaWQge1xuICAgIHRoaXMuaW5pdGlhbE1vZGUgPSBmYWxzZTtcbiAgICB0aGlzLmluc2VydE1vZGUgPSB0cnVlO1xuICAgIHRoaXMuZWRpdE1vZGUgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRFZGl0TW9kZSgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRpYWxNb2RlID0gZmFsc2U7XG4gICAgdGhpcy5pbnNlcnRNb2RlID0gZmFsc2U7XG4gICAgdGhpcy5lZGl0TW9kZSA9IHRydWU7XG4gIH1cblxuICBwdWJsaWMgb25DbG9zZURldGFpbChvcHRpb25zPzogYW55KTogdm9pZCB7XG4gICAgdGhpcy5fZm9ybS5leGVjdXRlVG9vbGJhckFjdGlvbihDb2Rlcy5DTE9TRV9ERVRBSUxfQUNUSU9OLCBPYmplY3QuYXNzaWduKG9wdGlvbnMgfHwge30sIHtcbiAgICAgIGNoYW5nZVRvb2xiYXJNb2RlOiB0cnVlXG4gICAgfSkpO1xuICB9XG5cbiAgcHVibGljIG9uQmFjayhvcHRpb25zPzogYW55KTogdm9pZCB7XG4gICAgdGhpcy5fZm9ybS5leGVjdXRlVG9vbGJhckFjdGlvbihDb2Rlcy5CQUNLX0FDVElPTiwgb3B0aW9ucyk7XG4gIH1cblxuICBwdWJsaWMgb25SZWxvYWQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fUkVGUkVTSCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fZm9ybS5zaG93Q29uZmlybURpc2NhcmRDaGFuZ2VzKCkudGhlbih2YWwgPT4ge1xuICAgICAgaWYgKHZhbCkge1xuICAgICAgICB0aGlzLl9mb3JtLmV4ZWN1dGVUb29sYmFyQWN0aW9uKENvZGVzLlJFTE9BRF9BQ1RJT04sIHsgZXhpdFdpdGhvdXRDb25maXJtYXRpb246IHRydWUgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb25JbnNlcnQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fSU5TRVJUKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2Zvcm0uZXhlY3V0ZVRvb2xiYXJBY3Rpb24oQ29kZXMuR09fSU5TRVJUX0FDVElPTiwge1xuICAgICAgY2hhbmdlVG9vbGJhck1vZGU6IHRydWVcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvbkVkaXQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fVVBEQVRFKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2Zvcm0uZXhlY3V0ZVRvb2xiYXJBY3Rpb24oQ29kZXMuR09fRURJVF9BQ1RJT04sIHtcbiAgICAgIGNoYW5nZVRvb2xiYXJNb2RlOiB0cnVlXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb25EZWxldGUoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fREVMRVRFKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2hvd0NvbmZpcm1EZWxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBvblNhdmUoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fVVBEQVRFKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuaGFuZGxlQWNjZXB0RWRpdE9wZXJhdGlvbigpO1xuICB9XG5cbiAgcHVibGljIGNhbmNlbE9wZXJhdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9mb3JtLnNob3dDb25maXJtRGlzY2FyZENoYW5nZXMoKS50aGVuKHZhbCA9PiB7XG4gICAgICBpZiAodmFsKSB7XG4gICAgICAgIC8vIGVuc3VyaW5nIGVkaXRNb2RlIHRvIGZhbHNlIHRvIGF2b2lkIG8tZm9ybSBjYW5EZWFjdGl2YXRlIGZ1bmN0aW9uIHRyaWdnZXJpbmdcbiAgICAgICAgdGhpcy5lZGl0TW9kZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLm9uQ2FuY2VsLmVtaXQoKTtcbiAgICAgICAgY29uc3QgY2xvc2VPcHRpb25zID0geyBleGl0V2l0aG91dENvbmZpcm1hdGlvbjogdHJ1ZSB9O1xuICAgICAgICBpZiAodGhpcy5pc0RldGFpbCkge1xuICAgICAgICAgIHRoaXMub25DbG9zZURldGFpbChjbG9zZU9wdGlvbnMpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuaW5zZXJ0TW9kZSkge1xuICAgICAgICAgIHRoaXMub25CYWNrKGNsb3NlT3B0aW9ucyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5vblJlbG9hZCgpO1xuICAgICAgICAgIHRoaXMuX2Zvcm0uc2V0SW5pdGlhbE1vZGUoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGFjY2VwdE9wZXJhdGlvbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5lZGl0TW9kZSkge1xuICAgICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fVVBEQVRFKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLmhhbmRsZUFjY2VwdEVkaXRPcGVyYXRpb24oKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaW5zZXJ0TW9kZSkge1xuICAgICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fSU5TRVJUKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLmhhbmRsZUFjY2VwdEluc2VydE9wZXJhdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGVBY2NlcHRJbnNlcnRPcGVyYXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fZm9ybS5leGVjdXRlVG9vbGJhckFjdGlvbihDb2Rlcy5JTlNFUlRfQUNUSU9OKTtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGVBY2NlcHRFZGl0T3BlcmF0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuX2Zvcm0uZXhlY3V0ZVRvb2xiYXJBY3Rpb24oQ29kZXMuRURJVF9BQ1RJT04pO1xuICB9XG5cbiAgcHVibGljIHNob3dDb25maXJtRGVsZXRlKCk6IHZvaWQge1xuICAgIHRoaXMuX2RpYWxvZ1NlcnZpY2UuY29uZmlybShcbiAgICAgIHRoaXMuX2Zvcm0ubWVzc2FnZVNlcnZpY2UuZ2V0RGVsZXRlQ29uZmlybWF0aW9uRGlhbG9nVGl0bGUoKSxcbiAgICAgIHRoaXMuX2Zvcm0ubWVzc2FnZVNlcnZpY2UuZ2V0RGVsZXRlQ29uZmlybWF0aW9uTWVzc2FnZSgpKS50aGVuKHJlcyA9PiB7XG4gICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICB0aGlzLl9mb3JtLmV4ZWN1dGVUb29sYmFyQWN0aW9uKENvZGVzLkRFTEVURV9BQ1RJT04pLnN1YnNjcmliZShyZXNwID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2Zvcm0ub25EZWxldGUuZW1pdChyZXNwKTtcbiAgICAgICAgICAgIHRoaXMub25DbG9zZURldGFpbCh7IGV4aXRXaXRob3V0Q29uZmlybWF0aW9uOiB0cnVlIH0pO1xuICAgICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdPRm9ybVRvb2xiYXIuZGVsZXRlIGVycm9yJywgZXJyKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgKTtcbiAgfVxuXG4gIGdldCBzaG93TmF2aWdhdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaG93SGVhZGVyTmF2aWdhdGlvbiAmJiAhKHRoaXMuX2Zvcm0uZ2V0Rm9ybU1hbmFnZXIoKSAmJiB0aGlzLl9mb3JtLmdldEZvcm1NYW5hZ2VyKCkuaXNUYWJNb2RlKCkpO1xuICB9XG5cbiAgcHVibGljIGdldExhYmVsSGVhZGVyQWxpZ24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5sYWJlbEhlYWRlckFsaWduO1xuICB9XG5cbiAgZ2V0IHNob3dVbmRvQnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9mb3JtLnVuZG9CdXR0b24gJiYgKCF0aGlzLmluaXRpYWxNb2RlIHx8IHRoaXMuX2Zvcm0uaXNFZGl0YWJsZURldGFpbCgpKTtcbiAgfVxuXG4gIGdldCBpc0NoYW5nZXNTdGFja0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9mb3JtLmlzQ2FjaGVTdGFja0VtcHR5O1xuICB9XG5cbiAgcHVibGljIG9uVW5kb0xhc3RDaGFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5fZm9ybS5leGVjdXRlVG9vbGJhckFjdGlvbihDb2Rlcy5VTkRPX0xBU1RfQ0hBTkdFX0FDVElPTik7XG4gIH1cblxuICBnZXQgaXNSZWZyZXNoQnRuRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5yZWZyZXNoQnRuRW5hYmxlZDtcbiAgfVxuXG4gIGdldCBpc0luc2VydEJ0bkVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaW5zZXJ0QnRuRW5hYmxlZDtcbiAgfVxuXG4gIGdldCBpc0RlbGV0ZUJ0bkVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZGVsZXRlQnRuRW5hYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyBoYXNFbmFibGVkUGVybWlzc2lvbihwZXJtaXNzaW9uOiBPUGVybWlzc2lvbnMpOiBib29sZWFuIHtcbiAgICByZXR1cm4gcGVybWlzc2lvbiA/IHBlcm1pc3Npb24uZW5hYmxlZCA6IHRydWU7XG4gIH1cblxuICBnZXQgaW5jbHVkZUJyZWFkY3J1bWIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2luY2x1ZGVCcmVhZGNydW1iO1xuICB9XG5cbiAgc2V0IGluY2x1ZGVCcmVhZGNydW1iKGFyZzogYm9vbGVhbikge1xuICAgIHRoaXMuX2luY2x1ZGVCcmVhZGNydW1iID0gYXJnO1xuICB9XG5cbiAgcHJvdGVjdGVkIG1hbmFnZUVkaXRhYmxlRGV0YWlsKCk6IHZvaWQge1xuICAgIGNvbnN0IGlzRWRpdGFibGVEZXRhaWwgPSB0aGlzLl9mb3JtLmlzRWRpdGFibGVEZXRhaWwoKTtcblxuICAgIGNvbnN0IHVwZGF0ZVBlcm1pc3Npb25zOiBPUGVybWlzc2lvbnMgPSAodGhpcy5hY3Rpb25zUGVybWlzc2lvbnMgfHwgW10pLmZpbmQocCA9PiBwLmF0dHIgPT09IFBlcm1pc3Npb25zVXRpbHMuQUNUSU9OX1VQREFURSk7XG4gICAgaWYgKHRoaXMuaGFzRW5hYmxlZFBlcm1pc3Npb24odXBkYXRlUGVybWlzc2lvbnMpKSB7XG4gICAgICB0aGlzLnNhdmVCdG5FbmFibGVkID0gaXNFZGl0YWJsZURldGFpbDtcbiAgICB9XG5cbiAgICB0aGlzLnJlZnJlc2hCdG5FbmFibGVkID0gdGhpcy5yZWZyZXNoQnRuRW5hYmxlZCAmJiBpc0VkaXRhYmxlRGV0YWlsO1xuICAgIHRoaXMuaW5zZXJ0QnRuRW5hYmxlZCA9IHRoaXMuaW5zZXJ0QnRuRW5hYmxlZCAmJiBpc0VkaXRhYmxlRGV0YWlsO1xuICAgIHRoaXMuZWRpdEJ0bkVuYWJsZWQgPSB0aGlzLmVkaXRCdG5FbmFibGVkICYmICFpc0VkaXRhYmxlRGV0YWlsO1xuXG4gICAgdGhpcy5mb3JtQ2FjaGVTdWJzY3JpcHRpb24gPSB0aGlzLl9mb3JtLmdldEZvcm1DYWNoZSgpLm9uQ2FjaGVTdGF0ZUNoYW5nZXMuc3Vic2NyaWJlKCh2YWx1ZTogYW55KSA9PiB7XG4gICAgICBpZiAodGhpcy5fZm9ybS5pc0VkaXRhYmxlRGV0YWlsKCkpIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VzVG9TYXZlID0gdGhpcy5fZm9ybS5pc0luaXRpYWxTdGF0ZUNoYW5nZWQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZVBlcm1pc3Npb25zKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9mb3JtLmdldEF0dHJpYnV0ZSgpKSB7XG4gICAgICB0aGlzLmFjdGlvbnNQZXJtaXNzaW9ucyA9IHRoaXMuX2Zvcm0uZ2V0QWN0aW9uc1Blcm1pc3Npb25zKCk7XG5cbiAgICAgIGlmICghVXRpbC5pc0RlZmluZWQodGhpcy5hY3Rpb25zUGVybWlzc2lvbnMpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuICAgICAgdGhpcy5hY3Rpb25zUGVybWlzc2lvbnMuZm9yRWFjaCgocGVybWlzc2lvbjogT1Blcm1pc3Npb25zKSA9PiB7XG4gICAgICAgIC8vIG90aGVycyBhY3Rpb25zXG4gICAgICAgIHNlbGYucGVybWlzc2lvbk1hbmFnZW1lbnQocGVybWlzc2lvbik7XG5cbiAgICAgICAgaWYgKFBlcm1pc3Npb25zVXRpbHMuU1RBTkRBUkRfQUNUSU9OUy5pbmRleE9mKHBlcm1pc3Npb24uYXR0cikgPiAtMSkge1xuICAgICAgICAgIC8vIGFjdGlvbnMgUjtJO1U7RFxuICAgICAgICAgIGlmIChwZXJtaXNzaW9uLmF0dHIgPT09IFBlcm1pc3Npb25zVXRpbHMuQUNUSU9OX1VQREFURSkge1xuICAgICAgICAgICAgc2VsZi5wZXJtaXNzaW9uTWFuYWdlbWVudChwZXJtaXNzaW9uLCAnZWRpdCcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwZXJtaXNzaW9uTWFuYWdlbWVudChwZXJtaXNzaW9uOiBPUGVybWlzc2lvbnMsIGF0dHI/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBhdHRyQWN0aW9uID0gVXRpbC5pc0RlZmluZWQoYXR0cikgPyBhdHRyIDogcGVybWlzc2lvbi5hdHRyO1xuICAgIGNvbnN0IGVsZW1lbnRCeUFjdGlvbiA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ1thdHRyPVwiJyArIGF0dHJBY3Rpb24gKyAnXCJdJyk7XG5cbiAgICBpZiAoVXRpbC5pc0RlZmluZWQoZWxlbWVudEJ5QWN0aW9uKSkge1xuICAgICAgaWYgKCFwZXJtaXNzaW9uLnZpc2libGUpIHtcbiAgICAgICAgZWxlbWVudEJ5QWN0aW9uLnJlbW92ZSgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKCFwZXJtaXNzaW9uLmVuYWJsZWQpIHtcbiAgICAgICAgICBlbGVtZW50QnlBY3Rpb24uZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICAgIGNvbnN0IG11dGF0aW9uT2JzZXJ2ZXIgPSBQZXJtaXNzaW9uc1V0aWxzLnJlZ2lzdGVyRGlzYWJsZWRDaGFuZ2VzSW5Eb20oZWxlbWVudEJ5QWN0aW9uKTtcbiAgICAgICAgICB0aGlzLm11dGF0aW9uT2JzZXJ2ZXJzLnB1c2gobXV0YXRpb25PYnNlcnZlcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNoZWNrRW5hYmxlZFBlcm1pc3Npb24oYXR0cik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHBlcm1pc3Npb25zOiBPUGVybWlzc2lvbnMgPSAodGhpcy5hY3Rpb25zUGVybWlzc2lvbnMgfHwgW10pLmZpbmQocCA9PiBwLmF0dHIgPT09IGF0dHIpO1xuICAgIGNvbnN0IGVuYWJsZWRQZXJtaXNpb24gPSBQZXJtaXNzaW9uc1V0aWxzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24ocGVybWlzc2lvbnMpO1xuICAgIGlmICghZW5hYmxlZFBlcm1pc2lvbikge1xuICAgICAgdGhpcy5zbmFja0JhclNlcnZpY2Uub3Blbih0aGlzLl9mb3JtLm1lc3NhZ2VTZXJ2aWNlLmdldEFjdGlvblBlcm1pc3Npb25Ob3RFbmFibGVkTWVzc2FnZSgpKTtcbiAgICB9XG4gICAgcmV0dXJuIGVuYWJsZWRQZXJtaXNpb247XG4gIH1cblxufVxuIiwiPG1hdC10b29sYmFyIGNsYXNzPVwiby1mb3JtLXRvb2xiYXItaGVhZGVyXCIgW2NsYXNzLmJyZWFkY3J1bWJdPVwiaW5jbHVkZUJyZWFkY3J1bWJcIiBmeExheW91dD1cImNvbHVtblwiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCI+XG5cbiAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiaW5jbHVkZUJyZWFkY3J1bWJcIiAjYnJlYWRjcnVtYj48L25nLXRlbXBsYXRlPlxuXG4gIDxkaXYgY2xhc3M9XCJtYXQtdG9vbGJhci10b29sc1wiIGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWJldHdlZW4gY2VudGVyXCI+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJvbkJhY2soKVwiICpuZ0lmPVwiaXNEZXRhaWxcIiBjbGFzcz1cIm8tZm9ybS10b29sYmFyLWJ1dHRvbiBvLWZvcm0tdG9vbGJhci1iYWNrXCI+XG4gICAgICA8bWF0LWljb24gc3ZnSWNvbj1cIm9udGltaXplOmFycm93X2JhY2tcIj48L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPG8tZm9ybS1uYXZpZ2F0aW9uICNmb3JtTmF2aWdhdGlvbiAqbmdJZj1cInNob3dOYXZpZ2F0aW9uXCIgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwic3BhY2UtYmV0d2VlbiBjZW50ZXJcIj5cbiAgICA8L28tZm9ybS1uYXZpZ2F0aW9uPlxuXG4gICAgPHNwYW4gKm5nSWY9XCJnZXRMYWJlbEhlYWRlckFsaWduKCkgPT09ICdjZW50ZXInIHx8IGdldExhYmVsSGVhZGVyQWxpZ24oKSA9PT0gJ2VuZCdcIiBjbGFzcz1cImZpbGwtcmVtYWluaW5nXCI+PC9zcGFuPlxuICAgIDxkaXYgKm5nSWY9XCJsYWJlbEhlYWRlciE9JydcIiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCI+XG4gICAgICA8c3Bhbj57eyBsYWJlbEhlYWRlciB8IG9UcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPHNwYW4gKm5nSWY9XCJnZXRMYWJlbEhlYWRlckFsaWduKCkgPT09ICdzdGFydCcgfHwgZ2V0TGFiZWxIZWFkZXJBbGlnbigpID09PSAnY2VudGVyJ1wiIGNsYXNzPVwiZmlsbC1yZW1haW5pbmdcIj48L3NwYW4+XG5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbby1jdXN0b20tZm9ybS10b29sYmFyLWJ1dHRvbnMtd3JhcHBlcl1cIj48L25nLWNvbnRlbnQ+XG5cbiAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwic2hvd0hlYWRlckFjdGlvbnNUZXh0XCIgW25nSWZFbHNlXT1cInVuZG9CdG5XaXRob3V0VGV4dFwiPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLXVuZG9cIiBtYXQtc3Ryb2tlZC1idXR0b24gKGNsaWNrKT1cIm9uVW5kb0xhc3RDaGFuZ2UoKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpc0NoYW5nZXNTdGFja0VtcHR5XCIgKm5nSWY9XCJzaG93VW5kb0J1dHRvblwiPlxuICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cIm9udGltaXplOnVuZG9cIj48L21hdC1pY29uPlxuICAgICAgICA8c3Bhbj57eyAnVU5ETycgfCBvVHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI3VuZG9CdG5XaXRob3V0VGV4dD5cbiAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiby1mb3JtLXRvb2xiYXItYnV0dG9uIG8tZm9ybS10b29sYmFyLWJ1dHRvbi11bmRvXCIgbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJvblVuZG9MYXN0Q2hhbmdlKClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiaXNDaGFuZ2VzU3RhY2tFbXB0eVwiICpuZ0lmPVwic2hvd1VuZG9CdXR0b25cIj5cbiAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTp1bmRvXCI+PC9tYXQtaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaW5pdGlhbE1vZGVcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJzaG93SGVhZGVyQWN0aW9uc1RleHRcIiBbbmdJZkVsc2VdPVwiYnV0dG9uc1dpdGhvdVRleHRcIj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLXJlZnJlc2hcIiBtYXQtc3Ryb2tlZC1idXR0b24gKGNsaWNrKT1cIm9uUmVsb2FkKClcIlxuICAgICAgICAgICpuZ0lmPVwiaXNSZWZyZXNoQnRuRW5hYmxlZFwiIGF0dHI9XCJyZWZyZXNoXCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTphdXRvcmVuZXdcIj48L21hdC1pY29uPlxuICAgICAgICAgIDxzcGFuPnt7ICdSRUZSRVNIJyB8IG9UcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cIm8tZm9ybS10b29sYmFyLWJ1dHRvbiBvLWZvcm0tdG9vbGJhci1idXR0b24taW5zZXJ0XCIgbWF0LXN0cm9rZWQtYnV0dG9uIChjbGljayk9XCJvbkluc2VydCgpXCJcbiAgICAgICAgICAqbmdJZj1cImlzSW5zZXJ0QnRuRW5hYmxlZFwiIGF0dHI9XCJpbnNlcnRcIj5cbiAgICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cIm9udGltaXplOmFkZFwiPjwvbWF0LWljb24+XG4gICAgICAgICAgPHNwYW4+e3sgJ0FERCcgfCBvVHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLWVkaXRcIiBtYXQtc3Ryb2tlZC1idXR0b24gKGNsaWNrKT1cIm9uRWRpdCgpXCJcbiAgICAgICAgICAqbmdJZj1cImlzRWRpdEJ0bkVuYWJsZWQgfCBhc3luY1wiIGF0dHI9XCJlZGl0XCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTplZGl0XCI+PC9tYXQtaWNvbj5cbiAgICAgICAgICA8c3Bhbj57eyAnRURJVCcgfCBvVHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLWRlbGV0ZVwiIG1hdC1zdHJva2VkLWJ1dHRvbiAoY2xpY2spPVwib25EZWxldGUoKVwiXG4gICAgICAgICAgKm5nSWY9XCJpc0RlbGV0ZUJ0bkVuYWJsZWRcIiBhdHRyPVwiZGVsZXRlXCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTpkZWxldGVcIj48L21hdC1pY29uPlxuICAgICAgICAgIDxzcGFuPnt7ICdERUxFVEUnIHwgb1RyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiby1mb3JtLXRvb2xiYXItYnV0dG9uIG8tZm9ybS10b29sYmFyLWJ1dHRvbi1zYXZlXCIgbWF0LXN0cm9rZWQtYnV0dG9uIChjbGljayk9XCJvblNhdmUoKVwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cIiEoZXhpc3RzQ2hhbmdlc1RvU2F2ZSB8IGFzeW5jKVwiICpuZ0lmPVwiaXNTYXZlQnRuRW5hYmxlZCB8IGFzeW5jXCIgYXR0cj1cInVwZGF0ZVwiPlxuICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwib250aW1pemU6c2F2ZVwiPjwvbWF0LWljb24+XG4gICAgICAgICAgPHNwYW4+e3sgJ1NBVkUnIHwgb1RyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLXRlbXBsYXRlICNidXR0b25zV2l0aG91VGV4dD5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLXJlZnJlc2hcIiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIm9uUmVsb2FkKClcIlxuICAgICAgICAgICpuZ0lmPVwiaXNSZWZyZXNoQnRuRW5hYmxlZFwiIGF0dHI9XCJyZWZyZXNoXCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTphdXRvcmVuZXdcIj48L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLWluc2VydFwiIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwib25JbnNlcnQoKVwiXG4gICAgICAgICAgKm5nSWY9XCJpc0luc2VydEJ0bkVuYWJsZWRcIiBhdHRyPVwiaW5zZXJ0XCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTphZGRcIj48L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24tby1mb3JtLXRvb2xiYXItYnV0dG9uLWVkaXRcIiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIm9uRWRpdCgpXCJcbiAgICAgICAgICAqbmdJZj1cImlzRWRpdEJ0bkVuYWJsZWQgfCBhc3luY1wiIGF0dHI9XCJlZGl0XCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTplZGl0XCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiby1mb3JtLXRvb2xiYXItYnV0dG9uIG8tZm9ybS10b29sYmFyLWJ1dHRvbi1kZWxldGVcIiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIm9uRGVsZXRlKClcIlxuICAgICAgICAgICpuZ0lmPVwiaXNEZWxldGVCdG5FbmFibGVkXCIgYXR0cj1cImRlbGV0ZVwiPlxuICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwib250aW1pemU6ZGVsZXRlXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiby1mb3JtLXRvb2xiYXItYnV0dG9uIG8tZm9ybS10b29sYmFyLWJ1dHRvbi1zYXZlXCIgbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJvblNhdmUoKVwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cIiFleGlzdHNDaGFuZ2VzVG9TYXZlXCIgKm5nSWY9XCJpc1NhdmVCdG5FbmFibGVkIHwgYXN5bmNcIiBhdHRyPVwidXBkYXRlXCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTpzYXZlXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVkaXRNb2RlIHx8IGluc2VydE1vZGVcIj5cbiAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiby1mb3JtLXRvb2xiYXItYnV0dG9uIG8tZm9ybS10b29sYmFyLWJ1dHRvbi1jYW5jZWxcIiBtYXQtc3Ryb2tlZC1idXR0b24gKGNsaWNrKT1cImNhbmNlbE9wZXJhdGlvbigpXCI+XG4gICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwib250aW1pemU6Y2xlYXJcIj48L21hdC1pY29uPlxuICAgICAgICA8c3BhbiAqbmdJZj1cInNob3dIZWFkZXJBY3Rpb25zVGV4dFwiPnt7ICdDQU5DRUwnIHwgb1RyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLWluc2VydFwiIG1hdC1zdHJva2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiYWNjZXB0T3BlcmF0aW9uKClcIj5cbiAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTpkb25lXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJzaG93SGVhZGVyQWN0aW9uc1RleHRcIj57eyAnSU5TRVJUJyB8IG9UcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG5cbjwvbWF0LXRvb2xiYXI+XG4iXX0=
348
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1mb3JtLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS90b29sYmFyL28tZm9ybS10b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vdG9vbGJhci9vLWZvcm0tdG9vbGJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQXFCLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUssT0FBTyxFQUFFLGVBQWUsRUFBNEIsTUFBTSxNQUFNLENBQUM7QUFFakUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUVyRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7Ozs7OztBQUUvRCxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRztJQUMzQywyQkFBMkI7SUFDM0Isc0NBQXNDO0lBQ3RDLCtCQUErQjtJQUMvQixpREFBaUQ7SUFFakQsNkNBQTZDO0NBQzlDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSw4QkFBOEIsR0FBRztJQUM1QyxVQUFVO0NBQ1gsQ0FBQztBQWNGLE1BQU0sT0FBTyxxQkFBcUI7SUErQmhDLElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxhQUFhLENBQUMsR0FBWTtRQUM1QixJQUFJLENBQUMsY0FBYyxHQUFHLEdBQUcsQ0FBQztRQUMxQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO1FBQzdHLE1BQU0sV0FBVyxHQUFpQixDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDO1FBQzdGLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxXQUFXLENBQUMsT0FBTyxLQUFLLEtBQUssRUFBRTtZQUNoRSxPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFJRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7SUFDRCxJQUFJLGNBQWMsQ0FBQyxLQUFjO1FBQy9CLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO1FBQzdCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFHRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7SUFDRCxJQUFJLGNBQWMsQ0FBQyxLQUFjO1FBQy9CLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO1FBQzdCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFpQkQsWUFDVSxLQUFnQixFQUNqQixPQUFtQixFQUNoQixRQUFrQjtRQUZwQixVQUFLLEdBQUwsS0FBSyxDQUFXO1FBQ2pCLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDaEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQWhGdkIsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFDekIsa0JBQWEsR0FBVyxFQUFFLENBQUM7UUFDM0IscUJBQWdCLEdBQVcsUUFBUSxDQUFDO1FBR3BDLDBCQUFxQixHQUFZLElBQUksQ0FBQztRQUV0Qyx5QkFBb0IsR0FBWSxJQUFJLENBQUM7UUFHckMsYUFBUSxHQUFZLElBQUksQ0FBQztRQUV6QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFDNUIsZ0JBQVcsR0FBWSxJQUFJLENBQUM7UUFDNUIsc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBQ25DLHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUNsQyxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFLbEMsYUFBUSxHQUF1QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBcUIvQyxtQkFBYyxHQUFZLEtBQUssQ0FBQztRQVNoQyxvQkFBZSxHQUFZLEtBQUssQ0FBQztRQVNqQyxvQkFBZSxHQUFZLEtBQUssQ0FBQztRQUlqQyxzQkFBaUIsR0FBdUIsRUFBRSxDQUFDO1FBUTNDLDZCQUF3QixHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQy9ELDZCQUF3QixHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQy9ELGdDQUEyQixHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBTzFFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDckUsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNyRSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBRTNFLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDL0QsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdkQsSUFBSSxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNuRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDOUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQzdELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDM0QsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUNsRjtRQUNELElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQzNCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQztZQUNsQixJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUM1QyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztZQUMzQixDQUFDLENBQUMsQ0FBQztTQUNKO1FBQ0QsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDO1FBQzdGLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7U0FDN0M7SUFDSCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtZQUM5QixJQUFJLENBQUMscUJBQXFCLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDMUM7UUFDRCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBbUIsRUFBRSxFQUFFO2dCQUNyRCxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDakIsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFTSxlQUFlO1FBQ3BCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUNoRTtJQUNILENBQUM7SUFFTSxjQUFjO1FBQ25CLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7SUFFTSxhQUFhO1FBQ2xCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxhQUFhLENBQUMsT0FBYTtRQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxFQUFFLEVBQUU7WUFDdEYsaUJBQWlCLEVBQUUsSUFBSTtTQUN4QixDQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBYTtRQUN6QixJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQ2pFLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxLQUFLLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDaEQsSUFBSSxHQUFHLEVBQUU7Z0JBQ1AsSUFBSSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLEVBQUUsdUJBQXVCLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQzthQUN6RjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQ2hFLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFO1lBQ3RELGlCQUFpQixFQUFFLElBQUk7U0FDeEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQ2hFLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRTtZQUNwRCxpQkFBaUIsRUFBRSxJQUFJO1NBQ3hCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUNoRSxPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU0sTUFBTTtRQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDaEUsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVNLGVBQWU7UUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNoRCxJQUFJLEdBQUcsRUFBRTtnQkFFUCxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztnQkFDdEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDckIsTUFBTSxZQUFZLEdBQUcsRUFBRSx1QkFBdUIsRUFBRSxJQUFJLEVBQUUsQ0FBQztnQkFDdkQsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO29CQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxDQUFDO2lCQUNsQztxQkFBTSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7b0JBQzFCLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7aUJBQzNCO3FCQUFNO29CQUNMLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztpQkFDN0I7YUFDRjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLGVBQWU7UUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLEVBQUU7Z0JBQ2hFLE9BQU87YUFDUjtZQUNELElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1NBQ2xDO2FBQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLEVBQUU7Z0JBQ2hFLE9BQU87YUFDUjtZQUNELElBQUksQ0FBQywyQkFBMkIsRUFBRSxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztJQUVNLDJCQUEyQjtRQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU0seUJBQXlCO1FBQzlCLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFTSxpQkFBaUI7UUFDdEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQ3pCLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLGdDQUFnQyxFQUFFLEVBQzVELElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLDRCQUE0QixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbkUsSUFBSSxHQUFHLEVBQUU7Z0JBQ1AsSUFBSSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUNwRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQy9CLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSx1QkFBdUIsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2dCQUN4RCxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUU7b0JBQ1AsT0FBTyxDQUFDLEtBQUssQ0FBQywyQkFBMkIsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDbEQsQ0FBQyxDQUFDLENBQUM7YUFDSjtRQUNILENBQUMsQ0FDQSxDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDaEgsQ0FBQztJQUVNLG1CQUFtQjtRQUN4QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztJQUN0QyxDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNwQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQztJQUVNLG9CQUFvQixDQUFDLFVBQXdCO1FBQ2xELE9BQU8sVUFBVSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFJLGlCQUFpQixDQUFDLEdBQVk7UUFDaEMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEdBQUcsQ0FBQztJQUNoQyxDQUFDO0lBRVMsb0JBQW9CO1FBQzVCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBRXZELE1BQU0saUJBQWlCLEdBQWlCLENBQUMsSUFBSSxDQUFDLGtCQUFrQixJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDN0gsSUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUMsaUJBQWlCLENBQUMsRUFBRTtZQUNoRCxJQUFJLENBQUMsY0FBYyxHQUFHLGdCQUFnQixDQUFDO1NBQ3hDO1FBRUQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxnQkFBZ0IsQ0FBQztRQUNwRSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixJQUFJLGdCQUFnQixDQUFDO1FBQ2xFLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBRS9ELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQ2xHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFO2dCQUNqQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUUsQ0FBQzthQUN6RDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVTLGdCQUFnQjtRQUN4QixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUU3RCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRTtnQkFDNUMsT0FBTzthQUNSO1lBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUF3QixFQUFFLEVBQUU7Z0JBRTNELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFFdEMsSUFBSSxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFO29CQUVuRSxJQUFJLFVBQVUsQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLENBQUMsYUFBYSxFQUFFO3dCQUN0RCxJQUFJLENBQUMsb0JBQW9CLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO3FCQUMvQztpQkFDRjtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRU8sb0JBQW9CLENBQUMsVUFBd0IsRUFBRSxJQUFhO1FBQ2xFLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztRQUNqRSxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsU0FBUyxHQUFHLFVBQVUsR0FBRyxJQUFJLENBQUMsQ0FBQztRQUVoRyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLEVBQUU7WUFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUU7Z0JBQ3ZCLGVBQWUsQ0FBQyxNQUFNLEVBQUUsQ0FBQzthQUMxQjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRTtvQkFDdkIsZUFBZSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7b0JBQ2hDLE1BQU0sZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUMsNEJBQTRCLENBQUMsZUFBZSxDQUFDLENBQUM7b0JBQ3hGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztpQkFDL0M7YUFDRjtTQUNGO0lBQ0gsQ0FBQztJQUVPLHNCQUFzQixDQUFDLElBQUk7UUFDakMsTUFBTSxXQUFXLEdBQWlCLENBQUMsSUFBSSxDQUFDLGtCQUFrQixJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUM7UUFDN0YsTUFBTSxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQyxzQkFBc0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM5RSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDckIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsb0NBQW9DLEVBQUUsQ0FBQyxDQUFDO1NBQzdGO1FBQ0QsT0FBTyxnQkFBZ0IsQ0FBQztJQUMxQixDQUFDOzttSEF2WFUscUJBQXFCO3VHQUFyQixxQkFBcUIsMGNBRnJCLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLENBQUMsbUhBd0IvRCxnQkFBZ0IsNkJDN0RuRCwyekxBbUdBO0FEckRFO0lBQUMscUJBQXFCLEVBQUU7O29FQUNxQjtBQUM3QztJQUFDLHFCQUFxQixFQUFFOzttRUFDb0I7NEZBVmpDLHFCQUFxQjtrQkFaakMsU0FBUzsrQkFDRSxnQkFBZ0IsVUFHbEIsNkJBQTZCLFdBQzVCLDhCQUE4QixpQkFDeEIsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSix3QkFBd0IsRUFBRSxNQUFNO3FCQUNqQyxhQUNVLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsc0JBQXNCLENBQUMsRUFBRSxDQUFDO2dKQVV6RixxQkFBcUIsTUFFckIsb0JBQW9CLE1BYXBCLGNBQWM7c0JBRHBCLFNBQVM7dUJBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEluamVjdG9yLCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmLCBWaWV3RW5jYXBzdWxhdGlvbiwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQm9vbGVhbklucHV0Q29udmVydGVyIH0gZnJvbSAnLi4vLi4vLi4vZGVjb3JhdG9ycy9pbnB1dC1jb252ZXJ0ZXInO1xuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2RpYWxvZy5zZXJ2aWNlJztcbmltcG9ydCB7IE5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbmF2aWdhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFNuYWNrQmFyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3NuYWNrYmFyLnNlcnZpY2UnO1xuaW1wb3J0IHsgT1Blcm1pc3Npb25zIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvby1wZXJtaXNzaW9ucy50eXBlJztcbmltcG9ydCB7IENvZGVzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbC9jb2Rlcyc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uc1V0aWxzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbC9wZXJtaXNzaW9ucyc7XG5pbXBvcnQgeyBVdGlsIH0gZnJvbSAnLi4vLi4vLi4vdXRpbC91dGlsJztcbmltcG9ydCB7IE9Gb3JtQmFzZSB9IGZyb20gJy4uL28tZm9ybS1iYXNlLmNsYXNzJztcbmltcG9ydCB7IE9Gb3JtVG9vbGJhckJhc2UgfSBmcm9tICcuL28tZm9ybS10b29sYmFyLWJhc2UuY2xhc3MnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9JTlBVVFNfT19GT1JNX1RPT0xCQVIgPSBbXG4gICdsYWJlbEhlYWRlcjogbGFiZWwtaGVhZGVyJyxcbiAgJ2xhYmVsSGVhZGVyQWxpZ246IGxhYmVsLWhlYWRlci1hbGlnbicsXG4gICdoZWFkZXJhY3Rpb25zOiBoZWFkZXItYWN0aW9ucycsXG4gICdzaG93SGVhZGVyQWN0aW9uc1RleHQ6IHNob3ctaGVhZGVyLWFjdGlvbnMtdGV4dCcsXG4gIC8vIHNob3ctaGVhZGVyLW5hdmlnYXRpb24gW3N0cmluZ11beWVzfG5vfHRydWV8ZmFsc2VdOiBJbmNsdWRlIG5hdmlnYXRpb25zIGJ1dHRvbnMgaW4gZm9ybS10b29sYmFyLiBEZWZhdWx0OiB0cnVlO1xuICAnc2hvd0hlYWRlck5hdmlnYXRpb246c2hvdy1oZWFkZXItbmF2aWdhdGlvbidcbl07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX09VVFBVVFNfT19GT1JNX1RPT0xCQVIgPSBbXG4gICdvbkNhbmNlbCdcbl07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ28tZm9ybS10b29sYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL28tZm9ybS10b29sYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vby1mb3JtLXRvb2xiYXIuY29tcG9uZW50LnNjc3MnXSxcbiAgaW5wdXRzOiBERUZBVUxUX0lOUFVUU19PX0ZPUk1fVE9PTEJBUixcbiAgb3V0cHV0czogREVGQVVMVF9PVVRQVVRTX09fRk9STV9UT09MQkFSLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5vLWZvcm0tdG9vbGJhcl0nOiAndHJ1ZSdcbiAgfSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBPRm9ybVRvb2xiYXJCYXNlLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBPRm9ybVRvb2xiYXJDb21wb25lbnQpIH1dLFxufSlcbmV4cG9ydCBjbGFzcyBPRm9ybVRvb2xiYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgLyogQmluZGluZ3MgKi9cbiAgcHVibGljIGxhYmVsSGVhZGVyOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIGhlYWRlcmFjdGlvbnM6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgbGFiZWxIZWFkZXJBbGlnbjogc3RyaW5nID0gJ2NlbnRlcic7XG5cbiAgQEJvb2xlYW5JbnB1dENvbnZlcnRlcigpXG4gIHB1YmxpYyBzaG93SGVhZGVyQWN0aW9uc1RleHQ6IGJvb2xlYW4gPSB0cnVlO1xuICBAQm9vbGVhbklucHV0Q29udmVydGVyKClcbiAgcHVibGljIHNob3dIZWFkZXJOYXZpZ2F0aW9uOiBib29sZWFuID0gdHJ1ZTtcblxuICBwdWJsaWMgZm9ybUFjdGlvbnM6IHN0cmluZ1tdO1xuICBwdWJsaWMgaXNEZXRhaWw6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIHB1YmxpYyBlZGl0TW9kZTogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgaW5zZXJ0TW9kZTogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgaW5pdGlhbE1vZGU6IGJvb2xlYW4gPSB0cnVlO1xuICBwdWJsaWMgcmVmcmVzaEJ0bkVuYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGluc2VydEJ0bkVuYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGRlbGV0ZUJ0bkVuYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBAVmlld0NoaWxkKCdicmVhZGNydW1iJywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmIH0pXG4gIHB1YmxpYyBicmVhZENvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZjtcblxuICBwdWJsaWMgb25DYW5jZWw6IEV2ZW50RW1pdHRlcjxudWxsPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwdWJsaWMgaXNTYXZlQnRuRW5hYmxlZDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgcHVibGljIGlzRWRpdEJ0bkVuYWJsZWQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIHB1YmxpYyBleGlzdHNDaGFuZ2VzVG9TYXZlOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIGdldCBjaGFuZ2VzVG9TYXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9jaGFuZ2VzVG9TYXZlO1xuICB9XG5cbiAgc2V0IGNoYW5nZXNUb1NhdmUodmFsOiBib29sZWFuKSB7XG4gICAgdGhpcy5fY2hhbmdlc1RvU2F2ZSA9IHZhbDtcbiAgICBjb25zdCBhdHRyID0gdGhpcy5fZm9ybS5pc0VkaXRhYmxlRGV0YWlsKCkgPyBQZXJtaXNzaW9uc1V0aWxzLkFDVElPTl9VUERBVEUgOiBQZXJtaXNzaW9uc1V0aWxzLkFDVElPTl9JTlNFUlQ7XG4gICAgY29uc3QgcGVybWlzc2lvbnM6IE9QZXJtaXNzaW9ucyA9ICh0aGlzLmFjdGlvbnNQZXJtaXNzaW9ucyB8fCBbXSkuZmluZChwID0+IHAuYXR0ciA9PT0gYXR0cik7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHBlcm1pc3Npb25zKSAmJiBwZXJtaXNzaW9ucy5lbmFibGVkID09PSBmYWxzZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2V4aXN0c0NoYW5nZXNUb1NhdmVTdWJqZWN0Lm5leHQodmFsKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfY2hhbmdlc1RvU2F2ZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGdldCBlZGl0QnRuRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZWRpdEJ0bkVuYWJsZWQ7XG4gIH1cbiAgc2V0IGVkaXRCdG5FbmFibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZWRpdEJ0bkVuYWJsZWQgPSB2YWx1ZTtcbiAgICB0aGlzLl9pc0VkaXRCdG5FbmFibGVkU3ViamVjdC5uZXh0KHRoaXMuX2VkaXRCdG5FbmFibGVkKTtcbiAgfVxuICBwcm90ZWN0ZWQgX2VkaXRCdG5FbmFibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgZ2V0IHNhdmVCdG5FbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zYXZlQnRuRW5hYmxlZDtcbiAgfVxuICBzZXQgc2F2ZUJ0bkVuYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zYXZlQnRuRW5hYmxlZCA9IHZhbHVlO1xuICAgIHRoaXMuX2lzU2F2ZUJ0bkVuYWJsZWRTdWJqZWN0Lm5leHQodGhpcy5fc2F2ZUJ0bkVuYWJsZWQpO1xuICB9XG4gIHByb3RlY3RlZCBfc2F2ZUJ0bkVuYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwcm90ZWN0ZWQgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2U7XG4gIHByb3RlY3RlZCBfbmF2aWdhdGlvblNlcnZpY2U6IE5hdmlnYXRpb25TZXJ2aWNlO1xuICBwcm90ZWN0ZWQgbXV0YXRpb25PYnNlcnZlcnM6IE11dGF0aW9uT2JzZXJ2ZXJbXSA9IFtdO1xuXG4gIHByb3RlY3RlZCBmb3JtQ2FjaGVTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHJvdGVjdGVkIGFjdGlvbnNQZXJtaXNzaW9uczogT1Blcm1pc3Npb25zW107XG4gIHByb3RlY3RlZCBzbmFja0JhclNlcnZpY2U6IFNuYWNrQmFyU2VydmljZTtcblxuICBwcm90ZWN0ZWQgX2luY2x1ZGVCcmVhZGNydW1iOiBib29sZWFuO1xuXG4gIHByb3RlY3RlZCBfaXNTYXZlQnRuRW5hYmxlZFN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJvdGVjdGVkIF9pc0VkaXRCdG5FbmFibGVkU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcm90ZWN0ZWQgX2V4aXN0c0NoYW5nZXNUb1NhdmVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfZm9ybTogT0Zvcm1CYXNlLFxuICAgIHB1YmxpYyBlbGVtZW50OiBFbGVtZW50UmVmLFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3JcbiAgKSB7XG4gICAgdGhpcy5pc1NhdmVCdG5FbmFibGVkID0gdGhpcy5faXNTYXZlQnRuRW5hYmxlZFN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gICAgdGhpcy5pc0VkaXRCdG5FbmFibGVkID0gdGhpcy5faXNFZGl0QnRuRW5hYmxlZFN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gICAgdGhpcy5leGlzdHNDaGFuZ2VzVG9TYXZlID0gdGhpcy5fZXhpc3RzQ2hhbmdlc1RvU2F2ZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG5cbiAgICB0aGlzLl9mb3JtLnJlZ2lzdGVyVG9vbGJhcih0aGlzKTtcbiAgICB0aGlzLl9kaWFsb2dTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoRGlhbG9nU2VydmljZSk7XG4gICAgdGhpcy5fbmF2aWdhdGlvblNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChOYXZpZ2F0aW9uU2VydmljZSk7XG4gICAgdGhpcy5zbmFja0JhclNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChTbmFja0JhclNlcnZpY2UpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZm9ybUFjdGlvbnMgPSBVdGlsLnBhcnNlQXJyYXkodGhpcy5oZWFkZXJhY3Rpb25zKTtcbiAgICBpZiAodGhpcy5mb3JtQWN0aW9ucyAmJiB0aGlzLmZvcm1BY3Rpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMucmVmcmVzaEJ0bkVuYWJsZWQgPSB0aGlzLmZvcm1BY3Rpb25zLmluZGV4T2YoJ1InKSAhPT0gLTE7XG4gICAgICB0aGlzLmluc2VydEJ0bkVuYWJsZWQgPSB0aGlzLmZvcm1BY3Rpb25zLmluZGV4T2YoJ0knKSAhPT0gLTE7XG4gICAgICB0aGlzLmVkaXRCdG5FbmFibGVkID0gdGhpcy5mb3JtQWN0aW9ucy5pbmRleE9mKCdVJykgIT09IC0xO1xuICAgICAgdGhpcy5kZWxldGVCdG5FbmFibGVkID0gIXRoaXMuaW5zZXJ0TW9kZSAmJiB0aGlzLmZvcm1BY3Rpb25zLmluZGV4T2YoJ0QnKSAhPT0gLTE7XG4gICAgfVxuICAgIGlmICh0aGlzLl9uYXZpZ2F0aW9uU2VydmljZSkge1xuICAgICAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gICAgICB0aGlzLl9uYXZpZ2F0aW9uU2VydmljZS5vblRpdGxlQ2hhbmdlKHRpdGxlID0+IHtcbiAgICAgICAgc2VsZi5sYWJlbEhlYWRlciA9IHRpdGxlO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMuaW5jbHVkZUJyZWFkY3J1bWIgPSB0aGlzLl9mb3JtLmluY2x1ZGVCcmVhZGNydW1iICYmIHRoaXMuX2Zvcm0uZm9ybUNvbnRhaW5lci5icmVhZGNydW1iO1xuICAgIGlmICh0aGlzLmluY2x1ZGVCcmVhZGNydW1iKSB7XG4gICAgICB0aGlzLl9mb3JtLmZvcm1Db250YWluZXIuYnJlYWRjcnVtYiA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mb3JtQ2FjaGVTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMuZm9ybUNhY2hlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIGlmICh0aGlzLm11dGF0aW9uT2JzZXJ2ZXJzKSB7XG4gICAgICB0aGlzLm11dGF0aW9uT2JzZXJ2ZXJzLmZvckVhY2goKG06IE11dGF0aW9uT2JzZXJ2ZXIpID0+IHtcbiAgICAgICAgbS5kaXNjb25uZWN0KCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucGFyc2VQZXJtaXNzaW9ucygpO1xuICAgIGlmICh0aGlzLmluY2x1ZGVCcmVhZGNydW1iKSB7XG4gICAgICB0aGlzLl9mb3JtLmZvcm1Db250YWluZXIuY3JlYXRlQnJlYWRjcnVtYih0aGlzLmJyZWFkQ29udGFpbmVyKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2V0SW5pdGlhbE1vZGUoKTogdm9pZCB7XG4gICAgdGhpcy5tYW5hZ2VFZGl0YWJsZURldGFpbCgpO1xuICAgIHRoaXMuaW5pdGlhbE1vZGUgPSB0cnVlO1xuICAgIHRoaXMuaW5zZXJ0TW9kZSA9IGZhbHNlO1xuICAgIHRoaXMuZWRpdE1vZGUgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRJbnNlcnRNb2RlKCk6IHZvaWQge1xuICAgIHRoaXMuaW5pdGlhbE1vZGUgPSBmYWxzZTtcbiAgICB0aGlzLmluc2VydE1vZGUgPSB0cnVlO1xuICAgIHRoaXMuZWRpdE1vZGUgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRFZGl0TW9kZSgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRpYWxNb2RlID0gZmFsc2U7XG4gICAgdGhpcy5pbnNlcnRNb2RlID0gZmFsc2U7XG4gICAgdGhpcy5lZGl0TW9kZSA9IHRydWU7XG4gIH1cblxuICBwdWJsaWMgb25DbG9zZURldGFpbChvcHRpb25zPzogYW55KTogdm9pZCB7XG4gICAgdGhpcy5fZm9ybS5leGVjdXRlVG9vbGJhckFjdGlvbihDb2Rlcy5DTE9TRV9ERVRBSUxfQUNUSU9OLCBPYmplY3QuYXNzaWduKG9wdGlvbnMgfHwge30sIHtcbiAgICAgIGNoYW5nZVRvb2xiYXJNb2RlOiB0cnVlXG4gICAgfSkpO1xuICB9XG5cbiAgcHVibGljIG9uQmFjayhvcHRpb25zPzogYW55KTogdm9pZCB7XG4gICAgdGhpcy5fZm9ybS5leGVjdXRlVG9vbGJhckFjdGlvbihDb2Rlcy5CQUNLX0FDVElPTiwgb3B0aW9ucyk7XG4gIH1cblxuICBwdWJsaWMgb25SZWxvYWQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fUkVGUkVTSCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fZm9ybS5zaG93Q29uZmlybURpc2NhcmRDaGFuZ2VzKCkudGhlbih2YWwgPT4ge1xuICAgICAgaWYgKHZhbCkge1xuICAgICAgICB0aGlzLl9mb3JtLmV4ZWN1dGVUb29sYmFyQWN0aW9uKENvZGVzLlJFTE9BRF9BQ1RJT04sIHsgZXhpdFdpdGhvdXRDb25maXJtYXRpb246IHRydWUgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb25JbnNlcnQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fSU5TRVJUKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2Zvcm0uZXhlY3V0ZVRvb2xiYXJBY3Rpb24oQ29kZXMuR09fSU5TRVJUX0FDVElPTiwge1xuICAgICAgY2hhbmdlVG9vbGJhck1vZGU6IHRydWVcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvbkVkaXQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fVVBEQVRFKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2Zvcm0uZXhlY3V0ZVRvb2xiYXJBY3Rpb24oQ29kZXMuR09fRURJVF9BQ1RJT04sIHtcbiAgICAgIGNoYW5nZVRvb2xiYXJNb2RlOiB0cnVlXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb25EZWxldGUoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fREVMRVRFKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2hvd0NvbmZpcm1EZWxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBvblNhdmUoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fVVBEQVRFKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuaGFuZGxlQWNjZXB0RWRpdE9wZXJhdGlvbigpO1xuICB9XG5cbiAgcHVibGljIGNhbmNlbE9wZXJhdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9mb3JtLnNob3dDb25maXJtRGlzY2FyZENoYW5nZXMoKS50aGVuKHZhbCA9PiB7XG4gICAgICBpZiAodmFsKSB7XG4gICAgICAgIC8vIGVuc3VyaW5nIGVkaXRNb2RlIHRvIGZhbHNlIHRvIGF2b2lkIG8tZm9ybSBjYW5EZWFjdGl2YXRlIGZ1bmN0aW9uIHRyaWdnZXJpbmdcbiAgICAgICAgdGhpcy5lZGl0TW9kZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLm9uQ2FuY2VsLmVtaXQoKTtcbiAgICAgICAgY29uc3QgY2xvc2VPcHRpb25zID0geyBleGl0V2l0aG91dENvbmZpcm1hdGlvbjogdHJ1ZSB9O1xuICAgICAgICBpZiAodGhpcy5pc0RldGFpbCkge1xuICAgICAgICAgIHRoaXMub25DbG9zZURldGFpbChjbG9zZU9wdGlvbnMpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuaW5zZXJ0TW9kZSkge1xuICAgICAgICAgIHRoaXMub25CYWNrKGNsb3NlT3B0aW9ucyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5vblJlbG9hZCgpO1xuICAgICAgICAgIHRoaXMuX2Zvcm0uc2V0SW5pdGlhbE1vZGUoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGFjY2VwdE9wZXJhdGlvbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5lZGl0TW9kZSkge1xuICAgICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fVVBEQVRFKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLmhhbmRsZUFjY2VwdEVkaXRPcGVyYXRpb24oKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaW5zZXJ0TW9kZSkge1xuICAgICAgaWYgKCF0aGlzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24oUGVybWlzc2lvbnNVdGlscy5BQ1RJT05fSU5TRVJUKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLmhhbmRsZUFjY2VwdEluc2VydE9wZXJhdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGVBY2NlcHRJbnNlcnRPcGVyYXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fZm9ybS5leGVjdXRlVG9vbGJhckFjdGlvbihDb2Rlcy5JTlNFUlRfQUNUSU9OKTtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGVBY2NlcHRFZGl0T3BlcmF0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuX2Zvcm0uZXhlY3V0ZVRvb2xiYXJBY3Rpb24oQ29kZXMuRURJVF9BQ1RJT04pO1xuICB9XG5cbiAgcHVibGljIHNob3dDb25maXJtRGVsZXRlKCk6IHZvaWQge1xuICAgIHRoaXMuX2RpYWxvZ1NlcnZpY2UuY29uZmlybShcbiAgICAgIHRoaXMuX2Zvcm0ubWVzc2FnZVNlcnZpY2UuZ2V0RGVsZXRlQ29uZmlybWF0aW9uRGlhbG9nVGl0bGUoKSxcbiAgICAgIHRoaXMuX2Zvcm0ubWVzc2FnZVNlcnZpY2UuZ2V0RGVsZXRlQ29uZmlybWF0aW9uTWVzc2FnZSgpKS50aGVuKHJlcyA9PiB7XG4gICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICB0aGlzLl9mb3JtLmV4ZWN1dGVUb29sYmFyQWN0aW9uKENvZGVzLkRFTEVURV9BQ1RJT04pLnN1YnNjcmliZShyZXNwID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2Zvcm0ub25EZWxldGUuZW1pdChyZXNwKTtcbiAgICAgICAgICAgIHRoaXMub25DbG9zZURldGFpbCh7IGV4aXRXaXRob3V0Q29uZmlybWF0aW9uOiB0cnVlIH0pO1xuICAgICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdPRm9ybVRvb2xiYXIuZGVsZXRlIGVycm9yJywgZXJyKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgKTtcbiAgfVxuXG4gIGdldCBzaG93TmF2aWdhdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaG93SGVhZGVyTmF2aWdhdGlvbiAmJiAhKHRoaXMuX2Zvcm0uZ2V0Rm9ybU1hbmFnZXIoKSAmJiB0aGlzLl9mb3JtLmdldEZvcm1NYW5hZ2VyKCkuaXNUYWJNb2RlKCkpO1xuICB9XG5cbiAgcHVibGljIGdldExhYmVsSGVhZGVyQWxpZ24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5sYWJlbEhlYWRlckFsaWduO1xuICB9XG5cbiAgZ2V0IHNob3dVbmRvQnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9mb3JtLnVuZG9CdXR0b24gJiYgKCF0aGlzLmluaXRpYWxNb2RlIHx8IHRoaXMuX2Zvcm0uaXNFZGl0YWJsZURldGFpbCgpKTtcbiAgfVxuXG4gIGdldCBpc0NoYW5nZXNTdGFja0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9mb3JtLmlzQ2FjaGVTdGFja0VtcHR5O1xuICB9XG5cbiAgcHVibGljIG9uVW5kb0xhc3RDaGFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5fZm9ybS5leGVjdXRlVG9vbGJhckFjdGlvbihDb2Rlcy5VTkRPX0xBU1RfQ0hBTkdFX0FDVElPTik7XG4gIH1cblxuICBnZXQgaXNSZWZyZXNoQnRuRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5yZWZyZXNoQnRuRW5hYmxlZDtcbiAgfVxuXG4gIGdldCBpc0luc2VydEJ0bkVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaW5zZXJ0QnRuRW5hYmxlZDtcbiAgfVxuXG4gIGdldCBpc0RlbGV0ZUJ0bkVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZGVsZXRlQnRuRW5hYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyBoYXNFbmFibGVkUGVybWlzc2lvbihwZXJtaXNzaW9uOiBPUGVybWlzc2lvbnMpOiBib29sZWFuIHtcbiAgICByZXR1cm4gcGVybWlzc2lvbiA/IHBlcm1pc3Npb24uZW5hYmxlZCA6IHRydWU7XG4gIH1cblxuICBnZXQgaW5jbHVkZUJyZWFkY3J1bWIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2luY2x1ZGVCcmVhZGNydW1iO1xuICB9XG5cbiAgc2V0IGluY2x1ZGVCcmVhZGNydW1iKGFyZzogYm9vbGVhbikge1xuICAgIHRoaXMuX2luY2x1ZGVCcmVhZGNydW1iID0gYXJnO1xuICB9XG5cbiAgcHJvdGVjdGVkIG1hbmFnZUVkaXRhYmxlRGV0YWlsKCk6IHZvaWQge1xuICAgIGNvbnN0IGlzRWRpdGFibGVEZXRhaWwgPSB0aGlzLl9mb3JtLmlzRWRpdGFibGVEZXRhaWwoKTtcblxuICAgIGNvbnN0IHVwZGF0ZVBlcm1pc3Npb25zOiBPUGVybWlzc2lvbnMgPSAodGhpcy5hY3Rpb25zUGVybWlzc2lvbnMgfHwgW10pLmZpbmQocCA9PiBwLmF0dHIgPT09IFBlcm1pc3Npb25zVXRpbHMuQUNUSU9OX1VQREFURSk7XG4gICAgaWYgKHRoaXMuaGFzRW5hYmxlZFBlcm1pc3Npb24odXBkYXRlUGVybWlzc2lvbnMpKSB7XG4gICAgICB0aGlzLnNhdmVCdG5FbmFibGVkID0gaXNFZGl0YWJsZURldGFpbDtcbiAgICB9XG5cbiAgICB0aGlzLnJlZnJlc2hCdG5FbmFibGVkID0gdGhpcy5yZWZyZXNoQnRuRW5hYmxlZCAmJiBpc0VkaXRhYmxlRGV0YWlsO1xuICAgIHRoaXMuaW5zZXJ0QnRuRW5hYmxlZCA9IHRoaXMuaW5zZXJ0QnRuRW5hYmxlZCAmJiBpc0VkaXRhYmxlRGV0YWlsO1xuICAgIHRoaXMuZWRpdEJ0bkVuYWJsZWQgPSB0aGlzLmVkaXRCdG5FbmFibGVkICYmICFpc0VkaXRhYmxlRGV0YWlsO1xuXG4gICAgdGhpcy5mb3JtQ2FjaGVTdWJzY3JpcHRpb24gPSB0aGlzLl9mb3JtLmdldEZvcm1DYWNoZSgpLm9uQ2FjaGVTdGF0ZUNoYW5nZXMuc3Vic2NyaWJlKCh2YWx1ZTogYW55KSA9PiB7XG4gICAgICBpZiAodGhpcy5fZm9ybS5pc0VkaXRhYmxlRGV0YWlsKCkpIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VzVG9TYXZlID0gdGhpcy5fZm9ybS5pc0luaXRpYWxTdGF0ZUNoYW5nZWQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZVBlcm1pc3Npb25zKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9mb3JtLmdldEF0dHJpYnV0ZSgpKSB7XG4gICAgICB0aGlzLmFjdGlvbnNQZXJtaXNzaW9ucyA9IHRoaXMuX2Zvcm0uZ2V0QWN0aW9uc1Blcm1pc3Npb25zKCk7XG5cbiAgICAgIGlmICghVXRpbC5pc0RlZmluZWQodGhpcy5hY3Rpb25zUGVybWlzc2lvbnMpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuICAgICAgdGhpcy5hY3Rpb25zUGVybWlzc2lvbnMuZm9yRWFjaCgocGVybWlzc2lvbjogT1Blcm1pc3Npb25zKSA9PiB7XG4gICAgICAgIC8vIG90aGVycyBhY3Rpb25zXG4gICAgICAgIHNlbGYucGVybWlzc2lvbk1hbmFnZW1lbnQocGVybWlzc2lvbik7XG5cbiAgICAgICAgaWYgKFBlcm1pc3Npb25zVXRpbHMuU1RBTkRBUkRfQUNUSU9OUy5pbmRleE9mKHBlcm1pc3Npb24uYXR0cikgPiAtMSkge1xuICAgICAgICAgIC8vIGFjdGlvbnMgUjtJO1U7RFxuICAgICAgICAgIGlmIChwZXJtaXNzaW9uLmF0dHIgPT09IFBlcm1pc3Npb25zVXRpbHMuQUNUSU9OX1VQREFURSkge1xuICAgICAgICAgICAgc2VsZi5wZXJtaXNzaW9uTWFuYWdlbWVudChwZXJtaXNzaW9uLCAnZWRpdCcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwZXJtaXNzaW9uTWFuYWdlbWVudChwZXJtaXNzaW9uOiBPUGVybWlzc2lvbnMsIGF0dHI/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBhdHRyQWN0aW9uID0gVXRpbC5pc0RlZmluZWQoYXR0cikgPyBhdHRyIDogcGVybWlzc2lvbi5hdHRyO1xuICAgIGNvbnN0IGVsZW1lbnRCeUFjdGlvbiA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ1thdHRyPVwiJyArIGF0dHJBY3Rpb24gKyAnXCJdJyk7XG5cbiAgICBpZiAoVXRpbC5pc0RlZmluZWQoZWxlbWVudEJ5QWN0aW9uKSkge1xuICAgICAgaWYgKCFwZXJtaXNzaW9uLnZpc2libGUpIHtcbiAgICAgICAgZWxlbWVudEJ5QWN0aW9uLnJlbW92ZSgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKCFwZXJtaXNzaW9uLmVuYWJsZWQpIHtcbiAgICAgICAgICBlbGVtZW50QnlBY3Rpb24uZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICAgIGNvbnN0IG11dGF0aW9uT2JzZXJ2ZXIgPSBQZXJtaXNzaW9uc1V0aWxzLnJlZ2lzdGVyRGlzYWJsZWRDaGFuZ2VzSW5Eb20oZWxlbWVudEJ5QWN0aW9uKTtcbiAgICAgICAgICB0aGlzLm11dGF0aW9uT2JzZXJ2ZXJzLnB1c2gobXV0YXRpb25PYnNlcnZlcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNoZWNrRW5hYmxlZFBlcm1pc3Npb24oYXR0cik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHBlcm1pc3Npb25zOiBPUGVybWlzc2lvbnMgPSAodGhpcy5hY3Rpb25zUGVybWlzc2lvbnMgfHwgW10pLmZpbmQocCA9PiBwLmF0dHIgPT09IGF0dHIpO1xuICAgIGNvbnN0IGVuYWJsZWRQZXJtaXNpb24gPSBQZXJtaXNzaW9uc1V0aWxzLmNoZWNrRW5hYmxlZFBlcm1pc3Npb24ocGVybWlzc2lvbnMpO1xuICAgIGlmICghZW5hYmxlZFBlcm1pc2lvbikge1xuICAgICAgdGhpcy5zbmFja0JhclNlcnZpY2Uub3Blbih0aGlzLl9mb3JtLm1lc3NhZ2VTZXJ2aWNlLmdldEFjdGlvblBlcm1pc3Npb25Ob3RFbmFibGVkTWVzc2FnZSgpKTtcbiAgICB9XG4gICAgcmV0dXJuIGVuYWJsZWRQZXJtaXNpb247XG4gIH1cblxufVxuIiwiPG1hdC10b29sYmFyIGNsYXNzPVwiby1mb3JtLXRvb2xiYXItaGVhZGVyXCIgW2NsYXNzLmJyZWFkY3J1bWJdPVwiaW5jbHVkZUJyZWFkY3J1bWJcIiBmeExheW91dD1cImNvbHVtblwiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCI+XG5cbiAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiaW5jbHVkZUJyZWFkY3J1bWJcIiAjYnJlYWRjcnVtYj48L25nLXRlbXBsYXRlPlxuXG4gIDxkaXYgY2xhc3M9XCJtYXQtdG9vbGJhci10b29sc1wiIGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWJldHdlZW4gY2VudGVyXCI+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJvbkJhY2soKVwiICpuZ0lmPVwiaXNEZXRhaWxcIiBjbGFzcz1cIm8tZm9ybS10b29sYmFyLWJ1dHRvbiBvLWZvcm0tdG9vbGJhci1iYWNrXCI+XG4gICAgICA8bWF0LWljb24gc3ZnSWNvbj1cIm9udGltaXplOmFycm93X2JhY2tcIj48L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPG8tZm9ybS1uYXZpZ2F0aW9uICNmb3JtTmF2aWdhdGlvbiAqbmdJZj1cInNob3dOYXZpZ2F0aW9uXCIgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwic3BhY2UtYmV0d2VlbiBjZW50ZXJcIj5cbiAgICA8L28tZm9ybS1uYXZpZ2F0aW9uPlxuXG4gICAgPHNwYW4gKm5nSWY9XCJnZXRMYWJlbEhlYWRlckFsaWduKCkgPT09ICdjZW50ZXInIHx8IGdldExhYmVsSGVhZGVyQWxpZ24oKSA9PT0gJ2VuZCdcIiBjbGFzcz1cImZpbGwtcmVtYWluaW5nXCI+PC9zcGFuPlxuICAgIDxkaXYgKm5nSWY9XCJsYWJlbEhlYWRlciE9JydcIiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCI+XG4gICAgICA8c3Bhbj57eyBsYWJlbEhlYWRlciB8IG9UcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPHNwYW4gKm5nSWY9XCJnZXRMYWJlbEhlYWRlckFsaWduKCkgPT09ICdzdGFydCcgfHwgZ2V0TGFiZWxIZWFkZXJBbGlnbigpID09PSAnY2VudGVyJ1wiIGNsYXNzPVwiZmlsbC1yZW1haW5pbmdcIj48L3NwYW4+XG5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbby1jdXN0b20tZm9ybS10b29sYmFyLWJ1dHRvbnMtd3JhcHBlcl1cIj48L25nLWNvbnRlbnQ+XG5cbiAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwic2hvd0hlYWRlckFjdGlvbnNUZXh0XCIgW25nSWZFbHNlXT1cInVuZG9CdG5XaXRob3V0VGV4dFwiPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLXVuZG9cIiBtYXQtc3Ryb2tlZC1idXR0b24gKGNsaWNrKT1cIm9uVW5kb0xhc3RDaGFuZ2UoKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpc0NoYW5nZXNTdGFja0VtcHR5XCIgKm5nSWY9XCJzaG93VW5kb0J1dHRvblwiPlxuICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cIm9udGltaXplOnVuZG9cIj48L21hdC1pY29uPlxuICAgICAgICA8c3Bhbj57eyAnVU5ETycgfCBvVHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI3VuZG9CdG5XaXRob3V0VGV4dD5cbiAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiby1mb3JtLXRvb2xiYXItYnV0dG9uIG8tZm9ybS10b29sYmFyLWJ1dHRvbi11bmRvXCIgbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJvblVuZG9MYXN0Q2hhbmdlKClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiaXNDaGFuZ2VzU3RhY2tFbXB0eVwiICpuZ0lmPVwic2hvd1VuZG9CdXR0b25cIj5cbiAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTp1bmRvXCI+PC9tYXQtaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaW5pdGlhbE1vZGVcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJzaG93SGVhZGVyQWN0aW9uc1RleHRcIiBbbmdJZkVsc2VdPVwiYnV0dG9uc1dpdGhvdVRleHRcIj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLXJlZnJlc2hcIiBtYXQtc3Ryb2tlZC1idXR0b24gKGNsaWNrKT1cIm9uUmVsb2FkKClcIlxuICAgICAgICAgICpuZ0lmPVwiaXNSZWZyZXNoQnRuRW5hYmxlZFwiIGF0dHI9XCJyZWZyZXNoXCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTphdXRvcmVuZXdcIj48L21hdC1pY29uPlxuICAgICAgICAgIDxzcGFuPnt7ICdSRUZSRVNIJyB8IG9UcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cIm8tZm9ybS10b29sYmFyLWJ1dHRvbiBvLWZvcm0tdG9vbGJhci1idXR0b24taW5zZXJ0XCIgbWF0LXN0cm9rZWQtYnV0dG9uIChjbGljayk9XCJvbkluc2VydCgpXCJcbiAgICAgICAgICAqbmdJZj1cImlzSW5zZXJ0QnRuRW5hYmxlZFwiIGF0dHI9XCJpbnNlcnRcIj5cbiAgICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cIm9udGltaXplOmFkZFwiPjwvbWF0LWljb24+XG4gICAgICAgICAgPHNwYW4+e3sgJ0FERCcgfCBvVHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLWVkaXRcIiBtYXQtc3Ryb2tlZC1idXR0b24gKGNsaWNrKT1cIm9uRWRpdCgpXCJcbiAgICAgICAgICAqbmdJZj1cImlzRWRpdEJ0bkVuYWJsZWQgfCBhc3luY1wiIGF0dHI9XCJlZGl0XCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTplZGl0XCI+PC9tYXQtaWNvbj5cbiAgICAgICAgICA8c3Bhbj57eyAnRURJVCcgfCBvVHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLWRlbGV0ZVwiIG1hdC1zdHJva2VkLWJ1dHRvbiAoY2xpY2spPVwib25EZWxldGUoKVwiXG4gICAgICAgICAgKm5nSWY9XCJpc0RlbGV0ZUJ0bkVuYWJsZWRcIiBhdHRyPVwiZGVsZXRlXCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTpkZWxldGVcIj48L21hdC1pY29uPlxuICAgICAgICAgIDxzcGFuPnt7ICdERUxFVEUnIHwgb1RyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiby1mb3JtLXRvb2xiYXItYnV0dG9uIG8tZm9ybS10b29sYmFyLWJ1dHRvbi1zYXZlXCIgbWF0LXN0cm9rZWQtYnV0dG9uIChjbGljayk9XCJvblNhdmUoKVwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cIiEoZXhpc3RzQ2hhbmdlc1RvU2F2ZSB8IGFzeW5jKVwiICpuZ0lmPVwiaXNTYXZlQnRuRW5hYmxlZCB8IGFzeW5jXCIgYXR0cj1cInVwZGF0ZVwiPlxuICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwib250aW1pemU6c2F2ZVwiPjwvbWF0LWljb24+XG4gICAgICAgICAgPHNwYW4+e3sgJ1NBVkUnIHwgb1RyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLXRlbXBsYXRlICNidXR0b25zV2l0aG91VGV4dD5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLXJlZnJlc2hcIiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIm9uUmVsb2FkKClcIlxuICAgICAgICAgICpuZ0lmPVwiaXNSZWZyZXNoQnRuRW5hYmxlZFwiIGF0dHI9XCJyZWZyZXNoXCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTphdXRvcmVuZXdcIj48L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLWluc2VydFwiIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwib25JbnNlcnQoKVwiXG4gICAgICAgICAgKm5nSWY9XCJpc0luc2VydEJ0bkVuYWJsZWRcIiBhdHRyPVwiaW5zZXJ0XCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTphZGRcIj48L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24tby1mb3JtLXRvb2xiYXItYnV0dG9uLWVkaXRcIiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIm9uRWRpdCgpXCJcbiAgICAgICAgICAqbmdJZj1cImlzRWRpdEJ0bkVuYWJsZWQgfCBhc3luY1wiIGF0dHI9XCJlZGl0XCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTplZGl0XCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiby1mb3JtLXRvb2xiYXItYnV0dG9uIG8tZm9ybS10b29sYmFyLWJ1dHRvbi1kZWxldGVcIiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIm9uRGVsZXRlKClcIlxuICAgICAgICAgICpuZ0lmPVwiaXNEZWxldGVCdG5FbmFibGVkXCIgYXR0cj1cImRlbGV0ZVwiPlxuICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwib250aW1pemU6ZGVsZXRlXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiby1mb3JtLXRvb2xiYXItYnV0dG9uIG8tZm9ybS10b29sYmFyLWJ1dHRvbi1zYXZlXCIgbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJvblNhdmUoKVwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cIiFleGlzdHNDaGFuZ2VzVG9TYXZlXCIgKm5nSWY9XCJpc1NhdmVCdG5FbmFibGVkIHwgYXN5bmNcIiBhdHRyPVwidXBkYXRlXCI+XG4gICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTpzYXZlXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVkaXRNb2RlIHx8IGluc2VydE1vZGVcIj5cbiAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiby1mb3JtLXRvb2xiYXItYnV0dG9uIG8tZm9ybS10b29sYmFyLWJ1dHRvbi1jYW5jZWxcIiBtYXQtc3Ryb2tlZC1idXR0b24gKGNsaWNrKT1cImNhbmNlbE9wZXJhdGlvbigpXCI+XG4gICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwib250aW1pemU6Y2xlYXJcIj48L21hdC1pY29uPlxuICAgICAgICA8c3BhbiAqbmdJZj1cInNob3dIZWFkZXJBY3Rpb25zVGV4dFwiPnt7ICdDQU5DRUwnIHwgb1RyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJvLWZvcm0tdG9vbGJhci1idXR0b24gby1mb3JtLXRvb2xiYXItYnV0dG9uLWluc2VydFwiIG1hdC1zdHJva2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiYWNjZXB0T3BlcmF0aW9uKClcIj5cbiAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJvbnRpbWl6ZTpkb25lXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJzaG93SGVhZGVyQWN0aW9uc1RleHRcIj57eyAnSU5TRVJUJyB8IG9UcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG5cbjwvbWF0LXRvb2xiYXI+XG4iXX0=
@@ -6,10 +6,10 @@ import { OFormToolbarComponent } from './o-form-toolbar.component';
6
6
  import * as i0 from "@angular/core";
7
7
  export class OFormToolbarModule {
8
8
  }
9
- OFormToolbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormToolbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- OFormToolbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: OFormToolbarModule, declarations: [OFormNavigationComponent, OFormToolbarComponent], imports: [CommonModule, OSharedModule], exports: [OFormNavigationComponent, OFormToolbarComponent] });
11
- OFormToolbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormToolbarModule, imports: [CommonModule, OSharedModule] });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormToolbarModule, decorators: [{
9
+ OFormToolbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormToolbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ OFormToolbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: OFormToolbarModule, declarations: [OFormNavigationComponent, OFormToolbarComponent], imports: [CommonModule, OSharedModule], exports: [OFormNavigationComponent, OFormToolbarComponent] });
11
+ OFormToolbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormToolbarModule, imports: [CommonModule, OSharedModule] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormToolbarModule, decorators: [{
13
13
  type: NgModule,
14
14
  args: [{
15
15
  declarations: [OFormNavigationComponent, OFormToolbarComponent],
@@ -17,4 +17,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
17
17
  exports: [OFormNavigationComponent, OFormToolbarComponent]
18
18
  }]
19
19
  }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1mb3JtLXRvb2xiYXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS90b29sYmFyL28tZm9ybS10b29sYmFyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDckYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBT25FLE1BQU0sT0FBTyxrQkFBa0I7OytHQUFsQixrQkFBa0I7Z0hBQWxCLGtCQUFrQixpQkFKZCx3QkFBd0IsRUFBRSxxQkFBcUIsYUFDcEQsWUFBWSxFQUFFLGFBQWEsYUFDM0Isd0JBQXdCLEVBQUUscUJBQXFCO2dIQUU5QyxrQkFBa0IsWUFIbkIsWUFBWSxFQUFFLGFBQWE7MkZBRzFCLGtCQUFrQjtrQkFMOUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyx3QkFBd0IsRUFBRSxxQkFBcUIsQ0FBQztvQkFDL0QsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQztvQkFDdEMsT0FBTyxFQUFFLENBQUMsd0JBQXdCLEVBQUUscUJBQXFCLENBQUM7aUJBQzNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9TaGFyZWRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5pbXBvcnQgeyBPRm9ybU5hdmlnYXRpb25Db21wb25lbnQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uL28tZm9ybS1uYXZpZ2F0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPRm9ybVRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuL28tZm9ybS10b29sYmFyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW09Gb3JtTmF2aWdhdGlvbkNvbXBvbmVudCwgT0Zvcm1Ub29sYmFyQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgT1NoYXJlZE1vZHVsZV0sXG4gIGV4cG9ydHM6IFtPRm9ybU5hdmlnYXRpb25Db21wb25lbnQsIE9Gb3JtVG9vbGJhckNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgT0Zvcm1Ub29sYmFyTW9kdWxlIHsgfVxuIl19
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1mb3JtLXRvb2xiYXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS90b29sYmFyL28tZm9ybS10b29sYmFyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDckYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBT25FLE1BQU0sT0FBTyxrQkFBa0I7O2dIQUFsQixrQkFBa0I7aUhBQWxCLGtCQUFrQixpQkFKZCx3QkFBd0IsRUFBRSxxQkFBcUIsYUFDcEQsWUFBWSxFQUFFLGFBQWEsYUFDM0Isd0JBQXdCLEVBQUUscUJBQXFCO2lIQUU5QyxrQkFBa0IsWUFIbkIsWUFBWSxFQUFFLGFBQWE7NEZBRzFCLGtCQUFrQjtrQkFMOUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyx3QkFBd0IsRUFBRSxxQkFBcUIsQ0FBQztvQkFDL0QsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQztvQkFDdEMsT0FBTyxFQUFFLENBQUMsd0JBQXdCLEVBQUUscUJBQXFCLENBQUM7aUJBQzNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9TaGFyZWRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5pbXBvcnQgeyBPRm9ybU5hdmlnYXRpb25Db21wb25lbnQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uL28tZm9ybS1uYXZpZ2F0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPRm9ybVRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuL28tZm9ybS10b29sYmFyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW09Gb3JtTmF2aWdhdGlvbkNvbXBvbmVudCwgT0Zvcm1Ub29sYmFyQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgT1NoYXJlZE1vZHVsZV0sXG4gIGV4cG9ydHM6IFtPRm9ybU5hdmlnYXRpb25Db21wb25lbnQsIE9Gb3JtVG9vbGJhckNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgT0Zvcm1Ub29sYmFyTW9kdWxlIHsgfVxuIl19
@@ -31,13 +31,13 @@ export class OFormContainerComponent {
31
31
  ref.instance.separator = this.breadcrumbSeparator;
32
32
  }
33
33
  }
34
- OFormContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
35
- OFormContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OFormContainerComponent, selector: "o-form-container", inputs: { breadcrumb: "breadcrumb", breadcrumbSeparator: ["breadcrumb-separator", "breadcrumbSeparator"], breadcrumbLabelColumns: ["breadcrumb-label-columns", "breadcrumbLabelColumns"], form: "form" }, host: { properties: { "class.o-form-container": "true", "class.breadcrumb": "breadcrumb" } }, viewQueries: [{ propertyName: "breadContainer", first: true, predicate: ["breadcrumb"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<div class=\"o-form-container-content\">\n <ng-template #breadcrumb></ng-template>\n <ng-content></ng-content>\n</div>", styles: [".application-layout-content-wrapper .o-form-container{position:relative;width:100%;height:100%;display:block}.application-layout-content-wrapper .o-form-container .o-form-container-content{display:flex;flex:auto;flex-direction:column;max-height:100%}.application-layout-content-wrapper .o-form-container .o-form-container-content>.o-breadcrumb{padding-left:8px;padding-right:8px}\n"], encapsulation: i0.ViewEncapsulation.None });
34
+ OFormContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
35
+ OFormContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: OFormContainerComponent, selector: "o-form-container", inputs: { breadcrumb: "breadcrumb", breadcrumbSeparator: ["breadcrumb-separator", "breadcrumbSeparator"], breadcrumbLabelColumns: ["breadcrumb-label-columns", "breadcrumbLabelColumns"], form: "form" }, host: { properties: { "class.o-form-container": "true", "class.breadcrumb": "breadcrumb" } }, viewQueries: [{ propertyName: "breadContainer", first: true, predicate: ["breadcrumb"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<div class=\"o-form-container-content\">\n <ng-template #breadcrumb></ng-template>\n <ng-content></ng-content>\n</div>", styles: [".application-layout-content-wrapper .o-form-container{position:relative;width:100%;height:100%;display:block}.application-layout-content-wrapper .o-form-container .o-form-container-content{display:flex;flex:auto;flex-direction:column;max-height:100%}.application-layout-content-wrapper .o-form-container .o-form-container-content>.o-breadcrumb{padding-left:8px;padding-right:8px}\n"], encapsulation: i0.ViewEncapsulation.None });
36
36
  __decorate([
37
37
  BooleanInputConverter(),
38
38
  __metadata("design:type", Boolean)
39
39
  ], OFormContainerComponent.prototype, "breadcrumb", void 0);
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormContainerComponent, decorators: [{
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormContainerComponent, decorators: [{
41
41
  type: Component,
42
42
  args: [{ selector: 'o-form-container', inputs: DEFAULT_INPUTS_O_FORM_CONTAINER, encapsulation: ViewEncapsulation.None, host: {
43
43
  '[class.o-form-container]': 'true',
@@ -47,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
47
47
  type: ViewChild,
48
48
  args: ['breadcrumb', { read: ViewContainerRef }]
49
49
  }], breadcrumb: [] } });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1mb3JtLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWNvbnRhaW5lci9vLWZvcm0tY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0tY29udGFpbmVyL28tZm9ybS1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFJekUsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUc7SUFFN0MsWUFBWTtJQUNaLDRDQUE0QztJQUM1QyxtREFBbUQ7SUFDbkQsTUFBTTtDQUNQLENBQUM7QUFhRixNQUFNLE9BQU8sdUJBQXVCO0lBWHBDO1FBZ0JFLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFFckIsd0JBQW1CLEdBQVcsR0FBRyxDQUFDO0tBd0IxQztJQW5CQyxlQUFlO1FBQ2IsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ3JFLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQzVDO0lBQ0gsQ0FBQztJQUVELE9BQU8sQ0FBQyxJQUFlO1FBQ3JCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxTQUEyQjtRQUMxQyxNQUFNLEdBQUcsR0FBRyxTQUFTLENBQUMsZUFBZSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDNUQsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUM5QixHQUFHLENBQUMsUUFBUSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUM7UUFDeEQsR0FBRyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQ3BELENBQUM7O29IQTdCVSx1QkFBdUI7d0dBQXZCLHVCQUF1Qix5YkFFRCxnQkFBZ0IsNkJDM0JuRCwwSEFHTTtBRDBCSjtJQUFDLHFCQUFxQixFQUFFOzsyREFDSTsyRkFMakIsdUJBQXVCO2tCQVhuQyxTQUFTOytCQUNFLGtCQUFrQixVQUdwQiwrQkFBK0IsaUJBQ3hCLGlCQUFpQixDQUFDLElBQUksUUFDL0I7d0JBQ0osMEJBQTBCLEVBQUUsTUFBTTt3QkFDbEMsb0JBQW9CLEVBQUUsWUFBWTtxQkFDbkM7OEJBSW9ELGNBQWM7c0JBQWxFLFNBQVM7dUJBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFO2dCQUduRCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBWaWV3Q2hpbGQsIFZpZXdDb250YWluZXJSZWYsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPQnJlYWRjcnVtYkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvYnJlYWRjcnVtYi9vLWJyZWFkY3J1bWIuY29tcG9uZW50JztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dENvbnZlcnRlciB9IGZyb20gJy4uLy4uL2RlY29yYXRvcnMvaW5wdXQtY29udmVydGVyJztcbmltcG9ydCB7IE9Gb3JtQmFzZSB9IGZyb20gJy4uL2Zvcm0vby1mb3JtLWJhc2UuY2xhc3MnO1xuaW1wb3J0IHsgT0Zvcm1MYXlvdXRNYW5hZ2VyQmFzZSB9IGZyb20gJy4uLy4uL2xheW91dHMvZm9ybS1sYXlvdXQvby1mb3JtLWxheW91dC1tYW5hZ2VyLWJhc2UuY2xhc3MnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9JTlBVVFNfT19GT1JNX0NPTlRBSU5FUiA9IFtcbiAgLy8gYnJlYWRjcnVtYiBbYm9vbGVhbl06IHNob3cgYnJlYWRzY3J1bSBvZiB0aGUgZm9ybS4gRGVmYXVsdDogeWVzLlxuICAnYnJlYWRjcnVtYicsXG4gICdicmVhZGNydW1iU2VwYXJhdG9yIDogYnJlYWRjcnVtYi1zZXBhcmF0b3InLFxuICAnYnJlYWRjcnVtYkxhYmVsQ29sdW1ucyA6IGJyZWFkY3J1bWItbGFiZWwtY29sdW1ucycsXG4gICdmb3JtJ1xuXTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnby1mb3JtLWNvbnRhaW5lcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9vLWZvcm0tY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vby1mb3JtLWNvbnRhaW5lci5jb21wb25lbnQuc2NzcyddLFxuICBpbnB1dHM6IERFRkFVTFRfSU5QVVRTX09fRk9STV9DT05UQUlORVIsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLm8tZm9ybS1jb250YWluZXJdJzogJ3RydWUnLFxuICAgICdbY2xhc3MuYnJlYWRjcnVtYl0nOiAnYnJlYWRjcnVtYidcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBPRm9ybUNvbnRhaW5lckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gIEBWaWV3Q2hpbGQoJ2JyZWFkY3J1bWInLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYgfSkgYnJlYWRDb250YWluZXI6IFZpZXdDb250YWluZXJSZWY7XG5cbiAgQEJvb2xlYW5JbnB1dENvbnZlcnRlcigpXG4gIGJyZWFkY3J1bWI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGJyZWFkY3J1bWJMYWJlbENvbHVtbnM6IHN0cmluZztcbiAgcHVibGljIGJyZWFkY3J1bWJTZXBhcmF0b3I6IHN0cmluZyA9ICcgJztcblxuICBwcm90ZWN0ZWQgZm9ybTogT0Zvcm1CYXNlO1xuICBwcm90ZWN0ZWQgZm9ybU1hbmFuZ2VyOiBPRm9ybUxheW91dE1hbmFnZXJCYXNlO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmJyZWFkY3J1bWIgPSB0aGlzLmJyZWFkY3J1bWIgJiYgdGhpcy5mb3JtICYmICF0aGlzLmZvcm1NYW5hbmdlcjtcbiAgICBpZiAodGhpcy5icmVhZGNydW1iKSB7XG4gICAgICB0aGlzLmNyZWF0ZUJyZWFkY3J1bWIodGhpcy5icmVhZENvbnRhaW5lcik7XG4gICAgfVxuICB9XG5cbiAgc2V0Rm9ybShmb3JtOiBPRm9ybUJhc2UpIHtcbiAgICB0aGlzLmZvcm0gPSBmb3JtO1xuICAgIHRoaXMuZm9ybU1hbmFuZ2VyID0gZm9ybS5nZXRGb3JtTWFuYWdlcigpO1xuICB9XG5cbiAgY3JlYXRlQnJlYWRjcnVtYihjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHtcbiAgICBjb25zdCByZWYgPSBjb250YWluZXIuY3JlYXRlQ29tcG9uZW50KE9CcmVhZGNydW1iQ29tcG9uZW50KTtcbiAgICByZWYuaW5zdGFuY2UuZm9ybSA9IHRoaXMuZm9ybTtcbiAgICByZWYuaW5zdGFuY2UubGFiZWxDb2x1bW5zID0gdGhpcy5icmVhZGNydW1iTGFiZWxDb2x1bW5zO1xuICAgIHJlZi5pbnN0YW5jZS5zZXBhcmF0b3IgPSB0aGlzLmJyZWFkY3J1bWJTZXBhcmF0b3I7XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cIm8tZm9ybS1jb250YWluZXItY29udGVudFwiPlxuICA8bmctdGVtcGxhdGUgI2JyZWFkY3J1bWI+PC9uZy10ZW1wbGF0ZT5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+Il19
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1mb3JtLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWNvbnRhaW5lci9vLWZvcm0tY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0tY29udGFpbmVyL28tZm9ybS1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFJekUsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUc7SUFFN0MsWUFBWTtJQUNaLDRDQUE0QztJQUM1QyxtREFBbUQ7SUFDbkQsTUFBTTtDQUNQLENBQUM7QUFhRixNQUFNLE9BQU8sdUJBQXVCO0lBWHBDO1FBZ0JFLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFFckIsd0JBQW1CLEdBQVcsR0FBRyxDQUFDO0tBd0IxQztJQW5CQyxlQUFlO1FBQ2IsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ3JFLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQzVDO0lBQ0gsQ0FBQztJQUVELE9BQU8sQ0FBQyxJQUFlO1FBQ3JCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxTQUEyQjtRQUMxQyxNQUFNLEdBQUcsR0FBRyxTQUFTLENBQUMsZUFBZSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDNUQsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUM5QixHQUFHLENBQUMsUUFBUSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUM7UUFDeEQsR0FBRyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQ3BELENBQUM7O3FIQTdCVSx1QkFBdUI7eUdBQXZCLHVCQUF1Qix5YkFFRCxnQkFBZ0IsNkJDM0JuRCwwSEFHTTtBRDBCSjtJQUFDLHFCQUFxQixFQUFFOzsyREFDSTs0RkFMakIsdUJBQXVCO2tCQVhuQyxTQUFTOytCQUNFLGtCQUFrQixVQUdwQiwrQkFBK0IsaUJBQ3hCLGlCQUFpQixDQUFDLElBQUksUUFDL0I7d0JBQ0osMEJBQTBCLEVBQUUsTUFBTTt3QkFDbEMsb0JBQW9CLEVBQUUsWUFBWTtxQkFDbkM7OEJBSW9ELGNBQWM7c0JBQWxFLFNBQVM7dUJBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFO2dCQUduRCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBWaWV3Q2hpbGQsIFZpZXdDb250YWluZXJSZWYsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPQnJlYWRjcnVtYkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvYnJlYWRjcnVtYi9vLWJyZWFkY3J1bWIuY29tcG9uZW50JztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dENvbnZlcnRlciB9IGZyb20gJy4uLy4uL2RlY29yYXRvcnMvaW5wdXQtY29udmVydGVyJztcbmltcG9ydCB7IE9Gb3JtQmFzZSB9IGZyb20gJy4uL2Zvcm0vby1mb3JtLWJhc2UuY2xhc3MnO1xuaW1wb3J0IHsgT0Zvcm1MYXlvdXRNYW5hZ2VyQmFzZSB9IGZyb20gJy4uLy4uL2xheW91dHMvZm9ybS1sYXlvdXQvby1mb3JtLWxheW91dC1tYW5hZ2VyLWJhc2UuY2xhc3MnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9JTlBVVFNfT19GT1JNX0NPTlRBSU5FUiA9IFtcbiAgLy8gYnJlYWRjcnVtYiBbYm9vbGVhbl06IHNob3cgYnJlYWRzY3J1bSBvZiB0aGUgZm9ybS4gRGVmYXVsdDogeWVzLlxuICAnYnJlYWRjcnVtYicsXG4gICdicmVhZGNydW1iU2VwYXJhdG9yIDogYnJlYWRjcnVtYi1zZXBhcmF0b3InLFxuICAnYnJlYWRjcnVtYkxhYmVsQ29sdW1ucyA6IGJyZWFkY3J1bWItbGFiZWwtY29sdW1ucycsXG4gICdmb3JtJ1xuXTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnby1mb3JtLWNvbnRhaW5lcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9vLWZvcm0tY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vby1mb3JtLWNvbnRhaW5lci5jb21wb25lbnQuc2NzcyddLFxuICBpbnB1dHM6IERFRkFVTFRfSU5QVVRTX09fRk9STV9DT05UQUlORVIsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLm8tZm9ybS1jb250YWluZXJdJzogJ3RydWUnLFxuICAgICdbY2xhc3MuYnJlYWRjcnVtYl0nOiAnYnJlYWRjcnVtYidcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBPRm9ybUNvbnRhaW5lckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gIEBWaWV3Q2hpbGQoJ2JyZWFkY3J1bWInLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYgfSkgYnJlYWRDb250YWluZXI6IFZpZXdDb250YWluZXJSZWY7XG5cbiAgQEJvb2xlYW5JbnB1dENvbnZlcnRlcigpXG4gIGJyZWFkY3J1bWI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGJyZWFkY3J1bWJMYWJlbENvbHVtbnM6IHN0cmluZztcbiAgcHVibGljIGJyZWFkY3J1bWJTZXBhcmF0b3I6IHN0cmluZyA9ICcgJztcblxuICBwcm90ZWN0ZWQgZm9ybTogT0Zvcm1CYXNlO1xuICBwcm90ZWN0ZWQgZm9ybU1hbmFuZ2VyOiBPRm9ybUxheW91dE1hbmFnZXJCYXNlO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmJyZWFkY3J1bWIgPSB0aGlzLmJyZWFkY3J1bWIgJiYgdGhpcy5mb3JtICYmICF0aGlzLmZvcm1NYW5hbmdlcjtcbiAgICBpZiAodGhpcy5icmVhZGNydW1iKSB7XG4gICAgICB0aGlzLmNyZWF0ZUJyZWFkY3J1bWIodGhpcy5icmVhZENvbnRhaW5lcik7XG4gICAgfVxuICB9XG5cbiAgc2V0Rm9ybShmb3JtOiBPRm9ybUJhc2UpIHtcbiAgICB0aGlzLmZvcm0gPSBmb3JtO1xuICAgIHRoaXMuZm9ybU1hbmFuZ2VyID0gZm9ybS5nZXRGb3JtTWFuYWdlcigpO1xuICB9XG5cbiAgY3JlYXRlQnJlYWRjcnVtYihjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHtcbiAgICBjb25zdCByZWYgPSBjb250YWluZXIuY3JlYXRlQ29tcG9uZW50KE9CcmVhZGNydW1iQ29tcG9uZW50KTtcbiAgICByZWYuaW5zdGFuY2UuZm9ybSA9IHRoaXMuZm9ybTtcbiAgICByZWYuaW5zdGFuY2UubGFiZWxDb2x1bW5zID0gdGhpcy5icmVhZGNydW1iTGFiZWxDb2x1bW5zO1xuICAgIHJlZi5pbnN0YW5jZS5zZXBhcmF0b3IgPSB0aGlzLmJyZWFkY3J1bWJTZXBhcmF0b3I7XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cIm8tZm9ybS1jb250YWluZXItY29udGVudFwiPlxuICA8bmctdGVtcGxhdGUgI2JyZWFkY3J1bWI+PC9uZy10ZW1wbGF0ZT5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+Il19
@@ -5,10 +5,10 @@ import { OFormContainerComponent } from './o-form-container.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class OFormContainerModule {
7
7
  }
8
- OFormContainerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormContainerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- OFormContainerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: OFormContainerModule, declarations: [OFormContainerComponent], imports: [OSharedModule, CommonModule], exports: [OFormContainerComponent] });
10
- OFormContainerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormContainerModule, imports: [OSharedModule, CommonModule] });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OFormContainerModule, decorators: [{
8
+ OFormContainerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormContainerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ OFormContainerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: OFormContainerModule, declarations: [OFormContainerComponent], imports: [OSharedModule, CommonModule], exports: [OFormContainerComponent] });
10
+ OFormContainerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormContainerModule, imports: [OSharedModule, CommonModule] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OFormContainerModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  declarations: [OFormContainerComponent],
@@ -16,4 +16,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
16
16
  exports: [OFormContainerComponent]
17
17
  }]
18
18
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1mb3JtLWNvbnRhaW5lci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWNvbnRhaW5lci9vLWZvcm0tY29udGFpbmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBT3ZFLE1BQU0sT0FBTyxvQkFBb0I7O2lIQUFwQixvQkFBb0I7a0hBQXBCLG9CQUFvQixpQkFKZCx1QkFBdUIsYUFDNUIsYUFBYSxFQUFFLFlBQVksYUFDM0IsdUJBQXVCO2tIQUV4QixvQkFBb0IsWUFIbkIsYUFBYSxFQUFFLFlBQVk7MkZBRzVCLG9CQUFvQjtrQkFMaEMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztvQkFDdkMsT0FBTyxFQUFFLENBQUMsYUFBYSxFQUFFLFlBQVksQ0FBQztvQkFDdEMsT0FBTyxFQUFFLENBQUMsdUJBQXVCLENBQUM7aUJBQ3JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9TaGFyZWRNb2R1bGUgfSBmcm9tICcuLi8uLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5pbXBvcnQgeyBPRm9ybUNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vby1mb3JtLWNvbnRhaW5lci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW09Gb3JtQ29udGFpbmVyQ29tcG9uZW50XSxcbiAgICBpbXBvcnRzOiBbT1NoYXJlZE1vZHVsZSwgQ29tbW9uTW9kdWxlXSxcbiAgICBleHBvcnRzOiBbT0Zvcm1Db250YWluZXJDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIE9Gb3JtQ29udGFpbmVyTW9kdWxlIHtcbn1cbiJdfQ==
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1mb3JtLWNvbnRhaW5lci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWNvbnRhaW5lci9vLWZvcm0tY29udGFpbmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBT3ZFLE1BQU0sT0FBTyxvQkFBb0I7O2tIQUFwQixvQkFBb0I7bUhBQXBCLG9CQUFvQixpQkFKZCx1QkFBdUIsYUFDNUIsYUFBYSxFQUFFLFlBQVksYUFDM0IsdUJBQXVCO21IQUV4QixvQkFBb0IsWUFIbkIsYUFBYSxFQUFFLFlBQVk7NEZBRzVCLG9CQUFvQjtrQkFMaEMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztvQkFDdkMsT0FBTyxFQUFFLENBQUMsYUFBYSxFQUFFLFlBQVksQ0FBQztvQkFDdEMsT0FBTyxFQUFFLENBQUMsdUJBQXVCLENBQUM7aUJBQ3JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9TaGFyZWRNb2R1bGUgfSBmcm9tICcuLi8uLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5pbXBvcnQgeyBPRm9ybUNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vby1mb3JtLWNvbnRhaW5lci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW09Gb3JtQ29udGFpbmVyQ29tcG9uZW50XSxcbiAgICBpbXBvcnRzOiBbT1NoYXJlZE1vZHVsZSwgQ29tbW9uTW9kdWxlXSxcbiAgICBleHBvcnRzOiBbT0Zvcm1Db250YWluZXJDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIE9Gb3JtQ29udGFpbmVyTW9kdWxlIHtcbn1cbiJdfQ==
@@ -36,8 +36,8 @@ export class OGridItemComponent {
36
36
  return this.modelData;
37
37
  }
38
38
  }
39
- OGridItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OGridItemComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
40
- OGridItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OGridItemComponent, selector: "o-grid-item", inputs: { colspan: "colspan", rowspan: "rowspan" }, host: { listeners: { "click": "onItemClicked($event)", "dblclick": "onItemDoubleClicked($event)" }, properties: { "class.o-grid-item": "true" } }, viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<ng-template #templateref>\n <ng-content></ng-content>\n</ng-template>" });
39
+ OGridItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OGridItemComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
40
+ OGridItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: OGridItemComponent, selector: "o-grid-item", inputs: { colspan: "colspan", rowspan: "rowspan" }, host: { listeners: { "click": "onItemClicked($event)", "dblclick": "onItemDoubleClicked($event)" }, properties: { "class.o-grid-item": "true" } }, viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<ng-template #templateref>\n <ng-content></ng-content>\n</ng-template>" });
41
41
  __decorate([
42
42
  NumberInputConverter(),
43
43
  __metadata("design:type", Number)
@@ -46,7 +46,7 @@ __decorate([
46
46
  NumberInputConverter(),
47
47
  __metadata("design:type", Number)
48
48
  ], OGridItemComponent.prototype, "rowspan", void 0);
49
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OGridItemComponent, decorators: [{
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OGridItemComponent, decorators: [{
50
50
  type: Component,
51
51
  args: [{ selector: 'o-grid-item', inputs: DEFAULT_INPUTS_O_GRID_ITEM, host: {
52
52
  '[class.o-grid-item]': 'true',
@@ -57,4 +57,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
57
57
  type: ViewChild,
58
58
  args: [TemplateRef]
59
59
  }], colspan: [], rowspan: [] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1ncmlkLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvZ3JpZC9ncmlkLWl0ZW0vby1ncmlkLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvZ3JpZC9ncmlkLWl0ZW0vby1ncmlkLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUV4RCxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRztJQUN4QyxTQUFTO0lBQ1QsU0FBUztDQUNWLENBQUM7QUFhRixNQUFNLE9BQU8sa0JBQWtCO0lBWTdCLFlBQW1CLEdBQWU7UUFBZixRQUFHLEdBQUgsR0FBRyxDQUFZO1FBVGxDLFlBQU8sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNoRCxrQkFBYSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBSXRELFlBQU8sR0FBVyxDQUFDLENBQUM7UUFFcEIsWUFBTyxHQUFXLENBQUMsQ0FBQztJQUVrQixDQUFDO0lBRXZDLGFBQWEsQ0FBQyxDQUFTO1FBQ3JCLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxDQUFTO1FBQzNCLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFTSxPQUFPLENBQUMsTUFBMEM7UUFDdkQsT0FBTyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRU0sYUFBYSxDQUFDLE1BQTBDO1FBQzdELE9BQU8saUJBQWlCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFZO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ25CLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1NBQ3ZCO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQzs7K0dBdENVLGtCQUFrQjttR0FBbEIsa0JBQWtCLG9TQU1sQixXQUFXLGdEQzVCeEIseUVBRWM7QUQyQlo7SUFBQyxvQkFBb0IsRUFBRTs7bURBQ0g7QUFDcEI7SUFBQyxvQkFBb0IsRUFBRTs7bURBQ0g7MkZBVlQsa0JBQWtCO2tCQVg5QixTQUFTOytCQUNFLGFBQWEsVUFFZiwwQkFBMEIsUUFDNUI7d0JBQ0oscUJBQXFCLEVBQUUsTUFBTTt3QkFDN0IsU0FBUyxFQUFFLHVCQUF1Qjt3QkFDbEMsWUFBWSxFQUFFLDZCQUE2QjtxQkFDNUM7aUdBUzhCLFFBQVE7c0JBQXRDLFNBQVM7dUJBQUMsV0FBVztnQkFFdEIsT0FBTyxNQUVQLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBOdW1iZXJJbnB1dENvbnZlcnRlciB9IGZyb20gJy4uLy4uLy4uL2RlY29yYXRvcnMvaW5wdXQtY29udmVydGVyJztcbmltcG9ydCB7IElHcmlkSXRlbSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvby1ncmlkLWl0ZW0uaW50ZXJmYWNlJztcbmltcG9ydCB7IE9ic2VydmFibGVXcmFwcGVyIH0gZnJvbSAnLi4vLi4vLi4vdXRpbC9hc3luYyc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0lOUFVUU19PX0dSSURfSVRFTSA9IFtcbiAgJ2NvbHNwYW4nLFxuICAncm93c3Bhbidcbl07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ28tZ3JpZC1pdGVtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL28tZ3JpZC1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgaW5wdXRzOiBERUZBVUxUX0lOUFVUU19PX0dSSURfSVRFTSxcbiAgaG9zdDoge1xuICAgICdbY2xhc3Muby1ncmlkLWl0ZW1dJzogJ3RydWUnLFxuICAgICcoY2xpY2spJzogJ29uSXRlbUNsaWNrZWQoJGV2ZW50KScsXG4gICAgJyhkYmxjbGljayknOiAnb25JdGVtRG91YmxlQ2xpY2tlZCgkZXZlbnQpJ1xuICB9LFxuXG59KVxuZXhwb3J0IGNsYXNzIE9HcmlkSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIElHcmlkSXRlbSB7XG5cbiAgbW9kZWxEYXRhOiBvYmplY3Q7XG4gIG1kQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBtZERvdWJsZUNsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKFRlbXBsYXRlUmVmKSBwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIEBOdW1iZXJJbnB1dENvbnZlcnRlcigpXG4gIGNvbHNwYW46IG51bWJlciA9IDE7XG4gIEBOdW1iZXJJbnB1dENvbnZlcnRlcigpXG4gIHJvd3NwYW46IG51bWJlciA9IDE7XG5cbiAgY29uc3RydWN0b3IocHVibGljIF9lbDogRWxlbWVudFJlZikgeyB9XG5cbiAgb25JdGVtQ2xpY2tlZChlPzogRXZlbnQpIHtcbiAgICBPYnNlcnZhYmxlV3JhcHBlci5jYWxsRW1pdCh0aGlzLm1kQ2xpY2ssIHRoaXMpO1xuICB9XG5cbiAgb25JdGVtRG91YmxlQ2xpY2tlZChlPzogRXZlbnQpIHtcbiAgICBPYnNlcnZhYmxlV3JhcHBlci5jYWxsRW1pdCh0aGlzLm1kRG91YmxlQ2xpY2ssIHRoaXMpO1xuICB9XG5cbiAgcHVibGljIG9uQ2xpY2sob25OZXh0OiAoaXRlbTogT0dyaWRJdGVtQ29tcG9uZW50KSA9PiB2b2lkKTogb2JqZWN0IHtcbiAgICByZXR1cm4gT2JzZXJ2YWJsZVdyYXBwZXIuc3Vic2NyaWJlKHRoaXMubWRDbGljaywgb25OZXh0KTtcbiAgfVxuXG4gIHB1YmxpYyBvbkRvdWJsZUNsaWNrKG9uTmV4dDogKGl0ZW06IE9HcmlkSXRlbUNvbXBvbmVudCkgPT4gdm9pZCk6IG9iamVjdCB7XG4gICAgcmV0dXJuIE9ic2VydmFibGVXcmFwcGVyLnN1YnNjcmliZSh0aGlzLm1kRG91YmxlQ2xpY2ssIG9uTmV4dCk7XG4gIH1cblxuICBzZXRJdGVtRGF0YShkYXRhOiBvYmplY3QpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubW9kZWxEYXRhKSB7XG4gICAgICB0aGlzLm1vZGVsRGF0YSA9IGRhdGE7XG4gICAgfVxuICB9XG5cbiAgZ2V0SXRlbURhdGEoKTogb2JqZWN0IHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbERhdGE7XG4gIH1cblxufVxuIiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZXJlZj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1ncmlkLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvZ3JpZC9ncmlkLWl0ZW0vby1ncmlkLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvZ3JpZC9ncmlkLWl0ZW0vby1ncmlkLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUV4RCxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRztJQUN4QyxTQUFTO0lBQ1QsU0FBUztDQUNWLENBQUM7QUFhRixNQUFNLE9BQU8sa0JBQWtCO0lBWTdCLFlBQW1CLEdBQWU7UUFBZixRQUFHLEdBQUgsR0FBRyxDQUFZO1FBVGxDLFlBQU8sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNoRCxrQkFBYSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBSXRELFlBQU8sR0FBVyxDQUFDLENBQUM7UUFFcEIsWUFBTyxHQUFXLENBQUMsQ0FBQztJQUVrQixDQUFDO0lBRXZDLGFBQWEsQ0FBQyxDQUFTO1FBQ3JCLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxDQUFTO1FBQzNCLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFTSxPQUFPLENBQUMsTUFBMEM7UUFDdkQsT0FBTyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRU0sYUFBYSxDQUFDLE1BQTBDO1FBQzdELE9BQU8saUJBQWlCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFZO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ25CLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1NBQ3ZCO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQzs7Z0hBdENVLGtCQUFrQjtvR0FBbEIsa0JBQWtCLG9TQU1sQixXQUFXLGdEQzVCeEIseUVBRWM7QUQyQlo7SUFBQyxvQkFBb0IsRUFBRTs7bURBQ0g7QUFDcEI7SUFBQyxvQkFBb0IsRUFBRTs7bURBQ0g7NEZBVlQsa0JBQWtCO2tCQVg5QixTQUFTOytCQUNFLGFBQWEsVUFFZiwwQkFBMEIsUUFDNUI7d0JBQ0oscUJBQXFCLEVBQUUsTUFBTTt3QkFDN0IsU0FBUyxFQUFFLHVCQUF1Qjt3QkFDbEMsWUFBWSxFQUFFLDZCQUE2QjtxQkFDNUM7aUdBUzhCLFFBQVE7c0JBQXRDLFNBQVM7dUJBQUMsV0FBVztnQkFFdEIsT0FBTyxNQUVQLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBOdW1iZXJJbnB1dENvbnZlcnRlciB9IGZyb20gJy4uLy4uLy4uL2RlY29yYXRvcnMvaW5wdXQtY29udmVydGVyJztcbmltcG9ydCB7IElHcmlkSXRlbSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvby1ncmlkLWl0ZW0uaW50ZXJmYWNlJztcbmltcG9ydCB7IE9ic2VydmFibGVXcmFwcGVyIH0gZnJvbSAnLi4vLi4vLi4vdXRpbC9hc3luYyc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0lOUFVUU19PX0dSSURfSVRFTSA9IFtcbiAgJ2NvbHNwYW4nLFxuICAncm93c3Bhbidcbl07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ28tZ3JpZC1pdGVtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL28tZ3JpZC1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgaW5wdXRzOiBERUZBVUxUX0lOUFVUU19PX0dSSURfSVRFTSxcbiAgaG9zdDoge1xuICAgICdbY2xhc3Muby1ncmlkLWl0ZW1dJzogJ3RydWUnLFxuICAgICcoY2xpY2spJzogJ29uSXRlbUNsaWNrZWQoJGV2ZW50KScsXG4gICAgJyhkYmxjbGljayknOiAnb25JdGVtRG91YmxlQ2xpY2tlZCgkZXZlbnQpJ1xuICB9LFxuXG59KVxuZXhwb3J0IGNsYXNzIE9HcmlkSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIElHcmlkSXRlbSB7XG5cbiAgbW9kZWxEYXRhOiBvYmplY3Q7XG4gIG1kQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBtZERvdWJsZUNsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKFRlbXBsYXRlUmVmKSBwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIEBOdW1iZXJJbnB1dENvbnZlcnRlcigpXG4gIGNvbHNwYW46IG51bWJlciA9IDE7XG4gIEBOdW1iZXJJbnB1dENvbnZlcnRlcigpXG4gIHJvd3NwYW46IG51bWJlciA9IDE7XG5cbiAgY29uc3RydWN0b3IocHVibGljIF9lbDogRWxlbWVudFJlZikgeyB9XG5cbiAgb25JdGVtQ2xpY2tlZChlPzogRXZlbnQpIHtcbiAgICBPYnNlcnZhYmxlV3JhcHBlci5jYWxsRW1pdCh0aGlzLm1kQ2xpY2ssIHRoaXMpO1xuICB9XG5cbiAgb25JdGVtRG91YmxlQ2xpY2tlZChlPzogRXZlbnQpIHtcbiAgICBPYnNlcnZhYmxlV3JhcHBlci5jYWxsRW1pdCh0aGlzLm1kRG91YmxlQ2xpY2ssIHRoaXMpO1xuICB9XG5cbiAgcHVibGljIG9uQ2xpY2sob25OZXh0OiAoaXRlbTogT0dyaWRJdGVtQ29tcG9uZW50KSA9PiB2b2lkKTogb2JqZWN0IHtcbiAgICByZXR1cm4gT2JzZXJ2YWJsZVdyYXBwZXIuc3Vic2NyaWJlKHRoaXMubWRDbGljaywgb25OZXh0KTtcbiAgfVxuXG4gIHB1YmxpYyBvbkRvdWJsZUNsaWNrKG9uTmV4dDogKGl0ZW06IE9HcmlkSXRlbUNvbXBvbmVudCkgPT4gdm9pZCk6IG9iamVjdCB7XG4gICAgcmV0dXJuIE9ic2VydmFibGVXcmFwcGVyLnN1YnNjcmliZSh0aGlzLm1kRG91YmxlQ2xpY2ssIG9uTmV4dCk7XG4gIH1cblxuICBzZXRJdGVtRGF0YShkYXRhOiBvYmplY3QpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubW9kZWxEYXRhKSB7XG4gICAgICB0aGlzLm1vZGVsRGF0YSA9IGRhdGE7XG4gICAgfVxuICB9XG5cbiAgZ2V0SXRlbURhdGEoKTogb2JqZWN0IHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbERhdGE7XG4gIH1cblxufVxuIiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZXJlZj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
@@ -39,9 +39,9 @@ export class OGridItemDirective {
39
39
  this.grid = grid;
40
40
  }
41
41
  }
42
- OGridItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OGridItemDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
43
- OGridItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: OGridItemDirective, selector: "mat-grid-tile[o-grid-item]", host: { listeners: { "click": "onItemClicked($event)", "dblclick": "onItemDoubleClicked($event)", "mouseenter": "onMouseEnter()" } }, ngImport: i0 });
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OGridItemDirective, decorators: [{
42
+ OGridItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OGridItemDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
43
+ OGridItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: OGridItemDirective, selector: "mat-grid-tile[o-grid-item]", host: { listeners: { "click": "onItemClicked($event)", "dblclick": "onItemDoubleClicked($event)", "mouseenter": "onMouseEnter()" } }, ngImport: i0 });
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OGridItemDirective, decorators: [{
45
45
  type: Directive,
46
46
  args: [{
47
47
  selector: 'mat-grid-tile[o-grid-item]',
@@ -54,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
54
54
  type: HostListener,
55
55
  args: ['mouseenter']
56
56
  }] } });
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1ncmlkLWl0ZW0uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvZ3JpZC9ncmlkLWl0ZW0vby1ncmlkLWl0ZW0uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBVTFDLE1BQU0sT0FBTyxrQkFBa0I7SUFTN0IsWUFBWTtRQUNWLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEtBQUssS0FBSyxDQUFDLGdCQUFnQixFQUFFO1lBQ2hGLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQztTQUNyRTtJQUNILENBQUM7SUFFRCxZQUNTLEdBQWUsRUFDZCxRQUFtQjtRQURwQixRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQWY3QixZQUFPLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDaEQsa0JBQWEsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQWVsRCxDQUFDO0lBRUUsT0FBTyxDQUFDLE1BQTBDO1FBQ3ZELE9BQU8saUJBQWlCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVNLGFBQWEsQ0FBQyxNQUEwQztRQUM3RCxPQUFPLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxhQUFhLENBQUMsQ0FBUztRQUNyQixpQkFBaUIsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsbUJBQW1CLENBQUMsQ0FBUztRQUMzQixpQkFBaUIsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsV0FBVyxDQUFDLElBQVk7UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7U0FDdkI7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsSUFBb0I7UUFDbkMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQzs7K0dBaERVLGtCQUFrQjttR0FBbEIsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBUDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsSUFBSSxFQUFFO3dCQUNKLFNBQVMsRUFBRSx1QkFBdUI7d0JBQ2xDLFlBQVksRUFBRSw2QkFBNkI7cUJBQzVDO2lCQUNGO3lIQVVDLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGVXcmFwcGVyIH0gZnJvbSAnLi4vLi4vLi4vdXRpbC9hc3luYyc7XG5pbXBvcnQgeyBDb2RlcyB9IGZyb20gJy4uLy4uLy4uL3V0aWwvY29kZXMnO1xuaW1wb3J0IHsgVXRpbCB9IGZyb20gJy4uLy4uLy4uL3V0aWwvdXRpbCc7XG5pbXBvcnQgdHlwZSB7IE9HcmlkQ29tcG9uZW50IH0gZnJvbSAnLi4vby1ncmlkLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ21hdC1ncmlkLXRpbGVbby1ncmlkLWl0ZW1dJyxcbiAgaG9zdDoge1xuICAgICcoY2xpY2spJzogJ29uSXRlbUNsaWNrZWQoJGV2ZW50KScsXG4gICAgJyhkYmxjbGljayknOiAnb25JdGVtRG91YmxlQ2xpY2tlZCgkZXZlbnQpJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE9HcmlkSXRlbURpcmVjdGl2ZSB7XG5cbiAgbWRDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIG1kRG91YmxlQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBtb2RlbERhdGE6IG9iamVjdDtcblxuICBwcm90ZWN0ZWQgZ3JpZDogT0dyaWRDb21wb25lbnQ7XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicpXG4gIG9uTW91c2VFbnRlcigpOiB2b2lkIHtcbiAgICBpZiAoVXRpbC5pc0RlZmluZWQodGhpcy5ncmlkKSAmJiB0aGlzLmdyaWQuZGV0YWlsTW9kZSAhPT0gQ29kZXMuREVUQUlMX01PREVfTk9ORSkge1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLl9lbC5uYXRpdmVFbGVtZW50LCAnY3Vyc29yJywgJ3BvaW50ZXInKTtcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgX2VsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICApIHsgfVxuXG4gIHB1YmxpYyBvbkNsaWNrKG9uTmV4dDogKGl0ZW06IE9HcmlkSXRlbURpcmVjdGl2ZSkgPT4gdm9pZCk6IG9iamVjdCB7XG4gICAgcmV0dXJuIE9ic2VydmFibGVXcmFwcGVyLnN1YnNjcmliZSh0aGlzLm1kQ2xpY2ssIG9uTmV4dCk7XG4gIH1cblxuICBwdWJsaWMgb25Eb3VibGVDbGljayhvbk5leHQ6IChpdGVtOiBPR3JpZEl0ZW1EaXJlY3RpdmUpID0+IHZvaWQpOiBvYmplY3Qge1xuICAgIHJldHVybiBPYnNlcnZhYmxlV3JhcHBlci5zdWJzY3JpYmUodGhpcy5tZERvdWJsZUNsaWNrLCBvbk5leHQpO1xuICB9XG5cbiAgb25JdGVtQ2xpY2tlZChlPzogRXZlbnQpOiB2b2lkIHtcbiAgICBPYnNlcnZhYmxlV3JhcHBlci5jYWxsRW1pdCh0aGlzLm1kQ2xpY2ssIHRoaXMpO1xuICB9XG5cbiAgb25JdGVtRG91YmxlQ2xpY2tlZChlPzogRXZlbnQpOiB2b2lkIHtcbiAgICBPYnNlcnZhYmxlV3JhcHBlci5jYWxsRW1pdCh0aGlzLm1kRG91YmxlQ2xpY2ssIHRoaXMpO1xuICB9XG5cbiAgc2V0SXRlbURhdGEoZGF0YTogb2JqZWN0KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm1vZGVsRGF0YSkge1xuICAgICAgdGhpcy5tb2RlbERhdGEgPSBkYXRhO1xuICAgIH1cbiAgfVxuXG4gIGdldEl0ZW1EYXRhKCk6IG9iamVjdCB7XG4gICAgcmV0dXJuIHRoaXMubW9kZWxEYXRhO1xuICB9XG5cbiAgc2V0R3JpZENvbXBvbmVudChncmlkOiBPR3JpZENvbXBvbmVudCk6IHZvaWQge1xuICAgIHRoaXMuZ3JpZCA9IGdyaWQ7XG4gIH1cblxufVxuIl19
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1ncmlkLWl0ZW0uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvZ3JpZC9ncmlkLWl0ZW0vby1ncmlkLWl0ZW0uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBVTFDLE1BQU0sT0FBTyxrQkFBa0I7SUFTN0IsWUFBWTtRQUNWLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEtBQUssS0FBSyxDQUFDLGdCQUFnQixFQUFFO1lBQ2hGLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQztTQUNyRTtJQUNILENBQUM7SUFFRCxZQUNTLEdBQWUsRUFDZCxRQUFtQjtRQURwQixRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQWY3QixZQUFPLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDaEQsa0JBQWEsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQWVsRCxDQUFDO0lBRUUsT0FBTyxDQUFDLE1BQTBDO1FBQ3ZELE9BQU8saUJBQWlCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVNLGFBQWEsQ0FBQyxNQUEwQztRQUM3RCxPQUFPLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxhQUFhLENBQUMsQ0FBUztRQUNyQixpQkFBaUIsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsbUJBQW1CLENBQUMsQ0FBUztRQUMzQixpQkFBaUIsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsV0FBVyxDQUFDLElBQVk7UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7U0FDdkI7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsSUFBb0I7UUFDbkMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQzs7Z0hBaERVLGtCQUFrQjtvR0FBbEIsa0JBQWtCOzRGQUFsQixrQkFBa0I7a0JBUDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsSUFBSSxFQUFFO3dCQUNKLFNBQVMsRUFBRSx1QkFBdUI7d0JBQ2xDLFlBQVksRUFBRSw2QkFBNkI7cUJBQzVDO2lCQUNGO3lIQVVDLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGVXcmFwcGVyIH0gZnJvbSAnLi4vLi4vLi4vdXRpbC9hc3luYyc7XG5pbXBvcnQgeyBDb2RlcyB9IGZyb20gJy4uLy4uLy4uL3V0aWwvY29kZXMnO1xuaW1wb3J0IHsgVXRpbCB9IGZyb20gJy4uLy4uLy4uL3V0aWwvdXRpbCc7XG5pbXBvcnQgdHlwZSB7IE9HcmlkQ29tcG9uZW50IH0gZnJvbSAnLi4vby1ncmlkLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ21hdC1ncmlkLXRpbGVbby1ncmlkLWl0ZW1dJyxcbiAgaG9zdDoge1xuICAgICcoY2xpY2spJzogJ29uSXRlbUNsaWNrZWQoJGV2ZW50KScsXG4gICAgJyhkYmxjbGljayknOiAnb25JdGVtRG91YmxlQ2xpY2tlZCgkZXZlbnQpJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE9HcmlkSXRlbURpcmVjdGl2ZSB7XG5cbiAgbWRDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIG1kRG91YmxlQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBtb2RlbERhdGE6IG9iamVjdDtcblxuICBwcm90ZWN0ZWQgZ3JpZDogT0dyaWRDb21wb25lbnQ7XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicpXG4gIG9uTW91c2VFbnRlcigpOiB2b2lkIHtcbiAgICBpZiAoVXRpbC5pc0RlZmluZWQodGhpcy5ncmlkKSAmJiB0aGlzLmdyaWQuZGV0YWlsTW9kZSAhPT0gQ29kZXMuREVUQUlMX01PREVfTk9ORSkge1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLl9lbC5uYXRpdmVFbGVtZW50LCAnY3Vyc29yJywgJ3BvaW50ZXInKTtcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgX2VsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICApIHsgfVxuXG4gIHB1YmxpYyBvbkNsaWNrKG9uTmV4dDogKGl0ZW06IE9HcmlkSXRlbURpcmVjdGl2ZSkgPT4gdm9pZCk6IG9iamVjdCB7XG4gICAgcmV0dXJuIE9ic2VydmFibGVXcmFwcGVyLnN1YnNjcmliZSh0aGlzLm1kQ2xpY2ssIG9uTmV4dCk7XG4gIH1cblxuICBwdWJsaWMgb25Eb3VibGVDbGljayhvbk5leHQ6IChpdGVtOiBPR3JpZEl0ZW1EaXJlY3RpdmUpID0+IHZvaWQpOiBvYmplY3Qge1xuICAgIHJldHVybiBPYnNlcnZhYmxlV3JhcHBlci5zdWJzY3JpYmUodGhpcy5tZERvdWJsZUNsaWNrLCBvbk5leHQpO1xuICB9XG5cbiAgb25JdGVtQ2xpY2tlZChlPzogRXZlbnQpOiB2b2lkIHtcbiAgICBPYnNlcnZhYmxlV3JhcHBlci5jYWxsRW1pdCh0aGlzLm1kQ2xpY2ssIHRoaXMpO1xuICB9XG5cbiAgb25JdGVtRG91YmxlQ2xpY2tlZChlPzogRXZlbnQpOiB2b2lkIHtcbiAgICBPYnNlcnZhYmxlV3JhcHBlci5jYWxsRW1pdCh0aGlzLm1kRG91YmxlQ2xpY2ssIHRoaXMpO1xuICB9XG5cbiAgc2V0SXRlbURhdGEoZGF0YTogb2JqZWN0KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm1vZGVsRGF0YSkge1xuICAgICAgdGhpcy5tb2RlbERhdGEgPSBkYXRhO1xuICAgIH1cbiAgfVxuXG4gIGdldEl0ZW1EYXRhKCk6IG9iamVjdCB7XG4gICAgcmV0dXJuIHRoaXMubW9kZWxEYXRhO1xuICB9XG5cbiAgc2V0R3JpZENvbXBvbmVudChncmlkOiBPR3JpZENvbXBvbmVudCk6IHZvaWQge1xuICAgIHRoaXMuZ3JpZCA9IGdyaWQ7XG4gIH1cblxufVxuIl19