mapa-library-ui 0.77.5 → 0.90.1

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 (1070) hide show
  1. package/esm2020/lib/core/components/form-errors/form-errors.component.mjs +25 -0
  2. package/esm2020/lib/core/directives/custom-paginator-legacy.directive.mjs +39 -62
  3. package/esm2020/lib/core/directives/mat-input-autosize.directive.mjs +11 -8
  4. package/esm2020/lib/core/elements/errors.mjs +1 -1
  5. package/esm2020/lib/core/i18n/mapa-ui-texts.mjs +100 -0
  6. package/esm2020/lib/core/interfaces/classification.interface.mjs +2 -0
  7. package/esm2020/lib/core/interfaces/table-column.interface.mjs +2 -0
  8. package/esm2020/lib/core/pipes/safe-html.pipe.mjs +21 -0
  9. package/esm2020/lib/core/services/html-sanitizer.service.mjs +23 -0
  10. package/esm2020/lib/core/services/mapa-i18n.service.mjs +36 -0
  11. package/esm2020/lib/core/services/validation-message-resolver.service.mjs +72 -0
  12. package/esm2020/public-api.mjs +10 -1
  13. package/esm2020/src/lib/components/benchmarking/lib/components/benchmarking/src/benchmark-chart.component.mjs +2 -2
  14. package/esm2020/src/lib/components/benchmarking/lib/components/benchmarking/src/benchmark-indicator/benchmark-indicator.component.mjs +2 -2
  15. package/esm2020/src/lib/components/breadcrumb/lib/components/breadcrumb/src/breadcrumb.component.mjs +3 -3
  16. package/esm2020/src/lib/components/button/button.mjs +5 -0
  17. package/esm2020/src/lib/components/{chart → button}/lib/components/button/src/button.component.mjs +2 -2
  18. package/esm2020/src/lib/components/button/mapa-library-ui-src-lib-components-button.mjs +2 -2
  19. package/esm2020/src/lib/components/button-icon/lib/components/button-icon/src/button-icon.component.mjs +11 -3
  20. package/esm2020/src/lib/components/capability/lib/components/button/src/button.component.mjs +2 -2
  21. package/esm2020/src/lib/components/capability/lib/components/capability/public-api.mjs +3 -1
  22. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-comparative/capability-comparative.module.mjs +2 -2
  23. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.component.mjs +2 -2
  24. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-comparative-header/capability-comparative-header.component.mjs +27 -6
  25. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.component.mjs +2 -2
  26. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-detail/capability-detail.component.mjs +18 -4
  27. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-detail/capability-detail.module.mjs +1 -1
  28. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-dot/capability-dot.component.mjs +4 -4
  29. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-dot/capability-dot.module.mjs +9 -11
  30. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-expand/capability-expand.component.mjs +35 -9
  31. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-expand/capability-expand.module.mjs +4 -3
  32. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-indicator/capability-indicator.component.mjs +2 -2
  33. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.component.mjs +2 -2
  34. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-indicator-list/capability-indicator-list.component.mjs +44 -8
  35. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-interval/capability-interval.component.mjs +2 -2
  36. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-interval-bar/capability-interval-bar.component.mjs +2 -5
  37. package/esm2020/src/lib/components/capability/lib/components/capability/src/essentials/services/reusable-interval-bar.service.mjs +11 -3
  38. package/esm2020/src/lib/components/capability/lib/components/dropdown/src/dropdown.component.mjs +74 -99
  39. package/esm2020/src/lib/components/capability/lib/components/dropdown/src/dropdown.module.mjs +12 -5
  40. package/esm2020/src/lib/components/capability/lib/components/filters/src/filters.component.mjs +30 -11
  41. package/esm2020/src/lib/components/capability/lib/components/filters/src/filters.module.mjs +1 -1
  42. package/esm2020/src/lib/components/capability/lib/components/tag/src/tag.component.mjs +2 -2
  43. package/esm2020/src/lib/components/capability/lib/core/components/form-errors/form-errors.component.mjs +25 -0
  44. package/esm2020/src/lib/components/capability/lib/core/elements/errors.mjs +1 -1
  45. package/esm2020/src/lib/components/capability/lib/core/i18n/mapa-ui-texts.mjs +100 -0
  46. package/esm2020/src/lib/components/capability/lib/core/pipes/safe-html.pipe.mjs +21 -0
  47. package/esm2020/src/lib/components/capability/lib/core/services/html-sanitizer.service.mjs +23 -0
  48. package/esm2020/src/lib/components/capability/lib/core/services/mapa-i18n.service.mjs +36 -0
  49. package/esm2020/src/lib/components/capability/lib/core/services/validation-message-resolver.service.mjs +72 -0
  50. package/esm2020/src/lib/components/chart/lib/components/chart/src/chart.component.mjs +11 -6
  51. package/esm2020/src/lib/components/chart/lib/components/chart/src/chart.module.mjs +2 -2
  52. package/esm2020/src/lib/components/checkbox/checkbox.mjs +5 -0
  53. package/esm2020/src/lib/components/{table/lib/components/svg-icon → checkbox/lib/components/checkbox}/public-api.mjs +4 -4
  54. package/esm2020/src/lib/components/checkbox/{src → lib/components/checkbox/src}/checkbox.component.mjs +1 -1
  55. package/esm2020/src/lib/components/checkbox/{src → lib/components/checkbox/src}/checkbox.module.mjs +1 -1
  56. package/esm2020/src/lib/components/checkbox/mapa-library-ui-src-lib-components-checkbox.mjs +2 -2
  57. package/esm2020/src/lib/components/datepicker/datepicker.mjs +5 -0
  58. package/esm2020/src/lib/components/datepicker/lib/components/datepicker/public-api.mjs +6 -0
  59. package/esm2020/src/lib/components/datepicker/lib/components/datepicker/src/datepicker.component.mjs +65 -0
  60. package/esm2020/src/lib/components/datepicker/lib/components/datepicker/src/datepicker.module.mjs +70 -0
  61. package/esm2020/src/lib/components/datepicker/lib/core/i18n/mapa-ui-texts.mjs +100 -0
  62. package/esm2020/src/lib/components/datepicker/lib/core/services/mapa-i18n.service.mjs +36 -0
  63. package/esm2020/src/lib/components/datepicker/mapa-library-ui-src-lib-components-datepicker.mjs +2 -2
  64. package/esm2020/src/lib/components/dialog/lib/components/button/src/button.component.mjs +2 -2
  65. package/esm2020/src/lib/components/dialog/lib/components/dialog/src/dialog.component.mjs +6 -4
  66. package/esm2020/src/lib/components/dialog/lib/components/dialog/src/dialog.module.mjs +6 -3
  67. package/esm2020/src/lib/components/dialog/lib/core/pipes/safe-html.pipe.mjs +21 -0
  68. package/esm2020/src/lib/components/dialog/lib/core/services/html-sanitizer.service.mjs +23 -0
  69. package/esm2020/src/lib/components/dropdown/dropdown.mjs +1 -2
  70. package/esm2020/src/lib/components/dropdown/lib/components/dropdown/src/dropdown.component.mjs +74 -99
  71. package/esm2020/src/lib/components/dropdown/lib/components/dropdown/src/dropdown.module.mjs +12 -5
  72. package/esm2020/src/lib/components/dropdown/lib/core/components/form-errors/form-errors.component.mjs +25 -0
  73. package/esm2020/src/lib/components/dropdown/lib/core/elements/errors.mjs +1 -1
  74. package/esm2020/src/lib/components/dropdown/lib/core/i18n/mapa-ui-texts.mjs +100 -0
  75. package/esm2020/src/lib/components/dropdown/lib/core/pipes/safe-html.pipe.mjs +21 -0
  76. package/esm2020/src/lib/components/dropdown/lib/core/services/html-sanitizer.service.mjs +23 -0
  77. package/esm2020/src/lib/components/dropdown/lib/core/services/mapa-i18n.service.mjs +36 -0
  78. package/esm2020/src/lib/components/dropdown/lib/core/services/validation-message-resolver.service.mjs +72 -0
  79. package/esm2020/src/lib/components/dropdown-tree/dropdown-tree.mjs +9 -0
  80. package/esm2020/src/lib/components/dropdown-tree/lib/components/dropdown-tree/src/dropdown.component.mjs +33 -16
  81. package/esm2020/src/lib/components/dropdown-tree/lib/components/dropdown-tree/src/dropdown.module.mjs +9 -41
  82. package/esm2020/src/lib/components/dropdown-tree/lib/core/elements/errors.mjs +1 -1
  83. package/esm2020/src/lib/components/dropdown-tree/mapa-library-ui-src-lib-components-dropdown-tree.mjs +2 -2
  84. package/esm2020/src/lib/components/empty/empty.mjs +5 -0
  85. package/esm2020/src/lib/components/empty/lib/components/empty/public-api.mjs +6 -0
  86. package/esm2020/src/lib/components/empty/{src → lib/components/empty/src}/empty.component.mjs +4 -3
  87. package/esm2020/src/lib/components/empty/lib/components/empty/src/empty.module.mjs +27 -0
  88. package/esm2020/src/lib/components/empty/lib/core/pipes/safe-html.pipe.mjs +21 -0
  89. package/esm2020/src/lib/components/empty/lib/core/services/html-sanitizer.service.mjs +23 -0
  90. package/esm2020/src/lib/components/empty/mapa-library-ui-src-lib-components-empty.mjs +2 -2
  91. package/esm2020/src/lib/components/filters/lib/components/button/src/button.component.mjs +2 -2
  92. package/esm2020/src/lib/components/filters/lib/components/filters/src/filters.component.mjs +30 -11
  93. package/esm2020/src/lib/components/filters/lib/components/filters/src/filters.module.mjs +1 -1
  94. package/esm2020/src/lib/components/filters/lib/core/i18n/mapa-ui-texts.mjs +100 -0
  95. package/esm2020/src/lib/components/filters/lib/core/services/mapa-i18n.service.mjs +36 -0
  96. package/esm2020/src/lib/components/form/lib/components/button/src/button.component.mjs +2 -2
  97. package/esm2020/src/lib/components/form/lib/components/form/src/form.component.mjs +6 -5
  98. package/esm2020/src/lib/components/form/lib/components/form/src/form.module.mjs +3 -2
  99. package/esm2020/src/lib/components/form/lib/components/input/src/input.component.mjs +5 -4
  100. package/esm2020/src/lib/components/form/lib/components/input/src/input.module.mjs +13 -13
  101. package/esm2020/src/lib/components/form/lib/components/radio-button/src/radio-button.component.mjs +8 -3
  102. package/esm2020/src/lib/components/form/lib/components/slide-toggle/src/slide-toggle.component.mjs +8 -3
  103. package/esm2020/src/lib/components/form/lib/components/textarea/src/textarea.component.mjs +4 -3
  104. package/esm2020/src/lib/components/form/lib/components/textarea/src/textarea.module.mjs +7 -3
  105. package/esm2020/src/lib/components/form/lib/core/components/form-errors/form-errors.component.mjs +25 -0
  106. package/esm2020/src/lib/components/form/lib/core/directives/mat-input-autosize.directive.mjs +99 -0
  107. package/esm2020/src/lib/components/form/lib/core/elements/errors.mjs +1 -1
  108. package/esm2020/src/lib/components/form/lib/core/i18n/mapa-ui-texts.mjs +100 -0
  109. package/esm2020/src/lib/components/form/lib/core/services/mapa-i18n.service.mjs +36 -0
  110. package/esm2020/src/lib/components/form/lib/core/services/validation-message-resolver.service.mjs +72 -0
  111. package/esm2020/src/lib/components/group-report/lib/components/group-report/src/group-report-interface.mjs +1 -1
  112. package/esm2020/src/lib/components/group-report/lib/components/group-report/src/group-report.component.mjs +7 -6
  113. package/esm2020/src/lib/components/group-report/lib/components/group-report/src/group-report.module.mjs +2 -2
  114. package/esm2020/src/lib/components/icon/icon.mjs +5 -0
  115. package/esm2020/src/lib/components/icon/mapa-library-ui-src-lib-components-icon.mjs +2 -2
  116. package/esm2020/src/lib/components/input/input.mjs +5 -0
  117. package/esm2020/src/lib/components/input/lib/components/input/public-api.mjs +6 -0
  118. package/esm2020/src/lib/components/input/lib/components/input/src/input.component.mjs +40 -0
  119. package/esm2020/src/lib/components/input/lib/components/input/src/input.module.mjs +60 -0
  120. package/esm2020/src/lib/components/input/lib/core/components/form-errors/form-errors.component.mjs +25 -0
  121. package/esm2020/src/lib/components/input/lib/core/directives/mat-input-autosize.directive.mjs +99 -0
  122. package/esm2020/src/lib/components/{group-report → input}/lib/core/elements/errors.mjs +1 -1
  123. package/esm2020/src/lib/components/input/lib/core/i18n/mapa-ui-texts.mjs +100 -0
  124. package/esm2020/src/lib/components/input/lib/core/services/mapa-i18n.service.mjs +36 -0
  125. package/esm2020/src/lib/components/input/lib/core/services/validation-message-resolver.service.mjs +72 -0
  126. package/esm2020/src/lib/components/input/mapa-library-ui-src-lib-components-input.mjs +2 -2
  127. package/esm2020/src/lib/components/{table → menu}/lib/components/menu/src/menu.module.mjs +1 -1
  128. package/esm2020/src/lib/components/menu/mapa-library-ui-src-lib-components-menu.mjs +2 -2
  129. package/esm2020/src/lib/components/menu/menu.mjs +5 -0
  130. package/esm2020/src/lib/components/nav-list/lib/components/nav-list/src/nav-list.component.mjs +3 -3
  131. package/esm2020/src/lib/components/radio-button/lib/components/radio-button/src/radio-button.component.mjs +8 -3
  132. package/esm2020/src/lib/components/report-item/lib/components/report-item/public-api.mjs +6 -0
  133. package/esm2020/src/lib/components/report-item/lib/components/report-item/src/report-item.component.mjs +63 -0
  134. package/esm2020/src/lib/components/report-item/{src → lib/components/report-item/src}/report-item.module.mjs +1 -1
  135. package/esm2020/src/lib/components/report-item/mapa-library-ui-src-lib-components-report-item.mjs +2 -2
  136. package/esm2020/src/lib/components/report-item/report-item.mjs +5 -0
  137. package/esm2020/src/lib/components/scale/lib/components/button/src/button.component.mjs +2 -2
  138. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-interval/capability-interval.component.mjs +2 -2
  139. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-interval-bar/capability-interval-bar.component.mjs +2 -5
  140. package/esm2020/src/lib/components/scale/lib/components/filters/src/filters.component.mjs +30 -11
  141. package/esm2020/src/lib/components/scale/lib/components/filters/src/filters.module.mjs +1 -1
  142. package/esm2020/src/lib/components/scale/lib/components/group-report/src/group-report-interface.mjs +1 -1
  143. package/esm2020/src/lib/components/scale/lib/components/scale/src/details/details.component.mjs +3 -3
  144. package/esm2020/src/lib/components/scale/lib/components/scale/src/scale.component.mjs +25 -9
  145. package/esm2020/src/lib/components/scale/lib/components/scale/src/scale.interface.mjs +1 -1
  146. package/esm2020/src/lib/components/scale/lib/core/i18n/mapa-ui-texts.mjs +100 -0
  147. package/esm2020/src/lib/components/scale/lib/core/services/mapa-i18n.service.mjs +36 -0
  148. package/esm2020/src/lib/components/scale-parameterization/lib/components/group-report/src/group-report-interface.mjs +1 -1
  149. package/esm2020/src/lib/components/scale-parameterization/lib/components/scale-parameterization/src/details/details.component.mjs +3 -3
  150. package/esm2020/src/lib/components/scale-parameterization/lib/components/scale-parameterization/src/scale-parameterization.component.mjs +24 -9
  151. package/esm2020/src/lib/components/scale-parameterization/lib/components/scale-parameterization/src/scale-parameterization.interface.mjs +1 -1
  152. package/esm2020/src/lib/components/scale-parameterization/lib/components/scale-parameterization/src/scale-parameterization.module.mjs +6 -6
  153. package/esm2020/src/lib/components/scale-parameterization/lib/core/i18n/mapa-ui-texts.mjs +100 -0
  154. package/esm2020/src/lib/components/scale-parameterization/lib/core/services/mapa-i18n.service.mjs +36 -0
  155. package/esm2020/src/lib/components/slide-toggle/lib/components/slide-toggle/src/slide-toggle.component.mjs +8 -3
  156. package/esm2020/src/lib/components/svg-icon/lib/components/svg-icon/src/svg-icon.component.mjs +30 -18
  157. package/esm2020/src/lib/components/svg-icon/lib/components/svg-icon/src/svg-icon.module.mjs +5 -5
  158. package/esm2020/src/lib/components/svg-icon/lib/core/pipes/safe-html.pipe.mjs +21 -0
  159. package/esm2020/src/lib/components/svg-icon/lib/core/services/html-sanitizer.service.mjs +23 -0
  160. package/esm2020/src/lib/components/table/lib/components/table/src/paginator_customization.mjs +11 -16
  161. package/esm2020/src/lib/components/table/lib/components/table/src/table.component.mjs +74 -33
  162. package/esm2020/src/lib/components/table/lib/components/table/src/table.module.mjs +13 -9
  163. package/esm2020/src/lib/components/table/lib/core/directives/custom-paginator-legacy.directive.mjs +39 -62
  164. package/esm2020/src/lib/components/table/lib/core/i18n/mapa-ui-texts.mjs +100 -0
  165. package/esm2020/src/lib/components/table/lib/core/js-brasil/index.mjs +16 -0
  166. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/create.mjs +455 -0
  167. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/createNumberMask.mjs +115 -0
  168. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/estados.mjs +34 -0
  169. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/index.mjs +34 -0
  170. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/inscricaoestadual.mjs +702 -0
  171. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/interfaces.mjs +2 -0
  172. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/iptu.mjs +25 -0
  173. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/iptu_create.mjs +60 -0
  174. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/iptu_mask.mjs +38 -0
  175. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/iptu_validate.mjs +67 -0
  176. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/mask.mjs +579 -0
  177. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/name.mjs +371 -0
  178. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/placa.mjs +162 -0
  179. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/rg.mjs +63 -0
  180. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/saude.mjs +62 -0
  181. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/utils.mjs +304 -0
  182. package/esm2020/src/lib/components/table/lib/core/js-brasil/src/validate.mjs +627 -0
  183. package/esm2020/src/lib/components/table/lib/core/pipes/cpf.mjs +17 -0
  184. package/esm2020/src/lib/components/table/lib/core/pipes/safe-html.pipe.mjs +21 -0
  185. package/esm2020/src/lib/components/table/lib/core/services/html-sanitizer.service.mjs +23 -0
  186. package/esm2020/src/lib/components/table/lib/core/services/mapa-i18n.service.mjs +36 -0
  187. package/esm2020/src/lib/components/{scale-parameterization → tag}/lib/components/tag/src/tag.component.mjs +2 -2
  188. package/esm2020/src/lib/components/tag/mapa-library-ui-src-lib-components-tag.mjs +2 -2
  189. package/esm2020/src/lib/components/tag/tag.mjs +5 -0
  190. package/esm2020/src/lib/components/textarea/lib/components/textarea/src/textarea.component.mjs +4 -3
  191. package/esm2020/src/lib/components/textarea/lib/components/textarea/src/textarea.module.mjs +7 -3
  192. package/esm2020/src/lib/components/textarea/lib/core/components/form-errors/form-errors.component.mjs +25 -0
  193. package/esm2020/src/lib/components/textarea/lib/core/elements/errors.mjs +1 -1
  194. package/esm2020/src/lib/components/textarea/lib/core/i18n/mapa-ui-texts.mjs +100 -0
  195. package/esm2020/src/lib/components/textarea/lib/core/services/mapa-i18n.service.mjs +36 -0
  196. package/esm2020/src/lib/components/textarea/lib/core/services/validation-message-resolver.service.mjs +72 -0
  197. package/esm2020/src/lib/components/tooltip/lib/components/tooltip/public-api.mjs +7 -0
  198. package/esm2020/src/lib/components/tooltip/mapa-library-ui-src-lib-components-tooltip.mjs +2 -2
  199. package/esm2020/src/lib/components/tooltip/tooltip.mjs +6 -0
  200. package/esm2020/src/lib/components/{group-report/lib/components/filters → warning/lib/components/warning}/public-api.mjs +4 -4
  201. package/esm2020/src/lib/components/warning/lib/components/warning/src/warning.component.mjs +43 -0
  202. package/esm2020/src/lib/components/warning/{src → lib/components/warning/src}/warning.module.mjs +1 -1
  203. package/esm2020/src/lib/components/warning/mapa-library-ui-src-lib-components-warning.mjs +2 -2
  204. package/esm2020/src/lib/components/warning/warning.mjs +5 -0
  205. package/fesm2015/mapa-library-ui-src-lib-components-benchmarking.mjs +4 -4
  206. package/fesm2015/mapa-library-ui-src-lib-components-benchmarking.mjs.map +1 -1
  207. package/fesm2015/mapa-library-ui-src-lib-components-breadcrumb.mjs +2 -2
  208. package/fesm2015/mapa-library-ui-src-lib-components-breadcrumb.mjs.map +1 -1
  209. package/fesm2015/mapa-library-ui-src-lib-components-button-icon.mjs +10 -2
  210. package/fesm2015/mapa-library-ui-src-lib-components-button-icon.mjs.map +1 -1
  211. package/fesm2015/mapa-library-ui-src-lib-components-button.mjs +6 -2
  212. package/fesm2015/mapa-library-ui-src-lib-components-button.mjs.map +1 -1
  213. package/fesm2015/mapa-library-ui-src-lib-components-capability.mjs +630 -307
  214. package/fesm2015/mapa-library-ui-src-lib-components-capability.mjs.map +1 -1
  215. package/fesm2015/mapa-library-ui-src-lib-components-chart.mjs +13 -313
  216. package/fesm2015/mapa-library-ui-src-lib-components-chart.mjs.map +1 -1
  217. package/fesm2015/mapa-library-ui-src-lib-components-checkbox.mjs +4 -0
  218. package/fesm2015/mapa-library-ui-src-lib-components-checkbox.mjs.map +1 -1
  219. package/fesm2015/mapa-library-ui-src-lib-components-datepicker.mjs +154 -14
  220. package/fesm2015/mapa-library-ui-src-lib-components-datepicker.mjs.map +1 -1
  221. package/fesm2015/mapa-library-ui-src-lib-components-dialog.mjs +50 -8
  222. package/fesm2015/mapa-library-ui-src-lib-components-dialog.mjs.map +1 -1
  223. package/fesm2015/mapa-library-ui-src-lib-components-dropdown-tree.mjs +40 -349
  224. package/fesm2015/mapa-library-ui-src-lib-components-dropdown-tree.mjs.map +1 -1
  225. package/fesm2015/mapa-library-ui-src-lib-components-dropdown.mjs +321 -255
  226. package/fesm2015/mapa-library-ui-src-lib-components-dropdown.mjs.map +1 -1
  227. package/fesm2015/mapa-library-ui-src-lib-components-empty.mjs +52 -6
  228. package/fesm2015/mapa-library-ui-src-lib-components-empty.mjs.map +1 -1
  229. package/fesm2015/mapa-library-ui-src-lib-components-filters.mjs +148 -14
  230. package/fesm2015/mapa-library-ui-src-lib-components-filters.mjs.map +1 -1
  231. package/fesm2015/mapa-library-ui-src-lib-components-form.mjs +347 -30
  232. package/fesm2015/mapa-library-ui-src-lib-components-form.mjs.map +1 -1
  233. package/fesm2015/mapa-library-ui-src-lib-components-group-report.mjs +7 -40
  234. package/fesm2015/mapa-library-ui-src-lib-components-group-report.mjs.map +1 -1
  235. package/fesm2015/mapa-library-ui-src-lib-components-icon.mjs +4 -0
  236. package/fesm2015/mapa-library-ui-src-lib-components-icon.mjs.map +1 -1
  237. package/fesm2015/mapa-library-ui-src-lib-components-input.mjs +319 -15
  238. package/fesm2015/mapa-library-ui-src-lib-components-input.mjs.map +1 -1
  239. package/fesm2015/mapa-library-ui-src-lib-components-menu.mjs +4 -0
  240. package/fesm2015/mapa-library-ui-src-lib-components-menu.mjs.map +1 -1
  241. package/fesm2015/mapa-library-ui-src-lib-components-nav-list.mjs +2 -2
  242. package/fesm2015/mapa-library-ui-src-lib-components-nav-list.mjs.map +1 -1
  243. package/fesm2015/mapa-library-ui-src-lib-components-radio-button.mjs +8 -2
  244. package/fesm2015/mapa-library-ui-src-lib-components-radio-button.mjs.map +1 -1
  245. package/fesm2015/mapa-library-ui-src-lib-components-report-item.mjs +48 -12
  246. package/fesm2015/mapa-library-ui-src-lib-components-report-item.mjs.map +1 -1
  247. package/fesm2015/mapa-library-ui-src-lib-components-scale-parameterization.mjs +134 -1305
  248. package/fesm2015/mapa-library-ui-src-lib-components-scale-parameterization.mjs.map +1 -1
  249. package/fesm2015/mapa-library-ui-src-lib-components-scale.mjs +176 -32
  250. package/fesm2015/mapa-library-ui-src-lib-components-scale.mjs.map +1 -1
  251. package/fesm2015/mapa-library-ui-src-lib-components-slide-toggle.mjs +8 -2
  252. package/fesm2015/mapa-library-ui-src-lib-components-slide-toggle.mjs.map +1 -1
  253. package/fesm2015/mapa-library-ui-src-lib-components-svg-icon.mjs +61 -27
  254. package/fesm2015/mapa-library-ui-src-lib-components-svg-icon.mjs.map +1 -1
  255. package/fesm2015/mapa-library-ui-src-lib-components-table.mjs +3935 -234
  256. package/fesm2015/mapa-library-ui-src-lib-components-table.mjs.map +1 -1
  257. package/fesm2015/mapa-library-ui-src-lib-components-tag.mjs +6 -2
  258. package/fesm2015/mapa-library-ui-src-lib-components-tag.mjs.map +1 -1
  259. package/fesm2015/mapa-library-ui-src-lib-components-textarea.mjs +216 -7
  260. package/fesm2015/mapa-library-ui-src-lib-components-textarea.mjs.map +1 -1
  261. package/fesm2015/mapa-library-ui-src-lib-components-tooltip.mjs +4 -0
  262. package/fesm2015/mapa-library-ui-src-lib-components-tooltip.mjs.map +1 -1
  263. package/fesm2015/mapa-library-ui-src-lib-components-warning.mjs +12 -2
  264. package/fesm2015/mapa-library-ui-src-lib-components-warning.mjs.map +1 -1
  265. package/fesm2015/mapa-library-ui.mjs +296 -70
  266. package/fesm2015/mapa-library-ui.mjs.map +1 -1
  267. package/fesm2020/mapa-library-ui-src-lib-components-benchmarking.mjs +4 -4
  268. package/fesm2020/mapa-library-ui-src-lib-components-benchmarking.mjs.map +1 -1
  269. package/fesm2020/mapa-library-ui-src-lib-components-breadcrumb.mjs +2 -2
  270. package/fesm2020/mapa-library-ui-src-lib-components-breadcrumb.mjs.map +1 -1
  271. package/fesm2020/mapa-library-ui-src-lib-components-button-icon.mjs +10 -2
  272. package/fesm2020/mapa-library-ui-src-lib-components-button-icon.mjs.map +1 -1
  273. package/fesm2020/mapa-library-ui-src-lib-components-button.mjs +6 -2
  274. package/fesm2020/mapa-library-ui-src-lib-components-button.mjs.map +1 -1
  275. package/fesm2020/mapa-library-ui-src-lib-components-capability.mjs +640 -303
  276. package/fesm2020/mapa-library-ui-src-lib-components-capability.mjs.map +1 -1
  277. package/fesm2020/mapa-library-ui-src-lib-components-chart.mjs +13 -307
  278. package/fesm2020/mapa-library-ui-src-lib-components-chart.mjs.map +1 -1
  279. package/fesm2020/mapa-library-ui-src-lib-components-checkbox.mjs +4 -0
  280. package/fesm2020/mapa-library-ui-src-lib-components-checkbox.mjs.map +1 -1
  281. package/fesm2020/mapa-library-ui-src-lib-components-datepicker.mjs +169 -14
  282. package/fesm2020/mapa-library-ui-src-lib-components-datepicker.mjs.map +1 -1
  283. package/fesm2020/mapa-library-ui-src-lib-components-dialog.mjs +49 -8
  284. package/fesm2020/mapa-library-ui-src-lib-components-dialog.mjs.map +1 -1
  285. package/fesm2020/mapa-library-ui-src-lib-components-dropdown-tree.mjs +41 -344
  286. package/fesm2020/mapa-library-ui-src-lib-components-dropdown-tree.mjs.map +1 -1
  287. package/fesm2020/mapa-library-ui-src-lib-components-dropdown.mjs +332 -254
  288. package/fesm2020/mapa-library-ui-src-lib-components-dropdown.mjs.map +1 -1
  289. package/fesm2020/mapa-library-ui-src-lib-components-empty.mjs +51 -6
  290. package/fesm2020/mapa-library-ui-src-lib-components-empty.mjs.map +1 -1
  291. package/fesm2020/mapa-library-ui-src-lib-components-filters.mjs +163 -14
  292. package/fesm2020/mapa-library-ui-src-lib-components-filters.mjs.map +1 -1
  293. package/fesm2020/mapa-library-ui-src-lib-components-form.mjs +356 -30
  294. package/fesm2020/mapa-library-ui-src-lib-components-form.mjs.map +1 -1
  295. package/fesm2020/mapa-library-ui-src-lib-components-group-report.mjs +7 -40
  296. package/fesm2020/mapa-library-ui-src-lib-components-group-report.mjs.map +1 -1
  297. package/fesm2020/mapa-library-ui-src-lib-components-icon.mjs +4 -0
  298. package/fesm2020/mapa-library-ui-src-lib-components-icon.mjs.map +1 -1
  299. package/fesm2020/mapa-library-ui-src-lib-components-input.mjs +330 -15
  300. package/fesm2020/mapa-library-ui-src-lib-components-input.mjs.map +1 -1
  301. package/fesm2020/mapa-library-ui-src-lib-components-menu.mjs +4 -0
  302. package/fesm2020/mapa-library-ui-src-lib-components-menu.mjs.map +1 -1
  303. package/fesm2020/mapa-library-ui-src-lib-components-nav-list.mjs +2 -2
  304. package/fesm2020/mapa-library-ui-src-lib-components-nav-list.mjs.map +1 -1
  305. package/fesm2020/mapa-library-ui-src-lib-components-radio-button.mjs +7 -2
  306. package/fesm2020/mapa-library-ui-src-lib-components-radio-button.mjs.map +1 -1
  307. package/fesm2020/mapa-library-ui-src-lib-components-report-item.mjs +47 -12
  308. package/fesm2020/mapa-library-ui-src-lib-components-report-item.mjs.map +1 -1
  309. package/fesm2020/mapa-library-ui-src-lib-components-scale-parameterization.mjs +140 -1290
  310. package/fesm2020/mapa-library-ui-src-lib-components-scale-parameterization.mjs.map +1 -1
  311. package/fesm2020/mapa-library-ui-src-lib-components-scale.mjs +191 -32
  312. package/fesm2020/mapa-library-ui-src-lib-components-scale.mjs.map +1 -1
  313. package/fesm2020/mapa-library-ui-src-lib-components-slide-toggle.mjs +7 -2
  314. package/fesm2020/mapa-library-ui-src-lib-components-slide-toggle.mjs.map +1 -1
  315. package/fesm2020/mapa-library-ui-src-lib-components-svg-icon.mjs +60 -27
  316. package/fesm2020/mapa-library-ui-src-lib-components-svg-icon.mjs.map +1 -1
  317. package/fesm2020/mapa-library-ui-src-lib-components-table.mjs +3954 -234
  318. package/fesm2020/mapa-library-ui-src-lib-components-table.mjs.map +1 -1
  319. package/fesm2020/mapa-library-ui-src-lib-components-tag.mjs +6 -2
  320. package/fesm2020/mapa-library-ui-src-lib-components-tag.mjs.map +1 -1
  321. package/fesm2020/mapa-library-ui-src-lib-components-textarea.mjs +230 -7
  322. package/fesm2020/mapa-library-ui-src-lib-components-textarea.mjs.map +1 -1
  323. package/fesm2020/mapa-library-ui-src-lib-components-tooltip.mjs +4 -0
  324. package/fesm2020/mapa-library-ui-src-lib-components-tooltip.mjs.map +1 -1
  325. package/fesm2020/mapa-library-ui-src-lib-components-warning.mjs +12 -2
  326. package/fesm2020/mapa-library-ui-src-lib-components-warning.mjs.map +1 -1
  327. package/fesm2020/mapa-library-ui.mjs +308 -70
  328. package/fesm2020/mapa-library-ui.mjs.map +1 -1
  329. package/lib/core/components/form-errors/form-errors.component.d.ts +13 -0
  330. package/lib/core/directives/custom-paginator-legacy.directive.d.ts +10 -9
  331. package/lib/core/directives/mat-input-autosize.directive.d.ts +1 -2
  332. package/lib/core/elements/errors.d.ts +1 -2
  333. package/lib/core/i18n/mapa-ui-texts.d.ts +102 -0
  334. package/lib/core/pipes/safe-html.pipe.d.ts +10 -0
  335. package/lib/core/services/html-sanitizer.service.d.ts +10 -0
  336. package/lib/core/services/mapa-i18n.service.d.ts +13 -0
  337. package/lib/core/services/validation-message-resolver.service.d.ts +14 -0
  338. package/mapa-library-ui-0.90.1.tgz +0 -0
  339. package/package.json +14 -2
  340. package/public-api.d.ts +9 -0
  341. package/src/lib/components/button/button.d.ts +1 -0
  342. package/src/lib/components/button/index.d.ts +1 -1
  343. package/src/lib/components/button-icon/lib/components/button-icon/src/button-icon.component.d.ts +5 -3
  344. package/src/lib/components/capability/lib/components/capability/public-api.d.ts +2 -0
  345. package/src/lib/components/capability/lib/components/capability/src/capability-comparative/capability-comparative.module.d.ts +1 -1
  346. package/src/lib/components/capability/lib/components/capability/src/capability-comparative-header/capability-comparative-header.component.d.ts +10 -1
  347. package/src/lib/components/capability/lib/components/capability/src/capability-detail/capability-detail.component.d.ts +5 -2
  348. package/src/lib/components/capability/lib/components/capability/src/capability-dot/capability-dot.module.d.ts +3 -3
  349. package/src/lib/components/capability/lib/components/capability/src/capability-expand/capability-expand.component.d.ts +12 -2
  350. package/src/lib/components/capability/lib/components/capability/src/capability-expand/capability-expand.module.d.ts +2 -1
  351. package/src/lib/components/capability/lib/components/capability/src/capability-indicator-list/capability-indicator-list.component.d.ts +15 -3
  352. package/src/lib/components/capability/lib/components/capability/src/capability-interval-bar/capability-interval-bar.component.d.ts +0 -2
  353. package/src/lib/components/capability/lib/components/capability/src/essentials/services/reusable-interval-bar.service.d.ts +4 -3
  354. package/src/lib/components/capability/lib/components/dropdown/src/dropdown.component.d.ts +15 -13
  355. package/src/lib/components/capability/lib/components/dropdown/src/dropdown.module.d.ts +4 -2
  356. package/src/lib/components/capability/lib/components/filters/src/filters.component.d.ts +10 -2
  357. package/src/lib/components/capability/lib/core/components/form-errors/form-errors.component.d.ts +13 -0
  358. package/src/lib/components/capability/lib/core/elements/errors.d.ts +1 -2
  359. package/src/lib/components/capability/lib/core/i18n/mapa-ui-texts.d.ts +102 -0
  360. package/src/lib/components/capability/lib/core/pipes/safe-html.pipe.d.ts +10 -0
  361. package/src/lib/components/capability/lib/core/services/html-sanitizer.service.d.ts +10 -0
  362. package/src/lib/components/capability/lib/core/services/mapa-i18n.service.d.ts +13 -0
  363. package/src/lib/components/capability/lib/core/services/validation-message-resolver.service.d.ts +14 -0
  364. package/src/lib/components/chart/lib/components/chart/src/chart.component.d.ts +4 -3
  365. package/src/lib/components/chart/lib/components/chart/src/chart.module.d.ts +1 -1
  366. package/src/lib/components/checkbox/checkbox.d.ts +1 -0
  367. package/src/lib/components/checkbox/index.d.ts +1 -1
  368. package/src/lib/components/datepicker/datepicker.d.ts +1 -0
  369. package/src/lib/components/datepicker/index.d.ts +1 -1
  370. package/src/lib/components/datepicker/{src → lib/components/datepicker/src}/datepicker.component.d.ts +10 -1
  371. package/src/lib/components/datepicker/lib/core/i18n/mapa-ui-texts.d.ts +102 -0
  372. package/src/lib/components/datepicker/lib/core/services/mapa-i18n.service.d.ts +13 -0
  373. package/src/lib/components/dialog/lib/components/dialog/src/dialog.component.d.ts +3 -3
  374. package/src/lib/components/dialog/lib/components/dialog/src/dialog.module.d.ts +2 -1
  375. package/src/lib/components/dialog/lib/core/pipes/safe-html.pipe.d.ts +10 -0
  376. package/src/lib/components/dialog/lib/core/services/html-sanitizer.service.d.ts +10 -0
  377. package/src/lib/components/dropdown/dropdown.d.ts +0 -1
  378. package/src/lib/components/dropdown/lib/components/dropdown/src/dropdown.component.d.ts +15 -13
  379. package/src/lib/components/dropdown/lib/components/dropdown/src/dropdown.module.d.ts +4 -2
  380. package/src/lib/components/dropdown/lib/core/components/form-errors/form-errors.component.d.ts +13 -0
  381. package/src/lib/components/dropdown/lib/core/elements/errors.d.ts +1 -2
  382. package/src/lib/components/dropdown/lib/core/i18n/mapa-ui-texts.d.ts +102 -0
  383. package/src/lib/components/dropdown/lib/core/pipes/safe-html.pipe.d.ts +10 -0
  384. package/src/lib/components/dropdown/lib/core/services/html-sanitizer.service.d.ts +10 -0
  385. package/src/lib/components/dropdown/lib/core/services/mapa-i18n.service.d.ts +13 -0
  386. package/src/lib/components/dropdown/lib/core/services/validation-message-resolver.service.d.ts +14 -0
  387. package/src/lib/components/dropdown-tree/{dropdown.d.ts → dropdown-tree.d.ts} +1 -1
  388. package/src/lib/components/dropdown-tree/index.d.ts +1 -1
  389. package/src/lib/components/dropdown-tree/lib/components/dropdown-tree/src/dropdown.component.d.ts +7 -7
  390. package/src/lib/components/dropdown-tree/lib/components/dropdown-tree/src/dropdown.module.d.ts +2 -4
  391. package/src/lib/components/dropdown-tree/lib/core/elements/errors.d.ts +1 -2
  392. package/src/lib/components/empty/empty.d.ts +1 -0
  393. package/src/lib/components/empty/index.d.ts +1 -1
  394. package/src/lib/components/empty/{src → lib/components/empty/src}/empty.module.d.ts +2 -1
  395. package/src/lib/components/empty/lib/core/pipes/safe-html.pipe.d.ts +10 -0
  396. package/src/lib/components/empty/lib/core/services/html-sanitizer.service.d.ts +10 -0
  397. package/src/lib/components/filters/lib/components/filters/src/filters.component.d.ts +10 -2
  398. package/src/lib/components/filters/lib/core/i18n/mapa-ui-texts.d.ts +102 -0
  399. package/src/lib/components/filters/lib/core/services/mapa-i18n.service.d.ts +13 -0
  400. package/src/lib/components/form/lib/components/form/src/form.component.d.ts +1 -2
  401. package/src/lib/components/form/lib/components/form/src/form.module.d.ts +5 -4
  402. package/src/lib/components/form/lib/components/input/src/input.component.d.ts +1 -1
  403. package/src/lib/components/form/lib/components/input/src/input.module.d.ts +3 -2
  404. package/src/lib/components/form/lib/components/radio-button/src/radio-button.component.d.ts +4 -4
  405. package/src/lib/components/form/lib/components/slide-toggle/src/slide-toggle.component.d.ts +4 -4
  406. package/src/lib/components/form/lib/components/textarea/src/textarea.component.d.ts +1 -1
  407. package/src/lib/components/form/lib/components/textarea/src/textarea.module.d.ts +2 -1
  408. package/src/lib/components/form/lib/core/components/form-errors/form-errors.component.d.ts +13 -0
  409. package/src/lib/components/form/lib/core/directives/mat-input-autosize.directive.d.ts +25 -0
  410. package/src/lib/components/form/lib/core/elements/errors.d.ts +1 -2
  411. package/src/lib/components/form/lib/core/i18n/mapa-ui-texts.d.ts +102 -0
  412. package/src/lib/components/form/lib/core/services/mapa-i18n.service.d.ts +13 -0
  413. package/src/lib/components/form/lib/core/services/validation-message-resolver.service.d.ts +14 -0
  414. package/src/lib/components/group-report/lib/components/group-report/src/group-report.component.d.ts +3 -3
  415. package/src/lib/components/group-report/lib/components/group-report/src/group-report.module.d.ts +1 -1
  416. package/src/lib/components/icon/icon.d.ts +1 -0
  417. package/src/lib/components/icon/index.d.ts +1 -1
  418. package/src/lib/components/input/index.d.ts +1 -1
  419. package/src/lib/components/input/input.d.ts +1 -0
  420. package/src/lib/components/input/{src → lib/components/input/src}/input.component.d.ts +1 -1
  421. package/src/lib/components/input/{src → lib/components/input/src}/input.module.d.ts +3 -2
  422. package/src/lib/components/input/lib/core/components/form-errors/form-errors.component.d.ts +13 -0
  423. package/src/lib/components/input/lib/core/directives/mat-input-autosize.directive.d.ts +25 -0
  424. package/src/lib/components/{chart → input}/lib/core/elements/errors.d.ts +1 -2
  425. package/src/lib/components/input/lib/core/i18n/mapa-ui-texts.d.ts +102 -0
  426. package/src/lib/components/input/lib/core/services/mapa-i18n.service.d.ts +13 -0
  427. package/src/lib/components/input/lib/core/services/validation-message-resolver.service.d.ts +14 -0
  428. package/src/lib/components/menu/index.d.ts +1 -1
  429. package/src/lib/components/menu/menu.d.ts +1 -0
  430. package/src/lib/components/nav-list/lib/components/nav-list/src/nav-list.component.d.ts +1 -1
  431. package/src/lib/components/radio-button/lib/components/radio-button/src/radio-button.component.d.ts +4 -4
  432. package/src/lib/components/report-item/index.d.ts +1 -1
  433. package/src/lib/components/report-item/lib/components/report-item/src/report-item.component.d.ts +33 -0
  434. package/src/lib/components/report-item/report-item.d.ts +1 -0
  435. package/src/lib/components/scale/lib/components/capability/src/capability-interval-bar/capability-interval-bar.component.d.ts +0 -2
  436. package/src/lib/components/scale/lib/components/filters/src/filters.component.d.ts +10 -2
  437. package/src/lib/components/scale/lib/components/scale/src/scale.component.d.ts +11 -3
  438. package/src/lib/components/scale/lib/components/scale/src/scale.interface.d.ts +1 -1
  439. package/src/lib/components/scale/lib/core/i18n/mapa-ui-texts.d.ts +102 -0
  440. package/src/lib/components/scale/lib/core/services/mapa-i18n.service.d.ts +13 -0
  441. package/src/lib/components/scale-parameterization/lib/components/scale-parameterization/src/scale-parameterization.component.d.ts +12 -4
  442. package/src/lib/components/scale-parameterization/lib/components/scale-parameterization/src/scale-parameterization.interface.d.ts +1 -1
  443. package/src/lib/components/scale-parameterization/lib/components/scale-parameterization/src/scale-parameterization.module.d.ts +3 -4
  444. package/src/lib/components/scale-parameterization/lib/core/i18n/mapa-ui-texts.d.ts +102 -0
  445. package/src/lib/components/scale-parameterization/lib/core/services/mapa-i18n.service.d.ts +13 -0
  446. package/src/lib/components/slide-toggle/lib/components/slide-toggle/src/slide-toggle.component.d.ts +4 -4
  447. package/src/lib/components/svg-icon/lib/components/svg-icon/src/svg-icon.component.d.ts +6 -3
  448. package/src/lib/components/svg-icon/lib/components/svg-icon/src/svg-icon.module.d.ts +3 -3
  449. package/src/lib/components/svg-icon/lib/core/pipes/safe-html.pipe.d.ts +10 -0
  450. package/src/lib/components/svg-icon/lib/core/services/html-sanitizer.service.d.ts +10 -0
  451. package/src/lib/components/table/lib/components/table/src/paginator_customization.d.ts +2 -1
  452. package/src/lib/components/table/lib/components/table/src/table.component.d.ts +18 -7
  453. package/src/lib/components/table/lib/components/table/src/table.module.d.ts +4 -3
  454. package/src/lib/components/table/lib/core/directives/custom-paginator-legacy.directive.d.ts +10 -9
  455. package/src/lib/components/table/lib/core/i18n/mapa-ui-texts.d.ts +102 -0
  456. package/src/lib/components/table/lib/core/js-brasil/index.d.ts +15 -0
  457. package/src/lib/components/table/lib/core/js-brasil/src/create.d.ts +37 -0
  458. package/src/lib/components/table/lib/core/js-brasil/src/createNumberMask.d.ts +13 -0
  459. package/src/lib/components/table/lib/core/js-brasil/src/estados.d.ts +7 -0
  460. package/src/lib/components/table/lib/core/js-brasil/src/index.d.ts +34 -0
  461. package/src/lib/components/table/lib/core/js-brasil/src/inscricaoestadual.d.ts +7 -0
  462. package/src/lib/components/table/lib/core/js-brasil/src/interfaces.d.ts +51 -0
  463. package/src/lib/components/table/lib/core/js-brasil/src/iptu.d.ts +3 -0
  464. package/src/lib/components/table/lib/core/js-brasil/src/iptu_create.d.ts +5 -0
  465. package/src/lib/components/table/lib/core/js-brasil/src/iptu_mask.d.ts +2 -0
  466. package/src/lib/components/table/lib/core/js-brasil/src/iptu_validate.d.ts +10 -0
  467. package/src/lib/components/table/lib/core/js-brasil/src/mask.d.ts +53 -0
  468. package/src/lib/components/table/lib/core/js-brasil/src/name.d.ts +9 -0
  469. package/src/lib/components/table/lib/core/js-brasil/src/placa.d.ts +6 -0
  470. package/src/lib/components/table/lib/core/js-brasil/src/rg.d.ts +5 -0
  471. package/src/lib/components/table/lib/core/js-brasil/src/saude.d.ts +84 -0
  472. package/src/lib/components/table/lib/core/js-brasil/src/utils.d.ts +71 -0
  473. package/src/lib/components/table/lib/core/js-brasil/src/validate.d.ts +90 -0
  474. package/src/lib/components/table/lib/core/pipes/cpf.d.ts +7 -0
  475. package/src/lib/components/table/lib/core/pipes/safe-html.pipe.d.ts +10 -0
  476. package/src/lib/components/table/lib/core/services/html-sanitizer.service.d.ts +10 -0
  477. package/src/lib/components/table/lib/core/services/mapa-i18n.service.d.ts +13 -0
  478. package/src/lib/components/tag/index.d.ts +1 -1
  479. package/src/lib/components/tag/tag.d.ts +1 -0
  480. package/src/lib/components/textarea/lib/components/textarea/src/textarea.component.d.ts +1 -1
  481. package/src/lib/components/textarea/lib/components/textarea/src/textarea.module.d.ts +2 -1
  482. package/src/lib/components/textarea/lib/core/components/form-errors/form-errors.component.d.ts +13 -0
  483. package/src/lib/components/textarea/lib/core/elements/errors.d.ts +1 -2
  484. package/src/lib/components/textarea/lib/core/i18n/mapa-ui-texts.d.ts +102 -0
  485. package/src/lib/components/textarea/lib/core/services/mapa-i18n.service.d.ts +13 -0
  486. package/src/lib/components/textarea/lib/core/services/validation-message-resolver.service.d.ts +14 -0
  487. package/src/lib/components/tooltip/index.d.ts +1 -1
  488. package/src/lib/components/tooltip/tooltip.d.ts +2 -0
  489. package/src/lib/components/warning/index.d.ts +1 -1
  490. package/src/lib/components/warning/{src → lib/components/warning/src}/warning.component.d.ts +3 -2
  491. package/src/lib/components/warning/warning.d.ts +1 -0
  492. package/esm2020/src/lib/components/button/public-api.mjs +0 -6
  493. package/esm2020/src/lib/components/button/src/button.component.mjs +0 -23
  494. package/esm2020/src/lib/components/button/src/button.module.mjs +0 -19
  495. package/esm2020/src/lib/components/button-icon/lib/core/interfaces/button-icon.interface.mjs +0 -2
  496. package/esm2020/src/lib/components/chart/lib/components/dropdown/public-api.mjs +0 -6
  497. package/esm2020/src/lib/components/chart/lib/components/dropdown/src/dropdown.component.mjs +0 -192
  498. package/esm2020/src/lib/components/chart/lib/components/dropdown/src/dropdown.module.mjs +0 -75
  499. package/esm2020/src/lib/components/chart/lib/core/elements/dropdown.mjs +0 -8
  500. package/esm2020/src/lib/components/chart/lib/core/elements/errors.mjs +0 -2
  501. package/esm2020/src/lib/components/chart/lib/core/interfaces/chart-options.interface.mjs +0 -2
  502. package/esm2020/src/lib/components/checkbox/public-api.mjs +0 -6
  503. package/esm2020/src/lib/components/datepicker/public-api.mjs +0 -6
  504. package/esm2020/src/lib/components/datepicker/src/datepicker.component.mjs +0 -44
  505. package/esm2020/src/lib/components/datepicker/src/datepicker.module.mjs +0 -70
  506. package/esm2020/src/lib/components/dialog/lib/core/interfaces/dialog-data.interface.mjs +0 -2
  507. package/esm2020/src/lib/components/dropdown/lib/components/button/public-api.mjs +0 -6
  508. package/esm2020/src/lib/components/dropdown/lib/components/button/src/button.component.mjs +0 -23
  509. package/esm2020/src/lib/components/dropdown/lib/components/button/src/button.module.mjs +0 -19
  510. package/esm2020/src/lib/components/dropdown/lib/components/dropdown-tree/public-api.mjs +0 -6
  511. package/esm2020/src/lib/components/dropdown/lib/components/dropdown-tree/src/dropdown.component.mjs +0 -77
  512. package/esm2020/src/lib/components/dropdown/lib/components/dropdown-tree/src/dropdown.module.mjs +0 -52
  513. package/esm2020/src/lib/components/dropdown/lib/core/elements/dropdown-tree.mjs +0 -8
  514. package/esm2020/src/lib/components/dropdown/lib/core/elements/index.mjs +0 -10
  515. package/esm2020/src/lib/components/dropdown/lib/core/elements/input-text.mjs +0 -8
  516. package/esm2020/src/lib/components/dropdown/lib/core/elements/radio-button.mjs +0 -8
  517. package/esm2020/src/lib/components/dropdown/lib/core/elements/slide-toggle.mjs +0 -8
  518. package/esm2020/src/lib/components/dropdown/lib/core/elements/textarea.mjs +0 -8
  519. package/esm2020/src/lib/components/dropdown/lib/core/interfaces/button-icon.interface.mjs +0 -2
  520. package/esm2020/src/lib/components/dropdown/lib/core/interfaces/chart-options.interface.mjs +0 -2
  521. package/esm2020/src/lib/components/dropdown/lib/core/interfaces/classification.interface.mjs +0 -2
  522. package/esm2020/src/lib/components/dropdown/lib/core/interfaces/dialog-data.interface.mjs +0 -2
  523. package/esm2020/src/lib/components/dropdown/lib/core/interfaces/index.mjs +0 -7
  524. package/esm2020/src/lib/components/dropdown/lib/core/interfaces/table-column.interface.mjs +0 -2
  525. package/esm2020/src/lib/components/dropdown/lib/core/interfaces/table-row-click-event.interface.mjs +0 -2
  526. package/esm2020/src/lib/components/dropdown-tree/dropdown.mjs +0 -9
  527. package/esm2020/src/lib/components/dropdown-tree/lib/components/button/public-api.mjs +0 -6
  528. package/esm2020/src/lib/components/dropdown-tree/lib/components/button/src/button.component.mjs +0 -23
  529. package/esm2020/src/lib/components/dropdown-tree/lib/components/button/src/button.module.mjs +0 -19
  530. package/esm2020/src/lib/components/dropdown-tree/lib/components/dropdown/public-api.mjs +0 -6
  531. package/esm2020/src/lib/components/dropdown-tree/lib/components/dropdown/src/dropdown.component.mjs +0 -192
  532. package/esm2020/src/lib/components/dropdown-tree/lib/components/dropdown/src/dropdown.module.mjs +0 -75
  533. package/esm2020/src/lib/components/dropdown-tree/lib/core/elements/index.mjs +0 -10
  534. package/esm2020/src/lib/components/dropdown-tree/lib/core/elements/radio-button.mjs +0 -8
  535. package/esm2020/src/lib/components/dropdown-tree/lib/core/elements/slide-toggle.mjs +0 -8
  536. package/esm2020/src/lib/components/dropdown-tree/lib/core/elements/textarea.mjs +0 -8
  537. package/esm2020/src/lib/components/dropdown-tree/lib/core/interfaces/button-icon.interface.mjs +0 -2
  538. package/esm2020/src/lib/components/dropdown-tree/lib/core/interfaces/chart-options.interface.mjs +0 -2
  539. package/esm2020/src/lib/components/dropdown-tree/lib/core/interfaces/classification.interface.mjs +0 -2
  540. package/esm2020/src/lib/components/dropdown-tree/lib/core/interfaces/dialog-data.interface.mjs +0 -2
  541. package/esm2020/src/lib/components/dropdown-tree/lib/core/interfaces/index.mjs +0 -7
  542. package/esm2020/src/lib/components/dropdown-tree/lib/core/interfaces/table-column.interface.mjs +0 -2
  543. package/esm2020/src/lib/components/dropdown-tree/lib/core/interfaces/table-row-click-event.interface.mjs +0 -2
  544. package/esm2020/src/lib/components/empty/public-api.mjs +0 -6
  545. package/esm2020/src/lib/components/empty/src/empty.module.mjs +0 -24
  546. package/esm2020/src/lib/components/form/lib/core/elements/dropdown-tree.mjs +0 -8
  547. package/esm2020/src/lib/components/form/lib/core/elements/dropdown.mjs +0 -8
  548. package/esm2020/src/lib/components/form/lib/core/elements/index.mjs +0 -10
  549. package/esm2020/src/lib/components/form/lib/core/elements/radio-button.mjs +0 -8
  550. package/esm2020/src/lib/components/form/lib/core/elements/slide-toggle.mjs +0 -8
  551. package/esm2020/src/lib/components/form/lib/core/elements/textarea.mjs +0 -8
  552. package/esm2020/src/lib/components/form/lib/core/interfaces/button-icon.interface.mjs +0 -2
  553. package/esm2020/src/lib/components/form/lib/core/interfaces/chart-options.interface.mjs +0 -2
  554. package/esm2020/src/lib/components/form/lib/core/interfaces/classification.interface.mjs +0 -2
  555. package/esm2020/src/lib/components/form/lib/core/interfaces/dialog-data.interface.mjs +0 -2
  556. package/esm2020/src/lib/components/form/lib/core/interfaces/index.mjs +0 -7
  557. package/esm2020/src/lib/components/form/lib/core/interfaces/table-column.interface.mjs +0 -2
  558. package/esm2020/src/lib/components/form/lib/core/interfaces/table-row-click-event.interface.mjs +0 -2
  559. package/esm2020/src/lib/components/group-report/filters.mjs +0 -7
  560. package/esm2020/src/lib/components/group-report/lib/components/button/public-api.mjs +0 -6
  561. package/esm2020/src/lib/components/group-report/lib/components/button/src/button.component.mjs +0 -23
  562. package/esm2020/src/lib/components/group-report/lib/components/button/src/button.module.mjs +0 -19
  563. package/esm2020/src/lib/components/group-report/lib/components/capability/public-api.mjs +0 -26
  564. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-comparative/capability-comparative.component.mjs +0 -17
  565. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-comparative/capability-comparative.module.mjs +0 -32
  566. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.component.mjs +0 -24
  567. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.module.mjs +0 -19
  568. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-comparative-header/capability-comparative-header.component.mjs +0 -20
  569. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-comparative-header/capability-comparative-header.module.mjs +0 -19
  570. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.component.mjs +0 -19
  571. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.module.mjs +0 -19
  572. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-detail/capability-detail.component.mjs +0 -73
  573. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-detail/capability-detail.module.mjs +0 -64
  574. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-dot/capability-dot.component.mjs +0 -31
  575. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-dot/capability-dot.module.mjs +0 -22
  576. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-expand/capability-expand.component.mjs +0 -27
  577. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-expand/capability-expand.module.mjs +0 -22
  578. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-indicator/capability-indicator.component.mjs +0 -14
  579. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-indicator/capability-indicator.module.mjs +0 -18
  580. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.component.mjs +0 -33
  581. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.module.mjs +0 -21
  582. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-indicator-list/capability-indicator-list.component.mjs +0 -27
  583. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-indicator-list/capability-indicator-list.module.mjs +0 -21
  584. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-interval/capability-interval.component.mjs +0 -81
  585. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-interval/capability-interval.module.mjs +0 -18
  586. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-interval-bar/capability-interval-bar.component.mjs +0 -31
  587. package/esm2020/src/lib/components/group-report/lib/components/capability/src/capability-interval-bar/capability-interval-bar.module.mjs +0 -20
  588. package/esm2020/src/lib/components/group-report/lib/components/capability/src/essentials/consts/capability-classification.const.mjs +0 -57
  589. package/esm2020/src/lib/components/group-report/lib/components/capability/src/essentials/interfaces/capability-classification.interface.mjs +0 -2
  590. package/esm2020/src/lib/components/group-report/lib/components/capability/src/essentials/interfaces/capability-comparative.interface.mjs +0 -2
  591. package/esm2020/src/lib/components/group-report/lib/components/capability/src/essentials/interfaces/capability-item.interface.mjs +0 -2
  592. package/esm2020/src/lib/components/group-report/lib/components/capability/src/essentials/interfaces/capability.interface.mjs +0 -2
  593. package/esm2020/src/lib/components/group-report/lib/components/capability/src/essentials/interfaces/index.mjs +0 -4
  594. package/esm2020/src/lib/components/group-report/lib/components/capability/src/essentials/services/capability-classification.service.mjs +0 -14
  595. package/esm2020/src/lib/components/group-report/lib/components/capability/src/essentials/services/reusable-interval-bar.service.mjs +0 -32
  596. package/esm2020/src/lib/components/group-report/lib/components/dropdown/public-api.mjs +0 -6
  597. package/esm2020/src/lib/components/group-report/lib/components/dropdown/src/dropdown.component.mjs +0 -192
  598. package/esm2020/src/lib/components/group-report/lib/components/dropdown/src/dropdown.module.mjs +0 -75
  599. package/esm2020/src/lib/components/group-report/lib/components/filters/src/filters.component.mjs +0 -34
  600. package/esm2020/src/lib/components/group-report/lib/components/filters/src/filters.module.mjs +0 -38
  601. package/esm2020/src/lib/components/group-report/lib/components/tag/public-api.mjs +0 -6
  602. package/esm2020/src/lib/components/group-report/lib/components/tag/src/tag.component.mjs +0 -14
  603. package/esm2020/src/lib/components/group-report/lib/core/elements/action-button.mjs +0 -2
  604. package/esm2020/src/lib/components/group-report/lib/core/elements/dropdown.mjs +0 -8
  605. package/esm2020/src/lib/components/group-report/lib/core/elements/element-base.mjs +0 -37
  606. package/esm2020/src/lib/components/group-report/lib/core/elements/element-search.mjs +0 -2
  607. package/esm2020/src/lib/components/group-report/lib/core/interfaces/classification.interface.mjs +0 -2
  608. package/esm2020/src/lib/components/group-report/lib/core/interfaces/element-group.interface.mjs +0 -2
  609. package/esm2020/src/lib/components/group-report/lib/core/interfaces/element-option.interface.mjs +0 -2
  610. package/esm2020/src/lib/components/group-report/lib/core/interfaces/table-column.interface.mjs +0 -2
  611. package/esm2020/src/lib/components/icon/public-api.mjs +0 -6
  612. package/esm2020/src/lib/components/icon/src/icon.component.mjs +0 -26
  613. package/esm2020/src/lib/components/icon/src/icon.module.mjs +0 -19
  614. package/esm2020/src/lib/components/input/public-api.mjs +0 -6
  615. package/esm2020/src/lib/components/input/src/input.component.mjs +0 -39
  616. package/esm2020/src/lib/components/input/src/input.module.mjs +0 -60
  617. package/esm2020/src/lib/components/menu/public-api.mjs +0 -6
  618. package/esm2020/src/lib/components/menu/src/menu.component.mjs +0 -34
  619. package/esm2020/src/lib/components/menu/src/menu.module.mjs +0 -36
  620. package/esm2020/src/lib/components/nav-list/lib/core/interfaces/element-option.interface.mjs +0 -2
  621. package/esm2020/src/lib/components/radio-button/lib/core/elements/action-button.mjs +0 -2
  622. package/esm2020/src/lib/components/radio-button/lib/core/elements/element-base.mjs +0 -37
  623. package/esm2020/src/lib/components/radio-button/lib/core/elements/element-search.mjs +0 -2
  624. package/esm2020/src/lib/components/radio-button/lib/core/elements/errors.mjs +0 -2
  625. package/esm2020/src/lib/components/radio-button/lib/core/interfaces/element-group.interface.mjs +0 -2
  626. package/esm2020/src/lib/components/radio-button/lib/core/interfaces/element-option.interface.mjs +0 -2
  627. package/esm2020/src/lib/components/report-item/public-api.mjs +0 -6
  628. package/esm2020/src/lib/components/report-item/src/report-item.component.mjs +0 -32
  629. package/esm2020/src/lib/components/scale/lib/components/capability/public-api.mjs +0 -26
  630. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-comparative/capability-comparative.component.mjs +0 -17
  631. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-comparative/capability-comparative.module.mjs +0 -32
  632. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.component.mjs +0 -24
  633. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.module.mjs +0 -19
  634. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-comparative-header/capability-comparative-header.component.mjs +0 -20
  635. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-comparative-header/capability-comparative-header.module.mjs +0 -19
  636. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.component.mjs +0 -19
  637. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.module.mjs +0 -19
  638. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-detail/capability-detail.component.mjs +0 -73
  639. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-detail/capability-detail.module.mjs +0 -64
  640. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-dot/capability-dot.component.mjs +0 -31
  641. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-dot/capability-dot.module.mjs +0 -22
  642. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-expand/capability-expand.component.mjs +0 -27
  643. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-expand/capability-expand.module.mjs +0 -22
  644. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-indicator/capability-indicator.component.mjs +0 -14
  645. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-indicator/capability-indicator.module.mjs +0 -18
  646. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.component.mjs +0 -33
  647. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.module.mjs +0 -21
  648. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-indicator-list/capability-indicator-list.component.mjs +0 -27
  649. package/esm2020/src/lib/components/scale/lib/components/capability/src/capability-indicator-list/capability-indicator-list.module.mjs +0 -21
  650. package/esm2020/src/lib/components/scale/lib/components/capability/src/essentials/consts/capability-classification.const.mjs +0 -57
  651. package/esm2020/src/lib/components/scale/lib/components/capability/src/essentials/interfaces/capability-classification.interface.mjs +0 -2
  652. package/esm2020/src/lib/components/scale/lib/components/capability/src/essentials/interfaces/capability-comparative.interface.mjs +0 -2
  653. package/esm2020/src/lib/components/scale/lib/components/capability/src/essentials/interfaces/index.mjs +0 -4
  654. package/esm2020/src/lib/components/scale/lib/components/capability/src/essentials/services/capability-classification.service.mjs +0 -14
  655. package/esm2020/src/lib/components/scale/lib/components/capability/src/essentials/services/reusable-interval-bar.service.mjs +0 -32
  656. package/esm2020/src/lib/components/scale/lib/components/dropdown/public-api.mjs +0 -6
  657. package/esm2020/src/lib/components/scale/lib/components/dropdown/src/dropdown.component.mjs +0 -192
  658. package/esm2020/src/lib/components/scale/lib/components/dropdown/src/dropdown.module.mjs +0 -75
  659. package/esm2020/src/lib/components/scale/lib/components/tag/public-api.mjs +0 -6
  660. package/esm2020/src/lib/components/scale/lib/components/tag/src/tag.component.mjs +0 -14
  661. package/esm2020/src/lib/components/scale/lib/components/tag/src/tag.module.mjs +0 -24
  662. package/esm2020/src/lib/components/scale/lib/components/tooltip/src/tooltip.component.mjs +0 -21
  663. package/esm2020/src/lib/components/scale/lib/components/tooltip/src/tooltip.directive.mjs +0 -140
  664. package/esm2020/src/lib/components/scale/lib/components/tooltip/src/tooltip.enums.mjs +0 -16
  665. package/esm2020/src/lib/components/scale/lib/components/tooltip/src/tooltip.module.mjs +0 -19
  666. package/esm2020/src/lib/components/scale/lib/core/elements/action-button.mjs +0 -2
  667. package/esm2020/src/lib/components/scale/lib/core/elements/dropdown.mjs +0 -8
  668. package/esm2020/src/lib/components/scale/lib/core/elements/element-base.mjs +0 -37
  669. package/esm2020/src/lib/components/scale/lib/core/elements/element-search.mjs +0 -2
  670. package/esm2020/src/lib/components/scale/lib/core/elements/errors.mjs +0 -2
  671. package/esm2020/src/lib/components/scale/lib/core/interfaces/classification.interface.mjs +0 -2
  672. package/esm2020/src/lib/components/scale/lib/core/interfaces/element-group.interface.mjs +0 -2
  673. package/esm2020/src/lib/components/scale/lib/core/interfaces/element-option.interface.mjs +0 -2
  674. package/esm2020/src/lib/components/scale-parameterization/filters.mjs +0 -7
  675. package/esm2020/src/lib/components/scale-parameterization/lib/components/button/public-api.mjs +0 -6
  676. package/esm2020/src/lib/components/scale-parameterization/lib/components/button/src/button.component.mjs +0 -23
  677. package/esm2020/src/lib/components/scale-parameterization/lib/components/button/src/button.module.mjs +0 -19
  678. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/public-api.mjs +0 -26
  679. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative/capability-comparative.component.mjs +0 -17
  680. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative/capability-comparative.module.mjs +0 -32
  681. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.component.mjs +0 -24
  682. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.module.mjs +0 -19
  683. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative-header/capability-comparative-header.component.mjs +0 -20
  684. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative-header/capability-comparative-header.module.mjs +0 -19
  685. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.component.mjs +0 -19
  686. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.module.mjs +0 -19
  687. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-detail/capability-detail.component.mjs +0 -73
  688. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-detail/capability-detail.module.mjs +0 -64
  689. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-dot/capability-dot.component.mjs +0 -31
  690. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-dot/capability-dot.module.mjs +0 -22
  691. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-expand/capability-expand.component.mjs +0 -27
  692. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-expand/capability-expand.module.mjs +0 -22
  693. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-indicator/capability-indicator.component.mjs +0 -14
  694. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-indicator/capability-indicator.module.mjs +0 -18
  695. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.component.mjs +0 -33
  696. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.module.mjs +0 -21
  697. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-indicator-list/capability-indicator-list.component.mjs +0 -27
  698. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-indicator-list/capability-indicator-list.module.mjs +0 -21
  699. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-interval/capability-interval.component.mjs +0 -81
  700. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-interval/capability-interval.module.mjs +0 -18
  701. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-interval-bar/capability-interval-bar.component.mjs +0 -31
  702. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/capability-interval-bar/capability-interval-bar.module.mjs +0 -20
  703. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/consts/capability-classification.const.mjs +0 -57
  704. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/interfaces/capability-classification.interface.mjs +0 -2
  705. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/interfaces/capability-comparative.interface.mjs +0 -2
  706. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/interfaces/capability-item.interface.mjs +0 -2
  707. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/interfaces/capability.interface.mjs +0 -2
  708. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/interfaces/index.mjs +0 -4
  709. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/services/capability-classification.service.mjs +0 -14
  710. package/esm2020/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/services/reusable-interval-bar.service.mjs +0 -32
  711. package/esm2020/src/lib/components/scale-parameterization/lib/components/dropdown/public-api.mjs +0 -6
  712. package/esm2020/src/lib/components/scale-parameterization/lib/components/dropdown/src/dropdown.component.mjs +0 -192
  713. package/esm2020/src/lib/components/scale-parameterization/lib/components/dropdown/src/dropdown.module.mjs +0 -75
  714. package/esm2020/src/lib/components/scale-parameterization/lib/components/filters/public-api.mjs +0 -6
  715. package/esm2020/src/lib/components/scale-parameterization/lib/components/filters/src/filters.component.mjs +0 -34
  716. package/esm2020/src/lib/components/scale-parameterization/lib/components/filters/src/filters.module.mjs +0 -38
  717. package/esm2020/src/lib/components/scale-parameterization/lib/components/icon/public-api.mjs +0 -6
  718. package/esm2020/src/lib/components/scale-parameterization/lib/components/icon/src/icon.component.mjs +0 -26
  719. package/esm2020/src/lib/components/scale-parameterization/lib/components/icon/src/icon.module.mjs +0 -19
  720. package/esm2020/src/lib/components/scale-parameterization/lib/components/tag/public-api.mjs +0 -6
  721. package/esm2020/src/lib/components/scale-parameterization/lib/components/tag/src/tag.module.mjs +0 -24
  722. package/esm2020/src/lib/components/scale-parameterization/lib/components/tooltip/src/tooltip.component.mjs +0 -21
  723. package/esm2020/src/lib/components/scale-parameterization/lib/components/tooltip/src/tooltip.directive.mjs +0 -140
  724. package/esm2020/src/lib/components/scale-parameterization/lib/components/tooltip/src/tooltip.enums.mjs +0 -16
  725. package/esm2020/src/lib/components/scale-parameterization/lib/components/tooltip/src/tooltip.module.mjs +0 -19
  726. package/esm2020/src/lib/components/scale-parameterization/lib/core/elements/action-button.mjs +0 -2
  727. package/esm2020/src/lib/components/scale-parameterization/lib/core/elements/dropdown.mjs +0 -8
  728. package/esm2020/src/lib/components/scale-parameterization/lib/core/elements/element-base.mjs +0 -37
  729. package/esm2020/src/lib/components/scale-parameterization/lib/core/elements/element-search.mjs +0 -2
  730. package/esm2020/src/lib/components/scale-parameterization/lib/core/elements/errors.mjs +0 -2
  731. package/esm2020/src/lib/components/scale-parameterization/lib/core/interfaces/classification.interface.mjs +0 -2
  732. package/esm2020/src/lib/components/scale-parameterization/lib/core/interfaces/element-group.interface.mjs +0 -2
  733. package/esm2020/src/lib/components/scale-parameterization/lib/core/interfaces/element-option.interface.mjs +0 -2
  734. package/esm2020/src/lib/components/slide-toggle/lib/core/elements/action-button.mjs +0 -2
  735. package/esm2020/src/lib/components/slide-toggle/lib/core/elements/element-base.mjs +0 -37
  736. package/esm2020/src/lib/components/slide-toggle/lib/core/elements/element-search.mjs +0 -2
  737. package/esm2020/src/lib/components/slide-toggle/lib/core/elements/errors.mjs +0 -2
  738. package/esm2020/src/lib/components/slide-toggle/lib/core/interfaces/element-group.interface.mjs +0 -2
  739. package/esm2020/src/lib/components/slide-toggle/lib/core/interfaces/element-option.interface.mjs +0 -2
  740. package/esm2020/src/lib/components/svg-icon/lib/components/svg-icon/src/safe-html.pipe.mjs +0 -20
  741. package/esm2020/src/lib/components/table/lib/components/svg-icon/src/safe-html.pipe.mjs +0 -20
  742. package/esm2020/src/lib/components/table/lib/components/svg-icon/src/svg-icon.component.mjs +0 -48
  743. package/esm2020/src/lib/components/table/lib/components/svg-icon/src/svg-icon.module.mjs +0 -19
  744. package/esm2020/src/lib/components/tag/public-api.mjs +0 -6
  745. package/esm2020/src/lib/components/tag/src/tag.component.mjs +0 -14
  746. package/esm2020/src/lib/components/tag/src/tag.module.mjs +0 -24
  747. package/esm2020/src/lib/components/textarea/lib/core/elements/action-button.mjs +0 -2
  748. package/esm2020/src/lib/components/textarea/lib/core/elements/element-base.mjs +0 -37
  749. package/esm2020/src/lib/components/textarea/lib/core/elements/element-search.mjs +0 -2
  750. package/esm2020/src/lib/components/textarea/lib/core/elements/textarea.mjs +0 -8
  751. package/esm2020/src/lib/components/textarea/lib/core/interfaces/element-group.interface.mjs +0 -2
  752. package/esm2020/src/lib/components/textarea/lib/core/interfaces/element-option.interface.mjs +0 -2
  753. package/esm2020/src/lib/components/tooltip/public-api.mjs +0 -7
  754. package/esm2020/src/lib/components/tooltip/src/tooltip.component.mjs +0 -21
  755. package/esm2020/src/lib/components/tooltip/src/tooltip.directive.mjs +0 -140
  756. package/esm2020/src/lib/components/tooltip/src/tooltip.enums.mjs +0 -16
  757. package/esm2020/src/lib/components/tooltip/src/tooltip.module.mjs +0 -19
  758. package/esm2020/src/lib/components/warning/public-api.mjs +0 -6
  759. package/esm2020/src/lib/components/warning/src/warning.component.mjs +0 -37
  760. package/mapa-library-ui-0.77.5.tgz +0 -0
  761. package/src/lib/components/button-icon/lib/core/interfaces/button-icon.interface.d.ts +0 -6
  762. package/src/lib/components/chart/lib/components/button/public-api.d.ts +0 -2
  763. package/src/lib/components/chart/lib/components/button/src/button.component.d.ts +0 -10
  764. package/src/lib/components/chart/lib/components/button/src/button.module.d.ts +0 -9
  765. package/src/lib/components/chart/lib/components/dropdown/public-api.d.ts +0 -2
  766. package/src/lib/components/chart/lib/components/dropdown/src/dropdown.component.d.ts +0 -45
  767. package/src/lib/components/chart/lib/components/dropdown/src/dropdown.module.d.ts +0 -16
  768. package/src/lib/components/chart/lib/core/elements/dropdown.d.ts +0 -4
  769. package/src/lib/components/chart/lib/core/interfaces/chart-options.interface.d.ts +0 -19
  770. package/src/lib/components/dialog/lib/core/interfaces/dialog-data.interface.d.ts +0 -11
  771. package/src/lib/components/dropdown/lib/components/button/public-api.d.ts +0 -2
  772. package/src/lib/components/dropdown/lib/components/button/src/button.component.d.ts +0 -10
  773. package/src/lib/components/dropdown/lib/components/button/src/button.module.d.ts +0 -9
  774. package/src/lib/components/dropdown/lib/components/dropdown-tree/public-api.d.ts +0 -2
  775. package/src/lib/components/dropdown/lib/components/dropdown-tree/src/dropdown.component.d.ts +0 -37
  776. package/src/lib/components/dropdown/lib/components/dropdown-tree/src/dropdown.module.d.ts +0 -12
  777. package/src/lib/components/dropdown/lib/core/elements/dropdown-tree.d.ts +0 -4
  778. package/src/lib/components/dropdown/lib/core/elements/index.d.ts +0 -9
  779. package/src/lib/components/dropdown/lib/core/elements/input-text.d.ts +0 -4
  780. package/src/lib/components/dropdown/lib/core/elements/radio-button.d.ts +0 -4
  781. package/src/lib/components/dropdown/lib/core/elements/slide-toggle.d.ts +0 -4
  782. package/src/lib/components/dropdown/lib/core/elements/textarea.d.ts +0 -4
  783. package/src/lib/components/dropdown/lib/core/interfaces/button-icon.interface.d.ts +0 -6
  784. package/src/lib/components/dropdown/lib/core/interfaces/chart-options.interface.d.ts +0 -19
  785. package/src/lib/components/dropdown/lib/core/interfaces/classification.interface.d.ts +0 -6
  786. package/src/lib/components/dropdown/lib/core/interfaces/dialog-data.interface.d.ts +0 -11
  787. package/src/lib/components/dropdown/lib/core/interfaces/index.d.ts +0 -6
  788. package/src/lib/components/dropdown/lib/core/interfaces/table-column.interface.d.ts +0 -19
  789. package/src/lib/components/dropdown/lib/core/interfaces/table-row-click-event.interface.d.ts +0 -4
  790. package/src/lib/components/dropdown-tree/lib/components/button/public-api.d.ts +0 -2
  791. package/src/lib/components/dropdown-tree/lib/components/button/src/button.component.d.ts +0 -10
  792. package/src/lib/components/dropdown-tree/lib/components/button/src/button.module.d.ts +0 -9
  793. package/src/lib/components/dropdown-tree/lib/components/dropdown/public-api.d.ts +0 -2
  794. package/src/lib/components/dropdown-tree/lib/components/dropdown/src/dropdown.component.d.ts +0 -45
  795. package/src/lib/components/dropdown-tree/lib/components/dropdown/src/dropdown.module.d.ts +0 -16
  796. package/src/lib/components/dropdown-tree/lib/core/elements/index.d.ts +0 -9
  797. package/src/lib/components/dropdown-tree/lib/core/elements/radio-button.d.ts +0 -4
  798. package/src/lib/components/dropdown-tree/lib/core/elements/slide-toggle.d.ts +0 -4
  799. package/src/lib/components/dropdown-tree/lib/core/elements/textarea.d.ts +0 -4
  800. package/src/lib/components/dropdown-tree/lib/core/interfaces/button-icon.interface.d.ts +0 -6
  801. package/src/lib/components/dropdown-tree/lib/core/interfaces/chart-options.interface.d.ts +0 -19
  802. package/src/lib/components/dropdown-tree/lib/core/interfaces/dialog-data.interface.d.ts +0 -11
  803. package/src/lib/components/dropdown-tree/lib/core/interfaces/index.d.ts +0 -6
  804. package/src/lib/components/dropdown-tree/lib/core/interfaces/table-row-click-event.interface.d.ts +0 -4
  805. package/src/lib/components/form/lib/core/elements/dropdown-tree.d.ts +0 -4
  806. package/src/lib/components/form/lib/core/elements/dropdown.d.ts +0 -4
  807. package/src/lib/components/form/lib/core/elements/index.d.ts +0 -9
  808. package/src/lib/components/form/lib/core/elements/radio-button.d.ts +0 -4
  809. package/src/lib/components/form/lib/core/elements/slide-toggle.d.ts +0 -4
  810. package/src/lib/components/form/lib/core/elements/textarea.d.ts +0 -4
  811. package/src/lib/components/form/lib/core/interfaces/button-icon.interface.d.ts +0 -6
  812. package/src/lib/components/form/lib/core/interfaces/chart-options.interface.d.ts +0 -19
  813. package/src/lib/components/form/lib/core/interfaces/classification.interface.d.ts +0 -6
  814. package/src/lib/components/form/lib/core/interfaces/dialog-data.interface.d.ts +0 -11
  815. package/src/lib/components/form/lib/core/interfaces/index.d.ts +0 -6
  816. package/src/lib/components/form/lib/core/interfaces/table-column.interface.d.ts +0 -19
  817. package/src/lib/components/form/lib/core/interfaces/table-row-click-event.interface.d.ts +0 -4
  818. package/src/lib/components/group-report/filters.d.ts +0 -3
  819. package/src/lib/components/group-report/lib/components/button/public-api.d.ts +0 -2
  820. package/src/lib/components/group-report/lib/components/button/src/button.component.d.ts +0 -10
  821. package/src/lib/components/group-report/lib/components/button/src/button.module.d.ts +0 -9
  822. package/src/lib/components/group-report/lib/components/capability/public-api.d.ts +0 -22
  823. package/src/lib/components/group-report/lib/components/capability/src/capability-comparative/capability-comparative.component.d.ts +0 -10
  824. package/src/lib/components/group-report/lib/components/capability/src/capability-comparative/capability-comparative.module.d.ts +0 -11
  825. package/src/lib/components/group-report/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.component.d.ts +0 -9
  826. package/src/lib/components/group-report/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.module.d.ts +0 -9
  827. package/src/lib/components/group-report/lib/components/capability/src/capability-comparative-header/capability-comparative-header.component.d.ts +0 -9
  828. package/src/lib/components/group-report/lib/components/capability/src/capability-comparative-header/capability-comparative-header.module.d.ts +0 -9
  829. package/src/lib/components/group-report/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.component.d.ts +0 -9
  830. package/src/lib/components/group-report/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.module.d.ts +0 -9
  831. package/src/lib/components/group-report/lib/components/capability/src/capability-detail/capability-detail.component.d.ts +0 -29
  832. package/src/lib/components/group-report/lib/components/capability/src/capability-detail/capability-detail.module.d.ts +0 -17
  833. package/src/lib/components/group-report/lib/components/capability/src/capability-dot/capability-dot.component.d.ts +0 -17
  834. package/src/lib/components/group-report/lib/components/capability/src/capability-dot/capability-dot.module.d.ts +0 -10
  835. package/src/lib/components/group-report/lib/components/capability/src/capability-expand/capability-expand.component.d.ts +0 -16
  836. package/src/lib/components/group-report/lib/components/capability/src/capability-expand/capability-expand.module.d.ts +0 -10
  837. package/src/lib/components/group-report/lib/components/capability/src/capability-indicator/capability-indicator.component.d.ts +0 -7
  838. package/src/lib/components/group-report/lib/components/capability/src/capability-indicator/capability-indicator.module.d.ts +0 -8
  839. package/src/lib/components/group-report/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.component.d.ts +0 -12
  840. package/src/lib/components/group-report/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.module.d.ts +0 -9
  841. package/src/lib/components/group-report/lib/components/capability/src/capability-indicator-list/capability-indicator-list.component.d.ts +0 -14
  842. package/src/lib/components/group-report/lib/components/capability/src/capability-indicator-list/capability-indicator-list.module.d.ts +0 -9
  843. package/src/lib/components/group-report/lib/components/capability/src/capability-interval/capability-interval.component.d.ts +0 -29
  844. package/src/lib/components/group-report/lib/components/capability/src/capability-interval/capability-interval.module.d.ts +0 -8
  845. package/src/lib/components/group-report/lib/components/capability/src/capability-interval-bar/capability-interval-bar.component.d.ts +0 -16
  846. package/src/lib/components/group-report/lib/components/capability/src/capability-interval-bar/capability-interval-bar.module.d.ts +0 -10
  847. package/src/lib/components/group-report/lib/components/capability/src/essentials/consts/capability-classification.const.d.ts +0 -2
  848. package/src/lib/components/group-report/lib/components/capability/src/essentials/interfaces/capability-classification.interface.d.ts +0 -6
  849. package/src/lib/components/group-report/lib/components/capability/src/essentials/interfaces/capability-comparative.interface.d.ts +0 -10
  850. package/src/lib/components/group-report/lib/components/capability/src/essentials/interfaces/capability-item.interface.d.ts +0 -20
  851. package/src/lib/components/group-report/lib/components/capability/src/essentials/interfaces/capability.interface.d.ts +0 -8
  852. package/src/lib/components/group-report/lib/components/capability/src/essentials/interfaces/index.d.ts +0 -3
  853. package/src/lib/components/group-report/lib/components/capability/src/essentials/services/capability-classification.service.d.ts +0 -8
  854. package/src/lib/components/group-report/lib/components/capability/src/essentials/services/reusable-interval-bar.service.d.ts +0 -15
  855. package/src/lib/components/group-report/lib/components/dropdown/public-api.d.ts +0 -2
  856. package/src/lib/components/group-report/lib/components/dropdown/src/dropdown.component.d.ts +0 -45
  857. package/src/lib/components/group-report/lib/components/dropdown/src/dropdown.module.d.ts +0 -16
  858. package/src/lib/components/group-report/lib/components/filters/public-api.d.ts +0 -2
  859. package/src/lib/components/group-report/lib/components/filters/src/filters.component.d.ts +0 -14
  860. package/src/lib/components/group-report/lib/components/filters/src/filters.module.d.ts +0 -12
  861. package/src/lib/components/group-report/lib/components/tag/public-api.d.ts +0 -2
  862. package/src/lib/components/group-report/lib/core/elements/action-button.d.ts +0 -5
  863. package/src/lib/components/group-report/lib/core/elements/dropdown.d.ts +0 -4
  864. package/src/lib/components/group-report/lib/core/elements/element-base.d.ts +0 -75
  865. package/src/lib/components/group-report/lib/core/elements/element-search.d.ts +0 -7
  866. package/src/lib/components/group-report/lib/core/elements/errors.d.ts +0 -12
  867. package/src/lib/components/group-report/lib/core/interfaces/classification.interface.d.ts +0 -6
  868. package/src/lib/components/group-report/lib/core/interfaces/element-group.interface.d.ts +0 -5
  869. package/src/lib/components/group-report/lib/core/interfaces/element-option.interface.d.ts +0 -6
  870. package/src/lib/components/group-report/lib/core/interfaces/table-column.interface.d.ts +0 -19
  871. package/src/lib/components/icon/public-api.d.ts +0 -2
  872. package/src/lib/components/icon/src/icon.component.d.ts +0 -13
  873. package/src/lib/components/icon/src/icon.module.d.ts +0 -9
  874. package/src/lib/components/nav-list/lib/core/interfaces/element-option.interface.d.ts +0 -6
  875. package/src/lib/components/radio-button/lib/core/elements/action-button.d.ts +0 -5
  876. package/src/lib/components/radio-button/lib/core/elements/element-base.d.ts +0 -75
  877. package/src/lib/components/radio-button/lib/core/elements/element-search.d.ts +0 -7
  878. package/src/lib/components/radio-button/lib/core/elements/errors.d.ts +0 -12
  879. package/src/lib/components/radio-button/lib/core/interfaces/element-group.interface.d.ts +0 -5
  880. package/src/lib/components/radio-button/lib/core/interfaces/element-option.interface.d.ts +0 -6
  881. package/src/lib/components/report-item/src/report-item.component.d.ts +0 -18
  882. package/src/lib/components/scale/lib/components/capability/public-api.d.ts +0 -22
  883. package/src/lib/components/scale/lib/components/capability/src/capability-comparative/capability-comparative.component.d.ts +0 -10
  884. package/src/lib/components/scale/lib/components/capability/src/capability-comparative/capability-comparative.module.d.ts +0 -11
  885. package/src/lib/components/scale/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.component.d.ts +0 -9
  886. package/src/lib/components/scale/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.module.d.ts +0 -9
  887. package/src/lib/components/scale/lib/components/capability/src/capability-comparative-header/capability-comparative-header.component.d.ts +0 -9
  888. package/src/lib/components/scale/lib/components/capability/src/capability-comparative-header/capability-comparative-header.module.d.ts +0 -9
  889. package/src/lib/components/scale/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.component.d.ts +0 -9
  890. package/src/lib/components/scale/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.module.d.ts +0 -9
  891. package/src/lib/components/scale/lib/components/capability/src/capability-detail/capability-detail.component.d.ts +0 -29
  892. package/src/lib/components/scale/lib/components/capability/src/capability-detail/capability-detail.module.d.ts +0 -17
  893. package/src/lib/components/scale/lib/components/capability/src/capability-dot/capability-dot.component.d.ts +0 -17
  894. package/src/lib/components/scale/lib/components/capability/src/capability-dot/capability-dot.module.d.ts +0 -10
  895. package/src/lib/components/scale/lib/components/capability/src/capability-expand/capability-expand.component.d.ts +0 -16
  896. package/src/lib/components/scale/lib/components/capability/src/capability-expand/capability-expand.module.d.ts +0 -10
  897. package/src/lib/components/scale/lib/components/capability/src/capability-indicator/capability-indicator.component.d.ts +0 -7
  898. package/src/lib/components/scale/lib/components/capability/src/capability-indicator/capability-indicator.module.d.ts +0 -8
  899. package/src/lib/components/scale/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.component.d.ts +0 -12
  900. package/src/lib/components/scale/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.module.d.ts +0 -9
  901. package/src/lib/components/scale/lib/components/capability/src/capability-indicator-list/capability-indicator-list.component.d.ts +0 -14
  902. package/src/lib/components/scale/lib/components/capability/src/capability-indicator-list/capability-indicator-list.module.d.ts +0 -9
  903. package/src/lib/components/scale/lib/components/capability/src/essentials/consts/capability-classification.const.d.ts +0 -2
  904. package/src/lib/components/scale/lib/components/capability/src/essentials/interfaces/capability-classification.interface.d.ts +0 -6
  905. package/src/lib/components/scale/lib/components/capability/src/essentials/interfaces/capability-comparative.interface.d.ts +0 -10
  906. package/src/lib/components/scale/lib/components/capability/src/essentials/interfaces/index.d.ts +0 -3
  907. package/src/lib/components/scale/lib/components/capability/src/essentials/services/capability-classification.service.d.ts +0 -8
  908. package/src/lib/components/scale/lib/components/capability/src/essentials/services/reusable-interval-bar.service.d.ts +0 -15
  909. package/src/lib/components/scale/lib/components/dropdown/public-api.d.ts +0 -2
  910. package/src/lib/components/scale/lib/components/dropdown/src/dropdown.component.d.ts +0 -45
  911. package/src/lib/components/scale/lib/components/dropdown/src/dropdown.module.d.ts +0 -16
  912. package/src/lib/components/scale/lib/components/tag/public-api.d.ts +0 -2
  913. package/src/lib/components/scale/lib/components/tag/src/tag.component.d.ts +0 -12
  914. package/src/lib/components/scale/lib/components/tag/src/tag.module.d.ts +0 -8
  915. package/src/lib/components/scale/lib/components/tooltip/src/tooltip.component.d.ts +0 -15
  916. package/src/lib/components/scale/lib/components/tooltip/src/tooltip.directive.d.ts +0 -32
  917. package/src/lib/components/scale/lib/components/tooltip/src/tooltip.enums.d.ts +0 -13
  918. package/src/lib/components/scale/lib/components/tooltip/src/tooltip.module.d.ts +0 -9
  919. package/src/lib/components/scale/lib/core/elements/action-button.d.ts +0 -5
  920. package/src/lib/components/scale/lib/core/elements/dropdown.d.ts +0 -4
  921. package/src/lib/components/scale/lib/core/elements/element-base.d.ts +0 -75
  922. package/src/lib/components/scale/lib/core/elements/element-search.d.ts +0 -7
  923. package/src/lib/components/scale/lib/core/elements/errors.d.ts +0 -12
  924. package/src/lib/components/scale/lib/core/interfaces/classification.interface.d.ts +0 -6
  925. package/src/lib/components/scale/lib/core/interfaces/element-group.interface.d.ts +0 -5
  926. package/src/lib/components/scale/lib/core/interfaces/element-option.interface.d.ts +0 -6
  927. package/src/lib/components/scale-parameterization/filters.d.ts +0 -3
  928. package/src/lib/components/scale-parameterization/lib/components/button/public-api.d.ts +0 -2
  929. package/src/lib/components/scale-parameterization/lib/components/button/src/button.component.d.ts +0 -10
  930. package/src/lib/components/scale-parameterization/lib/components/button/src/button.module.d.ts +0 -9
  931. package/src/lib/components/scale-parameterization/lib/components/capability/public-api.d.ts +0 -22
  932. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative/capability-comparative.component.d.ts +0 -10
  933. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative/capability-comparative.module.d.ts +0 -11
  934. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.component.d.ts +0 -9
  935. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.module.d.ts +0 -9
  936. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative-header/capability-comparative-header.component.d.ts +0 -9
  937. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative-header/capability-comparative-header.module.d.ts +0 -9
  938. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.component.d.ts +0 -9
  939. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.module.d.ts +0 -9
  940. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-detail/capability-detail.component.d.ts +0 -29
  941. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-detail/capability-detail.module.d.ts +0 -17
  942. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-dot/capability-dot.component.d.ts +0 -17
  943. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-dot/capability-dot.module.d.ts +0 -10
  944. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-expand/capability-expand.component.d.ts +0 -16
  945. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-expand/capability-expand.module.d.ts +0 -10
  946. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-indicator/capability-indicator.component.d.ts +0 -7
  947. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-indicator/capability-indicator.module.d.ts +0 -8
  948. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.component.d.ts +0 -12
  949. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.module.d.ts +0 -9
  950. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-indicator-list/capability-indicator-list.component.d.ts +0 -14
  951. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-indicator-list/capability-indicator-list.module.d.ts +0 -9
  952. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-interval/capability-interval.component.d.ts +0 -29
  953. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-interval/capability-interval.module.d.ts +0 -8
  954. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-interval-bar/capability-interval-bar.component.d.ts +0 -16
  955. package/src/lib/components/scale-parameterization/lib/components/capability/src/capability-interval-bar/capability-interval-bar.module.d.ts +0 -10
  956. package/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/consts/capability-classification.const.d.ts +0 -2
  957. package/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/interfaces/capability-classification.interface.d.ts +0 -6
  958. package/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/interfaces/capability-comparative.interface.d.ts +0 -10
  959. package/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/interfaces/capability-item.interface.d.ts +0 -20
  960. package/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/interfaces/capability.interface.d.ts +0 -8
  961. package/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/interfaces/index.d.ts +0 -3
  962. package/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/services/capability-classification.service.d.ts +0 -8
  963. package/src/lib/components/scale-parameterization/lib/components/capability/src/essentials/services/reusable-interval-bar.service.d.ts +0 -15
  964. package/src/lib/components/scale-parameterization/lib/components/dropdown/public-api.d.ts +0 -2
  965. package/src/lib/components/scale-parameterization/lib/components/dropdown/src/dropdown.component.d.ts +0 -45
  966. package/src/lib/components/scale-parameterization/lib/components/dropdown/src/dropdown.module.d.ts +0 -16
  967. package/src/lib/components/scale-parameterization/lib/components/filters/public-api.d.ts +0 -2
  968. package/src/lib/components/scale-parameterization/lib/components/filters/src/filters.component.d.ts +0 -14
  969. package/src/lib/components/scale-parameterization/lib/components/filters/src/filters.module.d.ts +0 -12
  970. package/src/lib/components/scale-parameterization/lib/components/icon/public-api.d.ts +0 -2
  971. package/src/lib/components/scale-parameterization/lib/components/icon/src/icon.component.d.ts +0 -13
  972. package/src/lib/components/scale-parameterization/lib/components/icon/src/icon.module.d.ts +0 -9
  973. package/src/lib/components/scale-parameterization/lib/components/tag/public-api.d.ts +0 -2
  974. package/src/lib/components/scale-parameterization/lib/components/tag/src/tag.component.d.ts +0 -12
  975. package/src/lib/components/scale-parameterization/lib/components/tag/src/tag.module.d.ts +0 -8
  976. package/src/lib/components/scale-parameterization/lib/components/tooltip/src/tooltip.component.d.ts +0 -15
  977. package/src/lib/components/scale-parameterization/lib/components/tooltip/src/tooltip.directive.d.ts +0 -32
  978. package/src/lib/components/scale-parameterization/lib/components/tooltip/src/tooltip.enums.d.ts +0 -13
  979. package/src/lib/components/scale-parameterization/lib/components/tooltip/src/tooltip.module.d.ts +0 -9
  980. package/src/lib/components/scale-parameterization/lib/core/elements/action-button.d.ts +0 -5
  981. package/src/lib/components/scale-parameterization/lib/core/elements/dropdown.d.ts +0 -4
  982. package/src/lib/components/scale-parameterization/lib/core/elements/element-base.d.ts +0 -75
  983. package/src/lib/components/scale-parameterization/lib/core/elements/element-search.d.ts +0 -7
  984. package/src/lib/components/scale-parameterization/lib/core/elements/errors.d.ts +0 -12
  985. package/src/lib/components/scale-parameterization/lib/core/interfaces/classification.interface.d.ts +0 -6
  986. package/src/lib/components/scale-parameterization/lib/core/interfaces/element-group.interface.d.ts +0 -5
  987. package/src/lib/components/scale-parameterization/lib/core/interfaces/element-option.interface.d.ts +0 -6
  988. package/src/lib/components/slide-toggle/lib/core/elements/action-button.d.ts +0 -5
  989. package/src/lib/components/slide-toggle/lib/core/elements/element-base.d.ts +0 -75
  990. package/src/lib/components/slide-toggle/lib/core/elements/element-search.d.ts +0 -7
  991. package/src/lib/components/slide-toggle/lib/core/elements/errors.d.ts +0 -12
  992. package/src/lib/components/slide-toggle/lib/core/interfaces/element-group.interface.d.ts +0 -5
  993. package/src/lib/components/slide-toggle/lib/core/interfaces/element-option.interface.d.ts +0 -6
  994. package/src/lib/components/svg-icon/lib/components/svg-icon/src/safe-html.pipe.d.ts +0 -10
  995. package/src/lib/components/table/lib/components/menu/public-api.d.ts +0 -2
  996. package/src/lib/components/table/lib/components/menu/src/menu.component.d.ts +0 -22
  997. package/src/lib/components/table/lib/components/menu/src/menu.module.d.ts +0 -11
  998. package/src/lib/components/table/lib/components/svg-icon/public-api.d.ts +0 -2
  999. package/src/lib/components/table/lib/components/svg-icon/src/safe-html.pipe.d.ts +0 -10
  1000. package/src/lib/components/table/lib/components/svg-icon/src/svg-icon.component.d.ts +0 -14
  1001. package/src/lib/components/table/lib/components/svg-icon/src/svg-icon.module.d.ts +0 -9
  1002. package/src/lib/components/tag/public-api.d.ts +0 -2
  1003. package/src/lib/components/tag/src/tag.component.d.ts +0 -12
  1004. package/src/lib/components/tag/src/tag.module.d.ts +0 -8
  1005. package/src/lib/components/textarea/lib/core/elements/action-button.d.ts +0 -5
  1006. package/src/lib/components/textarea/lib/core/elements/element-base.d.ts +0 -75
  1007. package/src/lib/components/textarea/lib/core/elements/element-search.d.ts +0 -7
  1008. package/src/lib/components/textarea/lib/core/elements/textarea.d.ts +0 -4
  1009. package/src/lib/components/textarea/lib/core/interfaces/element-group.interface.d.ts +0 -5
  1010. package/src/lib/components/textarea/lib/core/interfaces/element-option.interface.d.ts +0 -6
  1011. package/src/lib/components/tooltip/src/tooltip.component.d.ts +0 -15
  1012. package/src/lib/components/tooltip/src/tooltip.directive.d.ts +0 -32
  1013. package/src/lib/components/tooltip/src/tooltip.enums.d.ts +0 -13
  1014. package/src/lib/components/tooltip/src/tooltip.module.d.ts +0 -9
  1015. /package/esm2020/src/lib/components/{chart → button}/lib/components/button/public-api.mjs +0 -0
  1016. /package/esm2020/src/lib/components/{chart → button}/lib/components/button/src/button.module.mjs +0 -0
  1017. /package/esm2020/src/lib/components/{group-report → icon}/lib/components/icon/public-api.mjs +0 -0
  1018. /package/esm2020/src/lib/components/{group-report → icon}/lib/components/icon/src/icon.component.mjs +0 -0
  1019. /package/esm2020/src/lib/components/{group-report → icon}/lib/components/icon/src/icon.module.mjs +0 -0
  1020. /package/esm2020/src/lib/components/{chart → input}/lib/core/elements/action-button.mjs +0 -0
  1021. /package/esm2020/src/lib/components/{chart → input}/lib/core/elements/element-base.mjs +0 -0
  1022. /package/esm2020/src/lib/components/{chart → input}/lib/core/elements/element-search.mjs +0 -0
  1023. /package/esm2020/src/lib/components/{dropdown-tree → input}/lib/core/elements/input-text.mjs +0 -0
  1024. /package/esm2020/src/lib/components/{chart → input}/lib/core/interfaces/element-group.interface.mjs +0 -0
  1025. /package/esm2020/src/lib/components/{chart → input}/lib/core/interfaces/element-option.interface.mjs +0 -0
  1026. /package/esm2020/src/lib/components/{table → menu}/lib/components/menu/public-api.mjs +0 -0
  1027. /package/esm2020/src/lib/components/{table → menu}/lib/components/menu/src/menu.component.mjs +0 -0
  1028. /package/esm2020/src/lib/components/{capability → tag}/lib/components/tag/public-api.mjs +0 -0
  1029. /package/esm2020/src/lib/components/{group-report → tag}/lib/components/tag/src/tag.module.mjs +0 -0
  1030. /package/esm2020/src/lib/components/{group-report → tooltip}/lib/components/tooltip/src/tooltip.component.mjs +0 -0
  1031. /package/esm2020/src/lib/components/{group-report → tooltip}/lib/components/tooltip/src/tooltip.directive.mjs +0 -0
  1032. /package/esm2020/src/lib/components/{group-report → tooltip}/lib/components/tooltip/src/tooltip.enums.mjs +0 -0
  1033. /package/esm2020/src/lib/components/{group-report → tooltip}/lib/components/tooltip/src/tooltip.module.mjs +0 -0
  1034. /package/{src/lib/components/dropdown-tree/lib → lib}/core/interfaces/classification.interface.d.ts +0 -0
  1035. /package/{src/lib/components/dropdown-tree/lib → lib}/core/interfaces/table-column.interface.d.ts +0 -0
  1036. /package/src/lib/components/button/{public-api.d.ts → lib/components/button/public-api.d.ts} +0 -0
  1037. /package/src/lib/components/button/{src → lib/components/button/src}/button.component.d.ts +0 -0
  1038. /package/src/lib/components/button/{src → lib/components/button/src}/button.module.d.ts +0 -0
  1039. /package/src/lib/components/checkbox/{public-api.d.ts → lib/components/checkbox/public-api.d.ts} +0 -0
  1040. /package/src/lib/components/checkbox/{src → lib/components/checkbox/src}/checkbox.component.d.ts +0 -0
  1041. /package/src/lib/components/checkbox/{src → lib/components/checkbox/src}/checkbox.module.d.ts +0 -0
  1042. /package/src/lib/components/datepicker/{public-api.d.ts → lib/components/datepicker/public-api.d.ts} +0 -0
  1043. /package/src/lib/components/datepicker/{src → lib/components/datepicker/src}/datepicker.module.d.ts +0 -0
  1044. /package/src/lib/components/empty/{public-api.d.ts → lib/components/empty/public-api.d.ts} +0 -0
  1045. /package/src/lib/components/empty/{src → lib/components/empty/src}/empty.component.d.ts +0 -0
  1046. /package/src/lib/components/{group-report → icon}/lib/components/icon/public-api.d.ts +0 -0
  1047. /package/src/lib/components/{group-report → icon}/lib/components/icon/src/icon.component.d.ts +0 -0
  1048. /package/src/lib/components/{group-report → icon}/lib/components/icon/src/icon.module.d.ts +0 -0
  1049. /package/src/lib/components/input/{public-api.d.ts → lib/components/input/public-api.d.ts} +0 -0
  1050. /package/src/lib/components/{chart → input}/lib/core/elements/action-button.d.ts +0 -0
  1051. /package/src/lib/components/{chart → input}/lib/core/elements/element-base.d.ts +0 -0
  1052. /package/src/lib/components/{chart → input}/lib/core/elements/element-search.d.ts +0 -0
  1053. /package/src/lib/components/{dropdown-tree → input}/lib/core/elements/input-text.d.ts +0 -0
  1054. /package/src/lib/components/{chart → input}/lib/core/interfaces/element-group.interface.d.ts +0 -0
  1055. /package/src/lib/components/{chart → input}/lib/core/interfaces/element-option.interface.d.ts +0 -0
  1056. /package/src/lib/components/menu/{public-api.d.ts → lib/components/menu/public-api.d.ts} +0 -0
  1057. /package/src/lib/components/menu/{src → lib/components/menu/src}/menu.component.d.ts +0 -0
  1058. /package/src/lib/components/menu/{src → lib/components/menu/src}/menu.module.d.ts +0 -0
  1059. /package/src/lib/components/report-item/{public-api.d.ts → lib/components/report-item/public-api.d.ts} +0 -0
  1060. /package/src/lib/components/report-item/{src → lib/components/report-item/src}/report-item.module.d.ts +0 -0
  1061. /package/src/lib/components/{capability → tag}/lib/components/tag/public-api.d.ts +0 -0
  1062. /package/src/lib/components/{group-report → tag}/lib/components/tag/src/tag.component.d.ts +0 -0
  1063. /package/src/lib/components/{group-report → tag}/lib/components/tag/src/tag.module.d.ts +0 -0
  1064. /package/src/lib/components/tooltip/{public-api.d.ts → lib/components/tooltip/public-api.d.ts} +0 -0
  1065. /package/src/lib/components/{group-report → tooltip}/lib/components/tooltip/src/tooltip.component.d.ts +0 -0
  1066. /package/src/lib/components/{group-report → tooltip}/lib/components/tooltip/src/tooltip.directive.d.ts +0 -0
  1067. /package/src/lib/components/{group-report → tooltip}/lib/components/tooltip/src/tooltip.enums.d.ts +0 -0
  1068. /package/src/lib/components/{group-report → tooltip}/lib/components/tooltip/src/tooltip.module.d.ts +0 -0
  1069. /package/src/lib/components/warning/{public-api.d.ts → lib/components/warning/public-api.d.ts} +0 -0
  1070. /package/src/lib/components/warning/{src → lib/components/warning/src}/warning.module.d.ts +0 -0
@@ -0,0 +1,627 @@
1
+ import { getAllDigits, fillString, getAllWords } from './utils';
2
+ import { validate_inscricaoestadual } from './inscricaoestadual';
3
+ import { validate_placa } from './placa';
4
+ import { create_cnpj, create_cpf, create_renavam, create_ect, create_processo, create_titulo_atual, create_cnh, create_certidao, create_aih, create_pispasep, create_cnhespelho, create_renachestadual, create_renachseguranca } from './create';
5
+ import RG from './rg';
6
+ import { validate_iptu } from './iptu';
7
+ import { ESTADOS_SIGLA } from './estados';
8
+ export function validate_aih(aih) {
9
+ const aihClean = aih.replace(/[^\d]+/g, '');
10
+ const dvOriginal = aihClean.substr(-1);
11
+ const dv = create_aih(aihClean);
12
+ return dvOriginal === dv;
13
+ }
14
+ export function validate_celular(cel) {
15
+ let celClean = cel.replace(/[^\d]+/g, '');
16
+ celClean = celClean.replace(/_/g, '');
17
+ if (celClean.length !== 11) {
18
+ return false;
19
+ }
20
+ if (celClean[0] == 0 || celClean[2] < 5) {
21
+ return false;
22
+ }
23
+ return true;
24
+ }
25
+ export const CEPRange = {
26
+ 'SP': /^([1][0-9]{3}|[01][0-9]{4})[0-9]{3}$/g,
27
+ 'RJ': /^[2][0-8][0-9]{3}[0-9]{3}$/g,
28
+ 'MS': /^[7][9][0-9]{3}[0-9]{3}$/g,
29
+ 'MG': /^[3][0-9]{4}[0-9]{3}$/g,
30
+ 'MT': /^[7][8][8][0-9]{2}[0-9]{3}$/g,
31
+ 'AC': /^[6][9]{2}[0-9]{2}[0-9]{3}$/g,
32
+ 'AL': /^[5][7][0-9]{3}[0-9]{3}$/g,
33
+ 'AM': /^[6][9][0-8][0-9]{2}[0-9]{3}$/g,
34
+ 'AP': /^[6][89][9][0-9]{2}[0-9]{3}$/g,
35
+ 'BA': /^[4][0-8][0-9]{3}[0-9]{3}$/g,
36
+ 'CE': /^[6][0-3][0-9]{3}[0-9]{3}$/g,
37
+ 'DF': /^[7][0-3][0-6][0-9]{2}[0-9]{3}$/g,
38
+ 'ES': /^[2][9][0-9]{3}[0-9]{3}$/g,
39
+ 'GO': /^[7][3-6][7-9][0-9]{2}[0-9]{3}$/g,
40
+ 'MA': /^[6][5][0-9]{3}[0-9]{3}$/g,
41
+ 'PA': /^[6][6-8][0-8][0-9]{2}[0-9]{3}$/g,
42
+ 'PB': /^[5][8][0-9]{3}[0-9]{3}$/g,
43
+ 'PE': /^[5][0-6][0-9]{2}[0-9]{3}$/g,
44
+ 'PI': /^[6][4][0-9]{3}[0-9]{3}$/g,
45
+ 'PR': /^[8][0-7][0-9]{3}[0-9]{3}$/g,
46
+ 'RN': /^[5][9][0-9]{3}[0-9]{3}$/g,
47
+ 'RO': /^[7][8][9][0-9]{2}[0-9]{3}$/g,
48
+ 'RR': /^[6][9][3][0-9]{2}[0-9]{3}$/g,
49
+ 'RS': /^[9][0-9]{4}[0-9]{3}$/g,
50
+ 'SC': /^[8][89][0-9]{3}[0-9]{3}$/g,
51
+ 'SE': /^[4][9][0-9]{3}[0-9]{3}$/g,
52
+ 'TO': /^[7][7][0-9]{3}[0-9]{3}$/g,
53
+ };
54
+ export function validate_cep(cep) {
55
+ const cepClean = cep.replace(/[^\d]+/g, '');
56
+ const exp = /\d{2}\.\d{3}\-\d{3}/;
57
+ if (!exp.test(cep) && cepClean.length !== 8) {
58
+ return false;
59
+ }
60
+ return true;
61
+ }
62
+ export function cep_ranges(cep) {
63
+ cep = (cep.toString()).replace(/[^\d]+/g, '');
64
+ cep = parseInt(cep, 10);
65
+ const cepString = cep.toString();
66
+ let found;
67
+ for (let estado in CEPRange) {
68
+ const v = CEPRange[estado];
69
+ const r = new RegExp(v).test(cepString);
70
+ if (r) {
71
+ found = r;
72
+ return true;
73
+ }
74
+ }
75
+ if (!found) {
76
+ return false;
77
+ }
78
+ return true;
79
+ }
80
+ export function validate_certidao(value) {
81
+ let certidao = getAllDigits(value);
82
+ const format = /[0-9]{32}/;
83
+ if (!format.test(certidao)) {
84
+ return false;
85
+ }
86
+ let dvOriginal = certidao.substr(-2);
87
+ const dv = create_certidao(certidao);
88
+ return dv === dvOriginal;
89
+ }
90
+ /**
91
+ *
92
+ * @param chassi
93
+ */
94
+ export function validate_chassi(chassi) {
95
+ // 1 - Possuir o número "0" (ZERO) como 1º dígito.
96
+ const zeroNoPrimeiroDigito = /^0/;
97
+ if (zeroNoPrimeiroDigito.test(chassi)) {
98
+ return false;
99
+ }
100
+ // 2 - Possuir espaço no chassi
101
+ chassi = getAllWords(chassi); // espacoNoChassi
102
+ // 3 - Se, a partir do 4º dígito, houver uma repetição consecutiva, por mais de seis vezes, do mesmo dígito
103
+ // (alfabético ou numérico). Exemplos: 9BW11111119452687 e 9BWZZZ5268AAAAAAA.
104
+ const repeticaoMaisDe6Vezes = /^.{4,}([0-9A-Z])\1{5,}/;
105
+ if (repeticaoMaisDe6Vezes.test(chassi)) {
106
+ return false;
107
+ }
108
+ // 4 - Apresente os caracteres "i", "I", "o", "O", "q", "Q".
109
+ const caracteresiIoOqQ = /[iIoOqQ]/;
110
+ if (caracteresiIoOqQ.test(chassi)) {
111
+ return false;
112
+ }
113
+ // 5 - Os quatro últimos caracteres devem ser obrigatoriamente numéricos
114
+ const ultimos4Numericos = /[0-9]{4}$/;
115
+ if (!ultimos4Numericos.test(chassi)) {
116
+ return false;
117
+ }
118
+ // 6 - Se possuir número de dígitos diferente de 17 (alfanuméricos).
119
+ if (chassi.length > 17) {
120
+ return false;
121
+ }
122
+ return true;
123
+ }
124
+ function validate_cnae(number) {
125
+ if (!number)
126
+ return true;
127
+ return false;
128
+ }
129
+ /**
130
+ *
131
+ * II - Número do Espelho da CNH - segundo número de identificação nacional,
132
+ * que será formado por 9 (nove) caracteres mais 1 (um) dígito verificador de segurança,
133
+ * autorizado e controlado pelo DENATRAN, e identificará cada espelho de CNH expedida.
134
+ * https://www.gov.br/infraestrutura/pt-br/assuntos/transito/conteudo-denatran/resolucoes-contran
135
+ * https://www.gov.br/infraestrutura/pt-br/assuntos/transito/conteudo-contran/resolucoes/resolucao5112014.pdf
136
+ * 598: https://www.gov.br/infraestrutura/pt-br/assuntos/transito/conteudo-contran/resolucoes/resolucao59820162.pdf
137
+ * @param value
138
+ */
139
+ export function validate_cnhespelho(value) {
140
+ value = value.replace(/[^\d]/g, '');
141
+ if (value.length !== 10) {
142
+ return false;
143
+ }
144
+ let check = create_cnhespelho(value);
145
+ if (check === '0' || check === '1')
146
+ check = '0';
147
+ return value.substr(-1) == check;
148
+ }
149
+ /**
150
+ *
151
+ * III – Número do formulário RENACH - número de identificação
152
+ * estadual, documento de coleta de dados do candidato/condutor gerado a cada serviço,
153
+ * composto, obrigatoriamente, por 11 (onze) caracteres, sendo as duas primeiras
154
+ * posições formadas pela sigla da Unidade de Federação expedidora, facultada a
155
+ * utilização da última posição como dígito verificador de segurança.
156
+ * a) O número do formulário RENACH identificará a Unidade da
157
+ * Federação onde o condutor foi habilitado ou realizou alterações de dados no seu
158
+ * cadastro pela última vez.
159
+ * b) O Formulário RENACH que dá origem às informações na
160
+ * BINCO e autorização para a impressão da CNH deverá ficar arquivado em seg
161
+ * 598 - https://www.gov.br/infraestrutura/pt-br/assuntos/transito/conteudo-contran/resolucoes/resolucao59820162.pdf
162
+ * 718 - https://www.gov.br/infraestrutura/pt-br/assuntos/transito/conteudo-contran/resolucoes/resolucao7182017.pdf
163
+ * @param value
164
+ */
165
+ export function validate_renachestadual(value) {
166
+ const state = value.substr(0, 2).toLowerCase();
167
+ if (!ESTADOS_SIGLA.includes(state)) {
168
+ return false;
169
+ }
170
+ let digits = value.substr(2);
171
+ digits = digits.replace(/[^\d]/g, '');
172
+ if (digits.length !== 9) {
173
+ return false;
174
+ }
175
+ let check = create_renachestadual(value);
176
+ if (check === '0' || check === '1')
177
+ check = '0';
178
+ return value.substr(-1) == check;
179
+ }
180
+ export function validate_renachseguranca(value) {
181
+ value = value.replace(/[^\d]/g, '');
182
+ if (value.length !== 11) {
183
+ return false;
184
+ }
185
+ let check = create_renachseguranca(value);
186
+ return value.substr(-1) == check;
187
+ }
188
+ /**
189
+ * BINCO
190
+ * I – o primeiro número de identificação nacional – Registro Nacional,
191
+ * será gerado pelo sistema informatizado da Base Índice Nacional de Condutores –
192
+ * BINCO, composto de 9 (nove) caracteres mais 2 (dois) dígitos verificadores de
193
+ * segurança, sendo único para cada condutor e o acompanhará durante toda a
194
+ * sua existência como condutor, não sendo permitida a sua reutilização para
195
+ * outro condutor.
196
+ * @param value
197
+ * @returns
198
+ */
199
+ export function validate_cnh(value) {
200
+ value = value.toString().replace(/[^\d]/g, '');
201
+ if (value.length !== 11) {
202
+ return false;
203
+ }
204
+ let check = create_cnh(value);
205
+ return value.substr(-2) == check;
206
+ }
207
+ export function validate_cnpj(cnpj) {
208
+ // Valida se tem apenas número, - ou .
209
+ let precisaFicarVazio = cnpj.replace(/^[0-9./-]*$/gm, '');
210
+ if (precisaFicarVazio != '')
211
+ return false;
212
+ cnpj = cnpj.replace(/[^\d]+/g, '');
213
+ let tamanho = cnpj.length - 2;
214
+ const digitos = cnpj.substring(tamanho);
215
+ const resultados = create_cnpj(cnpj);
216
+ if (!resultados ||
217
+ resultados[0] !== parseInt(digitos.charAt(0), 10) ||
218
+ resultados[1] !== parseInt(digitos.charAt(1), 10)) {
219
+ return false;
220
+ }
221
+ return true;
222
+ }
223
+ function validate_contabanco(number) {
224
+ if (!number)
225
+ return false;
226
+ return true;
227
+ }
228
+ /**
229
+ * Referencia: http://www.receita.fazenda.gov.br/aplicacoes/atcta/funcoes.js
230
+ * @param strCPF
231
+ * @returns
232
+ */
233
+ export function validate_cpf(strCPF) {
234
+ // Valida se tem apenas número, - ou .
235
+ let precisaFicarVazio = strCPF.replace(/^[0-9.-]*$/gm, '');
236
+ if (precisaFicarVazio != '')
237
+ return false;
238
+ strCPF = strCPF.replace(/[^\d]+/g, '');
239
+ if (strCPF.length !== 11) {
240
+ return false;
241
+ }
242
+ //verifica se todos os numeros sao iguais
243
+ const expIguais = /^(?!.*(\d)\1{10}).*$/;
244
+ if (!strCPF.match(expIguais)) {
245
+ return false;
246
+ }
247
+ // valida digito verificados
248
+ const restos = create_cpf(strCPF);
249
+ if (!restos || restos != strCPF.substr(-2)) {
250
+ return false;
251
+ }
252
+ return true;
253
+ }
254
+ function validate_cpfcnpj(number) {
255
+ return validate_cpf(number) || validate_cnpj(number);
256
+ }
257
+ export function validate_cns(value) {
258
+ const cns = getAllDigits(value);
259
+ const definitivo = /[1-2][0-9]{10}00[0-1][0-9]/; // começam com 1 ou 2
260
+ const provisorio = /[7-9][0-9]{14}/; // começam com 7,8 ou 9
261
+ if (!definitivo.test(cns) && !provisorio.test(cns)) {
262
+ return false;
263
+ }
264
+ let soma = 0;
265
+ for (let i = 0; i < cns.length; i++) {
266
+ soma += parseInt(cns[i]) * (15 - i);
267
+ }
268
+ return soma % 11 == 0;
269
+ }
270
+ export function validate_cartaocredito(input) {
271
+ let value;
272
+ if (typeof input == 'string') {
273
+ value = getAllDigits(input);
274
+ }
275
+ else {
276
+ value = input.toString();
277
+ }
278
+ const number = value.slice(0, 16);
279
+ const mes = parseInt(value.slice(16, 18));
280
+ const ano = parseInt(value.slice(18, 20));
281
+ const cvv = value.slice(20, 23);
282
+ const d = new Date();
283
+ const anoAtual = (d.getFullYear() - 2000);
284
+ if (ano && ano < anoAtual) {
285
+ return false;
286
+ }
287
+ if (mes && mes < d.getMonth() + 1 && ano === anoAtual) {
288
+ return false;
289
+ }
290
+ if (cvv) {
291
+ const validcvv = validate_cvv(cvv);
292
+ if (validcvv.isValid === false) {
293
+ return false;
294
+ }
295
+ }
296
+ let found;
297
+ Object.keys(creditCardValidator).forEach(key => {
298
+ if (creditCardValidator[key].test(number)) {
299
+ found = key;
300
+ }
301
+ });
302
+ return !!found;
303
+ }
304
+ function validate_cvv(value, maxLength = 3) {
305
+ maxLength = maxLength instanceof Array ? maxLength : [maxLength];
306
+ if (typeof value !== 'string') {
307
+ return { isValid: false, isPotentiallyValid: false };
308
+ }
309
+ if (!/^\d*$/.test(value)) {
310
+ return { isValid: false, isPotentiallyValid: false };
311
+ }
312
+ var i = 0;
313
+ const max = value.length;
314
+ for (; i < maxLength.length; i++) {
315
+ if (max === maxLength[i]) {
316
+ return { isValid: true, isPotentiallyValid: true };
317
+ }
318
+ }
319
+ if (value.length < Math.min.apply(null, maxLength)) {
320
+ return { isValid: false, isPotentiallyValid: true };
321
+ }
322
+ var maximum = maxLength;
323
+ var i = 0;
324
+ for (; i < maxLength.length; i++) {
325
+ maximum = maxLength[i] > maximum ? maxLength[i] : maximum;
326
+ }
327
+ if (value.length > maximum) {
328
+ return { isValid: false, isPotentiallyValid: false };
329
+ }
330
+ return { isValid: true, isPotentiallyValid: true };
331
+ }
332
+ /**
333
+ * A hash of valid CC abbreviations and regular expressions
334
+ mc: Mastercard
335
+ ec: Eurocard
336
+ vi: Visa
337
+ ax: American Express
338
+ dc: Diners Club
339
+ bl: Carte Blanch
340
+ di: Discover
341
+ jcb: JCB
342
+ er: Enroute
343
+ */
344
+ export const creditCardValidator = {
345
+ 'mc': /5[1-5][0-9]{14}/,
346
+ 'ec': /5[1-5][0-9]{14}/,
347
+ 'vi': /4(?:[0-9]{12}|[0-9]{15})/,
348
+ 'ax': /3[47][0-9]{13}/,
349
+ 'dc': /3(?:0[0-5][0-9]{11}|[68][0-9]{12})/,
350
+ 'bl': /3(?:0[0-5][0-9]{11}|[68][0-9]{12})/,
351
+ 'di': /6011[0-9]{12}/,
352
+ 'jcb': /(?:3[0-9]{15}|(2131|1800)[0-9]{11})/,
353
+ 'er': /2(?:014|149)[0-9]{11}/
354
+ };
355
+ export function validate_currency(currency) {
356
+ if (typeof currency === 'number') {
357
+ return true;
358
+ }
359
+ const regex = /^(R\$|R\$ )?(-)?(?!0(\.)?00)\d{1,3}((\.)?\d{3})*(,\d\d)?$/g;
360
+ return regex.test(currency);
361
+ }
362
+ function validate_data(value) {
363
+ if (!value) {
364
+ return false;
365
+ }
366
+ const values = value.split('/');
367
+ if (values.length !== 3) {
368
+ return false;
369
+ }
370
+ const testData = new Date(values[1] + '/' + values[0] + '/' + values[2]);
371
+ if (!testData.getTime()) {
372
+ return false;
373
+ }
374
+ // if (parseInt(values[0]) > 31 || parseInt(values[1]) > 12 || parseInt(values[2]) < 1000) return false;
375
+ return true;
376
+ }
377
+ function validate_date(value) {
378
+ if (!value || value.length < 10) {
379
+ return false;
380
+ }
381
+ const testData = new Date(value);
382
+ if (!testData.getTime()) {
383
+ return false;
384
+ }
385
+ return true;
386
+ }
387
+ export function validate_datetime(time, options = {}) {
388
+ if (!time) {
389
+ return false;
390
+ }
391
+ time = time.toString();
392
+ const values = time.split(' ');
393
+ if (validate_date(values[0]) && validate_time(values[1], options)) {
394
+ return true;
395
+ }
396
+ return false;
397
+ }
398
+ export function validate_datahora(time, options = {}) {
399
+ if (!time) {
400
+ return false;
401
+ }
402
+ time = time.toString();
403
+ const values = time.split(' ');
404
+ if (validate_data(values[0]) && validate_time(values[1], options)) {
405
+ return true;
406
+ }
407
+ return false;
408
+ }
409
+ export function validate_ect(number) {
410
+ number = getAllDigits(number);
411
+ if (number.length > 9) {
412
+ return false;
413
+ }
414
+ const nodigit = number.substr(0, number.length - 1);
415
+ const dg = create_ect(nodigit);
416
+ if (parseInt(number[number.length - 1]) === dg) {
417
+ return true;
418
+ }
419
+ return false;
420
+ }
421
+ function validate_email(email) {
422
+ var re = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
423
+ return re.test(String(email).toLowerCase());
424
+ }
425
+ function validate_endereco(number) {
426
+ if (!number)
427
+ return false;
428
+ return true;
429
+ }
430
+ export function validate_number(number) {
431
+ if (number.split(',').length > 2) {
432
+ return false;
433
+ }
434
+ const regexDecimal = /^\d+(?:\.\d{0,2})$/;
435
+ const regex = /^[0-9]{0,10}[,]{1,1}[0-9]{0,4}/;
436
+ const regexNumero = /^[0-9]{0,10}/;
437
+ return regexDecimal.test(number) || regex.test(number) || regexNumero.test(number);
438
+ }
439
+ export function validate_porcentagem(porcentagem) {
440
+ porcentagem = porcentagem.split('%')[0];
441
+ return validate_number(porcentagem);
442
+ }
443
+ export function validate_processo(processo) {
444
+ let processoClean = processo.replace(/\./g, '');
445
+ processoClean = processoClean.replace(/\-/g, '');
446
+ // const exp = /\d{7}\-\d{2}\.\d{4}\.\w{3}\.\d{4}/;
447
+ // const expClean = /\d{13}\w{3}\d{4}/;
448
+ // if (!exp.test(processo) && !expClean.test(processoClean)) {
449
+ // return false;
450
+ // }
451
+ let processoValidado = create_processo(processo);
452
+ if (parseInt(processoClean) !== parseInt(getAllDigits(processoValidado))) {
453
+ return false;
454
+ }
455
+ return true;
456
+ }
457
+ export function validate_pispasep(number) {
458
+ number = getAllDigits(number);
459
+ let nis = fillString(number, 11, '0');
460
+ const regex = /\d{11}/; // /^\d{3}\.\d{5}\.\d{2}\-\d{1}$/;
461
+ if (!regex.test(nis)) {
462
+ return false;
463
+ }
464
+ const digit = create_pispasep(number);
465
+ return nis[10].toString() == digit.toString();
466
+ }
467
+ export function validate_renavam(renavam) {
468
+ let renavamClean = renavam.replace(/\./g, '');
469
+ renavamClean = renavamClean.replace(/\-/g, '');
470
+ const dv = create_renavam(renavam);
471
+ const tam = renavam.length;
472
+ const digitos = renavam.substr(tam - 1, 1);
473
+ if (digitos.charCodeAt(0) - 48 === dv) {
474
+ return true;
475
+ }
476
+ else {
477
+ return false;
478
+ }
479
+ }
480
+ export function validate_rg(rg) {
481
+ let rgClean = rg.replace(/\./g, '');
482
+ rgClean = rgClean.replace(/-/g, '');
483
+ const exp = /[a-z]{2}\-\d{2}\.\d{3}\.\d{3}/;
484
+ const expClean = /[a-z]{2}\d{8}/;
485
+ const state = rg.substr(0, 2).toUpperCase();
486
+ if (!exp.test(rg) && !expClean.test(rgClean) && !(state in CEPRange)) {
487
+ return false;
488
+ }
489
+ const validateState = RG[state];
490
+ if (validateState) {
491
+ return validateState(rg);
492
+ }
493
+ return true;
494
+ }
495
+ function validate_senha(value, options = {}) {
496
+ let finalregex = '^';
497
+ // ^ The password string will start this way
498
+ // (?=.*[a-z]) The string must contain at least 1 lowercase alphabetical character
499
+ if (options.lowercase !== false) {
500
+ finalregex = finalregex + '(?=.*[a-z])';
501
+ }
502
+ // (?=.*[A-Z]) The string must contain at least 1 uppercase alphabetical character
503
+ if (options.uppercase !== false) {
504
+ finalregex = finalregex + '(?=.*[A-Z])';
505
+ }
506
+ // (?=.*[0-9]) The string must contain at least 1 numeric character
507
+ if (options.numeric !== false) {
508
+ finalregex = finalregex + '(?=.*[0-9])';
509
+ }
510
+ // (?=.*[!@#\$%\^&\*]) The string must contain at least one special character, but we are escaping reserved RegEx characters to avoid conflict
511
+ if (options.numeric !== false) {
512
+ finalregex = finalregex + '(?=.*[!@#\\$%\\^&\\*])';
513
+ }
514
+ // (?=.{8,}) The string must be eight characters or longer
515
+ if (!options.size) {
516
+ options.size = 8;
517
+ }
518
+ finalregex = finalregex + `(?=.{${options.size},})`;
519
+ const regex = new RegExp(finalregex);
520
+ return regex.test(value);
521
+ }
522
+ function validate_site(value) {
523
+ var re = /(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&=]*)/g;
524
+ return re.test(String(value).toLowerCase());
525
+ }
526
+ export function validate_sped(sped) {
527
+ if (!sped)
528
+ return false;
529
+ return true;
530
+ }
531
+ export function validate_telefone(tel) {
532
+ const telClean = tel.replace(/[^\d]+/g, '');
533
+ tel = tel.replace(/_/g, '');
534
+ if (!(telClean.length === 10 || telClean.length === 11)) {
535
+ return false;
536
+ }
537
+ if (telClean[0] == 0 || telClean[2] == 0) {
538
+ return false;
539
+ }
540
+ return true;
541
+ }
542
+ export function validate_time(time, options = {}) {
543
+ const value = time.toString();
544
+ if (options.diario) {
545
+ const expression = /^([0-1]?[0-9]|2[0-4]):([0-5][0-9])(:[0-5][0-9])?$/;
546
+ return expression.test(value);
547
+ }
548
+ else {
549
+ const expression = /^([0-9]?[0-9]):([0-5][0-9])(:[0-5][0-9])?$/;
550
+ return expression.test(value);
551
+ }
552
+ }
553
+ export function validate_titulo(titulo) {
554
+ if (!titulo) {
555
+ return false;
556
+ }
557
+ const tituloClean = titulo.replace(/\./g, '');
558
+ const exp = /\d{4}\.\d{4}\.\d{4}/;
559
+ const expClean = /\d{4}\d{4}\d{4}/;
560
+ if (!exp.test(tituloClean) && !expClean.test(tituloClean)) {
561
+ return false;
562
+ }
563
+ const tam = tituloClean.length;
564
+ let dig;
565
+ try {
566
+ dig = create_titulo_atual(tituloClean);
567
+ // const noDv = tituloClean.substr(0, tam - 2);
568
+ // dig = create_titulo(noDv);
569
+ }
570
+ catch (e) {
571
+ return false;
572
+ }
573
+ const digitos = tituloClean.substr(tam - 2, 2);
574
+ if (digitos === dig) {
575
+ return true;
576
+ }
577
+ else {
578
+ return false;
579
+ }
580
+ }
581
+ function validate_username(value) {
582
+ var re = /^[a-z0-9_-]{3,16}$/igm;
583
+ return re.test(String(value).toLowerCase());
584
+ }
585
+ export const validateBr = {
586
+ aih: validate_aih,
587
+ cartaocredito: validate_cartaocredito,
588
+ celular: validate_celular,
589
+ cep: validate_cep,
590
+ certidao: validate_certidao,
591
+ chassi: validate_chassi,
592
+ cnae: validate_cnae,
593
+ cnh: validate_cnh,
594
+ cnhespelho: validate_cnhespelho,
595
+ renachestadual: validate_renachestadual,
596
+ renachseguranca: validate_renachseguranca,
597
+ cnpj: validate_cnpj,
598
+ cns: validate_cns,
599
+ contabanco: validate_contabanco,
600
+ cpf: validate_cpf,
601
+ cpfcnpj: validate_cpfcnpj,
602
+ currency: validate_currency,
603
+ data: validate_data,
604
+ date: validate_date,
605
+ datetime: validate_datetime,
606
+ datahora: validate_datahora,
607
+ ect: validate_ect,
608
+ email: validate_email,
609
+ endereco: validate_endereco,
610
+ inscricaoestadual: validate_inscricaoestadual,
611
+ iptu: validate_iptu,
612
+ number: validate_number,
613
+ porcentagem: validate_porcentagem,
614
+ pispasep: validate_pispasep,
615
+ placa: validate_placa,
616
+ processo: validate_processo,
617
+ renavam: validate_renavam,
618
+ rg: validate_rg,
619
+ senha: validate_senha,
620
+ site: validate_site,
621
+ sped: validate_sped,
622
+ telefone: validate_telefone,
623
+ time: validate_time,
624
+ titulo: validate_titulo,
625
+ username: validate_username
626
+ };
627
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBhLWxpYnJhcnktdWkvc3JjL2xpYi9jb3JlL2pzLWJyYXNpbC9zcmMvdmFsaWRhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRWhFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDekMsT0FBTyxFQUNMLFdBQVcsRUFBRSxVQUFVLEVBQ3ZCLGNBQWMsRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxxQkFBcUIsRUFBRSxzQkFBc0IsRUFDN0wsTUFBTSxVQUFVLENBQUM7QUFDbEIsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDdkMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUcxQyxNQUFNLFVBQVUsWUFBWSxDQUFDLEdBQVc7SUFDdEMsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDNUMsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sRUFBRSxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoQyxPQUFPLFVBQVUsS0FBSyxFQUFFLENBQUM7QUFDM0IsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxHQUFRO0lBQ3ZDLElB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dEFsbFdvcmRzIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBCaWdPYmplY3QgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgdmFsaWRhdGVfaW5zY3JpY2FvZXN0YWR1YWwgfSBmcm9tICcuL2luc2NyaWNhb2VzdGFkdWFsJztcbmltcG9ydCB7IHZhbGlkYXRlX3BsYWNhIH0gZnJvbSAnLi9wbGFjYSc7XG5pbXBvcnQge1xuICBjcmVhdGVfY25waiwgY3JlYXRlX2NwZixcbiAgY3JlYXRlX3JlbmF2YW0sIGNyZWF0ZV9lY3QsIGNyZWF0ZV9wcm9jZXNzbywgY3JlYXRlX3RpdHVsb19hdHVhbCwgY3JlYXRlX2NuaCwgY3JlYXRlX2NlcnRpZGFvLCBjcmVhdGVfYWloLCBjcmVhdGVfcGlzcGFzZXAsIGNyZWF0ZV9jbmhlc3BlbGhvLCBjcmVhdGVfcmVuYWNoZXN0YWR1YWwsIGNyZWF0ZV9yZW5hY2hzZWd1cmFuY2Fcbn0gZnJvbSAnLi9jcmVhdGUnO1xuaW1wb3J0IFJHIGZyb20gJy4vcmcnO1xuaW1wb3J0IHsgdmFsaWRhdGVfaXB0dSB9IGZyb20gJy4vaXB0dSc7XG5pbXBvcnQgeyBFU1RBRE9TX1NJR0xBIH0gZnJvbSAnLi9lc3RhZG9zJztcblxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVfYWloKGFpaDogc3RyaW5nKSB7XG4gIGNvbnN0IGFpaENsZWFuID0gYWloLnJlcGxhY2UoL1teXFxkXSsvZywgJycpO1xuICBjb25zdCBkdk9yaWdpbmFsID0gYWloQ2xlYW4uc3Vic3RyKC0xKTtcbiAgY29uc3QgZHYgPSBjcmVhdGVfYWloKGFpaENsZWFuKTtcbiAgcmV0dXJuIGR2T3JpZ2luYWwgPT09IGR2O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVfY2VsdWxhcihjZWw6IGFueSkge1xuICBsZXQgY2VsQ2xlYW4gPSBjZWwucmVwbGFjZSgvW15cXGRdKy9nLCAnJyk7XG4gIGNlbENsZWFuID0gY2VsQ2xlYW4ucmVwbGFjZSgvXy9nLCAnJyk7XG4gIGlmIChjZWxDbGVhbi5sZW5ndGggIT09IDExKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIGlmIChjZWxDbGVhblswXSA9PSAwIHx8IGNlbENsZWFuWzJdIDwgNSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn1cblxuZXhwb3J0IGNvbnN0IENFUFJhbmdlOiBCaWdPYmplY3Q8UmVnRXhwPiA9IHtcbiAgJ1NQJzogL14oWzFdWzAtOV17M318WzAxXVswLTldezR9KVswLTldezN9JC9nLFxuICAnUkonOiAvXlsyXVswLThdWzAtOV17M31bMC05XXszfSQvZyxcbiAgJ01TJzogL15bN11bOV1bMC05XXszfVswLTldezN9JC9nLFxuICAnTUcnOiAvXlszXVswLTldezR9WzAtOV17M30kL2csXG4gICdNVCc6IC9eWzddWzhdWzhdWzAtOV17Mn1bMC05XXszfSQvZyxcbiAgJ0FDJzogL15bNl1bOV17Mn1bMC05XXsyfVswLTldezN9JC9nLFxuICAnQUwnOiAvXls1XVs3XVswLTldezN9WzAtOV17M30kL2csXG4gICdBTSc6IC9eWzZdWzldWzAtOF1bMC05XXsyfVswLTldezN9JC9nLFxuICAnQVAnOiAvXls2XVs4OV1bOV1bMC05XXsyfVswLTldezN9JC9nLFxuICAnQkEnOiAvXls0XVswLThdWzAtOV17M31bMC05XXszfSQvZyxcbiAgJ0NFJzogL15bNl1bMC0zXVswLTldezN9WzAtOV17M30kL2csXG4gICdERic6IC9eWzddWzAtM11bMC02XVswLTldezJ9WzAtOV17M30kL2csXG4gICdFUyc6IC9eWzJdWzldWzAtOV17M31bMC05XXszfSQvZyxcbiAgJ0dPJzogL15bN11bMy02XVs3LTldWzAtOV17Mn1bMC05XXszfSQvZyxcbiAgJ01BJzogL15bNl1bNV1bMC05XXszfVswLTldezN9JC9nLFxuICAnUEEnOiAvXls2XVs2LThdWzAtOF1bMC05XXsyfVswLTldezN9JC9nLFxuICAnUEInOiAvXls1XVs4XVswLTldezN9WzAtOV17M30kL2csXG4gICdQRSc6IC9eWzVdWzAtNl1bMC05XXsyfVswLTldezN9JC9nLFxuICAnUEknOiAvXls2XVs0XVswLTldezN9WzAtOV17M30kL2csXG4gICdQUic6IC9eWzhdWzAtN11bMC05XXszfVswLTldezN9JC9nLFxuICAnUk4nOiAvXls1XVs5XVswLTldezN9WzAtOV17M30kL2csXG4gICdSTyc6IC9eWzddWzhdWzldWzAtOV17Mn1bMC05XXszfSQvZyxcbiAgJ1JSJzogL15bNl1bOV1bM11bMC05XXsyfVswLTldezN9JC9nLFxuICAnUlMnOiAvXls5XVswLTldezR9WzAtOV17M30kL2csXG4gICdTQyc6IC9eWzhdWzg5XVswLTldezN9WzAtOV17M30kL2csXG4gICdTRSc6IC9eWzRdWzldWzAtOV17M31bMC05XXszfSQvZyxcbiAgJ1RPJzogL15bN11bN11bMC05XXszfVswLTldezN9JC9nLFxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVfY2VwKGNlcDogc3RyaW5nKSB7XG4gIGNvbnN0IGNlcENsZWFuID0gY2VwLnJlcGxhY2UoL1teXFxkXSsvZywgJycpO1xuICBjb25zdCBleHAgPSAvXFxkezJ9XFwuXFxkezN9XFwtXFxkezN9LztcbiAgaWYgKCFleHAudGVzdChjZXApICYmIGNlcENsZWFuLmxlbmd0aCAhPT0gOCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn1cblxuXG5leHBvcnQgZnVuY3Rpb24gY2VwX3JhbmdlcyhjZXA6IHN0cmluZyB8IG51bWJlcikge1xuICBjZXAgPSAoY2VwLnRvU3RyaW5nKCkpLnJlcGxhY2UoL1teXFxkXSsvZywgJycpO1xuICBjZXAgPSBwYXJzZUludChjZXAsIDEwKTtcbiAgY29uc3QgY2VwU3RyaW5nOiBzdHJpbmcgPSBjZXAudG9TdHJpbmcoKTtcbiAgbGV0IGZvdW5kOiBhbnk7XG4gIGZvciAobGV0IGVzdGFkbyBpbiBDRVBSYW5nZSkge1xuICAgIGNvbnN0IHYgPSBDRVBSYW5nZVtlc3RhZG9dO1xuICAgIGNvbnN0IHIgPSBuZXcgUmVnRXhwKHYpLnRlc3QoY2VwU3RyaW5nKTtcbiAgICBpZiAocikge1xuICAgICAgZm91bmQgPSByO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgaWYgKCFmb3VuZCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn1cblxuXG5cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlX2NlcnRpZGFvKHZhbHVlOiBzdHJpbmcpIHtcbiAgbGV0IGNlcnRpZGFvID0gZ2V0QWxsRGlnaXRzKHZhbHVlKTtcblxuICBjb25zdCBmb3JtYXQgPSAvWzAtOV17MzJ9LztcbiAgaWYgKCFmb3JtYXQudGVzdChjZXJ0aWRhbykpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBsZXQgZHZPcmlnaW5hbCA9IGNlcnRpZGFvLnN1YnN0cigtMik7XG4gIGNvbnN0IGR2ID0gY3JlYXRlX2NlcnRpZGFvKGNlcnRpZGFvKTtcblxuICByZXR1cm4gZHYgPT09IGR2T3JpZ2luYWw7XG59XG5cblxuLyoqXG4gKiBcbiAqIEBwYXJhbSBjaGFzc2kgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZV9jaGFzc2koY2hhc3NpOiBzdHJpbmcpIHtcblxuICAvLyAxIC0gUG9zc3VpciBvIG7Dum1lcm8gXCIwXCIgKFpFUk8pIGNvbW8gMcK6IGTDrWdpdG8uXG4gIGNvbnN0IHplcm9Ob1ByaW1laXJvRGlnaXRvID0gL14wLztcbiAgaWYgKHplcm9Ob1ByaW1laXJvRGlnaXRvLnRlc3QoY2hhc3NpKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8vIDIgLSBQb3NzdWlyIGVzcGHDp28gbm8gY2hhc3NpXG4gIGNoYXNzaSA9IGdldEFsbFdvcmRzKGNoYXNzaSk7IC8vIGVzcGFjb05vQ2hhc3NpXG5cbiAgLy8gMyAtIFNlLCBhIHBhcnRpciBkbyA0wrogZMOtZ2l0bywgaG91dmVyIHVtYSByZXBldGnDp8OjbyBjb25zZWN1dGl2YSwgcG9yIG1haXMgZGUgc2VpcyB2ZXplcywgZG8gbWVzbW8gZMOtZ2l0byBcbiAgLy8gKGFsZmFiw6l0aWNvIG91IG51bcOpcmljbykuIEV4ZW1wbG9zOiA5QlcxMTExMTExOTQ1MjY4NyBlIDlCV1paWjUyNjhBQUFBQUFBLlxuICBjb25zdCByZXBldGljYW9NYWlzRGU2VmV6ZXMgPSAvXi57NCx9KFswLTlBLVpdKVxcMXs1LH0vXG4gIGlmIChyZXBldGljYW9NYWlzRGU2VmV6ZXMudGVzdChjaGFzc2kpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLy8gNCAtIEFwcmVzZW50ZSBvcyBjYXJhY3RlcmVzIFwiaVwiLCBcIklcIiwgXCJvXCIsIFwiT1wiLCBcInFcIiwgXCJRXCIuXG4gIGNvbnN0IGNhcmFjdGVyZXNpSW9PcVEgPSAvW2lJb09xUV0vO1xuICBpZiAoY2FyYWN0ZXJlc2lJb09xUS50ZXN0KGNoYXNzaSkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvLyA1IC0gT3MgcXVhdHJvIMO6bHRpbW9zIGNhcmFjdGVyZXMgZGV2ZW0gc2VyIG9icmlnYXRvcmlhbWVudGUgbnVtw6lyaWNvc1xuICBjb25zdCB1bHRpbW9zNE51bWVyaWNvcyA9IC9bMC05XXs0fSQvO1xuICBpZiAoIXVsdGltb3M0TnVtZXJpY29zLnRlc3QoY2hhc3NpKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8vIDYgLSBTZSBwb3NzdWlyIG7Dum1lcm8gZGUgZMOtZ2l0b3MgZGlmZXJlbnRlIGRlIDE3IChhbGZhbnVtw6lyaWNvcykuIFxuICBpZiAoY2hhc3NpLmxlbmd0aCA+IDE3KSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59XG5cbmZ1bmN0aW9uIHZhbGlkYXRlX2NuYWUobnVtYmVyOiBhbnkpIHtcbiAgaWYgKCFudW1iZXIpIHJldHVybiB0cnVlO1xuICByZXR1cm4gZmFsc2Vcbn1cblxuLyoqXG4gKiBcbiAqIElJIC0gTsO6bWVybyBkbyBFc3BlbGhvIGRhIENOSCAtIHNlZ3VuZG8gbsO6bWVybyBkZSBpZGVudGlmaWNhw6fDo28gbmFjaW9uYWwsIFxuICogcXVlIHNlcsOhIGZvcm1hZG8gcG9yIDkgKG5vdmUpIGNhcmFjdGVyZXMgbWFpcyAxICh1bSkgZMOtZ2l0byB2ZXJpZmljYWRvciBkZSBzZWd1cmFuw6dhLCBcbiAqIGF1dG9yaXphZG8gZSBjb250cm9sYWRvIHBlbG8gREVOQVRSQU4sIGUgaWRlbnRpZmljYXLDoSBjYWRhIGVzcGVsaG8gZGUgQ05IIGV4cGVkaWRhLlxuICogaHR0cHM6Ly93d3cuZ292LmJyL2luZnJhZXN0cnV0dXJhL3B0LWJyL2Fzc3VudG9zL3RyYW5zaXRvL2NvbnRldWRvLWRlbmF0cmFuL3Jlc29sdWNvZXMtY29udHJhblxuICogaHR0cHM6Ly93d3cuZ292LmJyL2luZnJhZXN0cnV0dXJhL3B0LWJyL2Fzc3VudG9zL3RyYW5zaXRvL2NvbnRldWRvLWNvbnRyYW4vcmVzb2x1Y29lcy9yZXNvbHVjYW81MTEyMDE0LnBkZlxuICogNTk4OiBodHRwczovL3d3dy5nb3YuYnIvaW5mcmFlc3RydXR1cmEvcHQtYnIvYXNzdW50b3MvdHJhbnNpdG8vY29udGV1ZG8tY29udHJhbi9yZXNvbHVjb2VzL3Jlc29sdWNhbzU5ODIwMTYyLnBkZlxuICogQHBhcmFtIHZhbHVlIFxuICovXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVfY25oZXNwZWxobyh2YWx1ZTogc3RyaW5nKSB7XG4gIHZhbHVlID0gdmFsdWUucmVwbGFjZSgvW15cXGRdL2csICcnKVxuICBpZiAodmFsdWUubGVuZ3RoICE9PSAxMCkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgbGV0IGNoZWNrID0gY3JlYXRlX2NuaGVzcGVsaG8odmFsdWUpXG4gIGlmIChjaGVjayA9PT0gJzAnIHx8IGNoZWNrID09PSAnMScpIGNoZWNrID0gJzAnXG4gIHJldHVybiB2YWx1ZS5zdWJzdHIoLTEpID09IGNoZWNrXG59XG5cbi8qKlxuICogXG4gKiBJSUkg4oCTIE7Dum1lcm8gZG8gZm9ybXVsw6FyaW8gUkVOQUNIIC0gbsO6bWVybyBkZSBpZGVudGlmaWNhw6fDo29cbiogZXN0YWR1YWwsIGRvY3VtZW50byBkZSBjb2xldGEgZGUgZGFkb3MgZG8gY2FuZGlkYXRvL2NvbmR1dG9yIGdlcmFkbyBhIGNhZGEgc2VydmnDp28sXG4qIGNvbXBvc3RvLCBvYnJpZ2F0b3JpYW1lbnRlLCBwb3IgMTEgKG9uemUpIGNhcmFjdGVyZXMsIHNlbmRvIGFzIGR1YXMgcHJpbWVpcmFzXG4qIHBvc2nDp8O1ZXMgZm9ybWFkYXMgcGVsYSBzaWdsYSBkYSBVbmlkYWRlIGRlIEZlZGVyYcOnw6NvIGV4cGVkaWRvcmEsIGZhY3VsdGFkYSBhXG4qIHV0aWxpemHDp8OjbyBkYSDDumx0aW1hIHBvc2nDp8OjbyBjb21vIGTDrWdpdG8gdmVyaWZpY2Fkb3IgZGUgc2VndXJhbsOnYS5cbiogIGEpIE8gbsO6bWVybyBkbyBmb3JtdWzDoXJpbyBSRU5BQ0ggaWRlbnRpZmljYXLDoSBhIFVuaWRhZGUgZGFcbiogRmVkZXJhw6fDo28gb25kZSBvIGNvbmR1dG9yIGZvaSBoYWJpbGl0YWRvIG91IHJlYWxpem91IGFsdGVyYcOnw7VlcyBkZSBkYWRvcyBubyBzZXVcbiogY2FkYXN0cm8gcGVsYSDDumx0aW1hIHZlei5cbiogIGIpIE8gRm9ybXVsw6FyaW8gUkVOQUNIIHF1ZSBkw6Egb3JpZ2VtIMOgcyBpbmZvcm1hw6fDtWVzIG5hXG4qIEJJTkNPIGUgYXV0b3JpemHDp8OjbyBwYXJhIGEgaW1wcmVzc8OjbyBkYSBDTkggZGV2ZXLDoSBmaWNhciBhcnF1aXZhZG8gZW0gc2VnXG4qIDU5OCAtIGh0dHBzOi8vd3d3Lmdvdi5ici9pbmZyYWVzdHJ1dHVyYS9wdC1ici9hc3N1bnRvcy90cmFuc2l0by9jb250ZXVkby1jb250cmFuL3Jlc29sdWNvZXMvcmVzb2x1Y2FvNTk4MjAxNjIucGRmXG4qIDcxOCAtIGh0dHBzOi8vd3d3Lmdvdi5ici9pbmZyYWVzdHJ1dHVyYS9wdC1ici9hc3N1bnRvcy90cmFuc2l0by9jb250ZXVkby1jb250cmFuL3Jlc29sdWNvZXMvcmVzb2x1Y2FvNzE4MjAxNy5wZGZcbiogQHBhcmFtIHZhbHVlIFxuICovXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVfcmVuYWNoZXN0YWR1YWwodmFsdWU6IHN0cmluZykge1xuICBjb25zdCBzdGF0ZSA9IHZhbHVlLnN1YnN0cigwLCAyKS50b0xvd2VyQ2FzZSgpXG4gIGlmICghRVNUQURPU19TSUdMQS5pbmNsdWRlcyhzdGF0ZSkpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIGxldCBkaWdpdHMgPSB2YWx1ZS5zdWJzdHIoMilcbiAgZGlnaXRzID0gZGlnaXRzLnJlcGxhY2UoL1teXFxkXS9nLCAnJyk7XG4gIGlmIChkaWdpdHMubGVuZ3RoICE9PSA5KSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIGxldCBjaGVjayA9IGNyZWF0ZV9yZW5hY2hlc3RhZHVhbCh2YWx1ZSlcbiAgaWYgKGNoZWNrID09PSAnMCcgfHwgY2hlY2sgPT09ICcxJykgY2hlY2sgPSAnMCdcbiAgcmV0dXJuIHZhbHVlLnN1YnN0cigtMSkgPT0gY2hlY2s7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZV9yZW5hY2hzZWd1cmFuY2EodmFsdWU6IHN0cmluZykge1xuICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoL1teXFxkXS9nLCAnJyk7XG5cbiAgaWYgKHZhbHVlLmxlbmd0aCAhPT0gMTEpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBsZXQgY2hlY2sgPSBjcmVhdGVfcmVuYWNoc2VndXJhbmNhKHZhbHVlKVxuICByZXR1cm4gdmFsdWUuc3Vic3RyKC0xKSA9PSBjaGVjaztcbn1cblxuLyoqXG4gKiBCSU5DT1xuICogSSDigJMgbyBwcmltZWlybyBuw7ptZXJvIGRlIGlkZW50aWZpY2HDp8OjbyBuYWNpb25hbCDigJMgUmVnaXN0cm8gTmFjaW9uYWwsIFxuICogc2Vyw6EgZ2VyYWRvIHBlbG8gc2lzdGVtYSBpbmZvcm1hdGl6YWRvIGRhIEJhc2Ugw41uZGljZSBOYWNpb25hbCBkZSBDb25kdXRvcmVzIOKAkyBcbiAqIEJJTkNPLCBjb21wb3N0byBkZSA5IChub3ZlKSBjYXJhY3RlcmVzIG1haXMgMiAoZG9pcykgZMOtZ2l0b3MgdmVyaWZpY2Fkb3JlcyBkZSBcbiAqIHNlZ3VyYW7Dp2EsIHNlbmRvIMO6bmljbyBwYXJhIGNhZGEgY29uZHV0b3IgZSBvIGFjb21wYW5oYXLDoSBkdXJhbnRlIHRvZGEgYSBcbiAqIHN1YSBleGlzdMOqbmNpYSBjb21vIGNvbmR1dG9yLCBuw6NvIHNlbmRvIHBlcm1pdGlkYSBhIHN1YSByZXV0aWxpemHDp8OjbyBwYXJhIFxuICogb3V0cm8gY29uZHV0b3IuXG4gKiBAcGFyYW0gdmFsdWUgXG4gKiBAcmV0dXJucyBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlX2NuaCh2YWx1ZTogc3RyaW5nKSB7XG4gIHZhbHVlID0gdmFsdWUudG9TdHJpbmcoKS5yZXBsYWNlKC9bXlxcZF0vZywgJycpO1xuICBpZiAodmFsdWUubGVuZ3RoICE9PSAxMSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICBsZXQgY2hlY2sgPSBjcmVhdGVfY25oKHZhbHVlKTtcbiAgcmV0dXJuIHZhbHVlLnN1YnN0cigtMikgPT0gY2hlY2s7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZV9jbnBqKGNucGo6IGFueSkge1xuICAvLyBWYWxpZGEgc2UgdGVtIGFwZW5hcyBuw7ptZXJvLCAtIG91IC5cbiAgbGV0IHByZWNpc2FGaWNhclZhemlvID0gY25wai5yZXBsYWNlKC9eWzAtOS4vLV0qJC9nbSwgJycpXG4gIGlmIChwcmVjaXNhRmljYXJWYXppbyAhPSAnJylcbiAgICByZXR1cm4gZmFsc2VcblxuICBjbnBqID0gY25wai5yZXBsYWNlKC9bXlxcZF0rL2csICcnKTtcbiAgbGV0IHRhbWFuaG8gPSBjbnBqLmxlbmd0aCAtIDJcbiAgY29uc3QgZGlnaXRvcyA9IGNucGouc3Vic3RyaW5nKHRhbWFuaG8pO1xuICBjb25zdCByZXN1bHRhZG9zID0gY3JlYXRlX2NucGooY25waik7XG4gIGlmICghcmVzdWx0YWRvcyB8fFxuICAgIHJlc3VsdGFkb3NbMF0gIT09IHBhcnNlSW50KGRpZ2l0b3MuY2hhckF0KDApLCAxMCkgfHxcbiAgICByZXN1bHRhZG9zWzFdICE9PSBwYXJzZUludChkaWdpdG9zLmNoYXJBdCgxKSwgMTApXG4gICkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59XG5cbmZ1bmN0aW9uIHZhbGlkYXRlX2NvbnRhYmFuY28obnVtYmVyOiBhbnkpIHtcbiAgaWYgKCFudW1iZXIpIHJldHVybiBmYWxzZVxuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBSZWZlcmVuY2lhOiBodHRwOi8vd3d3LnJlY2VpdGEuZmF6ZW5kYS5nb3YuYnIvYXBsaWNhY29lcy9hdGN0YS9mdW5jb2VzLmpzXG4gKiBAcGFyYW0gc3RyQ1BGIFxuICogQHJldHVybnMgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZV9jcGYoc3RyQ1BGOiBhbnkpIHtcbiAgLy8gVmFsaWRhIHNlIHRlbSBhcGVuYXMgbsO6bWVybywgLSBvdSAuXG4gIGxldCBwcmVjaXNhRmljYXJWYXppbyA9IHN0ckNQRi5yZXBsYWNlKC9eWzAtOS4tXSokL2dtLCAnJylcbiAgaWYgKHByZWNpc2FGaWNhclZhemlvICE9ICcnKVxuICAgIHJldHVybiBmYWxzZVxuXG4gIHN0ckNQRiA9IHN0ckNQRi5yZXBsYWNlKC9bXlxcZF0rL2csICcnKTtcbiAgaWYgKHN0ckNQRi5sZW5ndGggIT09IDExKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLy92ZXJpZmljYSBzZSB0b2RvcyBvcyBudW1lcm9zIHNhbyBpZ3VhaXNcbiAgY29uc3QgZXhwSWd1YWlzID0gL14oPyEuKihcXGQpXFwxezEwfSkuKiQvO1xuICBpZiAoIXN0ckNQRi5tYXRjaChleHBJZ3VhaXMpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLy8gdmFsaWRhIGRpZ2l0byB2ZXJpZmljYWRvc1xuICBjb25zdCByZXN0b3MgPSBjcmVhdGVfY3BmKHN0ckNQRik7XG4gIGlmICghcmVzdG9zIHx8IHJlc3RvcyAhPSBzdHJDUEYuc3Vic3RyKC0yKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn1cblxuZnVuY3Rpb24gdmFsaWRhdGVfY3BmY25waihudW1iZXI6IGFueSkge1xuICByZXR1cm4gdmFsaWRhdGVfY3BmKG51bWJlcikgfHwgdmFsaWRhdGVfY25waihudW1iZXIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVfY25zKHZhbHVlOiBzdHJpbmcpIHtcbiAgY29uc3QgY25zID0gZ2V0QWxsRGlnaXRzKHZhbHVlKTtcbiAgY29uc3QgZGVmaW5pdGl2byA9IC9bMS0yXVswLTldezEwfTAwWzAtMV1bMC05XS87IC8vIGNvbWXDp2FtIGNvbSAxIG91IDJcbiAgY29uc3QgcHJvdmlzb3JpbyA9IC9bNy05XVswLTldezE0fS87ICAgICAgICAgICAgICAvLyBjb21lw6dhbSBjb20gNyw4IG91IDlcbiAgaWYgKCFkZWZpbml0aXZvLnRlc3QoY25zKSAmJiAhcHJvdmlzb3Jpby50ZXN0KGNucykpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBsZXQgc29tYSA9IDA7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgY25zLmxlbmd0aDsgaSsrKSB7XG4gICAgc29tYSArPSBwYXJzZUludChjbnNbaV0pICogKDE1IC0gaSk7XG4gIH1cblxuICByZXR1cm4gc29tYSAlIDExID09IDA7XG59XG5cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlX2NhcnRhb2NyZWRpdG8oaW5wdXQ6IHN0cmluZyB8IG51bWJlcikge1xuICBsZXQgdmFsdWU6IHN0cmluZztcbiAgaWYgKHR5cGVvZiBpbnB1dCA9PSAnc3RyaW5nJykge1xuICAgIHZhbHVlID0gZ2V0QWxsRGlnaXRzKGlucHV0KTtcbiAgfSBlbHNlIHtcbiAgICB2YWx1ZSA9IGlucHV0LnRvU3RyaW5nKCk7XG4gIH1cblxuICBjb25zdCBudW1iZXIgPSB2YWx1ZS5zbGljZSgwLCAxNik7XG4gIGNvbnN0IG1lcyA9IHBhcnNlSW50KHZhbHVlLnNsaWNlKDE2LCAxOCkpO1xuICBjb25zdCBhbm8gPSBwYXJzZUludCh2YWx1ZS5zbGljZSgxOCwgMjApKTtcbiAgY29uc3QgY3Z2ID0gdmFsdWUuc2xpY2UoMjAsIDIzKTtcblxuICBjb25zdCBkID0gbmV3IERhdGUoKTtcbiAgY29uc3QgYW5vQXR1YWwgPSAoZC5nZXRGdWxsWWVhcigpIC0gMjAwMCk7XG4gIGlmIChhbm8gJiYgYW5vIDwgYW5vQXR1YWwpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgaWYgKG1lcyAmJiBtZXMgPCBkLmdldE1vbnRoKCkgKyAxICYmIGFubyA9PT0gYW5vQXR1YWwpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBpZiAoY3Z2KSB7XG4gICAgY29uc3QgdmFsaWRjdnYgPSB2YWxpZGF0ZV9jdnYoY3Z2KTtcbiAgICBpZiAodmFsaWRjdnYuaXNWYWxpZCA9PT0gZmFsc2UpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBsZXQgZm91bmQ7XG4gIE9iamVjdC5rZXlzKGNyZWRpdENhcmRWYWxpZGF0b3IpLmZvckVhY2goa2V5ID0+IHtcbiAgICBpZiAoY3JlZGl0Q2FyZFZhbGlkYXRvcltrZXldLnRlc3QobnVtYmVyKSkge1xuICAgICAgZm91bmQgPSBrZXk7XG4gICAgfVxuICB9KTtcbiAgcmV0dXJuICEhZm91bmQ7XG5cbn1cblxuZnVuY3Rpb24gdmFsaWRhdGVfY3Z2KHZhbHVlOiBzdHJpbmcgfCBhbnlbXSwgbWF4TGVuZ3RoOiBhbnkgPSAzKSB7XG4gIG1heExlbmd0aCA9IG1heExlbmd0aCBpbnN0YW5jZW9mIEFycmF5ID8gbWF4TGVuZ3RoIDogW21heExlbmd0aF07XG5cbiAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4geyBpc1ZhbGlkOiBmYWxzZSwgaXNQb3RlbnRpYWxseVZhbGlkOiBmYWxzZSB9O1xuICB9XG4gIGlmICghL15cXGQqJC8udGVzdCh2YWx1ZSkpIHtcbiAgICByZXR1cm4geyBpc1ZhbGlkOiBmYWxzZSwgaXNQb3RlbnRpYWxseVZhbGlkOiBmYWxzZSB9O1xuICB9XG5cbiAgdmFyIGkgPSAwO1xuICBjb25zdCBtYXggPSB2YWx1ZS5sZW5ndGg7XG4gIGZvciAoOyBpIDwgbWF4TGVuZ3RoLmxlbmd0aDsgaSsrKSB7XG4gICAgaWYgKG1heCA9PT0gbWF4TGVuZ3RoW2ldKSB7XG4gICAgICByZXR1cm4geyBpc1ZhbGlkOiB0cnVlLCBpc1BvdGVudGlhbGx5VmFsaWQ6IHRydWUgfTtcbiAgICB9XG4gIH1cblxuICBpZiAodmFsdWUubGVuZ3RoIDwgTWF0aC5taW4uYXBwbHkobnVsbCwgbWF4TGVuZ3RoKSkge1xuICAgIHJldHVybiB7IGlzVmFsaWQ6IGZhbHNlLCBpc1BvdGVudGlhbGx5VmFsaWQ6IHRydWUgfTtcbiAgfVxuXG4gIHZhciBtYXhpbXVtID0gbWF4TGVuZ3RoO1xuICB2YXIgaSA9IDA7XG5cbiAgZm9yICg7IGkgPCBtYXhMZW5ndGgubGVuZ3RoOyBpKyspIHtcbiAgICBtYXhpbXVtID0gbWF4TGVuZ3RoW2ldID4gbWF4aW11bSA/IG1heExlbmd0aFtpXSA6IG1heGltdW07XG4gIH1cblxuICBpZiAodmFsdWUubGVuZ3RoID4gbWF4aW11bSkge1xuICAgIHJldHVybiB7IGlzVmFsaWQ6IGZhbHNlLCBpc1BvdGVudGlhbGx5VmFsaWQ6IGZhbHNlIH07XG4gIH1cblxuICByZXR1cm4geyBpc1ZhbGlkOiB0cnVlLCBpc1BvdGVudGlhbGx5VmFsaWQ6IHRydWUgfTtcbn1cblxuXG4vKipcbiAqICAgICBBIGhhc2ggb2YgdmFsaWQgQ0MgYWJicmV2aWF0aW9ucyBhbmQgcmVndWxhciBleHByZXNzaW9uc1xuICAgIG1jOiBNYXN0ZXJjYXJkXG4gICAgZWM6IEV1cm9jYXJkXG4gICAgdmk6IFZpc2FcbiAgICBheDogQW1lcmljYW4gRXhwcmVzc1xuICAgIGRjOiBEaW5lcnMgQ2x1YlxuICAgIGJsOiBDYXJ0ZSBCbGFuY2hcbiAgICBkaTogRGlzY292ZXJcbiAgICBqY2I6IEpDQlxuICAgIGVyOiBFbnJvdXRlXG4qL1xuZXhwb3J0IGNvbnN0IGNyZWRpdENhcmRWYWxpZGF0b3I6IEJpZ09iamVjdDxSZWdFeHA+ID0ge1xuICAnbWMnOiAvNVsxLTVdWzAtOV17MTR9LyxcbiAgJ2VjJzogLzVbMS01XVswLTldezE0fS8sXG4gICd2aSc6IC80KD86WzAtOV17MTJ9fFswLTldezE1fSkvLFxuICAnYXgnOiAvM1s0N11bMC05XXsxM30vLFxuICAnZGMnOiAvMyg/OjBbMC01XVswLTldezExfXxbNjhdWzAtOV17MTJ9KS8sXG4gICdibCc6IC8zKD86MFswLTVdWzAtOV17MTF9fFs2OF1bMC05XXsxMn0pLyxcbiAgJ2RpJzogLzYwMTFbMC05XXsxMn0vLFxuICAnamNiJzogLyg/OjNbMC05XXsxNX18KDIxMzF8MTgwMClbMC05XXsxMX0pLyxcbiAgJ2VyJzogLzIoPzowMTR8MTQ5KVswLTldezExfS9cbn07XG5cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlX2N1cnJlbmN5KGN1cnJlbmN5OiBzdHJpbmcgfCBudW1iZXIpIHtcbiAgaWYgKHR5cGVvZiBjdXJyZW5jeSA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICBjb25zdCByZWdleCA9IC9eKFJcXCR8UlxcJCApPygtKT8oPyEwKFxcLik/MDApXFxkezEsM30oKFxcLik/XFxkezN9KSooLFxcZFxcZCk/JC9nO1xuICByZXR1cm4gcmVnZXgudGVzdChjdXJyZW5jeSk7XG59XG5cblxuZnVuY3Rpb24gdmFsaWRhdGVfZGF0YSh2YWx1ZTogc3RyaW5nIHwgbnVsbCkge1xuICBpZiAoIXZhbHVlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIGNvbnN0IHZhbHVlcyA9IHZhbHVlLnNwbGl0KCcvJyk7XG4gIGlmICh2YWx1ZXMubGVuZ3RoICE9PSAzKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIGNvbnN0IHRlc3REYXRhOiBEYXRlID0gbmV3IERhdGUodmFsdWVzWzFdICsgJy8nICsgdmFsdWVzWzBdICsgJy8nICsgdmFsdWVzWzJdKVxuICBpZiAoIXRlc3REYXRhLmdldFRpbWUoKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICAvLyBpZiAocGFyc2VJbnQodmFsdWVzWzBdKSA+IDMxIHx8IHBhcnNlSW50KHZhbHVlc1sxXSkgPiAxMiB8fCBwYXJzZUludCh2YWx1ZXNbMl0pIDwgMTAwMCkgcmV0dXJuIGZhbHNlO1xuICByZXR1cm4gdHJ1ZTtcbn1cblxuXG5mdW5jdGlvbiB2YWxpZGF0ZV9kYXRlKHZhbHVlOiBzdHJpbmcgfCBudWxsKSB7XG4gIGlmICghdmFsdWUgfHwgdmFsdWUubGVuZ3RoIDwgMTApIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgY29uc3QgdGVzdERhdGE6IERhdGUgPSBuZXcgRGF0ZSh2YWx1ZSlcbiAgaWYgKCF0ZXN0RGF0YS5nZXRUaW1lKCkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgcmV0dXJuIHRydWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZV9kYXRldGltZSh0aW1lOiBzdHJpbmcgfCBudW1iZXIsIG9wdGlvbnM6IGFueSA9IHt9KSB7XG4gIGlmICghdGltZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICB0aW1lID0gdGltZS50b1N0cmluZygpO1xuICBjb25zdCB2YWx1ZXMgPSB0aW1lLnNwbGl0KCcgJyk7XG4gIGlmICh2YWxpZGF0ZV9kYXRlKHZhbHVlc1swXSkgJiYgdmFsaWRhdGVfdGltZSh2YWx1ZXNbMV0sIG9wdGlvbnMpKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZV9kYXRhaG9yYSh0aW1lOiBzdHJpbmcgfCBudW1iZXIsIG9wdGlvbnM6IGFueSA9IHt9KSB7XG4gIGlmICghdGltZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICB0aW1lID0gdGltZS50b1N0cmluZygpO1xuICBjb25zdCB2YWx1ZXMgPSB0aW1lLnNwbGl0KCcgJyk7XG4gIGlmICh2YWxpZGF0ZV9kYXRhKHZhbHVlc1swXSkgJiYgdmFsaWRhdGVfdGltZSh2YWx1ZXNbMV0sIG9wdGlvbnMpKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVfZWN0KG51bWJlcjogc3RyaW5nKSB7XG4gIG51bWJlciA9IGdldEFsbERpZ2l0cyhudW1iZXIpO1xuICBpZiAobnVtYmVyLmxlbmd0aCA+IDkpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIGNvbnN0IG5vZGlnaXQgPSBudW1iZXIuc3Vic3RyKDAsIG51bWJlci5sZW5ndGggLSAxKTtcbiAgY29uc3QgZGcgPSBjcmVhdGVfZWN0KG5vZGlnaXQpO1xuXG4gIGlmIChwYXJzZUludChudW1iZXJbbnVtYmVyLmxlbmd0aCAtIDFdKSA9PT0gZGcpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICByZXR1cm4gZmFsc2U7XG59XG5cbmZ1bmN0aW9uIHZhbGlkYXRlX2VtYWlsKGVtYWlsOiBhbnkpIHtcbiAgdmFyIHJlID0gL15bXlxcc0BdK0BbXlxcc0BdK1xcLlteXFxzQF0rJC9cbiAgcmV0dXJuIHJlLnRlc3QoU3RyaW5nKGVtYWlsKS50b0xvd2VyQ2FzZSgpKVxufVxuXG5mdW5jdGlvbiB2YWxpZGF0ZV9lbmRlcmVjbyhudW1iZXI6IGFueSkge1xuICBpZiAoIW51bWJlcikgcmV0dXJuIGZhbHNlXG4gIHJldHVybiB0cnVlXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZV9udW1iZXIobnVtYmVyOiBzdHJpbmcpIHtcbiAgaWYgKG51bWJlci5zcGxpdCgnLCcpLmxlbmd0aCA+IDIpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuICBjb25zdCByZWdleERlY2ltYWwgPSAvXlxcZCsoPzpcXC5cXGR7MCwyfSkkLztcbiAgY29uc3QgcmVnZXggPSAvXlswLTldezAsMTB9WyxdezEsMX1bMC05XXswLDR9LztcbiAgY29uc3QgcmVnZXhOdW1lcm8gPSAvXlswLTldezAsMTB9LztcbiAgcmV0dXJuIHJlZ2V4RGVjaW1hbC50ZXN0KG51bWJlcikgfHwgcmVnZXgudGVzdChudW1iZXIpIHx8IHJlZ2V4TnVtZXJvLnRlc3QobnVtYmVyKTtcbn1cblxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVfcG9yY2VudGFnZW0ocG9yY2VudGFnZW06IHN0cmluZykge1xuICBwb3JjZW50YWdlbSA9IHBvcmNlbnRhZ2VtLnNwbGl0KCclJylbMF07XG4gIHJldHVybiB2YWxpZGF0ZV9udW1iZXIocG9yY2VudGFnZW0pO1xufVxuXG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZV9wcm9jZXNzbyhwcm9jZXNzbzogYW55KSB7XG4gIGxldCBwcm9jZXNzb0NsZWFuID0gcHJvY2Vzc28ucmVwbGFjZSgvXFwuL2csICcnKTtcbiAgcHJvY2Vzc29DbGVhbiA9IHByb2Nlc3NvQ2xlYW4ucmVwbGFjZSgvXFwtL2csICcnKTtcbiAgLy8gY29uc3QgZXhwID0gL1xcZHs3fVxcLVxcZHsyfVxcLlxcZHs0fVxcLlxcd3szfVxcLlxcZHs0fS87XG4gIC8vIGNvbnN0IGV4cENsZWFuID0gL1xcZHsxM31cXHd7M31cXGR7NH0vO1xuICAvLyBpZiAoIWV4cC50ZXN0KHByb2Nlc3NvKSAmJiAhZXhwQ2xlYW4udGVzdChwcm9jZXNzb0NsZWFuKSkge1xuICAvLyAgIHJldHVybiBmYWxzZTtcbiAgLy8gfVxuICBsZXQgcHJvY2Vzc29WYWxpZGFkbyA9IGNyZWF0ZV9wcm9jZXNzbyhwcm9jZXNzbyk7XG4gIGlmIChwYXJzZUludChwcm9jZXNzb0NsZWFuKSAhPT0gcGFyc2VJbnQoZ2V0QWxsRGlnaXRzKHByb2Nlc3NvVmFsaWRhZG8pKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn1cblxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVfcGlzcGFzZXAobnVtYmVyOiBzdHJpbmcpIHtcbiAgbnVtYmVyID0gZ2V0QWxsRGlnaXRzKG51bWJlcik7XG4gIGxldCBuaXMgPSBmaWxsU3RyaW5nKG51bWJlciwgMTEsICcwJyk7XG4gIGNvbnN0IHJlZ2V4ID0gL1xcZHsxMX0vOyAvLyAvXlxcZHszfVxcLlxcZHs1fVxcLlxcZHsyfVxcLVxcZHsxfSQvO1xuICBpZiAoIXJlZ2V4LnRlc3QobmlzKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGRpZ2l0ID0gY3JlYXRlX3Bpc3Bhc2VwKG51bWJlcik7XG4gIHJldHVybiBuaXNbMTBdLnRvU3RyaW5nKCkgPT0gZGlnaXQudG9TdHJpbmcoKTtcbn1cblxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVfcmVuYXZhbShyZW5hdmFtOiBhbnkpIHtcbiAgbGV0IHJlbmF2YW1DbGVhbiA9IHJlbmF2YW0ucmVwbGFjZSgvXFwuL2csICcnKTtcbiAgcmVuYXZhbUNsZWFuID0gcmVuYXZhbUNsZWFuLnJlcGxhY2UoL1xcLS9nLCAnJyk7XG4gIGNvbnN0IGR2ID0gY3JlYXRlX3JlbmF2YW0ocmVuYXZhbSk7XG4gIGNvbnN0IHRhbSA9IHJlbmF2YW0ubGVuZ3RoO1xuICBjb25zdCBkaWdpdG9zID0gcmVuYXZhbS5zdWJzdHIodGFtIC0gMSwgMSk7XG4gIGlmIChkaWdpdG9zLmNoYXJDb2RlQXQoMCkgLSA0OCA9PT0gZHYpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuXG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZV9yZyhyZzogc3RyaW5nKSB7XG4gIGxldCByZ0NsZWFuID0gcmcucmVwbGFjZSgvXFwuL2csICcnKTtcbiAgcmdDbGVhbiA9IHJnQ2xlYW4ucmVwbGFjZSgvLS9nLCAnJyk7XG4gIGNvbnN0IGV4cCA9IC9bYS16XXsyfVxcLVxcZHsyfVxcLlxcZHszfVxcLlxcZHszfS87XG4gIGNvbnN0IGV4cENsZWFuID0gL1thLXpdezJ9XFxkezh9LztcbiAgY29uc3Qgc3RhdGUgPSByZy5zdWJzdHIoMCwgMikudG9VcHBlckNhc2UoKTtcblxuICBpZiAoIWV4cC50ZXN0KHJnKSAmJiAhZXhwQ2xlYW4udGVzdChyZ0NsZWFuKSAmJiAhKHN0YXRlIGluIENFUFJhbmdlKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICBjb25zdCB2YWxpZGF0ZVN0YXRlID0gUkdbc3RhdGVdO1xuICBpZiAodmFsaWRhdGVTdGF0ZSkge1xuICAgIHJldHVybiB2YWxpZGF0ZVN0YXRlKHJnKTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn1cblxuZnVuY3Rpb24gdmFsaWRhdGVfc2VuaGEodmFsdWU6IHN0cmluZywgb3B0aW9uczogYW55ID0ge30pIHtcbiAgbGV0IGZpbmFscmVnZXggPSAnXic7XG4gIC8vICAgXlx0VGhlIHBhc3N3b3JkIHN0cmluZyB3aWxsIHN0YXJ0IHRoaXMgd2F5XG4gIC8vICg/PS4qW2Etel0pXHRUaGUgc3RyaW5nIG11c3QgY29udGFpbiBhdCBsZWFzdCAxIGxvd2VyY2FzZSBhbHBoYWJldGljYWwgY2hhcmFjdGVyXG4gIGlmIChvcHRpb25zLmxvd2VyY2FzZSAhPT0gZmFsc2UpIHtcbiAgICBmaW5hbHJlZ2V4ID0gZmluYWxyZWdleCArICcoPz0uKlthLXpdKSc7XG4gIH1cbiAgLy8gKD89LipbQS1aXSlcdFRoZSBzdHJpbmcgbXVzdCBjb250YWluIGF0IGxlYXN0IDEgdXBwZXJjYXNlIGFscGhhYmV0aWNhbCBjaGFyYWN0ZXJcbiAgaWYgKG9wdGlvbnMudXBwZXJjYXNlICE9PSBmYWxzZSkge1xuICAgIGZpbmFscmVnZXggPSBmaW5hbHJlZ2V4ICsgJyg/PS4qW0EtWl0pJztcbiAgfVxuICAvLyAoPz0uKlswLTldKVx0VGhlIHN0cmluZyBtdXN0IGNvbnRhaW4gYXQgbGVhc3QgMSBudW1lcmljIGNoYXJhY3RlclxuICBpZiAob3B0aW9ucy5udW1lcmljICE9PSBmYWxzZSkge1xuICAgIGZpbmFscmVnZXggPSBmaW5hbHJlZ2V4ICsgJyg/PS4qWzAtOV0pJztcbiAgfVxuICAvLyAoPz0uKlshQCNcXCQlXFxeJlxcKl0pXHRUaGUgc3RyaW5nIG11c3QgY29udGFpbiBhdCBsZWFzdCBvbmUgc3BlY2lhbCBjaGFyYWN0ZXIsIGJ1dCB3ZSBhcmUgZXNjYXBpbmcgcmVzZXJ2ZWQgUmVnRXggY2hhcmFjdGVycyB0byBhdm9pZCBjb25mbGljdFxuICBpZiAob3B0aW9ucy5udW1lcmljICE9PSBmYWxzZSkge1xuICAgIGZpbmFscmVnZXggPSBmaW5hbHJlZ2V4ICsgJyg/PS4qWyFAI1xcXFwkJVxcXFxeJlxcXFwqXSknO1xuICB9XG4gIC8vICg/PS57OCx9KVx0VGhlIHN0cmluZyBtdXN0IGJlIGVpZ2h0IGNoYXJhY3RlcnMgb3IgbG9uZ2VyXG4gIGlmICghb3B0aW9ucy5zaXplKSB7XG4gICAgb3B0aW9ucy5zaXplID0gODtcbiAgfVxuXG4gIGZpbmFscmVnZXggPSBmaW5hbHJlZ2V4ICsgYCg/PS57JHtvcHRpb25zLnNpemV9LH0pYDtcblxuICBjb25zdCByZWdleCA9IG5ldyBSZWdFeHAoZmluYWxyZWdleCk7XG4gIHJldHVybiByZWdleC50ZXN0KHZhbHVlKTtcbn1cblxuXG5mdW5jdGlvbiB2YWxpZGF0ZV9zaXRlKHZhbHVlOiBhbnkpIHtcbiAgdmFyIHJlID0gLyhodHRwKHMpPzpcXC9cXC8uKT8od3d3XFwuKT9bLWEtekEtWjAtOUA6JS5fXFwrfiM9XXsyLDI1Nn1cXC5bYS16XXsyLDZ9XFxiKFstYS16QS1aMC05QDolX1xcKy5+Iz8mPV0qKS9nO1xuICByZXR1cm4gcmUudGVzdChTdHJpbmcodmFsdWUpLnRvTG93ZXJDYXNlKCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVfc3BlZChzcGVkOiBzdHJpbmcpIHtcbiAgaWYgKCFzcGVkKSByZXR1cm4gZmFsc2VcbiAgcmV0dXJuIHRydWVcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlX3RlbGVmb25lKHRlbDogYW55KSB7XG4gIGNvbnN0IHRlbENsZWFuID0gdGVsLnJlcGxhY2UoL1teXFxkXSsvZywgJycpO1xuICB0ZWwgPSB0ZWwucmVwbGFjZSgvXy9nLCAnJyk7XG4gIGlmICghKHRlbENsZWFuLmxlbmd0aCA9PT0gMTAgfHwgdGVsQ2xlYW4ubGVuZ3RoID09PSAxMSkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgaWYgKHRlbENsZWFuWzBdID09IDAgfHwgdGVsQ2xlYW5bMl0gPT0gMCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlX3RpbWUodGltZTogc3RyaW5nIHwgbnVtYmVyLCBvcHRpb25zOiBhbnkgPSB7fSkge1xuICBjb25zdCB2YWx1ZSA9IHRpbWUudG9TdHJpbmcoKTtcbiAgaWYgKG9wdGlvbnMuZGlhcmlvKSB7XG4gICAgY29uc3QgZXhwcmVzc2lvbiA9IC9eKFswLTFdP1swLTldfDJbMC00XSk6KFswLTVdWzAtOV0pKDpbMC01XVswLTldKT8kLztcbiAgICByZXR1cm4gZXhwcmVzc2lvbi50ZXN0KHZhbHVlKTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBleHByZXNzaW9uID0gL14oWzAtOV0/WzAtOV0pOihbMC01XVswLTldKSg6WzAtNV1bMC05XSk/JC87XG4gICAgcmV0dXJuIGV4cHJlc3Npb24udGVzdCh2YWx1ZSk7XG4gIH1cblxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVfdGl0dWxvKHRpdHVsbzogYW55KSB7XG4gIGlmICghdGl0dWxvKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIGNvbnN0IHRpdHVsb0NsZWFuID0gdGl0dWxvLnJlcGxhY2UoL1xcLi9nLCAnJyk7XG4gIGNvbnN0IGV4cCA9IC9cXGR7NH1cXC5cXGR7NH1cXC5cXGR7NH0vO1xuICBjb25zdCBleHBDbGVhbiA9IC9cXGR7NH1cXGR7NH1cXGR7NH0vO1xuICBpZiAoIWV4cC50ZXN0KHRpdHVsb0NsZWFuKSAmJiAhZXhwQ2xlYW4udGVzdCh0aXR1bG9DbGVhbikpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCB0YW0gPSB0aXR1bG9DbGVhbi5sZW5ndGg7XG5cbiAgbGV0IGRpZztcbiAgdHJ5IHtcbiAgICBkaWcgPSBjcmVhdGVfdGl0dWxvX2F0dWFsKHRpdHVsb0NsZWFuKTtcbiAgICAvLyBjb25zdCBub0R2ID0gdGl0dWxvQ2xlYW4uc3Vic3RyKDAsIHRhbSAtIDIpO1xuICAgIC8vIGRpZyA9IGNyZWF0ZV90aXR1bG8obm9Edik7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCBkaWdpdG9zID0gdGl0dWxvQ2xlYW4uc3Vic3RyKHRhbSAtIDIsIDIpO1xuICBpZiAoZGlnaXRvcyA9PT0gZGlnKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbmZ1bmN0aW9uIHZhbGlkYXRlX3VzZXJuYW1lKHZhbHVlOiBhbnkpIHtcbiAgdmFyIHJlID0gL15bYS16MC05Xy1dezMsMTZ9JC9pZ207XG4gIHJldHVybiByZS50ZXN0KFN0cmluZyh2YWx1ZSkudG9Mb3dlckNhc2UoKSk7XG59XG5cbmV4cG9ydCBjb25zdCB2YWxpZGF0ZUJyOiBCaWdPYmplY3Q8RnVuY3Rpb24+ID0ge1xuICBhaWg6IHZhbGlkYXRlX2FpaCxcbiAgY2FydGFvY3JlZGl0bzogdmFsaWRhdGVfY2FydGFvY3JlZGl0byxcbiAgY2VsdWxhcjogdmFsaWRhdGVfY2VsdWxhcixcbiAgY2VwOiB2YWxpZGF0ZV9jZXAsXG4gIGNlcnRpZGFvOiB2YWxpZGF0ZV9jZXJ0aWRhbyxcbiAgY2hhc3NpOiB2YWxpZGF0ZV9jaGFzc2ksXG4gIGNuYWU6IHZhbGlkYXRlX2NuYWUsXG4gIGNuaDogdmFsaWRhdGVfY25oLFxuICBjbmhlc3BlbGhvOiB2YWxpZGF0ZV9jbmhlc3BlbGhvLFxuICByZW5hY2hlc3RhZHVhbDogdmFsaWRhdGVfcmVuYWNoZXN0YWR1YWwsXG4gIHJlbmFjaHNlZ3VyYW5jYTogdmFsaWRhdGVfcmVuYWNoc2VndXJhbmNhLFxuICBjbnBqOiB2YWxpZGF0ZV9jbnBqLFxuICBjbnM6IHZhbGlkYXRlX2NucyxcbiAgY29udGFiYW5jbzogdmFsaWRhdGVfY29udGFiYW5jbyxcbiAgY3BmOiB2YWxpZGF0ZV9jcGYsXG4gIGNwZmNucGo6IHZhbGlkYXRlX2NwZmNucGosXG4gIGN1cnJlbmN5OiB2YWxpZGF0ZV9jdXJyZW5jeSxcbiAgZGF0YTogdmFsaWRhdGVfZGF0YSxcbiAgZGF0ZTogdmFsaWRhdGVfZGF0ZSxcbiAgZGF0ZXRpbWU6IHZhbGlkYXRlX2RhdGV0aW1lLFxuICBkYXRhaG9yYTogdmFsaWRhdGVfZGF0YWhvcmEsXG4gIGVjdDogdmFsaWRhdGVfZWN0LFxuICBlbWFpbDogdmFsaWRhdGVfZW1haWwsXG4gIGVuZGVyZWNvOiB2YWxpZGF0ZV9lbmRlcmVjbyxcbiAgaW5zY3JpY2FvZXN0YWR1YWw6IHZhbGlkYXRlX2luc2NyaWNhb2VzdGFkdWFsLFxuICBpcHR1OiB2YWxpZGF0ZV9pcHR1LFxuICBudW1iZXI6IHZhbGlkYXRlX251bWJlcixcbiAgcG9yY2VudGFnZW06IHZhbGlkYXRlX3BvcmNlbnRhZ2VtLFxuICBwaXNwYXNlcDogdmFsaWRhdGVfcGlzcGFzZXAsXG4gIHBsYWNhOiB2YWxpZGF0ZV9wbGFjYSxcbiAgcHJvY2Vzc286IHZhbGlkYXRlX3Byb2Nlc3NvLFxuICByZW5hdmFtOiB2YWxpZGF0ZV9yZW5hdmFtLFxuICByZzogdmFsaWRhdGVfcmcsXG4gIHNlbmhhOiB2YWxpZGF0ZV9zZW5oYSxcbiAgc2l0ZTogdmFsaWRhdGVfc2l0ZSxcbiAgc3BlZDogdmFsaWRhdGVfc3BlZCxcbiAgdGVsZWZvbmU6IHZhbGlkYXRlX3RlbGVmb25lLFxuICB0aW1lOiB2YWxpZGF0ZV90aW1lLFxuICB0aXR1bG86IHZhbGlkYXRlX3RpdHVsbyxcbiAgdXNlcm5hbWU6IHZhbGlkYXRlX3VzZXJuYW1lXG59O1xuIl19