@po-ui/ng-components 5.21.0 → 5.22.3

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 (1217) hide show
  1. package/README.md +36 -36
  2. package/bundles/po-ui-ng-components.umd.js +38669 -38615
  3. package/bundles/po-ui-ng-components.umd.js.map +1 -1
  4. package/esm2015/lib/components/components.module.js +122 -122
  5. package/esm2015/lib/components/index.js +38 -38
  6. package/esm2015/lib/components/po-accordion/index.js +4 -4
  7. package/esm2015/lib/components/po-accordion/po-accordion-base.component.js +29 -29
  8. package/esm2015/lib/components/po-accordion/po-accordion-item/po-accordion-item.component.js +66 -66
  9. package/esm2015/lib/components/po-accordion/po-accordion-item-body/po-accordion-item-body.component.js +23 -23
  10. package/esm2015/lib/components/po-accordion/po-accordion-item-header/po-accordion-item-header.component.js +24 -24
  11. package/esm2015/lib/components/po-accordion/po-accordion.component.js +70 -70
  12. package/esm2015/lib/components/po-accordion/po-accordion.module.js +52 -52
  13. package/esm2015/lib/components/po-accordion/services/po-accordion.service.js +27 -27
  14. package/esm2015/lib/components/po-avatar/index.js +3 -3
  15. package/esm2015/lib/components/po-avatar/po-avatar-base.component.js +68 -68
  16. package/esm2015/lib/components/po-avatar/po-avatar.component.js +42 -42
  17. package/esm2015/lib/components/po-avatar/po-avatar.module.js +18 -18
  18. package/esm2015/lib/components/po-badge/po-badge-base.component.js +89 -89
  19. package/esm2015/lib/components/po-badge/po-badge.component.js +16 -16
  20. package/esm2015/lib/components/po-badge/po-badge.module.js +18 -18
  21. package/esm2015/lib/components/po-breadcrumb/index.js +5 -5
  22. package/esm2015/lib/components/po-breadcrumb/po-breadcrumb-base.component.js +48 -48
  23. package/esm2015/lib/components/po-breadcrumb/po-breadcrumb-dropdown/po-breadcrumb-dropdown.component.js +20 -20
  24. package/esm2015/lib/components/po-breadcrumb/po-breadcrumb-favorite/po-breadcrumb-favorite.component.js +77 -77
  25. package/esm2015/lib/components/po-breadcrumb/po-breadcrumb-favorite/po-breadcrumb-favorite.service.js +49 -49
  26. package/esm2015/lib/components/po-breadcrumb/po-breadcrumb-item/po-breadcrumb-item.component.js +27 -27
  27. package/esm2015/lib/components/po-breadcrumb/po-breadcrumb-item.interface.js +2 -2
  28. package/esm2015/lib/components/po-breadcrumb/po-breadcrumb.component.js +159 -159
  29. package/esm2015/lib/components/po-breadcrumb/po-breadcrumb.interface.js +2 -2
  30. package/esm2015/lib/components/po-breadcrumb/po-breadcrumb.module.js +28 -28
  31. package/esm2015/lib/components/po-button/index.js +3 -3
  32. package/esm2015/lib/components/po-button/po-button-base.component.js +127 -127
  33. package/esm2015/lib/components/po-button/po-button.component.js +69 -69
  34. package/esm2015/lib/components/po-button/po-button.module.js +20 -20
  35. package/esm2015/lib/components/po-button-group/index.js +5 -5
  36. package/esm2015/lib/components/po-button-group/po-button-group-base.component.js +95 -95
  37. package/esm2015/lib/components/po-button-group/po-button-group-item.interface.js +2 -2
  38. package/esm2015/lib/components/po-button-group/po-button-group-toggle.enum.js +17 -17
  39. package/esm2015/lib/components/po-button-group/po-button-group.component.js +43 -43
  40. package/esm2015/lib/components/po-button-group/po-button-group.module.js +20 -20
  41. package/esm2015/lib/components/po-calendar/index.js +4 -4
  42. package/esm2015/lib/components/po-calendar/po-calendar-base.component.js +176 -176
  43. package/esm2015/lib/components/po-calendar/po-calendar-header/po-calendar-header.component.js +24 -24
  44. package/esm2015/lib/components/po-calendar/po-calendar-mode.enum.js +13 -13
  45. package/esm2015/lib/components/po-calendar/po-calendar-wrapper/po-calendar-wrapper.component.js +251 -251
  46. package/esm2015/lib/components/po-calendar/po-calendar.component.js +199 -199
  47. package/esm2015/lib/components/po-calendar/po-calendar.module.js +19 -19
  48. package/esm2015/lib/components/po-calendar/services/po-calendar.lang.service.js +187 -187
  49. package/esm2015/lib/components/po-calendar/services/po-calendar.service.js +44 -44
  50. package/esm2015/lib/components/po-chart/directives/po-resize-observer.directive.js +44 -44
  51. package/esm2015/lib/components/po-chart/enums/po-chart-type.enum.js +51 -51
  52. package/esm2015/lib/components/po-chart/helpers/po-chart-default-values.constant.js +18 -18
  53. package/esm2015/lib/components/po-chart/index.js +8 -8
  54. package/esm2015/lib/components/po-chart/interfaces/po-chart-axis-options.interface.js +2 -2
  55. package/esm2015/lib/components/po-chart/interfaces/po-chart-bar-coordinates.interface.js +2 -2
  56. package/esm2015/lib/components/po-chart/interfaces/po-chart-container-size.interface.js +11 -11
  57. package/esm2015/lib/components/po-chart/interfaces/po-chart-label-coordinates.interface.js +2 -2
  58. package/esm2015/lib/components/po-chart/interfaces/po-chart-min-max-values.interface.js +2 -2
  59. package/esm2015/lib/components/po-chart/interfaces/po-chart-options.interface.js +2 -2
  60. package/esm2015/lib/components/po-chart/interfaces/po-chart-path-coordinates.interface.js +2 -2
  61. package/esm2015/lib/components/po-chart/interfaces/po-chart-points-coordinates.interface.js +2 -2
  62. package/esm2015/lib/components/po-chart/interfaces/po-chart-serie.interface.js +2 -2
  63. package/esm2015/lib/components/po-chart/po-chart-base.component.js +244 -244
  64. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-axis/po-chart-axis-label/po-chart-axis-label.component.js +23 -23
  65. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-axis/po-chart-axis-path/po-chart-axis-path.component.js +19 -19
  66. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-axis/po-chart-axis.component.js +287 -287
  67. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-bar-base.component.js +94 -94
  68. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-bar-path/po-chart-bar-path.component.js +33 -33
  69. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-bar.component.js +58 -58
  70. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-column/po-chart-column.component.js +59 -59
  71. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-circular-label/po-chart-circular-label.component.js +29 -29
  72. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-circular-path/po-chart-circular-path.component.js +35 -35
  73. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-circular-path/po-chart-tooltip.directive.js +76 -76
  74. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-circular.component.js +142 -142
  75. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-donut/po-chart-donut.component.js +115 -115
  76. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-pie/po-chart-pie.component.js +57 -57
  77. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-container.component.js +119 -119
  78. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-area/po-chart-area.component.js +77 -77
  79. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-line-base.component.js +151 -151
  80. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-line.component.js +41 -41
  81. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-path/po-chart-path.component.js +65 -65
  82. package/esm2015/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-series-point/po-chart-series-point.component.js +95 -95
  83. package/esm2015/lib/components/po-chart/po-chart-legend/po-chart-legend.component.js +21 -21
  84. package/esm2015/lib/components/po-chart/po-chart-types/po-chart-circular/po-chart-circular.constant.js +11 -11
  85. package/esm2015/lib/components/po-chart/po-chart-types/po-chart-circular/po-chart-circular.js +374 -374
  86. package/esm2015/lib/components/po-chart/po-chart-types/po-chart-dynamic-type.component.js +45 -45
  87. package/esm2015/lib/components/po-chart/po-chart-types/po-chart-gauge/po-chart-gauge-series.interface.js +2 -2
  88. package/esm2015/lib/components/po-chart/po-chart-types/po-chart-gauge/po-chart-gauge-text-content/po-chart-gauge-text-content.component.js +75 -75
  89. package/esm2015/lib/components/po-chart/po-chart-types/po-chart-gauge/po-chart-gauge.component.js +85 -85
  90. package/esm2015/lib/components/po-chart/po-chart.component.js +203 -203
  91. package/esm2015/lib/components/po-chart/po-chart.module.js +61 -61
  92. package/esm2015/lib/components/po-chart/services/po-chart-maths.service.js +135 -135
  93. package/esm2015/lib/components/po-chart/services/po-chart-svg-container.service.js +57 -57
  94. package/esm2015/lib/components/po-container/index.js +3 -3
  95. package/esm2015/lib/components/po-container/po-container-base.component.js +88 -88
  96. package/esm2015/lib/components/po-container/po-container.component.js +32 -32
  97. package/esm2015/lib/components/po-container/po-container.module.js +18 -18
  98. package/esm2015/lib/components/po-disclaimer/index.js +4 -4
  99. package/esm2015/lib/components/po-disclaimer/po-disclaimer-base.component.js +77 -77
  100. package/esm2015/lib/components/po-disclaimer/po-disclaimer.component.js +29 -29
  101. package/esm2015/lib/components/po-disclaimer/po-disclaimer.interface.js +2 -2
  102. package/esm2015/lib/components/po-disclaimer/po-disclaimer.module.js +17 -17
  103. package/esm2015/lib/components/po-disclaimer-group/index.js +5 -5
  104. package/esm2015/lib/components/po-disclaimer-group/po-disclaimer-group-base.component.js +194 -194
  105. package/esm2015/lib/components/po-disclaimer-group/po-disclaimer-group-remove-action.interface.js +2 -2
  106. package/esm2015/lib/components/po-disclaimer-group/po-disclaimer-group.component.js +41 -41
  107. package/esm2015/lib/components/po-disclaimer-group/po-disclaimer-group.interface.js +2 -2
  108. package/esm2015/lib/components/po-disclaimer-group/po-disclaimer-group.module.js +20 -20
  109. package/esm2015/lib/components/po-disclaimer-group/po-disclaimer-remove/po-disclaimer-remove.component.js +30 -30
  110. package/esm2015/lib/components/po-divider/index.js +3 -3
  111. package/esm2015/lib/components/po-divider/po-divider-base.component.js +16 -16
  112. package/esm2015/lib/components/po-divider/po-divider.component.js +32 -32
  113. package/esm2015/lib/components/po-divider/po-divider.module.js +18 -18
  114. package/esm2015/lib/components/po-dropdown/index.js +4 -4
  115. package/esm2015/lib/components/po-dropdown/po-dropdown-action.interface.js +2 -2
  116. package/esm2015/lib/components/po-dropdown/po-dropdown-base.component.js +71 -71
  117. package/esm2015/lib/components/po-dropdown/po-dropdown.component.js +97 -97
  118. package/esm2015/lib/components/po-dropdown/po-dropdown.module.js +18 -18
  119. package/esm2015/lib/components/po-dynamic/index.js +11 -11
  120. package/esm2015/lib/components/po-dynamic/po-dynamic-field-type.enum.js +25 -25
  121. package/esm2015/lib/components/po-dynamic/po-dynamic-field.interface.js +2 -2
  122. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-base.component.js +104 -104
  123. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-field.interface.js +2 -2
  124. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-field-internal.interface.js +2 -2
  125. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields-base.component.js +200 -200
  126. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields.component.js +129 -129
  127. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-load/po-dynamic-form-load.interface.js +2 -2
  128. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-load/po-dynamic-form-load.service.js +32 -32
  129. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-operation/po-dynamic-form-operation.js +20 -20
  130. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-response.interface.js +2 -2
  131. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-field-changed.interface.js +2 -2
  132. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-field-validation.interface.js +2 -2
  133. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-validation.interface.js +2 -2
  134. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-validation.service.js +39 -39
  135. package/esm2015/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form.component.js +167 -167
  136. package/esm2015/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view-base.component.js +163 -163
  137. package/esm2015/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view-field.interface.js +2 -2
  138. package/esm2015/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view.component.js +101 -101
  139. package/esm2015/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view.service.js +17 -17
  140. package/esm2015/lib/components/po-dynamic/po-dynamic.module.js +35 -35
  141. package/esm2015/lib/components/po-dynamic/po-dynamic.util.js +18 -18
  142. package/esm2015/lib/components/po-field/index.js +51 -51
  143. package/esm2015/lib/components/po-field/po-checkbox/po-checkbox-base.component.js +98 -98
  144. package/esm2015/lib/components/po-field/po-checkbox/po-checkbox.component.js +94 -94
  145. package/esm2015/lib/components/po-field/po-checkbox-group/interfaces/po-checkbox-group-option-view.interface.js +2 -2
  146. package/esm2015/lib/components/po-field/po-checkbox-group/interfaces/po-checkbox-group-option.interface.js +2 -2
  147. package/esm2015/lib/components/po-field/po-checkbox-group/po-checkbox-group-base.component.js +297 -289
  148. package/esm2015/lib/components/po-field/po-checkbox-group/po-checkbox-group.component.js +98 -98
  149. package/esm2015/lib/components/po-field/po-checkbox-group/po-checkbox-group.module.js +20 -20
  150. package/esm2015/lib/components/po-field/po-clean/po-clean-base.component.js +42 -42
  151. package/esm2015/lib/components/po-field/po-clean/po-clean.component.js +33 -33
  152. package/esm2015/lib/components/po-field/po-clean/po-clean.module.js +18 -18
  153. package/esm2015/lib/components/po-field/po-combo/interfaces/po-combo-filter.interface.js +2 -2
  154. package/esm2015/lib/components/po-field/po-combo/interfaces/po-combo-group.interface.js +2 -2
  155. package/esm2015/lib/components/po-field/po-combo/interfaces/po-combo-literals.interface.js +2 -2
  156. package/esm2015/lib/components/po-field/po-combo/interfaces/po-combo-option-group.interface.js +2 -2
  157. package/esm2015/lib/components/po-field/po-combo/interfaces/po-combo-option.interface.js +2 -2
  158. package/esm2015/lib/components/po-field/po-combo/interfaces/po-response.interface.js +2 -2
  159. package/esm2015/lib/components/po-field/po-combo/po-combo-base.component.js +749 -741
  160. package/esm2015/lib/components/po-field/po-combo/po-combo-filter-mode.enum.js +17 -17
  161. package/esm2015/lib/components/po-field/po-combo/po-combo-filter.service.js +78 -78
  162. package/esm2015/lib/components/po-field/po-combo/po-combo-option-template/po-combo-option-template.directive.js +81 -81
  163. package/esm2015/lib/components/po-field/po-combo/po-combo.component.js +525 -525
  164. package/esm2015/lib/components/po-field/po-datepicker/enums/po-datepicker-iso-format.enum.js +17 -17
  165. package/esm2015/lib/components/po-field/po-datepicker/po-datepicker-base.component.js +396 -396
  166. package/esm2015/lib/components/po-field/po-datepicker/po-datepicker.component.js +345 -344
  167. package/esm2015/lib/components/po-field/po-datepicker/po-datepicker.module.js +22 -22
  168. package/esm2015/lib/components/po-field/po-datepicker-range/interfaces/po-datepicker-range-literals.interface.js +2 -2
  169. package/esm2015/lib/components/po-field/po-datepicker-range/interfaces/po-datepicker-range.interface.js +2 -2
  170. package/esm2015/lib/components/po-field/po-datepicker-range/po-datepicker-range-base.component.js +475 -475
  171. package/esm2015/lib/components/po-field/po-datepicker-range/po-datepicker-range.component.js +443 -436
  172. package/esm2015/lib/components/po-field/po-datepicker-range/po-datepicker-range.literals.js +27 -27
  173. package/esm2015/lib/components/po-field/po-decimal/po-decimal.component.js +598 -598
  174. package/esm2015/lib/components/po-field/po-email/po-email.component.js +106 -106
  175. package/esm2015/lib/components/po-field/po-field-container/po-field-container-bottom/po-field-container-bottom.component.js +29 -29
  176. package/esm2015/lib/components/po-field/po-field-container/po-field-container-literals.js +15 -15
  177. package/esm2015/lib/components/po-field/po-field-container/po-field-container.component.js +39 -39
  178. package/esm2015/lib/components/po-field/po-field-container/po-field-container.module.js +19 -19
  179. package/esm2015/lib/components/po-field/po-field-validate.model.js +69 -69
  180. package/esm2015/lib/components/po-field/po-field.model.js +78 -78
  181. package/esm2015/lib/components/po-field/po-field.module.js +156 -156
  182. package/esm2015/lib/components/po-field/po-input/po-input-base.component.js +357 -357
  183. package/esm2015/lib/components/po-field/po-input/po-input.component.js +56 -56
  184. package/esm2015/lib/components/po-field/po-input/po-mask.js +460 -460
  185. package/esm2015/lib/components/po-field/po-input-generic/po-input-generic.js +187 -187
  186. package/esm2015/lib/components/po-field/po-login/po-login.component.js +65 -65
  187. package/esm2015/lib/components/po-field/po-lookup/interfaces/po-lookup-advanced-filter.interface.js +2 -2
  188. package/esm2015/lib/components/po-field/po-lookup/interfaces/po-lookup-column.interface.js +2 -2
  189. package/esm2015/lib/components/po-field/po-lookup/interfaces/po-lookup-filter.interface.js +2 -2
  190. package/esm2015/lib/components/po-field/po-lookup/interfaces/po-lookup-filtered-items-params.interface.js +2 -2
  191. package/esm2015/lib/components/po-field/po-lookup/interfaces/po-lookup-literals.interface.js +2 -2
  192. package/esm2015/lib/components/po-field/po-lookup/interfaces/po-lookup-response-api.interface.js +2 -2
  193. package/esm2015/lib/components/po-field/po-lookup/po-lookup-base.component.js +451 -451
  194. package/esm2015/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal-base.component.js +357 -347
  195. package/esm2015/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal.component.js +130 -130
  196. package/esm2015/lib/components/po-field/po-lookup/po-lookup.component.js +337 -337
  197. package/esm2015/lib/components/po-field/po-lookup/services/po-lookup-filter.service.js +59 -59
  198. package/esm2015/lib/components/po-field/po-lookup/services/po-lookup-modal.service.js +62 -62
  199. package/esm2015/lib/components/po-field/po-multiselect/po-multiselect-base.component.js +576 -571
  200. package/esm2015/lib/components/po-field/po-multiselect/po-multiselect-dropdown/po-multiselect-dropdown.component.js +139 -139
  201. package/esm2015/lib/components/po-field/po-multiselect/po-multiselect-filter-mode.enum.js +17 -17
  202. package/esm2015/lib/components/po-field/po-multiselect/po-multiselect-filter.interface.js +2 -2
  203. package/esm2015/lib/components/po-field/po-multiselect/po-multiselect-filter.service.js +50 -50
  204. package/esm2015/lib/components/po-field/po-multiselect/po-multiselect-item/po-multiselect-item.component.js +33 -33
  205. package/esm2015/lib/components/po-field/po-multiselect/po-multiselect-literals.interface.js +2 -2
  206. package/esm2015/lib/components/po-field/po-multiselect/po-multiselect-option.interface.js +2 -2
  207. package/esm2015/lib/components/po-field/po-multiselect/po-multiselect-search/po-multiselect-search.component.js +57 -57
  208. package/esm2015/lib/components/po-field/po-multiselect/po-multiselect.component.js +359 -359
  209. package/esm2015/lib/components/po-field/po-number/po-number-base.component.js +114 -114
  210. package/esm2015/lib/components/po-field/po-number/po-number.component.js +119 -119
  211. package/esm2015/lib/components/po-field/po-password/po-password.component.js +92 -92
  212. package/esm2015/lib/components/po-field/po-radio-group/po-radio-group-base.component.js +184 -184
  213. package/esm2015/lib/components/po-field/po-radio-group/po-radio-group-option.interface.js +2 -2
  214. package/esm2015/lib/components/po-field/po-radio-group/po-radio-group.component.js +119 -119
  215. package/esm2015/lib/components/po-field/po-rich-text/interfaces/po-rich-text-toolbar-button-group-item.interface.js +2 -2
  216. package/esm2015/lib/components/po-field/po-rich-text/po-rich-text-base.component.js +181 -181
  217. package/esm2015/lib/components/po-field/po-rich-text/po-rich-text-body/po-rich-text-body.component.js +312 -312
  218. package/esm2015/lib/components/po-field/po-rich-text/po-rich-text-image-modal/po-rich-text-image-modal.component.js +96 -96
  219. package/esm2015/lib/components/po-field/po-rich-text/po-rich-text-link-modal/po-rich-text-link-modal.component.js +140 -140
  220. package/esm2015/lib/components/po-field/po-rich-text/po-rich-text-literals.js +83 -83
  221. package/esm2015/lib/components/po-field/po-rich-text/po-rich-text-toolbar/po-rich-text-toolbar.component.js +166 -166
  222. package/esm2015/lib/components/po-field/po-rich-text/po-rich-text.component.js +147 -147
  223. package/esm2015/lib/components/po-field/po-rich-text/po-rich-text.service.js +17 -17
  224. package/esm2015/lib/components/po-field/po-select/po-select-option-template/po-select-option-template.directive.js +59 -59
  225. package/esm2015/lib/components/po-field/po-select/po-select-option.interface.js +2 -2
  226. package/esm2015/lib/components/po-field/po-select/po-select.component.js +366 -359
  227. package/esm2015/lib/components/po-field/po-switch/po-switch-label-position.enum.js +15 -15
  228. package/esm2015/lib/components/po-field/po-switch/po-switch.component.js +190 -190
  229. package/esm2015/lib/components/po-field/po-textarea/po-textarea-base.component.js +269 -269
  230. package/esm2015/lib/components/po-field/po-textarea/po-textarea.component.js +130 -130
  231. package/esm2015/lib/components/po-field/po-upload/interfaces/po-upload-file-restriction.interface.js +2 -2
  232. package/esm2015/lib/components/po-field/po-upload/interfaces/po-upload-literals.interface.js +2 -2
  233. package/esm2015/lib/components/po-field/po-upload/po-upload-base.component.js +581 -573
  234. package/esm2015/lib/components/po-field/po-upload/po-upload-base.service.js +88 -88
  235. package/esm2015/lib/components/po-field/po-upload/po-upload-drag-drop/po-upload-drag-drop-area/po-upload-drag-drop-area.component.js +30 -30
  236. package/esm2015/lib/components/po-field/po-upload/po-upload-drag-drop/po-upload-drag-drop-area-overlay/po-upload-drag-drop-area-overlay.component.js +40 -40
  237. package/esm2015/lib/components/po-field/po-upload/po-upload-drag-drop/po-upload-drag-drop.component.js +60 -60
  238. package/esm2015/lib/components/po-field/po-upload/po-upload-drag-drop/po-upload-drag-drop.directive.js +165 -165
  239. package/esm2015/lib/components/po-field/po-upload/po-upload-file-restrictions/po-upload-file-restrictions.component.js +63 -63
  240. package/esm2015/lib/components/po-field/po-upload/po-upload-file.js +39 -39
  241. package/esm2015/lib/components/po-field/po-upload/po-upload-status.enum.js +13 -13
  242. package/esm2015/lib/components/po-field/po-upload/po-upload.component.js +326 -326
  243. package/esm2015/lib/components/po-field/po-upload/po-upload.service.js +8 -8
  244. package/esm2015/lib/components/po-field/po-url/po-url.component.js +86 -86
  245. package/esm2015/lib/components/po-field/validators.js +41 -41
  246. package/esm2015/lib/components/po-gauge/index.js +4 -4
  247. package/esm2015/lib/components/po-gauge/interfaces/po-gauge-coordinates.interface.js +2 -2
  248. package/esm2015/lib/components/po-gauge/interfaces/po-gauge-ranges.interface.js +2 -2
  249. package/esm2015/lib/components/po-gauge/interfaces/po-gauge-svg-container.interface.js +2 -2
  250. package/esm2015/lib/components/po-gauge/po-gauge-base.component.js +146 -146
  251. package/esm2015/lib/components/po-gauge/po-gauge-default-values.constant.js +11 -11
  252. package/esm2015/lib/components/po-gauge/po-gauge-description/po-gauge-description.component.js +27 -27
  253. package/esm2015/lib/components/po-gauge/po-gauge-legend/po-gauge-legend.component.js +27 -27
  254. package/esm2015/lib/components/po-gauge/po-gauge-svg/po-gauge-path/po-gauge-path.component.js +20 -20
  255. package/esm2015/lib/components/po-gauge/po-gauge-svg/po-gauge-pointer/po-gauge-pointer.component.js +50 -50
  256. package/esm2015/lib/components/po-gauge/po-gauge-svg/po-gauge-svg.component.js +204 -204
  257. package/esm2015/lib/components/po-gauge/po-gauge-title/po-gauge-title.component.js +13 -13
  258. package/esm2015/lib/components/po-gauge/po-gauge.component.js +72 -72
  259. package/esm2015/lib/components/po-gauge/po-gauge.module.js +32 -32
  260. package/esm2015/lib/components/po-grid/index.js +4 -4
  261. package/esm2015/lib/components/po-grid/po-grid-cell/po-grid-cell.component.js +111 -111
  262. package/esm2015/lib/components/po-grid/po-grid-cell-action/po-grid-cell-action.component.js +24 -24
  263. package/esm2015/lib/components/po-grid/po-grid-head/po-grid-head.component.js +30 -30
  264. package/esm2015/lib/components/po-grid/po-grid-row-actions.interface.js +2 -2
  265. package/esm2015/lib/components/po-grid/po-grid.component.js +314 -314
  266. package/esm2015/lib/components/po-grid/po-grid.module.js +23 -23
  267. package/esm2015/lib/components/po-icon/index.js +3 -3
  268. package/esm2015/lib/components/po-icon/po-icon.component.js +62 -62
  269. package/esm2015/lib/components/po-icon/po-icon.module.js +18 -18
  270. package/esm2015/lib/components/po-info/index.js +4 -4
  271. package/esm2015/lib/components/po-info/po-info-base.component.js +62 -62
  272. package/esm2015/lib/components/po-info/po-info-orietation.enum.js +15 -15
  273. package/esm2015/lib/components/po-info/po-info.component.js +36 -36
  274. package/esm2015/lib/components/po-info/po-info.module.js +21 -21
  275. package/esm2015/lib/components/po-list-view/index.js +7 -7
  276. package/esm2015/lib/components/po-list-view/interfaces/po-list-view-action.interface.js +2 -2
  277. package/esm2015/lib/components/po-list-view/interfaces/po-list-view-literals.interface.js +2 -2
  278. package/esm2015/lib/components/po-list-view/po-list-view-base.component.js +274 -274
  279. package/esm2015/lib/components/po-list-view/po-list-view-content-template/po-list-view-content-template.directive.js +101 -101
  280. package/esm2015/lib/components/po-list-view/po-list-view-detail-template/po-list-view-detail-template.directive.js +64 -64
  281. package/esm2015/lib/components/po-list-view/po-list-view.component.js +128 -128
  282. package/esm2015/lib/components/po-list-view/po-list-view.module.js +51 -51
  283. package/esm2015/lib/components/po-loading/index.js +5 -5
  284. package/esm2015/lib/components/po-loading/po-loading-base.component.js +24 -24
  285. package/esm2015/lib/components/po-loading/po-loading-icon/po-loading-icon.component.js +37 -37
  286. package/esm2015/lib/components/po-loading/po-loading-overlay/interfaces/po-loading-overlay-literals.interface.js +2 -2
  287. package/esm2015/lib/components/po-loading/po-loading-overlay/po-loading-overlay-base.component.js +91 -91
  288. package/esm2015/lib/components/po-loading/po-loading-overlay/po-loading-overlay.component.js +41 -41
  289. package/esm2015/lib/components/po-loading/po-loading.component.js +16 -16
  290. package/esm2015/lib/components/po-loading/po-loading.module.js +22 -22
  291. package/esm2015/lib/components/po-menu/index.js +9 -9
  292. package/esm2015/lib/components/po-menu/po-menu-base.component.js +299 -299
  293. package/esm2015/lib/components/po-menu/po-menu-filter/po-menu-filter-literals.interface.js +2 -2
  294. package/esm2015/lib/components/po-menu/po-menu-filter/po-menu-filter.component.js +40 -40
  295. package/esm2015/lib/components/po-menu/po-menu-filter/po-menu-filter.interface.js +2 -2
  296. package/esm2015/lib/components/po-menu/po-menu-header-template/po-menu-header-template.directive.js +51 -51
  297. package/esm2015/lib/components/po-menu/po-menu-item/po-menu-item-badge.interface.js +2 -2
  298. package/esm2015/lib/components/po-menu/po-menu-item/po-menu-item-filtered.interface.js +2 -2
  299. package/esm2015/lib/components/po-menu/po-menu-item/po-menu-item.component.js +173 -173
  300. package/esm2015/lib/components/po-menu/po-menu-item.interface.js +2 -2
  301. package/esm2015/lib/components/po-menu/po-menu.component.js +497 -497
  302. package/esm2015/lib/components/po-menu/po-menu.module.js +26 -26
  303. package/esm2015/lib/components/po-menu/services/po-menu-global.service.js +32 -32
  304. package/esm2015/lib/components/po-menu/services/po-menu-items.service.js +35 -35
  305. package/esm2015/lib/components/po-menu/services/po-menu.service.js +35 -35
  306. package/esm2015/lib/components/po-menu-panel/index.js +4 -4
  307. package/esm2015/lib/components/po-menu-panel/po-menu-panel-base.component.js +76 -76
  308. package/esm2015/lib/components/po-menu-panel/po-menu-panel-item/po-menu-panel-item-internal.interface.js +2 -2
  309. package/esm2015/lib/components/po-menu-panel/po-menu-panel-item/po-menu-panel-item.component.js +54 -54
  310. package/esm2015/lib/components/po-menu-panel/po-menu-panel-item/po-menu-panel-item.interface.js +2 -2
  311. package/esm2015/lib/components/po-menu-panel/po-menu-panel.component.js +145 -145
  312. package/esm2015/lib/components/po-menu-panel/po-menu-panel.module.js +24 -24
  313. package/esm2015/lib/components/po-menu-panel/services/po-menu-panel-items.service.js +35 -35
  314. package/esm2015/lib/components/po-modal/index.js +5 -5
  315. package/esm2015/lib/components/po-modal/po-modal-action.interface.js +2 -2
  316. package/esm2015/lib/components/po-modal/po-modal-base.component.js +121 -121
  317. package/esm2015/lib/components/po-modal/po-modal-footer/po-modal-footer.component.js +43 -43
  318. package/esm2015/lib/components/po-modal/po-modal.component.js +114 -114
  319. package/esm2015/lib/components/po-modal/po-modal.literals.js +15 -15
  320. package/esm2015/lib/components/po-modal/po-modal.module.js +19 -19
  321. package/esm2015/lib/components/po-navbar/index.js +5 -5
  322. package/esm2015/lib/components/po-navbar/interfaces/po-navbar-icon-action.interface.js +2 -2
  323. package/esm2015/lib/components/po-navbar/interfaces/po-navbar-item.interface.js +2 -2
  324. package/esm2015/lib/components/po-navbar/interfaces/po-navbar-literals.interface.js +2 -2
  325. package/esm2015/lib/components/po-navbar/po-navbar-actions/po-navbar-action/po-navbar-action.component.js +43 -43
  326. package/esm2015/lib/components/po-navbar/po-navbar-actions/po-navbar-action-popup/po-navbar-action-popup.component.js +18 -18
  327. package/esm2015/lib/components/po-navbar/po-navbar-actions/po-navbar-actions.component.js +19 -19
  328. package/esm2015/lib/components/po-navbar/po-navbar-actions/po-navbar-actions.module.js +18 -18
  329. package/esm2015/lib/components/po-navbar/po-navbar-base.component.js +147 -147
  330. package/esm2015/lib/components/po-navbar/po-navbar-item-navigation/po-navbar-item-navigation-icon/po-navbar-item-navigation-icon.component.js +18 -18
  331. package/esm2015/lib/components/po-navbar/po-navbar-item-navigation/po-navbar-item-navigation.component.js +18 -18
  332. package/esm2015/lib/components/po-navbar/po-navbar-item-navigation/po-navbar-item-navigation.module.js +15 -15
  333. package/esm2015/lib/components/po-navbar/po-navbar-items/po-navbar-item/po-navbar-item.component.js +30 -30
  334. package/esm2015/lib/components/po-navbar/po-navbar-items/po-navbar-items.component.js +53 -53
  335. package/esm2015/lib/components/po-navbar/po-navbar-items/po-navbar-items.module.js +15 -15
  336. package/esm2015/lib/components/po-navbar/po-navbar-logo/po-navbar-logo.component.js +13 -13
  337. package/esm2015/lib/components/po-navbar/po-navbar.component.js +213 -213
  338. package/esm2015/lib/components/po-navbar/po-navbar.module.js +57 -57
  339. package/esm2015/lib/components/po-page/index.js +15 -15
  340. package/esm2015/lib/components/po-page/po-page-action.interface.js +2 -2
  341. package/esm2015/lib/components/po-page/po-page-base.component.js +23 -23
  342. package/esm2015/lib/components/po-page/po-page-content/po-page-content-base.component.js +10 -10
  343. package/esm2015/lib/components/po-page/po-page-content/po-page-content.component.js +54 -54
  344. package/esm2015/lib/components/po-page/po-page-default/po-page-default-base.component.js +111 -111
  345. package/esm2015/lib/components/po-page/po-page-default/po-page-default-literals.interface.js +2 -2
  346. package/esm2015/lib/components/po-page/po-page-default/po-page-default.component.js +98 -98
  347. package/esm2015/lib/components/po-page/po-page-default/po-page-default.interface.js +2 -2
  348. package/esm2015/lib/components/po-page/po-page-detail/po-page-detail-base.component.js +141 -141
  349. package/esm2015/lib/components/po-page/po-page-detail/po-page-detail-literals.interface.js +2 -2
  350. package/esm2015/lib/components/po-page/po-page-detail/po-page-detail.component.js +62 -62
  351. package/esm2015/lib/components/po-page/po-page-edit/po-page-edit-base.component.js +146 -146
  352. package/esm2015/lib/components/po-page/po-page-edit/po-page-edit-literals.interface.js +2 -2
  353. package/esm2015/lib/components/po-page/po-page-edit/po-page-edit.component.js +65 -65
  354. package/esm2015/lib/components/po-page/po-page-filter.interface.js +2 -2
  355. package/esm2015/lib/components/po-page/po-page-header/po-page-header-base.component.js +26 -26
  356. package/esm2015/lib/components/po-page/po-page-header/po-page-header.component.js +15 -15
  357. package/esm2015/lib/components/po-page/po-page-list/po-page-list-base.component.js +137 -137
  358. package/esm2015/lib/components/po-page/po-page-list/po-page-list-literals.interface.js +2 -2
  359. package/esm2015/lib/components/po-page/po-page-list/po-page-list.component.js +188 -188
  360. package/esm2015/lib/components/po-page/po-page-slide/po-page-slide-base.component.js +135 -135
  361. package/esm2015/lib/components/po-page/po-page-slide/po-page-slide.component.js +121 -121
  362. package/esm2015/lib/components/po-page/po-page.component.js +16 -16
  363. package/esm2015/lib/components/po-page/po-page.interface.js +2 -2
  364. package/esm2015/lib/components/po-page/po-page.module.js +60 -60
  365. package/esm2015/lib/components/po-popover/index.js +3 -3
  366. package/esm2015/lib/components/po-popover/po-popover-base.component.js +113 -113
  367. package/esm2015/lib/components/po-popover/po-popover.component.js +138 -138
  368. package/esm2015/lib/components/po-popover/po-popover.module.js +17 -17
  369. package/esm2015/lib/components/po-popup/index.js +4 -4
  370. package/esm2015/lib/components/po-popup/po-popup-action.interface.js +2 -2
  371. package/esm2015/lib/components/po-popup/po-popup-base.component.js +186 -186
  372. package/esm2015/lib/components/po-popup/po-popup.component.js +169 -169
  373. package/esm2015/lib/components/po-popup/po-popup.module.js +21 -21
  374. package/esm2015/lib/components/po-progress/enums/po-progress-status.enum.js +17 -17
  375. package/esm2015/lib/components/po-progress/index.js +4 -4
  376. package/esm2015/lib/components/po-progress/po-progress-bar/po-progress-bar.component.js +18 -18
  377. package/esm2015/lib/components/po-progress/po-progress-base.component.js +107 -107
  378. package/esm2015/lib/components/po-progress/po-progress.component.js +56 -56
  379. package/esm2015/lib/components/po-progress/po-progress.module.js +19 -19
  380. package/esm2015/lib/components/po-slide/directives/po-slide-content-template.directive.js +59 -59
  381. package/esm2015/lib/components/po-slide/index.js +5 -5
  382. package/esm2015/lib/components/po-slide/interfaces/po-slide-item.interface.js +2 -2
  383. package/esm2015/lib/components/po-slide/po-slide-base.component.js +104 -104
  384. package/esm2015/lib/components/po-slide/po-slide-circles/po-slide-circles.component.js +26 -26
  385. package/esm2015/lib/components/po-slide/po-slide-control/po-slide-control.component.js +25 -25
  386. package/esm2015/lib/components/po-slide/po-slide-item/po-slide-item.component.js +37 -37
  387. package/esm2015/lib/components/po-slide/po-slide.component.js +256 -256
  388. package/esm2015/lib/components/po-slide/po-slide.module.js +58 -58
  389. package/esm2015/lib/components/po-stepper/enums/po-stepper-orientation.enum.js +18 -18
  390. package/esm2015/lib/components/po-stepper/enums/po-stepper-status.enum.js +23 -23
  391. package/esm2015/lib/components/po-stepper/index.js +7 -7
  392. package/esm2015/lib/components/po-stepper/po-step/po-step.component.js +78 -78
  393. package/esm2015/lib/components/po-stepper/po-stepper-base.component.js +144 -144
  394. package/esm2015/lib/components/po-stepper/po-stepper-circle/po-stepper-circle.component.js +47 -47
  395. package/esm2015/lib/components/po-stepper/po-stepper-item.interface.js +2 -2
  396. package/esm2015/lib/components/po-stepper/po-stepper-label/po-stepper-label.component.js +20 -20
  397. package/esm2015/lib/components/po-stepper/po-stepper-step/po-stepper-step.component.js +116 -116
  398. package/esm2015/lib/components/po-stepper/po-stepper.component.js +219 -219
  399. package/esm2015/lib/components/po-stepper/po-stepper.module.js +27 -27
  400. package/esm2015/lib/components/po-table/enums/po-table-column-sort-type.enum.js +14 -14
  401. package/esm2015/lib/components/po-table/enums/po-table-row-template-arrow-direction.enum.js +14 -14
  402. package/esm2015/lib/components/po-table/index.js +18 -18
  403. package/esm2015/lib/components/po-table/interfaces/po-table-action.interface.js +2 -2
  404. package/esm2015/lib/components/po-table/interfaces/po-table-boolean.interface.js +2 -2
  405. package/esm2015/lib/components/po-table/interfaces/po-table-column-sort.interface.js +2 -2
  406. package/esm2015/lib/components/po-table/interfaces/po-table-column.interface.js +2 -2
  407. package/esm2015/lib/components/po-table/interfaces/po-table-filter.interface.js +2 -2
  408. package/esm2015/lib/components/po-table/interfaces/po-table-filtered-items-params.interface.js +2 -2
  409. package/esm2015/lib/components/po-table/interfaces/po-table-literals.interface.js +2 -2
  410. package/esm2015/lib/components/po-table/interfaces/po-table-response-api.interface.js +2 -2
  411. package/esm2015/lib/components/po-table/po-table-base.component.js +860 -860
  412. package/esm2015/lib/components/po-table/po-table-cell-template/po-table-cell-template.directive.js +82 -82
  413. package/esm2015/lib/components/po-table/po-table-column-icon/po-table-column-icon.component.js +72 -72
  414. package/esm2015/lib/components/po-table/po-table-column-icon/po-table-column-icon.interface.js +2 -2
  415. package/esm2015/lib/components/po-table/po-table-column-label/po-table-column-label.component.js +38 -38
  416. package/esm2015/lib/components/po-table/po-table-column-label/po-table-column-label.interface.js +2 -2
  417. package/esm2015/lib/components/po-table/po-table-column-link/po-table-column-link.component.js +38 -38
  418. package/esm2015/lib/components/po-table/po-table-column-manager/po-table-column-manager.component.js +250 -250
  419. package/esm2015/lib/components/po-table/po-table-column-template/po-table-column-template.directive.js +90 -90
  420. package/esm2015/lib/components/po-table/po-table-detail/po-table-detail-column.interface.js +2 -2
  421. package/esm2015/lib/components/po-table/po-table-detail/po-table-detail.component.js +88 -88
  422. package/esm2015/lib/components/po-table/po-table-detail/po-table-detail.interface.js +2 -2
  423. package/esm2015/lib/components/po-table/po-table-icon/po-table-icon.component.js +46 -46
  424. package/esm2015/lib/components/po-table/po-table-row-template/po-table-row-template.directive.js +128 -128
  425. package/esm2015/lib/components/po-table/po-table-show-subtitle/po-table-show-subtitle.component.js +21 -21
  426. package/esm2015/lib/components/po-table/po-table-subtitle-circle/po-table-subtitle-circle.component.js +41 -41
  427. package/esm2015/lib/components/po-table/po-table-subtitle-footer/po-table-subtitle-column.interface.js +2 -2
  428. package/esm2015/lib/components/po-table/po-table-subtitle-footer/po-table-subtitle-footer.component.js +70 -70
  429. package/esm2015/lib/components/po-table/po-table.component.js +542 -542
  430. package/esm2015/lib/components/po-table/po-table.module.js +75 -75
  431. package/esm2015/lib/components/po-table/services/po-table.service.js +38 -38
  432. package/esm2015/lib/components/po-tabs/index.js +5 -5
  433. package/esm2015/lib/components/po-tabs/po-tab/po-tab-base.component.js +82 -82
  434. package/esm2015/lib/components/po-tabs/po-tab/po-tab.component.js +27 -27
  435. package/esm2015/lib/components/po-tabs/po-tab/po-tab.interface.js +2 -2
  436. package/esm2015/lib/components/po-tabs/po-tab-button/po-tab-button.component.js +75 -75
  437. package/esm2015/lib/components/po-tabs/po-tab-dropdown/po-tab-dropdown.component.js +44 -44
  438. package/esm2015/lib/components/po-tabs/po-tabs-base.component.js +49 -49
  439. package/esm2015/lib/components/po-tabs/po-tabs.component.js +126 -126
  440. package/esm2015/lib/components/po-tabs/po-tabs.module.js +21 -21
  441. package/esm2015/lib/components/po-tag/enums/po-tag-icon.enum.js +19 -19
  442. package/esm2015/lib/components/po-tag/enums/po-tag-orientation.enum.js +15 -15
  443. package/esm2015/lib/components/po-tag/enums/po-tag-type.enum.js +19 -19
  444. package/esm2015/lib/components/po-tag/index.js +5 -5
  445. package/esm2015/lib/components/po-tag/interfaces/po-tag-item.interface.js +2 -2
  446. package/esm2015/lib/components/po-tag/po-tag-base.component.js +175 -175
  447. package/esm2015/lib/components/po-tag/po-tag.component.js +71 -71
  448. package/esm2015/lib/components/po-tag/po-tag.module.js +21 -21
  449. package/esm2015/lib/components/po-toolbar/index.js +5 -5
  450. package/esm2015/lib/components/po-toolbar/po-toolbar-action.interface.js +2 -2
  451. package/esm2015/lib/components/po-toolbar/po-toolbar-actions/po-toolbar-actions.component.js +35 -35
  452. package/esm2015/lib/components/po-toolbar/po-toolbar-base.component.js +43 -43
  453. package/esm2015/lib/components/po-toolbar/po-toolbar-notification/po-toolbar-notification.component.js +39 -39
  454. package/esm2015/lib/components/po-toolbar/po-toolbar-profile/po-toolbar-profile.component.js +28 -28
  455. package/esm2015/lib/components/po-toolbar/po-toolbar-profile/po-toolbar-profile.interface.js +2 -2
  456. package/esm2015/lib/components/po-toolbar/po-toolbar.component.js +46 -46
  457. package/esm2015/lib/components/po-toolbar/po-toolbar.module.js +32 -32
  458. package/esm2015/lib/components/po-tree-view/index.js +4 -4
  459. package/esm2015/lib/components/po-tree-view/po-tree-view-base.component.js +197 -197
  460. package/esm2015/lib/components/po-tree-view/po-tree-view-item/po-tree-view-item.component.js +58 -58
  461. package/esm2015/lib/components/po-tree-view/po-tree-view-item/po-tree-view-item.interface.js +2 -2
  462. package/esm2015/lib/components/po-tree-view/po-tree-view-item-header/po-tree-view-item-header.component.js +26 -26
  463. package/esm2015/lib/components/po-tree-view/po-tree-view.component.js +60 -60
  464. package/esm2015/lib/components/po-tree-view/po-tree-view.module.js +49 -49
  465. package/esm2015/lib/components/po-tree-view/services/po-tree-view.service.js +24 -24
  466. package/esm2015/lib/components/po-widget/index.js +3 -3
  467. package/esm2015/lib/components/po-widget/po-widget-base.component.js +216 -216
  468. package/esm2015/lib/components/po-widget/po-widget.component.js +114 -114
  469. package/esm2015/lib/components/po-widget/po-widget.module.js +19 -19
  470. package/esm2015/lib/decorators/index.js +3 -3
  471. package/esm2015/lib/decorators/input-boolean/input-boolean.decorator.js +18 -18
  472. package/esm2015/lib/decorators/input-required/input-required.decorator.js +34 -34
  473. package/esm2015/lib/decorators/property-decorator.interface.js +2 -2
  474. package/esm2015/lib/decorators/utils-decorators.js +64 -64
  475. package/esm2015/lib/directives/directives.module.js +14 -14
  476. package/esm2015/lib/directives/index.js +3 -3
  477. package/esm2015/lib/directives/po-tooltip/index.js +3 -3
  478. package/esm2015/lib/directives/po-tooltip/po-tooltip-base.directive.js +106 -106
  479. package/esm2015/lib/directives/po-tooltip/po-tooltip-control-position.service.js +8 -8
  480. package/esm2015/lib/directives/po-tooltip/po-tooltip.directive.js +147 -147
  481. package/esm2015/lib/directives/po-tooltip/po-tooltip.module.js +18 -18
  482. package/esm2015/lib/enums/po-color-palette.enum.js +35 -35
  483. package/esm2015/lib/enums/po-key-code.enum.js +31 -31
  484. package/esm2015/lib/guards/guards.module.js +13 -13
  485. package/esm2015/lib/guards/index.js +2 -2
  486. package/esm2015/lib/index.js +10 -10
  487. package/esm2015/lib/interceptors/index.js +4 -4
  488. package/esm2015/lib/interceptors/interceptors.module.js +15 -15
  489. package/esm2015/lib/interceptors/po-http-interceptor/index.js +3 -3
  490. package/esm2015/lib/interceptors/po-http-interceptor/po-http-interceptor-base.service.js +249 -249
  491. package/esm2015/lib/interceptors/po-http-interceptor/po-http-interceptor-detail/po-http-interceptor-detail-literals.interface.js +39 -39
  492. package/esm2015/lib/interceptors/po-http-interceptor/po-http-interceptor-detail/po-http-interceptor-detail.component.js +83 -83
  493. package/esm2015/lib/interceptors/po-http-interceptor/po-http-interceptor-detail/po-http-interceptor-detail.interface.js +2 -2
  494. package/esm2015/lib/interceptors/po-http-interceptor/po-http-interceptor-literals.js +23 -23
  495. package/esm2015/lib/interceptors/po-http-interceptor/po-http-interceptor.module.js +28 -28
  496. package/esm2015/lib/interceptors/po-http-interceptor/po-http-interceptor.service.js +28 -28
  497. package/esm2015/lib/interceptors/po-http-request/index.js +3 -3
  498. package/esm2015/lib/interceptors/po-http-request/po-http-request-control-service.js +23 -23
  499. package/esm2015/lib/interceptors/po-http-request/po-http-request-interceptor.service.js +169 -169
  500. package/esm2015/lib/interceptors/po-http-request/po-http-request.module.js +24 -24
  501. package/esm2015/lib/interfaces/index.js +2 -2
  502. package/esm2015/lib/interfaces/po-http/po-response-api.interface.js +2 -2
  503. package/esm2015/lib/pipes/index.js +3 -3
  504. package/esm2015/lib/pipes/pipes.module.js +14 -14
  505. package/esm2015/lib/pipes/po-time/index.js +3 -3
  506. package/esm2015/lib/pipes/po-time/po-time.module.js +19 -19
  507. package/esm2015/lib/pipes/po-time/po-time.pipe.js +55 -55
  508. package/esm2015/lib/po.module.js +34 -34
  509. package/esm2015/lib/services/index.js +11 -11
  510. package/esm2015/lib/services/po-active-overlay/index.js +3 -3
  511. package/esm2015/lib/services/po-active-overlay/po-active-overlay.module.js +16 -16
  512. package/esm2015/lib/services/po-active-overlay/po-active-overlay.service.js +14 -14
  513. package/esm2015/lib/services/po-color/po-color.service.js +60 -60
  514. package/esm2015/lib/services/po-color/po-colors.constant.js +43 -43
  515. package/esm2015/lib/services/po-color-palette/index.js +3 -3
  516. package/esm2015/lib/services/po-color-palette/po-color-palette.module.js +16 -16
  517. package/esm2015/lib/services/po-color-palette/po-color-palette.service.js +25 -25
  518. package/esm2015/lib/services/po-component-injector/index.js +3 -3
  519. package/esm2015/lib/services/po-component-injector/po-component-injector.module.js +14 -14
  520. package/esm2015/lib/services/po-component-injector/po-component-injector.service.js +34 -34
  521. package/esm2015/lib/services/po-control-position/index.js +3 -3
  522. package/esm2015/lib/services/po-control-position/po-control-position.constants.js +16 -16
  523. package/esm2015/lib/services/po-control-position/po-control-position.module.js +15 -15
  524. package/esm2015/lib/services/po-control-position/po-control-position.service.js +361 -361
  525. package/esm2015/lib/services/po-date/index.js +3 -3
  526. package/esm2015/lib/services/po-date/po-date.module.js +16 -16
  527. package/esm2015/lib/services/po-date/po-date.service.js +201 -201
  528. package/esm2015/lib/services/po-dialog/index.js +8 -8
  529. package/esm2015/lib/services/po-dialog/interfaces/po-dialog-alert-literals.interface.js +2 -2
  530. package/esm2015/lib/services/po-dialog/interfaces/po-dialog-confirm-literals.interface.js +2 -2
  531. package/esm2015/lib/services/po-dialog/interfaces/po-dialog.interface.js +2 -2
  532. package/esm2015/lib/services/po-dialog/po-dialog-base.service.js +18 -18
  533. package/esm2015/lib/services/po-dialog/po-dialog.component.js +115 -115
  534. package/esm2015/lib/services/po-dialog/po-dialog.enum.js +16 -16
  535. package/esm2015/lib/services/po-dialog/po-dialog.module.js +15 -15
  536. package/esm2015/lib/services/po-dialog/po-dialog.service.js +42 -42
  537. package/esm2015/lib/services/po-i18n/index.js +8 -8
  538. package/esm2015/lib/services/po-i18n/interfaces/po-i18n-config-default.interface.js +2 -2
  539. package/esm2015/lib/services/po-i18n/interfaces/po-i18n-config.interface.js +2 -2
  540. package/esm2015/lib/services/po-i18n/interfaces/po-i18n-literals.interface.js +2 -2
  541. package/esm2015/lib/services/po-i18n/po-i18n-base.pipe.js +40 -40
  542. package/esm2015/lib/services/po-i18n/po-i18n-base.service.js +439 -439
  543. package/esm2015/lib/services/po-i18n/po-i18n-config-injection-token.js +3 -3
  544. package/esm2015/lib/services/po-i18n/po-i18n.module.js +188 -188
  545. package/esm2015/lib/services/po-i18n/po-i18n.pipe.js +21 -21
  546. package/esm2015/lib/services/po-i18n/po-i18n.service.js +20 -20
  547. package/esm2015/lib/services/po-language/index.js +5 -5
  548. package/esm2015/lib/services/po-language/po-language.constant.js +75 -75
  549. package/esm2015/lib/services/po-language/po-language.interface.js +2 -2
  550. package/esm2015/lib/services/po-language/po-language.module.js +15 -15
  551. package/esm2015/lib/services/po-language/po-language.service.js +136 -136
  552. package/esm2015/lib/services/po-notification/index.js +6 -6
  553. package/esm2015/lib/services/po-notification/po-notification-base.service.js +111 -111
  554. package/esm2015/lib/services/po-notification/po-notification.interface.js +2 -2
  555. package/esm2015/lib/services/po-notification/po-notification.module.js +15 -15
  556. package/esm2015/lib/services/po-notification/po-notification.service.js +92 -92
  557. package/esm2015/lib/services/po-notification/po-toaster/po-toaster-base.component.js +15 -15
  558. package/esm2015/lib/services/po-notification/po-toaster/po-toaster-orientation.enum.js +13 -13
  559. package/esm2015/lib/services/po-notification/po-toaster/po-toaster-type.enum.js +17 -17
  560. package/esm2015/lib/services/po-notification/po-toaster/po-toaster.component.js +132 -132
  561. package/esm2015/lib/services/po-notification/po-toaster/po-toaster.interface.js +2 -2
  562. package/esm2015/lib/services/services.module.js +40 -40
  563. package/esm2015/lib/utils/util.js +508 -508
  564. package/esm2015/po-ui-ng-components.js +205 -205
  565. package/esm2015/public-api.js +2 -2
  566. package/fesm2015/po-ui-ng-components.js +35214 -35160
  567. package/fesm2015/po-ui-ng-components.js.map +1 -1
  568. package/lib/components/components.module.d.ts +2 -2
  569. package/lib/components/index.d.ts +37 -37
  570. package/lib/components/po-accordion/index.d.ts +3 -3
  571. package/lib/components/po-accordion/po-accordion-base.component.d.ts +28 -28
  572. package/lib/components/po-accordion/po-accordion-item/po-accordion-item.component.d.ts +49 -49
  573. package/lib/components/po-accordion/po-accordion-item-body/po-accordion-item-body.component.d.ts +3 -3
  574. package/lib/components/po-accordion/po-accordion-item-header/po-accordion-item-header.component.d.ts +7 -7
  575. package/lib/components/po-accordion/po-accordion.component.d.ts +37 -37
  576. package/lib/components/po-accordion/po-accordion.module.d.ts +33 -33
  577. package/lib/components/po-accordion/services/po-accordion.service.d.ts +13 -13
  578. package/lib/components/po-avatar/index.d.ts +2 -2
  579. package/lib/components/po-avatar/po-avatar-base.component.d.ts +53 -53
  580. package/lib/components/po-avatar/po-avatar.component.d.ts +28 -28
  581. package/lib/components/po-avatar/po-avatar.module.d.ts +7 -7
  582. package/lib/components/po-badge/po-badge-base.component.d.ts +55 -55
  583. package/lib/components/po-badge/po-badge.component.d.ts +8 -8
  584. package/lib/components/po-badge/po-badge.module.d.ts +7 -7
  585. package/lib/components/po-breadcrumb/index.d.ts +4 -4
  586. package/lib/components/po-breadcrumb/po-breadcrumb-base.component.d.ts +104 -104
  587. package/lib/components/po-breadcrumb/po-breadcrumb-dropdown/po-breadcrumb-dropdown.component.d.ts +11 -11
  588. package/lib/components/po-breadcrumb/po-breadcrumb-favorite/po-breadcrumb-favorite.component.d.ts +29 -29
  589. package/lib/components/po-breadcrumb/po-breadcrumb-favorite/po-breadcrumb-favorite.service.d.ts +27 -27
  590. package/lib/components/po-breadcrumb/po-breadcrumb-item/po-breadcrumb-item.component.d.ts +13 -13
  591. package/lib/components/po-breadcrumb/po-breadcrumb-item.interface.d.ts +31 -31
  592. package/lib/components/po-breadcrumb/po-breadcrumb.component.d.ts +53 -53
  593. package/lib/components/po-breadcrumb/po-breadcrumb.interface.d.ts +42 -42
  594. package/lib/components/po-breadcrumb/po-breadcrumb.module.d.ts +8 -8
  595. package/lib/components/po-button/index.d.ts +2 -2
  596. package/lib/components/po-button/po-button-base.component.d.ts +120 -120
  597. package/lib/components/po-button/po-button.component.d.ts +49 -49
  598. package/lib/components/po-button/po-button.module.d.ts +7 -7
  599. package/lib/components/po-button-group/index.d.ts +4 -4
  600. package/lib/components/po-button-group/po-button-group-base.component.d.ts +53 -53
  601. package/lib/components/po-button-group/po-button-group-item.interface.d.ts +64 -64
  602. package/lib/components/po-button-group/po-button-group-toggle.enum.d.ts +15 -15
  603. package/lib/components/po-button-group/po-button-group.component.d.ts +31 -31
  604. package/lib/components/po-button-group/po-button-group.module.d.ts +7 -7
  605. package/lib/components/po-calendar/index.d.ts +3 -3
  606. package/lib/components/po-calendar/po-calendar-base.component.d.ts +129 -129
  607. package/lib/components/po-calendar/po-calendar-header/po-calendar-header.component.d.ts +8 -8
  608. package/lib/components/po-calendar/po-calendar-mode.enum.d.ts +11 -11
  609. package/lib/components/po-calendar/po-calendar-wrapper/po-calendar-wrapper.component.d.ts +77 -77
  610. package/lib/components/po-calendar/po-calendar.component.d.ts +53 -53
  611. package/lib/components/po-calendar/po-calendar.module.d.ts +6 -6
  612. package/lib/components/po-calendar/services/po-calendar.lang.service.d.ts +16 -16
  613. package/lib/components/po-calendar/services/po-calendar.service.d.ts +5 -5
  614. package/lib/components/po-chart/directives/po-resize-observer.directive.d.ts +12 -12
  615. package/lib/components/po-chart/enums/po-chart-type.enum.d.ts +49 -49
  616. package/lib/components/po-chart/helpers/po-chart-default-values.constant.d.ts +8 -8
  617. package/lib/components/po-chart/index.d.ts +7 -7
  618. package/lib/components/po-chart/interfaces/po-chart-axis-options.interface.d.ts +37 -37
  619. package/lib/components/po-chart/interfaces/po-chart-bar-coordinates.interface.d.ts +23 -23
  620. package/lib/components/po-chart/interfaces/po-chart-container-size.interface.d.ts +23 -23
  621. package/lib/components/po-chart/interfaces/po-chart-label-coordinates.interface.d.ts +19 -19
  622. package/lib/components/po-chart/interfaces/po-chart-min-max-values.interface.d.ts +19 -19
  623. package/lib/components/po-chart/interfaces/po-chart-options.interface.d.ts +20 -20
  624. package/lib/components/po-chart/interfaces/po-chart-path-coordinates.interface.d.ts +23 -23
  625. package/lib/components/po-chart/interfaces/po-chart-points-coordinates.interface.d.ts +26 -26
  626. package/lib/components/po-chart/interfaces/po-chart-serie.interface.d.ts +101 -101
  627. package/lib/components/po-chart/po-chart-base.component.d.ts +152 -152
  628. package/lib/components/po-chart/po-chart-container/po-chart-axis/po-chart-axis-label/po-chart-axis-label.component.d.ts +10 -10
  629. package/lib/components/po-chart/po-chart-container/po-chart-axis/po-chart-axis-path/po-chart-axis-path.component.d.ts +7 -7
  630. package/lib/components/po-chart/po-chart-container/po-chart-axis/po-chart-axis.component.d.ts +60 -60
  631. package/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-bar-base.component.d.ts +31 -31
  632. package/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-bar-path/po-chart-bar-path.component.d.ts +13 -13
  633. package/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-bar.component.d.ts +13 -13
  634. package/lib/components/po-chart/po-chart-container/po-chart-bar/po-chart-column/po-chart-column.component.d.ts +13 -13
  635. package/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-circular-label/po-chart-circular-label.component.d.ts +11 -11
  636. package/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-circular-path/po-chart-circular-path.component.d.ts +13 -13
  637. package/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-circular-path/po-chart-tooltip.directive.d.ts +20 -20
  638. package/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-circular.component.d.ts +42 -42
  639. package/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-donut/po-chart-donut.component.d.ts +16 -16
  640. package/lib/components/po-chart/po-chart-container/po-chart-circular/po-chart-pie/po-chart-pie.component.d.ts +8 -8
  641. package/lib/components/po-chart/po-chart-container/po-chart-container.component.d.ts +43 -43
  642. package/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-area/po-chart-area.component.d.ts +20 -20
  643. package/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-line-base.component.d.ts +46 -46
  644. package/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-line.component.d.ts +13 -13
  645. package/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-path/po-chart-path.component.d.ts +19 -19
  646. package/lib/components/po-chart/po-chart-container/po-chart-line/po-chart-series-point/po-chart-series-point.component.d.ts +30 -30
  647. package/lib/components/po-chart/po-chart-legend/po-chart-legend.component.d.ts +7 -7
  648. package/lib/components/po-chart/po-chart-types/po-chart-circular/po-chart-circular.constant.d.ts +7 -7
  649. package/lib/components/po-chart/po-chart-types/po-chart-circular/po-chart-circular.d.ts +55 -55
  650. package/lib/components/po-chart/po-chart-types/po-chart-dynamic-type.component.d.ts +36 -36
  651. package/lib/components/po-chart/po-chart-types/po-chart-gauge/po-chart-gauge-series.interface.d.ts +39 -39
  652. package/lib/components/po-chart/po-chart-types/po-chart-gauge/po-chart-gauge-text-content/po-chart-gauge-text-content.component.d.ts +24 -24
  653. package/lib/components/po-chart/po-chart-types/po-chart-gauge/po-chart-gauge.component.d.ts +20 -20
  654. package/lib/components/po-chart/po-chart.component.d.ts +67 -67
  655. package/lib/components/po-chart/po-chart.module.d.ts +7 -7
  656. package/lib/components/po-chart/services/po-chart-maths.service.d.ts +63 -63
  657. package/lib/components/po-chart/services/po-chart-svg-container.service.d.ts +21 -21
  658. package/lib/components/po-container/index.d.ts +2 -2
  659. package/lib/components/po-container/po-container-base.component.d.ts +59 -59
  660. package/lib/components/po-container/po-container.component.d.ts +24 -24
  661. package/lib/components/po-container/po-container.module.d.ts +7 -7
  662. package/lib/components/po-disclaimer/index.d.ts +3 -3
  663. package/lib/components/po-disclaimer/po-disclaimer-base.component.d.ts +56 -56
  664. package/lib/components/po-disclaimer/po-disclaimer.component.d.ts +16 -16
  665. package/lib/components/po-disclaimer/po-disclaimer.interface.d.ts +17 -17
  666. package/lib/components/po-disclaimer/po-disclaimer.module.d.ts +6 -6
  667. package/lib/components/po-disclaimer-group/index.d.ts +4 -4
  668. package/lib/components/po-disclaimer-group/po-disclaimer-group-base.component.d.ts +114 -114
  669. package/lib/components/po-disclaimer-group/po-disclaimer-group-remove-action.interface.d.ts +18 -18
  670. package/lib/components/po-disclaimer-group/po-disclaimer-group.component.d.ts +28 -28
  671. package/lib/components/po-disclaimer-group/po-disclaimer-group.interface.d.ts +78 -78
  672. package/lib/components/po-disclaimer-group/po-disclaimer-group.module.d.ts +7 -7
  673. package/lib/components/po-disclaimer-group/po-disclaimer-remove/po-disclaimer-remove.component.d.ts +16 -16
  674. package/lib/components/po-divider/index.d.ts +2 -2
  675. package/lib/components/po-divider/po-divider-base.component.d.ts +10 -10
  676. package/lib/components/po-divider/po-divider.component.d.ts +23 -23
  677. package/lib/components/po-divider/po-divider.module.d.ts +7 -7
  678. package/lib/components/po-dropdown/index.d.ts +3 -3
  679. package/lib/components/po-dropdown/po-dropdown-action.interface.d.ts +11 -11
  680. package/lib/components/po-dropdown/po-dropdown-base.component.d.ts +54 -54
  681. package/lib/components/po-dropdown/po-dropdown.component.d.ts +41 -41
  682. package/lib/components/po-dropdown/po-dropdown.module.d.ts +6 -6
  683. package/lib/components/po-dynamic/index.d.ts +10 -10
  684. package/lib/components/po-dynamic/po-dynamic-field-type.enum.d.ts +23 -23
  685. package/lib/components/po-dynamic/po-dynamic-field.interface.d.ts +130 -130
  686. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-base.component.d.ts +215 -215
  687. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-field.interface.d.ts +249 -251
  688. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-field-internal.interface.d.ts +14 -14
  689. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields-base.component.d.ts +44 -44
  690. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields.component.d.ts +36 -36
  691. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-load/po-dynamic-form-load.interface.d.ts +20 -20
  692. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-load/po-dynamic-form-load.service.d.ts +8 -8
  693. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-operation/po-dynamic-form-operation.d.ts +10 -10
  694. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-response.interface.d.ts +29 -29
  695. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-field-changed.interface.d.ts +13 -13
  696. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-field-validation.interface.d.ts +21 -21
  697. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-validation.interface.d.ts +20 -20
  698. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-validation.service.d.ts +12 -12
  699. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form.component.d.ts +83 -83
  700. package/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view-base.component.d.ts +134 -134
  701. package/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view-field.interface.d.ts +104 -104
  702. package/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view.component.d.ts +36 -36
  703. package/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view.service.d.ts +10 -10
  704. package/lib/components/po-dynamic/po-dynamic.module.d.ts +2 -2
  705. package/lib/components/po-dynamic/po-dynamic.util.d.ts +4 -4
  706. package/lib/components/po-field/index.d.ts +50 -50
  707. package/lib/components/po-field/po-checkbox/po-checkbox-base.component.d.ts +62 -62
  708. package/lib/components/po-field/po-checkbox/po-checkbox.component.d.ts +51 -51
  709. package/lib/components/po-field/po-checkbox-group/interfaces/po-checkbox-group-option-view.interface.d.ts +14 -14
  710. package/lib/components/po-field/po-checkbox-group/interfaces/po-checkbox-group-option.interface.d.ts +24 -24
  711. package/lib/components/po-field/po-checkbox-group/po-checkbox-group-base.component.d.ts +184 -176
  712. package/lib/components/po-field/po-checkbox-group/po-checkbox-group.component.d.ts +50 -50
  713. package/lib/components/po-field/po-checkbox-group/po-checkbox-group.module.d.ts +7 -7
  714. package/lib/components/po-field/po-clean/po-clean-base.component.d.ts +30 -30
  715. package/lib/components/po-field/po-clean/po-clean.component.d.ts +17 -17
  716. package/lib/components/po-field/po-clean/po-clean.module.d.ts +7 -7
  717. package/lib/components/po-field/po-combo/interfaces/po-combo-filter.interface.d.ts +27 -27
  718. package/lib/components/po-field/po-combo/interfaces/po-combo-group.interface.d.ts +11 -11
  719. package/lib/components/po-field/po-combo/interfaces/po-combo-literals.interface.d.ts +11 -11
  720. package/lib/components/po-field/po-combo/interfaces/po-combo-option-group.interface.d.ts +14 -14
  721. package/lib/components/po-field/po-combo/interfaces/po-combo-option.interface.d.ts +21 -21
  722. package/lib/components/po-field/po-combo/interfaces/po-response.interface.d.ts +11 -11
  723. package/lib/components/po-field/po-combo/po-combo-base.component.d.ts +409 -401
  724. package/lib/components/po-field/po-combo/po-combo-filter-mode.enum.d.ts +15 -15
  725. package/lib/components/po-field/po-combo/po-combo-filter.service.d.ts +28 -28
  726. package/lib/components/po-field/po-combo/po-combo-option-template/po-combo-option-template.directive.d.ts +70 -70
  727. package/lib/components/po-field/po-combo/po-combo.component.d.ts +139 -139
  728. package/lib/components/po-field/po-datepicker/enums/po-datepicker-iso-format.enum.d.ts +15 -15
  729. package/lib/components/po-field/po-datepicker/po-datepicker-base.component.d.ts +223 -223
  730. package/lib/components/po-field/po-datepicker/po-datepicker.component.d.ts +101 -101
  731. package/lib/components/po-field/po-datepicker/po-datepicker.module.d.ts +7 -7
  732. package/lib/components/po-field/po-datepicker-range/interfaces/po-datepicker-range-literals.interface.d.ts +17 -17
  733. package/lib/components/po-field/po-datepicker-range/interfaces/po-datepicker-range.interface.d.ts +16 -16
  734. package/lib/components/po-field/po-datepicker-range/po-datepicker-range-base.component.d.ts +269 -269
  735. package/lib/components/po-field/po-datepicker-range/po-datepicker-range.component.d.ts +125 -124
  736. package/lib/components/po-field/po-datepicker-range/po-datepicker-range.literals.d.ts +7 -7
  737. package/lib/components/po-field/po-decimal/po-decimal.component.d.ts +180 -180
  738. package/lib/components/po-field/po-email/po-email.component.d.ts +42 -42
  739. package/lib/components/po-field/po-field-container/po-field-container-bottom/po-field-container-bottom.component.d.ts +15 -15
  740. package/lib/components/po-field/po-field-container/po-field-container-literals.d.ts +14 -14
  741. package/lib/components/po-field/po-field-container/po-field-container.component.d.ts +18 -18
  742. package/lib/components/po-field/po-field-container/po-field-container.module.d.ts +7 -7
  743. package/lib/components/po-field/po-field-validate.model.d.ts +38 -38
  744. package/lib/components/po-field/po-field.model.d.ts +51 -51
  745. package/lib/components/po-field/po-field.module.d.ts +12 -12
  746. package/lib/components/po-field/po-input/po-input-base.component.d.ts +265 -265
  747. package/lib/components/po-field/po-input/po-input.component.d.ts +29 -29
  748. package/lib/components/po-field/po-input/po-mask.d.ts +49 -49
  749. package/lib/components/po-field/po-input-generic/po-input-generic.d.ts +35 -35
  750. package/lib/components/po-field/po-login/po-login.component.d.ts +34 -34
  751. package/lib/components/po-field/po-lookup/interfaces/po-lookup-advanced-filter.interface.d.ts +8 -8
  752. package/lib/components/po-field/po-lookup/interfaces/po-lookup-column.interface.d.ts +44 -44
  753. package/lib/components/po-field/po-lookup/interfaces/po-lookup-filter.interface.d.ts +29 -29
  754. package/lib/components/po-field/po-lookup/interfaces/po-lookup-filtered-items-params.interface.d.ts +40 -40
  755. package/lib/components/po-field/po-lookup/interfaces/po-lookup-literals.interface.d.ts +40 -40
  756. package/lib/components/po-field/po-lookup/interfaces/po-lookup-response-api.interface.d.ts +8 -8
  757. package/lib/components/po-field/po-lookup/po-lookup-base.component.d.ts +387 -387
  758. package/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal-base.component.d.ts +119 -119
  759. package/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal.component.d.ts +41 -41
  760. package/lib/components/po-field/po-lookup/po-lookup.component.d.ts +113 -113
  761. package/lib/components/po-field/po-lookup/services/po-lookup-filter.service.d.ts +25 -25
  762. package/lib/components/po-field/po-lookup/services/po-lookup-modal.service.d.ts +44 -44
  763. package/lib/components/po-field/po-multiselect/po-multiselect-base.component.d.ts +345 -345
  764. package/lib/components/po-field/po-multiselect/po-multiselect-dropdown/po-multiselect-dropdown.component.d.ts +57 -57
  765. package/lib/components/po-field/po-multiselect/po-multiselect-filter-mode.enum.d.ts +15 -15
  766. package/lib/components/po-field/po-multiselect/po-multiselect-filter.interface.d.ts +28 -28
  767. package/lib/components/po-field/po-multiselect/po-multiselect-filter.service.d.ts +18 -18
  768. package/lib/components/po-field/po-multiselect/po-multiselect-item/po-multiselect-item.component.d.ts +17 -17
  769. package/lib/components/po-field/po-multiselect/po-multiselect-literals.interface.d.ts +15 -15
  770. package/lib/components/po-field/po-multiselect/po-multiselect-option.interface.d.ts +13 -13
  771. package/lib/components/po-field/po-multiselect/po-multiselect-search/po-multiselect-search.component.d.ts +34 -34
  772. package/lib/components/po-field/po-multiselect/po-multiselect.component.d.ts +107 -107
  773. package/lib/components/po-field/po-number/po-number-base.component.d.ts +18 -18
  774. package/lib/components/po-field/po-number/po-number.component.d.ts +59 -59
  775. package/lib/components/po-field/po-password/po-password.component.d.ts +48 -48
  776. package/lib/components/po-field/po-radio-group/po-radio-group-base.component.d.ts +119 -119
  777. package/lib/components/po-field/po-radio-group/po-radio-group-option.interface.d.ts +15 -15
  778. package/lib/components/po-field/po-radio-group/po-radio-group.component.d.ts +64 -64
  779. package/lib/components/po-field/po-rich-text/interfaces/po-rich-text-toolbar-button-group-item.interface.d.ts +4 -4
  780. package/lib/components/po-field/po-rich-text/po-rich-text-base.component.d.ts +144 -144
  781. package/lib/components/po-field/po-rich-text/po-rich-text-body/po-rich-text-body.component.d.ts +52 -52
  782. package/lib/components/po-field/po-rich-text/po-rich-text-image-modal/po-rich-text-image-modal.component.d.ts +34 -34
  783. package/lib/components/po-field/po-rich-text/po-rich-text-link-modal/po-rich-text-link-modal.component.d.ts +45 -45
  784. package/lib/components/po-field/po-rich-text/po-rich-text-literals.d.ts +82 -82
  785. package/lib/components/po-field/po-rich-text/po-rich-text-toolbar/po-rich-text-toolbar.component.d.ts +45 -45
  786. package/lib/components/po-field/po-rich-text/po-rich-text.component.d.ts +60 -60
  787. package/lib/components/po-field/po-rich-text/po-rich-text.service.d.ts +5 -5
  788. package/lib/components/po-field/po-select/po-select-option-template/po-select-option-template.directive.d.ts +48 -48
  789. package/lib/components/po-field/po-select/po-select-option.interface.d.ts +13 -13
  790. package/lib/components/po-field/po-select/po-select.component.d.ts +158 -151
  791. package/lib/components/po-field/po-switch/po-switch-label-position.enum.d.ts +13 -13
  792. package/lib/components/po-field/po-switch/po-switch.component.d.ts +102 -102
  793. package/lib/components/po-field/po-textarea/po-textarea-base.component.d.ts +178 -178
  794. package/lib/components/po-field/po-textarea/po-textarea.component.d.ts +59 -59
  795. package/lib/components/po-field/po-upload/interfaces/po-upload-file-restriction.interface.d.ts +37 -37
  796. package/lib/components/po-field/po-upload/interfaces/po-upload-literals.interface.d.ts +45 -45
  797. package/lib/components/po-field/po-upload/po-upload-base.component.d.ts +333 -325
  798. package/lib/components/po-field/po-upload/po-upload-base.service.d.ts +32 -32
  799. package/lib/components/po-field/po-upload/po-upload-drag-drop/po-upload-drag-drop-area/po-upload-drag-drop-area.component.d.ts +14 -14
  800. package/lib/components/po-field/po-upload/po-upload-drag-drop/po-upload-drag-drop-area-overlay/po-upload-drag-drop-area-overlay.component.d.ts +14 -14
  801. package/lib/components/po-field/po-upload/po-upload-drag-drop/po-upload-drag-drop.component.d.ts +24 -24
  802. package/lib/components/po-field/po-upload/po-upload-drag-drop/po-upload-drag-drop.directive.d.ts +32 -32
  803. package/lib/components/po-field/po-upload/po-upload-file-restrictions/po-upload-file-restrictions.component.d.ts +21 -21
  804. package/lib/components/po-field/po-upload/po-upload-file.d.ts +15 -15
  805. package/lib/components/po-field/po-upload/po-upload-status.enum.d.ts +6 -6
  806. package/lib/components/po-field/po-upload/po-upload.component.d.ts +106 -106
  807. package/lib/components/po-field/po-upload/po-upload.service.d.ts +3 -3
  808. package/lib/components/po-field/po-url/po-url.component.d.ts +41 -41
  809. package/lib/components/po-field/validators.d.ts +7 -7
  810. package/lib/components/po-gauge/index.d.ts +3 -3
  811. package/lib/components/po-gauge/interfaces/po-gauge-coordinates.interface.d.ts +19 -19
  812. package/lib/components/po-gauge/interfaces/po-gauge-ranges.interface.d.ts +44 -44
  813. package/lib/components/po-gauge/interfaces/po-gauge-svg-container.interface.d.ts +15 -15
  814. package/lib/components/po-gauge/po-gauge-base.component.d.ts +98 -98
  815. package/lib/components/po-gauge/po-gauge-default-values.constant.d.ts +5 -5
  816. package/lib/components/po-gauge/po-gauge-description/po-gauge-description.component.d.ts +11 -11
  817. package/lib/components/po-gauge/po-gauge-legend/po-gauge-legend.component.d.ts +9 -9
  818. package/lib/components/po-gauge/po-gauge-svg/po-gauge-path/po-gauge-path.component.d.ts +9 -9
  819. package/lib/components/po-gauge/po-gauge-svg/po-gauge-pointer/po-gauge-pointer.component.d.ts +15 -15
  820. package/lib/components/po-gauge/po-gauge-svg/po-gauge-svg.component.d.ts +32 -32
  821. package/lib/components/po-gauge/po-gauge-title/po-gauge-title.component.d.ts +3 -3
  822. package/lib/components/po-gauge/po-gauge.component.d.ts +37 -37
  823. package/lib/components/po-gauge/po-gauge.module.d.ts +6 -6
  824. package/lib/components/po-grid/index.d.ts +3 -3
  825. package/lib/components/po-grid/po-grid-cell/po-grid-cell.component.d.ts +27 -27
  826. package/lib/components/po-grid/po-grid-cell-action/po-grid-cell-action.component.d.ts +6 -6
  827. package/lib/components/po-grid/po-grid-head/po-grid-head.component.d.ts +10 -10
  828. package/lib/components/po-grid/po-grid-row-actions.interface.d.ts +86 -86
  829. package/lib/components/po-grid/po-grid.component.d.ts +80 -80
  830. package/lib/components/po-grid/po-grid.module.d.ts +7 -7
  831. package/lib/components/po-icon/index.d.ts +2 -2
  832. package/lib/components/po-icon/po-icon.component.d.ts +39 -39
  833. package/lib/components/po-icon/po-icon.module.d.ts +7 -7
  834. package/lib/components/po-info/index.d.ts +3 -3
  835. package/lib/components/po-info/po-info-base.component.d.ts +46 -46
  836. package/lib/components/po-info/po-info-orietation.enum.d.ts +13 -13
  837. package/lib/components/po-info/po-info.component.d.ts +24 -24
  838. package/lib/components/po-info/po-info.module.d.ts +7 -7
  839. package/lib/components/po-list-view/index.d.ts +6 -6
  840. package/lib/components/po-list-view/interfaces/po-list-view-action.interface.d.ts +15 -15
  841. package/lib/components/po-list-view/interfaces/po-list-view-literals.interface.d.ts +19 -19
  842. package/lib/components/po-list-view/po-list-view-base.component.d.ts +165 -165
  843. package/lib/components/po-list-view/po-list-view-content-template/po-list-view-content-template.directive.d.ts +97 -97
  844. package/lib/components/po-list-view/po-list-view-detail-template/po-list-view-detail-template.directive.d.ts +60 -60
  845. package/lib/components/po-list-view/po-list-view.component.d.ts +53 -53
  846. package/lib/components/po-list-view/po-list-view.module.d.ts +33 -33
  847. package/lib/components/po-loading/index.d.ts +4 -4
  848. package/lib/components/po-loading/po-loading-base.component.d.ts +14 -14
  849. package/lib/components/po-loading/po-loading-icon/po-loading-icon.component.d.ts +22 -22
  850. package/lib/components/po-loading/po-loading-overlay/interfaces/po-loading-overlay-literals.interface.d.ts +13 -13
  851. package/lib/components/po-loading/po-loading-overlay/po-loading-overlay-base.component.d.ts +59 -59
  852. package/lib/components/po-loading/po-loading-overlay/po-loading-overlay.component.d.ts +28 -28
  853. package/lib/components/po-loading/po-loading.component.d.ts +8 -8
  854. package/lib/components/po-loading/po-loading.module.d.ts +8 -8
  855. package/lib/components/po-menu/index.d.ts +8 -8
  856. package/lib/components/po-menu/po-menu-base.component.d.ts +182 -182
  857. package/lib/components/po-menu/po-menu-filter/po-menu-filter-literals.interface.d.ts +14 -14
  858. package/lib/components/po-menu/po-menu-filter/po-menu-filter.component.d.ts +25 -25
  859. package/lib/components/po-menu/po-menu-filter/po-menu-filter.interface.d.ts +19 -19
  860. package/lib/components/po-menu/po-menu-header-template/po-menu-header-template.directive.d.ts +40 -40
  861. package/lib/components/po-menu/po-menu-item/po-menu-item-badge.interface.d.ts +49 -49
  862. package/lib/components/po-menu/po-menu-item/po-menu-item-filtered.interface.d.ts +13 -13
  863. package/lib/components/po-menu/po-menu-item/po-menu-item.component.d.ts +54 -54
  864. package/lib/components/po-menu/po-menu-item.interface.d.ts +78 -78
  865. package/lib/components/po-menu/po-menu.component.d.ts +178 -178
  866. package/lib/components/po-menu/po-menu.module.d.ts +7 -7
  867. package/lib/components/po-menu/services/po-menu-global.service.d.ts +14 -14
  868. package/lib/components/po-menu/services/po-menu-items.service.d.ts +16 -16
  869. package/lib/components/po-menu/services/po-menu.service.d.ts +20 -20
  870. package/lib/components/po-menu-panel/index.d.ts +3 -3
  871. package/lib/components/po-menu-panel/po-menu-panel-base.component.d.ts +33 -33
  872. package/lib/components/po-menu-panel/po-menu-panel-item/po-menu-panel-item-internal.interface.d.ts +16 -16
  873. package/lib/components/po-menu-panel/po-menu-panel-item/po-menu-panel-item.component.d.ts +23 -23
  874. package/lib/components/po-menu-panel/po-menu-panel-item/po-menu-panel-item.interface.d.ts +18 -18
  875. package/lib/components/po-menu-panel/po-menu-panel.component.d.ts +91 -91
  876. package/lib/components/po-menu-panel/po-menu-panel.module.d.ts +7 -7
  877. package/lib/components/po-menu-panel/services/po-menu-panel-items.service.d.ts +16 -16
  878. package/lib/components/po-modal/index.d.ts +4 -4
  879. package/lib/components/po-modal/po-modal-action.interface.d.ts +23 -23
  880. package/lib/components/po-modal/po-modal-base.component.d.ts +79 -79
  881. package/lib/components/po-modal/po-modal-footer/po-modal-footer.component.d.ts +30 -30
  882. package/lib/components/po-modal/po-modal.component.d.ts +46 -46
  883. package/lib/components/po-modal/po-modal.literals.d.ts +14 -14
  884. package/lib/components/po-modal/po-modal.module.d.ts +6 -6
  885. package/lib/components/po-navbar/index.d.ts +4 -4
  886. package/lib/components/po-navbar/interfaces/po-navbar-icon-action.interface.d.ts +55 -55
  887. package/lib/components/po-navbar/interfaces/po-navbar-item.interface.d.ts +21 -21
  888. package/lib/components/po-navbar/interfaces/po-navbar-literals.interface.d.ts +11 -11
  889. package/lib/components/po-navbar/po-navbar-actions/po-navbar-action/po-navbar-action.component.d.ts +13 -13
  890. package/lib/components/po-navbar/po-navbar-actions/po-navbar-action-popup/po-navbar-action-popup.component.d.ts +5 -5
  891. package/lib/components/po-navbar/po-navbar-actions/po-navbar-actions.component.d.ts +6 -6
  892. package/lib/components/po-navbar/po-navbar-actions/po-navbar-actions.module.d.ts +2 -2
  893. package/lib/components/po-navbar/po-navbar-base.component.d.ts +129 -129
  894. package/lib/components/po-navbar/po-navbar-item-navigation/po-navbar-item-navigation-icon/po-navbar-item-navigation-icon.component.d.ts +6 -6
  895. package/lib/components/po-navbar/po-navbar-item-navigation/po-navbar-item-navigation.component.d.ts +6 -6
  896. package/lib/components/po-navbar/po-navbar-item-navigation/po-navbar-item-navigation.module.d.ts +2 -2
  897. package/lib/components/po-navbar/po-navbar-items/po-navbar-item/po-navbar-item.component.d.ts +11 -11
  898. package/lib/components/po-navbar/po-navbar-items/po-navbar-items.component.d.ts +17 -17
  899. package/lib/components/po-navbar/po-navbar-items/po-navbar-items.module.d.ts +2 -2
  900. package/lib/components/po-navbar/po-navbar-logo/po-navbar-logo.component.d.ts +3 -3
  901. package/lib/components/po-navbar/po-navbar.component.d.ts +57 -57
  902. package/lib/components/po-navbar/po-navbar.module.d.ts +33 -33
  903. package/lib/components/po-page/index.d.ts +14 -14
  904. package/lib/components/po-page/po-page-action.interface.d.ts +16 -16
  905. package/lib/components/po-page/po-page-base.component.d.ts +22 -22
  906. package/lib/components/po-page/po-page-content/po-page-content-base.component.d.ts +10 -10
  907. package/lib/components/po-page/po-page-content/po-page-content.component.d.ts +20 -20
  908. package/lib/components/po-page/po-page-default/po-page-default-base.component.d.ts +75 -75
  909. package/lib/components/po-page/po-page-default/po-page-default-literals.interface.d.ts +11 -11
  910. package/lib/components/po-page/po-page-default/po-page-default.component.d.ts +45 -45
  911. package/lib/components/po-page/po-page-default/po-page-default.interface.d.ts +13 -13
  912. package/lib/components/po-page/po-page-detail/po-page-detail-base.component.d.ts +100 -100
  913. package/lib/components/po-page/po-page-detail/po-page-detail-literals.interface.d.ts +15 -15
  914. package/lib/components/po-page/po-page-detail/po-page-detail.component.d.ts +28 -28
  915. package/lib/components/po-page/po-page-edit/po-page-edit-base.component.d.ts +106 -106
  916. package/lib/components/po-page/po-page-edit/po-page-edit-literals.interface.d.ts +15 -15
  917. package/lib/components/po-page/po-page-edit/po-page-edit.component.d.ts +29 -29
  918. package/lib/components/po-page/po-page-filter.interface.d.ts +26 -26
  919. package/lib/components/po-page/po-page-header/po-page-header-base.component.d.ts +17 -17
  920. package/lib/components/po-page/po-page-header/po-page-header.component.d.ts +7 -7
  921. package/lib/components/po-page/po-page-list/po-page-list-base.component.d.ts +108 -108
  922. package/lib/components/po-page/po-page-list/po-page-list-literals.interface.d.ts +11 -11
  923. package/lib/components/po-page/po-page-list/po-page-list.component.d.ts +71 -71
  924. package/lib/components/po-page/po-page-slide/po-page-slide-base.component.d.ts +111 -111
  925. package/lib/components/po-page/po-page-slide/po-page-slide.component.d.ts +42 -42
  926. package/lib/components/po-page/po-page.component.d.ts +8 -8
  927. package/lib/components/po-page/po-page.interface.d.ts +14 -14
  928. package/lib/components/po-page/po-page.module.d.ts +7 -7
  929. package/lib/components/po-popover/index.d.ts +2 -2
  930. package/lib/components/po-popover/po-popover-base.component.d.ts +131 -131
  931. package/lib/components/po-popover/po-popover.component.d.ts +47 -47
  932. package/lib/components/po-popover/po-popover.module.d.ts +6 -6
  933. package/lib/components/po-popup/index.d.ts +3 -3
  934. package/lib/components/po-popup/po-popup-action.interface.d.ts +91 -91
  935. package/lib/components/po-popup/po-popup-base.component.d.ts +151 -151
  936. package/lib/components/po-popup/po-popup.component.d.ts +69 -69
  937. package/lib/components/po-popup/po-popup.module.d.ts +7 -7
  938. package/lib/components/po-progress/enums/po-progress-status.enum.d.ts +15 -15
  939. package/lib/components/po-progress/index.d.ts +3 -3
  940. package/lib/components/po-progress/po-progress-bar/po-progress-bar.component.d.ts +5 -5
  941. package/lib/components/po-progress/po-progress-base.component.d.ts +103 -103
  942. package/lib/components/po-progress/po-progress.component.d.ts +28 -28
  943. package/lib/components/po-progress/po-progress.module.d.ts +7 -7
  944. package/lib/components/po-slide/directives/po-slide-content-template.directive.d.ts +48 -48
  945. package/lib/components/po-slide/index.d.ts +4 -4
  946. package/lib/components/po-slide/interfaces/po-slide-item.interface.d.ts +17 -17
  947. package/lib/components/po-slide/po-slide-base.component.d.ts +75 -75
  948. package/lib/components/po-slide/po-slide-circles/po-slide-circles.component.d.ts +16 -16
  949. package/lib/components/po-slide/po-slide-control/po-slide-control.component.d.ts +14 -14
  950. package/lib/components/po-slide/po-slide-item/po-slide-item.component.d.ts +28 -28
  951. package/lib/components/po-slide/po-slide.component.d.ts +110 -110
  952. package/lib/components/po-slide/po-slide.module.d.ts +33 -33
  953. package/lib/components/po-stepper/enums/po-stepper-orientation.enum.d.ts +16 -16
  954. package/lib/components/po-stepper/enums/po-stepper-status.enum.d.ts +21 -21
  955. package/lib/components/po-stepper/index.d.ts +6 -6
  956. package/lib/components/po-stepper/po-step/po-step.component.d.ts +76 -76
  957. package/lib/components/po-stepper/po-stepper-base.component.d.ts +132 -132
  958. package/lib/components/po-stepper/po-stepper-circle/po-stepper-circle.component.d.ts +20 -20
  959. package/lib/components/po-stepper/po-stepper-item.interface.d.ts +14 -14
  960. package/lib/components/po-stepper/po-stepper-label/po-stepper-label.component.d.ts +10 -10
  961. package/lib/components/po-stepper/po-stepper-step/po-stepper-step.component.d.ts +37 -37
  962. package/lib/components/po-stepper/po-stepper.component.d.ts +80 -80
  963. package/lib/components/po-stepper/po-stepper.module.d.ts +6 -6
  964. package/lib/components/po-table/enums/po-table-column-sort-type.enum.d.ts +12 -12
  965. package/lib/components/po-table/enums/po-table-row-template-arrow-direction.enum.d.ts +12 -12
  966. package/lib/components/po-table/index.d.ts +17 -17
  967. package/lib/components/po-table/interfaces/po-table-action.interface.d.ts +8 -8
  968. package/lib/components/po-table/interfaces/po-table-boolean.interface.d.ts +13 -13
  969. package/lib/components/po-table/interfaces/po-table-column-sort.interface.d.ts +15 -15
  970. package/lib/components/po-table/interfaces/po-table-column.interface.d.ts +242 -242
  971. package/lib/components/po-table/interfaces/po-table-filter.interface.d.ts +16 -16
  972. package/lib/components/po-table/interfaces/po-table-filtered-items-params.interface.d.ts +33 -33
  973. package/lib/components/po-table/interfaces/po-table-literals.interface.d.ts +25 -25
  974. package/lib/components/po-table/interfaces/po-table-response-api.interface.d.ts +7 -7
  975. package/lib/components/po-table/po-table-base.component.d.ts +501 -501
  976. package/lib/components/po-table/po-table-cell-template/po-table-cell-template.directive.d.ts +71 -71
  977. package/lib/components/po-table/po-table-column-icon/po-table-column-icon.component.d.ts +26 -26
  978. package/lib/components/po-table/po-table-column-icon/po-table-column-icon.interface.d.ts +80 -80
  979. package/lib/components/po-table/po-table-column-label/po-table-column-label.component.d.ts +17 -17
  980. package/lib/components/po-table/po-table-column-label/po-table-column-label.interface.d.ts +42 -42
  981. package/lib/components/po-table/po-table-column-link/po-table-column-link.component.d.ts +15 -15
  982. package/lib/components/po-table/po-table-column-manager/po-table-column-manager.component.d.ts +74 -74
  983. package/lib/components/po-table/po-table-column-template/po-table-column-template.directive.d.ts +86 -86
  984. package/lib/components/po-table/po-table-detail/po-table-detail-column.interface.d.ts +61 -61
  985. package/lib/components/po-table/po-table-detail/po-table-detail.component.d.ts +44 -44
  986. package/lib/components/po-table/po-table-detail/po-table-detail.interface.d.ts +36 -36
  987. package/lib/components/po-table/po-table-icon/po-table-icon.component.d.ts +27 -27
  988. package/lib/components/po-table/po-table-row-template/po-table-row-template.directive.d.ts +120 -120
  989. package/lib/components/po-table/po-table-show-subtitle/po-table-show-subtitle.component.d.ts +14 -14
  990. package/lib/components/po-table/po-table-subtitle-circle/po-table-subtitle-circle.component.d.ts +19 -19
  991. package/lib/components/po-table/po-table-subtitle-footer/po-table-subtitle-column.interface.d.ts +39 -39
  992. package/lib/components/po-table/po-table-subtitle-footer/po-table-subtitle-footer.component.d.ts +31 -31
  993. package/lib/components/po-table/po-table.component.d.ts +229 -229
  994. package/lib/components/po-table/po-table.module.d.ts +6 -6
  995. package/lib/components/po-table/services/po-table.service.d.ts +14 -14
  996. package/lib/components/po-tabs/index.d.ts +4 -4
  997. package/lib/components/po-tabs/po-tab/po-tab-base.component.d.ts +57 -57
  998. package/lib/components/po-tabs/po-tab/po-tab.component.d.ts +11 -11
  999. package/lib/components/po-tabs/po-tab/po-tab.interface.d.ts +45 -45
  1000. package/lib/components/po-tabs/po-tab-button/po-tab-button.component.d.ts +29 -29
  1001. package/lib/components/po-tabs/po-tab-dropdown/po-tab-dropdown.component.d.ts +23 -23
  1002. package/lib/components/po-tabs/po-tabs-base.component.d.ts +34 -34
  1003. package/lib/components/po-tabs/po-tabs.component.d.ts +50 -50
  1004. package/lib/components/po-tabs/po-tabs.module.d.ts +6 -6
  1005. package/lib/components/po-tag/enums/po-tag-icon.enum.d.ts +17 -17
  1006. package/lib/components/po-tag/enums/po-tag-orientation.enum.d.ts +13 -13
  1007. package/lib/components/po-tag/enums/po-tag-type.enum.d.ts +17 -17
  1008. package/lib/components/po-tag/index.d.ts +4 -4
  1009. package/lib/components/po-tag/interfaces/po-tag-item.interface.d.ts +13 -13
  1010. package/lib/components/po-tag/po-tag-base.component.d.ts +144 -144
  1011. package/lib/components/po-tag/po-tag.component.d.ts +32 -32
  1012. package/lib/components/po-tag/po-tag.module.d.ts +7 -7
  1013. package/lib/components/po-toolbar/index.d.ts +4 -4
  1014. package/lib/components/po-toolbar/po-toolbar-action.interface.d.ts +8 -8
  1015. package/lib/components/po-toolbar/po-toolbar-actions/po-toolbar-actions.component.d.ts +19 -19
  1016. package/lib/components/po-toolbar/po-toolbar-base.component.d.ts +75 -75
  1017. package/lib/components/po-toolbar/po-toolbar-notification/po-toolbar-notification.component.d.ts +22 -22
  1018. package/lib/components/po-toolbar/po-toolbar-profile/po-toolbar-profile.component.d.ts +18 -18
  1019. package/lib/components/po-toolbar/po-toolbar-profile/po-toolbar-profile.interface.d.ts +15 -15
  1020. package/lib/components/po-toolbar/po-toolbar.component.d.ts +29 -29
  1021. package/lib/components/po-toolbar/po-toolbar.module.d.ts +8 -8
  1022. package/lib/components/po-tree-view/index.d.ts +3 -3
  1023. package/lib/components/po-tree-view/po-tree-view-base.component.d.ts +86 -86
  1024. package/lib/components/po-tree-view/po-tree-view-item/po-tree-view-item.component.d.ts +12 -12
  1025. package/lib/components/po-tree-view/po-tree-view-item/po-tree-view-item.interface.d.ts +24 -24
  1026. package/lib/components/po-tree-view/po-tree-view-item-header/po-tree-view-item-header.component.d.ts +10 -10
  1027. package/lib/components/po-tree-view/po-tree-view.component.d.ts +35 -35
  1028. package/lib/components/po-tree-view/po-tree-view.module.d.ts +33 -33
  1029. package/lib/components/po-tree-view/services/po-tree-view.service.d.ts +9 -9
  1030. package/lib/components/po-widget/index.d.ts +2 -2
  1031. package/lib/components/po-widget/po-widget-base.component.d.ts +162 -162
  1032. package/lib/components/po-widget/po-widget.component.d.ts +41 -41
  1033. package/lib/components/po-widget/po-widget.module.d.ts +7 -7
  1034. package/lib/decorators/index.d.ts +2 -2
  1035. package/lib/decorators/input-boolean/input-boolean.decorator.d.ts +10 -10
  1036. package/lib/decorators/input-required/input-required.decorator.d.ts +22 -22
  1037. package/lib/decorators/property-decorator.interface.d.ts +13 -13
  1038. package/lib/decorators/utils-decorators.d.ts +27 -27
  1039. package/lib/directives/directives.module.d.ts +2 -2
  1040. package/lib/directives/index.d.ts +2 -2
  1041. package/lib/directives/po-tooltip/index.d.ts +2 -2
  1042. package/lib/directives/po-tooltip/po-tooltip-base.directive.d.ts +67 -67
  1043. package/lib/directives/po-tooltip/po-tooltip-control-position.service.d.ts +3 -3
  1044. package/lib/directives/po-tooltip/po-tooltip.directive.d.ts +52 -52
  1045. package/lib/directives/po-tooltip/po-tooltip.module.d.ts +7 -7
  1046. package/lib/enums/po-color-palette.enum.d.ts +33 -33
  1047. package/lib/enums/po-key-code.enum.d.ts +29 -29
  1048. package/lib/guards/guards.module.d.ts +2 -2
  1049. package/lib/guards/index.d.ts +1 -1
  1050. package/lib/index.d.ts +9 -9
  1051. package/lib/interceptors/index.d.ts +3 -3
  1052. package/lib/interceptors/interceptors.module.d.ts +2 -2
  1053. package/lib/interceptors/po-http-interceptor/index.d.ts +2 -2
  1054. package/lib/interceptors/po-http-interceptor/po-http-interceptor-base.service.d.ts +154 -154
  1055. package/lib/interceptors/po-http-interceptor/po-http-interceptor-detail/po-http-interceptor-detail-literals.interface.d.ts +6 -6
  1056. package/lib/interceptors/po-http-interceptor/po-http-interceptor-detail/po-http-interceptor-detail.component.d.ts +39 -39
  1057. package/lib/interceptors/po-http-interceptor/po-http-interceptor-detail/po-http-interceptor-detail.interface.d.ts +23 -23
  1058. package/lib/interceptors/po-http-interceptor/po-http-interceptor-literals.d.ts +6 -6
  1059. package/lib/interceptors/po-http-interceptor/po-http-interceptor.module.d.ts +2 -2
  1060. package/lib/interceptors/po-http-interceptor/po-http-interceptor.service.d.ts +16 -16
  1061. package/lib/interceptors/po-http-request/index.d.ts +2 -2
  1062. package/lib/interceptors/po-http-request/po-http-request-control-service.d.ts +12 -12
  1063. package/lib/interceptors/po-http-request/po-http-request-interceptor.service.d.ts +102 -102
  1064. package/lib/interceptors/po-http-request/po-http-request.module.d.ts +2 -2
  1065. package/lib/interfaces/index.d.ts +1 -1
  1066. package/lib/interfaces/po-http/po-response-api.interface.d.ts +13 -13
  1067. package/lib/pipes/index.d.ts +2 -2
  1068. package/lib/pipes/pipes.module.d.ts +2 -2
  1069. package/lib/pipes/po-time/index.d.ts +2 -2
  1070. package/lib/pipes/po-time/po-time.module.d.ts +7 -7
  1071. package/lib/pipes/po-time/po-time.pipe.d.ts +14 -14
  1072. package/lib/po.module.d.ts +2 -2
  1073. package/lib/services/index.d.ts +10 -10
  1074. package/lib/services/po-active-overlay/index.d.ts +2 -2
  1075. package/lib/services/po-active-overlay/po-active-overlay.module.d.ts +7 -7
  1076. package/lib/services/po-active-overlay/po-active-overlay.service.d.ts +3 -3
  1077. package/lib/services/po-color/po-color.service.d.ts +16 -16
  1078. package/lib/services/po-color/po-colors.constant.d.ts +2 -2
  1079. package/lib/services/po-color-palette/index.d.ts +2 -2
  1080. package/lib/services/po-color-palette/po-color-palette.module.d.ts +7 -7
  1081. package/lib/services/po-color-palette/po-color-palette.service.d.ts +7 -7
  1082. package/lib/services/po-component-injector/index.d.ts +2 -2
  1083. package/lib/services/po-component-injector/po-component-injector.module.d.ts +2 -2
  1084. package/lib/services/po-component-injector/po-component-injector.service.d.ts +9 -9
  1085. package/lib/services/po-control-position/index.d.ts +2 -2
  1086. package/lib/services/po-control-position/po-control-position.constants.d.ts +1 -1
  1087. package/lib/services/po-control-position/po-control-position.module.d.ts +7 -7
  1088. package/lib/services/po-control-position/po-control-position.service.d.ts +56 -56
  1089. package/lib/services/po-date/index.d.ts +2 -2
  1090. package/lib/services/po-date/po-date.module.d.ts +7 -7
  1091. package/lib/services/po-date/po-date.service.d.ts +94 -94
  1092. package/lib/services/po-dialog/index.d.ts +7 -7
  1093. package/lib/services/po-dialog/interfaces/po-dialog-alert-literals.interface.d.ts +11 -11
  1094. package/lib/services/po-dialog/interfaces/po-dialog-confirm-literals.interface.d.ts +13 -13
  1095. package/lib/services/po-dialog/interfaces/po-dialog.interface.d.ts +82 -82
  1096. package/lib/services/po-dialog/po-dialog-base.service.d.ts +15 -15
  1097. package/lib/services/po-dialog/po-dialog.component.d.ts +48 -48
  1098. package/lib/services/po-dialog/po-dialog.enum.d.ts +12 -12
  1099. package/lib/services/po-dialog/po-dialog.module.d.ts +2 -2
  1100. package/lib/services/po-dialog/po-dialog.service.d.ts +29 -29
  1101. package/lib/services/po-i18n/index.d.ts +7 -7
  1102. package/lib/services/po-i18n/interfaces/po-i18n-config-default.interface.d.ts +35 -35
  1103. package/lib/services/po-i18n/interfaces/po-i18n-config.interface.d.ts +78 -78
  1104. package/lib/services/po-i18n/interfaces/po-i18n-literals.interface.d.ts +15 -15
  1105. package/lib/services/po-i18n/po-i18n-base.pipe.d.ts +29 -29
  1106. package/lib/services/po-i18n/po-i18n-base.service.d.ts +212 -212
  1107. package/lib/services/po-i18n/po-i18n-config-injection-token.d.ts +3 -3
  1108. package/lib/services/po-i18n/po-i18n.module.d.ts +150 -150
  1109. package/lib/services/po-i18n/po-i18n.pipe.d.ts +15 -15
  1110. package/lib/services/po-i18n/po-i18n.service.d.ts +10 -10
  1111. package/lib/services/po-language/index.d.ts +4 -4
  1112. package/lib/services/po-language/po-language.constant.d.ts +58 -58
  1113. package/lib/services/po-language/po-language.interface.d.ts +43 -43
  1114. package/lib/services/po-language/po-language.module.d.ts +7 -7
  1115. package/lib/services/po-language/po-language.service.d.ts +95 -95
  1116. package/lib/services/po-notification/index.d.ts +5 -5
  1117. package/lib/services/po-notification/po-notification-base.service.d.ts +84 -84
  1118. package/lib/services/po-notification/po-notification.interface.d.ts +33 -33
  1119. package/lib/services/po-notification/po-notification.module.d.ts +2 -2
  1120. package/lib/services/po-notification/po-notification.service.d.ts +31 -31
  1121. package/lib/services/po-notification/po-toaster/po-toaster-base.component.d.ts +41 -41
  1122. package/lib/services/po-notification/po-toaster/po-toaster-orientation.enum.d.ts +11 -11
  1123. package/lib/services/po-notification/po-toaster/po-toaster-type.enum.d.ts +15 -15
  1124. package/lib/services/po-notification/po-toaster/po-toaster.component.d.ts +33 -33
  1125. package/lib/services/po-notification/po-toaster/po-toaster.interface.d.ts +15 -15
  1126. package/lib/services/services.module.d.ts +2 -2
  1127. package/lib/utils/util.d.ts +217 -217
  1128. package/package.json +5 -5
  1129. package/po-ui-ng-components-5.22.3.tgz +0 -0
  1130. package/po-ui-ng-components.d.ts +205 -205
  1131. package/po-ui-ng-components.metadata.json +1 -1
  1132. package/public-api.d.ts +1 -1
  1133. package/schematics/README.md +74 -74
  1134. package/schematics/collection.json +40 -40
  1135. package/schematics/migrations.json +25 -25
  1136. package/schematics/ng-add/index.d.ts +8 -8
  1137. package/schematics/ng-add/index.js +25 -25
  1138. package/schematics/ng-add/index.spec.d.ts +1 -1
  1139. package/schematics/ng-add/index.spec.js +91 -91
  1140. package/schematics/ng-add/schema.json +16 -16
  1141. package/schematics/ng-add/setup-project.d.ts +8 -8
  1142. package/schematics/ng-add/setup-project.js +55 -55
  1143. package/schematics/ng-generate/po-page-default/files/__path__/__name@dasherize__/__name@dasherize__-routing.module.ts.template +14 -14
  1144. package/schematics/ng-generate/po-page-default/files/__path__/__name@dasherize__/__name@dasherize__.component.html.template +3 -3
  1145. package/schematics/ng-generate/po-page-default/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +32 -32
  1146. package/schematics/ng-generate/po-page-default/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +18 -18
  1147. package/schematics/ng-generate/po-page-default/files/__path__/__name@dasherize__/__name@dasherize__.module.ts.template +19 -19
  1148. package/schematics/ng-generate/po-page-default/index.d.ts +4 -4
  1149. package/schematics/ng-generate/po-page-default/index.js +12 -12
  1150. package/schematics/ng-generate/po-page-default/index.spec.d.ts +1 -1
  1151. package/schematics/ng-generate/po-page-default/index.spec.js +120 -120
  1152. package/schematics/ng-generate/po-page-default/schema.d.ts +3 -3
  1153. package/schematics/ng-generate/po-page-default/schema.js +2 -2
  1154. package/schematics/ng-generate/po-page-default/schema.json +67 -67
  1155. package/schematics/ng-generate/po-page-detail/files/__path__/__name@dasherize__/__name@dasherize__-routing.module.ts.template +14 -14
  1156. package/schematics/ng-generate/po-page-detail/files/__path__/__name@dasherize__/__name@dasherize__.component.html.template +8 -8
  1157. package/schematics/ng-generate/po-page-detail/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +32 -32
  1158. package/schematics/ng-generate/po-page-detail/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +26 -26
  1159. package/schematics/ng-generate/po-page-detail/files/__path__/__name@dasherize__/__name@dasherize__.module.ts.template +19 -19
  1160. package/schematics/ng-generate/po-page-detail/index.d.ts +4 -4
  1161. package/schematics/ng-generate/po-page-detail/index.js +12 -12
  1162. package/schematics/ng-generate/po-page-detail/index.spec.d.ts +1 -1
  1163. package/schematics/ng-generate/po-page-detail/index.spec.js +120 -120
  1164. package/schematics/ng-generate/po-page-detail/schema.d.ts +3 -3
  1165. package/schematics/ng-generate/po-page-detail/schema.js +2 -2
  1166. package/schematics/ng-generate/po-page-detail/schema.json +67 -67
  1167. package/schematics/ng-generate/po-page-edit/files/__path__/__name@dasherize__/__name@dasherize__-routing.module.ts.template +14 -14
  1168. package/schematics/ng-generate/po-page-edit/files/__path__/__name@dasherize__/__name@dasherize__.component.html.template +8 -8
  1169. package/schematics/ng-generate/po-page-edit/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +32 -32
  1170. package/schematics/ng-generate/po-page-edit/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +26 -26
  1171. package/schematics/ng-generate/po-page-edit/files/__path__/__name@dasherize__/__name@dasherize__.module.ts.template +19 -19
  1172. package/schematics/ng-generate/po-page-edit/index.d.ts +4 -4
  1173. package/schematics/ng-generate/po-page-edit/index.js +12 -12
  1174. package/schematics/ng-generate/po-page-edit/index.spec.d.ts +1 -1
  1175. package/schematics/ng-generate/po-page-edit/index.spec.js +120 -120
  1176. package/schematics/ng-generate/po-page-edit/schema.d.ts +3 -3
  1177. package/schematics/ng-generate/po-page-edit/schema.js +2 -2
  1178. package/schematics/ng-generate/po-page-edit/schema.json +67 -67
  1179. package/schematics/ng-generate/po-page-list/files/__path__/__name@dasherize__/__name@dasherize__-routing.module.ts.template +14 -14
  1180. package/schematics/ng-generate/po-page-list/files/__path__/__name@dasherize__/__name@dasherize__.component.html.template +28 -28
  1181. package/schematics/ng-generate/po-page-list/files/__path__/__name@dasherize__/__name@dasherize__.component.spec.ts.template +35 -35
  1182. package/schematics/ng-generate/po-page-list/files/__path__/__name@dasherize__/__name@dasherize__.component.ts.template +33 -33
  1183. package/schematics/ng-generate/po-page-list/files/__path__/__name@dasherize__/__name@dasherize__.module.ts.template +19 -19
  1184. package/schematics/ng-generate/po-page-list/index.d.ts +7 -7
  1185. package/schematics/ng-generate/po-page-list/index.js +15 -15
  1186. package/schematics/ng-generate/po-page-list/index.spec.d.ts +1 -1
  1187. package/schematics/ng-generate/po-page-list/index.spec.js +120 -120
  1188. package/schematics/ng-generate/po-page-list/schema.d.ts +5 -5
  1189. package/schematics/ng-generate/po-page-list/schema.js +2 -2
  1190. package/schematics/ng-generate/po-page-list/schema.json +78 -78
  1191. package/schematics/ng-generate/sidemenu/files/app.component.html.template +9 -9
  1192. package/schematics/ng-generate/sidemenu/files/app.component.spec.ts.template +30 -30
  1193. package/schematics/ng-generate/sidemenu/files/app.component.ts.template +20 -20
  1194. package/schematics/ng-generate/sidemenu/index.d.ts +8 -8
  1195. package/schematics/ng-generate/sidemenu/index.js +51 -51
  1196. package/schematics/ng-generate/sidemenu/index.spec.d.ts +1 -1
  1197. package/schematics/ng-generate/sidemenu/index.spec.js +62 -62
  1198. package/schematics/ng-generate/sidemenu/schema.d.ts +13 -13
  1199. package/schematics/ng-generate/sidemenu/schema.js +2 -2
  1200. package/schematics/ng-generate/sidemenu/schema.json +32 -32
  1201. package/schematics/ng-update/v2/changes.d.ts +19 -19
  1202. package/schematics/ng-update/v2/changes.js +58 -58
  1203. package/schematics/ng-update/v2/index.d.ts +1 -1
  1204. package/schematics/ng-update/v2/index.js +145 -145
  1205. package/schematics/ng-update/v3/changes.d.ts +4 -4
  1206. package/schematics/ng-update/v3/changes.js +20 -20
  1207. package/schematics/ng-update/v3/index.d.ts +1 -1
  1208. package/schematics/ng-update/v3/index.js +66 -66
  1209. package/schematics/ng-update/v4/changes.d.ts +4 -4
  1210. package/schematics/ng-update/v4/changes.js +20 -20
  1211. package/schematics/ng-update/v4/index.d.ts +1 -1
  1212. package/schematics/ng-update/v4/index.js +65 -65
  1213. package/schematics/ng-update/v5/changes.d.ts +4 -4
  1214. package/schematics/ng-update/v5/changes.js +25 -25
  1215. package/schematics/ng-update/v5/index.d.ts +1 -1
  1216. package/schematics/ng-update/v5/index.js +65 -65
  1217. package/po-ui-ng-components-5.21.0.tgz +0 -0
@@ -1,314 +1,314 @@
1
- import { ChangeDetectorRef, Component, ElementRef, Input, Renderer2, ViewChild } from '@angular/core';
2
- /**
3
- * @description
4
- *
5
- * > Componente em desenvolvimento, podendo haver BREAKING CHANGES nas próximas versões.
6
- *
7
- * Componente grid.
8
- *
9
- * Ações / atalhos:
10
- *
11
- * - ARROW-UP: Navega para celula superior / Na ultima linha adiciona uma linha em branco no grid;
12
- * - ARROW-DOWN: Navega para celula inferior;
13
- * - ARROW-RIGHT: Navega para celula direita;
14
- * - ARROW-LEFT: Navega para celula esquerda;
15
- * - TAB: Navega para próxima celula;
16
- * - SHIFT+TAB: Navega para celula anterior;
17
- * - CTRL+DEL: Remove linha;
18
- * - DEL/BACKSPACE: Limpa celula;
19
- * - ENTER: Edita linha com valor atual/Confirma edição da celula;
20
- * - DOUBLE-CLICK: Edita linha com valor atual;
21
- * - ESC: Cancela edição da celula / Cancela inserção de linhas em branco;
22
- * - A..Z/0..9: Inicia edição com valor em branco.
23
- *
24
- * @example
25
- *
26
- * <example name="po-grid-basic" title="PO Grid Basic">
27
- * <file name="sample-po-grid-basic/sample-po-grid-basic.component.html"> </file>
28
- * <file name="sample-po-grid-basic/sample-po-grid-basic.component.ts"> </file>
29
- * </example>
30
- */
31
- export class PoGridComponent {
32
- constructor(changeDetectorRef, elRef, renderer) {
33
- this.changeDetectorRef = changeDetectorRef;
34
- this.elRef = elRef;
35
- /**
36
- * @description
37
- *
38
- * Ações disparadas quando uma linha do grid é manipulada.
39
- */
40
- this.rowActions = {};
41
- /**
42
- * Lista com os dados que serão exibidos no grid.
43
- */
44
- this.data = [];
45
- this.lastCell = '0-0';
46
- this.lastRow = 0;
47
- this.lastColumn = 0;
48
- this.currencyCell = '0-0';
49
- this.currencyRow = 0;
50
- this.currencyColumn = 0;
51
- this.logger = false;
52
- this.width = '100%';
53
- this.widporeeze = 0;
54
- this.widthActions = 0;
55
- this._columns = [];
56
- this.debounceResize();
57
- this.resizeListener = renderer.listen('window', 'resize', (event) => {
58
- this.debounceResize();
59
- });
60
- }
61
- /**
62
- * Colunas exibidas no grid.
63
- */
64
- set columns(value) {
65
- this._columns = [...value];
66
- this._columns.forEach(column => {
67
- column.label = column.label || column.property;
68
- if (column.freeze === true) {
69
- column.cssWidth = `${column.width || 100}px`;
70
- }
71
- else {
72
- column.cssWidth = column.width ? `${column.width}px` : '100%';
73
- }
74
- });
75
- }
76
- get columns() {
77
- return this._columns.filter(column => column.freeze !== true && column.action !== true);
78
- }
79
- ngOnDestroy() {
80
- if (this.resizeListener) {
81
- this.resizeListener();
82
- }
83
- }
84
- get freezeColumns() {
85
- const freezeColumns = this._columns.filter(column => column.freeze === true);
86
- this.widporeeze = freezeColumns.reduce((prev, current) => prev + (current.width || 100), 0);
87
- return freezeColumns;
88
- }
89
- get actionColumns() {
90
- const actionsColumns = this._columns.filter(column => column.action === true);
91
- this.widthActions = actionsColumns.length > 0 ? 56 : 0;
92
- return actionsColumns;
93
- }
94
- cancelRow(event, row) {
95
- const el = this.getEventPath(event).find(element => element.id);
96
- if (!el) {
97
- return;
98
- }
99
- const [x] = el.id.split('-');
100
- if (this.isEmptyRow(x)) {
101
- if (!this.removeRow(event, row)) {
102
- return;
103
- }
104
- this.currencyObj = Object.assign({}, this.data[this.currencyRow - 1]);
105
- }
106
- else {
107
- this.data[+x - 1] = Object.assign({}, this.currencyObj);
108
- setTimeout(() => this.selectCell(this.currencyRow, this.currencyColumn));
109
- }
110
- }
111
- removeRow(event, row) {
112
- if (this.rowActions.beforeRemove && !this.rowActions.beforeRemove(Object.assign({}, row))) {
113
- return false;
114
- }
115
- const index = this.data.indexOf(row);
116
- this.data.splice(index, 1);
117
- this.changeDetectorRef.detectChanges();
118
- if (this.data.length === 0 || index === this.data.length) {
119
- this.selectCell(this.currencyRow - 1, this.currencyColumn);
120
- }
121
- else {
122
- this.selectCell(this.currencyRow, this.currencyColumn);
123
- }
124
- return true;
125
- }
126
- tableKeydown(event, direction) {
127
- let [row, col] = event.target.id.split('-');
128
- row = +row;
129
- col = +col;
130
- let prow = +row;
131
- let pcol = +col;
132
- if (direction === 'down') {
133
- if (row <= this.data.length) {
134
- prow++;
135
- }
136
- if (row === this.data.length) {
137
- if (row === 0 || !this.isEmptyRow(row)) {
138
- if (this.saveRow(row)) {
139
- if (!this.insertRow()) {
140
- return;
141
- }
142
- }
143
- else {
144
- return;
145
- }
146
- }
147
- else {
148
- prow--;
149
- }
150
- }
151
- }
152
- else if (direction === 'up' && row > 0) {
153
- prow--;
154
- }
155
- else if (direction === 'left' && col > 0) {
156
- pcol--;
157
- }
158
- else if (direction === 'right' && col < this._columns.length - 1) {
159
- pcol++;
160
- }
161
- else if (direction === 'next') {
162
- if (col < this._columns.length - 1) {
163
- pcol++;
164
- event.preventDefault();
165
- }
166
- else if (row < this.data.length) {
167
- pcol = 0;
168
- prow++;
169
- event.preventDefault();
170
- }
171
- }
172
- else if (direction === 'prior') {
173
- if (col > 0) {
174
- pcol--;
175
- event.preventDefault();
176
- }
177
- else if (row > 0) {
178
- pcol = this._columns.length - 1;
179
- prow--;
180
- event.preventDefault();
181
- }
182
- }
183
- if (this.currencyCell === `${prow}-${pcol}`) {
184
- return;
185
- }
186
- if (prow !== this.currencyRow && row > 0 && this.data.length >= row) {
187
- if (!this.isEmptyRow(row)) {
188
- if (!this.saveRow(row)) {
189
- return;
190
- }
191
- }
192
- else {
193
- if (!this.removeRow(event, row)) {
194
- return;
195
- }
196
- }
197
- }
198
- if (this.currencyRow !== prow) {
199
- this.currencyObj = Object.assign({}, this.data[prow - 1]);
200
- }
201
- this.lastCell = event.target.id;
202
- this.lastRow = row;
203
- this.lastColumn = col;
204
- this.selectCell(prow, pcol);
205
- }
206
- tableClick(event) {
207
- const el = this.getEventPath(event).find(element => element.id);
208
- if (!el) {
209
- this.selectCell(this.currencyRow, this.currencyColumn);
210
- return;
211
- }
212
- if (this.currencyCell === el.id) {
213
- return;
214
- }
215
- const [row, col] = el.id.split('-');
216
- const prow = +row;
217
- const pcol = +col;
218
- if (prow !== this.currencyRow) {
219
- if (this.currencyRow > 0) {
220
- if (!this.isEmptyRow(this.currencyRow)) {
221
- if (!this.saveRow(this.currencyRow)) {
222
- this.selectCell(this.currencyRow, this.currencyColumn);
223
- return;
224
- }
225
- }
226
- else {
227
- if (!this.removeRow(event, row)) {
228
- return;
229
- }
230
- }
231
- }
232
- this.currencyObj = Object.assign({}, this.data[prow - 1]);
233
- }
234
- this.lastCell = this.currencyCell;
235
- this.lastRow = this.currencyRow;
236
- this.lastColumn = this.currencyColumn;
237
- this.currencyCell = el.id;
238
- this.currencyRow = prow;
239
- this.currencyColumn = pcol;
240
- }
241
- saveRow(row) {
242
- const obj = this.data[row - 1];
243
- if (!Object.keys(obj).some(prop => obj[prop] !== this.currencyObj[prop])) {
244
- return true;
245
- }
246
- if (this.rowActions.beforeSave && !this.rowActions.beforeSave(obj, this.currencyObj)) {
247
- return false;
248
- }
249
- const requireds = [];
250
- this.columns.forEach(column => {
251
- if (column.required === true && !obj[column.property]) {
252
- requireds.push(column.property);
253
- }
254
- });
255
- return requireds.length === 0;
256
- }
257
- insertRow() {
258
- const obj = {};
259
- if (this.rowActions.beforeInsert && !this.rowActions.beforeInsert(obj)) {
260
- return false;
261
- }
262
- this.data.push(obj);
263
- this.changeDetectorRef.detectChanges();
264
- return true;
265
- }
266
- isEmptyRow(row) {
267
- const obj = this.data[row - 1];
268
- if (!obj) {
269
- // title
270
- return false;
271
- }
272
- const filled = Object.keys(obj).some(property => obj[property]);
273
- return !filled;
274
- }
275
- selectCell(row, col) {
276
- const nextCell = this.elRef.nativeElement.querySelector(`[id='${row}-${col}']`);
277
- if (nextCell) {
278
- this.currencyCell = `${row}-${col}`;
279
- this.currencyRow = row;
280
- this.currencyColumn = col;
281
- nextCell.focus();
282
- }
283
- }
284
- debounceResize() {
285
- clearTimeout(this.timeoutResize);
286
- this.timeoutResize = setTimeout(() => {
287
- const widthTableWrapper = this.tableWrapper.nativeElement.offsetWidth;
288
- this.width = `${widthTableWrapper - (this.widporeeze + 8) - this.widthActions}px`;
289
- }, 100);
290
- }
291
- getEventPath(event) {
292
- // firefox do not have support to event.path
293
- return event.path || event.composedPath();
294
- }
295
- }
296
- PoGridComponent.decorators = [
297
- { type: Component, args: [{
298
- selector: 'po-grid',
299
- template: "<div class=\"po-grid-wrapper po-grid-row-wrapper\" #wrapper>\n <div *ngIf=\"logger\">\n lastCell: {{ lastCell }} | currencyCell: {{ currencyCell }} <br />\n lastRow: {{ lastRow }} | currencyRow: {{ currencyRow }} <br />\n lastColumn: {{ lastColumn }} | currencyColumn: {{ currencyColumn }} <br />\n <hr />\n currencyObj: {{ currencyObj | json }}\n <hr />\n </div>\n\n <div class=\"po-grid\">\n <div class=\"po-grid-body\">\n <div\n class=\"po-grid-row\"\n #table\n (keydown.arrowup)=\"tableKeydown($event, 'up')\"\n (keydown.arrowdown)=\"tableKeydown($event, 'down')\"\n (keydown.arrowleft)=\"tableKeydown($event, 'left')\"\n (keydown.arrowright)=\"tableKeydown($event, 'right')\"\n (keydown.tab)=\"tableKeydown($event, 'next')\"\n (keydown.shift.tab)=\"tableKeydown($event, 'prior')\"\n (click)=\"tableClick($event)\"\n (contextmenu)=\"tableClick($event)\"\n (dblclick)=\"tableClick($event)\"\n >\n <div class=\"po-grid-cell po-grid-cell-freeze\" *ngIf=\"freezeColumns.length > 0\">\n <ng-container *ngTemplateOutlet=\"divFreezeColumns\"></ng-container>\n </div>\n\n <div\n class=\"po-grid-cell po-grid-cell-normal\"\n [style.width]=\"width\"\n [style.max-width]=\"width\"\n [style.min-width]=\"width\"\n >\n <ng-container *ngTemplateOutlet=\"divColumns\"></ng-container>\n </div>\n\n <div class=\"po-grid-cell po-grid-cell-action\" *ngIf=\"actionColumns.length > 0\">\n <ng-container *ngTemplateOutlet=\"divActionColumns\"></ng-container>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<!-- Coluna com as colunas congeladas -->\n<ng-template #divFreezeColumns>\n <div class=\"po-grid po-grid-freeze\">\n <div class=\"po-grid-header-group\">\n <div class=\"po-grid-row\">\n <po-grid-head\n *ngFor=\"let column of freezeColumns; index as i\"\n class=\"po-grid-title\"\n [style.width]=\"column.cssWidth\"\n [style.max-width]=\"column.cssWidth\"\n [style.min-width]=\"column.cssWidth\"\n p-freeze=\"true\"\n p-position=\"{{ '0-' + i }}\"\n [p-width]=\"column.width\"\n [p-align]=\"column.align\"\n [p-title]=\"column.label\"\n >\n </po-grid-head>\n </div>\n </div>\n\n <div class=\"po-grid-body\">\n <div\n class=\"po-grid-row\"\n *ngFor=\"let row of data; index as j\"\n (keydown.control.delete)=\"removeRow($event, row)\"\n (keydown.esc)=\"cancelRow($event, row)\"\n >\n <po-grid-cell\n *ngFor=\"let column of freezeColumns; index as i\"\n class=\"po-grid-cell\"\n [style.width]=\"column.cssWidth\"\n [style.max-width]=\"column.cssWidth\"\n [style.min-width]=\"column.cssWidth\"\n p-freeze=\"true\"\n [p-align]=\"column.align\"\n [p-readonly]=\"column.readonly\"\n [p-required]=\"column.required\"\n p-position=\"{{ j + 1 + '-' + i }}\"\n [p-width]=\"column.width\"\n [(p-value)]=\"row[column.property]\"\n >\n </po-grid-cell>\n </div>\n </div>\n </div>\n</ng-template>\n<!-- FIM: Coluna com as colunas congeladas -->\n\n<!-- Coluna com as colunas nornais -->\n<ng-template #divColumns>\n <div class=\"po-grid po-grid-normal\">\n <div class=\"po-grid-header-group\">\n <div class=\"po-grid-row\">\n <po-grid-head\n *ngFor=\"let column of columns; index as i\"\n class=\"po-grid-title\"\n [style.width]=\"column.cssWidth\"\n [style.max-width]=\"column.cssWidth\"\n [style.min-width]=\"column.cssWidth\"\n [p-align]=\"column.align\"\n p-position=\"{{ '0-' + (i + freezeColumns.length) }}\"\n [p-title]=\"column.label\"\n [p-width]=\"column.width\"\n >\n </po-grid-head>\n </div>\n </div>\n\n <div class=\"po-grid-body\">\n <div\n class=\"po-grid-row\"\n *ngFor=\"let row of data; index as j\"\n (keydown.control.delete)=\"removeRow($event, row)\"\n (keydown.esc)=\"cancelRow($event, row)\"\n >\n <po-grid-cell\n *ngFor=\"let column of columns; index as i\"\n class=\"po-grid-cell\"\n [style.width]=\"column.cssWidth\"\n [style.max-width]=\"column.cssWidth\"\n [style.min-width]=\"column.cssWidth\"\n [p-align]=\"column.align\"\n [p-readonly]=\"column.readonly\"\n [p-required]=\"column.required\"\n p-position=\"{{ j + 1 + '-' + (i + freezeColumns.length) }}\"\n [(p-value)]=\"row[column.property]\"\n [p-width]=\"column.width\"\n >\n </po-grid-cell>\n </div>\n </div>\n </div>\n</ng-template>\n<!-- FIM: Coluna com as colunas nornais -->\n\n<!-- Coluna com as colunas de a\u00E7\u00E3o -->\n<ng-template #divActionColumns>\n <div class=\"po-grid po-grid-actions\">\n <div class=\"po-grid-header-group\">\n <div class=\"po-grid-row\">\n <po-grid-head\n *ngFor=\"let column of actionColumns; index as i\"\n class=\"po-grid-title\"\n p-position=\"{{ '0-' + (i + freezeColumns.length + columns.length) }}\"\n [p-title]=\"column.label\"\n [p-align]=\"column.align\"\n >\n </po-grid-head>\n </div>\n </div>\n\n <div class=\"po-grid-body\">\n <div\n class=\"po-grid-row\"\n *ngFor=\"let row of data; index as j\"\n (keydown.control.delete)=\"removeRow($event, row)\"\n (keydown.esc)=\"cancelRow($event, row)\"\n >\n <po-grid-cell-action\n *ngFor=\"let column of actionColumns; index as i\"\n class=\"po-grid-cell\"\n p-position=\"{{ j + 1 + '-' + (i + freezeColumns.length + columns.length) }}\"\n [p-value]=\"row[column.property]\"\n >\n </po-grid-cell-action>\n </div>\n </div>\n </div>\n</ng-template>\n<!-- FIM: Coluna com as colunas de a\u00E7\u00E3o -->\n"
300
- },] }
301
- ];
302
- PoGridComponent.ctorParameters = () => [
303
- { type: ChangeDetectorRef },
304
- { type: ElementRef },
305
- { type: Renderer2 }
306
- ];
307
- PoGridComponent.propDecorators = {
308
- tableElement: [{ type: ViewChild, args: ['table', { static: true },] }],
309
- tableWrapper: [{ type: ViewChild, args: ['wrapper', { static: true },] }],
310
- rowActions: [{ type: Input, args: ['p-row-actions',] }],
311
- data: [{ type: Input, args: ['p-data',] }],
312
- columns: [{ type: Input, args: ['p-columns',] }]
313
- };
314
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZ3JpZC9wby1ncmlkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQWEsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUlqSDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRCRztBQUtILE1BQU0sT0FBTyxlQUFlO0lBdUQxQixZQUFvQixpQkFBb0MsRUFBVSxLQUFpQixFQUFFLFFBQW1CO1FBQXBGLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBbkRuRjs7OztXQUlHO1FBQ3FCLGVBQVUsR0FBcUIsRUFBRSxDQUFDO1FBRTFEOztXQUVHO1FBQ2MsU0FBSSxHQUFlLEVBQUUsQ0FBQztRQUV2QyxhQUFRLEdBQVcsS0FBSyxDQUFDO1FBQ3pCLFlBQU8sR0FBVyxDQUFDLENBQUM7UUFDcEIsZUFBVSxHQUFXLENBQUMsQ0FBQztRQUN2QixpQkFBWSxHQUFXLEtBQUssQ0FBQztRQUM3QixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4QixtQkFBYyxHQUFXLENBQUMsQ0FBQztRQUczQixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRWYsVUFBSyxHQUFHLE1BQU0sQ0FBQztRQUNmLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFDZixpQkFBWSxHQUFHLENBQUMsQ0FBQztRQUtULGFBQVEsR0FBRyxFQUFFLENBQUM7UUF1QnBCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUV0QixJQUFJLENBQUMsY0FBYyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxDQUFDLEtBQVUsRUFB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NUMsT0FBTyxLQUFLLENBQUMsSUFBSSxJQUFJLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM1QyxDQUFDOzs7WUFqVUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxTQUFTO2dCQUNuQix1aU1BQXVDO2FBQ3hDOzs7WUFwQ1EsaUJBQWlCO1lBQWEsVUFBVTtZQUFvQixTQUFTOzs7MkJBc0MzRSxTQUFTLFNBQUMsT0FBTyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTsyQkFDbkMsU0FBUyxTQUFDLFNBQVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7eUJBT3JDLEtBQUssU0FBQyxlQUFlO21CQUtyQixLQUFLLFNBQUMsUUFBUTtzQkF3QmQsS0FBSyxTQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25EZXN0cm95LCBSZW5kZXJlcjIsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBQb0dyaWRSb3dBY3Rpb25zIH0gZnJvbSAnLi9wby1ncmlkLXJvdy1hY3Rpb25zLmludGVyZmFjZSc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogPiBDb21wb25lbnRlIGVtIGRlc2Vudm9sdmltZW50bywgcG9kZW5kbyBoYXZlciBCUkVBS0lORyBDSEFOR0VTIG5hcyBwcsOzeGltYXMgdmVyc8O1ZXMuXG4gKlxuICogQ29tcG9uZW50ZSBncmlkLlxuICpcbiAqIEHDp8O1ZXMgLyBhdGFsaG9zOlxuICpcbiAqIC0gQVJST1ctVVA6IE5hdmVnYSBwYXJhIGNlbHVsYSBzdXBlcmlvciAvIE5hIHVsdGltYSBsaW5oYSBhZGljaW9uYSB1bWEgbGluaGEgZW0gYnJhbmNvIG5vIGdyaWQ7XG4gKiAtIEFSUk9XLURPV046IE5hdmVnYSBwYXJhIGNlbHVsYSBpbmZlcmlvcjtcbiAqIC0gQVJST1ctUklHSFQ6IE5hdmVnYSBwYXJhIGNlbHVsYSBkaXJlaXRhO1xuICogLSBBUlJPVy1MRUZUOiBOYXZlZ2EgcGFyYSBjZWx1bGEgZXNxdWVyZGE7XG4gKiAtIFRBQjogTmF2ZWdhIHBhcmEgcHLDs3hpbWEgY2VsdWxhO1xuICogLSBTSElGVCtUQUI6IE5hdmVnYSBwYXJhIGNlbHVsYSBhbnRlcmlvcjtcbiAqIC0gQ1RSTCtERUw6IFJlbW92ZSBsaW5oYTtcbiAqIC0gREVML0JBQ0tTUEFDRTogTGltcGEgY2VsdWxhO1xuICogLSBFTlRFUjogRWRpdGEgbGluaGEgY29tIHZhbG9yIGF0dWFsL0NvbmZpcm1hIGVkacOnw6NvIGRhIGNlbHVsYTtcbiAqIC0gRE9VQkxFLUNMSUNLOiBFZGl0YSBsaW5oYSBjb20gdmFsb3IgYXR1YWw7XG4gKiAtIEVTQzogQ2FuY2VsYSBlZGnDp8OjbyBkYSBjZWx1bGEgLyBDYW5jZWxhIGluc2Vyw6fDo28gZGUgbGluaGFzIGVtIGJyYW5jbztcbiAqIC0gQS4uWi8wLi45OiBJbmljaWEgZWRpw6fDo28gY29tIHZhbG9yIGVtIGJyYW5jby5cbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1ncmlkLWJhc2ljXCIgdGl0bGU9XCJQTyBHcmlkIEJhc2ljXCI+XG4gKiAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1ncmlkLWJhc2ljL3NhbXBsZS1wby1ncmlkLWJhc2ljLmNvbXBvbmVudC5odG1sXCI+IDwvZmlsZT5cbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWdyaWQtYmFzaWMvc2FtcGxlLXBvLWdyaWQtYmFzaWMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cbiAqIDwvZXhhbXBsZT5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncG8tZ3JpZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wby1ncmlkLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQb0dyaWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKCd0YWJsZScsIHsgc3RhdGljOiB0cnVlIH0pIHRhYmxlRWxlbWVudDogRWxlbWVudFJlZjtcbiAgQFZpZXdDaGlsZCgnd3JhcHBlcicsIHsgc3RhdGljOiB0cnVlIH0pIHRhYmxlV3JhcHBlcjogRWxlbWVudFJlZjtcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIEHDp8O1ZXMgZGlzcGFyYWRhcyBxdWFuZG8gdW1hIGxpbmhhIGRvIGdyaWQgw6kgbWFuaXB1bGFkYS5cbiAgICovXG4gIEBJbnB1dCgncC1yb3ctYWN0aW9ucycpIHJvd0FjdGlvbnM6IFBvR3JpZFJvd0FjdGlvbnMgPSB7fTtcblxuICAvKipcbiAgICogTGlzdGEgY29tIG9zIGRhZG9zIHF1ZSBzZXLDo28gZXhpYmlkb3Mgbm8gZ3JpZC5cbiAgICovXG4gIEBJbnB1dCgncC1kYXRhJykgZGF0YTogQXJyYXk8YW55PiA9IFtdO1xuXG4gIGxhc3RDZWxsOiBzdHJpbmcgPSAnMC0wJztcbiAgbGFzdFJvdzogbnVtYmVyID0gMDtcbiAgbGFzdENvbHVtbjogbnVtYmVyID0gMDtcbiAgY3VycmVuY3lDZWxsOiBzdHJpbmcgPSAnMC0wJztcbiAgY3VycmVuY3lSb3c6IG51bWJlciA9IDA7XG4gIGN1cnJlbmN5Q29sdW1uOiBudW1iZXIgPSAwO1xuICBjdXJyZW5jeU9iajogYW55O1xuXG4gIGxvZ2dlciA9IGZhbHNlO1xuXG4gIHdpZHRoID0gJzEwMCUnO1xuICB3aWRwb3JlZXplID0gMDtcbiAgd2lkdGhBY3Rpb25zID0gMDtcblxuICBwcml2YXRlIHJlc2l6ZUxpc3RlbmVyOiAoKSA9PiB2b2lkO1xuICBwcml2YXRlIHRpbWVvdXRSZXNpemU7XG5cbiAgcHJpdmF0ZSBfY29sdW1ucyA9IFtdO1xuXG4gIC8qKlxuICAgKiBDb2x1bmFzIGV4aWJpZGFzIG5vIGdyaWQuXG4gICAqL1xuICBASW5wdXQoJ3AtY29sdW1ucycpIHNldCBjb2x1bW5zKHZhbHVlOiBBcnJheTxhbnk+KSB7XG4gICAgdGhpcy5fY29sdW1ucyA9IFsuLi52YWx1ZV07XG5cbiAgICB0aGlzLl9jb2x1bW5zLmZvckVhY2goY29sdW1uID0+IHtcbiAgICAgIGNvbHVtbi5sYWJlbCA9IGNvbHVtbi5sYWJlbCB8fCBjb2x1bW4ucHJvcGVydHk7XG5cbiAgICAgIGlmIChjb2x1bW4uZnJlZXplID09PSB0cnVlKSB7XG4gICAgICAgIGNvbHVtbi5jc3NXaWR0aCA9IGAke2NvbHVtbi53aWR0aCB8fCAxMDB9cHhgO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29sdW1uLmNzc1dpZHRoID0gY29sdW1uLndpZHRoID8gYCR7Y29sdW1uLndpZHRofXB4YCA6ICcxMDAlJztcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuICBnZXQgY29sdW1ucygpOiBBcnJheTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5fY29sdW1ucy5maWx0ZXIoY29sdW1uID0+IGNvbHVtbi5mcmVlemUgIT09IHRydWUgJiYgY29sdW1uLmFjdGlvbiAhPT0gdHJ1ZSk7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSBlbFJlZjogRWxlbWVudFJlZiwgcmVuZGVyZXI6IFJlbmRlcmVyMikge1xuICAgIHRoaXMuZGVib3VuY2VSZXNpemUoKTtcblxuICAgIHRoaXMucmVzaXplTGlzdGVuZXIgPSByZW5kZXJlci5saXN0ZW4oJ3dpbmRvdycsICdyZXNpemUnLCAoZXZlbnQ6IGFueSkgPT4ge1xuICAgICAgdGhpcy5kZWJvdW5jZVJlc2l6ZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMucmVzaXplTGlzdGVuZXIpIHtcbiAgICAgIHRoaXMucmVzaXplTGlzdGVuZXIoKTtcbiAgICB9XG4gIH1cblxuICBnZXQgZnJlZXplQ29sdW1ucygpIHtcbiAgICBjb25zdCBmcmVlemVDb2x1bW5zID0gdGhpcy5fY29sdW1ucy5maWx0ZXIoY29sdW1uID0+IGNvbHVtbi5mcmVlemUgPT09IHRydWUpO1xuXG4gICAgdGhpcy53aWRwb3JlZXplID0gZnJlZXplQ29sdW1ucy5yZWR1Y2UoKHByZXYsIGN1cnJlbnQpID0+IHByZXYgKyAoY3VycmVudC53aWR0aCB8fCAxMDApLCAwKTtcblxuICAgIHJldHVybiBmcmVlemVDb2x1bW5zO1xuICB9XG5cbiAgZ2V0IGFjdGlvbkNvbHVtbnMoKSB7XG4gICAgY29uc3QgYWN0aW9uc0NvbHVtbnMgPSB0aGlzLl9jb2x1bW5zLmZpbHRlcihjb2x1bW4gPT4gY29sdW1uLmFjdGlvbiA9PT0gdHJ1ZSk7XG5cbiAgICB0aGlzLndpZHRoQWN0aW9ucyA9IGFjdGlvbnNDb2x1bW5zLmxlbmd0aCA+IDAgPyA1NiA6IDA7XG5cbiAgICByZXR1cm4gYWN0aW9uc0NvbHVtbnM7XG4gIH1cblxuICBjYW5jZWxSb3coZXZlbnQ6IGFueSwgcm93OiBhbnkpIHtcbiAgICBjb25zdCBlbCA9IHRoaXMuZ2V0RXZlbnRQYXRoKGV2ZW50KS5maW5kKGVsZW1lbnQgPT4gZWxlbWVudC5pZCk7XG5cbiAgICBpZiAoIWVsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgW3hdID0gZWwuaWQuc3BsaXQoJy0nKTtcblxuICAgIGlmICh0aGlzLmlzRW1wdHlSb3coeCkpIHtcbiAgICAgIGlmICghdGhpcy5yZW1vdmVSb3coZXZlbnQsIHJvdykpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmN1cnJlbmN5T2JqID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5kYXRhW3RoaXMuY3VycmVuY3lSb3cgLSAxXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGF0YVsreCAtIDFdID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5jdXJyZW5jeU9iaik7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2VsZWN0Q2VsbCh0aGlzLmN1cnJlbmN5Um93LCB0aGlzLmN1cnJlbmN5Q29sdW1uKSk7XG4gICAgfVxuICB9XG5cbiAgcmVtb3ZlUm93KGV2ZW50OiBhbnksIHJvdzogYW55KTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMucm93QWN0aW9ucy5iZWZvcmVSZW1vdmUgJiYgIXRoaXMucm93QWN0aW9ucy5iZWZvcmVSZW1vdmUoT2JqZWN0LmFzc2lnbih7fSwgcm93KSkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBpbmRleCA9IHRoaXMuZGF0YS5pbmRleE9mKHJvdyk7XG5cbiAgICB0aGlzLmRhdGEuc3BsaWNlKGluZGV4LCAxKTtcblxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgaWYgKHRoaXMuZGF0YS5sZW5ndGggPT09IDAgfHwgaW5kZXggPT09IHRoaXMuZGF0YS5sZW5ndGgpIHtcbiAgICAgIHRoaXMuc2VsZWN0Q2VsbCh0aGlzLmN1cnJlbmN5Um93IC0gMSwgdGhpcy5jdXJyZW5jeUNvbHVtbik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0Q2VsbCh0aGlzLmN1cnJlbmN5Um93LCB0aGlzLmN1cnJlbmN5Q29sdW1uKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHRhYmxlS2V5ZG93bihldmVudDogYW55LCBkaXJlY3Rpb246IHN0cmluZykge1xuICAgIGxldCBbcm93LCBjb2xdID0gZXZlbnQudGFyZ2V0LmlkLnNwbGl0KCctJyk7XG4gICAgcm93ID0gK3JvdztcbiAgICBjb2wgPSArY29sO1xuICAgIGxldCBwcm93ID0gK3JvdztcbiAgICBsZXQgcGNvbCA9ICtjb2w7XG5cbiAgICBpZiAoZGlyZWN0aW9uID09PSAnZG93bicpIHtcbiAgICAgIGlmIChyb3cgPD0gdGhpcy5kYXRhLmxlbmd0aCkge1xuICAgICAgICBwcm93Kys7XG4gICAgICB9XG5cbiAgICAgIGlmIChyb3cgPT09IHRoaXMuZGF0YS5sZW5ndGgpIHtcbiAgICAgICAgaWYgKHJvdyA9PT0gMCB8fCAhdGhpcy5pc0VtcHR5Um93KHJvdykpIHtcbiAgICAgICAgICBpZiAodGhpcy5zYXZlUm93KHJvdykpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5pbnNlcnRSb3coKSkge1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcHJvdy0tO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChkaXJlY3Rpb24gPT09ICd1cCcgJiYgcm93ID4gMCkge1xuICAgICAgcHJvdy0tO1xuICAgIH0gZWxzZSBpZiAoZGlyZWN0aW9uID09PSAnbGVmdCcgJiYgY29sID4gMCkge1xuICAgICAgcGNvbC0tO1xuICAgIH0gZWxzZSBpZiAoZGlyZWN0aW9uID09PSAncmlnaHQnICYmIGNvbCA8IHRoaXMuX2NvbHVtbnMubGVuZ3RoIC0gMSkge1xuICAgICAgcGNvbCsrO1xuICAgIH0gZWxzZSBpZiAoZGlyZWN0aW9uID09PSAnbmV4dCcpIHtcbiAgICAgIGlmIChjb2wgPCB0aGlzLl9jb2x1bW5zLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgcGNvbCsrO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfSBlbHNlIGlmIChyb3cgPCB0aGlzLmRhdGEubGVuZ3RoKSB7XG4gICAgICAgIHBjb2wgPSAwO1xuICAgICAgICBwcm93Kys7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChkaXJlY3Rpb24gPT09ICdwcmlvcicpIHtcbiAgICAgIGlmIChjb2wgPiAwKSB7XG4gICAgICAgIHBjb2wtLTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIH0gZWxzZSBpZiAocm93ID4gMCkge1xuICAgICAgICBwY29sID0gdGhpcy5fY29sdW1ucy5sZW5ndGggLSAxO1xuICAgICAgICBwcm93LS07XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY3VycmVuY3lDZWxsID09PSBgJHtwcm93fS0ke3Bjb2x9YCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChwcm93ICE9PSB0aGlzLmN1cnJlbmN5Um93ICYmIHJvdyA+IDAgJiYgdGhpcy5kYXRhLmxlbmd0aCA+PSByb3cpIHtcbiAgICAgIGlmICghdGhpcy5pc0VtcHR5Um93KHJvdykpIHtcbiAgICAgICAgaWYgKCF0aGlzLnNhdmVSb3cocm93KSkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKCF0aGlzLnJlbW92ZVJvdyhldmVudCwgcm93KSkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLmN1cnJlbmN5Um93ICE9PSBwcm93KSB7XG4gICAgICB0aGlzLmN1cnJlbmN5T2JqID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5kYXRhW3Byb3cgLSAxXSk7XG4gICAgfVxuXG4gICAgdGhpcy5sYXN0Q2VsbCA9IGV2ZW50LnRhcmdldC5pZDtcbiAgICB0aGlzLmxhc3RSb3cgPSByb3c7XG4gICAgdGhpcy5sYXN0Q29sdW1uID0gY29sO1xuXG4gICAgdGhpcy5zZWxlY3RDZWxsKHByb3csIHBjb2wpO1xuICB9XG5cbiAgdGFibGVDbGljayhldmVudDogYW55KSB7XG4gICAgY29uc3QgZWwgPSB0aGlzLmdldEV2ZW50UGF0aChldmVudCkuZmluZChlbGVtZW50ID0+IGVsZW1lbnQuaWQpO1xuXG4gICAgaWYgKCFlbCkge1xuICAgICAgdGhpcy5zZWxlY3RDZWxsKHRoaXMuY3VycmVuY3lSb3csIHRoaXMuY3VycmVuY3lDb2x1bW4pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmN1cnJlbmN5Q2VsbCA9PT0gZWwuaWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBbcm93LCBjb2xdID0gZWwuaWQuc3BsaXQoJy0nKTtcbiAgICBjb25zdCBwcm93ID0gK3JvdztcbiAgICBjb25zdCBwY29sID0gK2NvbDtcblxuICAgIGlmIChwcm93ICE9PSB0aGlzLmN1cnJlbmN5Um93KSB7XG4gICAgICBpZiAodGhpcy5jdXJyZW5jeVJvdyA+IDApIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzRW1wdHlSb3codGhpcy5jdXJyZW5jeVJvdykpIHtcbiAgICAgICAgICBpZiAoIXRoaXMuc2F2ZVJvdyh0aGlzLmN1cnJlbmN5Um93KSkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RDZWxsKHRoaXMuY3VycmVuY3lSb3csIHRoaXMuY3VycmVuY3lDb2x1bW4pO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAoIXRoaXMucmVtb3ZlUm93KGV2ZW50LCByb3cpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY3VycmVuY3lPYmogPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLmRhdGFbcHJvdyAtIDFdKTtcbiAgICB9XG5cbiAgICB0aGlzLmxhc3RDZWxsID0gdGhpcy5jdXJyZW5jeUNlbGw7XG4gICAgdGhpcy5sYXN0Um93ID0gdGhpcy5jdXJyZW5jeVJvdztcbiAgICB0aGlzLmxhc3RDb2x1bW4gPSB0aGlzLmN1cnJlbmN5Q29sdW1uO1xuXG4gICAgdGhpcy5jdXJyZW5jeUNlbGwgPSBlbC5pZDtcbiAgICB0aGlzLmN1cnJlbmN5Um93ID0gcHJvdztcbiAgICB0aGlzLmN1cnJlbmN5Q29sdW1uID0gcGNvbDtcbiAgfVxuXG4gIHNhdmVSb3cocm93OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICBjb25zdCBvYmogPSB0aGlzLmRhdGFbcm93IC0gMV07XG5cbiAgICBpZiAoIU9iamVjdC5rZXlzKG9iaikuc29tZShwcm9wID0+IG9ialtwcm9wXSAhPT0gdGhpcy5jdXJyZW5jeU9ialtwcm9wXSkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnJvd0FjdGlvbnMuYmVmb3JlU2F2ZSAmJiAhdGhpcy5yb3dBY3Rpb25zLmJlZm9yZVNhdmUob2JqLCB0aGlzLmN1cnJlbmN5T2JqKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IHJlcXVpcmVkcyA9IFtdO1xuXG4gICAgdGhpcy5jb2x1bW5zLmZvckVhY2goY29sdW1uID0+IHtcbiAgICAgIGlmIChjb2x1bW4ucmVxdWlyZWQgPT09IHRydWUgJiYgIW9ialtjb2x1bW4ucHJvcGVydHldKSB7XG4gICAgICAgIHJlcXVpcmVkcy5wdXNoKGNvbHVtbi5wcm9wZXJ0eSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcmVxdWlyZWRzLmxlbmd0aCA9PT0gMDtcbiAgfVxuXG4gIGluc2VydFJvdygpIHtcbiAgICBjb25zdCBvYmogPSB7fTtcblxuICAgIGlmICh0aGlzLnJvd0FjdGlvbnMuYmVmb3JlSW5zZXJ0ICYmICF0aGlzLnJvd0FjdGlvbnMuYmVmb3JlSW5zZXJ0KG9iaikpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICB0aGlzLmRhdGEucHVzaChvYmopO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBpc0VtcHR5Um93KHJvdzogbnVtYmVyKSB7XG4gICAgY29uc3Qgb2JqID0gdGhpcy5kYXRhW3JvdyAtIDFdO1xuXG4gICAgaWYgKCFvYmopIHtcbiAgICAgIC8vIHRpdGxlXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29uc3QgZmlsbGVkID0gT2JqZWN0LmtleXMob2JqKS5zb21lKHByb3BlcnR5ID0+IG9ialtwcm9wZXJ0eV0pO1xuXG4gICAgcmV0dXJuICFmaWxsZWQ7XG4gIH1cblxuICBzZWxlY3RDZWxsKHJvdzogbnVtYmVyLCBjb2w6IG51bWJlcikge1xuICAgIGNvbnN0IG5leHRDZWxsID0gdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoYFtpZD0nJHtyb3d9LSR7Y29sfSddYCk7XG5cbiAgICBpZiAobmV4dENlbGwpIHtcbiAgICAgIHRoaXMuY3VycmVuY3lDZWxsID0gYCR7cm93fS0ke2NvbH1gO1xuICAgICAgdGhpcy5jdXJyZW5jeVJvdyA9IHJvdztcbiAgICAgIHRoaXMuY3VycmVuY3lDb2x1bW4gPSBjb2w7XG4gICAgICBuZXh0Q2VsbC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZGVib3VuY2VSZXNpemUoKSB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dFJlc2l6ZSk7XG5cbiAgICB0aGlzLnRpbWVvdXRSZXNpemUgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnN0IHdpZHRoVGFibGVXcmFwcGVyID0gdGhpcy50YWJsZVdyYXBwZXIubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aDtcbiAgICAgIHRoaXMud2lkdGggPSBgJHt3aWR0aFRhYmxlV3JhcHBlciAtICh0aGlzLndpZHBvcmVlemUgKyA4KSAtIHRoaXMud2lkdGhBY3Rpb25zfXB4YDtcbiAgICB9LCAxMDApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRFdmVudFBhdGgoZXZlbnQpIHtcbiAgICAvLyBmaXJlZm94IGRvIG5vdCBoYXZlIHN1cHBvcnQgdG8gZXZlbnQucGF0aFxuICAgIHJldHVybiBldmVudC5wYXRoIHx8IGV2ZW50LmNvbXBvc2VkUGF0aCgpO1xuICB9XG59XG4iXX0=
1
+ import { ChangeDetectorRef, Component, ElementRef, Input, Renderer2, ViewChild } from '@angular/core';
2
+ /**
3
+ * @description
4
+ *
5
+ * > Componente em desenvolvimento, podendo haver BREAKING CHANGES nas próximas versões.
6
+ *
7
+ * Componente grid.
8
+ *
9
+ * Ações / atalhos:
10
+ *
11
+ * - ARROW-UP: Navega para celula superior / Na ultima linha adiciona uma linha em branco no grid;
12
+ * - ARROW-DOWN: Navega para celula inferior;
13
+ * - ARROW-RIGHT: Navega para celula direita;
14
+ * - ARROW-LEFT: Navega para celula esquerda;
15
+ * - TAB: Navega para próxima celula;
16
+ * - SHIFT+TAB: Navega para celula anterior;
17
+ * - CTRL+DEL: Remove linha;
18
+ * - DEL/BACKSPACE: Limpa celula;
19
+ * - ENTER: Edita linha com valor atual/Confirma edição da celula;
20
+ * - DOUBLE-CLICK: Edita linha com valor atual;
21
+ * - ESC: Cancela edição da celula / Cancela inserção de linhas em branco;
22
+ * - A..Z/0..9: Inicia edição com valor em branco.
23
+ *
24
+ * @example
25
+ *
26
+ * <example name="po-grid-basic" title="PO Grid Basic">
27
+ * <file name="sample-po-grid-basic/sample-po-grid-basic.component.html"> </file>
28
+ * <file name="sample-po-grid-basic/sample-po-grid-basic.component.ts"> </file>
29
+ * </example>
30
+ */
31
+ export class PoGridComponent {
32
+ constructor(changeDetectorRef, elRef, renderer) {
33
+ this.changeDetectorRef = changeDetectorRef;
34
+ this.elRef = elRef;
35
+ /**
36
+ * @description
37
+ *
38
+ * Ações disparadas quando uma linha do grid é manipulada.
39
+ */
40
+ this.rowActions = {};
41
+ /**
42
+ * Lista com os dados que serão exibidos no grid.
43
+ */
44
+ this.data = [];
45
+ this.lastCell = '0-0';
46
+ this.lastRow = 0;
47
+ this.lastColumn = 0;
48
+ this.currencyCell = '0-0';
49
+ this.currencyRow = 0;
50
+ this.currencyColumn = 0;
51
+ this.logger = false;
52
+ this.width = '100%';
53
+ this.widporeeze = 0;
54
+ this.widthActions = 0;
55
+ this._columns = [];
56
+ this.debounceResize();
57
+ this.resizeListener = renderer.listen('window', 'resize', (event) => {
58
+ this.debounceResize();
59
+ });
60
+ }
61
+ /**
62
+ * Colunas exibidas no grid.
63
+ */
64
+ set columns(value) {
65
+ this._columns = [...value];
66
+ this._columns.forEach(column => {
67
+ column.label = column.label || column.property;
68
+ if (column.freeze === true) {
69
+ column.cssWidth = `${column.width || 100}px`;
70
+ }
71
+ else {
72
+ column.cssWidth = column.width ? `${column.width}px` : '100%';
73
+ }
74
+ });
75
+ }
76
+ get columns() {
77
+ return this._columns.filter(column => column.freeze !== true && column.action !== true);
78
+ }
79
+ ngOnDestroy() {
80
+ if (this.resizeListener) {
81
+ this.resizeListener();
82
+ }
83
+ }
84
+ get freezeColumns() {
85
+ const freezeColumns = this._columns.filter(column => column.freeze === true);
86
+ this.widporeeze = freezeColumns.reduce((prev, current) => prev + (current.width || 100), 0);
87
+ return freezeColumns;
88
+ }
89
+ get actionColumns() {
90
+ const actionsColumns = this._columns.filter(column => column.action === true);
91
+ this.widthActions = actionsColumns.length > 0 ? 56 : 0;
92
+ return actionsColumns;
93
+ }
94
+ cancelRow(event, row) {
95
+ const el = this.getEventPath(event).find(element => element.id);
96
+ if (!el) {
97
+ return;
98
+ }
99
+ const [x] = el.id.split('-');
100
+ if (this.isEmptyRow(x)) {
101
+ if (!this.removeRow(event, row)) {
102
+ return;
103
+ }
104
+ this.currencyObj = Object.assign({}, this.data[this.currencyRow - 1]);
105
+ }
106
+ else {
107
+ this.data[+x - 1] = Object.assign({}, this.currencyObj);
108
+ setTimeout(() => this.selectCell(this.currencyRow, this.currencyColumn));
109
+ }
110
+ }
111
+ removeRow(event, row) {
112
+ if (this.rowActions.beforeRemove && !this.rowActions.beforeRemove(Object.assign({}, row))) {
113
+ return false;
114
+ }
115
+ const index = this.data.indexOf(row);
116
+ this.data.splice(index, 1);
117
+ this.changeDetectorRef.detectChanges();
118
+ if (this.data.length === 0 || index === this.data.length) {
119
+ this.selectCell(this.currencyRow - 1, this.currencyColumn);
120
+ }
121
+ else {
122
+ this.selectCell(this.currencyRow, this.currencyColumn);
123
+ }
124
+ return true;
125
+ }
126
+ tableKeydown(event, direction) {
127
+ let [row, col] = event.target.id.split('-');
128
+ row = +row;
129
+ col = +col;
130
+ let prow = +row;
131
+ let pcol = +col;
132
+ if (direction === 'down') {
133
+ if (row <= this.data.length) {
134
+ prow++;
135
+ }
136
+ if (row === this.data.length) {
137
+ if (row === 0 || !this.isEmptyRow(row)) {
138
+ if (this.saveRow(row)) {
139
+ if (!this.insertRow()) {
140
+ return;
141
+ }
142
+ }
143
+ else {
144
+ return;
145
+ }
146
+ }
147
+ else {
148
+ prow--;
149
+ }
150
+ }
151
+ }
152
+ else if (direction === 'up' && row > 0) {
153
+ prow--;
154
+ }
155
+ else if (direction === 'left' && col > 0) {
156
+ pcol--;
157
+ }
158
+ else if (direction === 'right' && col < this._columns.length - 1) {
159
+ pcol++;
160
+ }
161
+ else if (direction === 'next') {
162
+ if (col < this._columns.length - 1) {
163
+ pcol++;
164
+ event.preventDefault();
165
+ }
166
+ else if (row < this.data.length) {
167
+ pcol = 0;
168
+ prow++;
169
+ event.preventDefault();
170
+ }
171
+ }
172
+ else if (direction === 'prior') {
173
+ if (col > 0) {
174
+ pcol--;
175
+ event.preventDefault();
176
+ }
177
+ else if (row > 0) {
178
+ pcol = this._columns.length - 1;
179
+ prow--;
180
+ event.preventDefault();
181
+ }
182
+ }
183
+ if (this.currencyCell === `${prow}-${pcol}`) {
184
+ return;
185
+ }
186
+ if (prow !== this.currencyRow && row > 0 && this.data.length >= row) {
187
+ if (!this.isEmptyRow(row)) {
188
+ if (!this.saveRow(row)) {
189
+ return;
190
+ }
191
+ }
192
+ else {
193
+ if (!this.removeRow(event, row)) {
194
+ return;
195
+ }
196
+ }
197
+ }
198
+ if (this.currencyRow !== prow) {
199
+ this.currencyObj = Object.assign({}, this.data[prow - 1]);
200
+ }
201
+ this.lastCell = event.target.id;
202
+ this.lastRow = row;
203
+ this.lastColumn = col;
204
+ this.selectCell(prow, pcol);
205
+ }
206
+ tableClick(event) {
207
+ const el = this.getEventPath(event).find(element => element.id);
208
+ if (!el) {
209
+ this.selectCell(this.currencyRow, this.currencyColumn);
210
+ return;
211
+ }
212
+ if (this.currencyCell === el.id) {
213
+ return;
214
+ }
215
+ const [row, col] = el.id.split('-');
216
+ const prow = +row;
217
+ const pcol = +col;
218
+ if (prow !== this.currencyRow) {
219
+ if (this.currencyRow > 0) {
220
+ if (!this.isEmptyRow(this.currencyRow)) {
221
+ if (!this.saveRow(this.currencyRow)) {
222
+ this.selectCell(this.currencyRow, this.currencyColumn);
223
+ return;
224
+ }
225
+ }
226
+ else {
227
+ if (!this.removeRow(event, row)) {
228
+ return;
229
+ }
230
+ }
231
+ }
232
+ this.currencyObj = Object.assign({}, this.data[prow - 1]);
233
+ }
234
+ this.lastCell = this.currencyCell;
235
+ this.lastRow = this.currencyRow;
236
+ this.lastColumn = this.currencyColumn;
237
+ this.currencyCell = el.id;
238
+ this.currencyRow = prow;
239
+ this.currencyColumn = pcol;
240
+ }
241
+ saveRow(row) {
242
+ const obj = this.data[row - 1];
243
+ if (!Object.keys(obj).some(prop => obj[prop] !== this.currencyObj[prop])) {
244
+ return true;
245
+ }
246
+ if (this.rowActions.beforeSave && !this.rowActions.beforeSave(obj, this.currencyObj)) {
247
+ return false;
248
+ }
249
+ const requireds = [];
250
+ this.columns.forEach(column => {
251
+ if (column.required === true && !obj[column.property]) {
252
+ requireds.push(column.property);
253
+ }
254
+ });
255
+ return requireds.length === 0;
256
+ }
257
+ insertRow() {
258
+ const obj = {};
259
+ if (this.rowActions.beforeInsert && !this.rowActions.beforeInsert(obj)) {
260
+ return false;
261
+ }
262
+ this.data.push(obj);
263
+ this.changeDetectorRef.detectChanges();
264
+ return true;
265
+ }
266
+ isEmptyRow(row) {
267
+ const obj = this.data[row - 1];
268
+ if (!obj) {
269
+ // title
270
+ return false;
271
+ }
272
+ const filled = Object.keys(obj).some(property => obj[property]);
273
+ return !filled;
274
+ }
275
+ selectCell(row, col) {
276
+ const nextCell = this.elRef.nativeElement.querySelector(`[id='${row}-${col}']`);
277
+ if (nextCell) {
278
+ this.currencyCell = `${row}-${col}`;
279
+ this.currencyRow = row;
280
+ this.currencyColumn = col;
281
+ nextCell.focus();
282
+ }
283
+ }
284
+ debounceResize() {
285
+ clearTimeout(this.timeoutResize);
286
+ this.timeoutResize = setTimeout(() => {
287
+ const widthTableWrapper = this.tableWrapper.nativeElement.offsetWidth;
288
+ this.width = `${widthTableWrapper - (this.widporeeze + 8) - this.widthActions}px`;
289
+ }, 100);
290
+ }
291
+ getEventPath(event) {
292
+ // firefox do not have support to event.path
293
+ return event.path || event.composedPath();
294
+ }
295
+ }
296
+ PoGridComponent.decorators = [
297
+ { type: Component, args: [{
298
+ selector: 'po-grid',
299
+ template: "<div class=\"po-grid-wrapper po-grid-row-wrapper\" #wrapper>\r\n <div *ngIf=\"logger\">\r\n lastCell: {{ lastCell }} | currencyCell: {{ currencyCell }} <br />\r\n lastRow: {{ lastRow }} | currencyRow: {{ currencyRow }} <br />\r\n lastColumn: {{ lastColumn }} | currencyColumn: {{ currencyColumn }} <br />\r\n <hr />\r\n currencyObj: {{ currencyObj | json }}\r\n <hr />\r\n </div>\r\n\r\n <div class=\"po-grid\">\r\n <div class=\"po-grid-body\">\r\n <div\r\n class=\"po-grid-row\"\r\n #table\r\n (keydown.arrowup)=\"tableKeydown($event, 'up')\"\r\n (keydown.arrowdown)=\"tableKeydown($event, 'down')\"\r\n (keydown.arrowleft)=\"tableKeydown($event, 'left')\"\r\n (keydown.arrowright)=\"tableKeydown($event, 'right')\"\r\n (keydown.tab)=\"tableKeydown($event, 'next')\"\r\n (keydown.shift.tab)=\"tableKeydown($event, 'prior')\"\r\n (click)=\"tableClick($event)\"\r\n (contextmenu)=\"tableClick($event)\"\r\n (dblclick)=\"tableClick($event)\"\r\n >\r\n <div class=\"po-grid-cell po-grid-cell-freeze\" *ngIf=\"freezeColumns.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"divFreezeColumns\"></ng-container>\r\n </div>\r\n\r\n <div\r\n class=\"po-grid-cell po-grid-cell-normal\"\r\n [style.width]=\"width\"\r\n [style.max-width]=\"width\"\r\n [style.min-width]=\"width\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"divColumns\"></ng-container>\r\n </div>\r\n\r\n <div class=\"po-grid-cell po-grid-cell-action\" *ngIf=\"actionColumns.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"divActionColumns\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<!-- Coluna com as colunas congeladas -->\r\n<ng-template #divFreezeColumns>\r\n <div class=\"po-grid po-grid-freeze\">\r\n <div class=\"po-grid-header-group\">\r\n <div class=\"po-grid-row\">\r\n <po-grid-head\r\n *ngFor=\"let column of freezeColumns; index as i\"\r\n class=\"po-grid-title\"\r\n [style.width]=\"column.cssWidth\"\r\n [style.max-width]=\"column.cssWidth\"\r\n [style.min-width]=\"column.cssWidth\"\r\n p-freeze=\"true\"\r\n p-position=\"{{ '0-' + i }}\"\r\n [p-width]=\"column.width\"\r\n [p-align]=\"column.align\"\r\n [p-title]=\"column.label\"\r\n >\r\n </po-grid-head>\r\n </div>\r\n </div>\r\n\r\n <div class=\"po-grid-body\">\r\n <div\r\n class=\"po-grid-row\"\r\n *ngFor=\"let row of data; index as j\"\r\n (keydown.control.delete)=\"removeRow($event, row)\"\r\n (keydown.esc)=\"cancelRow($event, row)\"\r\n >\r\n <po-grid-cell\r\n *ngFor=\"let column of freezeColumns; index as i\"\r\n class=\"po-grid-cell\"\r\n [style.width]=\"column.cssWidth\"\r\n [style.max-width]=\"column.cssWidth\"\r\n [style.min-width]=\"column.cssWidth\"\r\n p-freeze=\"true\"\r\n [p-align]=\"column.align\"\r\n [p-readonly]=\"column.readonly\"\r\n [p-required]=\"column.required\"\r\n p-position=\"{{ j + 1 + '-' + i }}\"\r\n [p-width]=\"column.width\"\r\n [(p-value)]=\"row[column.property]\"\r\n >\r\n </po-grid-cell>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>\r\n<!-- FIM: Coluna com as colunas congeladas -->\r\n\r\n<!-- Coluna com as colunas nornais -->\r\n<ng-template #divColumns>\r\n <div class=\"po-grid po-grid-normal\">\r\n <div class=\"po-grid-header-group\">\r\n <div class=\"po-grid-row\">\r\n <po-grid-head\r\n *ngFor=\"let column of columns; index as i\"\r\n class=\"po-grid-title\"\r\n [style.width]=\"column.cssWidth\"\r\n [style.max-width]=\"column.cssWidth\"\r\n [style.min-width]=\"column.cssWidth\"\r\n [p-align]=\"column.align\"\r\n p-position=\"{{ '0-' + (i + freezeColumns.length) }}\"\r\n [p-title]=\"column.label\"\r\n [p-width]=\"column.width\"\r\n >\r\n </po-grid-head>\r\n </div>\r\n </div>\r\n\r\n <div class=\"po-grid-body\">\r\n <div\r\n class=\"po-grid-row\"\r\n *ngFor=\"let row of data; index as j\"\r\n (keydown.control.delete)=\"removeRow($event, row)\"\r\n (keydown.esc)=\"cancelRow($event, row)\"\r\n >\r\n <po-grid-cell\r\n *ngFor=\"let column of columns; index as i\"\r\n class=\"po-grid-cell\"\r\n [style.width]=\"column.cssWidth\"\r\n [style.max-width]=\"column.cssWidth\"\r\n [style.min-width]=\"column.cssWidth\"\r\n [p-align]=\"column.align\"\r\n [p-readonly]=\"column.readonly\"\r\n [p-required]=\"column.required\"\r\n p-position=\"{{ j + 1 + '-' + (i + freezeColumns.length) }}\"\r\n [(p-value)]=\"row[column.property]\"\r\n [p-width]=\"column.width\"\r\n >\r\n </po-grid-cell>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>\r\n<!-- FIM: Coluna com as colunas nornais -->\r\n\r\n<!-- Coluna com as colunas de a\u00E7\u00E3o -->\r\n<ng-template #divActionColumns>\r\n <div class=\"po-grid po-grid-actions\">\r\n <div class=\"po-grid-header-group\">\r\n <div class=\"po-grid-row\">\r\n <po-grid-head\r\n *ngFor=\"let column of actionColumns; index as i\"\r\n class=\"po-grid-title\"\r\n p-position=\"{{ '0-' + (i + freezeColumns.length + columns.length) }}\"\r\n [p-title]=\"column.label\"\r\n [p-align]=\"column.align\"\r\n >\r\n </po-grid-head>\r\n </div>\r\n </div>\r\n\r\n <div class=\"po-grid-body\">\r\n <div\r\n class=\"po-grid-row\"\r\n *ngFor=\"let row of data; index as j\"\r\n (keydown.control.delete)=\"removeRow($event, row)\"\r\n (keydown.esc)=\"cancelRow($event, row)\"\r\n >\r\n <po-grid-cell-action\r\n *ngFor=\"let column of actionColumns; index as i\"\r\n class=\"po-grid-cell\"\r\n p-position=\"{{ j + 1 + '-' + (i + freezeColumns.length + columns.length) }}\"\r\n [p-value]=\"row[column.property]\"\r\n >\r\n </po-grid-cell-action>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>\r\n<!-- FIM: Coluna com as colunas de a\u00E7\u00E3o -->\r\n"
300
+ },] }
301
+ ];
302
+ PoGridComponent.ctorParameters = () => [
303
+ { type: ChangeDetectorRef },
304
+ { type: ElementRef },
305
+ { type: Renderer2 }
306
+ ];
307
+ PoGridComponent.propDecorators = {
308
+ tableElement: [{ type: ViewChild, args: ['table', { static: true },] }],
309
+ tableWrapper: [{ type: ViewChild, args: ['wrapper', { static: true },] }],
310
+ rowActions: [{ type: Input, args: ['p-row-actions',] }],
311
+ data: [{ type: Input, args: ['p-data',] }],
312
+ columns: [{ type: Input, args: ['p-columns',] }]
313
+ };
314
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZ3JpZC9wby1ncmlkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQWEsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUlqSDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRCRztBQUtILE1BQU0sT0FBTyxlQUFlO0lBdUQxQixZQUFvQixpQkFBb0MsRUFBVSxLQUFpQixFQUFFLFFBQW1CO1FBQXBGLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBbkRuRjs7OztXQUlHO1FBQ3FCLGVBQVUsR0FBcUIsRUFBRSxDQUFDO1FBRTFEOztXQUVHO1FBQ2MsU0FBSSxHQUFlLEVBQUUsQ0FBQztRQUV2QyxhQUFRLEdBQVcsS0FBSyxDQUFDO1FBQ3pCLFlBQU8sR0FBVyxDQUFDLENBQUM7UUFDcEIsZUFBVSxHQUFXLENBQUMsQ0FBQztRQUN2QixpQkFBWSxHQUFXLEtBQUssQ0FBQztRQUM3QixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4QixtQkFBYyxHQUFXLENBQUMsQ0FBQztRQUczQixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRWYsVUFBSyxHQUFHLE1BQU0sQ0FBQztRQUNmLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFDZixpQkFBWSxHQUFHLENBQUMsQ0FBQztRQUtULGFBQVEsR0FBRyxFQUFFLENBQUM7UUF1QnBCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUV0QixJQUFJLENBQUMsY0FBYyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxDQUFDLEtBQVUsRUFB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NUMsT0FBTyxLQUFLLENBQUMsSUFBSSxJQUFJLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM1QyxDQUFDOzs7WUFqVUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxTQUFTO2dCQUNuQix5NE1BQXVDO2FBQ3hDOzs7WUFwQ1EsaUJBQWlCO1lBQWEsVUFBVTtZQUFvQixTQUFTOzs7MkJBc0MzRSxTQUFTLFNBQUMsT0FBTyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTsyQkFDbkMsU0FBUyxTQUFDLFNBQVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7eUJBT3JDLEtBQUssU0FBQyxlQUFlO21CQUtyQixLQUFLLFNBQUMsUUFBUTtzQkF3QmQsS0FBSyxTQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25EZXN0cm95LCBSZW5kZXJlcjIsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgUG9HcmlkUm93QWN0aW9ucyB9IGZyb20gJy4vcG8tZ3JpZC1yb3ctYWN0aW9ucy5pbnRlcmZhY2UnO1xyXG5cclxuLyoqXHJcbiAqIEBkZXNjcmlwdGlvblxyXG4gKlxyXG4gKiA+IENvbXBvbmVudGUgZW0gZGVzZW52b2x2aW1lbnRvLCBwb2RlbmRvIGhhdmVyIEJSRUFLSU5HIENIQU5HRVMgbmFzIHByw7N4aW1hcyB2ZXJzw7Vlcy5cclxuICpcclxuICogQ29tcG9uZW50ZSBncmlkLlxyXG4gKlxyXG4gKiBBw6fDtWVzIC8gYXRhbGhvczpcclxuICpcclxuICogLSBBUlJPVy1VUDogTmF2ZWdhIHBhcmEgY2VsdWxhIHN1cGVyaW9yIC8gTmEgdWx0aW1hIGxpbmhhIGFkaWNpb25hIHVtYSBsaW5oYSBlbSBicmFuY28gbm8gZ3JpZDtcclxuICogLSBBUlJPVy1ET1dOOiBOYXZlZ2EgcGFyYSBjZWx1bGEgaW5mZXJpb3I7XHJcbiAqIC0gQVJST1ctUklHSFQ6IE5hdmVnYSBwYXJhIGNlbHVsYSBkaXJlaXRhO1xyXG4gKiAtIEFSUk9XLUxFRlQ6IE5hdmVnYSBwYXJhIGNlbHVsYSBlc3F1ZXJkYTtcclxuICogLSBUQUI6IE5hdmVnYSBwYXJhIHByw7N4aW1hIGNlbHVsYTtcclxuICogLSBTSElGVCtUQUI6IE5hdmVnYSBwYXJhIGNlbHVsYSBhbnRlcmlvcjtcclxuICogLSBDVFJMK0RFTDogUmVtb3ZlIGxpbmhhO1xyXG4gKiAtIERFTC9CQUNLU1BBQ0U6IExpbXBhIGNlbHVsYTtcclxuICogLSBFTlRFUjogRWRpdGEgbGluaGEgY29tIHZhbG9yIGF0dWFsL0NvbmZpcm1hIGVkacOnw6NvIGRhIGNlbHVsYTtcclxuICogLSBET1VCTEUtQ0xJQ0s6IEVkaXRhIGxpbmhhIGNvbSB2YWxvciBhdHVhbDtcclxuICogLSBFU0M6IENhbmNlbGEgZWRpw6fDo28gZGEgY2VsdWxhIC8gQ2FuY2VsYSBpbnNlcsOnw6NvIGRlIGxpbmhhcyBlbSBicmFuY287XHJcbiAqIC0gQS4uWi8wLi45OiBJbmljaWEgZWRpw6fDo28gY29tIHZhbG9yIGVtIGJyYW5jby5cclxuICpcclxuICogQGV4YW1wbGVcclxuICpcclxuICogPGV4YW1wbGUgbmFtZT1cInBvLWdyaWQtYmFzaWNcIiB0aXRsZT1cIlBPIEdyaWQgQmFzaWNcIj5cclxuICogIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tZ3JpZC1iYXNpYy9zYW1wbGUtcG8tZ3JpZC1iYXNpYy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XHJcbiAqICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWdyaWQtYmFzaWMvc2FtcGxlLXBvLWdyaWQtYmFzaWMuY29tcG9uZW50LnRzXCI+IDwvZmlsZT5cclxuICogPC9leGFtcGxlPlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdwby1ncmlkJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcG8tZ3JpZC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFBvR3JpZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgQFZpZXdDaGlsZCgndGFibGUnLCB7IHN0YXRpYzogdHJ1ZSB9KSB0YWJsZUVsZW1lbnQ6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgnd3JhcHBlcicsIHsgc3RhdGljOiB0cnVlIH0pIHRhYmxlV3JhcHBlcjogRWxlbWVudFJlZjtcclxuXHJcbiAgLyoqXHJcbiAgICogQGRlc2NyaXB0aW9uXHJcbiAgICpcclxuICAgKiBBw6fDtWVzIGRpc3BhcmFkYXMgcXVhbmRvIHVtYSBsaW5oYSBkbyBncmlkIMOpIG1hbmlwdWxhZGEuXHJcbiAgICovXHJcbiAgQElucHV0KCdwLXJvdy1hY3Rpb25zJykgcm93QWN0aW9uczogUG9HcmlkUm93QWN0aW9ucyA9IHt9O1xyXG5cclxuICAvKipcclxuICAgKiBMaXN0YSBjb20gb3MgZGFkb3MgcXVlIHNlcsOjbyBleGliaWRvcyBubyBncmlkLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgncC1kYXRhJykgZGF0YTogQXJyYXk8YW55PiA9IFtdO1xyXG5cclxuICBsYXN0Q2VsbDogc3RyaW5nID0gJzAtMCc7XHJcbiAgbGFzdFJvdzogbnVtYmVyID0gMDtcclxuICBsYXN0Q29sdW1uOiBudW1iZXIgPSAwO1xyXG4gIGN1cnJlbmN5Q2VsbDogc3RyaW5nID0gJzAtMCc7XHJcbiAgY3VycmVuY3lSb3c6IG51bWJlciA9IDA7XHJcbiAgY3VycmVuY3lDb2x1bW46IG51bWJlciA9IDA7XHJcbiAgY3VycmVuY3lPYmo6IGFueTtcclxuXHJcbiAgbG9nZ2VyID0gZmFsc2U7XHJcblxyXG4gIHdpZHRoID0gJzEwMCUnO1xyXG4gIHdpZHBvcmVlemUgPSAwO1xyXG4gIHdpZHRoQWN0aW9ucyA9IDA7XHJcblxyXG4gIHByaXZhdGUgcmVzaXplTGlzdGVuZXI6ICgpID0+IHZvaWQ7XHJcbiAgcHJpdmF0ZSB0aW1lb3V0UmVzaXplO1xyXG5cclxuICBwcml2YXRlIF9jb2x1bW5zID0gW107XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbHVuYXMgZXhpYmlkYXMgbm8gZ3JpZC5cclxuICAgKi9cclxuICBASW5wdXQoJ3AtY29sdW1ucycpIHNldCBjb2x1bW5zKHZhbHVlOiBBcnJheTxhbnk+KSB7XHJcbiAgICB0aGlzLl9jb2x1bW5zID0gWy4uLnZhbHVlXTtcclxuXHJcbiAgICB0aGlzLl9jb2x1bW5zLmZvckVhY2goY29sdW1uID0+IHtcclxuICAgICAgY29sdW1uLmxhYmVsID0gY29sdW1uLmxhYmVsIHx8IGNvbHVtbi5wcm9wZXJ0eTtcclxuXHJcbiAgICAgIGlmIChjb2x1bW4uZnJlZXplID09PSB0cnVlKSB7XHJcbiAgICAgICAgY29sdW1uLmNzc1dpZHRoID0gYCR7Y29sdW1uLndpZHRoIHx8IDEwMH1weGA7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29sdW1uLmNzc1dpZHRoID0gY29sdW1uLndpZHRoID8gYCR7Y29sdW1uLndpZHRofXB4YCA6ICcxMDAlJztcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGdldCBjb2x1bW5zKCk6IEFycmF5PGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NvbHVtbnMuZmlsdGVyKGNvbHVtbiA9PiBjb2x1bW4uZnJlZXplICE9PSB0cnVlICYmIGNvbHVtbi5hY3Rpb24gIT09IHRydWUpO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWYsIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcclxuICAgIHRoaXMuZGVib3VuY2VSZXNpemUoKTtcclxuXHJcbiAgICB0aGlzLnJlc2l6ZUxpc3RlbmVyID0gcmVuZGVyZXIubGlzdGVuKCd3aW5kb3cnLCAncmVzaXplJywgKGV2ZW50OiBhbnkpID0+IHtcclxuICAgICAgdGhpcy5kZWJvdW5jZVJlc2l6ZSgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIGlmICh0aGlzLnJlc2l6ZUxpc3RlbmVyKSB7XHJcbiAgICAgIHRoaXMucmVzaXplTGlzdGVuZXIoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBmcmVlemVDb2x1bW5zKCkge1xyXG4gICAgY29uc3QgZnJlZXplQ29sdW1ucyA9IHRoaXMuX2NvbHVtbnMuZmlsdGVyKGNvbHVtbiA9PiBjb2x1bW4uZnJlZXplID09PSB0cnVlKTtcclxuXHJcbiAgICB0aGlzLndpZHBvcmVlemUgPSBmcmVlemVDb2x1bW5zLnJlZHVjZSgocHJldiwgY3VycmVudCkgPT4gcHJldiArIChjdXJyZW50LndpZHRoIHx8IDEwMCksIDApO1xyXG5cclxuICAgIHJldHVybiBmcmVlemVDb2x1bW5zO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGFjdGlvbkNvbHVtbnMoKSB7XHJcbiAgICBjb25zdCBhY3Rpb25zQ29sdW1ucyA9IHRoaXMuX2NvbHVtbnMuZmlsdGVyKGNvbHVtbiA9PiBjb2x1bW4uYWN0aW9uID09PSB0cnVlKTtcclxuXHJcbiAgICB0aGlzLndpZHRoQWN0aW9ucyA9IGFjdGlvbnNDb2x1bW5zLmxlbmd0aCA+IDAgPyA1NiA6IDA7XHJcblxyXG4gICAgcmV0dXJuIGFjdGlvbnNDb2x1bW5zO1xyXG4gIH1cclxuXHJcbiAgY2FuY2VsUm93KGV2ZW50OiBhbnksIHJvdzogYW55KSB7XHJcbiAgICBjb25zdCBlbCA9IHRoaXMuZ2V0RXZlbnRQYXRoKGV2ZW50KS5maW5kKGVsZW1lbnQgPT4gZWxlbWVudC5pZCk7XHJcblxyXG4gICAgaWYgKCFlbCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgW3hdID0gZWwuaWQuc3BsaXQoJy0nKTtcclxuXHJcbiAgICBpZiAodGhpcy5pc0VtcHR5Um93KHgpKSB7XHJcbiAgICAgIGlmICghdGhpcy5yZW1vdmVSb3coZXZlbnQsIHJvdykpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuY3VycmVuY3lPYmogPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLmRhdGFbdGhpcy5jdXJyZW5jeVJvdyAtIDFdKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZGF0YVsreCAtIDFdID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5jdXJyZW5jeU9iaik7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5zZWxlY3RDZWxsKHRoaXMuY3VycmVuY3lSb3csIHRoaXMuY3VycmVuY3lDb2x1bW4pKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlbW92ZVJvdyhldmVudDogYW55LCByb3c6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKHRoaXMucm93QWN0aW9ucy5iZWZvcmVSZW1vdmUgJiYgIXRoaXMucm93QWN0aW9ucy5iZWZvcmVSZW1vdmUoT2JqZWN0LmFzc2lnbih7fSwgcm93KSkpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5kYXRhLmluZGV4T2Yocm93KTtcclxuXHJcbiAgICB0aGlzLmRhdGEuc3BsaWNlKGluZGV4LCAxKTtcclxuXHJcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcclxuXHJcbiAgICBpZiAodGhpcy5kYXRhLmxlbmd0aCA9PT0gMCB8fCBpbmRleCA9PT0gdGhpcy5kYXRhLmxlbmd0aCkge1xyXG4gICAgICB0aGlzLnNlbGVjdENlbGwodGhpcy5jdXJyZW5jeVJvdyAtIDEsIHRoaXMuY3VycmVuY3lDb2x1bW4pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZWxlY3RDZWxsKHRoaXMuY3VycmVuY3lSb3csIHRoaXMuY3VycmVuY3lDb2x1bW4pO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgdGFibGVLZXlkb3duKGV2ZW50OiBhbnksIGRpcmVjdGlvbjogc3RyaW5nKSB7XHJcbiAgICBsZXQgW3JvdywgY29sXSA9IGV2ZW50LnRhcmdldC5pZC5zcGxpdCgnLScpO1xyXG4gICAgcm93ID0gK3JvdztcclxuICAgIGNvbCA9ICtjb2w7XHJcbiAgICBsZXQgcHJvdyA9ICtyb3c7XHJcbiAgICBsZXQgcGNvbCA9ICtjb2w7XHJcblxyXG4gICAgaWYgKGRpcmVjdGlvbiA9PT0gJ2Rvd24nKSB7XHJcbiAgICAgIGlmIChyb3cgPD0gdGhpcy5kYXRhLmxlbmd0aCkge1xyXG4gICAgICAgIHByb3crKztcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHJvdyA9PT0gdGhpcy5kYXRhLmxlbmd0aCkge1xyXG4gICAgICAgIGlmIChyb3cgPT09IDAgfHwgIXRoaXMuaXNFbXB0eVJvdyhyb3cpKSB7XHJcbiAgICAgICAgICBpZiAodGhpcy5zYXZlUm93KHJvdykpIHtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLmluc2VydFJvdygpKSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHByb3ctLTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAoZGlyZWN0aW9uID09PSAndXAnICYmIHJvdyA+IDApIHtcclxuICAgICAgcHJvdy0tO1xyXG4gICAgfSBlbHNlIGlmIChkaXJlY3Rpb24gPT09ICdsZWZ0JyAmJiBjb2wgPiAwKSB7XHJcbiAgICAgIHBjb2wtLTtcclxuICAgIH0gZWxzZSBpZiAoZGlyZWN0aW9uID09PSAncmlnaHQnICYmIGNvbCA8IHRoaXMuX2NvbHVtbnMubGVuZ3RoIC0gMSkge1xyXG4gICAgICBwY29sKys7XHJcbiAgICB9IGVsc2UgaWYgKGRpcmVjdGlvbiA9PT0gJ25leHQnKSB7XHJcbiAgICAgIGlmIChjb2wgPCB0aGlzLl9jb2x1bW5zLmxlbmd0aCAtIDEpIHtcclxuICAgICAgICBwY29sKys7XHJcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgfSBlbHNlIGlmIChyb3cgPCB0aGlzLmRhdGEubGVuZ3RoKSB7XHJcbiAgICAgICAgcGNvbCA9IDA7XHJcbiAgICAgICAgcHJvdysrO1xyXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAoZGlyZWN0aW9uID09PSAncHJpb3InKSB7XHJcbiAgICAgIGlmIChjb2wgPiAwKSB7XHJcbiAgICAgICAgcGNvbC0tO1xyXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgIH0gZWxzZSBpZiAocm93ID4gMCkge1xyXG4gICAgICAgIHBjb2wgPSB0aGlzLl9jb2x1bW5zLmxlbmd0aCAtIDE7XHJcbiAgICAgICAgcHJvdy0tO1xyXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5jdXJyZW5jeUNlbGwgPT09IGAke3Byb3d9LSR7cGNvbH1gKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAocHJvdyAhPT0gdGhpcy5jdXJyZW5jeVJvdyAmJiByb3cgPiAwICYmIHRoaXMuZGF0YS5sZW5ndGggPj0gcm93KSB7XHJcbiAgICAgIGlmICghdGhpcy5pc0VtcHR5Um93KHJvdykpIHtcclxuICAgICAgICBpZiAoIXRoaXMuc2F2ZVJvdyhyb3cpKSB7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICghdGhpcy5yZW1vdmVSb3coZXZlbnQsIHJvdykpIHtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5jdXJyZW5jeVJvdyAhPT0gcHJvdykge1xyXG4gICAgICB0aGlzLmN1cnJlbmN5T2JqID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5kYXRhW3Byb3cgLSAxXSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5sYXN0Q2VsbCA9IGV2ZW50LnRhcmdldC5pZDtcclxuICAgIHRoaXMubGFzdFJvdyA9IHJvdztcclxuICAgIHRoaXMubGFzdENvbHVtbiA9IGNvbDtcclxuXHJcbiAgICB0aGlzLnNlbGVjdENlbGwocHJvdywgcGNvbCk7XHJcbiAgfVxyXG5cclxuICB0YWJsZUNsaWNrKGV2ZW50OiBhbnkpIHtcclxuICAgIGNvbnN0IGVsID0gdGhpcy5nZXRFdmVudFBhdGgoZXZlbnQpLmZpbmQoZWxlbWVudCA9PiBlbGVtZW50LmlkKTtcclxuXHJcbiAgICBpZiAoIWVsKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0Q2VsbCh0aGlzLmN1cnJlbmN5Um93LCB0aGlzLmN1cnJlbmN5Q29sdW1uKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmN1cnJlbmN5Q2VsbCA9PT0gZWwuaWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IFtyb3csIGNvbF0gPSBlbC5pZC5zcGxpdCgnLScpO1xyXG4gICAgY29uc3QgcHJvdyA9ICtyb3c7XHJcbiAgICBjb25zdCBwY29sID0gK2NvbDtcclxuXHJcbiAgICBpZiAocHJvdyAhPT0gdGhpcy5jdXJyZW5jeVJvdykge1xyXG4gICAgICBpZiAodGhpcy5jdXJyZW5jeVJvdyA+IDApIHtcclxuICAgICAgICBpZiAoIXRoaXMuaXNFbXB0eVJvdyh0aGlzLmN1cnJlbmN5Um93KSkge1xyXG4gICAgICAgICAgaWYgKCF0aGlzLnNhdmVSb3codGhpcy5jdXJyZW5jeVJvdykpIHtcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RDZWxsKHRoaXMuY3VycmVuY3lSb3csIHRoaXMuY3VycmVuY3lDb2x1bW4pO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmICghdGhpcy5yZW1vdmVSb3coZXZlbnQsIHJvdykpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5jdXJyZW5jeU9iaiA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuZGF0YVtwcm93IC0gMV0pO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMubGFzdENlbGwgPSB0aGlzLmN1cnJlbmN5Q2VsbDtcclxuICAgIHRoaXMubGFzdFJvdyA9IHRoaXMuY3VycmVuY3lSb3c7XHJcbiAgICB0aGlzLmxhc3RDb2x1bW4gPSB0aGlzLmN1cnJlbmN5Q29sdW1uO1xyXG5cclxuICAgIHRoaXMuY3VycmVuY3lDZWxsID0gZWwuaWQ7XHJcbiAgICB0aGlzLmN1cnJlbmN5Um93ID0gcHJvdztcclxuICAgIHRoaXMuY3VycmVuY3lDb2x1bW4gPSBwY29sO1xyXG4gIH1cclxuXHJcbiAgc2F2ZVJvdyhyb3c6IG51bWJlcik6IGJvb2xlYW4ge1xyXG4gICAgY29uc3Qgb2JqID0gdGhpcy5kYXRhW3JvdyAtIDFdO1xyXG5cclxuICAgIGlmICghT2JqZWN0LmtleXMob2JqKS5zb21lKHByb3AgPT4gb2JqW3Byb3BdICE9PSB0aGlzLmN1cnJlbmN5T2JqW3Byb3BdKSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5yb3dBY3Rpb25zLmJlZm9yZVNhdmUgJiYgIXRoaXMucm93QWN0aW9ucy5iZWZvcmVTYXZlKG9iaiwgdGhpcy5jdXJyZW5jeU9iaikpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHJlcXVpcmVkcyA9IFtdO1xyXG5cclxuICAgIHRoaXMuY29sdW1ucy5mb3JFYWNoKGNvbHVtbiA9PiB7XHJcbiAgICAgIGlmIChjb2x1bW4ucmVxdWlyZWQgPT09IHRydWUgJiYgIW9ialtjb2x1bW4ucHJvcGVydHldKSB7XHJcbiAgICAgICAgcmVxdWlyZWRzLnB1c2goY29sdW1uLnByb3BlcnR5KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIHJlcXVpcmVkcy5sZW5ndGggPT09IDA7XHJcbiAgfVxyXG5cclxuICBpbnNlcnRSb3coKSB7XHJcbiAgICBjb25zdCBvYmogPSB7fTtcclxuXHJcbiAgICBpZiAodGhpcy5yb3dBY3Rpb25zLmJlZm9yZUluc2VydCAmJiAhdGhpcy5yb3dBY3Rpb25zLmJlZm9yZUluc2VydChvYmopKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRhdGEucHVzaChvYmopO1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcblxyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBpc0VtcHR5Um93KHJvdzogbnVtYmVyKSB7XHJcbiAgICBjb25zdCBvYmogPSB0aGlzLmRhdGFbcm93IC0gMV07XHJcblxyXG4gICAgaWYgKCFvYmopIHtcclxuICAgICAgLy8gdGl0bGVcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGZpbGxlZCA9IE9iamVjdC5rZXlzKG9iaikuc29tZShwcm9wZXJ0eSA9PiBvYmpbcHJvcGVydHldKTtcclxuXHJcbiAgICByZXR1cm4gIWZpbGxlZDtcclxuICB9XHJcblxyXG4gIHNlbGVjdENlbGwocm93OiBudW1iZXIsIGNvbDogbnVtYmVyKSB7XHJcbiAgICBjb25zdCBuZXh0Q2VsbCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKGBbaWQ9JyR7cm93fS0ke2NvbH0nXWApO1xyXG5cclxuICAgIGlmIChuZXh0Q2VsbCkge1xyXG4gICAgICB0aGlzLmN1cnJlbmN5Q2VsbCA9IGAke3Jvd30tJHtjb2x9YDtcclxuICAgICAgdGhpcy5jdXJyZW5jeVJvdyA9IHJvdztcclxuICAgICAgdGhpcy5jdXJyZW5jeUNvbHVtbiA9IGNvbDtcclxuICAgICAgbmV4dENlbGwuZm9jdXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZGVib3VuY2VSZXNpemUoKSB7XHJcbiAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0UmVzaXplKTtcclxuXHJcbiAgICB0aGlzLnRpbWVvdXRSZXNpemUgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3Qgd2lkdGhUYWJsZVdyYXBwZXIgPSB0aGlzLnRhYmxlV3JhcHBlci5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xyXG4gICAgICB0aGlzLndpZHRoID0gYCR7d2lkdGhUYWJsZVdyYXBwZXIgLSAodGhpcy53aWRwb3JlZXplICsgOCkgLSB0aGlzLndpZHRoQWN0aW9uc31weGA7XHJcbiAgICB9LCAxMDApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRFdmVudFBhdGgoZXZlbnQpIHtcclxuICAgIC8vIGZpcmVmb3ggZG8gbm90IGhhdmUgc3VwcG9ydCB0byBldmVudC5wYXRoXHJcbiAgICByZXR1cm4gZXZlbnQucGF0aCB8fCBldmVudC5jb21wb3NlZFBhdGgoKTtcclxuICB9XHJcbn1cclxuIl19