@senior-agronegocio/angular-components 0.0.49

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 (391) hide show
  1. package/agro-angular-components.module.d.ts +9 -0
  2. package/bundles/senior-agronegocio-angular-components.umd.js +5855 -0
  3. package/bundles/senior-agronegocio-angular-components.umd.js.map +1 -0
  4. package/bundles/senior-agronegocio-angular-components.umd.min.js +17 -0
  5. package/bundles/senior-agronegocio-angular-components.umd.min.js.map +1 -0
  6. package/common/agro-array-utils.class.d.ts +35 -0
  7. package/common/agro-cookie-utils.class.d.ts +8 -0
  8. package/common/agro-date-utils.class.d.ts +88 -0
  9. package/common/agro-name-utils.class.d.ts +22 -0
  10. package/common/agro-number-utils.class.d.ts +71 -0
  11. package/common/agro-object-utils.class.d.ts +161 -0
  12. package/common/agro-platform-utils.class.d.ts +38 -0
  13. package/common/agro-regex.constant.d.ts +142 -0
  14. package/common/agro-string-utils.class.d.ts +194 -0
  15. package/common/colors.class.d.ts +76 -0
  16. package/common/index.d.ts +10 -0
  17. package/components/event-control-board/common/control-status.d.ts +5 -0
  18. package/components/event-control-board/common/documentsToIssue.d.ts +4 -0
  19. package/components/event-control-board/common/event-control-constants.d.ts +15 -0
  20. package/components/event-control-board/common/event-operation.d.ts +11 -0
  21. package/components/event-control-board/common/event-origin.d.ts +7 -0
  22. package/components/event-control-board/common/event-status.d.ts +7 -0
  23. package/components/event-control-board/common/invoice-status.d.ts +12 -0
  24. package/components/event-control-board/common/invoice-type.d.ts +5 -0
  25. package/components/event-control-board/common/lookup-error-message.constants.d.ts +3 -0
  26. package/components/event-control-board/common/operation.d.ts +5 -0
  27. package/components/event-control-board/common/operationType.d.ts +5 -0
  28. package/components/event-control-board/common/status-entity.d.ts +4 -0
  29. package/components/event-control-board/common/ticket-status.d.ts +7 -0
  30. package/components/event-control-board/event-control-board.component.d.ts +97 -0
  31. package/components/event-control-board/event-control-board.module.d.ts +2 -0
  32. package/components/event-control-board/index.d.ts +20 -0
  33. package/components/event-control-board/service/e001pes/e001pes-dto.d.ts +12 -0
  34. package/components/event-control-board/service/e001pes/e001pes.d.ts +15 -0
  35. package/components/event-control-board/service/e001pes/e001pes.module.d.ts +2 -0
  36. package/components/event-control-board/service/e001pes/e001pes.service.d.ts +13 -0
  37. package/components/event-control-board/service/e001tns/e001tns-dto.d.ts +14 -0
  38. package/components/event-control-board/service/e001tns/e001tns.d.ts +19 -0
  39. package/components/event-control-board/service/e001tns/e001tns.module.d.ts +2 -0
  40. package/components/event-control-board/service/e001tns/e001tns.service.d.ts +11 -0
  41. package/components/event-control-board/service/e012fam/e012fam-dto.d.ts +11 -0
  42. package/components/event-control-board/service/e012fam/e012fam.d.ts +14 -0
  43. package/components/event-control-board/service/e012fam/e012fam.service.d.ts +11 -0
  44. package/components/event-control-board/service/e070emp/e070emp-dto.d.ts +10 -0
  45. package/components/event-control-board/service/e070emp/e070emp.d.ts +13 -0
  46. package/components/event-control-board/service/e070emp/e070emp.module.d.ts +2 -0
  47. package/components/event-control-board/service/e070emp/e070emp.service.d.ts +12 -0
  48. package/components/event-control-board/service/e070fil/e070fil-dto.d.ts +14 -0
  49. package/components/event-control-board/service/e070fil/e070fil.d.ts +17 -0
  50. package/components/event-control-board/service/e070fil/e070fil.module.d.ts +2 -0
  51. package/components/event-control-board/service/e070fil/e070fil.service.d.ts +12 -0
  52. package/components/event-control-board/service/e075der/e075der-dto.d.ts +15 -0
  53. package/components/event-control-board/service/e075der/e075der.d.ts +18 -0
  54. package/components/event-control-board/service/e075der/e075der.module.d.ts +2 -0
  55. package/components/event-control-board/service/e075der/e075der.service.d.ts +12 -0
  56. package/components/event-control-board/service/e113saf/e113saf-dto.d.ts +11 -0
  57. package/components/event-control-board/service/e113saf/e113saf.d.ts +14 -0
  58. package/components/event-control-board/service/e205dep/deposit-dto.d.ts +11 -0
  59. package/components/event-control-board/service/e205dep/e205dep-dto.d.ts +15 -0
  60. package/components/event-control-board/service/e205dep/e205dep.d.ts +16 -0
  61. package/components/event-control-board/service/e205dep/e205dep.service.d.ts +12 -0
  62. package/components/event-control-board/service/entity-service.d.ts +72 -0
  63. package/components/event-control-board/service/event-control/event-control-dto.d.ts +12 -0
  64. package/components/event-control-board/service/event-control/event-control.d.ts +18 -0
  65. package/components/event-control-board/service/event-control/event-control.module.d.ts +2 -0
  66. package/components/event-control-board/service/event-control/event-control.service.d.ts +11 -0
  67. package/components/event-control-board/service/event-control-board.service.d.ts +11 -0
  68. package/components/event-control-board/service/event-control-item/event-control-item-dto.d.ts +17 -0
  69. package/components/event-control-board/service/event-control-item/event-control-item.d.ts +23 -0
  70. package/components/event-control-board/service/event-control-item/event-control-item.module.d.ts +2 -0
  71. package/components/event-control-board/service/event-control-item/event-control-item.service.d.ts +15 -0
  72. package/components/event-control-board/service/external-invoice/external-invoice-dto.d.ts +13 -0
  73. package/components/event-control-board/service/external-invoice/external-invoice.d.ts +13 -0
  74. package/components/event-control-board/service/external-invoice/external-invoice.module.d.ts +2 -0
  75. package/components/event-control-board/service/external-invoice/external-invoice.service.d.ts +11 -0
  76. package/components/event-control-board/service/invoice/invoice-dto.d.ts +15 -0
  77. package/components/event-control-board/service/invoice/invoice.d.ts +21 -0
  78. package/components/event-control-board/service/invoice/invoice.module.d.ts +2 -0
  79. package/components/event-control-board/service/invoice/invoice.service.d.ts +11 -0
  80. package/components/event-control-board/service/origination/operationType.d.ts +5 -0
  81. package/components/event-control-board/service/origination/origination-dto.d.ts +50 -0
  82. package/components/event-control-board/service/origination/origination.d.ts +51 -0
  83. package/components/event-control-board/service/origination/origination.module.d.ts +2 -0
  84. package/components/event-control-board/service/origination/origination.service.d.ts +11 -0
  85. package/components/event-control-board/service/paginator-storage.service.d.ts +8 -0
  86. package/components/event-control-board/service/producer-invoice/producer-invoice-dto.d.ts +26 -0
  87. package/components/event-control-board/service/producer-invoice/producer-invoice.d.ts +27 -0
  88. package/components/event-control-board/service/producer-invoice/producer-invoice.module.d.ts +2 -0
  89. package/components/event-control-board/service/producer-invoice/producer-invoice.service.d.ts +11 -0
  90. package/components/event-control-board/service/rural-estate/rural-estate-dto.d.ts +28 -0
  91. package/components/event-control-board/service/rural-estate/rural-estate.d.ts +34 -0
  92. package/components/event-control-board/service/rural-estate/rural-estate.module.d.ts +2 -0
  93. package/components/event-control-board/service/rural-estate/rural-estate.service.d.ts +11 -0
  94. package/components/event-control-board/service/ticket/ticket-dto.d.ts +17 -0
  95. package/components/event-control-board/service/ticket/ticket.d.ts +18 -0
  96. package/components/event-control-board/service/ticket/ticket.module.d.ts +2 -0
  97. package/components/event-control-board/service/ticket/ticket.service.d.ts +45 -0
  98. package/components/event-control-board/shared.module.d.ts +2 -0
  99. package/components/event-steps/event-steps.component.d.ts +35 -0
  100. package/components/event-steps/event-steps.module.d.ts +2 -0
  101. package/components/event-steps/index.d.ts +2 -0
  102. package/components/index.d.ts +2 -0
  103. package/enums/agro-entity-status.enum.d.ts +4 -0
  104. package/enums/agro-numbers.enum.d.ts +1006 -0
  105. package/enums/agro-string-masks.enum.d.ts +10 -0
  106. package/enums/date-comparison-type.enum.d.ts +4 -0
  107. package/enums/http-codes.enum.d.ts +64 -0
  108. package/enums/index.d.ts +6 -0
  109. package/enums/number-comparison-type.enum.d.ts +8 -0
  110. package/esm2015/agro-angular-components.module.js +22 -0
  111. package/esm2015/common/agro-array-utils.class.js +56 -0
  112. package/esm2015/common/agro-cookie-utils.class.js +31 -0
  113. package/esm2015/common/agro-date-utils.class.js +117 -0
  114. package/esm2015/common/agro-name-utils.class.js +59 -0
  115. package/esm2015/common/agro-number-utils.class.js +102 -0
  116. package/esm2015/common/agro-object-utils.class.js +245 -0
  117. package/esm2015/common/agro-platform-utils.class.js +97 -0
  118. package/esm2015/common/agro-regex.constant.js +143 -0
  119. package/esm2015/common/agro-string-utils.class.js +367 -0
  120. package/esm2015/common/colors.class.js +77 -0
  121. package/esm2015/common/index.js +11 -0
  122. package/esm2015/components/event-control-board/common/control-status.js +7 -0
  123. package/esm2015/components/event-control-board/common/documentsToIssue.js +6 -0
  124. package/esm2015/components/event-control-board/common/event-control-constants.js +28 -0
  125. package/esm2015/components/event-control-board/common/event-operation.js +13 -0
  126. package/esm2015/components/event-control-board/common/event-origin.js +9 -0
  127. package/esm2015/components/event-control-board/common/event-status.js +9 -0
  128. package/esm2015/components/event-control-board/common/invoice-status.js +14 -0
  129. package/esm2015/components/event-control-board/common/invoice-type.js +7 -0
  130. package/esm2015/components/event-control-board/common/lookup-error-message.constants.js +11 -0
  131. package/esm2015/components/event-control-board/common/operation.js +7 -0
  132. package/esm2015/components/event-control-board/common/operationType.js +7 -0
  133. package/esm2015/components/event-control-board/common/status-entity.js +6 -0
  134. package/esm2015/components/event-control-board/common/ticket-status.js +9 -0
  135. package/esm2015/components/event-control-board/event-control-board.component.js +503 -0
  136. package/esm2015/components/event-control-board/event-control-board.module.js +62 -0
  137. package/esm2015/components/event-control-board/index.js +21 -0
  138. package/esm2015/components/event-control-board/service/e001pes/e001pes-dto.js +1 -0
  139. package/esm2015/components/event-control-board/service/e001pes/e001pes.js +20 -0
  140. package/esm2015/components/event-control-board/service/e001pes/e001pes.module.js +24 -0
  141. package/esm2015/components/event-control-board/service/e001pes/e001pes.service.js +34 -0
  142. package/esm2015/components/event-control-board/service/e001tns/e001tns-dto.js +1 -0
  143. package/esm2015/components/event-control-board/service/e001tns/e001tns.js +42 -0
  144. package/esm2015/components/event-control-board/service/e001tns/e001tns.module.js +26 -0
  145. package/esm2015/components/event-control-board/service/e001tns/e001tns.service.js +24 -0
  146. package/esm2015/components/event-control-board/service/e012fam/e012fam-dto.js +1 -0
  147. package/esm2015/components/event-control-board/service/e012fam/e012fam.js +20 -0
  148. package/esm2015/components/event-control-board/service/e012fam/e012fam.service.js +24 -0
  149. package/esm2015/components/event-control-board/service/e070emp/e070emp-dto.js +1 -0
  150. package/esm2015/components/event-control-board/service/e070emp/e070emp.js +29 -0
  151. package/esm2015/components/event-control-board/service/e070emp/e070emp.module.js +24 -0
  152. package/esm2015/components/event-control-board/service/e070emp/e070emp.service.js +31 -0
  153. package/esm2015/components/event-control-board/service/e070fil/e070fil-dto.js +1 -0
  154. package/esm2015/components/event-control-board/service/e070fil/e070fil.js +41 -0
  155. package/esm2015/components/event-control-board/service/e070fil/e070fil.module.js +24 -0
  156. package/esm2015/components/event-control-board/service/e070fil/e070fil.service.js +31 -0
  157. package/esm2015/components/event-control-board/service/e075der/e075der-dto.js +1 -0
  158. package/esm2015/components/event-control-board/service/e075der/e075der.js +31 -0
  159. package/esm2015/components/event-control-board/service/e075der/e075der.module.js +24 -0
  160. package/esm2015/components/event-control-board/service/e075der/e075der.service.js +29 -0
  161. package/esm2015/components/event-control-board/service/e113saf/e113saf-dto.js +1 -0
  162. package/esm2015/components/event-control-board/service/e113saf/e113saf.js +20 -0
  163. package/esm2015/components/event-control-board/service/e205dep/deposit-dto.js +1 -0
  164. package/esm2015/components/event-control-board/service/e205dep/e205dep-dto.js +1 -0
  165. package/esm2015/components/event-control-board/service/e205dep/e205dep.js +20 -0
  166. package/esm2015/components/event-control-board/service/e205dep/e205dep.service.js +29 -0
  167. package/esm2015/components/event-control-board/service/entity-service.js +129 -0
  168. package/esm2015/components/event-control-board/service/event-control/event-control-dto.js +1 -0
  169. package/esm2015/components/event-control-board/service/event-control/event-control.js +20 -0
  170. package/esm2015/components/event-control-board/service/event-control/event-control.module.js +26 -0
  171. package/esm2015/components/event-control-board/service/event-control/event-control.service.js +24 -0
  172. package/esm2015/components/event-control-board/service/event-control-board.service.js +33 -0
  173. package/esm2015/components/event-control-board/service/event-control-item/event-control-item-dto.js +1 -0
  174. package/esm2015/components/event-control-board/service/event-control-item/event-control-item.js +34 -0
  175. package/esm2015/components/event-control-board/service/event-control-item/event-control-item.module.js +26 -0
  176. package/esm2015/components/event-control-board/service/event-control-item/event-control-item.service.js +29 -0
  177. package/esm2015/components/event-control-board/service/external-invoice/external-invoice-dto.js +1 -0
  178. package/esm2015/components/event-control-board/service/external-invoice/external-invoice.js +20 -0
  179. package/esm2015/components/event-control-board/service/external-invoice/external-invoice.module.js +26 -0
  180. package/esm2015/components/event-control-board/service/external-invoice/external-invoice.service.js +24 -0
  181. package/esm2015/components/event-control-board/service/invoice/invoice-dto.js +1 -0
  182. package/esm2015/components/event-control-board/service/invoice/invoice.js +43 -0
  183. package/esm2015/components/event-control-board/service/invoice/invoice.module.js +26 -0
  184. package/esm2015/components/event-control-board/service/invoice/invoice.service.js +24 -0
  185. package/esm2015/components/event-control-board/service/origination/operationType.js +7 -0
  186. package/esm2015/components/event-control-board/service/origination/origination-dto.js +1 -0
  187. package/esm2015/components/event-control-board/service/origination/origination.js +59 -0
  188. package/esm2015/components/event-control-board/service/origination/origination.module.js +24 -0
  189. package/esm2015/components/event-control-board/service/origination/origination.service.js +24 -0
  190. package/esm2015/components/event-control-board/service/paginator-storage.service.js +32 -0
  191. package/esm2015/components/event-control-board/service/producer-invoice/producer-invoice-dto.js +1 -0
  192. package/esm2015/components/event-control-board/service/producer-invoice/producer-invoice.js +32 -0
  193. package/esm2015/components/event-control-board/service/producer-invoice/producer-invoice.module.js +26 -0
  194. package/esm2015/components/event-control-board/service/producer-invoice/producer-invoice.service.js +24 -0
  195. package/esm2015/components/event-control-board/service/rural-estate/rural-estate-dto.js +1 -0
  196. package/esm2015/components/event-control-board/service/rural-estate/rural-estate.js +78 -0
  197. package/esm2015/components/event-control-board/service/rural-estate/rural-estate.module.js +26 -0
  198. package/esm2015/components/event-control-board/service/rural-estate/rural-estate.service.js +24 -0
  199. package/esm2015/components/event-control-board/service/ticket/ticket-dto.js +1 -0
  200. package/esm2015/components/event-control-board/service/ticket/ticket.js +39 -0
  201. package/esm2015/components/event-control-board/service/ticket/ticket.module.js +26 -0
  202. package/esm2015/components/event-control-board/service/ticket/ticket.service.js +59 -0
  203. package/esm2015/components/event-control-board/shared.module.js +60 -0
  204. package/esm2015/components/event-steps/event-steps.component.js +103 -0
  205. package/esm2015/components/event-steps/event-steps.module.js +16 -0
  206. package/esm2015/components/event-steps/index.js +3 -0
  207. package/esm2015/components/index.js +3 -0
  208. package/esm2015/enums/agro-entity-status.enum.js +6 -0
  209. package/esm2015/enums/agro-numbers.enum.js +1007 -0
  210. package/esm2015/enums/agro-string-masks.enum.js +12 -0
  211. package/esm2015/enums/date-comparison-type.enum.js +6 -0
  212. package/esm2015/enums/http-codes.enum.js +66 -0
  213. package/esm2015/enums/index.js +7 -0
  214. package/esm2015/enums/number-comparison-type.enum.js +10 -0
  215. package/esm2015/form-validator/agro-form-validator.js +229 -0
  216. package/esm2015/form-validator/index.js +2 -0
  217. package/esm2015/lib-translation.module.js +21 -0
  218. package/esm2015/pipe/index.js +2 -0
  219. package/esm2015/pipe/lib-translate.pipe.js +24 -0
  220. package/esm2015/public-api.js +9 -0
  221. package/esm2015/senior-agronegocio-angular-components.js +6 -0
  222. package/esm2015/services/i18n/en-US.js +195 -0
  223. package/esm2015/services/i18n/es-CO.js +195 -0
  224. package/esm2015/services/i18n/pt-BR.js +195 -0
  225. package/esm2015/services/index.js +3 -0
  226. package/esm2015/services/lib-translation.service.js +54 -0
  227. package/esm2015/services/websocket/async-lock.js +34 -0
  228. package/esm2015/services/websocket/index.js +6 -0
  229. package/esm2015/services/websocket/models/index.js +2 -0
  230. package/esm2015/services/websocket/models/primitive-manager.js +39 -0
  231. package/esm2015/services/websocket/protocols/index.js +1 -0
  232. package/esm2015/services/websocket/protocols/on-event-options.js +1 -0
  233. package/esm2015/services/websocket/protocols/primitive-event.js +1 -0
  234. package/esm2015/services/websocket/user-information.service.js +34 -0
  235. package/esm2015/services/websocket/websocket.module.js +21 -0
  236. package/esm2015/services/websocket/websocket.service.js +339 -0
  237. package/esm5/agro-angular-components.module.js +26 -0
  238. package/esm5/common/agro-array-utils.class.js +72 -0
  239. package/esm5/common/agro-cookie-utils.class.js +38 -0
  240. package/esm5/common/agro-date-utils.class.js +122 -0
  241. package/esm5/common/agro-name-utils.class.js +63 -0
  242. package/esm5/common/agro-number-utils.class.js +109 -0
  243. package/esm5/common/agro-object-utils.class.js +250 -0
  244. package/esm5/common/agro-platform-utils.class.js +101 -0
  245. package/esm5/common/agro-regex.constant.js +143 -0
  246. package/esm5/common/agro-string-utils.class.js +383 -0
  247. package/esm5/common/colors.class.js +81 -0
  248. package/esm5/common/index.js +11 -0
  249. package/esm5/components/event-control-board/common/control-status.js +7 -0
  250. package/esm5/components/event-control-board/common/documentsToIssue.js +6 -0
  251. package/esm5/components/event-control-board/common/event-control-constants.js +28 -0
  252. package/esm5/components/event-control-board/common/event-operation.js +13 -0
  253. package/esm5/components/event-control-board/common/event-origin.js +9 -0
  254. package/esm5/components/event-control-board/common/event-status.js +9 -0
  255. package/esm5/components/event-control-board/common/invoice-status.js +14 -0
  256. package/esm5/components/event-control-board/common/invoice-type.js +7 -0
  257. package/esm5/components/event-control-board/common/lookup-error-message.constants.js +11 -0
  258. package/esm5/components/event-control-board/common/operation.js +7 -0
  259. package/esm5/components/event-control-board/common/operationType.js +7 -0
  260. package/esm5/components/event-control-board/common/status-entity.js +6 -0
  261. package/esm5/components/event-control-board/common/ticket-status.js +9 -0
  262. package/esm5/components/event-control-board/event-control-board.component.js +528 -0
  263. package/esm5/components/event-control-board/event-control-board.module.js +65 -0
  264. package/esm5/components/event-control-board/index.js +21 -0
  265. package/esm5/components/event-control-board/service/e001pes/e001pes-dto.js +1 -0
  266. package/esm5/components/event-control-board/service/e001pes/e001pes.js +25 -0
  267. package/esm5/components/event-control-board/service/e001pes/e001pes.module.js +27 -0
  268. package/esm5/components/event-control-board/service/e001pes/e001pes.service.js +37 -0
  269. package/esm5/components/event-control-board/service/e001tns/e001tns-dto.js +1 -0
  270. package/esm5/components/event-control-board/service/e001tns/e001tns.js +45 -0
  271. package/esm5/components/event-control-board/service/e001tns/e001tns.module.js +29 -0
  272. package/esm5/components/event-control-board/service/e001tns/e001tns.service.js +27 -0
  273. package/esm5/components/event-control-board/service/e012fam/e012fam-dto.js +1 -0
  274. package/esm5/components/event-control-board/service/e012fam/e012fam.js +25 -0
  275. package/esm5/components/event-control-board/service/e012fam/e012fam.service.js +27 -0
  276. package/esm5/components/event-control-board/service/e070emp/e070emp-dto.js +1 -0
  277. package/esm5/components/event-control-board/service/e070emp/e070emp.js +34 -0
  278. package/esm5/components/event-control-board/service/e070emp/e070emp.module.js +27 -0
  279. package/esm5/components/event-control-board/service/e070emp/e070emp.service.js +34 -0
  280. package/esm5/components/event-control-board/service/e070fil/e070fil-dto.js +1 -0
  281. package/esm5/components/event-control-board/service/e070fil/e070fil.js +48 -0
  282. package/esm5/components/event-control-board/service/e070fil/e070fil.module.js +27 -0
  283. package/esm5/components/event-control-board/service/e070fil/e070fil.service.js +34 -0
  284. package/esm5/components/event-control-board/service/e075der/e075der-dto.js +1 -0
  285. package/esm5/components/event-control-board/service/e075der/e075der.js +36 -0
  286. package/esm5/components/event-control-board/service/e075der/e075der.module.js +27 -0
  287. package/esm5/components/event-control-board/service/e075der/e075der.service.js +32 -0
  288. package/esm5/components/event-control-board/service/e113saf/e113saf-dto.js +1 -0
  289. package/esm5/components/event-control-board/service/e113saf/e113saf.js +25 -0
  290. package/esm5/components/event-control-board/service/e205dep/deposit-dto.js +1 -0
  291. package/esm5/components/event-control-board/service/e205dep/e205dep-dto.js +1 -0
  292. package/esm5/components/event-control-board/service/e205dep/e205dep.js +25 -0
  293. package/esm5/components/event-control-board/service/e205dep/e205dep.service.js +32 -0
  294. package/esm5/components/event-control-board/service/entity-service.js +140 -0
  295. package/esm5/components/event-control-board/service/event-control/event-control-dto.js +1 -0
  296. package/esm5/components/event-control-board/service/event-control/event-control.js +25 -0
  297. package/esm5/components/event-control-board/service/event-control/event-control.module.js +29 -0
  298. package/esm5/components/event-control-board/service/event-control/event-control.service.js +27 -0
  299. package/esm5/components/event-control-board/service/event-control-board.service.js +34 -0
  300. package/esm5/components/event-control-board/service/event-control-item/event-control-item-dto.js +1 -0
  301. package/esm5/components/event-control-board/service/event-control-item/event-control-item.js +39 -0
  302. package/esm5/components/event-control-board/service/event-control-item/event-control-item.module.js +29 -0
  303. package/esm5/components/event-control-board/service/event-control-item/event-control-item.service.js +32 -0
  304. package/esm5/components/event-control-board/service/external-invoice/external-invoice-dto.js +1 -0
  305. package/esm5/components/event-control-board/service/external-invoice/external-invoice.js +25 -0
  306. package/esm5/components/event-control-board/service/external-invoice/external-invoice.module.js +29 -0
  307. package/esm5/components/event-control-board/service/external-invoice/external-invoice.service.js +27 -0
  308. package/esm5/components/event-control-board/service/invoice/invoice-dto.js +1 -0
  309. package/esm5/components/event-control-board/service/invoice/invoice.js +48 -0
  310. package/esm5/components/event-control-board/service/invoice/invoice.module.js +29 -0
  311. package/esm5/components/event-control-board/service/invoice/invoice.service.js +27 -0
  312. package/esm5/components/event-control-board/service/origination/operationType.js +7 -0
  313. package/esm5/components/event-control-board/service/origination/origination-dto.js +1 -0
  314. package/esm5/components/event-control-board/service/origination/origination.js +62 -0
  315. package/esm5/components/event-control-board/service/origination/origination.module.js +27 -0
  316. package/esm5/components/event-control-board/service/origination/origination.service.js +27 -0
  317. package/esm5/components/event-control-board/service/paginator-storage.service.js +71 -0
  318. package/esm5/components/event-control-board/service/producer-invoice/producer-invoice-dto.js +1 -0
  319. package/esm5/components/event-control-board/service/producer-invoice/producer-invoice.js +37 -0
  320. package/esm5/components/event-control-board/service/producer-invoice/producer-invoice.module.js +29 -0
  321. package/esm5/components/event-control-board/service/producer-invoice/producer-invoice.service.js +27 -0
  322. package/esm5/components/event-control-board/service/rural-estate/rural-estate-dto.js +1 -0
  323. package/esm5/components/event-control-board/service/rural-estate/rural-estate.js +83 -0
  324. package/esm5/components/event-control-board/service/rural-estate/rural-estate.module.js +29 -0
  325. package/esm5/components/event-control-board/service/rural-estate/rural-estate.service.js +27 -0
  326. package/esm5/components/event-control-board/service/ticket/ticket-dto.js +1 -0
  327. package/esm5/components/event-control-board/service/ticket/ticket.js +44 -0
  328. package/esm5/components/event-control-board/service/ticket/ticket.module.js +29 -0
  329. package/esm5/components/event-control-board/service/ticket/ticket.service.js +62 -0
  330. package/esm5/components/event-control-board/shared.module.js +63 -0
  331. package/esm5/components/event-steps/event-steps.component.js +113 -0
  332. package/esm5/components/event-steps/event-steps.module.js +19 -0
  333. package/esm5/components/event-steps/index.js +3 -0
  334. package/esm5/components/index.js +3 -0
  335. package/esm5/enums/agro-entity-status.enum.js +6 -0
  336. package/esm5/enums/agro-numbers.enum.js +1007 -0
  337. package/esm5/enums/agro-string-masks.enum.js +12 -0
  338. package/esm5/enums/date-comparison-type.enum.js +6 -0
  339. package/esm5/enums/http-codes.enum.js +66 -0
  340. package/esm5/enums/index.js +7 -0
  341. package/esm5/enums/number-comparison-type.enum.js +10 -0
  342. package/esm5/form-validator/agro-form-validator.js +239 -0
  343. package/esm5/form-validator/index.js +2 -0
  344. package/esm5/lib-translation.module.js +24 -0
  345. package/esm5/pipe/index.js +2 -0
  346. package/esm5/pipe/lib-translate.pipe.js +29 -0
  347. package/esm5/public-api.js +9 -0
  348. package/esm5/senior-agronegocio-angular-components.js +6 -0
  349. package/esm5/services/i18n/en-US.js +195 -0
  350. package/esm5/services/i18n/es-CO.js +195 -0
  351. package/esm5/services/i18n/pt-BR.js +195 -0
  352. package/esm5/services/index.js +3 -0
  353. package/esm5/services/lib-translation.service.js +56 -0
  354. package/esm5/services/websocket/async-lock.js +43 -0
  355. package/esm5/services/websocket/index.js +6 -0
  356. package/esm5/services/websocket/models/index.js +2 -0
  357. package/esm5/services/websocket/models/primitive-manager.js +58 -0
  358. package/esm5/services/websocket/protocols/index.js +1 -0
  359. package/esm5/services/websocket/protocols/on-event-options.js +1 -0
  360. package/esm5/services/websocket/protocols/primitive-event.js +1 -0
  361. package/esm5/services/websocket/user-information.service.js +38 -0
  362. package/esm5/services/websocket/websocket.module.js +24 -0
  363. package/esm5/services/websocket/websocket.service.js +411 -0
  364. package/fesm2015/senior-agronegocio-angular-components.js +5279 -0
  365. package/fesm2015/senior-agronegocio-angular-components.js.map +1 -0
  366. package/fesm5/senior-agronegocio-angular-components.js +5638 -0
  367. package/fesm5/senior-agronegocio-angular-components.js.map +1 -0
  368. package/form-validator/agro-form-validator.d.ts +103 -0
  369. package/form-validator/index.d.ts +1 -0
  370. package/lib-translation.module.d.ts +2 -0
  371. package/package.json +82 -0
  372. package/pipe/index.d.ts +1 -0
  373. package/pipe/lib-translate.pipe.d.ts +7 -0
  374. package/public-api.d.ts +8 -0
  375. package/senior-agronegocio-angular-components.d.ts +5 -0
  376. package/senior-agronegocio-angular-components.metadata.json +1 -0
  377. package/services/i18n/en-US.d.ts +194 -0
  378. package/services/i18n/es-CO.d.ts +194 -0
  379. package/services/i18n/pt-BR.d.ts +194 -0
  380. package/services/index.d.ts +2 -0
  381. package/services/lib-translation.service.d.ts +15 -0
  382. package/services/websocket/async-lock.d.ts +6 -0
  383. package/services/websocket/index.d.ts +6 -0
  384. package/services/websocket/models/index.d.ts +1 -0
  385. package/services/websocket/models/primitive-manager.d.ts +19 -0
  386. package/services/websocket/protocols/index.d.ts +2 -0
  387. package/services/websocket/protocols/on-event-options.d.ts +8 -0
  388. package/services/websocket/protocols/primitive-event.d.ts +10 -0
  389. package/services/websocket/user-information.service.d.ts +7 -0
  390. package/services/websocket/websocket.module.d.ts +2 -0
  391. package/services/websocket/websocket.service.d.ts +100 -0
@@ -0,0 +1,122 @@
1
+ import { AGRO_NUMBERS } from '../enums';
2
+ var AgroDateUtils = /** @class */ (function () {
3
+ function AgroDateUtils() {
4
+ }
5
+ /**
6
+ * Verifica se uma data é nula ou indefinida.
7
+ * @param date - A data a ser verificada.
8
+ * @returns True se a data for nula ou indefinida, false caso contrário.
9
+ */
10
+ AgroDateUtils.isNullOrUndefined = function (date) {
11
+ return date === null || date === undefined;
12
+ };
13
+ /**
14
+ * Verifica se uma data não é nula e não é indefinida.
15
+ * @param date - A data a ser verificada.
16
+ * @returns True se a data não for nula e não for indefinida, false caso contrário.
17
+ */
18
+ AgroDateUtils.isNotNullOrUndefined = function (date) {
19
+ return !AgroDateUtils.isNullOrUndefined(date);
20
+ };
21
+ /**
22
+ * Verifica se uma data é válida.
23
+ * @param date - A data a ser verificada.
24
+ * @returns True se a data for válida, false caso contrário.
25
+ */
26
+ AgroDateUtils.isValid = function (date) {
27
+ return !isNaN(Date.parse(date));
28
+ };
29
+ /**
30
+ * Verifica se uma data é inválida.
31
+ * @param date - A data a ser verificada.
32
+ * @returns True se a data for inválida, false caso contrário.
33
+ */
34
+ AgroDateUtils.isInvalid = function (date) {
35
+ return !AgroDateUtils.isValid(date);
36
+ };
37
+ /**
38
+ * Verifica se uma data é antes de outra data.
39
+ * @param date - A data a ser verificada.
40
+ * @param otherDate - A outra data a ser comparada.
41
+ * @returns True se a data for antes da outra data, false caso contrário.
42
+ */
43
+ AgroDateUtils.isBefore = function (date, otherDate) {
44
+ return date < otherDate;
45
+ };
46
+ /**
47
+ * Verifica se uma data é depois de outra data.
48
+ * @param date - A data a ser verificada.
49
+ * @param otherDate - A outra data a ser comparada.
50
+ * @returns True se a data for depois da outra data, false caso contrário.
51
+ */
52
+ AgroDateUtils.isAfter = function (date, otherDate) {
53
+ return date > otherDate;
54
+ };
55
+ /**
56
+ * Verifica se uma data é igual a outra data.
57
+ * @param date - A data a ser verificada.
58
+ * @param otherDate - A outra data a ser comparada.
59
+ * @returns True se a data for igual a outra data, false caso contrário.
60
+ */
61
+ AgroDateUtils.isEqual = function (date, otherDate) {
62
+ return date.getTime() === otherDate.getTime();
63
+ };
64
+ /**
65
+ * Verifica se uma data é menor ou igual a outra data.
66
+ * @param date - A data a ser verificada.
67
+ * @param otherDate - A outra data a ser comparada.
68
+ * @returns True se a data for menor ou igual a outra data, false caso contrário.
69
+ */
70
+ AgroDateUtils.isLessOrEqual = function (date, otherDate) {
71
+ return date <= otherDate;
72
+ };
73
+ /**
74
+ * Verifica se uma data é maior ou igual a outra data.
75
+ * @param date - A data a ser verificada.
76
+ * @param otherDate - A outra data a ser comparada.
77
+ * @returns True se a data for maior ou igual a outra data, false caso contrário.
78
+ */
79
+ AgroDateUtils.isGreaterOrEqual = function (date, otherDate) {
80
+ return date >= otherDate;
81
+ };
82
+ /**
83
+ * Verifica se uma data é menor que outra data.
84
+ * @param date - A data a ser verificada.
85
+ * @param otherDate - A outra data a ser comparada.
86
+ * @returns True se a data for menor que outra data, false caso contrário.
87
+ */
88
+ AgroDateUtils.isLess = function (date, otherDate) {
89
+ return date < otherDate;
90
+ };
91
+ /**
92
+ * Verifica se uma data é maior que outra data.
93
+ * @param date - A data a ser verificada.
94
+ * @param otherDate - A outra data a ser comparada.
95
+ * @returns True se a data for maior que outra data, false caso contrário.
96
+ */
97
+ AgroDateUtils.isGreater = function (date, otherDate) {
98
+ return date > otherDate;
99
+ };
100
+ /**
101
+ * Retorna a data formatada conforme o formato especificado.
102
+ * @param date
103
+ * @param format
104
+ * @returns
105
+ */
106
+ AgroDateUtils.formatDate = function (date, format) {
107
+ if (format === void 0) { format = 'DD/MM/YYYY'; }
108
+ var moment = require('moment');
109
+ return moment(date).utc().format(format);
110
+ };
111
+ /**
112
+ * Retorna uma string com o número informado adicionando um 0 à esquerda, caso o número seja menor que 10.
113
+ * @param value
114
+ * @returns
115
+ */
116
+ AgroDateUtils.padZero = function (value) {
117
+ return value < AGRO_NUMBERS.TEN ? '0' + value : value.toString();
118
+ };
119
+ return AgroDateUtils;
120
+ }());
121
+ export { AgroDateUtils };
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdyby1kYXRlLXV0aWxzLmNsYXNzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1hZ3JvbmVnb2Npby9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21tb24vYWdyby1kYXRlLXV0aWxzLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFeEM7SUFBQTtJQThIQSxDQUFDO0lBN0hHOzs7O09BSUc7SUFDVywrQkFBaUIsR0FBL0IsVUFBZ0MsSUFBNkI7UUFDekQsT0FBTyxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxTQUFTLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDVyxrQ0FBb0IsR0FBbEMsVUFBbUMsSUFBNkI7UUFDNUQsT0FBTyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNXLHFCQUFPLEdBQXJCLFVBQXNCLElBQVk7UUFDOUIsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDVyx1QkFBUyxHQUF2QixVQUF3QixJQUFZO1FBQ2hDLE9BQU8sQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNXLHNCQUFRLEdBQXRCLFVBQXVCLElBQVUsRUFBRSxTQUFlO1FBQzlDLE9BQU8sSUFBSSxHQUFHLFNBQVMsQ0FBQztJQUM1QixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDVyxxQkFBTyxHQUFyQixVQUFzQixJQUFVLEVBQUUsU0FBZTtRQUM3QyxPQUFPLElBQUksR0FBRyxTQUFTLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ1cscUJBQU8sR0FBckIsVUFBc0IsSUFBVSxFQUFFLFNBQWU7UUFDN0MsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNXLDJCQUFhLEdBQTNCLFVBQTRCLElBQVUsRUFBRSxTQUFlO1FBQ25ELE9BQU8sSUFBSSxJQUFJLFNBQVMsQ0FBQztJQUM3QixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDVyw4QkFBZ0IsR0FBOUIsVUFBK0IsSUFBVSxFQUFFLFNBQWU7UUFDdEQsT0FBTyxJQUFJLElBQUksU0FBUyxDQUFDO0lBQzdCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNXLG9CQUFNLEdBQXBCLFVBQXFCLElBQVUsRUFBRSxTQUFlO1FBQzVDLE9BQU8sSUFBSSxHQUFHLFNBQVMsQ0FBQztJQUM1QixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDVyx1QkFBUyxHQUF2QixVQUF3QixJQUFVLEVBQUUsU0FBZTtRQUMvQyxPQUFPLElBQUksR0FBRyxTQUFTLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksd0JBQVUsR0FBakIsVUFBa0IsSUFBVSxFQUFFLE1BQTZCO1FBQTdCLHVCQUFBLEVBQUEscUJBQTZCO1FBQ3ZELElBQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqQyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxxQkFBTyxHQUFkLFVBQWUsS0FBYTtRQUN4QixPQUFPLEtBQUssR0FBRyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDckUsQ0FBQztJQUNMLG9CQUFDO0FBQUQsQ0FBQyxBQTlIRCxJQThIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFHUk9fTlVNQkVSUyB9IGZyb20gJy4uL2VudW1zJztcclxuXHJcbmV4cG9ydCBjbGFzcyBBZ3JvRGF0ZVV0aWxzIHtcclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW1hIGRhdGEgw6kgbnVsYSBvdSBpbmRlZmluaWRhLlxyXG4gICAgICogQHBhcmFtIGRhdGUgLSBBIGRhdGEgYSBzZXIgdmVyaWZpY2FkYS5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgYSBkYXRhIGZvciBudWxhIG91IGluZGVmaW5pZGEsIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBpc051bGxPclVuZGVmaW5lZChkYXRlOiBEYXRlIHwgbnVsbCB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBkYXRlID09PSBudWxsIHx8IGRhdGUgPT09IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtYSBkYXRhIG7Do28gw6kgbnVsYSBlIG7Do28gw6kgaW5kZWZpbmlkYS5cclxuICAgICAqIEBwYXJhbSBkYXRlIC0gQSBkYXRhIGEgc2VyIHZlcmlmaWNhZGEuXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIGEgZGF0YSBuw6NvIGZvciBudWxhIGUgbsOjbyBmb3IgaW5kZWZpbmlkYSwgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGlzTm90TnVsbE9yVW5kZWZpbmVkKGRhdGU6IERhdGUgfCBudWxsIHwgdW5kZWZpbmVkKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICFBZ3JvRGF0ZVV0aWxzLmlzTnVsbE9yVW5kZWZpbmVkKGRhdGUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW1hIGRhdGEgw6kgdsOhbGlkYS5cclxuICAgICAqIEBwYXJhbSBkYXRlIC0gQSBkYXRhIGEgc2VyIHZlcmlmaWNhZGEuXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIGEgZGF0YSBmb3IgdsOhbGlkYSwgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGlzVmFsaWQoZGF0ZTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICFpc05hTihEYXRlLnBhcnNlKGRhdGUpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtYSBkYXRhIMOpIGludsOhbGlkYS5cclxuICAgICAqIEBwYXJhbSBkYXRlIC0gQSBkYXRhIGEgc2VyIHZlcmlmaWNhZGEuXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIGEgZGF0YSBmb3IgaW52w6FsaWRhLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgaXNJbnZhbGlkKGRhdGU6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhQWdyb0RhdGVVdGlscy5pc1ZhbGlkKGRhdGUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW1hIGRhdGEgw6kgYW50ZXMgZGUgb3V0cmEgZGF0YS5cclxuICAgICAqIEBwYXJhbSBkYXRlIC0gQSBkYXRhIGEgc2VyIHZlcmlmaWNhZGEuXHJcbiAgICAgKiBAcGFyYW0gb3RoZXJEYXRlIC0gQSBvdXRyYSBkYXRhIGEgc2VyIGNvbXBhcmFkYS5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgYSBkYXRhIGZvciBhbnRlcyBkYSBvdXRyYSBkYXRhLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgaXNCZWZvcmUoZGF0ZTogRGF0ZSwgb3RoZXJEYXRlOiBEYXRlKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIGRhdGUgPCBvdGhlckRhdGU7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bWEgZGF0YSDDqSBkZXBvaXMgZGUgb3V0cmEgZGF0YS5cclxuICAgICAqIEBwYXJhbSBkYXRlIC0gQSBkYXRhIGEgc2VyIHZlcmlmaWNhZGEuXHJcbiAgICAgKiBAcGFyYW0gb3RoZXJEYXRlIC0gQSBvdXRyYSBkYXRhIGEgc2VyIGNvbXBhcmFkYS5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgYSBkYXRhIGZvciBkZXBvaXMgZGEgb3V0cmEgZGF0YSwgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGlzQWZ0ZXIoZGF0ZTogRGF0ZSwgb3RoZXJEYXRlOiBEYXRlKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIGRhdGUgPiBvdGhlckRhdGU7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bWEgZGF0YSDDqSBpZ3VhbCBhIG91dHJhIGRhdGEuXHJcbiAgICAgKiBAcGFyYW0gZGF0ZSAtIEEgZGF0YSBhIHNlciB2ZXJpZmljYWRhLlxyXG4gICAgICogQHBhcmFtIG90aGVyRGF0ZSAtIEEgb3V0cmEgZGF0YSBhIHNlciBjb21wYXJhZGEuXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIGEgZGF0YSBmb3IgaWd1YWwgYSBvdXRyYSBkYXRhLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgaXNFcXVhbChkYXRlOiBEYXRlLCBvdGhlckRhdGU6IERhdGUpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gZGF0ZS5nZXRUaW1lKCkgPT09IG90aGVyRGF0ZS5nZXRUaW1lKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bWEgZGF0YSDDqSBtZW5vciBvdSBpZ3VhbCBhIG91dHJhIGRhdGEuXHJcbiAgICAgKiBAcGFyYW0gZGF0ZSAtIEEgZGF0YSBhIHNlciB2ZXJpZmljYWRhLlxyXG4gICAgICogQHBhcmFtIG90aGVyRGF0ZSAtIEEgb3V0cmEgZGF0YSBhIHNlciBjb21wYXJhZGEuXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIGEgZGF0YSBmb3IgbWVub3Igb3UgaWd1YWwgYSBvdXRyYSBkYXRhLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgaXNMZXNzT3JFcXVhbChkYXRlOiBEYXRlLCBvdGhlckRhdGU6IERhdGUpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gZGF0ZSA8PSBvdGhlckRhdGU7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bWEgZGF0YSDDqSBtYWlvciBvdSBpZ3VhbCBhIG91dHJhIGRhdGEuXHJcbiAgICAgKiBAcGFyYW0gZGF0ZSAtIEEgZGF0YSBhIHNlciB2ZXJpZmljYWRhLlxyXG4gICAgICogQHBhcmFtIG90aGVyRGF0ZSAtIEEgb3V0cmEgZGF0YSBhIHNlciBjb21wYXJhZGEuXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIGEgZGF0YSBmb3IgbWFpb3Igb3UgaWd1YWwgYSBvdXRyYSBkYXRhLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgaXNHcmVhdGVyT3JFcXVhbChkYXRlOiBEYXRlLCBvdGhlckRhdGU6IERhdGUpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gZGF0ZSA+PSBvdGhlckRhdGU7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bWEgZGF0YSDDqSBtZW5vciBxdWUgb3V0cmEgZGF0YS5cclxuICAgICAqIEBwYXJhbSBkYXRlIC0gQSBkYXRhIGEgc2VyIHZlcmlmaWNhZGEuXHJcbiAgICAgKiBAcGFyYW0gb3RoZXJEYXRlIC0gQSBvdXRyYSBkYXRhIGEgc2VyIGNvbXBhcmFkYS5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgYSBkYXRhIGZvciBtZW5vciBxdWUgb3V0cmEgZGF0YSwgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGlzTGVzcyhkYXRlOiBEYXRlLCBvdGhlckRhdGU6IERhdGUpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gZGF0ZSA8IG90aGVyRGF0ZTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtYSBkYXRhIMOpIG1haW9yIHF1ZSBvdXRyYSBkYXRhLlxyXG4gICAgICogQHBhcmFtIGRhdGUgLSBBIGRhdGEgYSBzZXIgdmVyaWZpY2FkYS5cclxuICAgICAqIEBwYXJhbSBvdGhlckRhdGUgLSBBIG91dHJhIGRhdGEgYSBzZXIgY29tcGFyYWRhLlxyXG4gICAgICogQHJldHVybnMgVHJ1ZSBzZSBhIGRhdGEgZm9yIG1haW9yIHF1ZSBvdXRyYSBkYXRhLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgaXNHcmVhdGVyKGRhdGU6IERhdGUsIG90aGVyRGF0ZTogRGF0ZSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBkYXRlID4gb3RoZXJEYXRlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0b3JuYSBhIGRhdGEgZm9ybWF0YWRhIGNvbmZvcm1lIG8gZm9ybWF0byBlc3BlY2lmaWNhZG8uXHJcbiAgICAgKiBAcGFyYW0gZGF0ZVxyXG4gICAgICogQHBhcmFtIGZvcm1hdFxyXG4gICAgICogQHJldHVybnNcclxuICAgICAqL1xyXG4gICAgc3RhdGljIGZvcm1hdERhdGUoZGF0ZTogRGF0ZSwgZm9ybWF0OiBzdHJpbmcgPSAnREQvTU0vWVlZWScpOiBzdHJpbmcge1xyXG4gICAgICAgIGNvbnN0IG1vbWVudCA9IHJlcXVpcmUoJ21vbWVudCcpO1xyXG4gICAgICAgIHJldHVybiBtb21lbnQoZGF0ZSkudXRjKCkuZm9ybWF0KGZvcm1hdCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZXRvcm5hIHVtYSBzdHJpbmcgY29tIG8gbsO6bWVybyBpbmZvcm1hZG8gYWRpY2lvbmFuZG8gdW0gMCDDoCBlc3F1ZXJkYSwgY2FzbyBvIG7Dum1lcm8gc2VqYSBtZW5vciBxdWUgMTAuXHJcbiAgICAgKiBAcGFyYW0gdmFsdWVcclxuICAgICAqIEByZXR1cm5zXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBwYWRaZXJvKHZhbHVlOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB2YWx1ZSA8IEFHUk9fTlVNQkVSUy5URU4gPyAnMCcgKyB2YWx1ZSA6IHZhbHVlLnRvU3RyaW5nKCk7XHJcbiAgICB9XHJcbn0iXX0=
@@ -0,0 +1,63 @@
1
+ import { AgroStringUtils } from "./agro-string-utils.class";
2
+ var AgroNameUtils = /** @class */ (function () {
3
+ function AgroNameUtils() {
4
+ }
5
+ /**
6
+ * Abrevia o último sobrenome, mantendo o primeiro nome completo.
7
+ * @param fullName valor completo do nome (Ex: Tiago Batista Corrêa)
8
+ * @returns nome abreviado (Ex: Tiago C.)
9
+ */
10
+ AgroNameUtils.abbreviateName = function (fullName) {
11
+ if (AgroStringUtils.isInvalid(fullName)) {
12
+ return null;
13
+ }
14
+ var parts = fullName.trim().split(/\s+/);
15
+ // Verifica se há pelo menos duas partes no nome
16
+ if (parts.length < 2) {
17
+ return fullName; // Retorna o nome original se não puder ser abreviado
18
+ }
19
+ var firstName = parts[0]; // Primeiro nome completo
20
+ var lastName = parts[parts.length - 1]; // Último sobrenome
21
+ // Retorna o nome abreviado
22
+ return firstName + " " + lastName.charAt(0) + ".";
23
+ };
24
+ /**
25
+ * Abrevia todos os sobrenomes, mantendo o primeiro nome completo.
26
+ *
27
+ * @param fullName O nome completo. (Ex: Tiago Batista Corrêa)
28
+ * @returns O nome com os sobrenomes abreviados. (Ex: Tiago B. C.)
29
+ */
30
+ AgroNameUtils.abbreviateAllLastNames = function (fullName) {
31
+ if (AgroStringUtils.isInvalid(fullName)) {
32
+ return null;
33
+ }
34
+ var parts = fullName.trim().split(/\s+/);
35
+ if (parts.length < 2)
36
+ return fullName;
37
+ var firstName = parts[0];
38
+ var abbreviatedLastNames = parts
39
+ .slice(1)
40
+ .map(function (name) { return name.charAt(0) + "."; })
41
+ .join(" ");
42
+ return firstName + " " + abbreviatedLastNames;
43
+ };
44
+ /**
45
+ * Retorna as iniciais do nome completo.
46
+ *
47
+ * @param fullName O nome completo. (Ex: Tiago Batista Corrêa)
48
+ * @returns Uma string contendo as iniciais do nome. (Ex: TBC)
49
+ */
50
+ AgroNameUtils.getInitials = function (fullName) {
51
+ if (AgroStringUtils.isInvalid(fullName)) {
52
+ return null;
53
+ }
54
+ return fullName
55
+ .trim()
56
+ .split(/\s+/)
57
+ .map(function (name) { return name.charAt(0).toUpperCase(); })
58
+ .join("");
59
+ };
60
+ return AgroNameUtils;
61
+ }());
62
+ export { AgroNameUtils };
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdyby1uYW1lLXV0aWxzLmNsYXNzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1hZ3JvbmVnb2Npby9hbmd1bGFyLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21tb24vYWdyby1uYW1lLXV0aWxzLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU1RDtJQUFBO0lBaUVBLENBQUM7SUFoRUc7Ozs7T0FJRztJQUNJLDRCQUFjLEdBQXJCLFVBQXNCLFFBQWdCO1FBQ2xDLElBQUksZUFBZSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNyQyxPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsSUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUzQyxnREFBZ0Q7UUFDaEQsSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNsQixPQUFPLFFBQVEsQ0FBQyxDQUFDLHFEQUFxRDtTQUN6RTtRQUVELElBQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLHlCQUF5QjtRQUNyRCxJQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLG1CQUFtQjtRQUU3RCwyQkFBMkI7UUFDM0IsT0FBVSxTQUFTLFNBQUksUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBRyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLG9DQUFzQixHQUE3QixVQUE4QixRQUFnQjtRQUMxQyxJQUFJLGVBQWUsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDckMsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUVELElBQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0MsSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUM7WUFBRSxPQUFPLFFBQVEsQ0FBQztRQUV0QyxJQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0IsSUFBTSxvQkFBb0IsR0FBRyxLQUFLO2FBQzdCLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDUixHQUFHLENBQUMsVUFBQyxJQUFJLElBQUssT0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFHLEVBQXBCLENBQW9CLENBQUM7YUFDbkMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRWYsT0FBVSxTQUFTLFNBQUksb0JBQXNCLENBQUM7SUFDbEQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0kseUJBQVcsR0FBbEIsVUFBbUIsUUFBZ0I7UUFDL0IsSUFBSSxlQUFlLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ3JDLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxPQUFPLFFBQVE7YUFDVixJQUFJLEVBQUU7YUFDTixLQUFLLENBQUMsS0FBSyxDQUFDO2FBQ1osR0FBRyxDQUFDLFVBQUMsSUFBSSxJQUFLLE9BQUEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBNUIsQ0FBNEIsQ0FBQzthQUMzQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUNMLG9CQUFDO0FBQUQsQ0FBQyxBQWpFRCxJQWlFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFncm9TdHJpbmdVdGlscyB9IGZyb20gXCIuL2Fncm8tc3RyaW5nLXV0aWxzLmNsYXNzXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgQWdyb05hbWVVdGlscyB7XHJcbiAgICAvKipcclxuICAgICAqIEFicmV2aWEgbyDDumx0aW1vIHNvYnJlbm9tZSwgbWFudGVuZG8gbyBwcmltZWlybyBub21lIGNvbXBsZXRvLlxyXG4gICAgICogQHBhcmFtIGZ1bGxOYW1lIHZhbG9yIGNvbXBsZXRvIGRvIG5vbWUgKEV4OiBUaWFnbyBCYXRpc3RhIENvcnLDqmEpXHJcbiAgICAgKiBAcmV0dXJucyBub21lIGFicmV2aWFkbyAoRXg6IFRpYWdvIEMuKVxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgYWJicmV2aWF0ZU5hbWUoZnVsbE5hbWU6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgICAgIGlmIChBZ3JvU3RyaW5nVXRpbHMuaXNJbnZhbGlkKGZ1bGxOYW1lKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IHBhcnRzID0gZnVsbE5hbWUudHJpbSgpLnNwbGl0KC9cXHMrLyk7XHJcblxyXG4gICAgICAgIC8vIFZlcmlmaWNhIHNlIGjDoSBwZWxvIG1lbm9zIGR1YXMgcGFydGVzIG5vIG5vbWVcclxuICAgICAgICBpZiAocGFydHMubGVuZ3RoIDwgMikge1xyXG4gICAgICAgICAgICByZXR1cm4gZnVsbE5hbWU7IC8vIFJldG9ybmEgbyBub21lIG9yaWdpbmFsIHNlIG7Do28gcHVkZXIgc2VyIGFicmV2aWFkb1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgZmlyc3ROYW1lID0gcGFydHNbMF07IC8vIFByaW1laXJvIG5vbWUgY29tcGxldG9cclxuICAgICAgICBjb25zdCBsYXN0TmFtZSA9IHBhcnRzW3BhcnRzLmxlbmd0aCAtIDFdOyAvLyDDmmx0aW1vIHNvYnJlbm9tZVxyXG5cclxuICAgICAgICAvLyBSZXRvcm5hIG8gbm9tZSBhYnJldmlhZG9cclxuICAgICAgICByZXR1cm4gYCR7Zmlyc3ROYW1lfSAke2xhc3ROYW1lLmNoYXJBdCgwKX0uYDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEFicmV2aWEgdG9kb3Mgb3Mgc29icmVub21lcywgbWFudGVuZG8gbyBwcmltZWlybyBub21lIGNvbXBsZXRvLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBmdWxsTmFtZSBPIG5vbWUgY29tcGxldG8uIChFeDogVGlhZ28gQmF0aXN0YSBDb3Jyw6phKVxyXG4gICAgICogQHJldHVybnMgTyBub21lIGNvbSBvcyBzb2JyZW5vbWVzIGFicmV2aWFkb3MuIChFeDogVGlhZ28gQi4gQy4pXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBhYmJyZXZpYXRlQWxsTGFzdE5hbWVzKGZ1bGxOYW1lOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgICAgICBpZiAoQWdyb1N0cmluZ1V0aWxzLmlzSW52YWxpZChmdWxsTmFtZSkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBwYXJ0cyA9IGZ1bGxOYW1lLnRyaW0oKS5zcGxpdCgvXFxzKy8pO1xyXG4gICAgICAgIGlmIChwYXJ0cy5sZW5ndGggPCAyKSByZXR1cm4gZnVsbE5hbWU7XHJcblxyXG4gICAgICAgIGNvbnN0IGZpcnN0TmFtZSA9IHBhcnRzWzBdO1xyXG4gICAgICAgIGNvbnN0IGFiYnJldmlhdGVkTGFzdE5hbWVzID0gcGFydHNcclxuICAgICAgICAgICAgLnNsaWNlKDEpXHJcbiAgICAgICAgICAgIC5tYXAoKG5hbWUpID0+IGAke25hbWUuY2hhckF0KDApfS5gKVxyXG4gICAgICAgICAgICAuam9pbihcIiBcIik7XHJcblxyXG4gICAgICAgIHJldHVybiBgJHtmaXJzdE5hbWV9ICR7YWJicmV2aWF0ZWRMYXN0TmFtZXN9YDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldG9ybmEgYXMgaW5pY2lhaXMgZG8gbm9tZSBjb21wbGV0by5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gZnVsbE5hbWUgTyBub21lIGNvbXBsZXRvLiAoRXg6IFRpYWdvIEJhdGlzdGEgQ29ycsOqYSlcclxuICAgICAqIEByZXR1cm5zIFVtYSBzdHJpbmcgY29udGVuZG8gYXMgaW5pY2lhaXMgZG8gbm9tZS4gKEV4OiBUQkMpXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBnZXRJbml0aWFscyhmdWxsTmFtZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICAgICAgaWYgKEFncm9TdHJpbmdVdGlscy5pc0ludmFsaWQoZnVsbE5hbWUpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGZ1bGxOYW1lXHJcbiAgICAgICAgICAgIC50cmltKClcclxuICAgICAgICAgICAgLnNwbGl0KC9cXHMrLylcclxuICAgICAgICAgICAgLm1hcCgobmFtZSkgPT4gbmFtZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSlcclxuICAgICAgICAgICAgLmpvaW4oXCJcIik7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -0,0 +1,109 @@
1
+ /**
2
+ * Classe de utilitários para operações com números.
3
+ */
4
+ var AgroNumberUtils = /** @class */ (function () {
5
+ function AgroNumberUtils() {
6
+ }
7
+ /**
8
+ * Verifica se um número é nulo ou indefinido.
9
+ * @param num - O número a ser verificado.
10
+ * @returns True se o número for nulo ou indefinido, false caso contrário.
11
+ */
12
+ AgroNumberUtils.isNullOrUndefined = function (num) {
13
+ return num === null || num === undefined;
14
+ };
15
+ /**
16
+ * Verifica se um número não é nulo e não é indefinido.
17
+ * @param num - O número a ser verificado.
18
+ * @returns True se o número não for nulo e não for indefinido, false caso contrário.
19
+ */
20
+ AgroNumberUtils.isNotNullOrUndefined = function (num) {
21
+ return !AgroNumberUtils.isNullOrUndefined(num);
22
+ };
23
+ /**
24
+ * Verifica se um número é par.
25
+ *
26
+ * @param value O número a ser verificado.
27
+ * @returns True se for par, false caso contrário.
28
+ */
29
+ AgroNumberUtils.isEven = function (value) {
30
+ return value % 2 === 0;
31
+ };
32
+ /**
33
+ * Verifica se um número é ímpar.
34
+ *
35
+ * @param value O número a ser verificado.
36
+ * @returns True se for ímpar, false caso contrário.
37
+ */
38
+ AgroNumberUtils.isOdd = function (value) {
39
+ return value % 2 !== 0;
40
+ };
41
+ /**
42
+ * Calcula a porcentagem de um valor em relação a um total.
43
+ *
44
+ * @param partial O valor parcial.
45
+ * @param total O valor total.
46
+ * @returns A porcentagem calculada.
47
+ */
48
+ AgroNumberUtils.percentage = function (partial, total) {
49
+ if (total === 0)
50
+ throw new Error("O total não pode ser zero.");
51
+ return (partial / total) * 100;
52
+ };
53
+ /**
54
+ * Formata um número para o formato monetário.
55
+ *
56
+ * @param value O número a ser formatado.
57
+ * @param currency O símbolo da moeda (padrão: "BRL").
58
+ * @param locale O código da localidade (padrão: "pt-BR").
59
+ * @returns Uma string no formato monetário.
60
+ */
61
+ AgroNumberUtils.toCurrency = function (value, currency, locale) {
62
+ if (currency === void 0) { currency = "BRL"; }
63
+ if (locale === void 0) { locale = "pt-BR"; }
64
+ return new Intl.NumberFormat(locale, {
65
+ style: "currency",
66
+ currency: currency,
67
+ }).format(value);
68
+ };
69
+ /**
70
+ * Gera um número aleatório no intervalo especificado.
71
+ *
72
+ * @param min O valor mínimo (inclusivo).
73
+ * @param max O valor máximo (exclusivo).
74
+ * @returns Um número aleatório no intervalo.
75
+ */
76
+ AgroNumberUtils.randomInRange = function (min, max) {
77
+ return Math.random() * (max - min) + min;
78
+ };
79
+ /**
80
+ * Verifica se um número é primo.
81
+ *
82
+ * @param value O número a ser verificado.
83
+ * @returns True se for primo, false caso contrário.
84
+ */
85
+ AgroNumberUtils.isPrime = function (value) {
86
+ if (value <= 1)
87
+ return false;
88
+ for (var i = 2; i <= Math.sqrt(value); i++) {
89
+ if (value % i === 0)
90
+ return false;
91
+ }
92
+ return true;
93
+ };
94
+ /**
95
+ * Arredonda um número para `n` casas decimais.
96
+ *
97
+ * @param value O número a ser arredondado.
98
+ * @param decimals O número de casas decimais (padrão: 2).
99
+ * @returns O número arredondado.
100
+ */
101
+ AgroNumberUtils.roundTo = function (value, decimals) {
102
+ if (decimals === void 0) { decimals = 2; }
103
+ var factor = Math.pow(10, decimals);
104
+ return Math.round(value * factor) / factor;
105
+ };
106
+ return AgroNumberUtils;
107
+ }());
108
+ export { AgroNumberUtils };
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdyby1udW1iZXItdXRpbHMuY2xhc3MuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbW1vbi9hZ3JvLW51bWJlci11dGlscy5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNIO0lBQUE7SUFzR0EsQ0FBQztJQXJHRzs7OztPQUlHO0lBQ0ksaUNBQWlCLEdBQXhCLFVBQXlCLEdBQVE7UUFDN0IsT0FBTyxHQUFHLEtBQUssSUFBSSxJQUFJLEdBQUcsS0FBSyxTQUFTLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxvQ0FBb0IsR0FBM0IsVUFBNEIsR0FBUTtRQUNoQyxPQUFPLENBQUMsZUFBZSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLHNCQUFNLEdBQWIsVUFBYyxLQUFhO1FBQ3ZCLE9BQU8sS0FBSyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0kscUJBQUssR0FBWixVQUFhLEtBQWE7UUFDdEIsT0FBTyxLQUFLLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksMEJBQVUsR0FBakIsVUFBa0IsT0FBZSxFQUFFLEtBQWE7UUFDNUMsSUFBSSxLQUFLLEtBQUssQ0FBQztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUMvRCxPQUFPLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNJLDBCQUFVLEdBQWpCLFVBQWtCLEtBQWEsRUFBRSxRQUF3QixFQUFFLE1BQXdCO1FBQWxELHlCQUFBLEVBQUEsZ0JBQXdCO1FBQUUsdUJBQUEsRUFBQSxnQkFBd0I7UUFDL0UsT0FBTyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFO1lBQ2pDLEtBQUssRUFBRSxVQUFVO1lBQ2pCLFFBQVEsRUFBRSxRQUFRO1NBQ3JCLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLDZCQUFhLEdBQXBCLFVBQXFCLEdBQVcsRUFBRSxHQUFXO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSx1QkFBTyxHQUFkLFVBQWUsS0FBYTtRQUN4QixJQUFJLEtBQUssSUFBSSxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDN0IsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDeEMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxLQUFLLENBQUM7Z0JBQUUsT0FBTyxLQUFLLENBQUM7U0FDckM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksdUJBQU8sR0FBZCxVQUFlLEtBQWEsRUFBRSxRQUFvQjtRQUFwQix5QkFBQSxFQUFBLFlBQW9CO1FBQzlDLElBQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDO0lBQy9DLENBQUM7SUFDTCxzQkFBQztBQUFELENBQUMsQUF0R0QsSUFzR0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ2xhc3NlIGRlIHV0aWxpdMOhcmlvcyBwYXJhIG9wZXJhw6fDtWVzIGNvbSBuw7ptZXJvcy5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBBZ3JvTnVtYmVyVXRpbHMge1xyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bSBuw7ptZXJvIMOpIG51bG8gb3UgaW5kZWZpbmlkby5cclxuICAgICAqIEBwYXJhbSBudW0gLSBPIG7Dum1lcm8gYSBzZXIgdmVyaWZpY2Fkby5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgbyBuw7ptZXJvIGZvciBudWxvIG91IGluZGVmaW5pZG8sIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzTnVsbE9yVW5kZWZpbmVkKG51bTogYW55KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIG51bSA9PT0gbnVsbCB8fCBudW0gPT09IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtIG7Dum1lcm8gbsOjbyDDqSBudWxvIGUgbsOjbyDDqSBpbmRlZmluaWRvLlxyXG4gICAgICogQHBhcmFtIG51bSAtIE8gbsO6bWVybyBhIHNlciB2ZXJpZmljYWRvLlxyXG4gICAgICogQHJldHVybnMgVHJ1ZSBzZSBvIG7Dum1lcm8gbsOjbyBmb3IgbnVsbyBlIG7Do28gZm9yIGluZGVmaW5pZG8sIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzTm90TnVsbE9yVW5kZWZpbmVkKG51bTogYW55KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICFBZ3JvTnVtYmVyVXRpbHMuaXNOdWxsT3JVbmRlZmluZWQobnVtKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtIG7Dum1lcm8gw6kgcGFyLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB2YWx1ZSBPIG7Dum1lcm8gYSBzZXIgdmVyaWZpY2Fkby5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgZm9yIHBhciwgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNFdmVuKHZhbHVlOiBudW1iZXIpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdmFsdWUgJSAyID09PSAwO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW0gbsO6bWVybyDDqSDDrW1wYXIuXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHZhbHVlIE8gbsO6bWVybyBhIHNlciB2ZXJpZmljYWRvLlxyXG4gICAgICogQHJldHVybnMgVHJ1ZSBzZSBmb3Igw61tcGFyLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc09kZCh2YWx1ZTogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlICUgMiAhPT0gMDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENhbGN1bGEgYSBwb3JjZW50YWdlbSBkZSB1bSB2YWxvciBlbSByZWxhw6fDo28gYSB1bSB0b3RhbC5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gcGFydGlhbCBPIHZhbG9yIHBhcmNpYWwuXHJcbiAgICAgKiBAcGFyYW0gdG90YWwgTyB2YWxvciB0b3RhbC5cclxuICAgICAqIEByZXR1cm5zIEEgcG9yY2VudGFnZW0gY2FsY3VsYWRhLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgcGVyY2VudGFnZShwYXJ0aWFsOiBudW1iZXIsIHRvdGFsOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgICAgIGlmICh0b3RhbCA9PT0gMCkgdGhyb3cgbmV3IEVycm9yKFwiTyB0b3RhbCBuw6NvIHBvZGUgc2VyIHplcm8uXCIpO1xyXG4gICAgICAgIHJldHVybiAocGFydGlhbCAvIHRvdGFsKSAqIDEwMDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEZvcm1hdGEgdW0gbsO6bWVybyBwYXJhIG8gZm9ybWF0byBtb25ldMOhcmlvLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB2YWx1ZSBPIG7Dum1lcm8gYSBzZXIgZm9ybWF0YWRvLlxyXG4gICAgICogQHBhcmFtIGN1cnJlbmN5IE8gc8OtbWJvbG8gZGEgbW9lZGEgKHBhZHLDo286IFwiQlJMXCIpLlxyXG4gICAgICogQHBhcmFtIGxvY2FsZSBPIGPDs2RpZ28gZGEgbG9jYWxpZGFkZSAocGFkcsOjbzogXCJwdC1CUlwiKS5cclxuICAgICAqIEByZXR1cm5zIFVtYSBzdHJpbmcgbm8gZm9ybWF0byBtb25ldMOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgdG9DdXJyZW5jeSh2YWx1ZTogbnVtYmVyLCBjdXJyZW5jeTogc3RyaW5nID0gXCJCUkxcIiwgbG9jYWxlOiBzdHJpbmcgPSBcInB0LUJSXCIpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBuZXcgSW50bC5OdW1iZXJGb3JtYXQobG9jYWxlLCB7XHJcbiAgICAgICAgICAgIHN0eWxlOiBcImN1cnJlbmN5XCIsXHJcbiAgICAgICAgICAgIGN1cnJlbmN5OiBjdXJyZW5jeSxcclxuICAgICAgICB9KS5mb3JtYXQodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2VyYSB1bSBuw7ptZXJvIGFsZWF0w7NyaW8gbm8gaW50ZXJ2YWxvIGVzcGVjaWZpY2Fkby5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gbWluIE8gdmFsb3IgbcOtbmltbyAoaW5jbHVzaXZvKS5cclxuICAgICAqIEBwYXJhbSBtYXggTyB2YWxvciBtw6F4aW1vIChleGNsdXNpdm8pLlxyXG4gICAgICogQHJldHVybnMgVW0gbsO6bWVybyBhbGVhdMOzcmlvIG5vIGludGVydmFsby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIHJhbmRvbUluUmFuZ2UobWluOiBudW1iZXIsIG1heDogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gTWF0aC5yYW5kb20oKSAqIChtYXggLSBtaW4pICsgbWluO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW0gbsO6bWVybyDDqSBwcmltby5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gdmFsdWUgTyBuw7ptZXJvIGEgc2VyIHZlcmlmaWNhZG8uXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIGZvciBwcmltbywgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNQcmltZSh2YWx1ZTogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKHZhbHVlIDw9IDEpIHJldHVybiBmYWxzZTtcclxuICAgICAgICBmb3IgKGxldCBpID0gMjsgaSA8PSBNYXRoLnNxcnQodmFsdWUpOyBpKyspIHtcclxuICAgICAgICAgICAgaWYgKHZhbHVlICUgaSA9PT0gMCkgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEFycmVkb25kYSB1bSBuw7ptZXJvIHBhcmEgYG5gIGNhc2FzIGRlY2ltYWlzLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB2YWx1ZSBPIG7Dum1lcm8gYSBzZXIgYXJyZWRvbmRhZG8uXHJcbiAgICAgKiBAcGFyYW0gZGVjaW1hbHMgTyBuw7ptZXJvIGRlIGNhc2FzIGRlY2ltYWlzIChwYWRyw6NvOiAyKS5cclxuICAgICAqIEByZXR1cm5zIE8gbsO6bWVybyBhcnJlZG9uZGFkby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIHJvdW5kVG8odmFsdWU6IG51bWJlciwgZGVjaW1hbHM6IG51bWJlciA9IDIpOiBudW1iZXIge1xyXG4gICAgICAgIGNvbnN0IGZhY3RvciA9IE1hdGgucG93KDEwLCBkZWNpbWFscyk7XHJcbiAgICAgICAgcmV0dXJuIE1hdGgucm91bmQodmFsdWUgKiBmYWN0b3IpIC8gZmFjdG9yO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,250 @@
1
+ import { AGRO_NUMBERS } from "../enums";
2
+ export { AgroObjectUtils as AOU, AgroObjectUtils as ObjectUtils };
3
+ /**
4
+ * Classe utilitária para operações de objeto.
5
+ */
6
+ var AgroObjectUtils = /** @class */ (function () {
7
+ function AgroObjectUtils() {
8
+ }
9
+ /**
10
+ * Verifica se um objeto é nulo ou indefinido.
11
+ * @param obj - O objeto a ser verificado.
12
+ * @returns True se o objeto for nulo ou indefinido, false caso contrário.
13
+ */
14
+ AgroObjectUtils.isNullOrUndefined = function (obj) {
15
+ return obj === null || obj === undefined;
16
+ };
17
+ /**
18
+ * Verifica se um objeto não é nulo e não é indefinido.
19
+ * @param obj - O objeto a ser verificado.
20
+ * @returns True se o objeto não for nulo e não for indefinido, false caso contrário.
21
+ */
22
+ AgroObjectUtils.isNotNullOrUndefined = function (obj) {
23
+ return !AgroObjectUtils.isNullOrUndefined(obj);
24
+ };
25
+ /**
26
+ * Verifica se um objeto é uma string.
27
+ * @param obj - O objeto a ser verificado.
28
+ * @returns True se o objeto for uma string, false caso contrário.
29
+ */
30
+ AgroObjectUtils.isString = function (obj) {
31
+ return typeof obj === "string";
32
+ };
33
+ /**
34
+ * Verifica se um objeto é um número.
35
+ * @param obj - O objeto a ser verificado.
36
+ * @returns True se o objeto for um número, false caso contrário.
37
+ */
38
+ AgroObjectUtils.isNumber = function (obj) {
39
+ return typeof obj === "number";
40
+ };
41
+ /**
42
+ * Verifica se um objeto é um booleano.
43
+ * @param obj - O objeto a ser verificado.
44
+ * @returns True se o objeto for um booleano, false caso contrário.
45
+ */
46
+ AgroObjectUtils.isBoolean = function (obj) {
47
+ return typeof obj === "boolean";
48
+ };
49
+ /**
50
+ * Verifica se um objeto é uma função.
51
+ * @param obj - O objeto a ser verificado.
52
+ * @returns True se o objeto for uma função, false caso contrário.
53
+ */
54
+ AgroObjectUtils.isFunction = function (obj) {
55
+ return typeof obj === "function";
56
+ };
57
+ /**
58
+ * Verifica se um objeto é um array.
59
+ * @param obj - O objeto a ser verificado.
60
+ * @returns True se o objeto for um array, false caso contrário.
61
+ */
62
+ AgroObjectUtils.isArray = function (obj) {
63
+ return Array.isArray(obj);
64
+ };
65
+ /**
66
+ * Verifica se o valor informado é um objeto.
67
+ * @param obj - O objeto a ser verificado.
68
+ * @returns True se o objeto for um objeto, false caso contrário.
69
+ */
70
+ AgroObjectUtils.isObject = function (obj) {
71
+ return typeof obj === "object";
72
+ };
73
+ /**
74
+ * Verifica se um objeto é uma data.
75
+ * @param obj - O objeto a ser verificado.
76
+ * @returns True se o objeto for uma data, false caso contrário.
77
+ */
78
+ AgroObjectUtils.isDate = function (obj) {
79
+ return obj instanceof Date;
80
+ };
81
+ /**
82
+ * Verifica se um objeto é um erro.
83
+ * @param obj - O objeto a ser verificado.
84
+ * @returns True se o objeto for um erro, false caso contrário.
85
+ */
86
+ AgroObjectUtils.isError = function (obj) {
87
+ return obj instanceof Error;
88
+ };
89
+ /**
90
+ * Verifica se um objeto é uma expressão regular.
91
+ * @param obj - O objeto a ser verificado.
92
+ * @returns True se o objeto for uma expressão regular, false caso contrário.
93
+ */
94
+ AgroObjectUtils.isRegExp = function (obj) {
95
+ return obj instanceof RegExp;
96
+ };
97
+ /**
98
+ * Verifica se um objeto é um valor primitivo.
99
+ * @param obj - O objeto a ser verificado.
100
+ * @returns True se o objeto for um valor primitivo, false caso contrário.
101
+ */
102
+ AgroObjectUtils.isPrimitive = function (obj) {
103
+ return AgroObjectUtils.isString(obj) || AgroObjectUtils.isNumber(obj) || AgroObjectUtils.isBoolean(obj);
104
+ };
105
+ /**
106
+ * Verifica se todos os valores de um objeto são nulos ou indefinidos.
107
+ * @param obj - O objeto a ser verificado.
108
+ * @returns True se todos os valores do objeto forem nulos ou indefinidos, false caso contrário.
109
+ */
110
+ AgroObjectUtils.allNull = function (obj) {
111
+ if (!AgroObjectUtils.isObject(obj)) {
112
+ return false;
113
+ }
114
+ for (var key in obj) {
115
+ if (obj.hasOwnProperty(key) && !AgroObjectUtils.isNullOrUndefined(obj[key])) {
116
+ return false;
117
+ }
118
+ }
119
+ return true;
120
+ };
121
+ /**
122
+ * Compara dois objetos para verificar se são iguais.
123
+ * @param obj1 - O primeiro objeto a ser comparado.
124
+ * @param obj2 - O segundo objeto a ser comparado.
125
+ * @returns True se os objetos forem iguais, false caso contrário.
126
+ */
127
+ AgroObjectUtils.isEqual = function (obj1, obj2) {
128
+ if (JSON.stringify(obj1) === JSON.stringify(obj2)) {
129
+ return true;
130
+ }
131
+ return false;
132
+ };
133
+ /**
134
+ * Verifica se um objeto é nulo.
135
+ * @param obj - O objeto a ser verificado.
136
+ * @returns True se o objeto for nulo ou um objeto vazio, false caso contrário.
137
+ */
138
+ AgroObjectUtils.isNull = function (obj) {
139
+ return obj === null;
140
+ };
141
+ /**
142
+ * Verifica se um objeto não é nulo.
143
+ * @param obj - O objeto a ser verificado.
144
+ * @returns True se o objeto não for nulo, false caso contrário.
145
+ */
146
+ AgroObjectUtils.isNotNull = function (obj) {
147
+ return !AgroObjectUtils.isNull(obj);
148
+ };
149
+ /**
150
+ * Converte um objeto para uma string JSON.
151
+ * @param obj - O objeto a ser convertido.
152
+ * @returns A string JSON representando o objeto.
153
+ */
154
+ AgroObjectUtils.toJSON = function (obj) {
155
+ return JSON.stringify(obj);
156
+ };
157
+ /**
158
+ * Verifica se um objeto não é vazio.
159
+ * @param obj - O objeto a ser verificado.
160
+ * @returns True se o objeto não for vazio, false caso contrário.
161
+ */
162
+ AgroObjectUtils.isNotEmpty = function (obj) {
163
+ if (!AgroObjectUtils.isObject(obj)) {
164
+ return false;
165
+ }
166
+ return Object.keys(obj).length !== 0;
167
+ };
168
+ /**
169
+ * Verifica se um objeto é vazio.
170
+ * @param obj - O objeto a ser verificado.
171
+ * @returns True se o objeto for vazio, false caso contrário.
172
+ */
173
+ AgroObjectUtils.isEmpty = function (obj) {
174
+ return !AgroObjectUtils.isNotEmpty(obj);
175
+ };
176
+ /**
177
+ * Verifica se um objeto não está vazio e contém uma determinada propriedade.
178
+ * @param obj - O objeto a ser verificado.
179
+ * @param property - A propriedade a ser verificada.
180
+ * @returns True se o objeto não estiver vazio e contiver a propriedade, false caso contrário.
181
+ */
182
+ AgroObjectUtils.containsProperty = function (obj, property) {
183
+ return AgroObjectUtils.isNotEmpty(obj) && obj.hasOwnProperty(property);
184
+ };
185
+ /**
186
+ * Verifica se o parâmetro recebido é um objeto e se ele contém a propriedade ID.
187
+ */
188
+ AgroObjectUtils.hasId = function (obj) {
189
+ return AgroObjectUtils.isNotEmpty(obj) && obj.hasOwnProperty("id");
190
+ };
191
+ /**
192
+ * Verifica se o valor informado no parâmetro possui as propriedades de uma entidade SDL (id e createdAt).
193
+ * @param obj
194
+ * @returns
195
+ */
196
+ AgroObjectUtils.isSDLEntity = function (obj) {
197
+ return AgroObjectUtils.isNotEmpty(obj) && obj.hasOwnProperty("id") && obj.hasOwnProperty("createdAt");
198
+ };
199
+ /**
200
+ * Verifica se um objeto é valido, considerando que haja no mínimo 1 propriedade
201
+ */
202
+ AgroObjectUtils.isValid = function (obj) {
203
+ return Object.keys(obj).length > AGRO_NUMBERS.ZERO && AgroObjectUtils.isNotEmpty(obj);
204
+ };
205
+ /**
206
+ * Verifica se um objeto é inválido, considerando que não haja nenhuma propriedade
207
+ */
208
+ AgroObjectUtils.isInvalid = function (obj) {
209
+ return !AgroObjectUtils.isValid(obj);
210
+ };
211
+ /**
212
+ * Encontra uma propriedade em um objeto pelo nome e retorna seu valor.
213
+ * Se o valor for um objeto, retorna o próprio objeto.
214
+ *
215
+ * @param obj O objeto onde buscar.
216
+ * @param key O nome da propriedade a ser encontrada.
217
+ * @param deepSearch Indica se a busca deve ser em profundidade (padrão: true).
218
+ * @returns O valor da propriedade, ou undefined se não for encontrada.
219
+ */
220
+ AgroObjectUtils.findProperty = function (obj, key, deepSearch) {
221
+ if (deepSearch === void 0) { deepSearch = true; }
222
+ if (AgroObjectUtils.isInvalid(obj)) {
223
+ throw new Error("O primeiro argumento deve ser um objeto.");
224
+ }
225
+ if (key in obj) {
226
+ return obj[key];
227
+ }
228
+ if (deepSearch) {
229
+ for (var prop in obj) {
230
+ if (obj.hasOwnProperty(prop) && typeof obj[prop] === "object") {
231
+ var result = AgroObjectUtils.findProperty(obj[prop], key, deepSearch);
232
+ if (result !== undefined) {
233
+ return result;
234
+ }
235
+ }
236
+ }
237
+ }
238
+ return undefined;
239
+ };
240
+ /**
241
+ * Recebe uma string (JSON) e tenta converter para um objeto.
242
+ * @param value
243
+ */
244
+ AgroObjectUtils.fromString = function (value) {
245
+ return JSON.parse(value) || undefined;
246
+ };
247
+ return AgroObjectUtils;
248
+ }());
249
+ export { AgroObjectUtils };
250
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdyby1vYmplY3QtdXRpbHMuY2xhc3MuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbW1vbi9hZ3JvLW9iamVjdC11dGlscy5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXhDLE9BQU8sRUFBRSxlQUFlLElBQUksR0FBRyxFQUFFLGVBQWUsSUFBSSxXQUFXLEVBQUUsQ0FBQztBQUVsRTs7R0FFRztBQUNIO0lBQUE7SUE4UUEsQ0FBQztJQTdRRzs7OztPQUlHO0lBQ0ksaUNBQWlCLEdBQXhCLFVBQXlCLEdBQVE7UUFDN0IsT0FBTyxHQUFHLEtBQUssSUFBSSxJQUFJLEdBQUcsS0FBSyxTQUFTLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxvQ0FBb0IsR0FBM0IsVUFBNEIsR0FBUTtRQUNoQyxPQUFPLENBQUMsZUFBZSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksd0JBQVEsR0FBZixVQUFnQixHQUFRO1FBQ3BCLE9BQU8sT0FBTyxHQUFHLEtBQUssUUFBUSxDQUFDO0lBQ25DLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksd0JBQVEsR0FBZixVQUFnQixHQUFRO1FBQ3BCLE9BQU8sT0FBTyxHQUFHLEtBQUssUUFBUSxDQUFDO0lBQ25DLENBQUM7SUFFRDs7OztPQUlHO0lBQ0kseUJBQVMsR0FBaEIsVUFBaUIsR0FBUTtRQUNyQixPQUFPLE9BQU8sR0FBRyxLQUFLLFNBQVMsQ0FBQztJQUNwQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLDBCQUFVLEdBQWpCLFVBQWtCLEdBQVE7UUFDdEIsT0FBTyxPQUFPLEdBQUcsS0FBSyxVQUFVLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSx1QkFBTyxHQUFkLFVBQWUsR0FBUTtRQUNuQixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSx3QkFBUSxHQUFmLFVBQWdCLEdBQVE7UUFDcEIsT0FBTyxPQUFPLEdBQUcsS0FBSyxRQUFRLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxzQkFBTSxHQUFiLFVBQWMsR0FBUTtRQUNsQixPQUFPLEdBQUcsWUFBWSxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSx1QkFBTyxHQUFkLFVBQWUsR0FBUTtRQUNuQixPQUFPLEdBQUcsWUFBWSxLQUFLLENBQUM7SUFDaEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSx3QkFBUSxHQUFmLFVBQWdCLEdBQVE7UUFDcEIsT0FBTyxHQUFHLFlBQVksTUFBTSxDQUFDO0lBQ2pDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksMkJBQVcsR0FBbEIsVUFBbUIsR0FBUTtRQUN2QixPQUFPLGVBQWUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksZUFBZSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxlQUFlLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVHLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksdUJBQU8sR0FBZCxVQUFlLEdBQVE7UUFDbkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDaEMsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFFRCxLQUFLLElBQU0sR0FBRyxJQUFJLEdBQUcsRUFBRTtZQUNuQixJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7Z0JBQ3pFLE9BQU8sS0FBSyxDQUFDO2FBQ2hCO1NBQ0o7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSx1QkFBTyxHQUFkLFVBQWUsSUFBUyxFQUFFLElBQVM7UUFDL0IsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDL0MsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksc0JBQU0sR0FBYixVQUFjLEdBQVE7UUFDbEIsT0FBTyxHQUFHLEtBQUssSUFBSSxDQUFDO0lBQ3hCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0kseUJBQVMsR0FBaEIsVUFBaUIsR0FBUTtRQUNyQixPQUFPLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLHNCQUFNLEdBQWIsVUFBYyxHQUFRO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLDBCQUFVLEdBQWpCLFVBQWtCLEdBQVE7UUFDdEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDaEMsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFFRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLHVCQUFPLEdBQWQsVUFBZSxHQUFRO1FBQ25CLE9BQU8sQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLGdDQUFnQixHQUF2QixVQUF3QixHQUFRLEVBQUUsUUFBZ0I7UUFDOUMsT0FBTyxlQUFlLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVEOztPQUVHO0lBQ0kscUJBQUssR0FBWixVQUFhLEdBQVE7UUFDakIsT0FBTyxlQUFlLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSwyQkFBVyxHQUFsQixVQUFtQixHQUFRO1FBQ3ZCLE9BQU8sZUFBZSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUcsQ0FBQztJQUVEOztPQUVHO0lBQ0ksdUJBQU8sR0FBZCxVQUFlLEdBQVE7UUFDbkIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sR0FBRyxZQUFZLENBQUMsSUFBSSxJQUFJLGVBQWUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDMUYsQ0FBQztJQUVEOztPQUVHO0lBQ0kseUJBQVMsR0FBaEIsVUFBaUIsR0FBUTtRQUNyQixPQUFPLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSSw0QkFBWSxHQUFuQixVQUFvQixHQUF3QixFQUFFLEdBQVcsRUFBRSxVQUEwQjtRQUExQiwyQkFBQSxFQUFBLGlCQUEwQjtRQUNqRixJQUFJLGVBQWUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO1NBQy9EO1FBRUQsSUFBSSxHQUFHLElBQUksR0FBRyxFQUFFO1lBQ1osT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDbkI7UUFFRCxJQUFJLFVBQVUsRUFBRTtZQUNaLEtBQUssSUFBTSxJQUFJLElBQUksR0FBRyxFQUFFO2dCQUNwQixJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssUUFBUSxFQUFFO29CQUMzRCxJQUFNLE1BQU0sR0FBRyxlQUFlLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsVUFBVSxDQUFDLENBQUM7b0JBQ3hFLElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRTt3QkFDdEIsT0FBTyxNQUFNLENBQUM7cUJBQ2pCO2lCQUNKO2FBQ0o7U0FDSjtRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7O09BR0c7SUFDSSwwQkFBVSxHQUFqQixVQUFrQixLQUFhO1FBQzNCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxTQUFTLENBQUM7SUFDMUMsQ0FBQztJQUNMLHNCQUFDO0FBQUQsQ0FBQyxBQTlRRCxJQThRQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFHUk9fTlVNQkVSUyB9IGZyb20gXCIuLi9lbnVtc1wiO1xyXG5cclxuZXhwb3J0IHsgQWdyb09iamVjdFV0aWxzIGFzIEFPVSwgQWdyb09iamVjdFV0aWxzIGFzIE9iamVjdFV0aWxzIH07XHJcblxyXG4vKipcclxuICogQ2xhc3NlIHV0aWxpdMOhcmlhIHBhcmEgb3BlcmHDp8O1ZXMgZGUgb2JqZXRvLlxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIEFncm9PYmplY3RVdGlscyB7XHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtIG9iamV0byDDqSBudWxvIG91IGluZGVmaW5pZG8uXHJcbiAgICAgKiBAcGFyYW0gb2JqIC0gTyBvYmpldG8gYSBzZXIgdmVyaWZpY2Fkby5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgbyBvYmpldG8gZm9yIG51bG8gb3UgaW5kZWZpbmlkbywgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNOdWxsT3JVbmRlZmluZWQob2JqOiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gb2JqID09PSBudWxsIHx8IG9iaiA9PT0gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW0gb2JqZXRvIG7Do28gw6kgbnVsbyBlIG7Do28gw6kgaW5kZWZpbmlkby5cclxuICAgICAqIEBwYXJhbSBvYmogLSBPIG9iamV0byBhIHNlciB2ZXJpZmljYWRvLlxyXG4gICAgICogQHJldHVybnMgVHJ1ZSBzZSBvIG9iamV0byBuw6NvIGZvciBudWxvIGUgbsOjbyBmb3IgaW5kZWZpbmlkbywgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNOb3ROdWxsT3JVbmRlZmluZWQob2JqOiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gIUFncm9PYmplY3RVdGlscy5pc051bGxPclVuZGVmaW5lZChvYmopO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW0gb2JqZXRvIMOpIHVtYSBzdHJpbmcuXHJcbiAgICAgKiBAcGFyYW0gb2JqIC0gTyBvYmpldG8gYSBzZXIgdmVyaWZpY2Fkby5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgbyBvYmpldG8gZm9yIHVtYSBzdHJpbmcsIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzU3RyaW5nKG9iajogYW55KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBvYmogPT09IFwic3RyaW5nXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bSBvYmpldG8gw6kgdW0gbsO6bWVyby5cclxuICAgICAqIEBwYXJhbSBvYmogLSBPIG9iamV0byBhIHNlciB2ZXJpZmljYWRvLlxyXG4gICAgICogQHJldHVybnMgVHJ1ZSBzZSBvIG9iamV0byBmb3IgdW0gbsO6bWVybywgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNOdW1iZXIob2JqOiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdHlwZW9mIG9iaiA9PT0gXCJudW1iZXJcIjtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtIG9iamV0byDDqSB1bSBib29sZWFuby5cclxuICAgICAqIEBwYXJhbSBvYmogLSBPIG9iamV0byBhIHNlciB2ZXJpZmljYWRvLlxyXG4gICAgICogQHJldHVybnMgVHJ1ZSBzZSBvIG9iamV0byBmb3IgdW0gYm9vbGVhbm8sIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzQm9vbGVhbihvYmo6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0eXBlb2Ygb2JqID09PSBcImJvb2xlYW5cIjtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtIG9iamV0byDDqSB1bWEgZnVuw6fDo28uXHJcbiAgICAgKiBAcGFyYW0gb2JqIC0gTyBvYmpldG8gYSBzZXIgdmVyaWZpY2Fkby5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgbyBvYmpldG8gZm9yIHVtYSBmdW7Dp8OjbywgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNGdW5jdGlvbihvYmo6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0eXBlb2Ygb2JqID09PSBcImZ1bmN0aW9uXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bSBvYmpldG8gw6kgdW0gYXJyYXkuXHJcbiAgICAgKiBAcGFyYW0gb2JqIC0gTyBvYmpldG8gYSBzZXIgdmVyaWZpY2Fkby5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgbyBvYmpldG8gZm9yIHVtIGFycmF5LCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc0FycmF5KG9iajogYW55KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkob2JqKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIG8gdmFsb3IgaW5mb3JtYWRvIMOpIHVtIG9iamV0by5cclxuICAgICAqIEBwYXJhbSBvYmogLSBPIG9iamV0byBhIHNlciB2ZXJpZmljYWRvLlxyXG4gICAgICogQHJldHVybnMgVHJ1ZSBzZSBvIG9iamV0byBmb3IgdW0gb2JqZXRvLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc09iamVjdChvYmo6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0eXBlb2Ygb2JqID09PSBcIm9iamVjdFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW0gb2JqZXRvIMOpIHVtYSBkYXRhLlxyXG4gICAgICogQHBhcmFtIG9iaiAtIE8gb2JqZXRvIGEgc2VyIHZlcmlmaWNhZG8uXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIG8gb2JqZXRvIGZvciB1bWEgZGF0YSwgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNEYXRlKG9iajogYW55KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIG9iaiBpbnN0YW5jZW9mIERhdGU7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bSBvYmpldG8gw6kgdW0gZXJyby5cclxuICAgICAqIEBwYXJhbSBvYmogLSBPIG9iamV0byBhIHNlciB2ZXJpZmljYWRvLlxyXG4gICAgICogQHJldHVybnMgVHJ1ZSBzZSBvIG9iamV0byBmb3IgdW0gZXJybywgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNFcnJvcihvYmo6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBvYmogaW5zdGFuY2VvZiBFcnJvcjtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtIG9iamV0byDDqSB1bWEgZXhwcmVzc8OjbyByZWd1bGFyLlxyXG4gICAgICogQHBhcmFtIG9iaiAtIE8gb2JqZXRvIGEgc2VyIHZlcmlmaWNhZG8uXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIG8gb2JqZXRvIGZvciB1bWEgZXhwcmVzc8OjbyByZWd1bGFyLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc1JlZ0V4cChvYmo6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBvYmogaW5zdGFuY2VvZiBSZWdFeHA7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bSBvYmpldG8gw6kgdW0gdmFsb3IgcHJpbWl0aXZvLlxyXG4gICAgICogQHBhcmFtIG9iaiAtIE8gb2JqZXRvIGEgc2VyIHZlcmlmaWNhZG8uXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIG8gb2JqZXRvIGZvciB1bSB2YWxvciBwcmltaXRpdm8sIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzUHJpbWl0aXZlKG9iajogYW55KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIEFncm9PYmplY3RVdGlscy5pc1N0cmluZyhvYmopIHx8IEFncm9PYmplY3RVdGlscy5pc051bWJlcihvYmopIHx8IEFncm9PYmplY3RVdGlscy5pc0Jvb2xlYW4ob2JqKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHRvZG9zIG9zIHZhbG9yZXMgZGUgdW0gb2JqZXRvIHPDo28gbnVsb3Mgb3UgaW5kZWZpbmlkb3MuXHJcbiAgICAgKiBAcGFyYW0gb2JqIC0gTyBvYmpldG8gYSBzZXIgdmVyaWZpY2Fkby5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgdG9kb3Mgb3MgdmFsb3JlcyBkbyBvYmpldG8gZm9yZW0gbnVsb3Mgb3UgaW5kZWZpbmlkb3MsIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGFsbE51bGwob2JqOiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIUFncm9PYmplY3RVdGlscy5pc09iamVjdChvYmopKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIG9iaikge1xyXG4gICAgICAgICAgICBpZiAob2JqLmhhc093blByb3BlcnR5KGtleSkgJiYgIUFncm9PYmplY3RVdGlscy5pc051bGxPclVuZGVmaW5lZChvYmpba2V5XSkpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb21wYXJhIGRvaXMgb2JqZXRvcyBwYXJhIHZlcmlmaWNhciBzZSBzw6NvIGlndWFpcy5cclxuICAgICAqIEBwYXJhbSBvYmoxIC0gTyBwcmltZWlybyBvYmpldG8gYSBzZXIgY29tcGFyYWRvLlxyXG4gICAgICogQHBhcmFtIG9iajIgLSBPIHNlZ3VuZG8gb2JqZXRvIGEgc2VyIGNvbXBhcmFkby5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2Ugb3Mgb2JqZXRvcyBmb3JlbSBpZ3VhaXMsIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzRXF1YWwob2JqMTogYW55LCBvYmoyOiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoSlNPTi5zdHJpbmdpZnkob2JqMSkgPT09IEpTT04uc3RyaW5naWZ5KG9iajIpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW0gb2JqZXRvIMOpIG51bG8uXHJcbiAgICAgKiBAcGFyYW0gb2JqIC0gTyBvYmpldG8gYSBzZXIgdmVyaWZpY2Fkby5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgbyBvYmpldG8gZm9yIG51bG8gb3UgdW0gb2JqZXRvIHZhemlvLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc051bGwob2JqOiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gb2JqID09PSBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW0gb2JqZXRvIG7Do28gw6kgbnVsby5cclxuICAgICAqIEBwYXJhbSBvYmogLSBPIG9iamV0byBhIHNlciB2ZXJpZmljYWRvLlxyXG4gICAgICogQHJldHVybnMgVHJ1ZSBzZSBvIG9iamV0byBuw6NvIGZvciBudWxvLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc05vdE51bGwob2JqOiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gIUFncm9PYmplY3RVdGlscy5pc051bGwob2JqKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENvbnZlcnRlIHVtIG9iamV0byBwYXJhIHVtYSBzdHJpbmcgSlNPTi5cclxuICAgICAqIEBwYXJhbSBvYmogLSBPIG9iamV0byBhIHNlciBjb252ZXJ0aWRvLlxyXG4gICAgICogQHJldHVybnMgQSBzdHJpbmcgSlNPTiByZXByZXNlbnRhbmRvIG8gb2JqZXRvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgdG9KU09OKG9iajogYW55KTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkob2JqKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtIG9iamV0byBuw6NvIMOpIHZhemlvLlxyXG4gICAgICogQHBhcmFtIG9iaiAtIE8gb2JqZXRvIGEgc2VyIHZlcmlmaWNhZG8uXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIG8gb2JqZXRvIG7Do28gZm9yIHZhemlvLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc05vdEVtcHR5KG9iajogYW55KTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCFBZ3JvT2JqZWN0VXRpbHMuaXNPYmplY3Qob2JqKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMob2JqKS5sZW5ndGggIT09IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bSBvYmpldG8gw6kgdmF6aW8uXHJcbiAgICAgKiBAcGFyYW0gb2JqIC0gTyBvYmpldG8gYSBzZXIgdmVyaWZpY2Fkby5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgbyBvYmpldG8gZm9yIHZhemlvLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc0VtcHR5KG9iajogYW55KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICFBZ3JvT2JqZWN0VXRpbHMuaXNOb3RFbXB0eShvYmopO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW0gb2JqZXRvIG7Do28gZXN0w6EgdmF6aW8gZSBjb250w6ltIHVtYSBkZXRlcm1pbmFkYSBwcm9wcmllZGFkZS5cclxuICAgICAqIEBwYXJhbSBvYmogLSBPIG9iamV0byBhIHNlciB2ZXJpZmljYWRvLlxyXG4gICAgICogQHBhcmFtIHByb3BlcnR5IC0gQSBwcm9wcmllZGFkZSBhIHNlciB2ZXJpZmljYWRhLlxyXG4gICAgICogQHJldHVybnMgVHJ1ZSBzZSBvIG9iamV0byBuw6NvIGVzdGl2ZXIgdmF6aW8gZSBjb250aXZlciBhIHByb3ByaWVkYWRlLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBjb250YWluc1Byb3BlcnR5KG9iajogYW55LCBwcm9wZXJ0eTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIEFncm9PYmplY3RVdGlscy5pc05vdEVtcHR5KG9iaikgJiYgb2JqLmhhc093blByb3BlcnR5KHByb3BlcnR5KTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIG8gcGFyw6JtZXRybyByZWNlYmlkbyDDqSB1bSBvYmpldG8gZSBzZSBlbGUgY29udMOpbSBhIHByb3ByaWVkYWRlIElELlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaGFzSWQob2JqOiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gQWdyb09iamVjdFV0aWxzLmlzTm90RW1wdHkob2JqKSAmJiBvYmouaGFzT3duUHJvcGVydHkoXCJpZFwiKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIG8gdmFsb3IgaW5mb3JtYWRvIG5vIHBhcsOibWV0cm8gcG9zc3VpIGFzIHByb3ByaWVkYWRlcyBkZSB1bWEgZW50aWRhZGUgU0RMIChpZCBlIGNyZWF0ZWRBdCkuXHJcbiAgICAgKiBAcGFyYW0gb2JqXHJcbiAgICAgKiBAcmV0dXJuc1xyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNTRExFbnRpdHkob2JqOiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gQWdyb09iamVjdFV0aWxzLmlzTm90RW1wdHkob2JqKSAmJiBvYmouaGFzT3duUHJvcGVydHkoXCJpZFwiKSAmJiBvYmouaGFzT3duUHJvcGVydHkoXCJjcmVhdGVkQXRcIik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bSBvYmpldG8gw6kgdmFsaWRvLCBjb25zaWRlcmFuZG8gcXVlIGhhamEgbm8gbcOtbmltbyAxIHByb3ByaWVkYWRlXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc1ZhbGlkKG9iajogYW55KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKG9iaikubGVuZ3RoID4gQUdST19OVU1CRVJTLlpFUk8gJiYgQWdyb09iamVjdFV0aWxzLmlzTm90RW1wdHkob2JqKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtIG9iamV0byDDqSBpbnbDoWxpZG8sIGNvbnNpZGVyYW5kbyBxdWUgbsOjbyBoYWphIG5lbmh1bWEgcHJvcHJpZWRhZGVcclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzSW52YWxpZChvYmo6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhQWdyb09iamVjdFV0aWxzLmlzVmFsaWQob2JqKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEVuY29udHJhIHVtYSBwcm9wcmllZGFkZSBlbSB1bSBvYmpldG8gcGVsbyBub21lIGUgcmV0b3JuYSBzZXUgdmFsb3IuXHJcbiAgICAgKiBTZSBvIHZhbG9yIGZvciB1bSBvYmpldG8sIHJldG9ybmEgbyBwcsOzcHJpbyBvYmpldG8uXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIG9iaiBPIG9iamV0byBvbmRlIGJ1c2Nhci5cclxuICAgICAqIEBwYXJhbSBrZXkgTyBub21lIGRhIHByb3ByaWVkYWRlIGEgc2VyIGVuY29udHJhZGEuXHJcbiAgICAgKiBAcGFyYW0gZGVlcFNlYXJjaCBJbmRpY2Egc2UgYSBidXNjYSBkZXZlIHNlciBlbSBwcm9mdW5kaWRhZGUgKHBhZHLDo286IHRydWUpLlxyXG4gICAgICogQHJldHVybnMgTyB2YWxvciBkYSBwcm9wcmllZGFkZSwgb3UgdW5kZWZpbmVkIHNlIG7Do28gZm9yIGVuY29udHJhZGEuXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBmaW5kUHJvcGVydHkob2JqOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBrZXk6IHN0cmluZywgZGVlcFNlYXJjaDogYm9vbGVhbiA9IHRydWUpOiBhbnkge1xyXG4gICAgICAgIGlmIChBZ3JvT2JqZWN0VXRpbHMuaXNJbnZhbGlkKG9iaikpIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTyBwcmltZWlybyBhcmd1bWVudG8gZGV2ZSBzZXIgdW0gb2JqZXRvLlwiKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChrZXkgaW4gb2JqKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBvYmpba2V5XTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChkZWVwU2VhcmNoKSB7XHJcbiAgICAgICAgICAgIGZvciAoY29uc3QgcHJvcCBpbiBvYmopIHtcclxuICAgICAgICAgICAgICAgIGlmIChvYmouaGFzT3duUHJvcGVydHkocHJvcCkgJiYgdHlwZW9mIG9ialtwcm9wXSA9PT0gXCJvYmplY3RcIikge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IEFncm9PYmplY3RVdGlscy5maW5kUHJvcGVydHkob2JqW3Byb3BdLCBrZXksIGRlZXBTZWFyY2gpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJlY2ViZSB1bWEgc3RyaW5nIChKU09OKSBlIHRlbnRhIGNvbnZlcnRlciBwYXJhIHVtIG9iamV0by5cclxuICAgICAqIEBwYXJhbSB2YWx1ZVxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgZnJvbVN0cmluZyh2YWx1ZTogc3RyaW5nKTogYW55IHtcclxuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSh2YWx1ZSkgfHwgdW5kZWZpbmVkO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==