ontimize-web-ngx 15.0.0-beta.5 → 15.0.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 (372) 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 +13 -22
  60. package/esm2020/lib/components/form/navigation/o-form.navigation.class.mjs +5 -2
  61. package/esm2020/lib/components/form/o-form.component.mjs +4 -4
  62. package/esm2020/lib/components/form/o-form.module.mjs +5 -5
  63. package/esm2020/lib/components/form/services/o-form-message.service.mjs +4 -4
  64. package/esm2020/lib/components/form/toolbar/o-form-toolbar.component.mjs +4 -4
  65. package/esm2020/lib/components/form/toolbar/o-form-toolbar.module.mjs +5 -5
  66. package/esm2020/lib/components/form-container/o-form-container.component.mjs +4 -4
  67. package/esm2020/lib/components/form-container/o-form-container.module.mjs +5 -5
  68. package/esm2020/lib/components/grid/grid-item/o-grid-item.component.mjs +4 -4
  69. package/esm2020/lib/components/grid/grid-item/o-grid-item.directive.mjs +4 -4
  70. package/esm2020/lib/components/grid/o-grid.component.mjs +11 -11
  71. package/esm2020/lib/components/grid/o-grid.module.mjs +9 -7
  72. package/esm2020/lib/components/grid/skeketon/o-grid-skeleton/o-grid-skeleton.component.mjs +26 -0
  73. package/esm2020/lib/components/image/fullscreen/fullscreen-dialog.component.mjs +4 -4
  74. package/esm2020/lib/components/image/o-image.component.mjs +5 -5
  75. package/esm2020/lib/components/image/o-image.module.mjs +5 -5
  76. package/esm2020/lib/components/index.mjs +2 -1
  77. package/esm2020/lib/components/input/checkbox/o-checkbox.component.mjs +4 -4
  78. package/esm2020/lib/components/input/checkbox/o-checkbox.module.mjs +5 -5
  79. package/esm2020/lib/components/input/combo/combo-renderer/boolean/o-combo-renderer-boolean.component.mjs +4 -4
  80. package/esm2020/lib/components/input/combo/combo-renderer/currency/o-combo-renderer-currency.component.mjs +4 -4
  81. package/esm2020/lib/components/input/combo/combo-renderer/date/o-combo-renderer-date.component.mjs +4 -4
  82. package/esm2020/lib/components/input/combo/combo-renderer/icon/o-combo-renderer-icon.component.mjs +4 -4
  83. package/esm2020/lib/components/input/combo/combo-renderer/integer/o-combo-renderer-integer.component.mjs +4 -4
  84. package/esm2020/lib/components/input/combo/combo-renderer/o-combo-renderer.class.mjs +4 -4
  85. package/esm2020/lib/components/input/combo/combo-renderer/percentage/o-combo-renderer-percentage.component.mjs +4 -4
  86. package/esm2020/lib/components/input/combo/combo-renderer/real/o-combo-renderer-real.component.mjs +4 -4
  87. package/esm2020/lib/components/input/combo/combo-search/o-combo-search.component.mjs +4 -4
  88. package/esm2020/lib/components/input/combo/o-combo.component.mjs +4 -4
  89. package/esm2020/lib/components/input/combo/o-combo.module.mjs +5 -5
  90. package/esm2020/lib/components/input/currency-input/o-currency-input.component.mjs +4 -4
  91. package/esm2020/lib/components/input/currency-input/o-currency-input.module.mjs +5 -5
  92. package/esm2020/lib/components/input/date-input/o-date-input.component.mjs +4 -4
  93. package/esm2020/lib/components/input/date-input/o-date-input.module.mjs +5 -5
  94. package/esm2020/lib/components/input/date-range/o-daterange-input.component.mjs +4 -4
  95. package/esm2020/lib/components/input/date-range/o-daterange-input.directive.mjs +4 -4
  96. package/esm2020/lib/components/input/date-range/o-daterange-input.module.mjs +5 -5
  97. package/esm2020/lib/components/input/date-range/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 +7 -7
  101. package/esm2020/lib/components/input/file-input/o-file-input.module.mjs +5 -5
  102. package/esm2020/lib/components/input/hour-input/o-hour-input.component.mjs +4 -4
  103. package/esm2020/lib/components/input/hour-input/o-hour-input.module.mjs +5 -5
  104. package/esm2020/lib/components/input/html-input/o-html-input.component.mjs +4 -4
  105. package/esm2020/lib/components/input/html-input/o-html-input.module.mjs +5 -5
  106. package/esm2020/lib/components/input/integer-input/o-integer-input.component.mjs +4 -4
  107. package/esm2020/lib/components/input/integer-input/o-integer-input.module.mjs +5 -5
  108. package/esm2020/lib/components/input/listpicker/listpicker-renderer/currency/o-list-picker-renderer-currency.component.mjs +4 -4
  109. package/esm2020/lib/components/input/listpicker/listpicker-renderer/date/o-list-picker-renderer-date.component.mjs +4 -4
  110. package/esm2020/lib/components/input/listpicker/listpicker-renderer/integer/o-list-picker-renderer-integer.component.mjs +4 -4
  111. package/esm2020/lib/components/input/listpicker/listpicker-renderer/o-list-picker-renderer.class.mjs +4 -4
  112. package/esm2020/lib/components/input/listpicker/listpicker-renderer/percentage/o-list-picker-renderer-percentage.component.mjs +4 -4
  113. package/esm2020/lib/components/input/listpicker/listpicker-renderer/real/o-list-picker-renderer-real.component.mjs +4 -4
  114. package/esm2020/lib/components/input/listpicker/o-list-picker-dialog.component.mjs +4 -4
  115. package/esm2020/lib/components/input/listpicker/o-list-picker.component.mjs +4 -4
  116. package/esm2020/lib/components/input/listpicker/o-list-picker.module.mjs +5 -5
  117. package/esm2020/lib/components/input/nif-input/o-nif-input.component.mjs +4 -4
  118. package/esm2020/lib/components/input/nif-input/o-nif-input.module.mjs +5 -5
  119. package/esm2020/lib/components/input/o-boolean-form-data-component.class.mjs +4 -4
  120. package/esm2020/lib/components/input/o-form-service-component.class.mjs +4 -4
  121. package/esm2020/lib/components/input/password-input/o-password-input.component.mjs +4 -4
  122. package/esm2020/lib/components/input/password-input/o-password-input.module.mjs +5 -5
  123. package/esm2020/lib/components/input/percent-input/o-percent-input.component.mjs +4 -4
  124. package/esm2020/lib/components/input/percent-input/o-percent-input.module.mjs +5 -5
  125. package/esm2020/lib/components/input/phone-input/data/country-code.mjs +4 -4
  126. package/esm2020/lib/components/input/phone-input/o-phone-input.component.mjs +4 -4
  127. package/esm2020/lib/components/input/phone-input/o-phone-input.module.mjs +5 -5
  128. package/esm2020/lib/components/input/radio/o-radio.component.mjs +4 -4
  129. package/esm2020/lib/components/input/radio/o-radio.module.mjs +5 -5
  130. package/esm2020/lib/components/input/real-input/o-real-input.component.mjs +4 -4
  131. package/esm2020/lib/components/input/real-input/o-real-input.module.mjs +5 -5
  132. package/esm2020/lib/components/input/search-input/o-search-input.component.mjs +4 -4
  133. package/esm2020/lib/components/input/search-input/o-search-input.module.mjs +5 -5
  134. package/esm2020/lib/components/input/slide-toggle/o-slide-toggle.component.mjs +4 -4
  135. package/esm2020/lib/components/input/slide-toggle/o-slide-toggle.module.mjs +5 -5
  136. package/esm2020/lib/components/input/slider/o-slider.component.mjs +4 -4
  137. package/esm2020/lib/components/input/slider/o-slider.module.mjs +5 -5
  138. package/esm2020/lib/components/input/text-input/o-text-input.component.mjs +4 -4
  139. package/esm2020/lib/components/input/text-input/o-text-input.module.mjs +5 -5
  140. package/esm2020/lib/components/input/textarea-input/o-textarea-input.component.mjs +4 -4
  141. package/esm2020/lib/components/input/textarea-input/o-textarea-input.module.mjs +5 -5
  142. package/esm2020/lib/components/input/time-input/o-time-input.component.mjs +4 -4
  143. package/esm2020/lib/components/input/time-input/o-time-input.module.mjs +5 -5
  144. package/esm2020/lib/components/language-selector/o-language-selector.component.mjs +4 -4
  145. package/esm2020/lib/components/language-selector/o-language-selector.module.mjs +5 -5
  146. package/esm2020/lib/components/list/list-item/o-list-item.component.mjs +4 -4
  147. package/esm2020/lib/components/list/list-item/o-list-item.directive.mjs +4 -4
  148. package/esm2020/lib/components/list/o-list.component.mjs +14 -15
  149. package/esm2020/lib/components/list/o-list.module.mjs +12 -8
  150. package/esm2020/lib/components/list/renderers/avatar/o-list-item-avatar.component.mjs +4 -4
  151. package/esm2020/lib/components/list/renderers/card/o-list-item-card.component.mjs +4 -4
  152. package/esm2020/lib/components/list/renderers/card-image/o-list-item-card-image.component.mjs +4 -4
  153. package/esm2020/lib/components/list/renderers/o-list-item-card-renderer.class.mjs +4 -4
  154. package/esm2020/lib/components/list/renderers/o-list-item-text-renderer.class.mjs +4 -4
  155. package/esm2020/lib/components/list/renderers/text/o-list-item-text.component.mjs +4 -4
  156. package/esm2020/lib/components/list/skeleton/o-list-skeleton/o-list-skeleton.component.mjs +26 -0
  157. package/esm2020/lib/components/material/ckeditor/ck-editor.component.mjs +4 -4
  158. package/esm2020/lib/components/material/ckeditor/ck-editor.module.mjs +5 -5
  159. package/esm2020/lib/components/o-data-toolbar/o-data-toolbar.component.mjs +4 -4
  160. package/esm2020/lib/components/o-data-toolbar/o-data-toolbar.module.mjs +5 -5
  161. package/esm2020/lib/components/o-form-data-component.class.mjs +4 -4
  162. package/esm2020/lib/components/o-service-base-component.class.mjs +10 -10
  163. package/esm2020/lib/components/o-service-component.class.mjs +17 -11
  164. package/esm2020/lib/components/o-skeleton.component.mjs +21 -0
  165. package/esm2020/lib/components/table/column/calculated/o-table-column-calculated.component.mjs +4 -4
  166. package/esm2020/lib/components/table/column/cell-editor/boolean/o-table-cell-editor-boolean.component.mjs +4 -4
  167. package/esm2020/lib/components/table/column/cell-editor/date/o-table-cell-editor-date.component.mjs +4 -4
  168. package/esm2020/lib/components/table/column/cell-editor/email/o-table-cell-editor-email.component.mjs +4 -4
  169. package/esm2020/lib/components/table/column/cell-editor/integer/o-table-cell-editor-integer.component.mjs +4 -4
  170. package/esm2020/lib/components/table/column/cell-editor/o-base-table-cell-editor.class.mjs +4 -4
  171. package/esm2020/lib/components/table/column/cell-editor/real/o-table-cell-editor-real.component.mjs +4 -4
  172. package/esm2020/lib/components/table/column/cell-editor/text/o-table-cell-editor-text.component.mjs +4 -4
  173. package/esm2020/lib/components/table/column/cell-editor/time/o-table-cell-editor-time.component.mjs +4 -4
  174. package/esm2020/lib/components/table/column/cell-renderer/action/o-table-cell-renderer-action.component.mjs +4 -4
  175. package/esm2020/lib/components/table/column/cell-renderer/boolean/o-table-cell-renderer-boolean.component.mjs +4 -4
  176. package/esm2020/lib/components/table/column/cell-renderer/currency/o-table-cell-renderer-currency.component.mjs +4 -4
  177. package/esm2020/lib/components/table/column/cell-renderer/date/o-table-cell-renderer-date.component.mjs +4 -4
  178. package/esm2020/lib/components/table/column/cell-renderer/image/o-table-cell-renderer-image.component.mjs +4 -4
  179. package/esm2020/lib/components/table/column/cell-renderer/integer/o-table-cell-renderer-integer.component.mjs +4 -4
  180. package/esm2020/lib/components/table/column/cell-renderer/o-base-table-cell-renderer.class.mjs +4 -4
  181. package/esm2020/lib/components/table/column/cell-renderer/percentage/o-table-cell-renderer-percentage.component.mjs +4 -4
  182. package/esm2020/lib/components/table/column/cell-renderer/real/o-table-cell-renderer-real.component.mjs +4 -4
  183. package/esm2020/lib/components/table/column/cell-renderer/service/o-table-cell-renderer-service.component.mjs +4 -4
  184. package/esm2020/lib/components/table/column/cell-renderer/time/o-table-cell-renderer-time.component.mjs +4 -4
  185. package/esm2020/lib/components/table/column/cell-renderer/translate/o-table-cell-renderer-translate.component.mjs +4 -4
  186. package/esm2020/lib/components/table/column/o-table-column.component.mjs +4 -4
  187. package/esm2020/lib/components/table/extensions/contextmenu/o-table-context-menu.component.mjs +4 -4
  188. package/esm2020/lib/components/table/extensions/default-o-table.datasource.mjs +2 -2
  189. package/esm2020/lib/components/table/extensions/dialog/apply-configuration/o-table-apply-configuration-dialog.component.mjs +4 -4
  190. package/esm2020/lib/components/table/extensions/dialog/export/o-table-export-dialog.component.mjs +4 -4
  191. package/esm2020/lib/components/table/extensions/dialog/filter-by-column/o-table-filter-by-column-data-dialog.component.mjs +4 -4
  192. package/esm2020/lib/components/table/extensions/dialog/group-by-columns/o-table-group-by-columns-dialog.component.mjs +4 -4
  193. package/esm2020/lib/components/table/extensions/dialog/o-table-base-dialog.class.mjs +4 -4
  194. package/esm2020/lib/components/table/extensions/dialog/store-configuration/o-table-store-configuration-dialog.component.mjs +4 -4
  195. package/esm2020/lib/components/table/extensions/dialog/visible-columns/o-table-visible-columns-dialog.component.mjs +4 -4
  196. package/esm2020/lib/components/table/extensions/export-button/o-table-export-button.component.mjs +4 -4
  197. package/esm2020/lib/components/table/extensions/export-button/o-table-export-button.service.mjs +4 -4
  198. package/esm2020/lib/components/table/extensions/footer/aggregate/o-table-column-aggregate.component.mjs +4 -4
  199. package/esm2020/lib/components/table/extensions/footer/expanded/o-table-expanded-footer.directive.mjs +4 -4
  200. package/esm2020/lib/components/table/extensions/footer/paginator/o-table-mat-paginator-intl.mjs +4 -4
  201. package/esm2020/lib/components/table/extensions/footer/paginator/o-table-paginator.component.mjs +4 -4
  202. package/esm2020/lib/components/table/extensions/header/table-button/o-table-button.component.mjs +4 -4
  203. package/esm2020/lib/components/table/extensions/header/table-buttons/o-table-buttons.component.mjs +4 -4
  204. package/esm2020/lib/components/table/extensions/header/table-column-resizer/o-table-column-resizer.component.mjs +4 -4
  205. package/esm2020/lib/components/table/extensions/header/table-column-select-all/o-table-column-select-all.directive.mjs +4 -4
  206. package/esm2020/lib/components/table/extensions/header/table-columns-filter/columns/o-table-columns-filter-column.component.mjs +4 -4
  207. package/esm2020/lib/components/table/extensions/header/table-columns-filter/o-table-columns-filter.component.mjs +4 -4
  208. package/esm2020/lib/components/table/extensions/header/table-columns-grouping/columns/o-table-columns-grouping-column.component.mjs +4 -4
  209. package/esm2020/lib/components/table/extensions/header/table-columns-grouping/o-table-columns-grouping.component.mjs +4 -4
  210. package/esm2020/lib/components/table/extensions/header/table-header/o-table-header.component.mjs +4 -4
  211. package/esm2020/lib/components/table/extensions/header/table-header-column-filter-icon/o-table-header-column-filter-icon.component.mjs +4 -4
  212. package/esm2020/lib/components/table/extensions/header/table-header-select-all/o-table-header-select-all.component.mjs +4 -4
  213. package/esm2020/lib/components/table/extensions/header/table-insertable-row/o-table-insertable-row.component.mjs +4 -4
  214. package/esm2020/lib/components/table/extensions/header/table-menu/o-table-menu.component.mjs +4 -4
  215. package/esm2020/lib/components/table/extensions/header/table-option/o-table-option.component.mjs +4 -4
  216. package/esm2020/lib/components/table/extensions/header/table-quickfilter/o-table-quickfilter.component.mjs +4 -4
  217. package/esm2020/lib/components/table/extensions/o-table-datasource.service.mjs +4 -4
  218. package/esm2020/lib/components/table/extensions/o-table-strategy.service.mjs +4 -4
  219. package/esm2020/lib/components/table/extensions/pipes/o-table-row-class.pipe.mjs +4 -4
  220. package/esm2020/lib/components/table/extensions/row/o-table-row.directive.mjs +4 -4
  221. package/esm2020/lib/components/table/extensions/row/table-row-expandable/o-table-row-expandable.component.mjs +4 -4
  222. package/esm2020/lib/components/table/extensions/skeleton/o-table-skeleton/o-table-skeleton.component.mjs +26 -0
  223. package/esm2020/lib/components/table/extensions/sort/o-mat-sort-header.mjs +4 -4
  224. package/esm2020/lib/components/table/extensions/sort/o-mat-sort-module.mjs +5 -5
  225. package/esm2020/lib/components/table/extensions/sort/o-mat-sort.mjs +4 -4
  226. package/esm2020/lib/components/table/o-table.component.mjs +37 -38
  227. package/esm2020/lib/components/table/o-table.module.mjs +14 -7
  228. package/esm2020/lib/components/tree/header/index.mjs +2 -0
  229. package/esm2020/lib/components/tree/header/tree-menu/o-tree-menu.component.mjs +33 -0
  230. package/esm2020/lib/components/tree/index.mjs +5 -0
  231. package/esm2020/lib/components/tree/o-tree-dao.service.mjs +43 -0
  232. package/esm2020/lib/components/tree/o-tree.component.mjs +523 -0
  233. package/esm2020/lib/components/tree/o-tree.datasource.mjs +79 -0
  234. package/esm2020/lib/components/tree/o-tree.module.mjs +24 -0
  235. package/esm2020/lib/components/tree/tree-node/tree-node.component.mjs +49 -0
  236. package/esm2020/lib/components/user-info/o-user-info.component.mjs +4 -4
  237. package/esm2020/lib/components/user-info/o-user-info.module.mjs +5 -5
  238. package/esm2020/lib/components/user-info/user-info-configuration/o-user-info-configuration.directive.mjs +4 -4
  239. package/esm2020/lib/components/user-info/user-info-configuration-item/o-user-info-configuration-item.directive.mjs +4 -4
  240. package/esm2020/lib/config/o-modules.mjs +12 -10
  241. package/esm2020/lib/directives/keyboard-listener.directive.mjs +4 -4
  242. package/esm2020/lib/directives/locker.directive.mjs +4 -4
  243. package/esm2020/lib/directives/o-file-drag-and-drop.directive.mjs +4 -4
  244. package/esm2020/lib/directives/o-hidden.directive.mjs +4 -4
  245. package/esm2020/lib/directives/o-mat-error.directive.mjs +4 -4
  246. package/esm2020/lib/directives/o-mat-prefix.directive.mjs +4 -4
  247. package/esm2020/lib/directives/o-mat-suffix.directive.mjs +4 -4
  248. package/esm2020/lib/directives/o-tab-group.directive.mjs +4 -4
  249. package/esm2020/lib/i18n/i18n.mjs +6 -3
  250. package/esm2020/lib/layouts/app-layout/app-layout-header/o-app-layout-header.component.mjs +4 -4
  251. package/esm2020/lib/layouts/app-layout/app-layout-sidenav/o-app-layout-sidenav.component.mjs +4 -4
  252. package/esm2020/lib/layouts/app-layout/o-app-layout.component.mjs +4 -4
  253. package/esm2020/lib/layouts/app-layout/o-app-layout.module.mjs +5 -5
  254. package/esm2020/lib/layouts/card-menu-layout/o-card-menu-layout.component.mjs +4 -4
  255. package/esm2020/lib/layouts/card-menu-layout/o-card-menu-layout.module.mjs +5 -5
  256. package/esm2020/lib/layouts/form-layout/dialog/o-form-layout-dialog.component.mjs +4 -4
  257. package/esm2020/lib/layouts/form-layout/dialog/options/o-form-layout-dialog-options.directive.mjs +4 -4
  258. package/esm2020/lib/layouts/form-layout/directives/o-form-layout-manager-content.directive.mjs +4 -4
  259. package/esm2020/lib/layouts/form-layout/guards/o-form-layout-can-activate-child.guard.mjs +4 -4
  260. package/esm2020/lib/layouts/form-layout/o-form-layout-manager.component.mjs +4 -4
  261. package/esm2020/lib/layouts/form-layout/o-form-layout-manager.module.mjs +5 -5
  262. package/esm2020/lib/layouts/form-layout/split-pane/o-form-layout-split-pane.component.mjs +6 -8
  263. package/esm2020/lib/layouts/form-layout/split-pane/options/o-form-layout-split-pane-options.directive.mjs +4 -4
  264. package/esm2020/lib/layouts/form-layout/tabgroup/o-form-layout-tabgroup.component.mjs +5 -5
  265. package/esm2020/lib/layouts/form-layout/tabgroup/options/o-form-layout-tabgroup-options.directive.mjs +4 -4
  266. package/esm2020/lib/ontimize-web-ngx.module.mjs +6 -5
  267. package/esm2020/lib/pipes/columns-filter.pipe.mjs +4 -4
  268. package/esm2020/lib/pipes/o-currency.pipe.mjs +4 -4
  269. package/esm2020/lib/pipes/o-icon.pipe.mjs +4 -4
  270. package/esm2020/lib/pipes/o-integer.pipe.mjs +4 -4
  271. package/esm2020/lib/pipes/o-moment.pipe.mjs +4 -4
  272. package/esm2020/lib/pipes/o-percentage.pipe.mjs +4 -4
  273. package/esm2020/lib/pipes/o-real.pipe.mjs +4 -4
  274. package/esm2020/lib/pipes/o-safe.pipe.mjs +4 -4
  275. package/esm2020/lib/pipes/o-translate.pipe.mjs +8 -8
  276. package/esm2020/lib/pipes/order-by.pipe.mjs +4 -4
  277. package/esm2020/lib/services/app-menu.service.mjs +4 -4
  278. package/esm2020/lib/services/appearance.service.mjs +4 -4
  279. package/esm2020/lib/services/auth-guard.service.mjs +4 -4
  280. package/esm2020/lib/services/auth.service.mjs +4 -4
  281. package/esm2020/lib/services/currency.service.mjs +4 -4
  282. package/esm2020/lib/services/dialog.service.mjs +4 -4
  283. package/esm2020/lib/services/icon.service.mjs +4 -4
  284. package/esm2020/lib/services/local-storage.service.mjs +4 -4
  285. package/esm2020/lib/services/login-storage.service.mjs +4 -4
  286. package/esm2020/lib/services/moment.service.mjs +4 -4
  287. package/esm2020/lib/services/navigation.service.mjs +4 -4
  288. package/esm2020/lib/services/number.service.mjs +4 -4
  289. package/esm2020/lib/services/o-auth.service.mjs +4 -4
  290. package/esm2020/lib/services/o-breadcrumb.service.mjs +4 -4
  291. package/esm2020/lib/services/o-error-dialog-manager.service.mjs +4 -4
  292. package/esm2020/lib/services/o-form-layout-manager.service.mjs +4 -4
  293. package/esm2020/lib/services/o-modules-info.service.mjs +4 -4
  294. package/esm2020/lib/services/o-user-info.service.mjs +4 -4
  295. package/esm2020/lib/services/ontimize/ontimize-base-service.class.mjs +4 -4
  296. package/esm2020/lib/services/ontimize/ontimize-ee.service.mjs +4 -4
  297. package/esm2020/lib/services/ontimize/ontimize-export-3xx.service.mjs +4 -4
  298. package/esm2020/lib/services/ontimize/ontimize-export.service.mjs +4 -4
  299. package/esm2020/lib/services/ontimize/ontimize-file.service.mjs +4 -4
  300. package/esm2020/lib/services/ontimize/ontimize-service-response.adapter.mjs +4 -4
  301. package/esm2020/lib/services/ontimize/ontimize.service.mjs +4 -4
  302. package/esm2020/lib/services/ontimize-export-data-base-provider.service.mjs +4 -4
  303. package/esm2020/lib/services/ontimize-export-data-provider-3x.service.mjs +4 -4
  304. package/esm2020/lib/services/ontimize-export-data-provider.service.mjs +4 -4
  305. package/esm2020/lib/services/ontimize-icon-registry.service.mjs +4 -4
  306. package/esm2020/lib/services/parser/o-service-response.parser.mjs +4 -4
  307. package/esm2020/lib/services/permissions/o-permissions.module.mjs +5 -7
  308. package/esm2020/lib/services/permissions/ontimize-ee-permissions.service.mjs +4 -4
  309. package/esm2020/lib/services/permissions/ontimize-permissions.service.mjs +4 -4
  310. package/esm2020/lib/services/permissions/permissions-can-activate.guard.mjs +4 -4
  311. package/esm2020/lib/services/permissions/permissions.service.mjs +20 -10
  312. package/esm2020/lib/services/remote-config.service.mjs +5 -5
  313. package/esm2020/lib/services/share-can-activate-child.service.mjs +4 -4
  314. package/esm2020/lib/services/snackbar.service.mjs +4 -4
  315. package/esm2020/lib/services/state/o-component-state.service.mjs +10 -10
  316. package/esm2020/lib/services/state/o-filter-builder-component-state.service.mjs +4 -4
  317. package/esm2020/lib/services/state/o-form-layout-manager-component-state.service.mjs +4 -4
  318. package/esm2020/lib/services/state/o-grid-component-state.service.mjs +4 -4
  319. package/esm2020/lib/services/state/o-list-component-state.service.mjs +4 -4
  320. package/esm2020/lib/services/state/o-table-component-state.service.mjs +4 -4
  321. package/esm2020/lib/services/state/o-tree-component-state.class.mjs +4 -0
  322. package/esm2020/lib/services/state/o-tree-component-state.service.mjs +50 -0
  323. package/esm2020/lib/services/translate/o-translate.parser.mjs +4 -4
  324. package/esm2020/lib/services/translate/o-translate.service.mjs +4 -4
  325. package/esm2020/lib/shared/components/dialog/o-dialog-internal.component.mjs +4 -4
  326. package/esm2020/lib/shared/components/dialog/o-dialog.component.mjs +4 -4
  327. package/esm2020/lib/shared/components/error403/o-error-403.component.mjs +4 -4
  328. package/esm2020/lib/shared/components/filter/load-filter/o-load-filter-dialog.component.mjs +4 -4
  329. package/esm2020/lib/shared/components/filter/store-filter/o-store-filter-dialog.component.mjs +4 -4
  330. package/esm2020/lib/shared/components/snackbar/o-snackbar-base.class.mjs +4 -4
  331. package/esm2020/lib/shared/components/snackbar/o-snackbar.component.mjs +4 -4
  332. package/esm2020/lib/shared/components/validation/o-error.component.mjs +4 -4
  333. package/esm2020/lib/shared/components/validation/o-validator.component.mjs +4 -4
  334. package/esm2020/lib/shared/material/custom.material.module.mjs +5 -5
  335. package/esm2020/lib/shared/material/date/ontimize-moment-date-adapter.mjs +4 -4
  336. package/esm2020/lib/shared/shared.module.mjs +5 -5
  337. package/esm2020/lib/util/util.mjs +11 -8
  338. package/fesm2015/ontimize-web-ngx.mjs +7405 -6605
  339. package/fesm2015/ontimize-web-ngx.mjs.map +1 -1
  340. package/fesm2020/ontimize-web-ngx.mjs +6431 -5636
  341. package/fesm2020/ontimize-web-ngx.mjs.map +1 -1
  342. package/lib/components/grid/o-grid.module.d.ts +8 -6
  343. package/lib/components/grid/skeketon/o-grid-skeleton/o-grid-skeleton.component.d.ts +11 -0
  344. package/lib/components/index.d.ts +1 -0
  345. package/lib/components/input/file-input/o-file-input.component.d.ts +1 -1
  346. package/lib/components/list/o-list.module.d.ts +8 -6
  347. package/lib/components/list/skeleton/o-list-skeleton/o-list-skeleton.component.d.ts +11 -0
  348. package/lib/components/o-service-component.class.d.ts +2 -1
  349. package/lib/components/o-skeleton.component.d.ts +14 -0
  350. package/lib/components/table/extensions/skeleton/o-table-skeleton/o-table-skeleton.component.d.ts +11 -0
  351. package/lib/components/table/o-table.component.d.ts +3 -1
  352. package/lib/components/table/o-table.module.d.ts +14 -12
  353. package/lib/components/tree/header/index.d.ts +1 -0
  354. package/lib/components/tree/header/tree-menu/o-tree-menu.component.d.ts +13 -0
  355. package/lib/components/tree/index.d.ts +4 -0
  356. package/lib/components/tree/o-tree-dao.service.d.ts +18 -0
  357. package/lib/components/tree/o-tree.component.d.ts +111 -0
  358. package/lib/components/tree/o-tree.datasource.d.ts +22 -0
  359. package/lib/components/tree/o-tree.module.d.ts +14 -0
  360. package/lib/components/tree/tree-node/tree-node.component.d.ts +14 -0
  361. package/lib/i18n/i18n.d.ts +3 -0
  362. package/lib/layouts/form-layout/split-pane/o-form-layout-split-pane.component.d.ts +2 -3
  363. package/lib/ontimize-web-ngx.module.d.ts +2 -1
  364. package/lib/services/state/o-tree-component-state.class.d.ts +3 -0
  365. package/lib/services/state/o-tree-component-state.service.d.ts +13 -0
  366. package/lib/util/util.d.ts +1 -1
  367. package/package.json +3 -2
  368. package/theme.scss +20 -4
  369. package/theming/ontimize-style-v8.scss +2 -1
  370. package/theming/ontimize-style.scss +18 -0
  371. package/theming/styles/density.scss +6 -2
  372. package/theming/themes/ontimize-black-yellow.scss +13 -3
@@ -6,10 +6,10 @@ import { OMatSortHeader } from './o-mat-sort-header';
6
6
  import * as i0 from "@angular/core";
7
7
  export class OMatSortModule {
8
8
  }
9
- OMatSortModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OMatSortModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- OMatSortModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: OMatSortModule, declarations: [OMatSort, OMatSortHeader], imports: [CommonModule], exports: [OMatSort, OMatSortHeader] });
11
- OMatSortModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OMatSortModule, providers: [MAT_SORT_HEADER_INTL_PROVIDER], imports: [CommonModule] });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OMatSortModule, decorators: [{
9
+ OMatSortModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OMatSortModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ OMatSortModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: OMatSortModule, declarations: [OMatSort, OMatSortHeader], imports: [CommonModule], exports: [OMatSort, OMatSortHeader] });
11
+ OMatSortModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OMatSortModule, providers: [MAT_SORT_HEADER_INTL_PROVIDER], imports: [CommonModule] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OMatSortModule, decorators: [{
13
13
  type: NgModule,
14
14
  args: [{
15
15
  imports: [CommonModule],
@@ -18,4 +18,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
18
18
  providers: [MAT_SORT_HEADER_INTL_PROVIDER]
19
19
  }]
20
20
  }] });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1tYXQtc29ydC1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9leHRlbnNpb25zL3NvcnQvby1tYXQtc29ydC1tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdkUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBUXJELE1BQU0sT0FBTyxjQUFjOzsyR0FBZCxjQUFjOzRHQUFkLGNBQWMsaUJBSFYsUUFBUSxFQUFFLGNBQWMsYUFGN0IsWUFBWSxhQUNaLFFBQVEsRUFBRSxjQUFjOzRHQUl2QixjQUFjLGFBRmQsQ0FBQyw2QkFBNkIsQ0FBQyxZQUhoQyxZQUFZOzJGQUtYLGNBQWM7a0JBTjFCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsY0FBYyxDQUFDO29CQUNuQyxZQUFZLEVBQUUsQ0FBQyxRQUFRLEVBQUUsY0FBYyxDQUFDO29CQUN4QyxTQUFTLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztpQkFDM0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1BVF9TT1JUX0hFQURFUl9JTlRMX1BST1ZJREVSIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XG5cbmltcG9ydCB7IE9NYXRTb3J0IH0gZnJvbSAnLi9vLW1hdC1zb3J0JztcbmltcG9ydCB7IE9NYXRTb3J0SGVhZGVyIH0gZnJvbSAnLi9vLW1hdC1zb3J0LWhlYWRlcic7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBleHBvcnRzOiBbT01hdFNvcnQsIE9NYXRTb3J0SGVhZGVyXSxcbiAgZGVjbGFyYXRpb25zOiBbT01hdFNvcnQsIE9NYXRTb3J0SGVhZGVyXSxcbiAgcHJvdmlkZXJzOiBbTUFUX1NPUlRfSEVBREVSX0lOVExfUFJPVklERVJdXG59KVxuZXhwb3J0IGNsYXNzIE9NYXRTb3J0TW9kdWxlIHsgfVxuIl19
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1tYXQtc29ydC1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9leHRlbnNpb25zL3NvcnQvby1tYXQtc29ydC1tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdkUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBUXJELE1BQU0sT0FBTyxjQUFjOzs0R0FBZCxjQUFjOzZHQUFkLGNBQWMsaUJBSFYsUUFBUSxFQUFFLGNBQWMsYUFGN0IsWUFBWSxhQUNaLFFBQVEsRUFBRSxjQUFjOzZHQUl2QixjQUFjLGFBRmQsQ0FBQyw2QkFBNkIsQ0FBQyxZQUhoQyxZQUFZOzRGQUtYLGNBQWM7a0JBTjFCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsY0FBYyxDQUFDO29CQUNuQyxZQUFZLEVBQUUsQ0FBQyxRQUFRLEVBQUUsY0FBYyxDQUFDO29CQUN4QyxTQUFTLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztpQkFDM0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1BVF9TT1JUX0hFQURFUl9JTlRMX1BST1ZJREVSIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XG5cbmltcG9ydCB7IE9NYXRTb3J0IH0gZnJvbSAnLi9vLW1hdC1zb3J0JztcbmltcG9ydCB7IE9NYXRTb3J0SGVhZGVyIH0gZnJvbSAnLi9vLW1hdC1zb3J0LWhlYWRlcic7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBleHBvcnRzOiBbT01hdFNvcnQsIE9NYXRTb3J0SGVhZGVyXSxcbiAgZGVjbGFyYXRpb25zOiBbT01hdFNvcnQsIE9NYXRTb3J0SGVhZGVyXSxcbiAgcHJvdmlkZXJzOiBbTUFUX1NPUlRfSEVBREVSX0lOVExfUFJPVklERVJdXG59KVxuZXhwb3J0IGNsYXNzIE9NYXRTb3J0TW9kdWxlIHsgfVxuIl19
@@ -164,9 +164,9 @@ export class OMatSort extends MatSort {
164
164
  return (valueA <= valueB ? -1 : 1) * (this.activeSortDirection === 'asc' ? 1 : -1);
165
165
  }
166
166
  }
167
- OMatSort.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OMatSort, deps: null, target: i0.ɵɵFactoryTarget.Directive });
168
- OMatSort.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: OMatSort, selector: "[oMatSort]", inputs: { disabled: ["oMatSortDisabled", "disabled"], oMatSortColumns: "oMatSortColumns" }, outputs: { oSortChange: "matSortChange" }, exportAs: ["oMatSort"], usesInheritance: true, ngImport: i0 });
169
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OMatSort, decorators: [{
167
+ OMatSort.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OMatSort, deps: null, target: i0.ɵɵFactoryTarget.Directive });
168
+ OMatSort.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: OMatSort, selector: "[oMatSort]", inputs: { disabled: ["oMatSortDisabled", "disabled"], oMatSortColumns: "oMatSortColumns" }, outputs: { oSortChange: "matSortChange" }, exportAs: ["oMatSort"], usesInheritance: true, ngImport: i0 });
169
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OMatSort, decorators: [{
170
170
  type: Directive,
171
171
  args: [{
172
172
  selector: '[oMatSort]',
@@ -177,4 +177,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
177
177
  type: Output,
178
178
  args: ['matSortChange']
179
179
  }] } });
180
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1tYXQtc29ydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL3RhYmxlL2V4dGVuc2lvbnMvc29ydC9vLW1hdC1zb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsT0FBTyxFQUFlLE1BQU0sd0JBQXdCLENBQUM7QUFHOUQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9DLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFZN0MsTUFBTSxPQUFPLFFBQVMsU0FBUSxPQUFPO0lBTHJDOztRQU9FLGdCQUFXLEdBQXVCLEVBQUUsQ0FBQztRQUNyQyxrQkFBYSxHQUFRLEVBQUUsQ0FBQztRQU1VLGdCQUFXLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7S0E0SzVGO0lBMUtDLElBQUksZUFBZSxDQUFDLEtBQWlCO1FBQ25DLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNmLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELGVBQWUsQ0FBQyxHQUFZO1FBQzFCLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDO0lBQzFCLENBQUM7SUFFRCxjQUFjO1FBQ1osTUFBTSxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBYyxFQUFFLEVBQUU7WUFDMUMsVUFBVSxDQUFDLElBQUksQ0FBQztnQkFDZCxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUU7Z0JBQ1IsU0FBUyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FB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TUFBTSxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLG1CQUFtQixLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7O3FHQW5MVSxRQUFRO3lGQUFSLFFBQVE7MkZBQVIsUUFBUTtrQkFMcEIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsWUFBWTtvQkFDdEIsUUFBUSxFQUFFLFVBQVU7b0JBQ3BCLE1BQU0sRUFBRSxDQUFDLDRCQUE0QixFQUFFLGlCQUFpQixDQUFDO2lCQUMxRDs4QkFVbUMsV0FBVztzQkFBNUMsTUFBTTt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0U29ydCwgTWF0U29ydGFibGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcblxuaW1wb3J0IHsgU1FMT3JkZXIgfSBmcm9tICcuLi8uLi8uLi8uLi90eXBlcy9zcWwtb3JkZXIudHlwZSc7XG5pbXBvcnQgeyBDb2RlcyB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWwvY29kZXMnO1xuaW1wb3J0IHsgVXRpbCB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWwvdXRpbCc7XG5cbmV4cG9ydCB0eXBlIE9NYXRTb3J0R3JvdXBlZERhdGEgPSB7XG4gIGtleTogYW55O1xuICB2YWx1ZXM6IGFueVtdO1xufTtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW29NYXRTb3J0XScsXG4gIGV4cG9ydEFzOiAnb01hdFNvcnQnLFxuICBpbnB1dHM6IFsnZGlzYWJsZWQ6IG9NYXRTb3J0RGlzYWJsZWQnLCAnb01hdFNvcnRDb2x1bW5zJ11cbn0pXG5leHBvcnQgY2xhc3MgT01hdFNvcnQgZXh0ZW5kcyBNYXRTb3J0IHtcblxuICBhY3RpdmVBcnJheTogQXJyYXk8TWF0U29ydGFibGU+ID0gW107XG4gIGRpcmVjdGlvbkJ5SWQ6IGFueSA9IHt9O1xuXG4gIHByb3RlY3RlZCBtdWx0aXBsZVNvcnQ6IGJvb2xlYW47XG4gIHByb3RlY3RlZCBhY3RpdmVTb3J0Q29sdW1uOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBhY3RpdmVTb3J0RGlyZWN0aW9uOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgnbWF0U29ydENoYW5nZScpIHJlYWRvbmx5IG9Tb3J0Q2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIHNldCBvTWF0U29ydENvbHVtbnModmFsdWU6IFNRTE9yZGVyW10pIHtcbiAgICB0aGlzLnJlc3RhcnQoKTtcbiAgICB0aGlzLnNldFRhYmxlSW5mbyh2YWx1ZSk7XG4gIH1cblxuICBzZXRNdWx0aXBsZVNvcnQodmFsOiBib29sZWFuKSB7XG4gICAgdGhpcy5tdWx0aXBsZVNvcnQgPSB2YWw7XG4gIH1cblxuICBnZXRTb3J0Q29sdW1ucygpOiBhbnlbXSB7XG4gICAgY29uc3QgYWN0aXZlRGF0YSA9IFtdO1xuICAgIHRoaXMuYWN0aXZlQXJyYXkuZm9yRWFjaCgoczogTWF0U29ydGFibGUpID0+IHtcbiAgICAgIGFjdGl2ZURhdGEucHVzaCh7XG4gICAgICAgIGlkOiBzLmlkLFxuICAgICAgICBkaXJlY3Rpb246IHRoaXMuZGlyZWN0aW9uQnlJZFtzLmlkXVxuICAgICAgfSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGFjdGl2ZURhdGE7XG4gIH1cblxuICBzZXRTb3J0Q29sdW1ucyhzb3J0Q29sQXJyYXk6IFNRTE9yZGVyW10pIHtcbiAgICB0aGlzLnJlc3RhcnQoKTtcbiAgICB0aGlzLnNldFRhYmxlSW5mbyhzb3J0Q29sQXJyYXkpO1xuICB9XG5cbiAgcHJpdmF0ZSByZXN0YXJ0KCkge1xuICAgIHRoaXMuYWN0aXZlQXJyYXkgPSBbXTtcbiAgICB0aGlzLmRpcmVjdGlvbkJ5SWQgPSB7fTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRUYWJsZUluZm8oc29ydENvbEFycmF5OiBBcnJheTxTUUxPcmRlcj4pIHtcblxuICAgIHNvcnRDb2xBcnJheS5mb3JFYWNoKChjb2xEYXRhOiBTUUxPcmRlcikgPT4ge1xuICAgICAgY29uc3Qgc29ydERpcmVjdGlvbjogYW55ID0gY29sRGF0YS5hc2NlbmRlbnQgPyBDb2Rlcy5BU0NfU09SVCA6IENvZGVzLkRFU0NfU09SVDtcbiAgICAgIHRoaXMuYWN0aXZlQXJyYXkucHVzaCh7XG4gICAgICAgIGlkOiBjb2xEYXRhLmNvbHVtbk5hbWUsXG4gICAgICAgIHN0YXJ0OiBzb3J0RGlyZWN0aW9uLFxuICAgICAgICBkaXNhYmxlQ2xlYXI6IGZhbHNlXG4gICAgICB9KTtcbiAgICAgIHRoaXMuZGlyZWN0aW9uQnlJZFtjb2xEYXRhLmNvbHVtbk5hbWVdID0gc29ydERpcmVjdGlvbjtcbiAgICB9KTtcbiAgfVxuXG4gIGFkZFNvcnRDb2x1bW4oc29ydGFibGU6IE1hdFNvcnRhYmxlKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNBY3RpdmUoc29ydGFibGUpKSB7XG4gICAgICAvLyB3b3JrYXJvdW5kIGZvciBoYXZpbmcgYSBwcm9wcGVyIHdvcmsgaW4gZ2V0TmV4dFNvcnREaXJlY3Rpb247XG4gICAgICB0aGlzLmRpcmVjdGlvbiA9IHRoaXMuZGlyZWN0aW9uQnlJZFtzb3J0YWJsZS5pZF07XG4gICAgICB0aGlzLmRpcmVjdGlvbkJ5SWRbc29ydGFibGUuaWRdID0gdGhpcy5nZXROZXh0U29ydERpcmVjdGlvbihzb3J0YWJsZSk7XG4gICAgICB0aGlzLmRpcmVjdGlvbiA9ICcnO1xuICAgICAgaWYgKHRoaXMuZGlyZWN0aW9uQnlJZFtzb3J0YWJsZS5pZF0gPT09ICcnKSB7XG4gICAgICAgIHRoaXMuZGVsZXRlU29ydENvbHVtbihzb3J0YWJsZS5pZCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghdGhpcy5tdWx0aXBsZVNvcnQpIHtcbiAgICAgICAgdGhpcy5hY3RpdmVBcnJheSA9IFtdO1xuICAgICAgICB0aGlzLmRpcmVjdGlvbkJ5SWQgPSB7fTtcbiAgICAgIH1cbiAgICAgIHRoaXMuYWN0aXZlQXJyYXkucHVzaChzb3J0YWJsZSk7XG4gICAgICB0aGlzLmRpcmVjdGlvbkJ5SWRbc29ydGFibGUuaWRdID0gc29ydGFibGUuc3RhcnQgPyBzb3J0YWJsZS5zdGFydCA6IHRoaXMuc3RhcnQ7XG4gICAgfVxuICAgIGNvbnN0IGFjdGl2ZURhdGEgPSB0aGlzLmdldFNvcnRDb2x1bW5zKCk7XG4gICAgdGhpcy5fc3RhdGVDaGFuZ2VzLm5leHQoKTtcbiAgICB0aGlzLm9Tb3J0Q2hhbmdlLmVtaXQoYWN0aXZlRGF0YSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZGVsZXRlU29ydENvbHVtbihpZDogc3RyaW5nKSB7XG4gICAgZGVsZXRlIHRoaXMuZGlyZWN0aW9uQnlJZFtpZF07XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLmFjdGl2ZUFycmF5LmZpbmRJbmRleChlbGVtZW50ID0+IGVsZW1lbnQuaWQgPT09IGlkKTtcbiAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgdGhpcy5hY3RpdmVBcnJheS5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIH1cbiAgfVxuXG4gIGlzQWN0aXZlKHNvcnRhYmxlOiBNYXRTb3J0YWJsZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBVdGlsLmlzRGVmaW5lZCh0aGlzLmFjdGl2ZUFycmF5LmZpbmQoKHM6IE1hdFNvcnRhYmxlKSA9PiBzb3J0YWJsZS5pZCA9PT0gcy5pZCkpO1xuICB9XG5cbiAgaGFzRGlyZWN0aW9uKGlkOiBhbnkpOiBib29sZWFuIHtcbiAgICBsZXQgZGlyZWN0aW9uO1xuICAgIGlmIChVdGlsLmlzRGVmaW5lZCh0aGlzLmRpcmVjdGlvbkJ5SWRbaWRdKSkge1xuICAgICAgZGlyZWN0aW9uID0gdGhpcy5kaXJlY3Rpb25CeUlkW2lkXTtcbiAgICB9XG4gICAgcmV0dXJuIChkaXJlY3Rpb24gPT09ICdhc2MnIHx8IGRpcmVjdGlvbiA9PT0gJ2Rlc2MnKTtcbiAgfVxuXG4gIGdldFNvcnRlZERhdGFCeVNRTE9yZGVyKGRhdGE6IGFueVtdLCBzcWxPcmRlckFycmF5OiBTUUxPcmRlcltdKTogYW55W10ge1xuICAgIHRoaXMuc2V0U29ydENvbHVtbnMoc3FsT3JkZXJBcnJheSk7XG4gICAgcmV0dXJuIHRoaXMuZ2V0U29ydGVkRGF0YShkYXRhKTtcbiAgfVxuXG4gIGdldFNvcnRlZERhdGEoZGF0YTogYW55W10pOiBhbnlbXSB7XG4gICAgY29uc3Qgc29ydENvbHVtbnMgPSB0aGlzLmdldFNvcnRDb2x1bW5zKCk7XG4gICAgaWYgKHNvcnRDb2x1bW5zLmxlbmd0aCA9PT0gMCB8fCBkYXRhLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfVxuICAgIHRoaXMuc29ydGFibGVzLmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHtcbiAgICAgIHRoaXMuZGVyZWdpc3Rlcih2YWx1ZSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMuc29ydEJ5Q29sdW1ucyhkYXRhLCBzb3J0Q29sdW1ucyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc29ydEJ5Q29sdW1ucyhkYXRhOiBhbnlbXSwgc29ydENvbHVtbnM6IGFueVtdKSB7XG4gICAgY29uc3Qgc29ydEZ1bmN0aW9uQmluZCA9IHRoaXMuc29ydEZ1bmN0aW9uLmJpbmQodGhpcyk7XG4gICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IHNvcnRDb2x1bW5zLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICBjb25zdCBzb3J0QyA9IHNvcnRDb2x1bW5zW2ldO1xuICAgICAgdGhpcy5hY3RpdmVTb3J0Q29sdW1uID0gc29ydEMuaWQ7XG4gICAgICB0aGlzLmFjdGl2ZVNvcnREaXJlY3Rpb24gPSBzb3J0Qy5kaXJlY3Rpb247XG4gICAgICBpZiAoaSA9PT0gMCkge1xuICAgICAgICBkYXRhID0gZGF0YS5zb3J0KHNvcnRGdW5jdGlvbkJpbmQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgZ3JvdXBlZERhdGE6IE9NYXRTb3J0R3JvdXBlZERhdGFbXSA9IHRoaXMuZ2V0RGF0YUdyb3VwZWQoZGF0YSwgc29ydENvbHVtbnMsIGkpO1xuICAgICAgICBpZiAoZ3JvdXBlZERhdGEubGVuZ3RoID49IGRhdGEubGVuZ3RoKSB7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgZGF0YSA9IHRoaXMuc29ydEdyb3VwZWREYXRhKGdyb3VwZWREYXRhKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0RGF0YUdyb3VwZWQoZGF0YTogYW55LCBzb3J0Q29sdW1uczogYW55W10sIGluZGV4OiBudW1iZXIpOiBPTWF0U29ydEdyb3VwZWREYXRhW10ge1xuICAgIGNvbnN0IHByb3BBcnIgPSBbXTtcbiAgICBzb3J0Q29sdW1ucy5mb3JFYWNoKChpdGVtLCBpKSA9PiB7XG4gICAgICBpZiAoaSA8IGluZGV4KSB7XG4gICAgICAgIHByb3BBcnIucHVzaChpdGVtLmlkKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAocHJvcEFyci5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBkYXRhO1xuICAgIH1cbiAgICBjb25zdCByZXN1bHQ6IE9NYXRTb3J0R3JvdXBlZERhdGFbXSA9IFtdO1xuICAgIGRhdGEuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgIGxldCB2YWx1ZSA9ICcnO1xuICAgICAgcHJvcEFyci5mb3JFYWNoKHByb3AgPT4ge1xuICAgICAgICB2YWx1ZSArPSBpdGVtW3Byb3BdO1xuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IGZpbHRlcmVkID0gcmVzdWx0LmZpbHRlcihyZXNJdGVtID0+IHJlc0l0ZW0ua2V5ID09PSB2YWx1ZSk7XG4gICAgICBpZiAoZmlsdGVyZWQubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJlc3VsdC5wdXNoKHtcbiAgICAgICAgICBrZXk6IHZhbHVlLFxuICAgICAgICAgIHZhbHVlczogW2l0ZW1dXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmIChmaWx0ZXJlZC5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgZmlsdGVyZWRbMF0udmFsdWVzLnB1c2goaXRlbSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByb3RlY3RlZCBzb3J0R3JvdXBlZERhdGEoZ3JvdXBlZERhdGE6IE9NYXRTb3J0R3JvdXBlZERhdGFbXSk6IGFueVtdIHtcbiAgICBjb25zdCBzZWxmID0gdGhpcztcbiAgICByZXR1cm4gZ3JvdXBlZERhdGEucmVkdWNlKChvYmo6IGFueSwgaXRlbTogYW55KSA9PiB7XG4gICAgICBjb25zdCBhcnIgPSBpdGVtLnZhbHVlcztcbiAgICAgIGNvbnN0IHNvcnRlZCA9IGFyci5sZW5ndGggPD0gMSA/IGFyciA6IGFyci5zb3J0KHNlbGYuc29ydEZ1bmN0aW9uLmJpbmQoc2VsZikpO1xuICAgICAgb2JqLnB1c2goLi4uc29ydGVkKTtcbiAgICAgIHJldHVybiBvYmo7XG4gICAgfSwgW10pO1xuICB9XG5cbiAgc29ydEZ1bmN0aW9uKGE6IGFueSwgYjogYW55KTogbnVtYmVyIHtcbiAgICBsZXQgcHJvcGVydHlBOiBudW1iZXIgfCBzdHJpbmcgPSAnJztcbiAgICBsZXQgcHJvcGVydHlCOiBudW1iZXIgfCBzdHJpbmcgPSAnJztcbiAgICBbcHJvcGVydHlBLCBwcm9wZXJ0eUJdID0gW2FbdGhpcy5hY3RpdmVTb3J0Q29sdW1uXSwgYlt0aGlzLmFjdGl2ZVNvcnRDb2x1bW5dXTtcblxuICAgIGNvbnN0IHZhbHVlQSA9IHR5cGVvZiBwcm9wZXJ0eUEgPT09ICd1bmRlZmluZWQnID8gJycgOiBwcm9wZXJ0eUEgPT09ICcnID8gcHJvcGVydHlBIDogaXNOYU4oK3Byb3BlcnR5QSkgPyBwcm9wZXJ0eUEudG9TdHJpbmcoKS50cmltKCkudG9Mb3dlckNhc2UoKSA6ICtwcm9wZXJ0eUE7XG4gICAgY29uc3QgdmFsdWVCID0gdHlwZW9mIHByb3BlcnR5QiA9PT0gJ3VuZGVmaW5lZCcgPyAnJyA6IHByb3BlcnR5QiA9PT0gJycgPyBwcm9wZXJ0eUIgOiBpc05hTigrcHJvcGVydHlCKSA/IHByb3BlcnR5Qi50b1N0cmluZygpLnRyaW0oKS50b0xvd2VyQ2FzZSgpIDogK3Byb3BlcnR5QjtcbiAgICByZXR1cm4gKHZhbHVlQSA8PSB2YWx1ZUIgPyAtMSA6IDEpICogKHRoaXMuYWN0aXZlU29ydERpcmVjdGlvbiA9PT0gJ2FzYycgPyAxIDogLTEpO1xuICB9XG5cbn1cbiJdfQ==
180
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1tYXQtc29ydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL3RhYmxlL2V4dGVuc2lvbnMvc29ydC9vLW1hdC1zb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsT0FBTyxFQUFlLE1BQU0sd0JBQXdCLENBQUM7QUFHOUQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9DLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFZN0MsTUFBTSxPQUFPLFFBQVMsU0FBUSxPQUFPO0lBTHJDOztRQU9FLGdCQUFXLEdBQXVCLEVBQUUsQ0FBQztRQUNyQyxrQkFBYSxHQUFRLEVBQUUsQ0FBQztRQU1VLGdCQUFXLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7S0E0SzVGO0lBMUtDLElBQUksZUFBZSxDQUFDLEtBQWlCO1FBQ25DLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNmLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELGVBQWUsQ0FBQyxHQUFZO1FBQzFCLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDO0lBQzFCLENBQUM7SUFFRCxjQUFjO1FBQ1osTUFBTSxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBYyxFQUFFLEVBQUU7WUFDMUMsVUFBVSxDQUFDLElBQUksQ0FBQztnQkFDZCxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUU7Z0JBQ1IsU0FBUyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FB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TUFBTSxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLG1CQUFtQixLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7O3NHQW5MVSxRQUFROzBGQUFSLFFBQVE7NEZBQVIsUUFBUTtrQkFMcEIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsWUFBWTtvQkFDdEIsUUFBUSxFQUFFLFVBQVU7b0JBQ3BCLE1BQU0sRUFBRSxDQUFDLDRCQUE0QixFQUFFLGlCQUFpQixDQUFDO2lCQUMxRDs4QkFVbUMsV0FBVztzQkFBNUMsTUFBTTt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0U29ydCwgTWF0U29ydGFibGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcblxuaW1wb3J0IHsgU1FMT3JkZXIgfSBmcm9tICcuLi8uLi8uLi8uLi90eXBlcy9zcWwtb3JkZXIudHlwZSc7XG5pbXBvcnQgeyBDb2RlcyB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWwvY29kZXMnO1xuaW1wb3J0IHsgVXRpbCB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWwvdXRpbCc7XG5cbmV4cG9ydCB0eXBlIE9NYXRTb3J0R3JvdXBlZERhdGEgPSB7XG4gIGtleTogYW55O1xuICB2YWx1ZXM6IGFueVtdO1xufTtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW29NYXRTb3J0XScsXG4gIGV4cG9ydEFzOiAnb01hdFNvcnQnLFxuICBpbnB1dHM6IFsnZGlzYWJsZWQ6IG9NYXRTb3J0RGlzYWJsZWQnLCAnb01hdFNvcnRDb2x1bW5zJ11cbn0pXG5leHBvcnQgY2xhc3MgT01hdFNvcnQgZXh0ZW5kcyBNYXRTb3J0IHtcblxuICBhY3RpdmVBcnJheTogQXJyYXk8TWF0U29ydGFibGU+ID0gW107XG4gIGRpcmVjdGlvbkJ5SWQ6IGFueSA9IHt9O1xuXG4gIHByb3RlY3RlZCBtdWx0aXBsZVNvcnQ6IGJvb2xlYW47XG4gIHByb3RlY3RlZCBhY3RpdmVTb3J0Q29sdW1uOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBhY3RpdmVTb3J0RGlyZWN0aW9uOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgnbWF0U29ydENoYW5nZScpIHJlYWRvbmx5IG9Tb3J0Q2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIHNldCBvTWF0U29ydENvbHVtbnModmFsdWU6IFNRTE9yZGVyW10pIHtcbiAgICB0aGlzLnJlc3RhcnQoKTtcbiAgICB0aGlzLnNldFRhYmxlSW5mbyh2YWx1ZSk7XG4gIH1cblxuICBzZXRNdWx0aXBsZVNvcnQodmFsOiBib29sZWFuKSB7XG4gICAgdGhpcy5tdWx0aXBsZVNvcnQgPSB2YWw7XG4gIH1cblxuICBnZXRTb3J0Q29sdW1ucygpOiBhbnlbXSB7XG4gICAgY29uc3QgYWN0aXZlRGF0YSA9IFtdO1xuICAgIHRoaXMuYWN0aXZlQXJyYXkuZm9yRWFjaCgoczogTWF0U29ydGFibGUpID0+IHtcbiAgICAgIGFjdGl2ZURhdGEucHVzaCh7XG4gICAgICAgIGlkOiBzLmlkLFxuICAgICAgICBkaXJlY3Rpb246IHRoaXMuZGlyZWN0aW9uQnlJZFtzLmlkXVxuICAgICAgfSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGFjdGl2ZURhdGE7XG4gIH1cblxuICBzZXRTb3J0Q29sdW1ucyhzb3J0Q29sQXJyYXk6IFNRTE9yZGVyW10pIHtcbiAgICB0aGlzLnJlc3RhcnQoKTtcbiAgICB0aGlzLnNldFRhYmxlSW5mbyhzb3J0Q29sQXJyYXkpO1xuICB9XG5cbiAgcHJpdmF0ZSByZXN0YXJ0KCkge1xuICAgIHRoaXMuYWN0aXZlQXJyYXkgPSBbXTtcbiAgICB0aGlzLmRpcmVjdGlvbkJ5SWQgPSB7fTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRUYWJsZUluZm8oc29ydENvbEFycmF5OiBBcnJheTxTUUxPcmRlcj4pIHtcblxuICAgIHNvcnRDb2xBcnJheS5mb3JFYWNoKChjb2xEYXRhOiBTUUxPcmRlcikgPT4ge1xuICAgICAgY29uc3Qgc29ydERpcmVjdGlvbjogYW55ID0gY29sRGF0YS5hc2NlbmRlbnQgPyBDb2Rlcy5BU0NfU09SVCA6IENvZGVzLkRFU0NfU09SVDtcbiAgICAgIHRoaXMuYWN0aXZlQXJyYXkucHVzaCh7XG4gICAgICAgIGlkOiBjb2xEYXRhLmNvbHVtbk5hbWUsXG4gICAgICAgIHN0YXJ0OiBzb3J0RGlyZWN0aW9uLFxuICAgICAgICBkaXNhYmxlQ2xlYXI6IGZhbHNlXG4gICAgICB9KTtcbiAgICAgIHRoaXMuZGlyZWN0aW9uQnlJZFtjb2xEYXRhLmNvbHVtbk5hbWVdID0gc29ydERpcmVjdGlvbjtcbiAgICB9KTtcbiAgfVxuXG4gIGFkZFNvcnRDb2x1bW4oc29ydGFibGU6IE1hdFNvcnRhYmxlKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNBY3RpdmUoc29ydGFibGUpKSB7XG4gICAgICAvLyB3b3JrYXJvdW5kIGZvciBoYXZpbmcgYSBwcm9wcGVyIHdvcmsgaW4gZ2V0TmV4dFNvcnREaXJlY3Rpb247XG4gICAgICB0aGlzLmRpcmVjdGlvbiA9IHRoaXMuZGlyZWN0aW9uQnlJZFtzb3J0YWJsZS5pZF07XG4gICAgICB0aGlzLmRpcmVjdGlvbkJ5SWRbc29ydGFibGUuaWRdID0gdGhpcy5nZXROZXh0U29ydERpcmVjdGlvbihzb3J0YWJsZSk7XG4gICAgICB0aGlzLmRpcmVjdGlvbiA9ICcnO1xuICAgICAgaWYgKHRoaXMuZGlyZWN0aW9uQnlJZFtzb3J0YWJsZS5pZF0gPT09ICcnKSB7XG4gICAgICAgIHRoaXMuZGVsZXRlU29ydENvbHVtbihzb3J0YWJsZS5pZCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghdGhpcy5tdWx0aXBsZVNvcnQpIHtcbiAgICAgICAgdGhpcy5hY3RpdmVBcnJheSA9IFtdO1xuICAgICAgICB0aGlzLmRpcmVjdGlvbkJ5SWQgPSB7fTtcbiAgICAgIH1cbiAgICAgIHRoaXMuYWN0aXZlQXJyYXkucHVzaChzb3J0YWJsZSk7XG4gICAgICB0aGlzLmRpcmVjdGlvbkJ5SWRbc29ydGFibGUuaWRdID0gc29ydGFibGUuc3RhcnQgPyBzb3J0YWJsZS5zdGFydCA6IHRoaXMuc3RhcnQ7XG4gICAgfVxuICAgIGNvbnN0IGFjdGl2ZURhdGEgPSB0aGlzLmdldFNvcnRDb2x1bW5zKCk7XG4gICAgdGhpcy5fc3RhdGVDaGFuZ2VzLm5leHQoKTtcbiAgICB0aGlzLm9Tb3J0Q2hhbmdlLmVtaXQoYWN0aXZlRGF0YSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZGVsZXRlU29ydENvbHVtbihpZDogc3RyaW5nKSB7XG4gICAgZGVsZXRlIHRoaXMuZGlyZWN0aW9uQnlJZFtpZF07XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLmFjdGl2ZUFycmF5LmZpbmRJbmRleChlbGVtZW50ID0+IGVsZW1lbnQuaWQgPT09IGlkKTtcbiAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgdGhpcy5hY3RpdmVBcnJheS5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIH1cbiAgfVxuXG4gIGlzQWN0aXZlKHNvcnRhYmxlOiBNYXRTb3J0YWJsZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBVdGlsLmlzRGVmaW5lZCh0aGlzLmFjdGl2ZUFycmF5LmZpbmQoKHM6IE1hdFNvcnRhYmxlKSA9PiBzb3J0YWJsZS5pZCA9PT0gcy5pZCkpO1xuICB9XG5cbiAgaGFzRGlyZWN0aW9uKGlkOiBhbnkpOiBib29sZWFuIHtcbiAgICBsZXQgZGlyZWN0aW9uO1xuICAgIGlmIChVdGlsLmlzRGVmaW5lZCh0aGlzLmRpcmVjdGlvbkJ5SWRbaWRdKSkge1xuICAgICAgZGlyZWN0aW9uID0gdGhpcy5kaXJlY3Rpb25CeUlkW2lkXTtcbiAgICB9XG4gICAgcmV0dXJuIChkaXJlY3Rpb24gPT09ICdhc2MnIHx8IGRpcmVjdGlvbiA9PT0gJ2Rlc2MnKTtcbiAgfVxuXG4gIGdldFNvcnRlZERhdGFCeVNRTE9yZGVyKGRhdGE6IGFueVtdLCBzcWxPcmRlckFycmF5OiBTUUxPcmRlcltdKTogYW55W10ge1xuICAgIHRoaXMuc2V0U29ydENvbHVtbnMoc3FsT3JkZXJBcnJheSk7XG4gICAgcmV0dXJuIHRoaXMuZ2V0U29ydGVkRGF0YShkYXRhKTtcbiAgfVxuXG4gIGdldFNvcnRlZERhdGEoZGF0YTogYW55W10pOiBhbnlbXSB7XG4gICAgY29uc3Qgc29ydENvbHVtbnMgPSB0aGlzLmdldFNvcnRDb2x1bW5zKCk7XG4gICAgaWYgKHNvcnRDb2x1bW5zLmxlbmd0aCA9PT0gMCB8fCBkYXRhLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfVxuICAgIHRoaXMuc29ydGFibGVzLmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHtcbiAgICAgIHRoaXMuZGVyZWdpc3Rlcih2YWx1ZSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMuc29ydEJ5Q29sdW1ucyhkYXRhLCBzb3J0Q29sdW1ucyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc29ydEJ5Q29sdW1ucyhkYXRhOiBhbnlbXSwgc29ydENvbHVtbnM6IGFueVtdKSB7XG4gICAgY29uc3Qgc29ydEZ1bmN0aW9uQmluZCA9IHRoaXMuc29ydEZ1bmN0aW9uLmJpbmQodGhpcyk7XG4gICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IHNvcnRDb2x1bW5zLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICBjb25zdCBzb3J0QyA9IHNvcnRDb2x1bW5zW2ldO1xuICAgICAgdGhpcy5hY3RpdmVTb3J0Q29sdW1uID0gc29ydEMuaWQ7XG4gICAgICB0aGlzLmFjdGl2ZVNvcnREaXJlY3Rpb24gPSBzb3J0Qy5kaXJlY3Rpb247XG4gICAgICBpZiAoaSA9PT0gMCkge1xuICAgICAgICBkYXRhID0gZGF0YS5zb3J0KHNvcnRGdW5jdGlvbkJpbmQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgZ3JvdXBlZERhdGE6IE9NYXRTb3J0R3JvdXBlZERhdGFbXSA9IHRoaXMuZ2V0RGF0YUdyb3VwZWQoZGF0YSwgc29ydENvbHVtbnMsIGkpO1xuICAgICAgICBpZiAoZ3JvdXBlZERhdGEubGVuZ3RoID49IGRhdGEubGVuZ3RoKSB7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgZGF0YSA9IHRoaXMuc29ydEdyb3VwZWREYXRhKGdyb3VwZWREYXRhKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0RGF0YUdyb3VwZWQoZGF0YTogYW55LCBzb3J0Q29sdW1uczogYW55W10sIGluZGV4OiBudW1iZXIpOiBPTWF0U29ydEdyb3VwZWREYXRhW10ge1xuICAgIGNvbnN0IHByb3BBcnIgPSBbXTtcbiAgICBzb3J0Q29sdW1ucy5mb3JFYWNoKChpdGVtLCBpKSA9PiB7XG4gICAgICBpZiAoaSA8IGluZGV4KSB7XG4gICAgICAgIHByb3BBcnIucHVzaChpdGVtLmlkKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAocHJvcEFyci5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBkYXRhO1xuICAgIH1cbiAgICBjb25zdCByZXN1bHQ6IE9NYXRTb3J0R3JvdXBlZERhdGFbXSA9IFtdO1xuICAgIGRhdGEuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgIGxldCB2YWx1ZSA9ICcnO1xuICAgICAgcHJvcEFyci5mb3JFYWNoKHByb3AgPT4ge1xuICAgICAgICB2YWx1ZSArPSBpdGVtW3Byb3BdO1xuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IGZpbHRlcmVkID0gcmVzdWx0LmZpbHRlcihyZXNJdGVtID0+IHJlc0l0ZW0ua2V5ID09PSB2YWx1ZSk7XG4gICAgICBpZiAoZmlsdGVyZWQubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJlc3VsdC5wdXNoKHtcbiAgICAgICAgICBrZXk6IHZhbHVlLFxuICAgICAgICAgIHZhbHVlczogW2l0ZW1dXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmIChmaWx0ZXJlZC5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgZmlsdGVyZWRbMF0udmFsdWVzLnB1c2goaXRlbSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByb3RlY3RlZCBzb3J0R3JvdXBlZERhdGEoZ3JvdXBlZERhdGE6IE9NYXRTb3J0R3JvdXBlZERhdGFbXSk6IGFueVtdIHtcbiAgICBjb25zdCBzZWxmID0gdGhpcztcbiAgICByZXR1cm4gZ3JvdXBlZERhdGEucmVkdWNlKChvYmo6IGFueSwgaXRlbTogYW55KSA9PiB7XG4gICAgICBjb25zdCBhcnIgPSBpdGVtLnZhbHVlcztcbiAgICAgIGNvbnN0IHNvcnRlZCA9IGFyci5sZW5ndGggPD0gMSA/IGFyciA6IGFyci5zb3J0KHNlbGYuc29ydEZ1bmN0aW9uLmJpbmQoc2VsZikpO1xuICAgICAgb2JqLnB1c2goLi4uc29ydGVkKTtcbiAgICAgIHJldHVybiBvYmo7XG4gICAgfSwgW10pO1xuICB9XG5cbiAgc29ydEZ1bmN0aW9uKGE6IGFueSwgYjogYW55KTogbnVtYmVyIHtcbiAgICBsZXQgcHJvcGVydHlBOiBudW1iZXIgfCBzdHJpbmcgPSAnJztcbiAgICBsZXQgcHJvcGVydHlCOiBudW1iZXIgfCBzdHJpbmcgPSAnJztcbiAgICBbcHJvcGVydHlBLCBwcm9wZXJ0eUJdID0gW2FbdGhpcy5hY3RpdmVTb3J0Q29sdW1uXSwgYlt0aGlzLmFjdGl2ZVNvcnRDb2x1bW5dXTtcblxuICAgIGNvbnN0IHZhbHVlQSA9IHR5cGVvZiBwcm9wZXJ0eUEgPT09ICd1bmRlZmluZWQnID8gJycgOiBwcm9wZXJ0eUEgPT09ICcnID8gcHJvcGVydHlBIDogaXNOYU4oK3Byb3BlcnR5QSkgPyBwcm9wZXJ0eUEudG9TdHJpbmcoKS50cmltKCkudG9Mb3dlckNhc2UoKSA6ICtwcm9wZXJ0eUE7XG4gICAgY29uc3QgdmFsdWVCID0gdHlwZW9mIHByb3BlcnR5QiA9PT0gJ3VuZGVmaW5lZCcgPyAnJyA6IHByb3BlcnR5QiA9PT0gJycgPyBwcm9wZXJ0eUIgOiBpc05hTigrcHJvcGVydHlCKSA/IHByb3BlcnR5Qi50b1N0cmluZygpLnRyaW0oKS50b0xvd2VyQ2FzZSgpIDogK3Byb3BlcnR5QjtcbiAgICByZXR1cm4gKHZhbHVlQSA8PSB2YWx1ZUIgPyAtMSA6IDEpICogKHRoaXMuYWN0aXZlU29ydERpcmVjdGlvbiA9PT0gJ2FzYycgPyAxIDogLTEpO1xuICB9XG5cbn1cbiJdfQ==