@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.
- package/agro-angular-components.module.d.ts +9 -0
- package/bundles/senior-agronegocio-angular-components.umd.js +5855 -0
- package/bundles/senior-agronegocio-angular-components.umd.js.map +1 -0
- package/bundles/senior-agronegocio-angular-components.umd.min.js +17 -0
- package/bundles/senior-agronegocio-angular-components.umd.min.js.map +1 -0
- package/common/agro-array-utils.class.d.ts +35 -0
- package/common/agro-cookie-utils.class.d.ts +8 -0
- package/common/agro-date-utils.class.d.ts +88 -0
- package/common/agro-name-utils.class.d.ts +22 -0
- package/common/agro-number-utils.class.d.ts +71 -0
- package/common/agro-object-utils.class.d.ts +161 -0
- package/common/agro-platform-utils.class.d.ts +38 -0
- package/common/agro-regex.constant.d.ts +142 -0
- package/common/agro-string-utils.class.d.ts +194 -0
- package/common/colors.class.d.ts +76 -0
- package/common/index.d.ts +10 -0
- package/components/event-control-board/common/control-status.d.ts +5 -0
- package/components/event-control-board/common/documentsToIssue.d.ts +4 -0
- package/components/event-control-board/common/event-control-constants.d.ts +15 -0
- package/components/event-control-board/common/event-operation.d.ts +11 -0
- package/components/event-control-board/common/event-origin.d.ts +7 -0
- package/components/event-control-board/common/event-status.d.ts +7 -0
- package/components/event-control-board/common/invoice-status.d.ts +12 -0
- package/components/event-control-board/common/invoice-type.d.ts +5 -0
- package/components/event-control-board/common/lookup-error-message.constants.d.ts +3 -0
- package/components/event-control-board/common/operation.d.ts +5 -0
- package/components/event-control-board/common/operationType.d.ts +5 -0
- package/components/event-control-board/common/status-entity.d.ts +4 -0
- package/components/event-control-board/common/ticket-status.d.ts +7 -0
- package/components/event-control-board/event-control-board.component.d.ts +97 -0
- package/components/event-control-board/event-control-board.module.d.ts +2 -0
- package/components/event-control-board/index.d.ts +20 -0
- package/components/event-control-board/service/e001pes/e001pes-dto.d.ts +12 -0
- package/components/event-control-board/service/e001pes/e001pes.d.ts +15 -0
- package/components/event-control-board/service/e001pes/e001pes.module.d.ts +2 -0
- package/components/event-control-board/service/e001pes/e001pes.service.d.ts +13 -0
- package/components/event-control-board/service/e001tns/e001tns-dto.d.ts +14 -0
- package/components/event-control-board/service/e001tns/e001tns.d.ts +19 -0
- package/components/event-control-board/service/e001tns/e001tns.module.d.ts +2 -0
- package/components/event-control-board/service/e001tns/e001tns.service.d.ts +11 -0
- package/components/event-control-board/service/e012fam/e012fam-dto.d.ts +11 -0
- package/components/event-control-board/service/e012fam/e012fam.d.ts +14 -0
- package/components/event-control-board/service/e012fam/e012fam.service.d.ts +11 -0
- package/components/event-control-board/service/e070emp/e070emp-dto.d.ts +10 -0
- package/components/event-control-board/service/e070emp/e070emp.d.ts +13 -0
- package/components/event-control-board/service/e070emp/e070emp.module.d.ts +2 -0
- package/components/event-control-board/service/e070emp/e070emp.service.d.ts +12 -0
- package/components/event-control-board/service/e070fil/e070fil-dto.d.ts +14 -0
- package/components/event-control-board/service/e070fil/e070fil.d.ts +17 -0
- package/components/event-control-board/service/e070fil/e070fil.module.d.ts +2 -0
- package/components/event-control-board/service/e070fil/e070fil.service.d.ts +12 -0
- package/components/event-control-board/service/e075der/e075der-dto.d.ts +15 -0
- package/components/event-control-board/service/e075der/e075der.d.ts +18 -0
- package/components/event-control-board/service/e075der/e075der.module.d.ts +2 -0
- package/components/event-control-board/service/e075der/e075der.service.d.ts +12 -0
- package/components/event-control-board/service/e113saf/e113saf-dto.d.ts +11 -0
- package/components/event-control-board/service/e113saf/e113saf.d.ts +14 -0
- package/components/event-control-board/service/e205dep/deposit-dto.d.ts +11 -0
- package/components/event-control-board/service/e205dep/e205dep-dto.d.ts +15 -0
- package/components/event-control-board/service/e205dep/e205dep.d.ts +16 -0
- package/components/event-control-board/service/e205dep/e205dep.service.d.ts +12 -0
- package/components/event-control-board/service/entity-service.d.ts +72 -0
- package/components/event-control-board/service/event-control/event-control-dto.d.ts +12 -0
- package/components/event-control-board/service/event-control/event-control.d.ts +18 -0
- package/components/event-control-board/service/event-control/event-control.module.d.ts +2 -0
- package/components/event-control-board/service/event-control/event-control.service.d.ts +11 -0
- package/components/event-control-board/service/event-control-board.service.d.ts +11 -0
- package/components/event-control-board/service/event-control-item/event-control-item-dto.d.ts +17 -0
- package/components/event-control-board/service/event-control-item/event-control-item.d.ts +23 -0
- package/components/event-control-board/service/event-control-item/event-control-item.module.d.ts +2 -0
- package/components/event-control-board/service/event-control-item/event-control-item.service.d.ts +15 -0
- package/components/event-control-board/service/external-invoice/external-invoice-dto.d.ts +13 -0
- package/components/event-control-board/service/external-invoice/external-invoice.d.ts +13 -0
- package/components/event-control-board/service/external-invoice/external-invoice.module.d.ts +2 -0
- package/components/event-control-board/service/external-invoice/external-invoice.service.d.ts +11 -0
- package/components/event-control-board/service/invoice/invoice-dto.d.ts +15 -0
- package/components/event-control-board/service/invoice/invoice.d.ts +21 -0
- package/components/event-control-board/service/invoice/invoice.module.d.ts +2 -0
- package/components/event-control-board/service/invoice/invoice.service.d.ts +11 -0
- package/components/event-control-board/service/origination/operationType.d.ts +5 -0
- package/components/event-control-board/service/origination/origination-dto.d.ts +50 -0
- package/components/event-control-board/service/origination/origination.d.ts +51 -0
- package/components/event-control-board/service/origination/origination.module.d.ts +2 -0
- package/components/event-control-board/service/origination/origination.service.d.ts +11 -0
- package/components/event-control-board/service/paginator-storage.service.d.ts +8 -0
- package/components/event-control-board/service/producer-invoice/producer-invoice-dto.d.ts +26 -0
- package/components/event-control-board/service/producer-invoice/producer-invoice.d.ts +27 -0
- package/components/event-control-board/service/producer-invoice/producer-invoice.module.d.ts +2 -0
- package/components/event-control-board/service/producer-invoice/producer-invoice.service.d.ts +11 -0
- package/components/event-control-board/service/rural-estate/rural-estate-dto.d.ts +28 -0
- package/components/event-control-board/service/rural-estate/rural-estate.d.ts +34 -0
- package/components/event-control-board/service/rural-estate/rural-estate.module.d.ts +2 -0
- package/components/event-control-board/service/rural-estate/rural-estate.service.d.ts +11 -0
- package/components/event-control-board/service/ticket/ticket-dto.d.ts +17 -0
- package/components/event-control-board/service/ticket/ticket.d.ts +18 -0
- package/components/event-control-board/service/ticket/ticket.module.d.ts +2 -0
- package/components/event-control-board/service/ticket/ticket.service.d.ts +45 -0
- package/components/event-control-board/shared.module.d.ts +2 -0
- package/components/event-steps/event-steps.component.d.ts +35 -0
- package/components/event-steps/event-steps.module.d.ts +2 -0
- package/components/event-steps/index.d.ts +2 -0
- package/components/index.d.ts +2 -0
- package/enums/agro-entity-status.enum.d.ts +4 -0
- package/enums/agro-numbers.enum.d.ts +1006 -0
- package/enums/agro-string-masks.enum.d.ts +10 -0
- package/enums/date-comparison-type.enum.d.ts +4 -0
- package/enums/http-codes.enum.d.ts +64 -0
- package/enums/index.d.ts +6 -0
- package/enums/number-comparison-type.enum.d.ts +8 -0
- package/esm2015/agro-angular-components.module.js +22 -0
- package/esm2015/common/agro-array-utils.class.js +56 -0
- package/esm2015/common/agro-cookie-utils.class.js +31 -0
- package/esm2015/common/agro-date-utils.class.js +117 -0
- package/esm2015/common/agro-name-utils.class.js +59 -0
- package/esm2015/common/agro-number-utils.class.js +102 -0
- package/esm2015/common/agro-object-utils.class.js +245 -0
- package/esm2015/common/agro-platform-utils.class.js +97 -0
- package/esm2015/common/agro-regex.constant.js +143 -0
- package/esm2015/common/agro-string-utils.class.js +367 -0
- package/esm2015/common/colors.class.js +77 -0
- package/esm2015/common/index.js +11 -0
- package/esm2015/components/event-control-board/common/control-status.js +7 -0
- package/esm2015/components/event-control-board/common/documentsToIssue.js +6 -0
- package/esm2015/components/event-control-board/common/event-control-constants.js +28 -0
- package/esm2015/components/event-control-board/common/event-operation.js +13 -0
- package/esm2015/components/event-control-board/common/event-origin.js +9 -0
- package/esm2015/components/event-control-board/common/event-status.js +9 -0
- package/esm2015/components/event-control-board/common/invoice-status.js +14 -0
- package/esm2015/components/event-control-board/common/invoice-type.js +7 -0
- package/esm2015/components/event-control-board/common/lookup-error-message.constants.js +11 -0
- package/esm2015/components/event-control-board/common/operation.js +7 -0
- package/esm2015/components/event-control-board/common/operationType.js +7 -0
- package/esm2015/components/event-control-board/common/status-entity.js +6 -0
- package/esm2015/components/event-control-board/common/ticket-status.js +9 -0
- package/esm2015/components/event-control-board/event-control-board.component.js +503 -0
- package/esm2015/components/event-control-board/event-control-board.module.js +62 -0
- package/esm2015/components/event-control-board/index.js +21 -0
- package/esm2015/components/event-control-board/service/e001pes/e001pes-dto.js +1 -0
- package/esm2015/components/event-control-board/service/e001pes/e001pes.js +20 -0
- package/esm2015/components/event-control-board/service/e001pes/e001pes.module.js +24 -0
- package/esm2015/components/event-control-board/service/e001pes/e001pes.service.js +34 -0
- package/esm2015/components/event-control-board/service/e001tns/e001tns-dto.js +1 -0
- package/esm2015/components/event-control-board/service/e001tns/e001tns.js +42 -0
- package/esm2015/components/event-control-board/service/e001tns/e001tns.module.js +26 -0
- package/esm2015/components/event-control-board/service/e001tns/e001tns.service.js +24 -0
- package/esm2015/components/event-control-board/service/e012fam/e012fam-dto.js +1 -0
- package/esm2015/components/event-control-board/service/e012fam/e012fam.js +20 -0
- package/esm2015/components/event-control-board/service/e012fam/e012fam.service.js +24 -0
- package/esm2015/components/event-control-board/service/e070emp/e070emp-dto.js +1 -0
- package/esm2015/components/event-control-board/service/e070emp/e070emp.js +29 -0
- package/esm2015/components/event-control-board/service/e070emp/e070emp.module.js +24 -0
- package/esm2015/components/event-control-board/service/e070emp/e070emp.service.js +31 -0
- package/esm2015/components/event-control-board/service/e070fil/e070fil-dto.js +1 -0
- package/esm2015/components/event-control-board/service/e070fil/e070fil.js +41 -0
- package/esm2015/components/event-control-board/service/e070fil/e070fil.module.js +24 -0
- package/esm2015/components/event-control-board/service/e070fil/e070fil.service.js +31 -0
- package/esm2015/components/event-control-board/service/e075der/e075der-dto.js +1 -0
- package/esm2015/components/event-control-board/service/e075der/e075der.js +31 -0
- package/esm2015/components/event-control-board/service/e075der/e075der.module.js +24 -0
- package/esm2015/components/event-control-board/service/e075der/e075der.service.js +29 -0
- package/esm2015/components/event-control-board/service/e113saf/e113saf-dto.js +1 -0
- package/esm2015/components/event-control-board/service/e113saf/e113saf.js +20 -0
- package/esm2015/components/event-control-board/service/e205dep/deposit-dto.js +1 -0
- package/esm2015/components/event-control-board/service/e205dep/e205dep-dto.js +1 -0
- package/esm2015/components/event-control-board/service/e205dep/e205dep.js +20 -0
- package/esm2015/components/event-control-board/service/e205dep/e205dep.service.js +29 -0
- package/esm2015/components/event-control-board/service/entity-service.js +129 -0
- package/esm2015/components/event-control-board/service/event-control/event-control-dto.js +1 -0
- package/esm2015/components/event-control-board/service/event-control/event-control.js +20 -0
- package/esm2015/components/event-control-board/service/event-control/event-control.module.js +26 -0
- package/esm2015/components/event-control-board/service/event-control/event-control.service.js +24 -0
- package/esm2015/components/event-control-board/service/event-control-board.service.js +33 -0
- package/esm2015/components/event-control-board/service/event-control-item/event-control-item-dto.js +1 -0
- package/esm2015/components/event-control-board/service/event-control-item/event-control-item.js +34 -0
- package/esm2015/components/event-control-board/service/event-control-item/event-control-item.module.js +26 -0
- package/esm2015/components/event-control-board/service/event-control-item/event-control-item.service.js +29 -0
- package/esm2015/components/event-control-board/service/external-invoice/external-invoice-dto.js +1 -0
- package/esm2015/components/event-control-board/service/external-invoice/external-invoice.js +20 -0
- package/esm2015/components/event-control-board/service/external-invoice/external-invoice.module.js +26 -0
- package/esm2015/components/event-control-board/service/external-invoice/external-invoice.service.js +24 -0
- package/esm2015/components/event-control-board/service/invoice/invoice-dto.js +1 -0
- package/esm2015/components/event-control-board/service/invoice/invoice.js +43 -0
- package/esm2015/components/event-control-board/service/invoice/invoice.module.js +26 -0
- package/esm2015/components/event-control-board/service/invoice/invoice.service.js +24 -0
- package/esm2015/components/event-control-board/service/origination/operationType.js +7 -0
- package/esm2015/components/event-control-board/service/origination/origination-dto.js +1 -0
- package/esm2015/components/event-control-board/service/origination/origination.js +59 -0
- package/esm2015/components/event-control-board/service/origination/origination.module.js +24 -0
- package/esm2015/components/event-control-board/service/origination/origination.service.js +24 -0
- package/esm2015/components/event-control-board/service/paginator-storage.service.js +32 -0
- package/esm2015/components/event-control-board/service/producer-invoice/producer-invoice-dto.js +1 -0
- package/esm2015/components/event-control-board/service/producer-invoice/producer-invoice.js +32 -0
- package/esm2015/components/event-control-board/service/producer-invoice/producer-invoice.module.js +26 -0
- package/esm2015/components/event-control-board/service/producer-invoice/producer-invoice.service.js +24 -0
- package/esm2015/components/event-control-board/service/rural-estate/rural-estate-dto.js +1 -0
- package/esm2015/components/event-control-board/service/rural-estate/rural-estate.js +78 -0
- package/esm2015/components/event-control-board/service/rural-estate/rural-estate.module.js +26 -0
- package/esm2015/components/event-control-board/service/rural-estate/rural-estate.service.js +24 -0
- package/esm2015/components/event-control-board/service/ticket/ticket-dto.js +1 -0
- package/esm2015/components/event-control-board/service/ticket/ticket.js +39 -0
- package/esm2015/components/event-control-board/service/ticket/ticket.module.js +26 -0
- package/esm2015/components/event-control-board/service/ticket/ticket.service.js +59 -0
- package/esm2015/components/event-control-board/shared.module.js +60 -0
- package/esm2015/components/event-steps/event-steps.component.js +103 -0
- package/esm2015/components/event-steps/event-steps.module.js +16 -0
- package/esm2015/components/event-steps/index.js +3 -0
- package/esm2015/components/index.js +3 -0
- package/esm2015/enums/agro-entity-status.enum.js +6 -0
- package/esm2015/enums/agro-numbers.enum.js +1007 -0
- package/esm2015/enums/agro-string-masks.enum.js +12 -0
- package/esm2015/enums/date-comparison-type.enum.js +6 -0
- package/esm2015/enums/http-codes.enum.js +66 -0
- package/esm2015/enums/index.js +7 -0
- package/esm2015/enums/number-comparison-type.enum.js +10 -0
- package/esm2015/form-validator/agro-form-validator.js +229 -0
- package/esm2015/form-validator/index.js +2 -0
- package/esm2015/lib-translation.module.js +21 -0
- package/esm2015/pipe/index.js +2 -0
- package/esm2015/pipe/lib-translate.pipe.js +24 -0
- package/esm2015/public-api.js +9 -0
- package/esm2015/senior-agronegocio-angular-components.js +6 -0
- package/esm2015/services/i18n/en-US.js +195 -0
- package/esm2015/services/i18n/es-CO.js +195 -0
- package/esm2015/services/i18n/pt-BR.js +195 -0
- package/esm2015/services/index.js +3 -0
- package/esm2015/services/lib-translation.service.js +54 -0
- package/esm2015/services/websocket/async-lock.js +34 -0
- package/esm2015/services/websocket/index.js +6 -0
- package/esm2015/services/websocket/models/index.js +2 -0
- package/esm2015/services/websocket/models/primitive-manager.js +39 -0
- package/esm2015/services/websocket/protocols/index.js +1 -0
- package/esm2015/services/websocket/protocols/on-event-options.js +1 -0
- package/esm2015/services/websocket/protocols/primitive-event.js +1 -0
- package/esm2015/services/websocket/user-information.service.js +34 -0
- package/esm2015/services/websocket/websocket.module.js +21 -0
- package/esm2015/services/websocket/websocket.service.js +339 -0
- package/esm5/agro-angular-components.module.js +26 -0
- package/esm5/common/agro-array-utils.class.js +72 -0
- package/esm5/common/agro-cookie-utils.class.js +38 -0
- package/esm5/common/agro-date-utils.class.js +122 -0
- package/esm5/common/agro-name-utils.class.js +63 -0
- package/esm5/common/agro-number-utils.class.js +109 -0
- package/esm5/common/agro-object-utils.class.js +250 -0
- package/esm5/common/agro-platform-utils.class.js +101 -0
- package/esm5/common/agro-regex.constant.js +143 -0
- package/esm5/common/agro-string-utils.class.js +383 -0
- package/esm5/common/colors.class.js +81 -0
- package/esm5/common/index.js +11 -0
- package/esm5/components/event-control-board/common/control-status.js +7 -0
- package/esm5/components/event-control-board/common/documentsToIssue.js +6 -0
- package/esm5/components/event-control-board/common/event-control-constants.js +28 -0
- package/esm5/components/event-control-board/common/event-operation.js +13 -0
- package/esm5/components/event-control-board/common/event-origin.js +9 -0
- package/esm5/components/event-control-board/common/event-status.js +9 -0
- package/esm5/components/event-control-board/common/invoice-status.js +14 -0
- package/esm5/components/event-control-board/common/invoice-type.js +7 -0
- package/esm5/components/event-control-board/common/lookup-error-message.constants.js +11 -0
- package/esm5/components/event-control-board/common/operation.js +7 -0
- package/esm5/components/event-control-board/common/operationType.js +7 -0
- package/esm5/components/event-control-board/common/status-entity.js +6 -0
- package/esm5/components/event-control-board/common/ticket-status.js +9 -0
- package/esm5/components/event-control-board/event-control-board.component.js +528 -0
- package/esm5/components/event-control-board/event-control-board.module.js +65 -0
- package/esm5/components/event-control-board/index.js +21 -0
- package/esm5/components/event-control-board/service/e001pes/e001pes-dto.js +1 -0
- package/esm5/components/event-control-board/service/e001pes/e001pes.js +25 -0
- package/esm5/components/event-control-board/service/e001pes/e001pes.module.js +27 -0
- package/esm5/components/event-control-board/service/e001pes/e001pes.service.js +37 -0
- package/esm5/components/event-control-board/service/e001tns/e001tns-dto.js +1 -0
- package/esm5/components/event-control-board/service/e001tns/e001tns.js +45 -0
- package/esm5/components/event-control-board/service/e001tns/e001tns.module.js +29 -0
- package/esm5/components/event-control-board/service/e001tns/e001tns.service.js +27 -0
- package/esm5/components/event-control-board/service/e012fam/e012fam-dto.js +1 -0
- package/esm5/components/event-control-board/service/e012fam/e012fam.js +25 -0
- package/esm5/components/event-control-board/service/e012fam/e012fam.service.js +27 -0
- package/esm5/components/event-control-board/service/e070emp/e070emp-dto.js +1 -0
- package/esm5/components/event-control-board/service/e070emp/e070emp.js +34 -0
- package/esm5/components/event-control-board/service/e070emp/e070emp.module.js +27 -0
- package/esm5/components/event-control-board/service/e070emp/e070emp.service.js +34 -0
- package/esm5/components/event-control-board/service/e070fil/e070fil-dto.js +1 -0
- package/esm5/components/event-control-board/service/e070fil/e070fil.js +48 -0
- package/esm5/components/event-control-board/service/e070fil/e070fil.module.js +27 -0
- package/esm5/components/event-control-board/service/e070fil/e070fil.service.js +34 -0
- package/esm5/components/event-control-board/service/e075der/e075der-dto.js +1 -0
- package/esm5/components/event-control-board/service/e075der/e075der.js +36 -0
- package/esm5/components/event-control-board/service/e075der/e075der.module.js +27 -0
- package/esm5/components/event-control-board/service/e075der/e075der.service.js +32 -0
- package/esm5/components/event-control-board/service/e113saf/e113saf-dto.js +1 -0
- package/esm5/components/event-control-board/service/e113saf/e113saf.js +25 -0
- package/esm5/components/event-control-board/service/e205dep/deposit-dto.js +1 -0
- package/esm5/components/event-control-board/service/e205dep/e205dep-dto.js +1 -0
- package/esm5/components/event-control-board/service/e205dep/e205dep.js +25 -0
- package/esm5/components/event-control-board/service/e205dep/e205dep.service.js +32 -0
- package/esm5/components/event-control-board/service/entity-service.js +140 -0
- package/esm5/components/event-control-board/service/event-control/event-control-dto.js +1 -0
- package/esm5/components/event-control-board/service/event-control/event-control.js +25 -0
- package/esm5/components/event-control-board/service/event-control/event-control.module.js +29 -0
- package/esm5/components/event-control-board/service/event-control/event-control.service.js +27 -0
- package/esm5/components/event-control-board/service/event-control-board.service.js +34 -0
- package/esm5/components/event-control-board/service/event-control-item/event-control-item-dto.js +1 -0
- package/esm5/components/event-control-board/service/event-control-item/event-control-item.js +39 -0
- package/esm5/components/event-control-board/service/event-control-item/event-control-item.module.js +29 -0
- package/esm5/components/event-control-board/service/event-control-item/event-control-item.service.js +32 -0
- package/esm5/components/event-control-board/service/external-invoice/external-invoice-dto.js +1 -0
- package/esm5/components/event-control-board/service/external-invoice/external-invoice.js +25 -0
- package/esm5/components/event-control-board/service/external-invoice/external-invoice.module.js +29 -0
- package/esm5/components/event-control-board/service/external-invoice/external-invoice.service.js +27 -0
- package/esm5/components/event-control-board/service/invoice/invoice-dto.js +1 -0
- package/esm5/components/event-control-board/service/invoice/invoice.js +48 -0
- package/esm5/components/event-control-board/service/invoice/invoice.module.js +29 -0
- package/esm5/components/event-control-board/service/invoice/invoice.service.js +27 -0
- package/esm5/components/event-control-board/service/origination/operationType.js +7 -0
- package/esm5/components/event-control-board/service/origination/origination-dto.js +1 -0
- package/esm5/components/event-control-board/service/origination/origination.js +62 -0
- package/esm5/components/event-control-board/service/origination/origination.module.js +27 -0
- package/esm5/components/event-control-board/service/origination/origination.service.js +27 -0
- package/esm5/components/event-control-board/service/paginator-storage.service.js +71 -0
- package/esm5/components/event-control-board/service/producer-invoice/producer-invoice-dto.js +1 -0
- package/esm5/components/event-control-board/service/producer-invoice/producer-invoice.js +37 -0
- package/esm5/components/event-control-board/service/producer-invoice/producer-invoice.module.js +29 -0
- package/esm5/components/event-control-board/service/producer-invoice/producer-invoice.service.js +27 -0
- package/esm5/components/event-control-board/service/rural-estate/rural-estate-dto.js +1 -0
- package/esm5/components/event-control-board/service/rural-estate/rural-estate.js +83 -0
- package/esm5/components/event-control-board/service/rural-estate/rural-estate.module.js +29 -0
- package/esm5/components/event-control-board/service/rural-estate/rural-estate.service.js +27 -0
- package/esm5/components/event-control-board/service/ticket/ticket-dto.js +1 -0
- package/esm5/components/event-control-board/service/ticket/ticket.js +44 -0
- package/esm5/components/event-control-board/service/ticket/ticket.module.js +29 -0
- package/esm5/components/event-control-board/service/ticket/ticket.service.js +62 -0
- package/esm5/components/event-control-board/shared.module.js +63 -0
- package/esm5/components/event-steps/event-steps.component.js +113 -0
- package/esm5/components/event-steps/event-steps.module.js +19 -0
- package/esm5/components/event-steps/index.js +3 -0
- package/esm5/components/index.js +3 -0
- package/esm5/enums/agro-entity-status.enum.js +6 -0
- package/esm5/enums/agro-numbers.enum.js +1007 -0
- package/esm5/enums/agro-string-masks.enum.js +12 -0
- package/esm5/enums/date-comparison-type.enum.js +6 -0
- package/esm5/enums/http-codes.enum.js +66 -0
- package/esm5/enums/index.js +7 -0
- package/esm5/enums/number-comparison-type.enum.js +10 -0
- package/esm5/form-validator/agro-form-validator.js +239 -0
- package/esm5/form-validator/index.js +2 -0
- package/esm5/lib-translation.module.js +24 -0
- package/esm5/pipe/index.js +2 -0
- package/esm5/pipe/lib-translate.pipe.js +29 -0
- package/esm5/public-api.js +9 -0
- package/esm5/senior-agronegocio-angular-components.js +6 -0
- package/esm5/services/i18n/en-US.js +195 -0
- package/esm5/services/i18n/es-CO.js +195 -0
- package/esm5/services/i18n/pt-BR.js +195 -0
- package/esm5/services/index.js +3 -0
- package/esm5/services/lib-translation.service.js +56 -0
- package/esm5/services/websocket/async-lock.js +43 -0
- package/esm5/services/websocket/index.js +6 -0
- package/esm5/services/websocket/models/index.js +2 -0
- package/esm5/services/websocket/models/primitive-manager.js +58 -0
- package/esm5/services/websocket/protocols/index.js +1 -0
- package/esm5/services/websocket/protocols/on-event-options.js +1 -0
- package/esm5/services/websocket/protocols/primitive-event.js +1 -0
- package/esm5/services/websocket/user-information.service.js +38 -0
- package/esm5/services/websocket/websocket.module.js +24 -0
- package/esm5/services/websocket/websocket.service.js +411 -0
- package/fesm2015/senior-agronegocio-angular-components.js +5279 -0
- package/fesm2015/senior-agronegocio-angular-components.js.map +1 -0
- package/fesm5/senior-agronegocio-angular-components.js +5638 -0
- package/fesm5/senior-agronegocio-angular-components.js.map +1 -0
- package/form-validator/agro-form-validator.d.ts +103 -0
- package/form-validator/index.d.ts +1 -0
- package/lib-translation.module.d.ts +2 -0
- package/package.json +82 -0
- package/pipe/index.d.ts +1 -0
- package/pipe/lib-translate.pipe.d.ts +7 -0
- package/public-api.d.ts +8 -0
- package/senior-agronegocio-angular-components.d.ts +5 -0
- package/senior-agronegocio-angular-components.metadata.json +1 -0
- package/services/i18n/en-US.d.ts +194 -0
- package/services/i18n/es-CO.d.ts +194 -0
- package/services/i18n/pt-BR.d.ts +194 -0
- package/services/index.d.ts +2 -0
- package/services/lib-translation.service.d.ts +15 -0
- package/services/websocket/async-lock.d.ts +6 -0
- package/services/websocket/index.d.ts +6 -0
- package/services/websocket/models/index.d.ts +1 -0
- package/services/websocket/models/primitive-manager.d.ts +19 -0
- package/services/websocket/protocols/index.d.ts +2 -0
- package/services/websocket/protocols/on-event-options.d.ts +8 -0
- package/services/websocket/protocols/primitive-event.d.ts +10 -0
- package/services/websocket/user-information.service.d.ts +7 -0
- package/services/websocket/websocket.module.d.ts +2 -0
- package/services/websocket/websocket.service.d.ts +100 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"senior-agronegocio-angular-components.umd.js","sources":["../../node_modules/tslib/tslib.es6.js","ng://@senior-agronegocio/angular-components/enums/date-comparison-type.enum.ts","ng://@senior-agronegocio/angular-components/common/agro-regex.constant.ts","ng://@senior-agronegocio/angular-components/enums/number-comparison-type.enum.ts","ng://@senior-agronegocio/angular-components/enums/agro-entity-status.enum.ts","ng://@senior-agronegocio/angular-components/enums/agro-numbers.enum.ts","ng://@senior-agronegocio/angular-components/enums/agro-string-masks.enum.ts","ng://@senior-agronegocio/angular-components/enums/http-codes.enum.ts","ng://@senior-agronegocio/angular-components/common/agro-object-utils.class.ts","ng://@senior-agronegocio/angular-components/form-validator/agro-form-validator.ts","ng://@senior-agronegocio/angular-components/common/agro-cookie-utils.class.ts","ng://@senior-agronegocio/angular-components/common/agro-date-utils.class.ts","ng://@senior-agronegocio/angular-components/common/agro-string-utils.class.ts","ng://@senior-agronegocio/angular-components/common/agro-platform-utils.class.ts","ng://@senior-agronegocio/angular-components/common/agro-number-utils.class.ts","ng://@senior-agronegocio/angular-components/common/colors.class.ts","ng://@senior-agronegocio/angular-components/common/agro-name-utils.class.ts","ng://@senior-agronegocio/angular-components/common/agro-array-utils.class.ts","ng://@senior-agronegocio/angular-components/services/websocket/async-lock.ts","ng://@senior-agronegocio/angular-components/services/websocket/models/primitive-manager.ts","ng://@senior-agronegocio/angular-components/services/websocket/user-information.service.ts","ng://@senior-agronegocio/angular-components/services/websocket/websocket.service.ts","ng://@senior-agronegocio/angular-components/services/websocket/websocket.module.ts","ng://@senior-agronegocio/angular-components/services/i18n/pt-BR.ts","ng://@senior-agronegocio/angular-components/services/i18n/en-US.ts","ng://@senior-agronegocio/angular-components/services/i18n/es-CO.ts","ng://@senior-agronegocio/angular-components/services/lib-translation.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/common/lookup-error-message.constants.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/paginator-storage.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/common/event-status.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/common/event-operation.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/common/event-origin.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/common/event-control-constants.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/entity-service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/event-control-item/event-control-item.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/event-control/event-control.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/producer-invoice/producer-invoice.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/ticket/ticket.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/event-control-board.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/event-control-board.component.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/shared.module.ts","ng://@senior-agronegocio/angular-components/components/event-steps/event-steps.component.ts","ng://@senior-agronegocio/angular-components/components/event-steps/event-steps.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/e001pes/e001pes.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/e001pes/e001pes.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/e001tns/e001tns.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/e001tns/e001tns.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/e012fam/e012fam.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/e070emp/e070emp.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/e070emp/e070emp.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/e070fil/e070fil.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/e070fil/e070fil.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/e075der/e075der.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/e075der/e075der.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/e205dep/e205dep.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/event-control/event-control.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/event-control-item/event-control-item.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/external-invoice/external-invoice.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/external-invoice/external-invoice.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/invoice/invoice.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/invoice/invoice.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/origination/origination.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/origination/origination.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/producer-invoice/producer-invoice.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/rural-estate/rural-estate.service.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/rural-estate/rural-estate.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/service/ticket/ticket.module.ts","ng://@senior-agronegocio/angular-components/pipe/lib-translate.pipe.ts","ng://@senior-agronegocio/angular-components/lib-translation.module.ts","ng://@senior-agronegocio/angular-components/components/event-control-board/event-control-board.module.ts","ng://@senior-agronegocio/angular-components/agro-angular-components.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","export enum DateComparisonType {\r\n greatherThan = 'greatherThan',\r\n lessThan = 'lessThan',\r\n}\r\n","export const AGRO_REGEX = {\r\n /**\r\n * Validação de E-mail\r\n */\r\n isEmail: /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/,\r\n\r\n /**\r\n * Validação de Números Inteiros Positivos\r\n */\r\n positiveInteger: /^[1-9]\\d*$/,\r\n\r\n /**\r\n * Validação de Números Decimais Positivos\r\n */\r\n positiveDecimal: /^\\d*\\.?\\d+$/,\r\n\r\n /**\r\n * Validação de string que consiste apenas em espaços em branco ou está vazia.\r\n */\r\n onlyBlankSpaces: /^\\s*$/,\r\n\r\n /**\r\n * Validação de CEP (Código Postal)\r\n */\r\n zipCode: /^\\d{8}$|^\\d{5}-\\d{3}$/,\r\n\r\n /**\r\n * Validação de String (qualquer caractere)\r\n */\r\n isString: /^[\\s\\S]*$/,\r\n\r\n /**\r\n * Validação de UUID\r\n */\r\n isUUID: /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/,\r\n\r\n /**\r\n * Validação de Número\r\n */\r\n isNumber: /^-?\\d+$/,\r\n\r\n /**\r\n * Validação de Número Decimal\r\n */\r\n isDecimal: /^\\d*\\.?\\d+$/,\r\n\r\n /**\r\n * Validação de Placa de Veículo\r\n */\r\n isLicensePlate: /^[A-Za-z0-9]{1,7}-?[A-Za-z0-9]{1,7}$/,\r\n\r\n /**\r\n * Validação de Número de Telefone\r\n */\r\n isPhoneNumber: /^\\+?\\d{1,4}-?\\d{6,11}$/,\r\n\r\n /**\r\n * Validação de Data (Formato YYYY-MM-DD)\r\n */\r\n isDate: /^\\d{4}-\\d{2}-\\d{2}$/,\r\n\r\n /**\r\n * Validação de Hora (Formato HH:mm)\r\n */\r\n isTime: /^(0\\d|1\\d|2[0-3]):[0-5]\\d$/,\r\n\r\n /**\r\n * Validação de Data e Hora (Formato YYYY-MM-DD HH:mm)\r\n */\r\n isDateTime: /^\\d{4}-\\d{2}-\\d{2} (0\\d|1\\d|2[0-3]):[0-5]\\d$/,\r\n\r\n /**\r\n * Validação de URL\r\n */\r\n isURL: /^(http|https):\\/\\/([\\w-]+\\.)+[\\w-]+(\\/[\\w- ./?%&=]*)?$/,\r\n\r\n /**\r\n * Validação de Número Hexadecimal\r\n */\r\n isHexNumber: /^[0-9a-fA-F]+$/,\r\n\r\n /**\r\n * Validação de Base64\r\n */\r\n isBase64: /^[a-zA-Z0-9+/]+={0,2}$/,\r\n\r\n /**\r\n * Validação de Nome de Usuário (3 a 20 caracteres alfanuméricos)\r\n */\r\n isUsername: /^\\w{3,20}$/,\r\n\r\n /**\r\n * Validação de Alfanumérico\r\n */\r\n isAlphanumeric: /^[a-zA-Z0-9]+$/,\r\n\r\n /**\r\n * Validação de Slug (letras minúsculas, números e traços)\r\n */\r\n isSlug: /^[a-z0-9-]+$/,\r\n\r\n /**\r\n * Validação de Número de Cartão de Crédito\r\n */\r\n isCreditCard: /^\\d{4}-\\d{4}-\\d{4}-\\d{4}$/,\r\n\r\n /**\r\n * Validação de Número Hexadecimal\r\n */\r\n isHexadecimal: /^[0-9a-fA-F]+$/,\r\n\r\n /**\r\n * Validação de Moeda\r\n */\r\n isCurrency: /^\\d+(\\.\\d{1,2})?$/,\r\n\r\n /**\r\n * Validação de Porcentagem\r\n */\r\n isPercentage: /^(100(\\.0{1,2})?|[1-9]?\\d(\\.\\d{1,2})?)$/,\r\n\r\n /**\r\n * Validação de Tag HTML Simples\r\n */\r\n isHTMLTag: /^<([a-z]+)([^<]+)*(?:>(.*)<\\/\\1>|\\s+\\/>)$/,\r\n\r\n /**\r\n * Validação de Nome de Usuário com Espaços (3 a 20 caracteres alfanuméricos e espaços)\r\n */\r\n isUsernameWithSpaces: /^[a-zA-Z0-9_ ]{3,20}$/,\r\n\r\n /**\r\n * Validação de Senha Forte (mínimo 8 caracteres, uma letra minúscula, uma letra maiúscula, um número e um caractere especial)\r\n */\r\n isStrongPassword: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[@$!%*?&])[A-Za-z\\d@$!%*?&]{8,}$/,\r\n\r\n /**\r\n * Validação de String Alfabética\r\n */\r\n isAlphabetic: /^[a-zA-Z]+$/,\r\n\r\n /**\r\n * Validação de Hora no Formato de 12 Horas\r\n */\r\n isTime12Hour: /^(0?[1-9]|1[0-2]):\\d{2} (AM|PM)$/i,\r\n\r\n /**\r\n * Validação de Latitude\r\n */\r\n isLatitude: /^[-+]?([1-8]?\\d(\\.\\d+)?|90(\\.0+)?)$/,\r\n\r\n /**\r\n * Validação de Longitude\r\n */\r\n isLongitude: /^[-+]?(180(\\.0+)?|((1[0-7]\\d)|([1-9]?\\d))(\\.\\d+)?)$/,\r\n\r\n /**\r\n * Validação de Endereço MAC\r\n */\r\n isMACAddress: /^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$/,\r\n\r\n /**\r\n * Validação de Data de Expiração de Cartão de Crédito\r\n */\r\n isCreditCardExpiration: /^(0[1-9]|1[0-2])\\/\\d{2}$/,\r\n\r\n /**\r\n * Validação de Número de Seguro Social (SSN)\r\n */\r\n isSSN: /^\\d{3}-\\d{2}-\\d{4}$/,\r\n\r\n /**\r\n * Validação se todos os dígitos são iguais\r\n */\r\n isAllDigitsEqual: /^(.)\\1+$/,\r\n };\r\n","export enum NumberComparisonType {\r\n EQUALS = 'EQUALS',\r\n NOT_EQUALS = 'NOT_EQUALS',\r\n LESS_THAN = 'LESS_THAN',\r\n LESS_THAN_OR_EQUAL = 'LESS_THAN_OR_EQUAL',\r\n GREATER_THAN = 'GREATER_THAN',\r\n GREATER_THAN_OR_EQUAL = 'GREATER_THAN_OR_EQUAL'\r\n}\r\n","export enum AgroEntityStatus {\r\n VA = 'VA',\r\n VI = 'VI'\r\n}\r\n","export type NUMBERS = AGRO_NUMBERS;\r\n\r\nexport enum AGRO_NUMBERS {\r\n MINIMUM_WEIGHT = 0.001,\r\n MINUSONE = -1,\r\n EIGHT = 8,\r\n EIGHT_HUNDRED = 800,\r\n EIGHT_HUNDRED_AND_EIGHT = 808,\r\n EIGHT_HUNDRED_AND_EIGHTEEN = 818,\r\n EIGHT_HUNDRED_AND_EIGHTY_EIGHT = 888,\r\n EIGHT_HUNDRED_AND_EIGHTY_FIVE = 885,\r\n EIGHT_HUNDRED_AND_EIGHTY_FOUR = 884,\r\n EIGHT_HUNDRED_AND_EIGHTY_NINE = 889,\r\n EIGHT_HUNDRED_AND_EIGHTY_ONE = 881,\r\n EIGHT_HUNDRED_AND_EIGHTY_SEVEN = 887,\r\n EIGHT_HUNDRED_AND_EIGHTY_SIX = 886,\r\n EIGHT_HUNDRED_AND_EIGHTY_THREE = 883,\r\n EIGHT_HUNDRED_AND_EIGHTY_TWO = 882,\r\n EIGHT_HUNDRED_AND_EIGHTY_ZERO = 880,\r\n EIGHT_HUNDRED_AND_ELEVEN = 811,\r\n EIGHT_HUNDRED_AND_FIFTEEN = 815,\r\n EIGHT_HUNDRED_AND_FIFTY_EIGHT = 858,\r\n EIGHT_HUNDRED_AND_FIFTY_FIVE = 855,\r\n EIGHT_HUNDRED_AND_FIFTY_FOUR = 854,\r\n EIGHT_HUNDRED_AND_FIFTY_NINE = 859,\r\n EIGHT_HUNDRED_AND_FIFTY_ONE = 851,\r\n EIGHT_HUNDRED_AND_FIFTY_SEVEN = 857,\r\n EIGHT_HUNDRED_AND_FIFTY_SIX = 856,\r\n EIGHT_HUNDRED_AND_FIFTY_THREE = 853,\r\n EIGHT_HUNDRED_AND_FIFTY_TWO = 852,\r\n EIGHT_HUNDRED_AND_FIFTY_ZERO = 850,\r\n EIGHT_HUNDRED_AND_FIVE = 805,\r\n EIGHT_HUNDRED_AND_FORTY_EIGHT = 848,\r\n EIGHT_HUNDRED_AND_FORTY_FIVE = 845,\r\n EIGHT_HUNDRED_AND_FORTY_FOUR = 844,\r\n EIGHT_HUNDRED_AND_FORTY_NINE = 849,\r\n EIGHT_HUNDRED_AND_FORTY_ONE = 841,\r\n EIGHT_HUNDRED_AND_FORTY_SEVEN = 847,\r\n EIGHT_HUNDRED_AND_FORTY_SIX = 846,\r\n EIGHT_HUNDRED_AND_FORTY_THREE = 843,\r\n EIGHT_HUNDRED_AND_FORTY_TWO = 842,\r\n EIGHT_HUNDRED_AND_FORTY_ZERO = 840,\r\n EIGHT_HUNDRED_AND_FOUR = 804,\r\n EIGHT_HUNDRED_AND_FOURTEEN = 814,\r\n EIGHT_HUNDRED_AND_NINE = 809,\r\n EIGHT_HUNDRED_AND_NINETEEN = 819,\r\n EIGHT_HUNDRED_AND_NINETY_EIGHT = 898,\r\n EIGHT_HUNDRED_AND_NINETY_FIVE = 895,\r\n EIGHT_HUNDRED_AND_NINETY_FOUR = 894,\r\n EIGHT_HUNDRED_AND_NINETY_NINE = 899,\r\n EIGHT_HUNDRED_AND_NINETY_ONE = 891,\r\n EIGHT_HUNDRED_AND_NINETY_SEVEN = 897,\r\n EIGHT_HUNDRED_AND_NINETY_SIX = 896,\r\n EIGHT_HUNDRED_AND_NINETY_THREE = 893,\r\n EIGHT_HUNDRED_AND_NINETY_TWO = 892,\r\n EIGHT_HUNDRED_AND_NINETY_ZERO = 890,\r\n EIGHT_HUNDRED_AND_ONE = 801,\r\n EIGHT_HUNDRED_AND_SEVEN = 807,\r\n EIGHT_HUNDRED_AND_SEVENTEEN = 817,\r\n EIGHT_HUNDRED_AND_SEVENTY_EIGHT = 878,\r\n EIGHT_HUNDRED_AND_SEVENTY_FIVE = 875,\r\n EIGHT_HUNDRED_AND_SEVENTY_FOUR = 874,\r\n EIGHT_HUNDRED_AND_SEVENTY_NINE = 879,\r\n EIGHT_HUNDRED_AND_SEVENTY_ONE = 871,\r\n EIGHT_HUNDRED_AND_SEVENTY_SEVEN = 877,\r\n EIGHT_HUNDRED_AND_SEVENTY_SIX = 876,\r\n EIGHT_HUNDRED_AND_SEVENTY_THREE = 873,\r\n EIGHT_HUNDRED_AND_SEVENTY_TWO = 872,\r\n EIGHT_HUNDRED_AND_SEVENTY_ZERO = 870,\r\n EIGHT_HUNDRED_AND_SIX = 806,\r\n EIGHT_HUNDRED_AND_SIXTEEN = 816,\r\n EIGHT_HUNDRED_AND_SIXTY_EIGHT = 868,\r\n EIGHT_HUNDRED_AND_SIXTY_FIVE = 865,\r\n EIGHT_HUNDRED_AND_SIXTY_FOUR = 864,\r\n EIGHT_HUNDRED_AND_SIXTY_NINE = 869,\r\n EIGHT_HUNDRED_AND_SIXTY_ONE = 861,\r\n EIGHT_HUNDRED_AND_SIXTY_SEVEN = 867,\r\n EIGHT_HUNDRED_AND_SIXTY_SIX = 866,\r\n EIGHT_HUNDRED_AND_SIXTY_THREE = 863,\r\n EIGHT_HUNDRED_AND_SIXTY_TWO = 862,\r\n EIGHT_HUNDRED_AND_SIXTY_ZERO = 860,\r\n EIGHT_HUNDRED_AND_TEN = 810,\r\n EIGHT_HUNDRED_AND_THIRTEEN = 813,\r\n EIGHT_HUNDRED_AND_THIRTY_EIGHT = 838,\r\n EIGHT_HUNDRED_AND_THIRTY_FIVE = 835,\r\n EIGHT_HUNDRED_AND_THIRTY_FOUR = 834,\r\n EIGHT_HUNDRED_AND_THIRTY_NINE = 839,\r\n EIGHT_HUNDRED_AND_THIRTY_ONE = 831,\r\n EIGHT_HUNDRED_AND_THIRTY_SEVEN = 837,\r\n EIGHT_HUNDRED_AND_THIRTY_SIX = 836,\r\n EIGHT_HUNDRED_AND_THIRTY_THREE = 833,\r\n EIGHT_HUNDRED_AND_THIRTY_TWO = 832,\r\n EIGHT_HUNDRED_AND_THIRTY_ZERO = 830,\r\n EIGHT_HUNDRED_AND_THREE = 803,\r\n EIGHT_HUNDRED_AND_TWELVE = 812,\r\n EIGHT_HUNDRED_AND_TWENTY_EIGHT = 828,\r\n EIGHT_HUNDRED_AND_TWENTY_FIVE = 825,\r\n EIGHT_HUNDRED_AND_TWENTY_FOUR = 824,\r\n EIGHT_HUNDRED_AND_TWENTY_NINE = 829,\r\n EIGHT_HUNDRED_AND_TWENTY_ONE = 821,\r\n EIGHT_HUNDRED_AND_TWENTY_SEVEN = 827,\r\n EIGHT_HUNDRED_AND_TWENTY_SIX = 826,\r\n EIGHT_HUNDRED_AND_TWENTY_THREE = 823,\r\n EIGHT_HUNDRED_AND_TWENTY_TWO = 822,\r\n EIGHT_HUNDRED_AND_TWENTY_ZERO = 820,\r\n EIGHT_HUNDRED_AND_TWO = 802,\r\n EIGHTEEN = 18,\r\n EIGHTY_ = 80,\r\n EIGHTY_EIGHT = 88,\r\n EIGHTY_FIVE = 85,\r\n EIGHTY_FOUR = 84,\r\n EIGHTY_NINE = 89,\r\n EIGHTY_ONE = 81,\r\n EIGHTY_SEVEN = 87,\r\n EIGHTY_SIX = 86,\r\n EIGHTY_THREE = 83,\r\n EIGHTY_TWO = 82,\r\n ELEVEN = 11,\r\n FIFTEEN = 15,\r\n FIFTY_ = 50,\r\n FIFTY_EIGHT = 58,\r\n FIFTY_FIVE = 55,\r\n FIFTY_FOUR = 54,\r\n FIFTY_NINE = 59,\r\n FIFTY_ONE = 51,\r\n FIFTY_SEVEN = 57,\r\n FIFTY_SIX = 56,\r\n FIFTY_THREE = 53,\r\n FIFTY_TWO = 52,\r\n FIVE = 5,\r\n FIVE_HUNDRED = 500,\r\n FIVE_HUNDRED_AND_EIGHT = 508,\r\n FIVE_HUNDRED_AND_EIGHTEEN = 518,\r\n FIVE_HUNDRED_AND_EIGHTY_EIGHT = 588,\r\n FIVE_HUNDRED_AND_EIGHTY_FIVE = 585,\r\n FIVE_HUNDRED_AND_EIGHTY_FOUR = 584,\r\n FIVE_HUNDRED_AND_EIGHTY_NINE = 589,\r\n FIVE_HUNDRED_AND_EIGHTY_ONE = 581,\r\n FIVE_HUNDRED_AND_EIGHTY_SEVEN = 587,\r\n FIVE_HUNDRED_AND_EIGHTY_SIX = 586,\r\n FIVE_HUNDRED_AND_EIGHTY_THREE = 583,\r\n FIVE_HUNDRED_AND_EIGHTY_TWO = 582,\r\n FIVE_HUNDRED_AND_EIGHTY_ZERO = 580,\r\n FIVE_HUNDRED_AND_ELEVEN = 511,\r\n FIVE_HUNDRED_AND_FIFTEEN = 515,\r\n FIVE_HUNDRED_AND_FIFTY_EIGHT = 558,\r\n FIVE_HUNDRED_AND_FIFTY_FIVE = 555,\r\n FIVE_HUNDRED_AND_FIFTY_FOUR = 554,\r\n FIVE_HUNDRED_AND_FIFTY_NINE = 559,\r\n FIVE_HUNDRED_AND_FIFTY_ONE = 551,\r\n FIVE_HUNDRED_AND_FIFTY_SEVEN = 557,\r\n FIVE_HUNDRED_AND_FIFTY_SIX = 556,\r\n FIVE_HUNDRED_AND_FIFTY_THREE = 553,\r\n FIVE_HUNDRED_AND_FIFTY_TWO = 552,\r\n FIVE_HUNDRED_AND_FIFTY_ZERO = 550,\r\n FIVE_HUNDRED_AND_FIVE = 505,\r\n FIVE_HUNDRED_AND_FORTY_EIGHT = 548,\r\n FIVE_HUNDRED_AND_FORTY_FIVE = 545,\r\n FIVE_HUNDRED_AND_FORTY_FOUR = 544,\r\n FIVE_HUNDRED_AND_FORTY_NINE = 549,\r\n FIVE_HUNDRED_AND_FORTY_ONE = 541,\r\n FIVE_HUNDRED_AND_FORTY_SEVEN = 547,\r\n FIVE_HUNDRED_AND_FORTY_SIX = 546,\r\n FIVE_HUNDRED_AND_FORTY_THREE = 543,\r\n FIVE_HUNDRED_AND_FORTY_TWO = 542,\r\n FIVE_HUNDRED_AND_FORTY_ZERO = 540,\r\n FIVE_HUNDRED_AND_FOUR = 504,\r\n FIVE_HUNDRED_AND_FOURTEEN = 514,\r\n FIVE_HUNDRED_AND_NINE = 509,\r\n FIVE_HUNDRED_AND_NINETEEN = 519,\r\n FIVE_HUNDRED_AND_NINETY_EIGHT = 598,\r\n FIVE_HUNDRED_AND_NINETY_FIVE = 595,\r\n FIVE_HUNDRED_AND_NINETY_FOUR = 594,\r\n FIVE_HUNDRED_AND_NINETY_NINE = 599,\r\n FIVE_HUNDRED_AND_NINETY_ONE = 591,\r\n FIVE_HUNDRED_AND_NINETY_SEVEN = 597,\r\n FIVE_HUNDRED_AND_NINETY_SIX = 596,\r\n FIVE_HUNDRED_AND_NINETY_THREE = 593,\r\n FIVE_HUNDRED_AND_NINETY_TWO = 592,\r\n FIVE_HUNDRED_AND_NINETY_ZERO = 590,\r\n FIVE_HUNDRED_AND_ONE = 501,\r\n FIVE_HUNDRED_AND_SEVEN = 507,\r\n FIVE_HUNDRED_AND_SEVENTEEN = 517,\r\n FIVE_HUNDRED_AND_SEVENTY_EIGHT = 578,\r\n FIVE_HUNDRED_AND_SEVENTY_FIVE = 575,\r\n FIVE_HUNDRED_AND_SEVENTY_FOUR = 574,\r\n FIVE_HUNDRED_AND_SEVENTY_NINE = 579,\r\n FIVE_HUNDRED_AND_SEVENTY_ONE = 571,\r\n FIVE_HUNDRED_AND_SEVENTY_SEVEN = 577,\r\n FIVE_HUNDRED_AND_SEVENTY_SIX = 576,\r\n FIVE_HUNDRED_AND_SEVENTY_THREE = 573,\r\n FIVE_HUNDRED_AND_SEVENTY_TWO = 572,\r\n FIVE_HUNDRED_AND_SEVENTY_ZERO = 570,\r\n FIVE_HUNDRED_AND_SIX = 506,\r\n FIVE_HUNDRED_AND_SIXTEEN = 516,\r\n FIVE_HUNDRED_AND_SIXTY_EIGHT = 568,\r\n FIVE_HUNDRED_AND_SIXTY_FIVE = 565,\r\n FIVE_HUNDRED_AND_SIXTY_FOUR = 564,\r\n FIVE_HUNDRED_AND_SIXTY_NINE = 569,\r\n FIVE_HUNDRED_AND_SIXTY_ONE = 561,\r\n FIVE_HUNDRED_AND_SIXTY_SEVEN = 567,\r\n FIVE_HUNDRED_AND_SIXTY_SIX = 566,\r\n FIVE_HUNDRED_AND_SIXTY_THREE = 563,\r\n FIVE_HUNDRED_AND_SIXTY_TWO = 562,\r\n FIVE_HUNDRED_AND_SIXTY_ZERO = 560,\r\n FIVE_HUNDRED_AND_TEN = 510,\r\n FIVE_HUNDRED_AND_THIRTEEN = 513,\r\n FIVE_HUNDRED_AND_THIRTY_EIGHT = 538,\r\n FIVE_HUNDRED_AND_THIRTY_FIVE = 535,\r\n FIVE_HUNDRED_AND_THIRTY_FOUR = 534,\r\n FIVE_HUNDRED_AND_THIRTY_NINE = 539,\r\n FIVE_HUNDRED_AND_THIRTY_ONE = 531,\r\n FIVE_HUNDRED_AND_THIRTY_SEVEN = 537,\r\n FIVE_HUNDRED_AND_THIRTY_SIX = 536,\r\n FIVE_HUNDRED_AND_THIRTY_THREE = 533,\r\n FIVE_HUNDRED_AND_THIRTY_TWO = 532,\r\n FIVE_HUNDRED_AND_THIRTY_ZERO = 530,\r\n FIVE_HUNDRED_AND_THREE = 503,\r\n FIVE_HUNDRED_AND_TWELVE = 512,\r\n FIVE_HUNDRED_AND_TWENTY_EIGHT = 528,\r\n FIVE_HUNDRED_AND_TWENTY_FIVE = 525,\r\n FIVE_HUNDRED_AND_TWENTY_FOUR = 524,\r\n FIVE_HUNDRED_AND_TWENTY_NINE = 529,\r\n FIVE_HUNDRED_AND_TWENTY_ONE = 521,\r\n FIVE_HUNDRED_AND_TWENTY_SEVEN = 527,\r\n FIVE_HUNDRED_AND_TWENTY_SIX = 526,\r\n FIVE_HUNDRED_AND_TWENTY_THREE = 523,\r\n FIVE_HUNDRED_AND_TWENTY_TWO = 522,\r\n FIVE_HUNDRED_AND_TWENTY_ZERO = 520,\r\n FIVE_HUNDRED_AND_TWO = 502,\r\n FORTY_ = 40,\r\n FORTY_EIGHT = 48,\r\n FORTY_FIVE = 45,\r\n FORTY_FOUR = 44,\r\n FORTY_NINE = 49,\r\n FORTY_ONE = 41,\r\n FORTY_SEVEN = 47,\r\n FORTY_SIX = 46,\r\n FORTY_THREE = 43,\r\n FORTY_TWO = 42,\r\n FOUR = 4,\r\n FOUR_HUNDRED = 400,\r\n FOUR_HUNDRED_AND_EIGHT = 408,\r\n FOUR_HUNDRED_AND_EIGHTEEN = 418,\r\n FOUR_HUNDRED_AND_EIGHTY_EIGHT = 488,\r\n FOUR_HUNDRED_AND_EIGHTY_FIVE = 485,\r\n FOUR_HUNDRED_AND_EIGHTY_FOUR = 484,\r\n FOUR_HUNDRED_AND_EIGHTY_NINE = 489,\r\n FOUR_HUNDRED_AND_EIGHTY_ONE = 481,\r\n FOUR_HUNDRED_AND_EIGHTY_SEVEN = 487,\r\n FOUR_HUNDRED_AND_EIGHTY_SIX = 486,\r\n FOUR_HUNDRED_AND_EIGHTY_THREE = 483,\r\n FOUR_HUNDRED_AND_EIGHTY_TWO = 482,\r\n FOUR_HUNDRED_AND_EIGHTY_ZERO = 480,\r\n FOUR_HUNDRED_AND_ELEVEN = 411,\r\n FOUR_HUNDRED_AND_FIFTEEN = 415,\r\n FOUR_HUNDRED_AND_FIFTY_EIGHT = 458,\r\n FOUR_HUNDRED_AND_FIFTY_FIVE = 455,\r\n FOUR_HUNDRED_AND_FIFTY_FOUR = 454,\r\n FOUR_HUNDRED_AND_FIFTY_NINE = 459,\r\n FOUR_HUNDRED_AND_FIFTY_ONE = 451,\r\n FOUR_HUNDRED_AND_FIFTY_SEVEN = 457,\r\n FOUR_HUNDRED_AND_FIFTY_SIX = 456,\r\n FOUR_HUNDRED_AND_FIFTY_THREE = 453,\r\n FOUR_HUNDRED_AND_FIFTY_TWO = 452,\r\n FOUR_HUNDRED_AND_FIFTY_ZERO = 450,\r\n FOUR_HUNDRED_AND_FIVE = 405,\r\n FOUR_HUNDRED_AND_FORTY_EIGHT = 448,\r\n FOUR_HUNDRED_AND_FORTY_FIVE = 445,\r\n FOUR_HUNDRED_AND_FORTY_FOUR = 444,\r\n FOUR_HUNDRED_AND_FORTY_NINE = 449,\r\n FOUR_HUNDRED_AND_FORTY_ONE = 441,\r\n FOUR_HUNDRED_AND_FORTY_SEVEN = 447,\r\n FOUR_HUNDRED_AND_FORTY_SIX = 446,\r\n FOUR_HUNDRED_AND_FORTY_THREE = 443,\r\n FOUR_HUNDRED_AND_FORTY_TWO = 442,\r\n FOUR_HUNDRED_AND_FORTY_ZERO = 440,\r\n FOUR_HUNDRED_AND_FOUR = 404,\r\n FOUR_HUNDRED_AND_FOURTEEN = 414,\r\n FOUR_HUNDRED_AND_NINE = 409,\r\n FOUR_HUNDRED_AND_NINETEEN = 419,\r\n FOUR_HUNDRED_AND_NINETY_EIGHT = 498,\r\n FOUR_HUNDRED_AND_NINETY_FIVE = 495,\r\n FOUR_HUNDRED_AND_NINETY_FOUR = 494,\r\n FOUR_HUNDRED_AND_NINETY_NINE = 499,\r\n FOUR_HUNDRED_AND_NINETY_ONE = 491,\r\n FOUR_HUNDRED_AND_NINETY_SEVEN = 497,\r\n FOUR_HUNDRED_AND_NINETY_SIX = 496,\r\n FOUR_HUNDRED_AND_NINETY_THREE = 493,\r\n FOUR_HUNDRED_AND_NINETY_TWO = 492,\r\n FOUR_HUNDRED_AND_NINETY_ZERO = 490,\r\n FOUR_HUNDRED_AND_ONE = 401,\r\n FOUR_HUNDRED_AND_SEVEN = 407,\r\n FOUR_HUNDRED_AND_SEVENTEEN = 417,\r\n FOUR_HUNDRED_AND_SEVENTY_EIGHT = 478,\r\n FOUR_HUNDRED_AND_SEVENTY_FIVE = 475,\r\n FOUR_HUNDRED_AND_SEVENTY_FOUR = 474,\r\n FOUR_HUNDRED_AND_SEVENTY_NINE = 479,\r\n FOUR_HUNDRED_AND_SEVENTY_ONE = 471,\r\n FOUR_HUNDRED_AND_SEVENTY_SEVEN = 477,\r\n FOUR_HUNDRED_AND_SEVENTY_SIX = 476,\r\n FOUR_HUNDRED_AND_SEVENTY_THREE = 473,\r\n FOUR_HUNDRED_AND_SEVENTY_TWO = 472,\r\n FOUR_HUNDRED_AND_SEVENTY_ZERO = 470,\r\n FOUR_HUNDRED_AND_SIX = 406,\r\n FOUR_HUNDRED_AND_SIXTEEN = 416,\r\n FOUR_HUNDRED_AND_SIXTY_EIGHT = 468,\r\n FOUR_HUNDRED_AND_SIXTY_FIVE = 465,\r\n FOUR_HUNDRED_AND_SIXTY_FOUR = 464,\r\n FOUR_HUNDRED_AND_SIXTY_NINE = 469,\r\n FOUR_HUNDRED_AND_SIXTY_ONE = 461,\r\n FOUR_HUNDRED_AND_SIXTY_SEVEN = 467,\r\n FOUR_HUNDRED_AND_SIXTY_SIX = 466,\r\n FOUR_HUNDRED_AND_SIXTY_THREE = 463,\r\n FOUR_HUNDRED_AND_SIXTY_TWO = 462,\r\n FOUR_HUNDRED_AND_SIXTY_ZERO = 460,\r\n FOUR_HUNDRED_AND_TEN = 410,\r\n FOUR_HUNDRED_AND_THIRTEEN = 413,\r\n FOUR_HUNDRED_AND_THIRTY_EIGHT = 438,\r\n FOUR_HUNDRED_AND_THIRTY_FIVE = 435,\r\n FOUR_HUNDRED_AND_THIRTY_FOUR = 434,\r\n FOUR_HUNDRED_AND_THIRTY_NINE = 439,\r\n FOUR_HUNDRED_AND_THIRTY_ONE = 431,\r\n FOUR_HUNDRED_AND_THIRTY_SEVEN = 437,\r\n FOUR_HUNDRED_AND_THIRTY_SIX = 436,\r\n FOUR_HUNDRED_AND_THIRTY_THREE = 433,\r\n FOUR_HUNDRED_AND_THIRTY_TWO = 432,\r\n FOUR_HUNDRED_AND_THIRTY_ZERO = 430,\r\n FOUR_HUNDRED_AND_THREE = 403,\r\n FOUR_HUNDRED_AND_TWELVE = 412,\r\n FOUR_HUNDRED_AND_TWENTY_EIGHT = 428,\r\n FOUR_HUNDRED_AND_TWENTY_FIVE = 425,\r\n FOUR_HUNDRED_AND_TWENTY_FOUR = 424,\r\n FOUR_HUNDRED_AND_TWENTY_NINE = 429,\r\n FOUR_HUNDRED_AND_TWENTY_ONE = 421,\r\n FOUR_HUNDRED_AND_TWENTY_SEVEN = 427,\r\n FOUR_HUNDRED_AND_TWENTY_SIX = 426,\r\n FOUR_HUNDRED_AND_TWENTY_THREE = 423,\r\n FOUR_HUNDRED_AND_TWENTY_TWO = 422,\r\n FOUR_HUNDRED_AND_TWENTY_ZERO = 420,\r\n FOUR_HUNDRED_AND_TWO = 402,\r\n FOURTEEN = 14,\r\n NINE = 9,\r\n NINE_HUNDRED = 900,\r\n NINE_HUNDRED_AND_EIGHT = 908,\r\n NINE_HUNDRED_AND_EIGHTEEN = 918,\r\n NINE_HUNDRED_AND_EIGHTY_EIGHT = 988,\r\n NINE_HUNDRED_AND_EIGHTY_FIVE = 985,\r\n NINE_HUNDRED_AND_EIGHTY_FOUR = 984,\r\n NINE_HUNDRED_AND_EIGHTY_NINE = 989,\r\n NINE_HUNDRED_AND_EIGHTY_ONE = 981,\r\n NINE_HUNDRED_AND_EIGHTY_SEVEN = 987,\r\n NINE_HUNDRED_AND_EIGHTY_SIX = 986,\r\n NINE_HUNDRED_AND_EIGHTY_THREE = 983,\r\n NINE_HUNDRED_AND_EIGHTY_TWO = 982,\r\n NINE_HUNDRED_AND_EIGHTY_ZERO = 980,\r\n NINE_HUNDRED_AND_ELEVEN = 911,\r\n NINE_HUNDRED_AND_FIFTEEN = 915,\r\n NINE_HUNDRED_AND_FIFTY_EIGHT = 958,\r\n NINE_HUNDRED_AND_FIFTY_FIVE = 955,\r\n NINE_HUNDRED_AND_FIFTY_FOUR = 954,\r\n NINE_HUNDRED_AND_FIFTY_NINE = 959,\r\n NINE_HUNDRED_AND_FIFTY_ONE = 951,\r\n NINE_HUNDRED_AND_FIFTY_SEVEN = 957,\r\n NINE_HUNDRED_AND_FIFTY_SIX = 956,\r\n NINE_HUNDRED_AND_FIFTY_THREE = 953,\r\n NINE_HUNDRED_AND_FIFTY_TWO = 952,\r\n NINE_HUNDRED_AND_FIFTY_ZERO = 950,\r\n NINE_HUNDRED_AND_FIVE = 905,\r\n NINE_HUNDRED_AND_FORTY_EIGHT = 948,\r\n NINE_HUNDRED_AND_FORTY_FIVE = 945,\r\n NINE_HUNDRED_AND_FORTY_FOUR = 944,\r\n NINE_HUNDRED_AND_FORTY_NINE = 949,\r\n NINE_HUNDRED_AND_FORTY_ONE = 941,\r\n NINE_HUNDRED_AND_FORTY_SEVEN = 947,\r\n NINE_HUNDRED_AND_FORTY_SIX = 946,\r\n NINE_HUNDRED_AND_FORTY_THREE = 943,\r\n NINE_HUNDRED_AND_FORTY_TWO = 942,\r\n NINE_HUNDRED_AND_FORTY_ZERO = 940,\r\n NINE_HUNDRED_AND_FOUR = 904,\r\n NINE_HUNDRED_AND_FOURTEEN = 914,\r\n NINE_HUNDRED_AND_NINE = 909,\r\n NINE_HUNDRED_AND_NINETEEN = 919,\r\n NINE_HUNDRED_AND_NINETY_EIGHT = 998,\r\n NINE_HUNDRED_AND_NINETY_FIVE = 995,\r\n NINE_HUNDRED_AND_NINETY_FOUR = 994,\r\n NINE_HUNDRED_AND_NINETY_NINE = 999,\r\n NINE_HUNDRED_AND_NINETY_ONE = 991,\r\n NINE_HUNDRED_AND_NINETY_SEVEN = 997,\r\n NINE_HUNDRED_AND_NINETY_SIX = 996,\r\n NINE_HUNDRED_AND_NINETY_THREE = 993,\r\n NINE_HUNDRED_AND_NINETY_TWO = 992,\r\n NINE_HUNDRED_AND_NINETY_ZERO = 990,\r\n NINE_HUNDRED_AND_ONE = 901,\r\n NINE_HUNDRED_AND_SEVEN = 907,\r\n NINE_HUNDRED_AND_SEVENTEEN = 917,\r\n NINE_HUNDRED_AND_SEVENTY_EIGHT = 978,\r\n NINE_HUNDRED_AND_SEVENTY_FIVE = 975,\r\n NINE_HUNDRED_AND_SEVENTY_FOUR = 974,\r\n NINE_HUNDRED_AND_SEVENTY_NINE = 979,\r\n NINE_HUNDRED_AND_SEVENTY_ONE = 971,\r\n NINE_HUNDRED_AND_SEVENTY_SEVEN = 977,\r\n NINE_HUNDRED_AND_SEVENTY_SIX = 976,\r\n NINE_HUNDRED_AND_SEVENTY_THREE = 973,\r\n NINE_HUNDRED_AND_SEVENTY_TWO = 972,\r\n NINE_HUNDRED_AND_SEVENTY_ZERO = 970,\r\n NINE_HUNDRED_AND_SIX = 906,\r\n NINE_HUNDRED_AND_SIXTEEN = 916,\r\n NINE_HUNDRED_AND_SIXTY_EIGHT = 968,\r\n NINE_HUNDRED_AND_SIXTY_FIVE = 965,\r\n NINE_HUNDRED_AND_SIXTY_FOUR = 964,\r\n NINE_HUNDRED_AND_SIXTY_NINE = 969,\r\n NINE_HUNDRED_AND_SIXTY_ONE = 961,\r\n NINE_HUNDRED_AND_SIXTY_SEVEN = 967,\r\n NINE_HUNDRED_AND_SIXTY_SIX = 966,\r\n NINE_HUNDRED_AND_SIXTY_THREE = 963,\r\n NINE_HUNDRED_AND_SIXTY_TWO = 962,\r\n NINE_HUNDRED_AND_SIXTY_ZERO = 960,\r\n NINE_HUNDRED_AND_TEN = 910,\r\n NINE_HUNDRED_AND_THIRTEEN = 913,\r\n NINE_HUNDRED_AND_THIRTY_EIGHT = 938,\r\n NINE_HUNDRED_AND_THIRTY_FIVE = 935,\r\n NINE_HUNDRED_AND_THIRTY_FOUR = 934,\r\n NINE_HUNDRED_AND_THIRTY_NINE = 939,\r\n NINE_HUNDRED_AND_THIRTY_ONE = 931,\r\n NINE_HUNDRED_AND_THIRTY_SEVEN = 937,\r\n NINE_HUNDRED_AND_THIRTY_SIX = 936,\r\n NINE_HUNDRED_AND_THIRTY_THREE = 933,\r\n NINE_HUNDRED_AND_THIRTY_TWO = 932,\r\n NINE_HUNDRED_AND_THIRTY_ZERO = 930,\r\n NINE_HUNDRED_AND_THREE = 903,\r\n NINE_HUNDRED_AND_TWELVE = 912,\r\n NINE_HUNDRED_AND_TWENTY_EIGHT = 928,\r\n NINE_HUNDRED_AND_TWENTY_FIVE = 925,\r\n NINE_HUNDRED_AND_TWENTY_FOUR = 924,\r\n NINE_HUNDRED_AND_TWENTY_NINE = 929,\r\n NINE_HUNDRED_AND_TWENTY_ONE = 921,\r\n NINE_HUNDRED_AND_TWENTY_SEVEN = 927,\r\n NINE_HUNDRED_AND_TWENTY_SIX = 926,\r\n NINE_HUNDRED_AND_TWENTY_THREE = 923,\r\n NINE_HUNDRED_AND_TWENTY_TWO = 922,\r\n NINE_HUNDRED_AND_TWENTY_ZERO = 920,\r\n NINE_HUNDRED_AND_TWO = 902,\r\n NINETEEN = 19,\r\n NINETY_ = 90,\r\n NINETY_EIGHT = 98,\r\n NINETY_FIVE = 95,\r\n NINETY_FOUR = 94,\r\n NINETY_NINE = 99,\r\n NINETY_ONE = 91,\r\n NINETY_SEVEN = 97,\r\n NINETY_SIX = 96,\r\n NINETY_THREE = 93,\r\n NINETY_TWO = 92,\r\n ONE = 1,\r\n ONE_HUNDRED = 100,\r\n ONE_HUNDRED_AND_EIGHT = 108,\r\n ONE_HUNDRED_AND_EIGHTEEN = 118,\r\n ONE_HUNDRED_AND_EIGHTY_EIGHT = 188,\r\n ONE_HUNDRED_AND_EIGHTY_FIVE = 185,\r\n ONE_HUNDRED_AND_EIGHTY_FOUR = 184,\r\n ONE_HUNDRED_AND_EIGHTY_NINE = 189,\r\n ONE_HUNDRED_AND_EIGHTY_ONE = 181,\r\n ONE_HUNDRED_AND_EIGHTY_SEVEN = 187,\r\n ONE_HUNDRED_AND_EIGHTY_SIX = 186,\r\n ONE_HUNDRED_AND_EIGHTY_THREE = 183,\r\n ONE_HUNDRED_AND_EIGHTY_TWO = 182,\r\n ONE_HUNDRED_AND_EIGHTY_ZERO = 180,\r\n ONE_HUNDRED_AND_ELEVEN = 111,\r\n ONE_HUNDRED_AND_FIFTEEN = 115,\r\n ONE_HUNDRED_AND_FIFTY_EIGHT = 158,\r\n ONE_HUNDRED_AND_FIFTY_FIVE = 155,\r\n ONE_HUNDRED_AND_FIFTY_FOUR = 154,\r\n ONE_HUNDRED_AND_FIFTY_NINE = 159,\r\n ONE_HUNDRED_AND_FIFTY_ONE = 151,\r\n ONE_HUNDRED_AND_FIFTY_SEVEN = 157,\r\n ONE_HUNDRED_AND_FIFTY_SIX = 156,\r\n ONE_HUNDRED_AND_FIFTY_THREE = 153,\r\n ONE_HUNDRED_AND_FIFTY_TWO = 152,\r\n ONE_HUNDRED_AND_FIFTY_ZERO = 150,\r\n ONE_HUNDRED_AND_FIVE = 105,\r\n ONE_HUNDRED_AND_FORTY_EIGHT = 148,\r\n ONE_HUNDRED_AND_FORTY_FIVE = 145,\r\n ONE_HUNDRED_AND_FORTY_FOUR = 144,\r\n ONE_HUNDRED_AND_FORTY_NINE = 149,\r\n ONE_HUNDRED_AND_FORTY_ONE = 141,\r\n ONE_HUNDRED_AND_FORTY_SEVEN = 147,\r\n ONE_HUNDRED_AND_FORTY_SIX = 146,\r\n ONE_HUNDRED_AND_FORTY_THREE = 143,\r\n ONE_HUNDRED_AND_FORTY_TWO = 142,\r\n ONE_HUNDRED_AND_FORTY_ZERO = 140,\r\n ONE_HUNDRED_AND_FOUR = 104,\r\n ONE_HUNDRED_AND_FOURTEEN = 114,\r\n ONE_HUNDRED_AND_NINE = 109,\r\n ONE_HUNDRED_AND_NINETEEN = 119,\r\n ONE_HUNDRED_AND_NINETY_EIGHT = 198,\r\n ONE_HUNDRED_AND_NINETY_FIVE = 195,\r\n ONE_HUNDRED_AND_NINETY_FOUR = 194,\r\n ONE_HUNDRED_AND_NINETY_NINE = 199,\r\n ONE_HUNDRED_AND_NINETY_ONE = 191,\r\n ONE_HUNDRED_AND_NINETY_SEVEN = 197,\r\n ONE_HUNDRED_AND_NINETY_SIX = 196,\r\n ONE_HUNDRED_AND_NINETY_THREE = 193,\r\n ONE_HUNDRED_AND_NINETY_TWO = 192,\r\n ONE_HUNDRED_AND_NINETY_ZERO = 190,\r\n ONE_HUNDRED_AND_ONE = 101,\r\n ONE_HUNDRED_AND_SEVEN = 107,\r\n ONE_HUNDRED_AND_SEVENTEEN = 117,\r\n ONE_HUNDRED_AND_SEVENTY_EIGHT = 178,\r\n ONE_HUNDRED_AND_SEVENTY_FIVE = 175,\r\n ONE_HUNDRED_AND_SEVENTY_FOUR = 174,\r\n ONE_HUNDRED_AND_SEVENTY_NINE = 179,\r\n ONE_HUNDRED_AND_SEVENTY_ONE = 171,\r\n ONE_HUNDRED_AND_SEVENTY_SEVEN = 177,\r\n ONE_HUNDRED_AND_SEVENTY_SIX = 176,\r\n ONE_HUNDRED_AND_SEVENTY_THREE = 173,\r\n ONE_HUNDRED_AND_SEVENTY_TWO = 172,\r\n ONE_HUNDRED_AND_SEVENTY_ZERO = 170,\r\n ONE_HUNDRED_AND_SIX = 106,\r\n ONE_HUNDRED_AND_SIXTEEN = 116,\r\n ONE_HUNDRED_AND_SIXTY_EIGHT = 168,\r\n ONE_HUNDRED_AND_SIXTY_FIVE = 165,\r\n ONE_HUNDRED_AND_SIXTY_FOUR = 164,\r\n ONE_HUNDRED_AND_SIXTY_NINE = 169,\r\n ONE_HUNDRED_AND_SIXTY_ONE = 161,\r\n ONE_HUNDRED_AND_SIXTY_SEVEN = 167,\r\n ONE_HUNDRED_AND_SIXTY_SIX = 166,\r\n ONE_HUNDRED_AND_SIXTY_THREE = 163,\r\n ONE_HUNDRED_AND_SIXTY_TWO = 162,\r\n ONE_HUNDRED_AND_SIXTY_ZERO = 160,\r\n ONE_HUNDRED_AND_TEN = 110,\r\n ONE_HUNDRED_AND_THIRTEEN = 113,\r\n ONE_HUNDRED_AND_THIRTY_EIGHT = 138,\r\n ONE_HUNDRED_AND_THIRTY_FIVE = 135,\r\n ONE_HUNDRED_AND_THIRTY_FOUR = 134,\r\n ONE_HUNDRED_AND_THIRTY_NINE = 139,\r\n ONE_HUNDRED_AND_THIRTY_ONE = 131,\r\n ONE_HUNDRED_AND_THIRTY_SEVEN = 137,\r\n ONE_HUNDRED_AND_THIRTY_SIX = 136,\r\n ONE_HUNDRED_AND_THIRTY_THREE = 133,\r\n ONE_HUNDRED_AND_THIRTY_TWO = 132,\r\n ONE_HUNDRED_AND_THIRTY_ZERO = 130,\r\n ONE_HUNDRED_AND_THREE = 103,\r\n ONE_HUNDRED_AND_TWELVE = 112,\r\n ONE_HUNDRED_AND_TWENTY_EIGHT = 128,\r\n ONE_HUNDRED_AND_TWENTY_FIVE = 125,\r\n ONE_HUNDRED_AND_TWENTY_FOUR = 124,\r\n ONE_HUNDRED_AND_TWENTY_NINE = 129,\r\n ONE_HUNDRED_AND_TWENTY_ONE = 121,\r\n ONE_HUNDRED_AND_TWENTY_SEVEN = 127,\r\n ONE_HUNDRED_AND_TWENTY_SIX = 126,\r\n ONE_HUNDRED_AND_TWENTY_THREE = 123,\r\n ONE_HUNDRED_AND_TWENTY_TWO = 122,\r\n ONE_HUNDRED_AND_TWENTY_ZERO = 120,\r\n ONE_HUNDRED_AND_TWO = 102,\r\n ONETHOUSAND = 1000,\r\n SEVEN = 7,\r\n SEVEN_HUNDRED = 700,\r\n SEVEN_HUNDRED_AND_EIGHT = 708,\r\n SEVEN_HUNDRED_AND_EIGHTEEN = 718,\r\n SEVEN_HUNDRED_AND_EIGHTY_EIGHT = 788,\r\n SEVEN_HUNDRED_AND_EIGHTY_FIVE = 785,\r\n SEVEN_HUNDRED_AND_EIGHTY_FOUR = 784,\r\n SEVEN_HUNDRED_AND_EIGHTY_NINE = 789,\r\n SEVEN_HUNDRED_AND_EIGHTY_ONE = 781,\r\n SEVEN_HUNDRED_AND_EIGHTY_SEVEN = 787,\r\n SEVEN_HUNDRED_AND_EIGHTY_SIX = 786,\r\n SEVEN_HUNDRED_AND_EIGHTY_THREE = 783,\r\n SEVEN_HUNDRED_AND_EIGHTY_TWO = 782,\r\n SEVEN_HUNDRED_AND_EIGHTY_ZERO = 780,\r\n SEVEN_HUNDRED_AND_ELEVEN = 711,\r\n SEVEN_HUNDRED_AND_FIFTEEN = 715,\r\n SEVEN_HUNDRED_AND_FIFTY_EIGHT = 758,\r\n SEVEN_HUNDRED_AND_FIFTY_FIVE = 755,\r\n SEVEN_HUNDRED_AND_FIFTY_FOUR = 754,\r\n SEVEN_HUNDRED_AND_FIFTY_NINE = 759,\r\n SEVEN_HUNDRED_AND_FIFTY_ONE = 751,\r\n SEVEN_HUNDRED_AND_FIFTY_SEVEN = 757,\r\n SEVEN_HUNDRED_AND_FIFTY_SIX = 756,\r\n SEVEN_HUNDRED_AND_FIFTY_THREE = 753,\r\n SEVEN_HUNDRED_AND_FIFTY_TWO = 752,\r\n SEVEN_HUNDRED_AND_FIFTY_ZERO = 750,\r\n SEVEN_HUNDRED_AND_FIVE = 705,\r\n SEVEN_HUNDRED_AND_FORTY_EIGHT = 748,\r\n SEVEN_HUNDRED_AND_FORTY_FIVE = 745,\r\n SEVEN_HUNDRED_AND_FORTY_FOUR = 744,\r\n SEVEN_HUNDRED_AND_FORTY_NINE = 749,\r\n SEVEN_HUNDRED_AND_FORTY_ONE = 741,\r\n SEVEN_HUNDRED_AND_FORTY_SEVEN = 747,\r\n SEVEN_HUNDRED_AND_FORTY_SIX = 746,\r\n SEVEN_HUNDRED_AND_FORTY_THREE = 743,\r\n SEVEN_HUNDRED_AND_FORTY_TWO = 742,\r\n SEVEN_HUNDRED_AND_FORTY_ZERO = 740,\r\n SEVEN_HUNDRED_AND_FOUR = 704,\r\n SEVEN_HUNDRED_AND_FOURTEEN = 714,\r\n SEVEN_HUNDRED_AND_NINE = 709,\r\n SEVEN_HUNDRED_AND_NINETEEN = 719,\r\n SEVEN_HUNDRED_AND_NINETY_EIGHT = 798,\r\n SEVEN_HUNDRED_AND_NINETY_FIVE = 795,\r\n SEVEN_HUNDRED_AND_NINETY_FOUR = 794,\r\n SEVEN_HUNDRED_AND_NINETY_NINE = 799,\r\n SEVEN_HUNDRED_AND_NINETY_ONE = 791,\r\n SEVEN_HUNDRED_AND_NINETY_SEVEN = 797,\r\n SEVEN_HUNDRED_AND_NINETY_SIX = 796,\r\n SEVEN_HUNDRED_AND_NINETY_THREE = 793,\r\n SEVEN_HUNDRED_AND_NINETY_TWO = 792,\r\n SEVEN_HUNDRED_AND_NINETY_ZERO = 790,\r\n SEVEN_HUNDRED_AND_ONE = 701,\r\n SEVEN_HUNDRED_AND_SEVEN = 707,\r\n SEVEN_HUNDRED_AND_SEVENTEEN = 717,\r\n SEVEN_HUNDRED_AND_SEVENTY_EIGHT = 778,\r\n SEVEN_HUNDRED_AND_SEVENTY_FIVE = 775,\r\n SEVEN_HUNDRED_AND_SEVENTY_FOUR = 774,\r\n SEVEN_HUNDRED_AND_SEVENTY_NINE = 779,\r\n SEVEN_HUNDRED_AND_SEVENTY_ONE = 771,\r\n SEVEN_HUNDRED_AND_SEVENTY_SEVEN = 777,\r\n SEVEN_HUNDRED_AND_SEVENTY_SIX = 776,\r\n SEVEN_HUNDRED_AND_SEVENTY_THREE = 773,\r\n SEVEN_HUNDRED_AND_SEVENTY_TWO = 772,\r\n SEVEN_HUNDRED_AND_SEVENTY_ZERO = 770,\r\n SEVEN_HUNDRED_AND_SIX = 706,\r\n SEVEN_HUNDRED_AND_SIXTEEN = 716,\r\n SEVEN_HUNDRED_AND_SIXTY_EIGHT = 768,\r\n SEVEN_HUNDRED_AND_SIXTY_FIVE = 765,\r\n SEVEN_HUNDRED_AND_SIXTY_FOUR = 764,\r\n SEVEN_HUNDRED_AND_SIXTY_NINE = 769,\r\n SEVEN_HUNDRED_AND_SIXTY_ONE = 761,\r\n SEVEN_HUNDRED_AND_SIXTY_SEVEN = 767,\r\n SEVEN_HUNDRED_AND_SIXTY_SIX = 766,\r\n SEVEN_HUNDRED_AND_SIXTY_THREE = 763,\r\n SEVEN_HUNDRED_AND_SIXTY_TWO = 762,\r\n SEVEN_HUNDRED_AND_SIXTY_ZERO = 760,\r\n SEVEN_HUNDRED_AND_TEN = 710,\r\n SEVEN_HUNDRED_AND_THIRTEEN = 713,\r\n SEVEN_HUNDRED_AND_THIRTY_EIGHT = 738,\r\n SEVEN_HUNDRED_AND_THIRTY_FIVE = 735,\r\n SEVEN_HUNDRED_AND_THIRTY_FOUR = 734,\r\n SEVEN_HUNDRED_AND_THIRTY_NINE = 739,\r\n SEVEN_HUNDRED_AND_THIRTY_ONE = 731,\r\n SEVEN_HUNDRED_AND_THIRTY_SEVEN = 737,\r\n SEVEN_HUNDRED_AND_THIRTY_SIX = 736,\r\n SEVEN_HUNDRED_AND_THIRTY_THREE = 733,\r\n SEVEN_HUNDRED_AND_THIRTY_TWO = 732,\r\n SEVEN_HUNDRED_AND_THIRTY_ZERO = 730,\r\n SEVEN_HUNDRED_AND_THREE = 703,\r\n SEVEN_HUNDRED_AND_TWELVE = 712,\r\n SEVEN_HUNDRED_AND_TWENTY_EIGHT = 728,\r\n SEVEN_HUNDRED_AND_TWENTY_FIVE = 725,\r\n SEVEN_HUNDRED_AND_TWENTY_FOUR = 724,\r\n SEVEN_HUNDRED_AND_TWENTY_NINE = 729,\r\n SEVEN_HUNDRED_AND_TWENTY_ONE = 721,\r\n SEVEN_HUNDRED_AND_TWENTY_SEVEN = 727,\r\n SEVEN_HUNDRED_AND_TWENTY_SIX = 726,\r\n SEVEN_HUNDRED_AND_TWENTY_THREE = 723,\r\n SEVEN_HUNDRED_AND_TWENTY_TWO = 722,\r\n SEVEN_HUNDRED_AND_TWENTY_ZERO = 720,\r\n SEVEN_HUNDRED_AND_TWO = 702,\r\n SEVENTEEN = 17,\r\n SEVENTY_ = 70,\r\n SEVENTY_EIGHT = 78,\r\n SEVENTY_FIVE = 75,\r\n SEVENTY_FOUR = 74,\r\n SEVENTY_NINE = 79,\r\n SEVENTY_ONE = 71,\r\n SEVENTY_SEVEN = 77,\r\n SEVENTY_SIX = 76,\r\n SEVENTY_THREE = 73,\r\n SEVENTY_TWO = 72,\r\n SIX = 6,\r\n SIX_HUNDRED = 600,\r\n SIX_HUNDRED_AND_EIGHT = 608,\r\n SIX_HUNDRED_AND_EIGHTEEN = 618,\r\n SIX_HUNDRED_AND_EIGHTY_EIGHT = 688,\r\n SIX_HUNDRED_AND_EIGHTY_FIVE = 685,\r\n SIX_HUNDRED_AND_EIGHTY_FOUR = 684,\r\n SIX_HUNDRED_AND_EIGHTY_NINE = 689,\r\n SIX_HUNDRED_AND_EIGHTY_ONE = 681,\r\n SIX_HUNDRED_AND_EIGHTY_SEVEN = 687,\r\n SIX_HUNDRED_AND_EIGHTY_SIX = 686,\r\n SIX_HUNDRED_AND_EIGHTY_THREE = 683,\r\n SIX_HUNDRED_AND_EIGHTY_TWO = 682,\r\n SIX_HUNDRED_AND_EIGHTY_ZERO = 680,\r\n SIX_HUNDRED_AND_ELEVEN = 611,\r\n SIX_HUNDRED_AND_FIFTEEN = 615,\r\n SIX_HUNDRED_AND_FIFTY_EIGHT = 658,\r\n SIX_HUNDRED_AND_FIFTY_FIVE = 655,\r\n SIX_HUNDRED_AND_FIFTY_FOUR = 654,\r\n SIX_HUNDRED_AND_FIFTY_NINE = 659,\r\n SIX_HUNDRED_AND_FIFTY_ONE = 651,\r\n SIX_HUNDRED_AND_FIFTY_SEVEN = 657,\r\n SIX_HUNDRED_AND_FIFTY_SIX = 656,\r\n SIX_HUNDRED_AND_FIFTY_THREE = 653,\r\n SIX_HUNDRED_AND_FIFTY_TWO = 652,\r\n SIX_HUNDRED_AND_FIFTY_ZERO = 650,\r\n SIX_HUNDRED_AND_FIVE = 605,\r\n SIX_HUNDRED_AND_FORTY_EIGHT = 648,\r\n SIX_HUNDRED_AND_FORTY_FIVE = 645,\r\n SIX_HUNDRED_AND_FORTY_FOUR = 644,\r\n SIX_HUNDRED_AND_FORTY_NINE = 649,\r\n SIX_HUNDRED_AND_FORTY_ONE = 641,\r\n SIX_HUNDRED_AND_FORTY_SEVEN = 647,\r\n SIX_HUNDRED_AND_FORTY_SIX = 646,\r\n SIX_HUNDRED_AND_FORTY_THREE = 643,\r\n SIX_HUNDRED_AND_FORTY_TWO = 642,\r\n SIX_HUNDRED_AND_FORTY_ZERO = 640,\r\n SIX_HUNDRED_AND_FOUR = 604,\r\n SIX_HUNDRED_AND_FOURTEEN = 614,\r\n SIX_HUNDRED_AND_NINE = 609,\r\n SIX_HUNDRED_AND_NINETEEN = 619,\r\n SIX_HUNDRED_AND_NINETY_EIGHT = 698,\r\n SIX_HUNDRED_AND_NINETY_FIVE = 695,\r\n SIX_HUNDRED_AND_NINETY_FOUR = 694,\r\n SIX_HUNDRED_AND_NINETY_NINE = 699,\r\n SIX_HUNDRED_AND_NINETY_ONE = 691,\r\n SIX_HUNDRED_AND_NINETY_SEVEN = 697,\r\n SIX_HUNDRED_AND_NINETY_SIX = 696,\r\n SIX_HUNDRED_AND_NINETY_THREE = 693,\r\n SIX_HUNDRED_AND_NINETY_TWO = 692,\r\n SIX_HUNDRED_AND_NINETY_ZERO = 690,\r\n SIX_HUNDRED_AND_ONE = 601,\r\n SIX_HUNDRED_AND_SEVEN = 607,\r\n SIX_HUNDRED_AND_SEVENTEEN = 617,\r\n SIX_HUNDRED_AND_SEVENTY_EIGHT = 678,\r\n SIX_HUNDRED_AND_SEVENTY_FIVE = 675,\r\n SIX_HUNDRED_AND_SEVENTY_FOUR = 674,\r\n SIX_HUNDRED_AND_SEVENTY_NINE = 679,\r\n SIX_HUNDRED_AND_SEVENTY_ONE = 671,\r\n SIX_HUNDRED_AND_SEVENTY_SEVEN = 677,\r\n SIX_HUNDRED_AND_SEVENTY_SIX = 676,\r\n SIX_HUNDRED_AND_SEVENTY_THREE = 673,\r\n SIX_HUNDRED_AND_SEVENTY_TWO = 672,\r\n SIX_HUNDRED_AND_SEVENTY_ZERO = 670,\r\n SIX_HUNDRED_AND_SIX = 606,\r\n SIX_HUNDRED_AND_SIXTEEN = 616,\r\n SIX_HUNDRED_AND_SIXTY_EIGHT = 668,\r\n SIX_HUNDRED_AND_SIXTY_FIVE = 665,\r\n SIX_HUNDRED_AND_SIXTY_FOUR = 664,\r\n SIX_HUNDRED_AND_SIXTY_NINE = 669,\r\n SIX_HUNDRED_AND_SIXTY_ONE = 661,\r\n SIX_HUNDRED_AND_SIXTY_SEVEN = 667,\r\n SIX_HUNDRED_AND_SIXTY_SIX = 666,\r\n SIX_HUNDRED_AND_SIXTY_THREE = 663,\r\n SIX_HUNDRED_AND_SIXTY_TWO = 662,\r\n SIX_HUNDRED_AND_SIXTY_ZERO = 660,\r\n SIX_HUNDRED_AND_TEN = 610,\r\n SIX_HUNDRED_AND_THIRTEEN = 613,\r\n SIX_HUNDRED_AND_THIRTY_EIGHT = 638,\r\n SIX_HUNDRED_AND_THIRTY_FIVE = 635,\r\n SIX_HUNDRED_AND_THIRTY_FOUR = 634,\r\n SIX_HUNDRED_AND_THIRTY_NINE = 639,\r\n SIX_HUNDRED_AND_THIRTY_ONE = 631,\r\n SIX_HUNDRED_AND_THIRTY_SEVEN = 637,\r\n SIX_HUNDRED_AND_THIRTY_SIX = 636,\r\n SIX_HUNDRED_AND_THIRTY_THREE = 633,\r\n SIX_HUNDRED_AND_THIRTY_TWO = 632,\r\n SIX_HUNDRED_AND_THIRTY_ZERO = 630,\r\n SIX_HUNDRED_AND_THREE = 603,\r\n SIX_HUNDRED_AND_TWELVE = 612,\r\n SIX_HUNDRED_AND_TWENTY_EIGHT = 628,\r\n SIX_HUNDRED_AND_TWENTY_FIVE = 625,\r\n SIX_HUNDRED_AND_TWENTY_FOUR = 624,\r\n SIX_HUNDRED_AND_TWENTY_NINE = 629,\r\n SIX_HUNDRED_AND_TWENTY_ONE = 621,\r\n SIX_HUNDRED_AND_TWENTY_SEVEN = 627,\r\n SIX_HUNDRED_AND_TWENTY_SIX = 626,\r\n SIX_HUNDRED_AND_TWENTY_THREE = 623,\r\n SIX_HUNDRED_AND_TWENTY_TWO = 622,\r\n SIX_HUNDRED_AND_TWENTY_ZERO = 620,\r\n SIX_HUNDRED_AND_TWO = 602,\r\n SIXTEEN = 16,\r\n SIXTY_ = 60,\r\n SIXTY_EIGHT = 68,\r\n SIXTY_FIVE = 65,\r\n SIXTY_FOUR = 64,\r\n SIXTY_NINE = 69,\r\n SIXTY_ONE = 61,\r\n SIXTY_SEVEN = 67,\r\n SIXTY_SIX = 66,\r\n SIXTY_THREE = 63,\r\n SIXTY_TWO = 62,\r\n TEN = 10,\r\n THIRTEEN = 13,\r\n THIRTY_ = 30,\r\n THIRTY_EIGHT = 38,\r\n THIRTY_FIVE = 35,\r\n THIRTY_FOUR = 34,\r\n THIRTY_NINE = 39,\r\n THIRTY_ONE = 31,\r\n THIRTY_SEVEN = 37,\r\n THIRTY_SIX = 36,\r\n THIRTY_THREE = 33,\r\n THIRTY_TWO = 32,\r\n THREE = 3,\r\n THREE_HUNDRED = 300,\r\n THREE_HUNDRED_AND_EIGHT = 308,\r\n THREE_HUNDRED_AND_EIGHTEEN = 318,\r\n THREE_HUNDRED_AND_EIGHTY_EIGHT = 388,\r\n THREE_HUNDRED_AND_EIGHTY_FIVE = 385,\r\n THREE_HUNDRED_AND_EIGHTY_FOUR = 384,\r\n THREE_HUNDRED_AND_EIGHTY_NINE = 389,\r\n THREE_HUNDRED_AND_EIGHTY_ONE = 381,\r\n THREE_HUNDRED_AND_EIGHTY_SEVEN = 387,\r\n THREE_HUNDRED_AND_EIGHTY_SIX = 386,\r\n THREE_HUNDRED_AND_EIGHTY_THREE = 383,\r\n THREE_HUNDRED_AND_EIGHTY_TWO = 382,\r\n THREE_HUNDRED_AND_EIGHTY_ZERO = 380,\r\n THREE_HUNDRED_AND_ELEVEN = 311,\r\n THREE_HUNDRED_AND_FIFTEEN = 315,\r\n THREE_HUNDRED_AND_FIFTY_EIGHT = 358,\r\n THREE_HUNDRED_AND_FIFTY_FIVE = 355,\r\n THREE_HUNDRED_AND_FIFTY_FOUR = 354,\r\n THREE_HUNDRED_AND_FIFTY_NINE = 359,\r\n THREE_HUNDRED_AND_FIFTY_ONE = 351,\r\n THREE_HUNDRED_AND_FIFTY_SEVEN = 357,\r\n THREE_HUNDRED_AND_FIFTY_SIX = 356,\r\n THREE_HUNDRED_AND_FIFTY_THREE = 353,\r\n THREE_HUNDRED_AND_FIFTY_TWO = 352,\r\n THREE_HUNDRED_AND_FIFTY_ZERO = 350,\r\n THREE_HUNDRED_AND_FIVE = 305,\r\n THREE_HUNDRED_AND_FORTY_EIGHT = 348,\r\n THREE_HUNDRED_AND_FORTY_FIVE = 345,\r\n THREE_HUNDRED_AND_FORTY_FOUR = 344,\r\n THREE_HUNDRED_AND_FORTY_NINE = 349,\r\n THREE_HUNDRED_AND_FORTY_ONE = 341,\r\n THREE_HUNDRED_AND_FORTY_SEVEN = 347,\r\n THREE_HUNDRED_AND_FORTY_SIX = 346,\r\n THREE_HUNDRED_AND_FORTY_THREE = 343,\r\n THREE_HUNDRED_AND_FORTY_TWO = 342,\r\n THREE_HUNDRED_AND_FORTY_ZERO = 340,\r\n THREE_HUNDRED_AND_FOUR = 304,\r\n THREE_HUNDRED_AND_FOURTEEN = 314,\r\n THREE_HUNDRED_AND_NINE = 309,\r\n THREE_HUNDRED_AND_NINETEEN = 319,\r\n THREE_HUNDRED_AND_NINETY_EIGHT = 398,\r\n THREE_HUNDRED_AND_NINETY_FIVE = 395,\r\n THREE_HUNDRED_AND_NINETY_FOUR = 394,\r\n THREE_HUNDRED_AND_NINETY_NINE = 399,\r\n THREE_HUNDRED_AND_NINETY_ONE = 391,\r\n THREE_HUNDRED_AND_NINETY_SEVEN = 397,\r\n THREE_HUNDRED_AND_NINETY_SIX = 396,\r\n THREE_HUNDRED_AND_NINETY_THREE = 393,\r\n THREE_HUNDRED_AND_NINETY_TWO = 392,\r\n THREE_HUNDRED_AND_NINETY_ZERO = 390,\r\n THREE_HUNDRED_AND_ONE = 301,\r\n THREE_HUNDRED_AND_SEVEN = 307,\r\n THREE_HUNDRED_AND_SEVENTEEN = 317,\r\n THREE_HUNDRED_AND_SEVENTY_EIGHT = 378,\r\n THREE_HUNDRED_AND_SEVENTY_FIVE = 375,\r\n THREE_HUNDRED_AND_SEVENTY_FOUR = 374,\r\n THREE_HUNDRED_AND_SEVENTY_NINE = 379,\r\n THREE_HUNDRED_AND_SEVENTY_ONE = 371,\r\n THREE_HUNDRED_AND_SEVENTY_SEVEN = 377,\r\n THREE_HUNDRED_AND_SEVENTY_SIX = 376,\r\n THREE_HUNDRED_AND_SEVENTY_THREE = 373,\r\n THREE_HUNDRED_AND_SEVENTY_TWO = 372,\r\n THREE_HUNDRED_AND_SEVENTY_ZERO = 370,\r\n THREE_HUNDRED_AND_SIX = 306,\r\n THREE_HUNDRED_AND_SIXTEEN = 316,\r\n THREE_HUNDRED_AND_SIXTY_EIGHT = 368,\r\n THREE_HUNDRED_AND_SIXTY_FIVE = 365,\r\n THREE_HUNDRED_AND_SIXTY_FOUR = 364,\r\n THREE_HUNDRED_AND_SIXTY_NINE = 369,\r\n THREE_HUNDRED_AND_SIXTY_ONE = 361,\r\n THREE_HUNDRED_AND_SIXTY_SEVEN = 367,\r\n THREE_HUNDRED_AND_SIXTY_SIX = 366,\r\n THREE_HUNDRED_AND_SIXTY_THREE = 363,\r\n THREE_HUNDRED_AND_SIXTY_TWO = 362,\r\n THREE_HUNDRED_AND_SIXTY_ZERO = 360,\r\n THREE_HUNDRED_AND_TEN = 310,\r\n THREE_HUNDRED_AND_THIRTEEN = 313,\r\n THREE_HUNDRED_AND_THIRTY_EIGHT = 338,\r\n THREE_HUNDRED_AND_THIRTY_FIVE = 335,\r\n THREE_HUNDRED_AND_THIRTY_FOUR = 334,\r\n THREE_HUNDRED_AND_THIRTY_NINE = 339,\r\n THREE_HUNDRED_AND_THIRTY_ONE = 331,\r\n THREE_HUNDRED_AND_THIRTY_SEVEN = 337,\r\n THREE_HUNDRED_AND_THIRTY_SIX = 336,\r\n THREE_HUNDRED_AND_THIRTY_THREE = 333,\r\n THREE_HUNDRED_AND_THIRTY_TWO = 332,\r\n THREE_HUNDRED_AND_THIRTY_ZERO = 330,\r\n THREE_HUNDRED_AND_THREE = 303,\r\n THREE_HUNDRED_AND_TWELVE = 312,\r\n THREE_HUNDRED_AND_TWENTY_EIGHT = 328,\r\n THREE_HUNDRED_AND_TWENTY_FIVE = 325,\r\n THREE_HUNDRED_AND_TWENTY_FOUR = 324,\r\n THREE_HUNDRED_AND_TWENTY_NINE = 329,\r\n THREE_HUNDRED_AND_TWENTY_ONE = 321,\r\n THREE_HUNDRED_AND_TWENTY_SEVEN = 327,\r\n THREE_HUNDRED_AND_TWENTY_SIX = 326,\r\n THREE_HUNDRED_AND_TWENTY_THREE = 323,\r\n THREE_HUNDRED_AND_TWENTY_TWO = 322,\r\n THREE_HUNDRED_AND_TWENTY_ZERO = 320,\r\n THREE_HUNDRED_AND_TWO = 302,\r\n TWELVE = 12,\r\n TWENTY_ = 20,\r\n TWENTY_EIGHT = 28,\r\n TWENTY_FIVE = 25,\r\n TWENTY_FOUR = 24,\r\n TWENTY_NINE = 29,\r\n TWENTY_ONE = 21,\r\n TWENTY_SEVEN = 27,\r\n TWENTY_SIX = 26,\r\n TWENTY_THREE = 23,\r\n TWENTY_TWO = 22,\r\n TWO = 2,\r\n TWO_HUNDRED = 200,\r\n TWO_HUNDRED_AND_EIGHT = 208,\r\n TWO_HUNDRED_AND_EIGHTEEN = 218,\r\n TWO_HUNDRED_AND_EIGHTY_EIGHT = 288,\r\n TWO_HUNDRED_AND_EIGHTY_FIVE = 285,\r\n TWO_HUNDRED_AND_EIGHTY_FOUR = 284,\r\n TWO_HUNDRED_AND_EIGHTY_NINE = 289,\r\n TWO_HUNDRED_AND_EIGHTY_ONE = 281,\r\n TWO_HUNDRED_AND_EIGHTY_SEVEN = 287,\r\n TWO_HUNDRED_AND_EIGHTY_SIX = 286,\r\n TWO_HUNDRED_AND_EIGHTY_THREE = 283,\r\n TWO_HUNDRED_AND_EIGHTY_TWO = 282,\r\n TWO_HUNDRED_AND_EIGHTY_ZERO = 280,\r\n TWO_HUNDRED_AND_ELEVEN = 211,\r\n TWO_HUNDRED_AND_FIFTEEN = 215,\r\n TWO_HUNDRED_AND_FIFTY_EIGHT = 258,\r\n TWO_HUNDRED_AND_FIFTY_FIVE = 255,\r\n TWO_HUNDRED_AND_FIFTY_FOUR = 254,\r\n TWO_HUNDRED_AND_FIFTY_NINE = 259,\r\n TWO_HUNDRED_AND_FIFTY_ONE = 251,\r\n TWO_HUNDRED_AND_FIFTY_SEVEN = 257,\r\n TWO_HUNDRED_AND_FIFTY_SIX = 256,\r\n TWO_HUNDRED_AND_FIFTY_THREE = 253,\r\n TWO_HUNDRED_AND_FIFTY_TWO = 252,\r\n TWO_HUNDRED_AND_FIFTY_ZERO = 250,\r\n TWO_HUNDRED_AND_FIVE = 205,\r\n TWO_HUNDRED_AND_FORTY_EIGHT = 248,\r\n TWO_HUNDRED_AND_FORTY_FIVE = 245,\r\n TWO_HUNDRED_AND_FORTY_FOUR = 244,\r\n TWO_HUNDRED_AND_FORTY_NINE = 249,\r\n TWO_HUNDRED_AND_FORTY_ONE = 241,\r\n TWO_HUNDRED_AND_FORTY_SEVEN = 247,\r\n TWO_HUNDRED_AND_FORTY_SIX = 246,\r\n TWO_HUNDRED_AND_FORTY_THREE = 243,\r\n TWO_HUNDRED_AND_FORTY_TWO = 242,\r\n TWO_HUNDRED_AND_FORTY_ZERO = 240,\r\n TWO_HUNDRED_AND_FOUR = 204,\r\n TWO_HUNDRED_AND_FOURTEEN = 214,\r\n TWO_HUNDRED_AND_NINE = 209,\r\n TWO_HUNDRED_AND_NINETEEN = 219,\r\n TWO_HUNDRED_AND_NINETY_EIGHT = 298,\r\n TWO_HUNDRED_AND_NINETY_FIVE = 295,\r\n TWO_HUNDRED_AND_NINETY_FOUR = 294,\r\n TWO_HUNDRED_AND_NINETY_NINE = 299,\r\n TWO_HUNDRED_AND_NINETY_ONE = 291,\r\n TWO_HUNDRED_AND_NINETY_SEVEN = 297,\r\n TWO_HUNDRED_AND_NINETY_SIX = 296,\r\n TWO_HUNDRED_AND_NINETY_THREE = 293,\r\n TWO_HUNDRED_AND_NINETY_TWO = 292,\r\n TWO_HUNDRED_AND_NINETY_ZERO = 290,\r\n TWO_HUNDRED_AND_ONE = 201,\r\n TWO_HUNDRED_AND_SEVEN = 207,\r\n TWO_HUNDRED_AND_SEVENTEEN = 217,\r\n TWO_HUNDRED_AND_SEVENTY_EIGHT = 278,\r\n TWO_HUNDRED_AND_SEVENTY_FIVE = 275,\r\n TWO_HUNDRED_AND_SEVENTY_FOUR = 274,\r\n TWO_HUNDRED_AND_SEVENTY_NINE = 279,\r\n TWO_HUNDRED_AND_SEVENTY_ONE = 271,\r\n TWO_HUNDRED_AND_SEVENTY_SEVEN = 277,\r\n TWO_HUNDRED_AND_SEVENTY_SIX = 276,\r\n TWO_HUNDRED_AND_SEVENTY_THREE = 273,\r\n TWO_HUNDRED_AND_SEVENTY_TWO = 272,\r\n TWO_HUNDRED_AND_SEVENTY_ZERO = 270,\r\n TWO_HUNDRED_AND_SIX = 206,\r\n TWO_HUNDRED_AND_SIXTEEN = 216,\r\n TWO_HUNDRED_AND_SIXTY_EIGHT = 268,\r\n TWO_HUNDRED_AND_SIXTY_FIVE = 265,\r\n TWO_HUNDRED_AND_SIXTY_FOUR = 264,\r\n TWO_HUNDRED_AND_SIXTY_NINE = 269,\r\n TWO_HUNDRED_AND_SIXTY_ONE = 261,\r\n TWO_HUNDRED_AND_SIXTY_SEVEN = 267,\r\n TWO_HUNDRED_AND_SIXTY_SIX = 266,\r\n TWO_HUNDRED_AND_SIXTY_THREE = 263,\r\n TWO_HUNDRED_AND_SIXTY_TWO = 262,\r\n TWO_HUNDRED_AND_SIXTY_ZERO = 260,\r\n TWO_HUNDRED_AND_TEN = 210,\r\n TWO_HUNDRED_AND_THIRTEEN = 213,\r\n TWO_HUNDRED_AND_THIRTY_EIGHT = 238,\r\n TWO_HUNDRED_AND_THIRTY_FIVE = 235,\r\n TWO_HUNDRED_AND_THIRTY_FOUR = 234,\r\n TWO_HUNDRED_AND_THIRTY_NINE = 239,\r\n TWO_HUNDRED_AND_THIRTY_ONE = 231,\r\n TWO_HUNDRED_AND_THIRTY_SEVEN = 237,\r\n TWO_HUNDRED_AND_THIRTY_SIX = 236,\r\n TWO_HUNDRED_AND_THIRTY_THREE = 233,\r\n TWO_HUNDRED_AND_THIRTY_TWO = 232,\r\n TWO_HUNDRED_AND_THIRTY_ZERO = 230,\r\n TWO_HUNDRED_AND_THREE = 203,\r\n TWO_HUNDRED_AND_TWELVE = 212,\r\n TWO_HUNDRED_AND_TWENTY_EIGHT = 228,\r\n TWO_HUNDRED_AND_TWENTY_FIVE = 225,\r\n TWO_HUNDRED_AND_TWENTY_FOUR = 224,\r\n TWO_HUNDRED_AND_TWENTY_NINE = 229,\r\n TWO_HUNDRED_AND_TWENTY_ONE = 221,\r\n TWO_HUNDRED_AND_TWENTY_SEVEN = 227,\r\n TWO_HUNDRED_AND_TWENTY_SIX = 226,\r\n TWO_HUNDRED_AND_TWENTY_THREE = 223,\r\n TWO_HUNDRED_AND_TWENTY_TWO = 222,\r\n TWO_HUNDRED_AND_TWENTY_ZERO = 220,\r\n TWO_HUNDRED_AND_TWO = 202,\r\n ZERO = 0\r\n}\r\n","export enum AgroStringMasks {\r\n CNPJ = '99.999.999/9999-99',\r\n CPF = '999.999.999-99',\r\n CEP = '99999-999',\r\n CELLPHONE = '(99) 99999-9999',\r\n PHONE = '(99) 9999-9999',\r\n DATE = '99/99/9999',\r\n TIME = '99:99',\r\n DATETIME = '99/99/9999 99:99'\r\n}\r\n","export enum HttpCodes {\r\n Continue = 100,\r\n SwitchingProtocols = 101,\r\n Processing = 102,\r\n EarlyHints = 103,\r\n OK = 200,\r\n Created = 201,\r\n Accepted = 202,\r\n NonAuthoritativeInformation = 203,\r\n NoContent = 204,\r\n ResetContent = 205,\r\n PartialContent = 206,\r\n MultiStatus = 207,\r\n AlreadyReported = 208,\r\n IMUsed = 226,\r\n MultipleChoices = 300,\r\n MovedPermanently = 301,\r\n Found = 302,\r\n SeeOther = 303,\r\n NotModified = 304,\r\n UseProxy = 305,\r\n TemporaryRedirect = 307,\r\n PermanentRedirect = 308,\r\n BadRequest = 400,\r\n Unauthorized = 401,\r\n PaymentRequired = 402,\r\n Forbidden = 403,\r\n NotFound = 404,\r\n MethodNotAllowed = 405,\r\n NotAcceptable = 406,\r\n ProxyAuthenticationRequired = 407,\r\n RequestTimeout = 408,\r\n Conflict = 409,\r\n Gone = 410,\r\n LengthRequired = 411,\r\n PreconditionFailed = 412,\r\n PayloadTooLarge = 413,\r\n URITooLong = 414,\r\n UnsupportedMediaType = 415,\r\n RangeNotSatisfiable = 416,\r\n ExpectationFailed = 417,\r\n ImATeapot = 418,\r\n MisdirectedRequest = 421,\r\n UnprocessableEntity = 422,\r\n Locked = 423,\r\n FailedDependency = 424,\r\n TooEarly = 425,\r\n UpgradeRequired = 426,\r\n PreconditionRequired = 428,\r\n TooManyRequests = 429,\r\n RequestHeaderFieldsTooLarge = 431,\r\n UnavailableForLegalReasons = 451,\r\n InternalServerError = 500,\r\n NotImplemented = 501,\r\n BadGateway = 502,\r\n ServiceUnavailable = 503,\r\n GatewayTimeout = 504,\r\n HTTPVersionNotSupported = 505,\r\n VariantAlsoNegotiates = 506,\r\n InsufficientStorage = 507,\r\n LoopDetected = 508,\r\n NotExtended = 510,\r\n NetworkAuthenticationRequired = 511\r\n}\r\n","import { AGRO_NUMBERS } from \"../enums\";\r\n\r\nexport { AgroObjectUtils as AOU, AgroObjectUtils as ObjectUtils };\r\n\r\n/**\r\n * Classe utilitária para operações de objeto.\r\n */\r\nexport class AgroObjectUtils {\r\n /**\r\n * Verifica se um objeto é nulo ou indefinido.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto for nulo ou indefinido, false caso contrário.\r\n */\r\n static isNullOrUndefined(obj: any): boolean {\r\n return obj === null || obj === undefined;\r\n }\r\n\r\n /**\r\n * Verifica se um objeto não é nulo e não é indefinido.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto não for nulo e não for indefinido, false caso contrário.\r\n */\r\n static isNotNullOrUndefined(obj: any): boolean {\r\n return !AgroObjectUtils.isNullOrUndefined(obj);\r\n }\r\n\r\n /**\r\n * Verifica se um objeto é uma string.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto for uma string, false caso contrário.\r\n */\r\n static isString(obj: any): boolean {\r\n return typeof obj === \"string\";\r\n }\r\n\r\n /**\r\n * Verifica se um objeto é um número.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto for um número, false caso contrário.\r\n */\r\n static isNumber(obj: any): boolean {\r\n return typeof obj === \"number\";\r\n }\r\n\r\n /**\r\n * Verifica se um objeto é um booleano.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto for um booleano, false caso contrário.\r\n */\r\n static isBoolean(obj: any): boolean {\r\n return typeof obj === \"boolean\";\r\n }\r\n\r\n /**\r\n * Verifica se um objeto é uma função.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto for uma função, false caso contrário.\r\n */\r\n static isFunction(obj: any): boolean {\r\n return typeof obj === \"function\";\r\n }\r\n\r\n /**\r\n * Verifica se um objeto é um array.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto for um array, false caso contrário.\r\n */\r\n static isArray(obj: any): boolean {\r\n return Array.isArray(obj);\r\n }\r\n\r\n /**\r\n * Verifica se o valor informado é um objeto.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto for um objeto, false caso contrário.\r\n */\r\n static isObject(obj: any): boolean {\r\n return typeof obj === \"object\";\r\n }\r\n\r\n /**\r\n * Verifica se um objeto é uma data.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto for uma data, false caso contrário.\r\n */\r\n static isDate(obj: any): boolean {\r\n return obj instanceof Date;\r\n }\r\n\r\n /**\r\n * Verifica se um objeto é um erro.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto for um erro, false caso contrário.\r\n */\r\n static isError(obj: any): boolean {\r\n return obj instanceof Error;\r\n }\r\n\r\n /**\r\n * Verifica se um objeto é uma expressão regular.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto for uma expressão regular, false caso contrário.\r\n */\r\n static isRegExp(obj: any): boolean {\r\n return obj instanceof RegExp;\r\n }\r\n\r\n /**\r\n * Verifica se um objeto é um valor primitivo.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto for um valor primitivo, false caso contrário.\r\n */\r\n static isPrimitive(obj: any): boolean {\r\n return AgroObjectUtils.isString(obj) || AgroObjectUtils.isNumber(obj) || AgroObjectUtils.isBoolean(obj);\r\n }\r\n\r\n /**\r\n * Verifica se todos os valores de um objeto são nulos ou indefinidos.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se todos os valores do objeto forem nulos ou indefinidos, false caso contrário.\r\n */\r\n static allNull(obj: any): boolean {\r\n if (!AgroObjectUtils.isObject(obj)) {\r\n return false;\r\n }\r\n\r\n for (const key in obj) {\r\n if (obj.hasOwnProperty(key) && !AgroObjectUtils.isNullOrUndefined(obj[key])) {\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n /**\r\n * Compara dois objetos para verificar se são iguais.\r\n * @param obj1 - O primeiro objeto a ser comparado.\r\n * @param obj2 - O segundo objeto a ser comparado.\r\n * @returns True se os objetos forem iguais, false caso contrário.\r\n */\r\n static isEqual(obj1: any, obj2: any): boolean {\r\n if (JSON.stringify(obj1) === JSON.stringify(obj2)) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n /**\r\n * Verifica se um objeto é nulo.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto for nulo ou um objeto vazio, false caso contrário.\r\n */\r\n static isNull(obj: any): boolean {\r\n return obj === null;\r\n }\r\n\r\n /**\r\n * Verifica se um objeto não é nulo.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto não for nulo, false caso contrário.\r\n */\r\n static isNotNull(obj: any): boolean {\r\n return !AgroObjectUtils.isNull(obj);\r\n }\r\n\r\n /**\r\n * Converte um objeto para uma string JSON.\r\n * @param obj - O objeto a ser convertido.\r\n * @returns A string JSON representando o objeto.\r\n */\r\n static toJSON(obj: any): string {\r\n return JSON.stringify(obj);\r\n }\r\n\r\n /**\r\n * Verifica se um objeto não é vazio.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto não for vazio, false caso contrário.\r\n */\r\n static isNotEmpty(obj: any): boolean {\r\n if (!AgroObjectUtils.isObject(obj)) {\r\n return false;\r\n }\r\n\r\n return Object.keys(obj).length !== 0;\r\n }\r\n\r\n /**\r\n * Verifica se um objeto é vazio.\r\n * @param obj - O objeto a ser verificado.\r\n * @returns True se o objeto for vazio, false caso contrário.\r\n */\r\n static isEmpty(obj: any): boolean {\r\n return !AgroObjectUtils.isNotEmpty(obj);\r\n }\r\n\r\n /**\r\n * Verifica se um objeto não está vazio e contém uma determinada propriedade.\r\n * @param obj - O objeto a ser verificado.\r\n * @param property - A propriedade a ser verificada.\r\n * @returns True se o objeto não estiver vazio e contiver a propriedade, false caso contrário.\r\n */\r\n static containsProperty(obj: any, property: string): boolean {\r\n return AgroObjectUtils.isNotEmpty(obj) && obj.hasOwnProperty(property);\r\n }\r\n\r\n /**\r\n * Verifica se o parâmetro recebido é um objeto e se ele contém a propriedade ID.\r\n */\r\n static hasId(obj: any): boolean {\r\n return AgroObjectUtils.isNotEmpty(obj) && obj.hasOwnProperty(\"id\");\r\n }\r\n\r\n /**\r\n * Verifica se o valor informado no parâmetro possui as propriedades de uma entidade SDL (id e createdAt).\r\n * @param obj\r\n * @returns\r\n */\r\n static isSDLEntity(obj: any): boolean {\r\n return AgroObjectUtils.isNotEmpty(obj) && obj.hasOwnProperty(\"id\") && obj.hasOwnProperty(\"createdAt\");\r\n }\r\n\r\n /**\r\n * Verifica se um objeto é valido, considerando que haja no mínimo 1 propriedade\r\n */\r\n static isValid(obj: any): boolean {\r\n return Object.keys(obj).length > AGRO_NUMBERS.ZERO && AgroObjectUtils.isNotEmpty(obj);\r\n }\r\n\r\n /**\r\n * Verifica se um objeto é inválido, considerando que não haja nenhuma propriedade\r\n */\r\n static isInvalid(obj: any): boolean {\r\n return !AgroObjectUtils.isValid(obj);\r\n }\r\n\r\n /**\r\n * Encontra uma propriedade em um objeto pelo nome e retorna seu valor.\r\n * Se o valor for um objeto, retorna o próprio objeto.\r\n *\r\n * @param obj O objeto onde buscar.\r\n * @param key O nome da propriedade a ser encontrada.\r\n * @param deepSearch Indica se a busca deve ser em profundidade (padrão: true).\r\n * @returns O valor da propriedade, ou undefined se não for encontrada.\r\n */\r\n static findProperty(obj: Record<string, any>, key: string, deepSearch: boolean = true): any {\r\n if (AgroObjectUtils.isInvalid(obj)) {\r\n throw new Error(\"O primeiro argumento deve ser um objeto.\");\r\n }\r\n\r\n if (key in obj) {\r\n return obj[key];\r\n }\r\n\r\n if (deepSearch) {\r\n for (const prop in obj) {\r\n if (obj.hasOwnProperty(prop) && typeof obj[prop] === \"object\") {\r\n const result = AgroObjectUtils.findProperty(obj[prop], key, deepSearch);\r\n if (result !== undefined) {\r\n return result;\r\n }\r\n }\r\n }\r\n }\r\n\r\n return undefined;\r\n }\r\n\r\n /**\r\n * Recebe uma string (JSON) e tenta converter para um objeto.\r\n * @param value\r\n */\r\n static fromString(value: string): any {\r\n return JSON.parse(value) || undefined;\r\n }\r\n}\r\n","import { AbstractControl, FormGroup, ValidatorFn } from '@angular/forms';\r\nimport { DateComparisonType } from '../enums/date-comparison-type.enum';\r\nimport { AGRO_REGEX } from '../common/agro-regex.constant';\r\nimport { NumberComparisonType } from '../enums/number-comparison-type.enum';\r\nimport { ObjectUtils } from '../common/agro-object-utils.class';\r\n\r\nexport class AgroFormValidator {\r\n\r\n /**\r\n * Validator para checar se o campo é um e-mail\r\n *\r\n * @example\r\n * this.myForm = this.fb.group({\r\n * EMAIL_FIELD: ['', [Validators.required, AgroFormValidator.emailValidator]]\r\n * });\r\n * @param control\r\n * @returns\r\n */\r\n public static emailValidator(control: AbstractControl): { [key: string]: any } | null {\r\n if (control.value && !AGRO_REGEX.isEmail.test(control.value)) {\r\n control.setErrors({ emailValidator: true });\r\n return { emailValidator: true };\r\n }\r\n control.setErrors(null);\r\n return null;\r\n }\r\n\r\n\r\n /**\r\n * Aplique esse validador em um campo do tipo Date, para verificar se a data selecionada é maior ou menor que a data atual.\r\n *\r\n * Utilize o parâmetro comparisonType para definir se a data selecionada deve ser maior ou menor que a data atual.\r\n * A validação será através do enum DateComparisonType.\r\n *\r\n * @example\r\n * this.myForm = this.fb.group({\r\n * NOME_CAMPO: ['', [Validators.required, AgroFormValidator.compareDateWithToday(DateComparisonType.greatherThan)]]\r\n * });\r\n * @param comparisonType\r\n * @returns\r\n */\r\n public static compareDateWithToday(comparisonType: DateComparisonType): ValidatorFn {\r\n const compareDate = (control: AbstractControl): { [key: string]: any } | null => {\r\n const methodName = 'dateComparisonToday';\r\n const selectedDate: Date = new Date(control.value);\r\n const currentDate: Date = new Date();\r\n\r\n const conditions = {\r\n [DateComparisonType.greatherThan]: selectedDate <= currentDate,\r\n [DateComparisonType.lessThan]: selectedDate >= currentDate\r\n };\r\n\r\n if (conditions[comparisonType]) {\r\n return { [methodName]: { value: control.value } };\r\n }\r\n\r\n return null;\r\n };\r\n return compareDate;\r\n }\r\n\r\n /**\r\n * Compara dois campos do tipo Date, verificando se o campo A é maior que o campo B. Se A for maior que B, então\r\n * o campo A é invalidado. Caso contrário, o campo A é validado.\r\n *\r\n * Aplique esse campo no FormGroup, passando os nomes dos campos que deseja comparar.\r\n * @example\r\n * this.myForm = this.fb.group({\r\n NOME_CAMPO_dateA: ['', Validators.required],\r\n NOME_CAMPO_dateB: ['', Validators.required]\r\n }, { validator: AgroFormValidator.dateComparisonValidator('NOME_CAMPO_dateA', 'NOME_CAMPO_dateB') });\r\n * @param controlNameA\r\n * @param controlNameB\r\n * @returns\r\n */\r\n public static compareDateWithOtherDateField(controlNameA: string, controlNameB: string): ValidatorFn {\r\n const compareDate = (control: AbstractControl): { [key: string]: any } | null => {\r\n const formGroup = control as FormGroup;\r\n const dateA = formGroup.get(controlNameA)?.value;\r\n const dateB = formGroup.get(controlNameB)?.value;\r\n const methodName = 'compareDateWithOtherDateField';\r\n if (dateA && dateB) {\r\n const dateAObj = new Date(dateA);\r\n const dateBObj = new Date(dateB);\r\n if (dateAObj < dateBObj) {\r\n formGroup.get(controlNameA)?.setErrors({ [methodName]: true });\r\n return { [methodName]: true };\r\n } else if (formGroup.get(controlNameA)?.hasError(methodName)) {\r\n formGroup.get(controlNameA)?.setErrors(null);\r\n }\r\n }\r\n return null;\r\n };\r\n return compareDate;\r\n }\r\n\r\n /**\r\n * Validator para checar se o campo é um número de telefone de acordo com uma máscara informada.\r\n *\r\n * @example\r\n * this.myForm = this.fb.group({\r\n * TELEFONE_FIELD: ['', [Validators.required, AgroFormValidator.phoneValidator('(99) 9999-9999')]]\r\n * });\r\n * @param mask\r\n * @returns\r\n */\r\n public static phoneValidator(mask: string): ValidatorFn {\r\n const phoneControlValidation = (control: AbstractControl): { [key: string]: any } | null => {\r\n const methodName = 'phoneValidator';\r\n const regex = new RegExp(`^${mask.replace(/9/g, '\\\\d').replace(/\\(/g, '\\\\(').replace(/\\)/g, '\\\\)').replace(/-/g, '\\\\-')}$`);\r\n if (control.value && !regex.test(control.value)) {\r\n control.setErrors({ [methodName]: true });\r\n return { [methodName]: true };\r\n }\r\n control.setErrors(null);\r\n return null;\r\n };\r\n return phoneControlValidation;\r\n }\r\n\r\n /**\r\n * Validator para checar se um campo de números é maior ou menor que outro campo.\r\n *\r\n * Aplique esse validator no FormGroup, passando os nomes dos campos que deseja comparar.\r\n * @example\r\n * this.myForm = this.fb.group({\r\n * NUMERO_A: ['', Validators.required],\r\n * NUMERO_B: ['', Validators.required]\r\n * }, { validator: AgroFormValidator.compareNumberFields('NUMERO_A', 'NUMERO_B', NumberComparisonType.EQUALS) });\r\n *\r\n * Neste caso, a verificação será se o NUMERO_A é igual ao NUMERB_B.\r\n * @param controlNameA\r\n * @param controlNameB\r\n * @returns\r\n */\r\n public static compareNumberFields(controlNameA: string, controlNameB: string, comparisonMethod: NumberComparisonType): ValidatorFn {\r\n const compareNumber = (control: AbstractControl): { [key: string]: any } | null => {\r\n const formGroup = control as FormGroup;\r\n const numberA = formGroup.get(controlNameA)?.value;\r\n const numberB = formGroup.get(controlNameB)?.value;\r\n const methodName = 'compareNumberFields';\r\n if (numberA && numberB) {\r\n const errorType = NumberComparisonType[comparisonMethod];\r\n const errorCondition = {\r\n [NumberComparisonType.EQUALS]: numberA !== numberB,\r\n [NumberComparisonType.GREATER_THAN]: numberA <= numberB,\r\n [NumberComparisonType.LESS_THAN]: numberA >= numberB,\r\n [NumberComparisonType.GREATER_THAN_OR_EQUAL]: numberA < numberB,\r\n [NumberComparisonType.LESS_THAN_OR_EQUAL]: numberA > numberB,\r\n [NumberComparisonType.NOT_EQUALS]: numberA === numberB\r\n };\r\n\r\n if (errorCondition[comparisonMethod]) {\r\n const controlA = formGroup.get(controlNameA);\r\n if (controlA) {\r\n controlA.setErrors({ [methodName]: comparisonMethod });\r\n }\r\n return { [methodName]: errorType };\r\n } else if (formGroup.get(controlNameA)?.hasError(methodName)) {\r\n const controlA = formGroup.get(controlNameA);\r\n if (controlA) {\r\n controlA.setErrors(null);\r\n }\r\n }\r\n }\r\n return null;\r\n };\r\n return compareNumber;\r\n }\r\n\r\n /**\r\n * Validator para checar se um valor está entre os demais valores de três formControls.\r\n *\r\n * Aplique esse validator no FormGroup, passando os nomes dos três formControls que deseja comparar.\r\n * @example\r\n * this.myForm = this.fb.group({\r\n * minorFormControl: ['', Validators.required],\r\n * targetFormControl: ['', Validators.required],\r\n * majorFormControl: ['', Validators.required]\r\n * }, { validator: AgroFormValidator.checkValueBetween('minorFormControl', 'targetFormControl', 'majorFormControl') });\r\n *\r\n * Neste caso, a verificação será se o targetFormControl está entre o minorFormControl e o majorFormControl.\r\n * @param minorFormControl\r\n * @param targetFormControl\r\n * @param majorFormControl\r\n * @returns\r\n */\r\n public static checkValueBetween(minorFormControl: string, targetFormControl: string, majorFormControl: string): ValidatorFn {\r\n const checkValue = (control: AbstractControl): { [key: string]: any } | null => {\r\n const formGroup = control as FormGroup;\r\n const valueA = formGroup.get(minorFormControl)?.value;\r\n const valueB = formGroup.get(targetFormControl)?.value;\r\n const valueC = formGroup.get(majorFormControl)?.value;\r\n const methodName = 'checkValueBetween';\r\n if (valueA && valueB && valueC) {\r\n if (valueB < valueA || valueB > valueC) {\r\n const targetControl = formGroup.get(targetFormControl);\r\n if (targetControl) {\r\n targetControl.setErrors({ [methodName]: true });\r\n }\r\n return { [methodName]: true };\r\n } else if (formGroup.get(targetFormControl)?.hasError(methodName)) {\r\n const targetControl = formGroup.get(targetFormControl);\r\n if (targetControl) {\r\n targetControl.setErrors(null);\r\n }\r\n }\r\n }\r\n return null;\r\n };\r\n return checkValue;\r\n }\r\n\r\n /**\r\n * Validator para checar se o campo é um objeto e se possui uma propriedade específica.\r\n *\r\n * @example\r\n * this.myForm = this.fb.group({\r\n * OBJETO_FIELD: ['', [Validators.required, AgroFormValidator.objectPropertyValidator('propriedade')]]\r\n * });\r\n * @param propertyName\r\n * @returns\r\n */\r\n public static objectPropertyValidator(propertyName: string): ValidatorFn {\r\n const objectProperty = (control: AbstractControl): { [key: string]: any } | null => {\r\n const methodName = 'objectProperty';\r\n if (ObjectUtils.isObject(control.value) && ObjectUtils.containsProperty(control.value, propertyName)) {\r\n control.setErrors(null);\r\n return null;\r\n }\r\n control.setErrors({ [methodName]: true });\r\n return { [methodName]: true };\r\n };\r\n return objectProperty;\r\n }\r\n\r\n\r\n}","\r\nexport {AgroCookieUtils as ACU, AgroCookieUtils as CookieUtils};\r\n\r\nexport class AgroCookieUtils {\r\n\r\n public static getCookie(name: string, parseURIValue = false): string | undefined {\r\n const cookieValue = document.cookie.split(';')\r\n .map(cookie => cookie.trim())\r\n .find(cookie => cookie.startsWith(name));\r\n let result = cookieValue?.split('=')[1];\r\n\r\n if (parseURIValue && result) {\r\n result = decodeURIComponent(result);\r\n }\r\n return result;\r\n\r\n }\r\n\r\n public static parseCookieToObject(cookieString: string, parseURIString = false): { [key: string]: string } {\r\n const cookieObject: { [key: string]: string } = {};\r\n if (parseURIString) {\r\n cookieString = decodeURIComponent(cookieString);\r\n }\r\n cookieString.split(';').forEach(cookie => {\r\n const [key, value] = cookie.split('=').map(c => c.trim());\r\n cookieObject[key] = value;\r\n });\r\n return cookieObject;\r\n }\r\n\r\n setCookie(name: string, value: string, days: number) {\r\n const date = new Date();\r\n date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));\r\n const expires = 'expires=' + date.toUTCString();\r\n document.cookie = name + '=' + value + ';' + expires + ';path=/';\r\n }\r\n\r\n\r\n}\r\n","import { AGRO_NUMBERS } from '../enums';\r\n\r\nexport class AgroDateUtils {\r\n /**\r\n * Verifica se uma data é nula ou indefinida.\r\n * @param date - A data a ser verificada.\r\n * @returns True se a data for nula ou indefinida, false caso contrário.\r\n */\r\n public static isNullOrUndefined(date: Date | null | undefined): boolean {\r\n return date === null || date === undefined;\r\n }\r\n\r\n /**\r\n * Verifica se uma data não é nula e não é indefinida.\r\n * @param date - A data a ser verificada.\r\n * @returns True se a data não for nula e não for indefinida, false caso contrário.\r\n */\r\n public static isNotNullOrUndefined(date: Date | null | undefined): boolean {\r\n return !AgroDateUtils.isNullOrUndefined(date);\r\n }\r\n\r\n /**\r\n * Verifica se uma data é válida.\r\n * @param date - A data a ser verificada.\r\n * @returns True se a data for válida, false caso contrário.\r\n */\r\n public static isValid(date: string): boolean {\r\n return !isNaN(Date.parse(date));\r\n }\r\n\r\n /**\r\n * Verifica se uma data é inválida.\r\n * @param date - A data a ser verificada.\r\n * @returns True se a data for inválida, false caso contrário.\r\n */\r\n public static isInvalid(date: string): boolean {\r\n return !AgroDateUtils.isValid(date);\r\n }\r\n\r\n /**\r\n * Verifica se uma data é antes de outra data.\r\n * @param date - A data a ser verificada.\r\n * @param otherDate - A outra data a ser comparada.\r\n * @returns True se a data for antes da outra data, false caso contrário.\r\n */\r\n public static isBefore(date: Date, otherDate: Date): boolean {\r\n return date < otherDate;\r\n }\r\n\r\n /**\r\n * Verifica se uma data é depois de outra data.\r\n * @param date - A data a ser verificada.\r\n * @param otherDate - A outra data a ser comparada.\r\n * @returns True se a data for depois da outra data, false caso contrário.\r\n */\r\n public static isAfter(date: Date, otherDate: Date): boolean {\r\n return date > otherDate;\r\n }\r\n\r\n /**\r\n * Verifica se uma data é igual a outra data.\r\n * @param date - A data a ser verificada.\r\n * @param otherDate - A outra data a ser comparada.\r\n * @returns True se a data for igual a outra data, false caso contrário.\r\n */\r\n public static isEqual(date: Date, otherDate: Date): boolean {\r\n return date.getTime() === otherDate.getTime();\r\n }\r\n\r\n /**\r\n * Verifica se uma data é menor ou igual a outra data.\r\n * @param date - A data a ser verificada.\r\n * @param otherDate - A outra data a ser comparada.\r\n * @returns True se a data for menor ou igual a outra data, false caso contrário.\r\n */\r\n public static isLessOrEqual(date: Date, otherDate: Date): boolean {\r\n return date <= otherDate;\r\n }\r\n\r\n /**\r\n * Verifica se uma data é maior ou igual a outra data.\r\n * @param date - A data a ser verificada.\r\n * @param otherDate - A outra data a ser comparada.\r\n * @returns True se a data for maior ou igual a outra data, false caso contrário.\r\n */\r\n public static isGreaterOrEqual(date: Date, otherDate: Date): boolean {\r\n return date >= otherDate;\r\n }\r\n\r\n /**\r\n * Verifica se uma data é menor que outra data.\r\n * @param date - A data a ser verificada.\r\n * @param otherDate - A outra data a ser comparada.\r\n * @returns True se a data for menor que outra data, false caso contrário.\r\n */\r\n public static isLess(date: Date, otherDate: Date): boolean {\r\n return date < otherDate;\r\n }\r\n\r\n /**\r\n * Verifica se uma data é maior que outra data.\r\n * @param date - A data a ser verificada.\r\n * @param otherDate - A outra data a ser comparada.\r\n * @returns True se a data for maior que outra data, false caso contrário.\r\n */\r\n public static isGreater(date: Date, otherDate: Date): boolean {\r\n return date > otherDate;\r\n }\r\n\r\n /**\r\n * Retorna a data formatada conforme o formato especificado.\r\n * @param date\r\n * @param format\r\n * @returns\r\n */\r\n static formatDate(date: Date, format: string = 'DD/MM/YYYY'): string {\r\n const moment = require('moment');\r\n return moment(date).utc().format(format);\r\n }\r\n\r\n /**\r\n * Retorna uma string com o número informado adicionando um 0 à esquerda, caso o número seja menor que 10.\r\n * @param value\r\n * @returns\r\n */\r\n static padZero(value: number): string {\r\n return value < AGRO_NUMBERS.TEN ? '0' + value : value.toString();\r\n }\r\n}","import { AGRO_NUMBERS } from \"../enums\";\r\nimport { AGRO_REGEX } from \"./agro-regex.constant\";\r\n\r\nexport { AgroStringUtils as StringUtils };\r\n\r\nexport type NullableString = string | null | undefined;\r\n/**\r\n * Classe utilitária para operações de string.\r\n */\r\nexport class AgroStringUtils {\r\n /**\r\n * Verifica se uma string está vazia ou consiste apenas de caracteres de espaço em branco.\r\n * @param str - A string a ser verificada.\r\n * @returns True se a string estiver vazia ou consistir apenas de caracteres de espaço em branco, false caso contrário.\r\n */\r\n static isEmpty(str: NullableString): boolean {\r\n return !str || str.trim()?.length === AGRO_NUMBERS.ZERO;\r\n }\r\n\r\n /**\r\n * Verifica se uma string não está vazia e não consiste apenas de caracteres de espaço em branco.\r\n * @param str - A string a ser verificada.\r\n * @returns True se a string não estiver vazia e não consistir apenas de caracteres de espaço em branco, false caso contrário.\r\n */\r\n static isNotEmpty(str: NullableString): boolean {\r\n return !AgroStringUtils.isEmpty(str);\r\n }\r\n\r\n /**\r\n * Verifica se uma string está vazia, consiste apenas de caracteres de espaço em branco ou é nula.\r\n * @param str - A string a ser verificada.\r\n * @returns True se a string estiver vazia, consistir apenas de caracteres de espaço em branco ou for nula, false caso contrário.\r\n */\r\n static isBlank(str: NullableString): boolean {\r\n return !str || AGRO_REGEX.onlyBlankSpaces.test(str);\r\n }\r\n\r\n /**\r\n * Verifica se uma string não está vazia, não consiste apenas de caracteres de espaço em branco e não é nula.\r\n * @param str - A string a ser verificada.\r\n * @returns True se a string não estiver vazia, não consistir apenas de caracteres de espaço em branco e não for nula, false caso contrário.\r\n */\r\n static isNotBlank(str: NullableString): boolean {\r\n return !AgroStringUtils.isBlank(str);\r\n }\r\n\r\n /**\r\n * Remove os espaços em branco de uma string e retorna null se a string resultante estiver vazia, caso contrário retorna a string sem espaços em branco.\r\n * @param str - A string a ser removidos os espaços em branco.\r\n * @returns A string sem espaços em branco ou null se a string resultante estiver vazia.\r\n */\r\n static trimToNull(str: NullableString): string | null {\r\n if (!str) return null;\r\n const trimmed = str.trim();\r\n return trimmed === \"\" ? null : trimmed;\r\n }\r\n\r\n /**\r\n * Verifica se duas strings são iguais, ignorando maiúsculas e minúsculas.\r\n * @param str1 - A primeira string a ser comparada.\r\n * @param str2 - A segunda string a ser comparada.\r\n * @returns True se as strings forem iguais, ignorando maiúsculas e minúsculas, false caso contrário.\r\n */\r\n static equalsIgnoreCase(str1: NullableString, str2: NullableString): boolean {\r\n return str1?.toLowerCase() === str2?.toLowerCase();\r\n }\r\n\r\n /**\r\n * Verifica se duas strings são iguais.\r\n * @param str1\r\n * @param str2\r\n * @returns\r\n */\r\n static equals(str1: NullableString, str2: NullableString): boolean {\r\n return str1 === str2;\r\n }\r\n\r\n /**\r\n * Inverte os caracteres de uma string.\r\n * @param str - A string a ser invertida.\r\n * @returns A string invertida.\r\n */\r\n static reverse(str: string): string {\r\n return str.split(\"\").reverse().join(\"\");\r\n }\r\n\r\n /**\r\n * Verifica se a string é um e-mail.\r\n * @param str - A string a ser testada\r\n * @returns - True se a string for um e-mail, false caso contrário.\r\n */\r\n static isEmail(str: string): boolean {\r\n return AGRO_REGEX.isEmail.test(str);\r\n }\r\n\r\n /**\r\n * Verifica se a string é um número inteiro positivo.\r\n * @param str - A string a ser testada\r\n * @returns - True se a string for um número inteiro positivo, false caso contrário.\r\n */\r\n static isPositiveInteger(str: string): boolean {\r\n return AGRO_REGEX.positiveInteger.test(str);\r\n }\r\n\r\n /**\r\n * Verifica se a string é um número decimal positivo.\r\n * @param str - A string a ser testada\r\n * @returns - True se a string for um número decimal positivo, false caso contrário.\r\n */\r\n static isPositiveDecimal(str: string): boolean {\r\n return AGRO_REGEX.positiveDecimal.test(str);\r\n }\r\n\r\n /**\r\n * Verifica se a string é um CEP (Código Postal).\r\n * @param str - A string a ser testada\r\n * @returns - True se a string for um CEP, false caso contrário.\r\n */\r\n static isZipCode(str: string): boolean {\r\n return AGRO_REGEX.zipCode.test(str);\r\n }\r\n\r\n /**\r\n * Verifica se a string é um UUID.\r\n * @param str - A string a ser testada\r\n * @returns - True se a string for um UUID, false caso contrário.\r\n */\r\n static isUUID(str: string): boolean {\r\n return AGRO_REGEX.isUUID.test(str);\r\n }\r\n\r\n /**\r\n * Verifica se a string é um número.\r\n * @param str - A string a ser testada\r\n * @returns - True se a string for um número, false caso contrário.\r\n */\r\n static isNumber(str: string): boolean {\r\n return AGRO_REGEX.isNumber.test(str);\r\n }\r\n\r\n /**\r\n * Retorna a diferença entre duas strings.\r\n * @param str1\r\n * @param str2\r\n * @returns\r\n */\r\n static difference(str1: string, str2: string): number {\r\n const len1 = str1.length;\r\n const len2 = str2.length;\r\n let diff = Math.abs(len1 - len2);\r\n for (let i = AGRO_NUMBERS.ZERO; i < Math.min(len1, len2); i++) {\r\n if (str1[i] !== str2[i]) {\r\n diff++;\r\n }\r\n }\r\n return diff;\r\n }\r\n\r\n /**\r\n * Retorna se a string termina com a string fornecida.\r\n * @param str1\r\n * @param str2\r\n * @returns\r\n */\r\n static endsWith(str1: string, str2: string): boolean {\r\n return str1.endsWith(str2);\r\n }\r\n\r\n /**\r\n * Retorna se a string começa com a string fornecida.\r\n * @param str1\r\n * @param str2\r\n * @returns\r\n */\r\n static startsWith(str1: string, str2: string): boolean {\r\n return str1.startsWith(str2);\r\n }\r\n\r\n /**\r\n * Retorna se a string contém a string fornecida.\r\n * @param str1\r\n * @param str2\r\n * @returns\r\n */\r\n static contains(str1: string, str2: string): boolean {\r\n return str1.includes(str2);\r\n }\r\n\r\n /**\r\n * Retorna se a string começa com a string fornecida ignorando maiúsculas e minúsculas.\r\n * @param str1\r\n * @param str2\r\n * @returns\r\n */\r\n static startsWithIgnoreCase(str1: string, str2: string): boolean {\r\n return str1.toLowerCase().startsWith(str2.toLowerCase());\r\n }\r\n\r\n /**\r\n * Retorna se a string termina com a string fornecida ignorando maiúsculas e minúsculas.\r\n * @param str1\r\n * @param str2\r\n * @returns\r\n */\r\n static endsWithIgnoreCase(str1: string, str2: string): boolean {\r\n return str1.toLowerCase().endsWith(str2.toLowerCase());\r\n }\r\n\r\n /**\r\n * Converte uma string para letras maiúsculas.\r\n * @param str - A string a ser convertida.\r\n * @returns A string convertida para letras maiúsculas.\r\n */\r\n static toUpperCase(str: string): string {\r\n return str.toUpperCase();\r\n }\r\n\r\n /**\r\n * Converte uma string para letras minúsculas.\r\n * @param str - A string a ser convertida.\r\n * @returns A string convertida para letras minúsculas.\r\n */\r\n static toLowerCase(str: string): string {\r\n return str.toLowerCase();\r\n }\r\n\r\n /**\r\n * Inverte o caso das letras em uma string.\r\n * @param str - A string a ser convertida.\r\n * @returns A string com o caso das letras invertido.\r\n */\r\n static swapCase(str: string): string {\r\n let swapped = \"\";\r\n for (let i = AGRO_NUMBERS.ZERO; i < str.length; i++) {\r\n const char = str[i];\r\n if (char === char.toUpperCase()) {\r\n swapped += char.toLowerCase();\r\n } else {\r\n swapped += char.toUpperCase();\r\n }\r\n }\r\n return swapped;\r\n }\r\n\r\n /**\r\n * Converte a primeira letra de uma string para maiúscula.\r\n * @param str - A string a ser convertida.\r\n * @returns A string com a primeira letra em maiúscula.\r\n */\r\n static capitalize(str: string): string {\r\n return str.charAt(AGRO_NUMBERS.ZERO).toUpperCase() + str.slice(1);\r\n }\r\n\r\n /**\r\n * Converte a primeira letra de uma string para minúscula.\r\n * @param str - A string a ser convertida.\r\n * @returns A string com a primeira letra em minúscula.\r\n */\r\n static uncapitalize(str: string): string {\r\n return str.charAt(AGRO_NUMBERS.ZERO).toLowerCase() + str.slice(1);\r\n }\r\n\r\n /**\r\n * Conta o número de ocorrências de uma substring em uma string.\r\n * @param str - A string onde a contagem será realizada.\r\n * @param substring - A substring a ser contada.\r\n * @returns O número de ocorrências da substring na string.\r\n */\r\n static countMatches(str: string, substring: string): number {\r\n const regex = new RegExp(substring, \"g\");\r\n const matches = [];\r\n let match;\r\n while ((match = regex.exec(str)) !== null) {\r\n matches.push(match[0]);\r\n }\r\n return matches ? matches.length : AGRO_NUMBERS.ZERO;\r\n }\r\n\r\n static validateCPF(cpf: string): boolean {\r\n // Remover caracteres não numéricos\r\n cpf = cpf.replace(/\\D/g, \"\");\r\n\r\n // Verificar se o CPF tem 11 dígitos\r\n if (cpf.length !== AGRO_NUMBERS.ELEVEN) {\r\n return false;\r\n }\r\n\r\n // Verificar se todos os dígitos são iguais (caso contrário, é um sinal de CPF inválido)\r\n if (/^(\\d)\\1{10}$/.test(cpf)) {\r\n return false;\r\n }\r\n\r\n // Calcular o primeiro dígito verificador\r\n let sum = AGRO_NUMBERS.ZERO;\r\n let remainder: number;\r\n for (let i = AGRO_NUMBERS.ONE; i <= AGRO_NUMBERS.NINE; i++) {\r\n sum += parseInt(cpf[i - AGRO_NUMBERS.ONE]) * (AGRO_NUMBERS.ELEVEN - i);\r\n }\r\n remainder = sum % AGRO_NUMBERS.ELEVEN;\r\n if (remainder === AGRO_NUMBERS.TEN || remainder === AGRO_NUMBERS.ELEVEN) {\r\n remainder = AGRO_NUMBERS.ZERO;\r\n }\r\n if (remainder !== parseInt(cpf[AGRO_NUMBERS.NINE])) {\r\n return false;\r\n }\r\n\r\n // Calcular o segundo dígito verificador\r\n sum = AGRO_NUMBERS.ZERO;\r\n for (let i = AGRO_NUMBERS.ONE; i <= AGRO_NUMBERS.TEN; i++) {\r\n sum += parseInt(cpf[i - AGRO_NUMBERS.ONE]) * (AGRO_NUMBERS.TWELVE - i);\r\n }\r\n remainder = sum % AGRO_NUMBERS.ELEVEN;\r\n if (remainder === AGRO_NUMBERS.TEN || remainder === AGRO_NUMBERS.ELEVEN) {\r\n remainder = AGRO_NUMBERS.ZERO;\r\n }\r\n if (remainder !== parseInt(cpf[AGRO_NUMBERS.TEN])) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n\r\n static validateCNPJ(cnpj: string): boolean {\r\n // Remove todos os caracteres não numéricos\r\n cnpj = cnpj.replace(/\\D/g, \"\");\r\n\r\n // Verifica se tem 14 dígitos\r\n if (cnpj.length !== 14) return false;\r\n\r\n // Verifica se o CNPJ é uma sequência repetida (ex: 11111111111111, 22222222222222, etc.)\r\n if (/^(\\d)\\1{13}$/.test(cnpj)) return false;\r\n\r\n // Cálculo do primeiro dígito verificador\r\n let soma = 0;\r\n let pesos1 = [5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2];\r\n for (let i = 0; i < 12; i++) {\r\n soma += parseInt(cnpj.charAt(i)) * pesos1[i];\r\n }\r\n let resto = soma % 11;\r\n let digito1 = resto < 2 ? 0 : 11 - resto;\r\n\r\n // Cálculo do segundo dígito verificador\r\n soma = 0;\r\n let pesos2 = [6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2];\r\n for (let i = 0; i < 13; i++) {\r\n soma += parseInt(cnpj.charAt(i)) * pesos2[i];\r\n }\r\n resto = soma % 11;\r\n let digito2 = resto < 2 ? 0 : 11 - resto;\r\n\r\n // Verifica se os dígitos verificadores são válidos\r\n return parseInt(cnpj.charAt(12)) === digito1 && parseInt(cnpj.charAt(13)) === digito2;\r\n }\r\n\r\n /**\r\n * Método para aplicar uma máscara em uma string. Considere a máscara com valores 9 para aplicação\r\n * @example AgroStringUtils.applyMask('12345678901', '999.999.999-99') => '123.456.789-01'\r\n * @param value\r\n * @param mask\r\n * @returns\r\n */\r\n static applyMask(value: string, mask: string): string {\r\n const valueChars = value.toString().split(\"\");\r\n const maskChars = mask.split(\"\");\r\n let maskedValue = \"\";\r\n\r\n let j = 0;\r\n for (const maskChar of maskChars) {\r\n if (j >= valueChars.length) {\r\n break;\r\n }\r\n if (maskChar === \"9\") {\r\n maskedValue += valueChars[j++];\r\n } else {\r\n maskedValue += maskChar;\r\n }\r\n }\r\n\r\n return maskedValue;\r\n }\r\n\r\n /**\r\n * Verifica se uma string é válida.\r\n * @param str - A string a ser verificada.\r\n * @returns True se a string for válida, false caso contrário.\r\n */\r\n static isValid(str: NullableString): boolean {\r\n if (typeof str === \"undefined\" || str === null) {\r\n return false;\r\n }\r\n\r\n if (AgroStringUtils.isNotEmpty(str)) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n /**\r\n * Verifica se uma string é inválida.\r\n * @param str - A string a ser verificada.\r\n * @returns True se a string for inválida, false caso contrário.\r\n */\r\n static isInvalid(str: NullableString): boolean {\r\n return !AgroStringUtils.isValid(str);\r\n }\r\n}\r\n","import { AgroCookieUtils } from \"./agro-cookie-utils.class\";\r\nimport { AgroObjectUtils } from \"./agro-object-utils.class\";\r\nimport { StringUtils } from \"./agro-string-utils.class\";\r\n\r\nexport {AgroPlatformUtils as APU, AgroPlatformUtils as PlatformUtils};\r\n\r\nexport class AgroPlatformUtils {\r\n\r\n /**\r\n * Retorna o tenant atual\r\n * Caso contrário, retorna uma instância de Error\r\n * @returns\r\n */\r\n static getCurrentTenant(): string {\r\n const cookie = AgroCookieUtils.getCookie('com.senior.token', true);\r\n if (cookie) {\r\n const str = AgroObjectUtils.fromString(cookie)?.tenantName;\r\n if (str) {\r\n return str;\r\n }\r\n }\r\n throw new Error('Cookie: \"com.senior.token\" não encontrado.');\r\n }\r\n\r\n /**\r\n * Retorna o usuário logado\r\n * Caso contrário, retorna uma instância de Error\r\n * @returns string || instanceOf Error\r\n */\r\n static getCurrentUserName(): string | null {\r\n const cookie = AgroCookieUtils.getCookie('com.senior.token');\r\n if (cookie) {\r\n const str = AgroCookieUtils.parseCookieToObject(cookie)?.fullName;\r\n if (str) {\r\n return str;\r\n }\r\n }\r\n console.error('Cookie: \"com.senior.token\" não encontrado.');\r\n return null;\r\n }\r\n\r\n /**\r\n * Retorna o e-mail do usuário logado\r\n * Caso contrário, retorna uma instância de Error\r\n * @returns string\r\n */\r\n static getCurrentUserEmail(): string | null {\r\n const cookie = AgroCookieUtils.getCookie('com.senior.token');\r\n if (cookie) {\r\n const str = AgroCookieUtils.parseCookieToObject(cookie)?.email;\r\n if (str) {\r\n return str;\r\n }\r\n }\r\n console.error('Cookie: \"com.senior.token\" não encontrado.');\r\n return null;\r\n }\r\n\r\n /**\r\n * Retorna uma string com a baseURL atual\r\n * Caso contrário, retorna uma instância de Error\r\n * @example \"https://cloud-leaf.senior.com.br\" || \"https://platform.senior.com.br\"\r\n */\r\n static getBaseURL(): string {\r\n const cookie = AgroCookieUtils.getCookie('com.senior.base.url');\r\n if (cookie) {\r\n return cookie;\r\n }\r\n throw new Error('Cookie: \"com.senior.base.url\" não encontrado.');\r\n }\r\n\r\n /**\r\n * Retorna uma string com a URL dos serviços\r\n * Caso contrário, retorna uma instância de Error\r\n * @example \"https://cloud-leaf.senior.com.br/t/senior.com.br/bridge/1.0/\"\r\n */\r\n static getServicesURL(): string {\r\n const cookie = AgroCookieUtils.getCookie('com.senior.services.url');\r\n if (StringUtils.isNotEmpty(cookie)) {\r\n return cookie as string;\r\n }\r\n throw new Error('Cookie: \"com.senior.services.url\" não encontrado.');\r\n }\r\n\r\n /**\r\n * Retorna uma string com o token de acesso atual\r\n * Caso contrário, retorna uma instância de Error\r\n */\r\n static getCurrentAccessToken(): string | null {\r\n const cookie = AgroCookieUtils.getCookie('com.senior.token');\r\n if (cookie) {\r\n const str = AgroCookieUtils.parseCookieToObject(cookie)?.accessToken;\r\n if (str) {\r\n return str;\r\n }\r\n }\r\n console.error('Cookie: \"com.senior.token\" não encontrado.');\r\n return null;\r\n }\r\n\r\n}\r\n","/**\r\n * Classe de utilitários para operações com números.\r\n */\r\nexport class AgroNumberUtils {\r\n /**\r\n * Verifica se um número é nulo ou indefinido.\r\n * @param num - O número a ser verificado.\r\n * @returns True se o número for nulo ou indefinido, false caso contrário.\r\n */\r\n static isNullOrUndefined(num: any): boolean {\r\n return num === null || num === undefined;\r\n }\r\n\r\n /**\r\n * Verifica se um número não é nulo e não é indefinido.\r\n * @param num - O número a ser verificado.\r\n * @returns True se o número não for nulo e não for indefinido, false caso contrário.\r\n */\r\n static isNotNullOrUndefined(num: any): boolean {\r\n return !AgroNumberUtils.isNullOrUndefined(num);\r\n }\r\n\r\n /**\r\n * Verifica se um número é par.\r\n *\r\n * @param value O número a ser verificado.\r\n * @returns True se for par, false caso contrário.\r\n */\r\n static isEven(value: number): boolean {\r\n return value % 2 === 0;\r\n }\r\n\r\n /**\r\n * Verifica se um número é ímpar.\r\n *\r\n * @param value O número a ser verificado.\r\n * @returns True se for ímpar, false caso contrário.\r\n */\r\n static isOdd(value: number): boolean {\r\n return value % 2 !== 0;\r\n }\r\n\r\n /**\r\n * Calcula a porcentagem de um valor em relação a um total.\r\n *\r\n * @param partial O valor parcial.\r\n * @param total O valor total.\r\n * @returns A porcentagem calculada.\r\n */\r\n static percentage(partial: number, total: number): number {\r\n if (total === 0) throw new Error(\"O total não pode ser zero.\");\r\n return (partial / total) * 100;\r\n }\r\n\r\n /**\r\n * Formata um número para o formato monetário.\r\n *\r\n * @param value O número a ser formatado.\r\n * @param currency O símbolo da moeda (padrão: \"BRL\").\r\n * @param locale O código da localidade (padrão: \"pt-BR\").\r\n * @returns Uma string no formato monetário.\r\n */\r\n static toCurrency(value: number, currency: string = \"BRL\", locale: string = \"pt-BR\"): string {\r\n return new Intl.NumberFormat(locale, {\r\n style: \"currency\",\r\n currency: currency,\r\n }).format(value);\r\n }\r\n\r\n /**\r\n * Gera um número aleatório no intervalo especificado.\r\n *\r\n * @param min O valor mínimo (inclusivo).\r\n * @param max O valor máximo (exclusivo).\r\n * @returns Um número aleatório no intervalo.\r\n */\r\n static randomInRange(min: number, max: number): number {\r\n return Math.random() * (max - min) + min;\r\n }\r\n\r\n /**\r\n * Verifica se um número é primo.\r\n *\r\n * @param value O número a ser verificado.\r\n * @returns True se for primo, false caso contrário.\r\n */\r\n static isPrime(value: number): boolean {\r\n if (value <= 1) return false;\r\n for (let i = 2; i <= Math.sqrt(value); i++) {\r\n if (value % i === 0) return false;\r\n }\r\n return true;\r\n }\r\n\r\n /**\r\n * Arredonda um número para `n` casas decimais.\r\n *\r\n * @param value O número a ser arredondado.\r\n * @param decimals O número de casas decimais (padrão: 2).\r\n * @returns O número arredondado.\r\n */\r\n static roundTo(value: number, decimals: number = 2): number {\r\n const factor = Math.pow(10, decimals);\r\n return Math.round(value * factor) / factor;\r\n }\r\n}\r\n","export class Colors {\r\n static readonly BASE = {\r\n LIME: \"#ADE500\",\r\n LIME_RGB: \"173, 229, 0\",\r\n HIPPIE_BLUE: \"#67ACBC\",\r\n HIPPIE_BLUE_RGB: \"103, 172, 188\",\r\n TEAL: \"#008080\",\r\n TEAL_RGB: \"0, 128, 128\",\r\n TARAWERA: \"#063951\",\r\n TARAWERA_RGB: \"6, 57, 81\",\r\n CLAIRVOYANT: \"#400753\",\r\n CLAIRVOYANT_RGB: \"64, 7, 83\",\r\n COCOA_BEAN: \"#50201F\",\r\n COCOA_BEAN_RGB: \"80, 32, 31\",\r\n SUNSET_ORANGE: \"#F45B5B\",\r\n SUNSET_ORANGE_RGB: \"244, 91, 91\",\r\n BUTTERCUP: \"#F5A319\",\r\n BUTTERCUP_RGB: \"245, 163, 25\"\r\n };\r\n\r\n static readonly GRAY_SCALE = {\r\n BLACK: \"#333333\",\r\n BLACK_RGB: \"51, 51, 51\",\r\n DISABLED_EDITION: \"#697882\",\r\n DISABLED_EDITION_RGB: \"105, 120, 130\",\r\n SECONDARY: \"#999999\",\r\n SECONDARY_RGB: \"153, 153, 153\",\r\n PRIMAEY_DISABLED: \"#CCCCCC\",\r\n PRIMAEY_DISABLED_RGB: \"204, 204, 204\",\r\n SECONDARY_DISABLED: \"#D8D8D8\",\r\n SECONDARY_DISABLED_RGB: \"216, 216, 216\",\r\n BLACK_HAZE: \"#E5EAEA\",\r\n BLACK_HAZE_RGB: \"229, 234, 234\",\r\n WHITE: \"#FFFFFF\",\r\n WHITE_RGB: \"255, 255, 255\"\r\n };\r\n\r\n static readonly CRITICAL = {\r\n RED: \"#C13018\",\r\n RED_RGB: \"193, 48, 24\",\r\n ORANGE: \"#F8931F\",\r\n ORANGE_RGB: \"248, 147, 31\",\r\n YELLOW: \"#FCBF10\",\r\n YELLOW_RGB: \"252, 191, 16\",\r\n GREEN: \"#0C9348\",\r\n GREEN_RGB: \"12, 147, 72\",\r\n BLUE: \"#428BCA\",\r\n BLUE_RGB: \"66, 139, 202\"\r\n };\r\n\r\n static readonly HIPPIE_BLUE = {\r\n HEX_900: \"#1D2F34\",\r\n RGB_900: \"rgb(29, 47, 52)\",\r\n HEX_700: \"#426E78\",\r\n RGB_700: \"rgb(66, 110, 120)\",\r\n HEX_500: \"#67ACBC\",\r\n RGB_500: \"rgb(103, 172, 188)\",\r\n HEX_300: \"#9ECAD4\",\r\n RGB_300: \"rgb(158, 202, 212)\",\r\n HEX_100: \"#D5E8EC\",\r\n RGB_100: \"rgb(213, 232, 236)\",\r\n HEX_50: \"#F1F7F8\",\r\n RGB_50: \"rgb(241, 247, 248)\"\r\n };\r\n\r\n static readonly TEAL = {\r\n HEX_900: \"#0C2827\",\r\n RGB_900: \"rgb(12, 40, 39)\",\r\n HEX_700: \"#005050\",\r\n RGB_700: \"rgb(0, 80, 80)\",\r\n HEX_500: \"#008080\",\r\n RGB_500: \"rgb(0, 128, 128)\",\r\n HEX_300: \"#4DA6A6\",\r\n RGB_300: \"rgb(77, 166, 166)\",\r\n HEX_100: \"#B3D9D9\",\r\n RGB_100: \"rgb(179, 217, 217)\",\r\n HEX_50: \"#E0F0F0\",\r\n RGB_50: \"rgb(224, 240, 240)\"\r\n };\r\n}\r\n","import { AgroStringUtils } from \"./agro-string-utils.class\";\r\n\r\nexport class AgroNameUtils {\r\n /**\r\n * Abrevia o último sobrenome, mantendo o primeiro nome completo.\r\n * @param fullName valor completo do nome (Ex: Tiago Batista Corrêa)\r\n * @returns nome abreviado (Ex: Tiago C.)\r\n */\r\n static abbreviateName(fullName: string): string | null {\r\n if (AgroStringUtils.isInvalid(fullName)) {\r\n return null;\r\n }\r\n\r\n const parts = fullName.trim().split(/\\s+/);\r\n\r\n // Verifica se há pelo menos duas partes no nome\r\n if (parts.length < 2) {\r\n return fullName; // Retorna o nome original se não puder ser abreviado\r\n }\r\n\r\n const firstName = parts[0]; // Primeiro nome completo\r\n const lastName = parts[parts.length - 1]; // Último sobrenome\r\n\r\n // Retorna o nome abreviado\r\n return `${firstName} ${lastName.charAt(0)}.`;\r\n }\r\n\r\n /**\r\n * Abrevia todos os sobrenomes, mantendo o primeiro nome completo.\r\n *\r\n * @param fullName O nome completo. (Ex: Tiago Batista Corrêa)\r\n * @returns O nome com os sobrenomes abreviados. (Ex: Tiago B. C.)\r\n */\r\n static abbreviateAllLastNames(fullName: string): string | null {\r\n if (AgroStringUtils.isInvalid(fullName)) {\r\n return null;\r\n }\r\n\r\n const parts = fullName.trim().split(/\\s+/);\r\n if (parts.length < 2) return fullName;\r\n\r\n const firstName = parts[0];\r\n const abbreviatedLastNames = parts\r\n .slice(1)\r\n .map((name) => `${name.charAt(0)}.`)\r\n .join(\" \");\r\n\r\n return `${firstName} ${abbreviatedLastNames}`;\r\n }\r\n\r\n /**\r\n * Retorna as iniciais do nome completo.\r\n *\r\n * @param fullName O nome completo. (Ex: Tiago Batista Corrêa)\r\n * @returns Uma string contendo as iniciais do nome. (Ex: TBC)\r\n */\r\n static getInitials(fullName: string): string | null {\r\n if (AgroStringUtils.isInvalid(fullName)) {\r\n return null;\r\n }\r\n\r\n return fullName\r\n .trim()\r\n .split(/\\s+/)\r\n .map((name) => name.charAt(0).toUpperCase())\r\n .join(\"\");\r\n }\r\n}\r\n","/**\r\n * Classe com funções úteis para Arrays.\r\n */\r\nexport class AgroArrayUtils {\r\n /**\r\n * Verifica se o valor informado é um array.\r\n */\r\n public static isArray(value: any): boolean {\r\n return Array.isArray(value);\r\n }\r\n\r\n /**\r\n * Remove um item de um array.\r\n * @param array Array de onde o item será removido.\r\n * @param item Item a ser removido.\r\n */\r\n public static removeItem(array: any[], item: any): void {\r\n const index = array.indexOf(item);\r\n if (index !== -1) {\r\n array.splice(index, 1);\r\n }\r\n }\r\n\r\n /**\r\n * Remove um item de um array por índice.\r\n * @param array Array de onde o item será removido.\r\n * @param index Índice do item a ser removido.\r\n */\r\n public static removeItemByIndex(array: any[], index: number): void {\r\n array.splice(index, 1);\r\n }\r\n\r\n /**\r\n * Remove todos os itens de um array.\r\n * @param array Array de onde os itens serão removidos.\r\n */\r\n public static removeAllItems(array: any[]): void {\r\n array.splice(0, array.length);\r\n }\r\n\r\n /**\r\n * Verifica se um array é vazio.\r\n * @param array Array a ser verificado.\r\n */\r\n public static isEmpty(array: any[]): boolean {\r\n return AgroArrayUtils.isArray(array) && array.length === 0;\r\n }\r\n\r\n /**\r\n * Localiza um item em um array de objetos de acordo com a propriedade e valor informados.\r\n */\r\n public static findItemByProperty(array: any[], property: string, value: any): any {\r\n for (const item of array) {\r\n if (item[property] === value) {\r\n return item;\r\n }\r\n }\r\n return null;\r\n }\r\n}\r\n","type QueueItem = () => void;\r\n\r\nexport class AsyncLock {\r\n private readonly queue: QueueItem[] = [];\r\n private acquired = false;\r\n\r\n public async acquire(): Promise<void> {\r\n if (!this.acquired) {\r\n this.acquired = true;\r\n return Promise.resolve();\r\n } else {\r\n return new Promise<void>((resolve, _) => {\r\n this.queue.push(resolve);\r\n });\r\n }\r\n }\r\n\r\n public async release(): Promise<void> {\r\n if (this.queue.length === 0 && this.acquired) {\r\n this.acquired = false;\r\n return Promise.resolve();\r\n }\r\n\r\n const continuation = this.queue.shift();\r\n return new Promise((res: QueueItem) => {\r\n continuation();\r\n res();\r\n });\r\n }\r\n}\r\n","import { StompSubscription } from \"@stomp/stompjs\";\r\nimport { BehaviorSubject, Observable, Subject } from \"rxjs\";\r\nimport { PrimitiveEvent } from \"../protocols/primitive-event\";\r\n\r\nexport class PrimitiveManager<T> {\r\n public domain: string;\r\n public service: string;\r\n public primitive: string;\r\n\r\n private readonly stompSubscriptions: StompSubscription[];\r\n private readonly event$: Subject<PrimitiveEvent<T>>;\r\n private readonly subscribed$: BehaviorSubject<boolean>;\r\n\r\n constructor(domain: string, service: string, primitive: string) {\r\n this.domain = domain;\r\n this.service = service;\r\n this.primitive = primitive;\r\n\r\n this.stompSubscriptions = [];\r\n this.event$ = new Subject<PrimitiveEvent<T>>();\r\n this.subscribed$ = new BehaviorSubject(false);\r\n }\r\n\r\n unsubscribe() {\r\n this.event$.complete();\r\n\r\n for (const stompSubscription of this.stompSubscriptions) {\r\n stompSubscription.unsubscribe();\r\n }\r\n\r\n this.subscribed$.complete();\r\n }\r\n\r\n fireEvent(event: PrimitiveEvent<T>) {\r\n this.event$.next(event);\r\n }\r\n\r\n subscribe(...subscriptions: StompSubscription[]) {\r\n this.stompSubscriptions.push(...subscriptions);\r\n this.subscribed$.next(true);\r\n }\r\n\r\n getEventObservable(): Observable<PrimitiveEvent<T>> {\r\n return this.event$.asObservable();\r\n }\r\n\r\n getSubscriptionObservable(): Observable<boolean> {\r\n return this.subscribed$.asObservable();\r\n }\r\n\r\n hasObservers(): boolean {\r\n // @IMPORTANT: Replace .observers.length === 1 with .observed in rxjs 7.0+\r\n return this.event$.observers.length !== 1;\r\n }\r\n\r\n getObserversCount(): number {\r\n return this.event$.observers.length;\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { get as getCookie } from 'js-cookie';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserInformationService {\r\n private static readonly BASE_URL_COOKIE_KEY = 'com.senior.base.url';\r\n private static readonly TOKEN_COOKIE_KEY = 'com.senior.token';\r\n\r\n public getAuthToken() {\r\n const cookieValue = getCookie(UserInformationService.TOKEN_COOKIE_KEY) || '{}';\r\n const authToken = JSON.parse(cookieValue);\r\n return authToken.access_token;\r\n }\r\n\r\n public getTenantDomain() {\r\n const cookieValue = getCookie(UserInformationService.TOKEN_COOKIE_KEY) || '{}';\r\n const authToken = JSON.parse(cookieValue);\r\n return authToken.username.split('@')[1];\r\n }\r\n\r\n public getWebSocketUrl() {\r\n let baseUrl = getCookie(UserInformationService.BASE_URL_COOKIE_KEY);\r\n if (baseUrl && !baseUrl.endsWith('/')) {\r\n baseUrl += '/';\r\n }\r\n return baseUrl + 'websocket';\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { filter, finalize, map, switchMap, take } from 'rxjs/operators';\r\nimport { Client, FrameImpl, StompConfig, StompSubscription } from '@stomp/stompjs';\r\nimport { BehaviorSubject, Observable, Subject } from 'rxjs';\r\nconst SockJS = require('sockjs-client');\r\nimport { AsyncLock } from './async-lock';\r\nimport { UserInformationService } from './user-information.service';\r\nimport { PrimitiveManager } from './models';\r\nimport { OnEventOptions, PrimitiveEvent } from './protocols';\r\n\r\nconst RECONNECT_INTERVAL_MILLISECONDS = 3000;\r\nconst CONNECTION_TIMEOUT_MILLISECONDS = 5000;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class WebsocketService {\r\n private readonly connected$ = new BehaviorSubject<boolean>(false);\r\n private readonly disconnected$ = new Subject<void>();\r\n private readonly reconnected$ = new Subject<void>();\r\n private readonly error$ = new Subject<FrameImpl>();\r\n private readonly subscribed$ = new Subject<PrimitiveManager<any>>();\r\n\r\n private readonly primitiveManagers: Map<string, PrimitiveManager<any>> = new Map<string, PrimitiveManager<any>>();\r\n private readonly connectionLock = new AsyncLock();\r\n\r\n private stompClient: Client;\r\n private debugEnable = false;\r\n private lostConnection = false;\r\n\r\n constructor(private readonly userInformationService: UserInformationService) {\r\n }\r\n\r\n /**\r\n * Enables stompjs debug logs and additional info\r\n */\r\n public enableDebugLogs() {\r\n this.debugEnable = true;\r\n }\r\n\r\n /**\r\n * Manually starts the connection\r\n */\r\n public async connect() {\r\n await this.connectionLock.acquire();\r\n\r\n try {\r\n if (this.isConnected() || this.isConnecting()) {\r\n return;\r\n }\r\n this.lostConnection = false;\r\n\r\n const stompConfig: StompConfig = {\r\n webSocketFactory: () => {\r\n return new SockJS(\r\n this.getSubscriptionUrl(),\r\n null,\r\n {\r\n timeout: CONNECTION_TIMEOUT_MILLISECONDS\r\n }\r\n );\r\n },\r\n reconnectDelay: RECONNECT_INTERVAL_MILLISECONDS,\r\n debug: this.debug.bind(this),\r\n onConnect: this.handleOnConnected.bind(this),\r\n onDisconnect: this.handleOnDisconnect.bind(this),\r\n onWebSocketClose: this.handleOnWebSocketClose.bind(this),\r\n onStompError: this.handleOnStompError.bind(this),\r\n onWebSocketError: this.handleOnWebSocketError.bind(this)\r\n };\r\n\r\n this.debug('Connecting the Webscoket');\r\n\r\n this.stompClient = new Client(stompConfig);\r\n this.stompClient.activate();\r\n } finally {\r\n await this.connectionLock.release();\r\n }\r\n }\r\n\r\n /**\r\n * Manually disconnect the websocket. The reconnect loop will be stopped.\r\n */\r\n public async disconnect(): Promise<void> {\r\n if (!this.isConnected()) {\r\n return;\r\n }\r\n\r\n await this.connectionLock.acquire();\r\n try {\r\n for (const primitiveManager of this.primitiveManagers.values()) {\r\n primitiveManager.unsubscribe();\r\n }\r\n\r\n this.primitiveManagers.clear();\r\n this.connected$.next(false);\r\n\r\n if (this.stompClient) {\r\n await this.stompClient.deactivate();\r\n }\r\n } finally {\r\n await this.connectionLock.release();\r\n }\r\n }\r\n\r\n /**\r\n * Check if the websocket is connected\r\n * @return `boolean` representing if the websocket is connected\r\n */\r\n public isConnected(): boolean {\r\n if (!this.stompClient) {\r\n return false;\r\n }\r\n\r\n return this.stompClient.connected;\r\n }\r\n\r\n /**\r\n * Check if the websocket is tring to connect\r\n * @return `boolean` representing if the websocket status\r\n */\r\n public isConnecting(): boolean {\r\n if (!this.stompClient) {\r\n return false;\r\n }\r\n\r\n return !this.stompClient.connected && this.stompClient.active;\r\n }\r\n\r\n /**\r\n * Event responsable to emit an event when the connection is established.\r\n * Do not forget to unsubscribe the observable when you don't need it anymore.\r\n * @return `Observable<boolean>`\r\n */\r\n public onConnect(): Observable<boolean> {\r\n return this.connected$.asObservable()\r\n .pipe(filter(p => p === true));\r\n }\r\n\r\n /**\r\n * Event responsable to emit an event when the connection is closed.\r\n * Do not forget to unsubscribe the observable when you don't need it anymore.\r\n * @return `Observable<void>`\r\n */\r\n public onDisconnect(): Observable<void> {\r\n return this.disconnected$.asObservable();\r\n }\r\n\r\n /**\r\n * Event responsable to emit an event when the connection is reestablished.\r\n * Do not forget to unsubscribe the observable when you don't need it anymore.\r\n * @return `Observable<void>`\r\n */\r\n public onReconnect(): Observable<void> {\r\n return this.reconnected$.asObservable();\r\n }\r\n\r\n /**\r\n * Event responsable to emit an event when an error ocurred.\r\n * Do not forget to unsubscribe the observable when you don't need it anymore.\r\n * @return `Observable<FrameImpl>`\r\n */\r\n public onError(): Observable<FrameImpl> {\r\n return this.error$.asObservable();\r\n }\r\n\r\n /**\r\n * Event responsible to emit an event when a primitive is called.\r\n * Do not forget to unsubscribe the observable when you don't need it anymore.\r\n * @typeParam `<T>` Object type that will be used in the observable for the `data` property.\r\n * @param {OnEventOptions} options Configurations for the event.\r\n * @return `Observable<PrimitiveEvent<T>>` Observable that emits an event when the service calls the primitive.\r\n */\r\n public onEvent<T>(options: OnEventOptions): Observable<PrimitiveEvent<T>> {\r\n const { domain, service, primitive } = options;\r\n const key = this.buildPrimitiveManagerKey(domain, service, primitive);\r\n\r\n if (this.primitiveManagers.has(key)) {\r\n return this.primitiveManagers.get(key).getEventObservable();\r\n }\r\n\r\n const primitiveManager = new PrimitiveManager<T>(domain, service, primitive);\r\n this.primitiveManagers.set(key, primitiveManager);\r\n\r\n this.connect().then(() => {\r\n this.onConnect()\r\n .pipe(take(1))\r\n .subscribe(() => {\r\n this.createStompSubscriptions(primitiveManager);\r\n });\r\n });\r\n\r\n return primitiveManager\r\n .getEventObservable()\r\n .pipe(finalize(() => this.unsubscribePrimitiveOnFinalize(primitiveManager)));\r\n }\r\n\r\n /**\r\n * Event responsible to emit an event when a subscription is created for the primitive.\r\n * Do not forget to unsubscribe the observable when you don't need it anymore.\r\n * @param {OnEventOptions} options Configurations for the event.\r\n * Observable responsável por emitir uma notificação após o subscribe do evento pela primeira vez.\r\n * @return `Observable<boolean>` Observable that emits an event when the service calls the primitive.\r\n */\r\n public onSubscribe(options: OnEventOptions): Observable<boolean> {\r\n const { domain, service, primitive } = options;\r\n const key = this.buildPrimitiveManagerKey(domain, service, primitive);\r\n\r\n return this.onConnect().pipe(\r\n take(1),\r\n switchMap(() => {\r\n if (this.primitiveManagers.has(key)) {\r\n return this.primitiveManagers\r\n .get(key)\r\n .getSubscriptionObservable()\r\n .pipe(take(1));\r\n }\r\n\r\n return this.subscribed$.asObservable().pipe(\r\n filter((primitiveManager) => {\r\n return this.buildPrimitiveManagerKey(\r\n primitiveManager.domain,\r\n primitiveManager.service,\r\n primitiveManager.primitive\r\n ) === key;\r\n }),\r\n map(() => true),\r\n take(1)\r\n );\r\n })\r\n );\r\n }\r\n\r\n private debug(message: string, ...optionalParams: any[]) {\r\n if (!this.debugEnable) {\r\n return;\r\n }\r\n console.log('WS debug: ' + message, ...optionalParams);\r\n }\r\n\r\n private info(message: string) {\r\n console.info('WS info: ' + message);\r\n }\r\n\r\n private handleOnConnected() {\r\n this.info('Webscoket connected');\r\n\r\n this.connected$.next(true);\r\n if (this.lostConnection) {\r\n this.info('Webscoket reconnected, recriating subscriptions');\r\n this.handleReconnection();\r\n }\r\n }\r\n\r\n private handleOnDisconnect() {\r\n this.info('Webscoket disconnected');\r\n\r\n this.connected$.next(false);\r\n this.disconnected$.next();\r\n }\r\n\r\n private handleOnWebSocketClose(data: CloseEvent) {\r\n if (data?.reason?.toLowerCase().indexOf(\"go away\") !== -1) {\r\n this.lostConnection = true;\r\n this.handleError('AuthenticationError', new FrameImpl(\r\n {\r\n command: data.type,\r\n headers: {\r\n message: data.reason\r\n }\r\n }\r\n ));\r\n return;\r\n }\r\n\r\n if (data?.reason?.toLowerCase().indexOf(\"cannot connect to server\") !== -1) {\r\n this.lostConnection = true;\r\n this.handleError('ConnectionError', new FrameImpl(\r\n {\r\n command: data.type,\r\n headers: {\r\n message: data.reason\r\n }\r\n }\r\n ));\r\n return;\r\n }\r\n\r\n if (data.wasClean) {\r\n return;\r\n }\r\n\r\n this.lostConnection = true;\r\n }\r\n\r\n private handleOnStompError(data: FrameImpl) {\r\n this.handleError('StompError', data);\r\n\r\n if (this.isAuthenticationError(data)) {\r\n this.info('Authentication error, recriating subscriptions');\r\n this.handleReconnection();\r\n }\r\n }\r\n\r\n private isAuthenticationError(data: FrameImpl) {\r\n const errorMessage = data?.headers?.message;\r\n if (!errorMessage) {\r\n return false;\r\n }\r\n\r\n return errorMessage.toLowerCase().indexOf('forbiddenexception') !== -1;\r\n }\r\n\r\n private handleOnWebSocketError(data: any) {\r\n this.handleError('WebSocketError', data);\r\n }\r\n\r\n private handleError(origin: string, data: FrameImpl) {\r\n console.error(origin, data);\r\n this.error$.next(data);\r\n }\r\n\r\n private handleReconnection() {\r\n this.lostConnection = false;\r\n this.reconnectPrimitives();\r\n this.reconnected$.next();\r\n }\r\n\r\n private reconnectPrimitives(): void {\r\n for (const primitiveManager of this.primitiveManagers.values()) {\r\n this.createStompSubscriptions(primitiveManager);\r\n }\r\n }\r\n\r\n private buildSubscriptionUrlWithToken(domain: string, service: string, primitive: string): string {\r\n const authToken = this.userInformationService.getAuthToken();\r\n const tenant = this.userInformationService.getTenantDomain();\r\n return `/topic/${tenant}/${authToken}/${domain}/${service}/${primitive}`;\r\n }\r\n\r\n private getSubscriptionUrlWithoutToken(domain: string, service: string, primitive: string): string {\r\n const tenant = this.userInformationService.getTenantDomain();\r\n return `/topic/${tenant}/${domain}/${service}/${primitive}`;\r\n }\r\n\r\n private buildPrimitiveManagerKey(domain: string, service: string, primitive: string): string {\r\n return `${domain}/${service}/${primitive}`;\r\n }\r\n\r\n private async unsubscribePrimitiveOnFinalize(primitiveManager: PrimitiveManager<any>) {\r\n if (primitiveManager.hasObservers()) {\r\n return;\r\n }\r\n\r\n primitiveManager.unsubscribe();\r\n\r\n const key = this.buildPrimitiveManagerKey(primitiveManager.domain, primitiveManager.service, primitiveManager.primitive);\r\n this.primitiveManagers.delete(key);\r\n\r\n await this.disconnectIfNoMoreObservables();\r\n }\r\n\r\n private async disconnectIfNoMoreObservables() {\r\n if (this.getObserversCount() === 0) {\r\n this.debug('Manually disconnecting because there are no more observers');\r\n await this.disconnect();\r\n }\r\n }\r\n\r\n private getObserversCount(): number {\r\n let observersCount = 0;\r\n\r\n this.primitiveManagers.forEach(primitiveManager => {\r\n observersCount += primitiveManager.getObserversCount();\r\n });\r\n\r\n return observersCount;\r\n }\r\n\r\n private createStompSubscription<T>(destination: string, primitiveManager: PrimitiveManager<T>): StompSubscription {\r\n return this.stompClient.subscribe(destination, (message: any) => {\r\n const event = JSON.parse(message.body || '{}');\r\n primitiveManager.fireEvent(event);\r\n });\r\n }\r\n\r\n private createStompSubscriptions<T>(primitiveManager: PrimitiveManager<T>): void {\r\n const subscriptionUrlWithToken = this.buildSubscriptionUrlWithToken(\r\n primitiveManager.domain,\r\n primitiveManager.service,\r\n primitiveManager.primitive\r\n );\r\n const subscriptionUrlWithoutToken = this.getSubscriptionUrlWithoutToken(\r\n primitiveManager.domain,\r\n primitiveManager.service,\r\n primitiveManager.primitive\r\n );\r\n\r\n const stompSubscriptionWithToken = this.createStompSubscription(subscriptionUrlWithToken, primitiveManager);\r\n const stompSubscriptionWithoutToken = this.createStompSubscription(subscriptionUrlWithoutToken, primitiveManager);\r\n primitiveManager.subscribe(stompSubscriptionWithToken, stompSubscriptionWithoutToken);\r\n this.subscribed$.next(primitiveManager);\r\n }\r\n\r\n private getSubscriptionUrl() {\r\n return `${this.userInformationService.getWebSocketUrl()}/subscription`;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { WebsocketService } from './websocket.service';\r\nimport { UserInformationService } from './user-information.service';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [],\r\n providers: [\r\n WebsocketService,\r\n UserInformationService\r\n ],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class WebsocketModule { }\r\n","const ptBR = {\r\n \"agro.angular_components.table_empty_description\": \"Altere os filtros acima para gerar outros resultados de busca\",\r\n \"agro.angular_components.nothing_found\": \"Nenhum registro encontrado\",\r\n \"agro.angular_components.panel_title_events_events\": \"Eventos\",\r\n \"agro.angular_components.refresh\": \"Atualizar\",\r\n \"agro.angular_components.event_control_header\": \"Consulta de eventos/integrações\",\r\n \"agro.angular_components.no\": \"Não\",\r\n \"agro.angular_components.yes\": \"Sim\",\r\n \"agro.angular_components.event_modal_title\": \"Reprocessamento de Eventos\",\r\n \"agro.angular_components.event_modal\": \"Deseja reprocessar o evento?\",\r\n \"agro.angular_components.reprocess_event\": \"Reprocessar evento\",\r\n \"agro.angular_components.events_close\": \"Fechar\",\r\n \"agro.angular_components.event_error_message\": \"Mensagem de erro\",\r\n \"agro.angular_components.last_update_date\": \"Última atualização\",\r\n \"agro.angular_components.show_event_details\": \"Detalhes do evento\",\r\n \"agro.angular_components.pending\": \"Pendente\",\r\n \"agro.angular_components.processing\": \"Processando\",\r\n \"agro.angular_components.panel_title_events_ended_with_error\": \"Falha\",\r\n \"agro.angular_components.tickets\": \"Tickets\",\r\n \"agro.angular_components.rural_estate\": \"Imóvel Rural\",\r\n \"agro.angular_components.change_request_event_summary\": \"Alteração de \\nPesagem\",\r\n \"agro.angular_components.ticket_maintenance_header\": \"Manutenção de ticket\",\r\n \"agro.angular_components.invoice_creating_event\": \"Emissão de NF\",\r\n \"agro.angular_components.balance_entry_control_event\": \"Entrada/saída balança\",\r\n \"agro.angular_components.event_origin_label\": \"Origem do evento\",\r\n \"agro.angular_components.event_details_header\": \"Detalhes do Evento\",\r\n \"agro.angular_components.registers_found\": \"{{total}} registro(s) encontrado(s)\",\r\n \"agro.angular_components.change_request_event\": \"Alteração de Pesagem\",\r\n \"agro.angular_components.status_label\": \"Status\",\r\n \"agro.angular_components.panel_title_events_completed_successfully\": \"Sucesso\",\r\n \"agro.angular_components.supplier\": \"Fornecedor\",\r\n \"agro.angular_components.ticket\": \"Ticket\",\r\n \"agro.angular_components.company\": \"Empresa\",\r\n \"agro.angular_components.label_branch\": \"Filial\",\r\n \"agro.angular_components.event_sidebar_title\": \"Evento - {{event}}\",\r\n \"agro.angular_components.reprocessing_event_message_title\": \"Reprocessando Evento\",\r\n \"agro.angular_components.reprocessing_event_message_description\": \"O evento selecionado está sendo reprocessado.\",\r\n \"agro.angular_components.error_reprocessing_event_message_title\": \"Erro ao reprocessar evento\",\r\n \"agro.angular_components.error_reprocessing_event_message_description\": \"Houve um erro ao reprocessar o evento. Tente novamente mais tarde.\",\r\n \"agro.angular_components.actions\": \"Ações\",\r\n \"agro.angular_components.add\": \"Adicionar\",\r\n \"agro.angular_components.at_date\": \"Na data\",\r\n \"agro.angular_components.at_time\": \"Na hora\",\r\n \"agro.angular_components.cancel\": \"Cancelar\",\r\n \"agro.angular_components.clear\": \"Limpar\",\r\n \"agro.angular_components.created_by\": \"Criado por\",\r\n \"agro.angular_components.delete\": \"Excluir\",\r\n \"agro.angular_components.delete_confirmation_message\": \"Tem certeza que deseja excluir este item?\",\r\n \"agro.angular_components.delete_confirmation_title\": \"Confirmação de exclusão\",\r\n \"agro.angular_components.deleted_message_content\": \"Item excluído com sucesso\",\r\n \"agro.angular_components.deleted_message_title\": \"Exclusão realizada\",\r\n \"agro.angular_components.e_070_emp_cod_emp\": \"Código da empresa\",\r\n \"agro.angular_components.e_070_emp_created_by\": \"Criado por\",\r\n \"agro.angular_components.e_070_emp_created_date\": \"Data de criação\",\r\n \"agro.angular_components.e_070_emp_id\": \"Id\",\r\n \"agro.angular_components.e_070_emp_last_modified_by\": \"Última modificação por\",\r\n \"agro.angular_components.e_070_emp_last_modified_date\": \"Data da última modificação\",\r\n \"agro.angular_components.e_070_emp_nom_emp\": \"Nome da empresa\",\r\n \"agro.angular_components.e_070_emp_sig_emp\": \"Nome fantasia / Sigla da empresa\",\r\n \"agro.angular_components.e_070_fil_cid_fil\": \"Cidade\",\r\n \"agro.angular_components.e_070_fil_cod_fil\": \"Código da filial\",\r\n \"agro.angular_components.e_070_fil_created_by\": \"Criado por\",\r\n \"agro.angular_components.e_070_fil_created_date\": \"Data de criação\",\r\n \"agro.angular_components.e_070_fil_id\": \"Id\",\r\n \"agro.angular_components.e_070_fil_last_modified_by\": \"Última modificação por\",\r\n \"agro.angular_components.e_070_fil_last_modified_date\": \"Data da última modificação\",\r\n \"agro.angular_components.e_070_fil_nom_fil\": \"Nome da filial\",\r\n \"agro.angular_components.e_070_fil_num_cgc\": \"CNPJ\",\r\n \"agro.angular_components.e_070_fil_num_fon\": \"Numero Telefone\",\r\n \"agro.angular_components.e_070_fil_sig_fil\": \"Nome fantasia da filial\",\r\n \"agro.angular_components.edit\": \"Editar\",\r\n \"agro.angular_components.error_forbidden_description\": \"Você não tem permissão para acessar este recurso\",\r\n \"agro.angular_components.error_forbidden_title\": \"Acesso negado\",\r\n \"agro.angular_components.error_invalid\": \"Valor inválido\",\r\n \"agro.angular_components.error_max_length\": \"O valor máximo de caracteres é {0}\",\r\n \"agro.angular_components.error_max_value\": \"O valor máximo é {0}\",\r\n \"agro.angular_components.error_min_length\": \"O valor mínimo de caracteres é {0}\",\r\n \"agro.angular_components.error_min_value\": \"O valor mínimo é {0}\",\r\n \"agro.angular_components.error_not_found_description\": \"O recurso solicitado não foi encontrado\",\r\n \"agro.angular_components.error_not_found_title\": \"Não encontrado\",\r\n \"agro.angular_components.error_required\": \"Campo obrigatório\",\r\n \"agro.angular_components.error_server_description\": \"Ocorreu um erro ao processar sua solicitação. Por favor, tente novamente\",\r\n \"agro.angular_components.error_server_title\": \"Erro no servidor\",\r\n \"agro.angular_components.error_server_try_again\": \"Tente novamente\",\r\n \"agro.angular_components.error_unauthorized_description\": \"Você não está autorizado a acessar este recurso\",\r\n \"agro.angular_components.error_unauthorized_title\": \"Não autorizado\",\r\n \"agro.angular_components.event_control\": \"Controle de eventos\",\r\n \"agro.angular_components.event_control_created_by\": \"Criado por\",\r\n \"agro.angular_components.event_control_created_date\": \"Data de criação\",\r\n \"agro.angular_components.event_control_e_070_emp\": \"Empresa\",\r\n \"agro.angular_components.event_control_e_070_emp_search_title\": \"Selecione a empresa\",\r\n \"agro.angular_components.event_control_e_070_fil\": \"Filial\",\r\n \"agro.angular_components.event_control_e_070_fil_search_title\": \"Selecione a filial\",\r\n \"agro.angular_components.event_control_empty_state_description\": \"Nenhum registro encontrado\",\r\n \"agro.angular_components.event_control_empty_state_title\": \"Nenhum registro encontrado\",\r\n \"agro.angular_components.event_control_event_origin\": \"Origem do evento\",\r\n \"agro.angular_components.event_control_event_origin_placeholder\": \"Selecione a origem do evento\",\r\n \"agro.angular_components.event_control_external_id\": \"Id externo\",\r\n \"agro.angular_components.event_control_form_general_title\": \"Geral\",\r\n \"agro.angular_components.event_control_form_title\": \"Controle de eventos\",\r\n \"agro.angular_components.event_control_id\": \"Id da entidade\",\r\n \"agro.angular_components.event_control_item\": \"Itens do controle de eventos\",\r\n \"agro.angular_components.event_control_item_created_by\": \"Criado por\",\r\n \"agro.angular_components.event_control_item_created_date\": \"Data de criação\",\r\n \"agro.angular_components.event_control_item_empty_state_description\": \"Nenhum registro encontrado\",\r\n \"agro.angular_components.event_control_item_empty_state_title\": \"Nenhum registro encontrado\",\r\n \"agro.angular_components.event_control_item_event_control\": \"eventControlId\",\r\n \"agro.angular_components.event_control_item_event_control_search_title\": \"Selecione o controle de eventos\",\r\n \"agro.angular_components.event_control_item_event_group\": \"Grupo do evento\",\r\n \"agro.angular_components.event_control_item_event_operation\": \"Tipo da operação do evento\",\r\n \"agro.angular_components.event_control_item_event_operation_placeholder\": \"Selecione o tipo da operação do evento\",\r\n \"agro.angular_components.event_control_item_form_general_title\": \"Geral\",\r\n \"agro.angular_components.event_control_item_form_title\": \"Itens do controle de eventos\",\r\n \"agro.angular_components.event_control_item_id\": \"Id da entidade\",\r\n \"agro.angular_components.event_control_item_last_modified_by\": \"Última modificação por\",\r\n \"agro.angular_components.event_control_item_last_modified_date\": \"Data da última modificação\",\r\n \"agro.angular_components.event_control_item_list_grid_title\": \"Itens do controle de eventos\",\r\n \"agro.angular_components.event_control_item_list_title\": \"Itens do controle de eventos\",\r\n \"agro.angular_components.event_control_item_message\": \"Mensagem de evento\",\r\n \"agro.angular_components.event_control_item_param\": \"Parâmetros do evento\",\r\n \"agro.angular_components.event_control_item_request\": \"Solicitação recebida\",\r\n \"agro.angular_components.event_control_item_response\": \"Resposta enviada\",\r\n \"agro.angular_components.event_control_item_sequence\": \"Sequência do evento\",\r\n \"agro.angular_components.event_control_item_status\": \"Status do evento\",\r\n \"agro.angular_components.event_control_item_status_placeholder\": \"Selecione o status do evento\",\r\n \"agro.angular_components.event_control_last_modified_by\": \"Última modificação por\",\r\n \"agro.angular_components.event_control_last_modified_date\": \"Data da última modificação\",\r\n \"agro.angular_components.event_control_list_grid_title\": \"Controle de eventos\",\r\n \"agro.angular_components.event_control_list_title\": \"Controle de eventos\",\r\n \"agro.angular_components.event_operation_change_request\": \"Solicitação de alteração\",\r\n \"agro.angular_components.event_operation_change_response\": \"Resposta de alteração\",\r\n \"agro.angular_components.event_operation_effective\": \"Efetivo\",\r\n \"agro.angular_components.event_operation_effective_confirmation\": \"Confirmação de efetivação\",\r\n \"agro.angular_components.event_operation_invoice_closing\": \"Fechamento de nota fiscal\",\r\n \"agro.angular_components.event_operation_invoice_creating\": \"Criação de nota fiscal\",\r\n \"agro.angular_components.event_operation_invoice_installments\": \"Parcelamento de no\",\r\n \"agro.angular_components.event_operation_provesional\": \"Saldo Provisório\",\r\n \"agro.angular_components.event_operation_remove_provisional\": \"Remoção de Saldo provisório\",\r\n \"agro.angular_components.event_operation_ticket\": \"Ticket\",\r\n \"agro.angular_components.event_origin_balance_entry_control\": \"Controle de lançamento de saldo\",\r\n \"agro.angular_components.event_origin_change_request\": \"Solicitação de alteração\",\r\n \"agro.angular_components.event_origin_invoice\": \"Invoice\",\r\n \"agro.angular_components.event_origin_ticket\": \"Ticket\",\r\n \"agro.angular_components.event_status_canceled\": \"Cancelado\",\r\n \"agro.angular_components.event_status_failed\": \"Falha\",\r\n \"agro.angular_components.event_status_pending\": \"Pendente\",\r\n \"agro.angular_components.event_status_processing\": \"Processado\",\r\n \"agro.angular_components.event_status_success\": \"Sucesso\",\r\n \"agro.angular_components.filter\": \"Filtrar\",\r\n \"agro.angular_components.filters\": \"Filtros\",\r\n \"agro.angular_components.list_grid_empty_field\": \"Nenhum registro encontrado\",\r\n \"agro.angular_components.product_header_title\": \"Eventos\",\r\n \"agro.angular_components.save\": \"Salvar\",\r\n \"agro.angular_components.select\": \"Selecione\",\r\n \"agro.angular_components.updated_by\": \"Atualizado por\",\r\n \"error_invalid\": \"Valor inválido\",\r\n \"agro.angular_components.choose_label\": \"Escolha\",\r\n \"agro.angular_components.remove_label\": \"Remover\",\r\n \"agro.angular_components.cancel_label\": \"Cancelar\",\r\n \"agro.angular_components.success_tooltip\": \"Sucesso\",\r\n \"agro.angular_components.menu_agro_events\": \"Eventos do Agro\",\r\n \"agro.angular_components.date\": \"Data\",\r\n \"agro.angular_components.label_code_branch\": \"Código da filial\",\r\n \"agro.angular_components.label_code_company\": \"Código da empresa\",\r\n \"agro.angular_components.label_code_deposit\": \"Código do depósito\",\r\n \"agro.angular_components.label_code\": \"Código\",\r\n \"agro.angular_components.label_company\": \"Empresa\",\r\n \"platform.backend.agro_origination_entry_control\": \"Controle entrada/saída via balança\",\r\n \"platform.backend.agro_origination_entry_exit_query\": \"Consulta entrada/saída\",\r\n \"platform.backend.agro_origination_links\": \"Ligações\",\r\n \"agro.angular_components.fantasy_name\": \"Nome fantasia\",\r\n \"platform.backend.agro_origination_operation_versus_transaction_link\": \"Ligação operação x transação\",\r\n \"platform.backend.menu_event_control\": \"Consulta de eventos/integrações\",\r\n \"agro.angular_components.company_search_label\": \"Consultar Empresa\",\r\n \"agro.angular_components.company_tooltip\": \"Selecione uma empresa para prosseguir\",\r\n \"agro.angular_components.branch_search_label\": \"Consultar Filial\",\r\n \"agro.angular_components.branch_tooltip\": \"Encontre as filiais da empresa\",\r\n \"agro.angular_components.dash\": \"-\",\r\n \"agro.angular_components.ticket_tooltip\": \"Adicione o número do ticket para especificar na busca\",\r\n \"agro.angular_components.ticket_search_label\": \"Consultar Ticket\",\r\n \"agro.angular_components.kilogram_unit_label\": \"KG\",\r\n \"agro.angular_components.event_list_header\": \"Lista de Eventos\",\r\n \"agro.angular_components.ticket_event\": \"Emissão do Ticket\",\r\n \"agro.angular_components.provisional_event\": \"Saldo provisório\",\r\n \"agro.angular_components.effective_event\": \"Saldo efetivo\",\r\n \"agro.angular_components.effective_confirmation_event\": \"Confirmação saldo efetivo\",\r\n \"agro.angular_components.remove_provisional_event\": \"Remover Saldo Provisório\",\r\n \"agro.angular_components.canceled\": \"Cancelado\",\r\n \"agro.angular_components.label_number\": \"Ticket\",\r\n \"agro.angular_components.cnpj\": \"CNPJ\",\r\n \"agro.angular_components.label_city\": \"Cidade\",\r\n \"agro.angular_components.menu_event_control\": \"Consulta de eventos/integrações\"\r\n};\r\nexport default ptBR;","const enUS = {\r\n \"agro.angular_components.table_empty_description\": \"Change the filters above to generate other search results\",\r\n \"agro.angular_components.nothing_found\": \"No records found\",\r\n \"agro.angular_components.panel_title_events_events\": \"Events\",\r\n \"agro.angular_components.refresh\": \"Refresh\",\r\n \"agro.angular_components.event_control_header\": \"Event/Integration Query\",\r\n \"agro.angular_components.no\": \"No\",\r\n \"agro.angular_components.yes\": \"Yes\",\r\n \"agro.angular_components.event_modal_title\": \"Event Reprocessing\",\r\n \"agro.angular_components.event_modal\": \"Do you want to reprocess the event?\",\r\n \"agro.angular_components.reprocess_event\": \"Reprocess event\",\r\n \"agro.angular_components.events_close\": \"Close\",\r\n \"agro.angular_components.event_error_message\": \"Error message\",\r\n \"agro.angular_components.last_update_date\": \"Last update\",\r\n \"agro.angular_components.show_event_details\": \"Event details\",\r\n \"agro.angular_components.pending\": \"Pending\",\r\n \"agro.angular_components.processing\": \"Processing\",\r\n \"agro.angular_components.panel_title_events_ended_with_error\": \"Failure\",\r\n \"agro.angular_components.tickets\": \"Tickets\",\r\n \"agro.angular_components.rural_estate\": \"Rural Estate\",\r\n \"agro.angular_components.change_request_event_summary\": \"Weight Change\",\r\n \"agro.angular_components.ticket_maintenance_header\": \"Ticket Maintenance\",\r\n \"agro.angular_components.invoice_creating_event\": \"Invoice Issuance\",\r\n \"agro.angular_components.balance_entry_control_event\": \"Balance Entry/Exit\",\r\n \"agro.angular_components.event_origin_label\": \"Event origin\",\r\n \"agro.angular_components.event_details_header\": \"Event Details\",\r\n \"agro.angular_components.registers_found\": \"{{total}} record(s) found\",\r\n \"agro.angular_components.change_request_event\": \"Weight Change\",\r\n \"agro.angular_components.status_label\": \"Status\",\r\n \"agro.angular_components.panel_title_events_completed_successfully\": \"Success\",\r\n \"agro.angular_components.supplier\": \"Supplier\",\r\n \"agro.angular_components.ticket\": \"Ticket\",\r\n \"agro.angular_components.company\": \"Company\",\r\n \"agro.angular_components.label_branch\": \"Branch\",\r\n \"agro.angular_components.event_sidebar_title\": \"Event - {{event}}\",\r\n \"agro.angular_components.reprocessing_event_message_title\": \"Reprocessing Event\",\r\n \"agro.angular_components.reprocessing_event_message_description\": \"The selected event is being reprocessed.\",\r\n \"agro.angular_components.error_reprocessing_event_message_title\": \"Error reprocessing event\",\r\n \"agro.angular_components.error_reprocessing_event_message_description\": \"There was an error reprocessing the event. Please try again later.\",\r\n \"agro.angular_components.actions\": \"Actions\",\r\n \"agro.angular_components.add\": \"Add\",\r\n \"agro.angular_components.at_date\": \"On date\",\r\n \"agro.angular_components.at_time\": \"At time\",\r\n \"agro.angular_components.cancel\": \"Cancel\",\r\n \"agro.angular_components.clear\": \"Clear\",\r\n \"agro.angular_components.created_by\": \"Created by\",\r\n \"agro.angular_components.delete\": \"Delete\",\r\n \"agro.angular_components.delete_confirmation_message\": \"Are you sure you want to delete this item?\",\r\n \"agro.angular_components.delete_confirmation_title\": \"Delete Confirmation\",\r\n \"agro.angular_components.deleted_message_content\": \"Item successfully deleted\",\r\n \"agro.angular_components.deleted_message_title\": \"Deletion completed\",\r\n \"agro.angular_components.e_070_emp_cod_emp\": \"Company code\",\r\n \"agro.angular_components.e_070_emp_created_by\": \"Created by\",\r\n \"agro.angular_components.e_070_emp_created_date\": \"Creation date\",\r\n \"agro.angular_components.e_070_emp_id\": \"Id\",\r\n \"agro.angular_components.e_070_emp_last_modified_by\": \"Last modified by\",\r\n \"agro.angular_components.e_070_emp_last_modified_date\": \"Last modification date\",\r\n \"agro.angular_components.e_070_emp_nom_emp\": \"Company name\",\r\n \"agro.angular_components.e_070_emp_sig_emp\": \"Trade name / Company acronym\",\r\n \"agro.angular_components.e_070_fil_cid_fil\": \"City\",\r\n \"agro.angular_components.e_070_fil_cod_fil\": \"Branch code\",\r\n \"agro.angular_components.e_070_fil_created_by\": \"Created by\",\r\n \"agro.angular_components.e_070_fil_created_date\": \"Creation date\",\r\n \"agro.angular_components.e_070_fil_id\": \"Id\",\r\n \"agro.angular_components.e_070_fil_last_modified_by\": \"Last modified by\",\r\n \"agro.angular_components.e_070_fil_last_modified_date\": \"Last modification date\",\r\n \"agro.angular_components.e_070_fil_nom_fil\": \"Branch name\",\r\n \"agro.angular_components.e_070_fil_num_cgc\": \"CNPJ\",\r\n \"agro.angular_components.e_070_fil_num_fon\": \"Phone number\",\r\n \"agro.angular_components.e_070_fil_sig_fil\": \"Branch trade name\",\r\n \"agro.angular_components.edit\": \"Edit\",\r\n \"agro.angular_components.error_forbidden_description\": \"You do not have permission to access this resource\",\r\n \"agro.angular_components.error_forbidden_title\": \"Access denied\",\r\n \"agro.angular_components.error_invalid\": \"Invalid value\",\r\n \"agro.angular_components.error_max_length\": \"The maximum number of characters is {0}\",\r\n \"agro.angular_components.error_max_value\": \"The maximum value is {0}\",\r\n \"agro.angular_components.error_min_length\": \"The minimum number of characters is {0}\",\r\n \"agro.angular_components.error_min_value\": \"The minimum value is {0}\",\r\n \"agro.angular_components.error_not_found_description\": \"The requested resource was not found\",\r\n \"agro.angular_components.error_not_found_title\": \"Not found\",\r\n \"agro.angular_components.error_required\": \"Required field\",\r\n \"agro.angular_components.error_server_description\": \"An error occurred while processing your request. Please try again\",\r\n \"agro.angular_components.error_server_title\": \"Server error\",\r\n \"agro.angular_components.error_server_try_again\": \"Try again\",\r\n \"agro.angular_components.error_unauthorized_description\": \"You are not authorized to access this resource\",\r\n \"agro.angular_components.error_unauthorized_title\": \"Unauthorized\",\r\n \"agro.angular_components.event_control\": \"Event control\",\r\n \"agro.angular_components.event_control_created_by\": \"Created by\",\r\n \"agro.angular_components.event_control_created_date\": \"Creation date\",\r\n \"agro.angular_components.event_control_e_070_emp\": \"Company\",\r\n \"agro.angular_components.event_control_e_070_emp_search_title\": \"Select the company\",\r\n \"agro.angular_components.event_control_e_070_fil\": \"Branch\",\r\n \"agro.angular_components.event_control_e_070_fil_search_title\": \"Select the branch\",\r\n \"agro.angular_components.event_control_empty_state_description\": \"No records found\",\r\n \"agro.angular_components.event_control_empty_state_title\": \"No records found\",\r\n \"agro.angular_components.event_control_event_origin\": \"Event origin\",\r\n \"agro.angular_components.event_control_event_origin_placeholder\": \"Select the event origin\",\r\n \"agro.angular_components.event_control_external_id\": \"External Id\",\r\n \"agro.angular_components.event_control_form_general_title\": \"General\",\r\n \"agro.angular_components.event_control_form_title\": \"Event control\",\r\n \"agro.angular_components.event_control_id\": \"Entity Id\",\r\n \"agro.angular_components.event_control_item\": \"Event control items\",\r\n \"agro.angular_components.event_control_item_created_by\": \"Created by\",\r\n \"agro.angular_components.event_control_item_created_date\": \"Creation date\",\r\n \"agro.angular_components.event_control_item_empty_state_description\": \"No records found\",\r\n \"agro.angular_components.event_control_item_empty_state_title\": \"No records found\",\r\n \"agro.angular_components.event_control_item_event_control\": \"eventControlId\",\r\n \"agro.angular_components.event_control_item_event_control_search_title\": \"Select the event control\",\r\n \"agro.angular_components.event_control_item_event_group\": \"Event group\",\r\n \"agro.angular_components.event_control_item_event_operation\": \"Event operation type\",\r\n \"agro.angular_components.event_control_item_event_operation_placeholder\": \"Select the event operation type\",\r\n \"agro.angular_components.event_control_item_form_general_title\": \"General\",\r\n \"agro.angular_components.event_control_item_form_title\": \"Event control items\",\r\n \"agro.angular_components.event_control_item_id\": \"Entity Id\",\r\n \"agro.angular_components.event_control_item_last_modified_by\": \"Last modified by\",\r\n \"agro.angular_components.event_control_item_last_modified_date\": \"Last modification date\",\r\n \"agro.angular_components.event_control_item_list_grid_title\": \"Event control items\",\r\n \"agro.angular_components.event_control_item_list_title\": \"Event control items\",\r\n \"agro.angular_components.event_control_item_message\": \"Event message\",\r\n \"agro.angular_components.event_control_item_param\": \"Event parameters\",\r\n \"agro.angular_components.event_control_item_request\": \"Request received\",\r\n \"agro.angular_components.event_control_item_response\": \"Response sent\",\r\n \"agro.angular_components.event_control_item_sequence\": \"Event sequence\",\r\n \"agro.angular_components.event_control_item_status\": \"Event status\",\r\n \"agro.angular_components.event_control_item_status_placeholder\": \"Select the event status\",\r\n \"agro.angular_components.event_control_last_modified_by\": \"Last modified by\",\r\n \"agro.angular_components.event_control_last_modified_date\": \"Last modification date\",\r\n \"agro.angular_components.event_control_list_grid_title\": \"Event control\",\r\n \"agro.angular_components.event_control_list_title\": \"Event control\",\r\n \"agro.angular_components.event_operation_change_request\": \"Change request\",\r\n \"agro.angular_components.event_operation_change_response\": \"Change response\",\r\n \"agro.angular_components.event_operation_effective\": \"Effective\",\r\n \"agro.angular_components.event_operation_effective_confirmation\": \"Effective confirmation\",\r\n \"agro.angular_components.event_operation_invoice_closing\": \"Invoice closing\",\r\n \"agro.angular_components.event_operation_invoice_creating\": \"Invoice creating\",\r\n \"agro.angular_components.event_operation_invoice_installments\": \"Invoice installments\",\r\n \"agro.angular_components.event_operation_provesional\": \"Provisional balance\",\r\n \"agro.angular_components.event_operation_remove_provisional\": \"Remove provisional balance\",\r\n \"agro.angular_components.event_operation_ticket\": \"Ticket\",\r\n \"agro.angular_components.event_origin_balance_entry_control\": \"Balance entry control\",\r\n \"agro.angular_components.event_origin_change_request\": \"Change request\",\r\n \"agro.angular_components.event_origin_invoice\": \"Invoice\",\r\n \"agro.angular_components.event_origin_ticket\": \"Ticket\",\r\n \"agro.angular_components.event_status_canceled\": \"Canceled\",\r\n \"agro.angular_components.event_status_failed\": \"Failed\",\r\n \"agro.angular_components.event_status_pending\": \"Pending\",\r\n \"agro.angular_components.event_status_processing\": \"Processed\",\r\n \"agro.angular_components.event_status_success\": \"Success\",\r\n \"agro.angular_components.filter\": \"Filter\",\r\n \"agro.angular_components.filters\": \"Filters\",\r\n \"agro.angular_components.list_grid_empty_field\": \"No records found\",\r\n \"agro.angular_components.product_header_title\": \"Events\",\r\n \"agro.angular_components.save\": \"Save\",\r\n \"agro.angular_components.select\": \"Select\",\r\n \"agro.angular_components.updated_by\": \"Updated by\",\r\n \"error_invalid\": \"Invalid value\",\r\n \"agro.angular_components.choose_label\": \"Choose\",\r\n \"agro.angular_components.remove_label\": \"Remove\",\r\n \"agro.angular_components.cancel_label\": \"Cancel\",\r\n \"agro.angular_components.success_tooltip\": \"Success\",\r\n \"agro.angular_components.menu_agro_events\": \"Agro Events\",\r\n \"agro.angular_components.date\": \"Date\",\r\n \"agro.angular_components.label_code_branch\": \"Branch code\",\r\n \"agro.angular_components.label_code_company\": \"Company code\",\r\n \"agro.angular_components.label_code_deposit\": \"Deposit code\",\r\n \"agro.angular_components.label_code\": \"Code\",\r\n \"agro.angular_components.label_company\": \"Company\",\r\n \"platform.backend.agro_origination_entry_control\": \"Balance entry/exit control\",\r\n \"platform.backend.agro_origination_entry_exit_query\": \"Entry/exit query\",\r\n \"platform.backend.agro_origination_links\": \"Links\",\r\n \"agro.angular_components.fantasy_name\": \"Trade name\",\r\n \"platform.backend.agro_origination_operation_versus_transaction_link\": \"Operation vs transaction link\",\r\n \"platform.backend.menu_event_control\": \"Event/Integration Query\",\r\n \"agro.angular_components.company_search_label\": \"Search Company\",\r\n \"agro.angular_components.company_tooltip\": \"Select a company to proceed\",\r\n \"agro.angular_components.branch_search_label\": \"Search Branch\",\r\n \"agro.angular_components.branch_tooltip\": \"Find the company's branches\",\r\n \"agro.angular_components.dash\": \"-\",\r\n \"agro.angular_components.ticket_tooltip\": \"Add the ticket number to specify in the search\",\r\n \"agro.angular_components.ticket_search_label\": \"Search Ticket\",\r\n \"agro.angular_components.kilogram_unit_label\": \"KG\",\r\n \"agro.angular_components.event_list_header\": \"Event List\",\r\n \"agro.angular_components.ticket_event\": \"Ticket Issuance\",\r\n \"agro.angular_components.provisional_event\": \"Provisional balance\",\r\n \"agro.angular_components.effective_event\": \"Effective balance\",\r\n \"agro.angular_components.effective_confirmation_event\": \"Effective balance confirmation\",\r\n \"agro.angular_components.remove_provisional_event\": \"Remove Provisional Balance\",\r\n \"agro.angular_components.canceled\": \"Canceled\",\r\n \"agro.angular_components.label_number\": \"Ticket\",\r\n \"agro.angular_components.cnpj\": \"CNPJ\",\r\n \"agro.angular_components.label_city\": \"City\",\r\n \"agro.angular_components.menu_event_control\": \"Event/Integration Query\"\r\n};\r\nexport default enUS;","const esCO = {\r\n \"agro.angular_components.table_empty_description\": \"Ajuste los filtros arriba para generar otros resultados de búsqueda\",\r\n \"agro.angular_components.nothing_found\": \"No se encontraron registros\",\r\n \"agro.angular_components.panel_title_events_events\": \"Eventos\",\r\n \"agro.angular_components.refresh\": \"Actualizar\",\r\n \"agro.angular_components.event_control_header\": \"Consulta de eventos/integraciones\",\r\n \"agro.angular_components.no\": \"No\",\r\n \"agro.angular_components.yes\": \"Sí\",\r\n \"agro.angular_components.event_modal_title\": \"Reprocesamiento de Eventos\",\r\n \"agro.angular_components.event_modal\": \"¿Desea reprocesar el evento?\",\r\n \"agro.angular_components.reprocess_event\": \"Reprocesar evento\",\r\n \"agro.angular_components.events_close\": \"Cerrar\",\r\n \"agro.angular_components.event_error_message\": \"Mensaje de error\",\r\n \"agro.angular_components.last_update_date\": \"Última actualización\",\r\n \"agro.angular_components.show_event_details\": \"Detalles del evento\",\r\n \"agro.angular_components.pending\": \"Pendiente\",\r\n \"agro.angular_components.processing\": \"Procesando\",\r\n \"agro.angular_components.panel_title_events_ended_with_error\": \"Fallo\",\r\n \"agro.angular_components.tickets\": \"Tickets\",\r\n \"agro.angular_components.rural_estate\": \"Propiedad Rural\",\r\n \"agro.angular_components.change_request_event_summary\": \"Cambio de \\nPesaje\",\r\n \"agro.angular_components.ticket_maintenance_header\": \"Mantenimiento de ticket\",\r\n \"agro.angular_components.invoice_creating_event\": \"Emisión de Factura\",\r\n \"agro.angular_components.balance_entry_control_event\": \"Entrada/salida balanza\",\r\n \"agro.angular_components.event_origin_label\": \"Origen del evento\",\r\n \"agro.angular_components.event_details_header\": \"Detalles del Evento\",\r\n \"agro.angular_components.registers_found\": \"{{total}} registro(s) encontrado(s)\",\r\n \"agro.angular_components.change_request_event\": \"Cambio de Pesaje\",\r\n \"agro.angular_components.status_label\": \"Estado\",\r\n \"agro.angular_components.panel_title_events_completed_successfully\": \"Éxito\",\r\n \"agro.angular_components.supplier\": \"Proveedor\",\r\n \"agro.angular_components.ticket\": \"Ticket\",\r\n \"agro.angular_components.company\": \"Empresa\",\r\n \"agro.angular_components.label_branch\": \"Sucursal\",\r\n \"agro.angular_components.event_sidebar_title\": \"Evento - {{event}}\",\r\n \"agro.angular_components.reprocessing_event_message_title\": \"Reprocesando Evento\",\r\n \"agro.angular_components.reprocessing_event_message_description\": \"El evento seleccionado está siendo reprocesado.\",\r\n \"agro.angular_components.error_reprocessing_event_message_title\": \"Error al reprocesar evento\",\r\n \"agro.angular_components.error_reprocessing_event_message_description\": \"Hubo un error al reprocesar el evento. Intente nuevamente más tarde.\",\r\n \"agro.angular_components.actions\": \"Acciones\",\r\n \"agro.angular_components.add\": \"Agregar\",\r\n \"agro.angular_components.at_date\": \"En la fecha\",\r\n \"agro.angular_components.at_time\": \"En la hora\",\r\n \"agro.angular_components.cancel\": \"Cancelar\",\r\n \"agro.angular_components.clear\": \"Limpiar\",\r\n \"agro.angular_components.created_by\": \"Creado por\",\r\n \"agro.angular_components.delete\": \"Eliminar\",\r\n \"agro.angular_components.delete_confirmation_message\": \"¿Está seguro de que desea eliminar este ítem?\",\r\n \"agro.angular_components.delete_confirmation_title\": \"Confirmación de eliminación\",\r\n \"agro.angular_components.deleted_message_content\": \"Ítem eliminado con éxito\",\r\n \"agro.angular_components.deleted_message_title\": \"Eliminación realizada\",\r\n \"agro.angular_components.e_070_emp_cod_emp\": \"Código de la empresa\",\r\n \"agro.angular_components.e_070_emp_created_by\": \"Creado por\",\r\n \"agro.angular_components.e_070_emp_created_date\": \"Fecha de creación\",\r\n \"agro.angular_components.e_070_emp_id\": \"Id\",\r\n \"agro.angular_components.e_070_emp_last_modified_by\": \"Última modificación por\",\r\n \"agro.angular_components.e_070_emp_last_modified_date\": \"Fecha de la última modificación\",\r\n \"agro.angular_components.e_070_emp_nom_emp\": \"Nombre de la empresa\",\r\n \"agro.angular_components.e_070_emp_sig_emp\": \"Nombre comercial / Sigla de la empresa\",\r\n \"agro.angular_components.e_070_fil_cid_fil\": \"Ciudad\",\r\n \"agro.angular_components.e_070_fil_cod_fil\": \"Código de la sucursal\",\r\n \"agro.angular_components.e_070_fil_created_by\": \"Creado por\",\r\n \"agro.angular_components.e_070_fil_created_date\": \"Fecha de creación\",\r\n \"agro.angular_components.e_070_fil_id\": \"Id\",\r\n \"agro.angular_components.e_070_fil_last_modified_by\": \"Última modificación por\",\r\n \"agro.angular_components.e_070_fil_last_modified_date\": \"Fecha de la última modificación\",\r\n \"agro.angular_components.e_070_fil_nom_fil\": \"Nombre de la sucursal\",\r\n \"agro.angular_components.e_070_fil_num_cgc\": \"CNPJ\",\r\n \"agro.angular_components.e_070_fil_num_fon\": \"Número de Teléfono\",\r\n \"agro.angular_components.e_070_fil_sig_fil\": \"Nombre comercial de la sucursal\",\r\n \"agro.angular_components.edit\": \"Editar\",\r\n \"agro.angular_components.error_forbidden_description\": \"No tiene permiso para acceder a este recurso\",\r\n \"agro.angular_components.error_forbidden_title\": \"Acceso denegado\",\r\n \"agro.angular_components.error_invalid\": \"Valor inválido\",\r\n \"agro.angular_components.error_max_length\": \"El valor máximo de caracteres es {0}\",\r\n \"agro.angular_components.error_max_value\": \"El valor máximo es {0}\",\r\n \"agro.angular_components.error_min_length\": \"El valor mínimo de caracteres es {0}\",\r\n \"agro.angular_components.error_min_value\": \"El valor mínimo es {0}\",\r\n \"agro.angular_components.error_not_found_description\": \"El recurso solicitado no fue encontrado\",\r\n \"agro.angular_components.error_not_found_title\": \"No encontrado\",\r\n \"agro.angular_components.error_required\": \"Campo obligatorio\",\r\n \"agro.angular_components.error_server_description\": \"Ocurrió un error al procesar su solicitud. Por favor, intente nuevamente\",\r\n \"agro.angular_components.error_server_title\": \"Error en el servidor\",\r\n \"agro.angular_components.error_server_try_again\": \"Intente nuevamente\",\r\n \"agro.angular_components.error_unauthorized_description\": \"No está autorizado para acceder a este recurso\",\r\n \"agro.angular_components.error_unauthorized_title\": \"No autorizado\",\r\n \"agro.angular_components.event_control\": \"Control de eventos\",\r\n \"agro.angular_components.event_control_created_by\": \"Creado por\",\r\n \"agro.angular_components.event_control_created_date\": \"Fecha de creación\",\r\n \"agro.angular_components.event_control_e_070_emp\": \"Empresa\",\r\n \"agro.angular_components.event_control_e_070_emp_search_title\": \"Seleccione la empresa\",\r\n \"agro.angular_components.event_control_e_070_fil\": \"Sucursal\",\r\n \"agro.angular_components.event_control_e_070_fil_search_title\": \"Seleccione la sucursal\",\r\n \"agro.angular_components.event_control_empty_state_description\": \"No se encontraron registros\",\r\n \"agro.angular_components.event_control_empty_state_title\": \"No se encontraron registros\",\r\n \"agro.angular_components.event_control_event_origin\": \"Origen del evento\",\r\n \"agro.angular_components.event_control_event_origin_placeholder\": \"Seleccione el origen del evento\",\r\n \"agro.angular_components.event_control_external_id\": \"Id externo\",\r\n \"agro.angular_components.event_control_form_general_title\": \"General\",\r\n \"agro.angular_components.event_control_form_title\": \"Control de eventos\",\r\n \"agro.angular_components.event_control_id\": \"Id de la entidad\",\r\n \"agro.angular_components.event_control_item\": \"Ítems del control de eventos\",\r\n \"agro.angular_components.event_control_item_created_by\": \"Creado por\",\r\n \"agro.angular_components.event_control_item_created_date\": \"Fecha de creación\",\r\n \"agro.angular_components.event_control_item_empty_state_description\": \"No se encontraron registros\",\r\n \"agro.angular_components.event_control_item_empty_state_title\": \"No se encontraron registros\",\r\n \"agro.angular_components.event_control_item_event_control\": \"eventControlId\",\r\n \"agro.angular_components.event_control_item_event_control_search_title\": \"Seleccione el control de eventos\",\r\n \"agro.angular_components.event_control_item_event_group\": \"Grupo del evento\",\r\n \"agro.angular_components.event_control_item_event_operation\": \"Tipo de operación del evento\",\r\n \"agro.angular_components.event_control_item_event_operation_placeholder\": \"Seleccione el tipo de operación del evento\",\r\n \"agro.angular_components.event_control_item_form_general_title\": \"General\",\r\n \"agro.angular_components.event_control_item_form_title\": \"Ítems del control de eventos\",\r\n \"agro.angular_components.event_control_item_id\": \"Id de la entidad\",\r\n \"agro.angular_components.event_control_item_last_modified_by\": \"Última modificación por\",\r\n \"agro.angular_components.event_control_item_last_modified_date\": \"Fecha de la última modificación\",\r\n \"agro.angular_components.event_control_item_list_grid_title\": \"Ítems del control de eventos\",\r\n \"agro.angular_components.event_control_item_list_title\": \"Ítems del control de eventos\",\r\n \"agro.angular_components.event_control_item_message\": \"Mensaje de evento\",\r\n \"agro.angular_components.event_control_item_param\": \"Parámetros del evento\",\r\n \"agro.angular_components.event_control_item_request\": \"Solicitud recibida\",\r\n \"agro.angular_components.event_control_item_response\": \"Respuesta enviada\",\r\n \"agro.angular_components.event_control_item_sequence\": \"Secuencia del evento\",\r\n \"agro.angular_components.event_control_item_status\": \"Estado del evento\",\r\n \"agro.angular_components.event_control_item_status_placeholder\": \"Seleccione el estado del evento\",\r\n \"agro.angular_components.event_control_last_modified_by\": \"Última modificación por\",\r\n \"agro.angular_components.event_control_last_modified_date\": \"Fecha de la última modificación\",\r\n \"agro.angular_components.event_control_list_grid_title\": \"Control de eventos\",\r\n \"agro.angular_components.event_control_list_title\": \"Control de eventos\",\r\n \"agro.angular_components.event_operation_change_request\": \"Solicitud de cambio\",\r\n \"agro.angular_components.event_operation_change_response\": \"Respuesta de cambio\",\r\n \"agro.angular_components.event_operation_effective\": \"Efectivo\",\r\n \"agro.angular_components.event_operation_effective_confirmation\": \"Confirmación de efectividad\",\r\n \"agro.angular_components.event_operation_invoice_closing\": \"Cierre de factura\",\r\n \"agro.angular_components.event_operation_invoice_creating\": \"Creación de factura\",\r\n \"agro.angular_components.event_operation_invoice_installments\": \"Parcelamiento de factura\",\r\n \"agro.angular_components.event_operation_provesional\": \"Saldo Provisional\",\r\n \"agro.angular_components.event_operation_remove_provisional\": \"Eliminación de Saldo provisional\",\r\n \"agro.angular_components.event_operation_ticket\": \"Ticket\",\r\n \"agro.angular_components.event_origin_balance_entry_control\": \"Control de entrada/salida de saldo\",\r\n \"agro.angular_components.event_origin_change_request\": \"Solicitud de cambio\",\r\n \"agro.angular_components.event_origin_invoice\": \"Factura\",\r\n \"agro.angular_components.event_origin_ticket\": \"Ticket\",\r\n \"agro.angular_components.event_status_canceled\": \"Cancelado\",\r\n \"agro.angular_components.event_status_failed\": \"Fallo\",\r\n \"agro.angular_components.event_status_pending\": \"Pendiente\",\r\n \"agro.angular_components.event_status_processing\": \"Procesado\",\r\n \"agro.angular_components.event_status_success\": \"Éxito\",\r\n \"agro.angular_components.filter\": \"Filtrar\",\r\n \"agro.angular_components.filters\": \"Filtros\",\r\n \"agro.angular_components.list_grid_empty_field\": \"No se encontraron registros\",\r\n \"agro.angular_components.product_header_title\": \"Eventos\",\r\n \"agro.angular_components.save\": \"Guardar\",\r\n \"agro.angular_components.select\": \"Seleccione\",\r\n \"agro.angular_components.updated_by\": \"Actualizado por\",\r\n \"error_invalid\": \"Valor inválido\",\r\n \"agro.angular_components.choose_label\": \"Elegir\",\r\n \"agro.angular_components.remove_label\": \"Eliminar\",\r\n \"agro.angular_components.cancel_label\": \"Cancelar\",\r\n \"agro.angular_components.success_tooltip\": \"Éxito\",\r\n \"agro.angular_components.menu_agro_events\": \"Eventos del Agro\",\r\n \"agro.angular_components.date\": \"Fecha\",\r\n \"agro.angular_components.label_code_branch\": \"Código de la sucursal\",\r\n \"agro.angular_components.label_code_company\": \"Código de la empresa\",\r\n \"agro.angular_components.label_code_deposit\": \"Código del depósito\",\r\n \"agro.angular_components.label_code\": \"Código\",\r\n \"agro.angular_components.label_company\": \"Empresa\",\r\n \"platform.backend.agro_origination_entry_control\": \"Control de entrada/salida vía balanza\",\r\n \"platform.backend.agro_origination_entry_exit_query\": \"Consulta de entrada/salida\",\r\n \"platform.backend.agro_origination_links\": \"Enlaces\",\r\n \"agro.angular_components.fantasy_name\": \"Nombre comercial\",\r\n \"platform.backend.agro_origination_operation_versus_transaction_link\": \"Enlace operación x transacción\",\r\n \"platform.backend.menu_event_control\": \"Consulta de eventos/integraciones\",\r\n \"agro.angular_components.company_search_label\": \"Consultar Empresa\",\r\n \"agro.angular_components.company_tooltip\": \"Seleccione una empresa para continuar\",\r\n \"agro.angular_components.branch_search_label\": \"Consultar Sucursal\",\r\n \"agro.angular_components.branch_tooltip\": \"Encuentre las sucursales de la empresa\",\r\n \"agro.angular_components.dash\": \"-\",\r\n \"agro.angular_components.ticket_tooltip\": \"Agregue el número del ticket para especificar en la búsqueda\",\r\n \"agro.angular_components.ticket_search_label\": \"Consultar Ticket\",\r\n \"agro.angular_components.kilogram_unit_label\": \"KG\",\r\n \"agro.angular_components.event_list_header\": \"Lista de Eventos\",\r\n \"agro.angular_components.ticket_event\": \"Emisión del Ticket\",\r\n \"agro.angular_components.provisional_event\": \"Saldo provisional\",\r\n \"agro.angular_components.effective_event\": \"Saldo efectivo\",\r\n \"agro.angular_components.effective_confirmation_event\": \"Confirmación saldo efectivo\",\r\n \"agro.angular_components.remove_provisional_event\": \"Eliminar Saldo Provisional\",\r\n \"agro.angular_components.canceled\": \"Cancelado\",\r\n \"agro.angular_components.label_number\": \"Ticket\",\r\n \"agro.angular_components.cnpj\": \"CNPJ\",\r\n \"agro.angular_components.label_city\": \"Ciudad\",\r\n \"agro.angular_components.menu_event_control\": \"Consulta de eventos/integraciones\"\r\n};\r\nexport default esCO;","import { Injectable } from \"@angular/core\";\r\nimport ptBR from \"./i18n/pt-BR\";\r\nimport enUS from \"./i18n/en-US\";\r\nimport esCO from \"./i18n/es-CO\";\r\nimport { Observable, of } from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class LibTranslationService {\r\n private availableTranslations: { [key: string]: any } = {\r\n \"pt-BR\": ptBR,\r\n \"en-US\": enUS,\r\n \"es-CO\": esCO,\r\n };\r\n\r\n private currentTranslation: Record<string, any> = {};\r\n\r\n constructor() {\r\n this.setLang(\"pt-BR\");\r\n }\r\n\r\n setLang(lang: string): void {\r\n this.currentTranslation = this.availableTranslations[lang] || {};\r\n }\r\n\r\n public instant(key: string, interpolateParams?: { [key: string]: any }): string {\r\n let translation = this.currentTranslation[key] || key;\r\n\r\n if (interpolateParams) {\r\n Object.keys(interpolateParams).forEach((param) => {\r\n translation = translation.replace(new RegExp(`{${param}}`, \"g\"), interpolateParams[param]);\r\n });\r\n }\r\n\r\n return translation;\r\n }\r\n\r\n /**\r\n * Gets the translated value of a key (or an array of keys)\r\n * @returns the translated key, or an object of translated keys\r\n */\r\n get(key: string | Array<string>, interpolateParams?: Object): Observable<string | any> {\r\n if (Array.isArray(key)) {\r\n const translations: { [key: string]: string } = {};\r\n key.forEach((k) => {\r\n translations[k] = this.instant(k, interpolateParams);\r\n });\r\n return of(translations);\r\n } else {\r\n return of(this.instant(key, interpolateParams));\r\n }\r\n }\r\n}\r\n","export const LookupErrorMessages: { [key: string]: string } = {\r\n required: 'agro.angular_components.error_required',\r\n min: 'agro.angular_components.error_min_value',\r\n max: 'agro.angular_components.error_max_value',\r\n minlength: 'agro.angular_components.error_min_length',\r\n maxlength: 'agro.angular_components.error_max_length',\r\n pattern: 'agro.angular_components.error_invalid',\r\n FormDateError_data1: 'agro.angular_components.initial_invalid_date',\r\n FormDateError_data2: 'agro.angular_components.end_invalid_date'\r\n};\r\n","import { user as userService } from '@seniorsistemas/senior-platform-data';\r\n\r\nexport class PaginatorStorageService {\r\n private GET_USER_ID = userService.getUserData().then((user) => user.id);\r\n private PAGINATOR_KEY = 'SENIOR_PAGINATOR';\r\n\r\n public async store(key: string, value: any) {\r\n sessionStorage.setItem(`${await this.GET_USER_ID}_${key}`, JSON.stringify(value));\r\n }\r\n\r\n public async get(key: string) {\r\n return JSON.parse(sessionStorage.getItem(`${await this.GET_USER_ID}_${key}`) || '') || {};\r\n }\r\n\r\n public async storePaginator(key: string, listParams: any = {}) {\r\n const store = (await this.get(this.PAGINATOR_KEY)) || {};\r\n store[key] = listParams;\r\n await this.store(this.PAGINATOR_KEY, store);\r\n }\r\n\r\n public async getPaginator(key: string) {\r\n const store = (await this.get(this.PAGINATOR_KEY)) || {};\r\n return store[key] || {};\r\n }\r\n}\r\n","export enum EventStatus {\r\n PENDING = 'PENDING',\r\n PROCESSING = 'PROCESSING',\r\n SUCCESS = 'SUCCESS',\r\n FAILED = 'FAILED',\r\n CANCELED = 'CANCELED'\r\n}\r\n","export enum EventOperation {\r\n PROVISIONAL = 'PROVISIONAL',\r\n EFFECTIVE = 'EFFECTIVE',\r\n TICKET = 'TICKET',\r\n CREATE_INVOICE = 'CREATE_INVOICE',\r\n EFFECTIVE_CONFIRMATION = 'EFFECTIVE_CONFIRMATION',\r\n REMOVE_PROVISIONAL = 'REMOVE_PROVISIONAL',\r\n CHANGE_REQUEST = 'CHANGE_REQUEST',\r\n CHANGE_RESPONSE = 'CHANGE_RESPONSE',\r\n PROCESS_FIXATION = 'PROCESS_FIXATION',\r\n}\r\n","export enum EventOrigin {\r\n BALANCE_ENTRY_CONTROL = 'BALANCE_ENTRY_CONTROL',\r\n TICKET = 'TICKET',\r\n INVOICE = 'INVOICE',\r\n CHANGE_REQUEST = 'CHANGE_REQUEST',\r\n CREATE_INVOICE = 'CREATE_INVOICE',\r\n}\r\n","import { EventOperation } from \"./event-operation\";\r\nimport { EventOrigin } from \"./event-origin\";\r\nimport { EventStatus } from \"./event-status\";\r\n\r\nexport const eventOrigin = [\r\n { label: \"agro.angular_components.balance_entry_control_event\", value: EventOrigin.BALANCE_ENTRY_CONTROL },\r\n { label: \"agro.angular_components.invoice_creating_event\", value: EventOrigin.INVOICE },\r\n { label: \"agro.angular_components.ticket_maintenance_header\", value: EventOrigin.TICKET },\r\n { label: \"agro.angular_components.change_request_event_summary\", value: EventOrigin.CHANGE_REQUEST }\r\n];\r\n\r\nexport const eventItem = [\r\n { label: \"agro.angular_components.ticket_event\", value: EventOperation.TICKET },\r\n { label: \"agro.angular_components.provisional_event\", value: EventOperation.PROVISIONAL },\r\n { label: \"agro.angular_components.invoice_creating_event\", value: EventOperation.CREATE_INVOICE },\r\n { label: \"agro.angular_components.remove_provisional_event\", value: EventOperation.REMOVE_PROVISIONAL },\r\n { label: \"agro.angular_components.effective_event\", value: EventOperation.EFFECTIVE },\r\n { label: \"agro.angular_components.effective_confirmation_event\", value: EventOperation.EFFECTIVE_CONFIRMATION },\r\n { label: \"agro.angular_components.change_request_event_summary\", value: EventOperation.CHANGE_REQUEST },\r\n { label: \"agro.angular_components.change_response_event\", value: EventOperation.CHANGE_RESPONSE },\r\n { label: \"agro.angular_components.process_fixation_event\", value: EventOperation.PROCESS_FIXATION }\r\n];\r\n\r\nexport const eventStatus = [\r\n { label: \"agro.angular_components.panel_title_events_completed_successfully\", value: EventStatus.SUCCESS },\r\n { label: \"agro.angular_components.panel_title_events_ended_with_error\", value: EventStatus.FAILED },\r\n { label: \"agro.angular_components.pending\", value: EventStatus.PENDING },\r\n { label: \"agro.angular_components.processing\", value: EventStatus.PROCESSING },\r\n { label: \"agro.angular_components.canceled\", value: EventStatus.CANCELED }\r\n];\r\n","import { HttpParams, HttpClient } from \"@angular/common/http\";\r\nimport { MessageService, SortMeta } from \"primeng\";\r\nimport { throwError } from \"rxjs\";\r\nimport { catchError } from \"rxjs/operators\";\r\nimport { LibTranslationService } from \"../../../services/lib-translation.service\";\r\n\r\n\r\nexport class EntityService<T> {\r\n constructor(\r\n protected http: HttpClient,\r\n protected messageService: MessageService,\r\n protected entityUrl: string,\r\n protected actionsUrl: string,\r\n protected queriesUrl: string,\r\n protected translate: LibTranslationService\r\n ) {\r\n this.http = http;\r\n this.messageService = messageService;\r\n this.entityUrl = entityUrl;\r\n this.actionsUrl = actionsUrl;\r\n this.queriesUrl = queriesUrl;\r\n this.translate = translate;\r\n\r\n this.defaultCatch = this.defaultCatch.bind(this);\r\n }\r\n\r\n public getListQueryParams(listParams: ListParams) {\r\n const ten = 10;\r\n const { page = 0, size = ten, sort = [], filterQuery = \"\", displayFields = [] } = listParams;\r\n\r\n let params = new HttpParams();\r\n params = params.append(\"size\", String(size));\r\n params = params.append(\"offset\", String(page));\r\n\r\n if (sort && sort.length) {\r\n params = params.append(\r\n \"orderby\",\r\n sort\r\n .map(this.getBodyFilters())\r\n .join(\", \")\r\n );\r\n }\r\n\r\n if (filterQuery) {\r\n params = params.append(\"filter\", filterQuery);\r\n }\r\n\r\n if (displayFields && displayFields.length) {\r\n params = params.append(\"displayfields\", displayFields.join());\r\n }\r\n\r\n return params;\r\n }\r\n\r\n private getBodyParams(listParams: ListParams): BodyParams {\r\n const ten = 10;\r\n const { page = 0, size = ten, sort = [], filterQuery = \"\", displayFields = [] } = listParams;\r\n const bodyParams: BodyParams = {};\r\n\r\n bodyParams.size = size;\r\n bodyParams.offset = page;\r\n\r\n if (sort && sort.length) {\r\n bodyParams.orderBy = sort\r\n .map(this.getBodyFilters())\r\n .join(\", \");\r\n }\r\n\r\n if (filterQuery) {\r\n bodyParams.filter = filterQuery;\r\n }\r\n\r\n if (displayFields && displayFields.length) {\r\n bodyParams.displayfields = displayFields.join();\r\n }\r\n\r\n return bodyParams;\r\n }\r\n\r\n private getBodyFilters(): (value: SortMeta, index: number, array: SortMeta[]) => string {\r\n return s => {\r\n let order = \"\";\r\n if (s.order === 1) {\r\n order = \" asc\";\r\n }\r\n if (s.order === -1) {\r\n order = \" desc\";\r\n }\r\n return `${s.field}${order}`;\r\n };\r\n }\r\n\r\n public defaultCatch(errorMsgs: ErrorMessage[] = []) {\r\n const unauthorized_401 = 401;\r\n errorMsgs = [...errorMsgs];\r\n const zero = 0;\r\n return catchError((err: any) => {\r\n if (err) {\r\n const errorMessage = errorMsgs.find((eMsg) => eMsg.status === err?.status || zero);\r\n let summary = err.status ? String(err.status) : \"Error\";\r\n let detail = this.getErrorMessage(err);\r\n\r\n if (err.status === unauthorized_401) {\r\n summary = this.translate.instant(\"agro.angular_components.error_unauthorized_title\");\r\n detail = this.translate.instant(\"agro.angular_components.error_unauthorized_description\");\r\n }\r\n\r\n if (errorMessage) {\r\n summary = errorMessage.summary ? this.translate.instant(errorMessage.summary) : summary;\r\n detail = errorMessage.detail ? this.translate.instant(errorMessage.detail) : detail;\r\n }\r\n\r\n this.messageService.add({\r\n severity: \"error\",\r\n summary,\r\n detail,\r\n });\r\n }\r\n\r\n return throwError(err);\r\n });\r\n }\r\n\r\n public getErrorMessage(err: any) {\r\n if (err.error && err.error.message) {\r\n return err.error.message;\r\n }\r\n if (err.statusText) {\r\n return err.statusText;\r\n }\r\n if (err.message) {\r\n return err.message;\r\n }\r\n return \"Error\";\r\n }\r\n\r\n public list(listParams: ListParams, errorMessage: ErrorMessage[] = []) {\r\n return this.http.get<T[]>(this.entityUrl, { params: this.getListQueryParams(listParams) })\r\n .pipe(this.defaultCatch(errorMessage));\r\n }\r\n\r\n public get(id: any, errorMessage: ErrorMessage[] = []) {\r\n return this.http.get<T>(`${this.entityUrl}/${id}`).pipe(this.defaultCatch(errorMessage));\r\n }\r\n\r\n public insert(entity: T, errorMessage: ErrorMessage[] = []) {\r\n return this.http.post<T>(`${this.entityUrl}`, entity).pipe(this.defaultCatch(errorMessage));\r\n }\r\n\r\n public update(id: any, entity: T, errorMessage: ErrorMessage[] = []) {\r\n return this.http.put<T>(`${this.entityUrl}/${id}`, entity).pipe(this.defaultCatch(errorMessage));\r\n }\r\n\r\n public delete(id: any, errorMessage: ErrorMessage[] = []) {\r\n return this.http.delete<T>(`${this.entityUrl}/${id}`).pipe(this.defaultCatch(errorMessage));\r\n }\r\n\r\n public listCustomFilter(listParams: ListParams, action: string, errorMessage: ErrorMessage[] = []) {\r\n return this.http.post<T[]>(`${this.actionsUrl}/${action}`, this.getBodyParams(listParams))\r\n .pipe(this.defaultCatch(errorMessage));\r\n }\r\n}\r\n\r\nexport interface PayloadRequest {\r\n search: RecFiltrosMensagemInfo;\r\n pageRequest: RecPageRequest;\r\n}\r\n\r\nexport interface RecFiltrosMensagemInfo {\r\n titulo: string;\r\n conteudo: string;\r\n}\r\n\r\nexport interface PayloadRequestGrupo {\r\n search: RecFiltrosGrupoProdutor;\r\n pageRequest: RecPageRequest;\r\n}\r\n\r\nexport interface RecFiltrosGrupoProdutor {\r\n nome: string;\r\n}\r\n\r\n\r\nexport interface RecPageRequest {\r\n offset: number;\r\n size: number;\r\n}\r\n\r\nexport interface ListParams {\r\n page?: number;\r\n size?: number;\r\n sort?: SortMeta[];\r\n filterQuery?: string;\r\n displayFields?: string[];\r\n}\r\n\r\nexport interface ListParams {\r\n page?: number;\r\n size?: number;\r\n sort?: SortMeta[];\r\n filterQuery?: string;\r\n displayFields?: string[];\r\n}\r\n\r\nexport interface RecPageRequest {\r\n offset: number;\r\n size: number;\r\n}\r\n\r\nexport interface BodyParams {\r\n offset?: number;\r\n size?: number;\r\n orderBy?: string;\r\n filter?: string;\r\n displayfields?: string;\r\n}\r\n\r\nexport interface ErrorMessage {\r\n status: number;\r\n summary: string;\r\n detail?: string;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { MessageService } from 'primeng/api';\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { EventControlItemDto } from '../event-control-item/event-control-item-dto';\r\nimport { EntityService } from '../entity-service';\r\n\r\n@Injectable()\r\nexport class EventControlItemService extends EntityService<EventControlItemDto> {\r\n\r\n constructor(protected http: HttpClient, protected messageService: MessageService, protected translate: TranslateService) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/agro_events/entities/eventControlItem`,\r\n `agro/agro_events/actions`,\r\n `agro/agro_events/queries`,\r\n translate\r\n );\r\n }\r\n\r\n public reprocessFailedEvent(body: ReprocessFailedEvent) {\r\n return this.http\r\n .post<any>(\r\n `agro/agro_events/signals/reprocessFailedEvent`,\r\n body\r\n )\r\n .pipe(this.defaultCatch());\r\n }\r\n}\r\n\r\nexport interface ReprocessFailedEvent {\r\n eventControlItemId: string;\r\n}\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { MessageService } from 'primeng/api';\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { EventControlDto } from '../event-control/event-control-dto';\r\nimport { EntityService } from '../entity-service';\r\n\r\n@Injectable()\r\nexport class EventControlService extends EntityService<EventControlDto> {\r\n\r\n constructor(protected http: HttpClient, protected messageService: MessageService, protected translate: TranslateService) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/agro_events/entities/eventControl`,\r\n `agro/agro_events/actions`,\r\n `agro/agro_events/queries`,\r\n translate\r\n );\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { MessageService } from 'primeng/api';\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { ProducerInvoiceDto } from '../producer-invoice/producer-invoice-dto';\r\nimport { EntityService } from '../entity-service';\r\n\r\n@Injectable()\r\nexport class ProducerInvoiceService extends EntityService<ProducerInvoiceDto> {\r\n\r\n constructor(protected http: HttpClient, protected messageService: MessageService, protected translate: TranslateService) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/origination/entities/producerInvoice`,\r\n `agro/origination/actions`,\r\n `agro/origination/queries`,\r\n translate\r\n );\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { MessageService } from 'primeng/api';\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { TicketDto } from '../ticket/ticket-dto';\r\nimport { EntityService } from '../entity-service';\r\nimport {Observable} from \"rxjs\";\r\n\r\nexport interface IListMainteinerTicketsPayload {\r\n filter: {\r\n e070emp: string;\r\n e070fil: string;\r\n e001pes?: string;\r\n e113saf?: string;\r\n e075der?: string;\r\n e210dxp?: string;\r\n ticket?: string[];\r\n ruralEstate?: string;\r\n startDate?: string;\r\n endDate?: string;\r\n status?: string;\r\n balanceEntryControlType?: string;\r\n operation?: string;\r\n };\r\n pageRequest: {\r\n offset: number;\r\n size: number;\r\n };\r\n sort: {\r\n field?: string,\r\n order?: number\r\n };\r\n}\r\n\r\n@Injectable()\r\nexport class TicketService extends EntityService<TicketDto> {\r\n\r\n constructor(protected http: HttpClient, protected messageService: MessageService, protected translate: TranslateService) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/origination/entities/ticket`,\r\n `agro/origination/actions`,\r\n `agro/origination/queries`,\r\n translate\r\n );\r\n }\r\n\r\n getTicketSummaryByParent(parent: number) {\r\n return this.http\r\n .post<any>(`${this.queriesUrl}/getTicketSummaryByParent/`, {parent})\r\n .pipe(this.defaultCatch());\r\n }\r\n\r\n listMainteinerTickets(filter: IListMainteinerTicketsPayload) {\r\n return this.http\r\n .post<any>(`${this.queriesUrl}/listMainteinerTickets/`, filter)\r\n .pipe(this.defaultCatch());\r\n }\r\n\r\n searchTotalWeightResultFromTickets(body: any) {\r\n return this.http\r\n .post<any>(`${this.queriesUrl}/searchTotalWeightResultFromTickets/`, body)\r\n .pipe(this.defaultCatch());\r\n }\r\n\r\n cancelTicket(body: any) {\r\n return this.http\r\n .post<any>(`${this.actionsUrl}/cancelTicket/`, body);\r\n }\r\n\r\n mergeTickets(body: any): Observable<any> {\r\n return this.http.post<any>(`${this.actionsUrl}/mergeTickets/`, body).pipe(this.defaultCatch());\r\n }\r\n\r\n unMergeTickets(body: any): Observable<any> {\r\n return this.http.post<any>(`${this.actionsUrl}/unMergeTickets/`, body).pipe(this.defaultCatch());\r\n }\r\n\r\n checkGroupInvoicePermission(body: any) {\r\n return this.http\r\n .post<any>(`${this.queriesUrl}/checkGroupInvoicePermission/`, body)\r\n .pipe(this.defaultCatch());\r\n }\r\n\r\n getContractTickets(tickets: number[]) {\r\n return this.http\r\n .post<any>(`${this.queriesUrl}/getContractTickets/`, { tickets })\r\n .pipe(this.defaultCatch());\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { EventControlItemService } from \"./event-control-item/event-control-item.service\";\r\nimport { EventControlService } from \"./event-control/event-control.service\";\r\nimport { ProducerInvoiceService } from \"./producer-invoice/producer-invoice.service\";\r\nimport { TicketService } from \"./ticket/ticket.service\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class EventControlBoardService {\r\n constructor(\r\n public eventControlService: EventControlService,\r\n public eventControlItemService: EventControlItemService,\r\n public ticketService: TicketService,\r\n public producerInvoiceService: ProducerInvoiceService\r\n ) {}\r\n}\r\n","import { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\r\nimport { catchError, map, switchMap, takeUntil } from \"rxjs/operators\";\r\nimport { forkJoin, Subject } from \"rxjs\";\r\nimport { BadgeColors, ButtonPriority, FieldType, FormField, Step, StepState } from \"@seniorsistemas/angular-components\";\r\nimport { registerLocaleData } from \"@angular/common\";\r\nimport localePt from \"@angular/common/locales/pt\";\r\nimport { Component, Input, LOCALE_ID, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { WebsocketService } from \"../../services/websocket\";\r\nimport { LookupErrorMessages } from \"./common/lookup-error-message.constants\";\r\nimport { ReprocessFailedEvent } from \"./service/event-control-item/event-control-item.service\";\r\nimport { MessageService } from \"primeng\";\r\nimport { PaginatorStorageService } from \"./service/paginator-storage.service\";\r\nimport { EventControlItem } from \"./service/event-control-item/event-control-item\";\r\nimport { EventStatus } from \"./common/event-status\";\r\nimport { eventItem } from \"./common/event-control-constants\";\r\nimport { E070Emp } from \"./service/e070emp/e070emp\";\r\nimport { E070Fil } from \"./service/e070fil/e070fil\";\r\nimport { EventOrigin } from \"./common/event-origin\";\r\nimport { Ticket } from \"./service/ticket/ticket\";\r\nimport { EventControlBoardService } from \"./service/event-control-board.service\";\r\nconst moment = require(\"moment\");\r\nimport { ProducerInvoiceDto } from \"./service/producer-invoice/producer-invoice-dto\";\r\nimport { AGRO_NUMBERS } from \"../../enums/agro-numbers.enum\";\r\nimport { LibTranslationService } from \"../../services/lib-translation.service\";\r\n\r\n@Component({\r\n selector: 'event-control-board',\r\n templateUrl: './event-control-board.component.html',\r\n styleUrls: ['./event-control-board.component.scss'],\r\n providers: [\r\n { provide: LOCALE_ID, useValue: 'pt-BR' }\r\n ]\r\n})\r\nexport class EventControlBoardComponent implements OnInit, OnDestroy, OnChanges {\r\n\r\n @Input() e070emp!: E070Emp;\r\n @Input() e070fil!: E070Fil;\r\n @Input() ticket!: Ticket;\r\n @Input() eventOrigin!: EventOrigin;\r\n @Input() eventStatus!: EventStatus;\r\n @Input() externalId!: string;\r\n @Input() createdDate!: Date;\r\n @Input() standalone!: boolean;\r\n\r\n public producerInvoice!: ProducerInvoiceDto;\r\n\r\n public steps: Step[] = [];\r\n public selectedStep: any;\r\n public eventId!: '';\r\n public showSidebar = false;\r\n public showReprocessButton = false;\r\n public sidebarTitle!: string;\r\n public sidebarLoading!: boolean;\r\n\r\n public filterFormGroup!: FormGroup;\r\n public filterFields!: FormField[];\r\n\r\n public gridData!: any[];\r\n public gridDataResolved!: any[];\r\n public gridColumns!: any[];\r\n public gridTotalRecords = AGRO_NUMBERS.ZERO;\r\n public gridLoading = false;\r\n public displayModal = false;\r\n\r\n public ButtonPriority = ButtonPriority;\r\n public BadgeColors = BadgeColors;\r\n\r\n public permissions: any = {};\r\n public localeConfig: any = {};\r\n\r\n public currentListParams: any = { page: AGRO_NUMBERS.ZERO, size: AGRO_NUMBERS.TEN, sort: [], filterData: {} };\r\n\r\n private readonly ngUnsubscribe = new Subject();\r\n private readonly eventItem = eventItem;\r\n\r\n constructor(\r\n private readonly route: ActivatedRoute,\r\n private readonly translate: LibTranslationService,\r\n private readonly formBuilder: FormBuilder,\r\n private readonly websocketService: WebsocketService,\r\n private readonly eventControlBoardService: EventControlBoardService,\r\n private readonly paginatorStorageService: PaginatorStorageService,\r\n private readonly messageService: MessageService,\r\n ) {\r\n registerLocaleData(localePt);\r\n }\r\n\r\n public async ngOnInit() {\r\n this.route.data.pipe(takeUntil(this.ngUnsubscribe)).subscribe((data: any) => this.onRouteDataChange(data));\r\n this.gridColumns = this.setGridColumns();\r\n\r\n this.websocketService.onConnect();\r\n this.callWebsocket();\r\n }\r\n\r\n public ngOnChanges(changes: SimpleChanges) {\r\n if (!this.filterFormGroup) {\r\n this.initializeFormGroup();\r\n this.setFormFields();\r\n }\r\n\r\n this.updateCompanyAndBranchFormFields(changes);\r\n this.updateEventOriginAndTicketFormFields(changes);\r\n this.updateEventStatusAndCreatedDateFormFields(changes);\r\n this.onSearch();\r\n }\r\n\r\n private updateCompanyAndBranchFormFields(changes: SimpleChanges) {\r\n if (changes.e070emp && changes.e070emp.currentValue !== changes.e070emp.previousValue) {\r\n this.filterFormGroup.get('e070emp')?.setValue(changes.e070emp.currentValue ?? null);\r\n }\r\n\r\n if (changes.e070fil && changes.e070fil.currentValue !== changes.e070fil.previousValue) {\r\n this.filterFormGroup.get('e070fil')?.setValue(changes.e070fil.currentValue ?? null);\r\n }\r\n }\r\n\r\n private updateEventOriginAndTicketFormFields(changes: SimpleChanges) {\r\n if (changes.eventOrigin && changes.eventOrigin.currentValue !== changes.eventOrigin.previousValue) {\r\n this.filterFormGroup.get('eventOrigin')?.setValue(changes.eventOrigin.currentValue ?? null);\r\n }\r\n\r\n if (changes.ticket && changes.ticket.currentValue !== changes.ticket.previousValue) {\r\n this.filterFormGroup.get('number')?.setValue(changes.ticket.currentValue ?? null);\r\n }\r\n }\r\n\r\n private updateEventStatusAndCreatedDateFormFields(changes: SimpleChanges) {\r\n if (changes.eventStatus && changes.eventStatus.currentValue !== changes.eventStatus.previousValue) {\r\n this.filterFormGroup.get('status')?.setValue(changes.eventStatus.currentValue ?? null);\r\n }\r\n\r\n if (changes.createdDate && changes.createdDate.currentValue !== changes.createdDate.previousValue) {\r\n this.filterFormGroup.get('createdDate')?.setValue(changes.createdDate.currentValue ?? null);\r\n }\r\n }\r\n\r\n private initializeFormGroup() {\r\n this.filterFormGroup = this.formBuilder.group({\r\n e070emp: [{ value: this.e070emp ?? null, disabled: false }, Validators.compose([])],\r\n e070fil: [{ value: this.e070fil ?? null, disabled: false }, Validators.compose([])],\r\n number: [{ value: this.ticket ?? null, disabled: false }, Validators.compose([])],\r\n externalId: [{ value: this.externalId ?? null, disabled: false }, Validators.compose([])],\r\n eventOrigin: [{ value: this.eventOrigin ?? null, disabled: false }, Validators.compose([])],\r\n status: [{ value: this.eventStatus ?? null, disabled: false }, Validators.compose([])],\r\n createdDate: [{ value: this.createdDate ?? null, disabled: false }, Validators.compose([])],\r\n });\r\n }\r\n\r\n private setFormFields() {\r\n this.filterFields = [\r\n new FormField({\r\n name: \"e070emp\",\r\n type: FieldType.Chips,\r\n }),\r\n new FormField({\r\n name: \"e070fil\",\r\n type: FieldType.Chips,\r\n }),\r\n new FormField({\r\n name: \"number\",\r\n type: FieldType.Chips,\r\n }),\r\n new FormField({\r\n name: \"externalId\",\r\n type: FieldType.String,\r\n }),\r\n new FormField({\r\n name: \"eventOrigin\",\r\n type: FieldType.Enum,\r\n }),\r\n new FormField({\r\n name: \"status\",\r\n type: FieldType.Enum,\r\n }),\r\n new FormField({\r\n name: \"createdDate\",\r\n type: FieldType.Date,\r\n }),\r\n ];\r\n }\r\n\r\n private setGridColumns() {\r\n return [\r\n { field: 'e070emp', header: this.translate.instant(\"agro.angular_components.company\") },\r\n { field: 'e070fil', header: this.translate.instant(\"agro.angular_components.label_branch\") },\r\n { field: 'eventOrigin', header: this.translate.instant(\"agro.angular_components.event_origin_label\") },\r\n { field: 'number', header: this.translate.instant(\"agro.angular_components.ticket\") },\r\n ];\r\n }\r\n\r\n public ngOnDestroy() {\r\n this.ngUnsubscribe.next();\r\n this.ngUnsubscribe.complete();\r\n this.websocketService.disconnect();\r\n }\r\n\r\n public callWebsocket() {\r\n this.websocketService\r\n .onEvent<any>({\r\n domain: 'agro',\r\n service: 'agro_events',\r\n primitive: \"processedEvent\",\r\n })\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe(() => {\r\n const filterData = this.filterFormGroup.getRawValue();\r\n this.updateGrid({ filterData });\r\n });\r\n\r\n this.websocketService\r\n .onEvent<any>({\r\n domain: 'platform',\r\n service: 'notifications',\r\n primitive: \"userNotified\",\r\n })\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe(() => {\r\n const filterData = this.filterFormGroup.getRawValue();\r\n this.updateGrid({ filterData });\r\n });\r\n }\r\n\r\n public onSearch() {\r\n const filterData = this.filterFormGroup.getRawValue();\r\n this.gridLoading = true;\r\n this.resetGrid({ filterData });\r\n this.updateGrid({ filterData });\r\n }\r\n\r\n public onRouteDataChange(data: any) {\r\n this.permissions = data.allPermissions;\r\n this.localeConfig = data.localeConfig;\r\n }\r\n\r\n public resetGrid(listParams?: any) {\r\n if (listParams) {\r\n this.currentListParams = { ...this.currentListParams, ...listParams };\r\n }\r\n this.currentListParams.page = AGRO_NUMBERS.ZERO;\r\n }\r\n\r\n private updateGrid(listParams: any = {}) {\r\n this.currentListParams = { ...this.currentListParams, ...listParams };\r\n const { page, size } = this.currentListParams;\r\n const nSort = this.getSortedFields();\r\n const filterQuery = this.getFilterQuery();\r\n\r\n const displayFields = [\"\"];\r\n\r\n this.eventControlBoardService.eventControlService\r\n .list({ sort: nSort, page, size, filterQuery, displayFields })\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n catchError((err: any) => {\r\n this.gridLoading = false;\r\n throw err;\r\n }),\r\n )\r\n .subscribe((list: any) => this.handleListResponse(list));\r\n }\r\n\r\n private getSortedFields(): any[] {\r\n let nSort: any[] = [];\r\n if (this.currentListParams.sort?.length > 0) {\r\n nSort = JSON.parse(JSON.stringify(this.currentListParams.sort));\r\n nSort.forEach((sortItem: any) => {\r\n sortItem.field = this.getFieldNameForSortRequest(sortItem.field);\r\n });\r\n } else {\r\n nSort.push({ field: 'lastModifiedDate', order: AGRO_NUMBERS.MINUSONE });\r\n }\r\n return nSort;\r\n }\r\n\r\n private getFilterQuery(): string {\r\n const { filterData } = this.currentListParams;\r\n const filterJson: any = { filter: {} };\r\n return [...this.filterFields]\r\n .filter(({ name }: any) => filterData && filterData[name] !== undefined && filterData[name] !== null && filterData[name].length !== 0)\r\n .map((formField) => {\r\n const lookupFieldName = 'id';\r\n const finalFilterName = formField.name ?? '';\r\n filterJson.filter[finalFilterName] = filterData[finalFilterName].id;\r\n return this.createFilterString(finalFilterName, formField.type as any, filterData[finalFilterName], lookupFieldName);\r\n })\r\n .filter((filter) => filter !== null && filter !== '' && filter !== undefined)\r\n .join(' and ');\r\n }\r\n\r\n private handleListResponse(list: any) {\r\n this.gridData = list.contents;\r\n this.gridTotalRecords = list.totalElements;\r\n if (!this.gridData || this.gridData.length <= AGRO_NUMBERS.ZERO) {\r\n this.gridLoading = false;\r\n return;\r\n }\r\n this.processDetailCalls();\r\n }\r\n\r\n private processDetailCalls() {\r\n const detailCalls$ = this.gridData.map((item: any) =>\r\n this.eventControlBoardService.eventControlItemService.list({\r\n filterQuery: `eventControl eq '${item.id}'`,\r\n sort: [{ field: 'sequence', order: AGRO_NUMBERS.ONE }],\r\n size: AGRO_NUMBERS.ONE_HUNDRED\r\n })\r\n .pipe(\r\n takeUntil(this.ngUnsubscribe),\r\n catchError((err: any) => {\r\n this.gridLoading = false;\r\n throw err;\r\n }),\r\n switchMap(detailsResponse => {\r\n return this.eventControlBoardService.ticketService.list({\r\n filterQuery: `id eq '${item.externalId}' or balanceEntryControl.id eq '${item.externalId}'`,\r\n displayFields: ['number']\r\n })\r\n .pipe(\r\n map((ticketResponse: any) => ({ detailsResponse, ticketResponse })),\r\n catchError((err: any) => {\r\n this.gridLoading = false;\r\n throw err;\r\n })\r\n );\r\n })\r\n )\r\n );\r\n forkJoin(detailCalls$).subscribe((responses: any[]) => {\r\n this.processDetailsResponses(responses);\r\n });\r\n }\r\n\r\n private processDetailsResponses(detailsResponses: any[]) {\r\n this.gridData.forEach((item, index) => {\r\n const { detailsResponse, ticketResponse } = detailsResponses[index];\r\n\r\n const tickets = ticketResponse?.contents ?? [];\r\n item.details = detailsResponse?.contents ?? [];\r\n item.tickets = tickets.map((ticket: { number: any; }) => ticket.number).join(', ');\r\n\r\n const groupedDetails = this.groupByEventGroup(item.details);\r\n\r\n item.groups = Object.keys(groupedDetails).map(eventGroupId => {\r\n const groupDetails = groupedDetails[eventGroupId];\r\n const lastActiveIndex = groupDetails.map((detail: { status: string; }) =>\r\n detail.status !== EventStatus.PENDING).lastIndexOf(true);\r\n\r\n let activeIndex = lastActiveIndex;\r\n if (lastActiveIndex !== -1 && groupDetails[lastActiveIndex].status === EventStatus.SUCCESS) {\r\n activeIndex = lastActiveIndex + 1;\r\n }\r\n\r\n const steps = groupDetails.map((detail: EventControlItem, detailIndex: any) => {\r\n return {\r\n item: detail,\r\n ticket: item.tickets,\r\n eventType: detail.eventControl.eventOrigin,\r\n label: this.getEventLabel(detail),\r\n disabled: detail.status === EventStatus.PENDING && detailIndex !== activeIndex,\r\n tooltip: this.getEventLabel(detail),\r\n state: this.determineStepState(detail),\r\n };\r\n });\r\n\r\n return {\r\n eventGroupId,\r\n steps,\r\n activeIndex\r\n };\r\n });\r\n\r\n item.activeIndex = item.groups.length > 0 ? item.groups[0].activeIndex : -1;\r\n });\r\n this.gridDataResolved = this.gridData;\r\n this.gridLoading = false;\r\n }\r\n\r\n private groupByEventGroup(details: any[]) {\r\n return details.reduce((acc, detail) => {\r\n const eventGroupId = detail.eventGroup;\r\n if (!acc[eventGroupId]) {\r\n acc[eventGroupId] = [];\r\n }\r\n acc[eventGroupId].push(detail);\r\n return acc;\r\n }, {} as { [key: string]: any[] });\r\n }\r\n\r\n private determineStepState(detail: { status: EventStatus }): StepState {\r\n let state;\r\n if (detail.status === EventStatus.SUCCESS) {\r\n state = StepState.Success;\r\n } else if (detail.status === EventStatus.FAILED) {\r\n state = StepState.Warning;\r\n } else {\r\n state = StepState.Default;\r\n }\r\n return state;\r\n }\r\n\r\n private getEventLabel(detail: any): string {\r\n const eventLabel = this.eventItem.find(e => e.value === detail.eventOperation)?.label;\r\n return eventLabel ? this.translate.instant(eventLabel) : detail.eventOperation;\r\n }\r\n\r\n private getFieldNameForSortRequest(name: string): string {\r\n switch (name) {\r\n case 'e070emp':\r\n return 'e070emp.nomEmp';\r\n case 'e070fil':\r\n return 'e070fil.nomFil';\r\n case 'number':\r\n return 'createdDate';\r\n default:\r\n return name;\r\n }\r\n }\r\n\r\n private createFilterString(name: string, type: FieldType, value: any[], lookupFieldName = 'id'): string {\r\n if (name === 'number') {\r\n const filterParts: string[] = [];\r\n value.forEach(item => {\r\n filterParts.push(`externalId eq '${item.id}'`);\r\n if (item.invoice) {\r\n filterParts.push(`externalId eq '${item.invoice.id}'`);\r\n }\r\n if (item.balanceEntryControl) {\r\n filterParts.push(`externalId eq '${item.balanceEntryControl.id}'`);\r\n }\r\n });\r\n return `(${filterParts.join(' or ')})`;\r\n }\r\n return this.createFilterStringFromType(name, type, value, lookupFieldName);\r\n }\r\n\r\n private createFilterStringFromType(name: string, type: FieldType, value: any, lookupFieldName: string): string {\r\n if (type === FieldType.Chips) {\r\n return `${name} eq '${value[lookupFieldName]}'`;\r\n }\r\n if (type === FieldType.Date) {\r\n const startOfDay = moment(value).startOf('day').format(\"YYYY-MM-DDTHH:mm:ss\") + 'Z';\r\n const endOfDay = moment(value).endOf('day').format(\"YYYY-MM-DDTHH:mm:ss\") + 'Z';\r\n\r\n return `${name} ge '${startOfDay}' and ${name} le '${endOfDay}'`;\r\n }\r\n return `${name} eq '${value}'`;\r\n }\r\n\r\n public onGridChange(event: any) {\r\n const size = event?.rows;\r\n const page = event?.first / size;\r\n const sort = event.multiSortMeta;\r\n this.gridLoading = true;\r\n if (size !== AGRO_NUMBERS.TEN || page !== AGRO_NUMBERS.ZERO || (sort && sort.length > AGRO_NUMBERS.ZERO)) {\r\n this.paginatorStorageService.storePaginator('EventControlBoardPaginator', { page, size, sort });\r\n }\r\n\r\n return this.updateGrid({ page, size, sort });\r\n }\r\n\r\n public getPageSize() {\r\n return this.currentListParams.size;\r\n }\r\n\r\n public getRowIndex() {\r\n return this.currentListParams.page * this.currentListParams.size;\r\n }\r\n\r\n public getSortField() {\r\n if (!this.currentListParams.sort || this.currentListParams.sort.length <= AGRO_NUMBERS.ZERO) {\r\n return this.gridColumns[AGRO_NUMBERS.ZERO].field;\r\n }\r\n return this.currentListParams.sort[AGRO_NUMBERS.ZERO].field;\r\n }\r\n\r\n public getSortOrder() {\r\n if (!this.currentListParams.sort || this.currentListParams.sort.length <= AGRO_NUMBERS.ZERO) {\r\n return AGRO_NUMBERS.ONE;\r\n }\r\n\r\n return this.currentListParams.sort[AGRO_NUMBERS.ZERO].order;\r\n }\r\n\r\n public getErrorMessages() {\r\n const translatedErrorMessages: { [key: string]: string } = {};\r\n for (const key in LookupErrorMessages) {\r\n if (LookupErrorMessages.hasOwnProperty(key)) {\r\n this.translate.get(LookupErrorMessages[key]).subscribe((res: string) => {\r\n translatedErrorMessages[key] = res;\r\n });\r\n }\r\n }\r\n return translatedErrorMessages;\r\n }\r\n\r\n public stepSelected(event: any) {\r\n this.selectedStep = event.step;\r\n if (this.selectedStep.eventType !== EventOrigin.CHANGE_REQUEST) {\r\n this.sidebarLoading = true;\r\n const param = JSON.parse(this.selectedStep.item.input);\r\n\r\n const producerInvoiceId = param.producerInvoiceIds ? param.producerInvoiceIds[0]\r\n : param.invoice.generalData.transactionalId;\r\n\r\n this.eventControlBoardService.producerInvoiceService.get(producerInvoiceId)\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe((result: any) => {\r\n this.producerInvoice = result;\r\n this.sidebarLoading = false;\r\n }, () => {\r\n this.sidebarLoading = false;\r\n });\r\n }\r\n\r\n this.showReprocessButton = event.step.state === StepState.Warning;\r\n this.sidebarTitle = this.translate.instant('agro.angular_components.event_sidebar_title', { event: event.step.label });\r\n\r\n this.showSidebar = true;\r\n }\r\n\r\n public reprocessEvent() {\r\n const reprocessEventObj: ReprocessFailedEvent = {\r\n eventControlItemId: this.selectedStep.item.id\r\n };\r\n this.eventControlBoardService.eventControlItemService.reprocessFailedEvent(reprocessEventObj)\r\n .pipe(takeUntil(this.ngUnsubscribe))\r\n .subscribe(() => {\r\n this.addMessage(\r\n 'info',\r\n 'agro.angular_components.reprocessing_event_message_title',\r\n 'agro.angular_components.reprocessing_event_message_description');\r\n }, () => {\r\n this.addMessage(\r\n 'error',\r\n 'agro.angular_components.error_reprocessing_event_message_title',\r\n 'agro.angular_components.error_reprocessing_event_message_description');\r\n });\r\n }\r\n\r\n private addMessage(severity: string, summary: string, detail: string) {\r\n this.messageService.add({\r\n severity,\r\n summary: this.translate.instant(summary),\r\n detail: this.translate.instant(detail),\r\n });\r\n }\r\n\r\n public openModal() {\r\n this.displayModal = true;\r\n }\r\n\r\n public confirmModal() {\r\n this.reprocessEvent();\r\n this.displayModal = false;\r\n this.showSidebar = false;\r\n }\r\n\r\n public cancelModal() {\r\n this.displayModal = false;\r\n }\r\n\r\n public closeSidebar() {\r\n this.showSidebar = false;\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { ConfirmDialogModule } from 'primeng/confirmdialog';\r\nimport { PanelModule } from 'primeng/panel';\r\nimport { TabViewModule } from 'primeng/tabview';\r\nimport { CurrencyMaskModule } from '@seniorsistemas/ng2-currency-mask';\r\nimport { InputTextModule } from \"primeng/inputtext\";\r\nimport { CheckboxModule } from \"primeng/checkbox\";\r\nimport { TableModule as PrimeTableModule } from \"primeng/table\";\r\nimport { CalendarModule } from \"primeng/calendar\";\r\nimport { DropdownModule } from \"primeng/dropdown\";\r\nimport { SharedModule as PrimeSharedModule } from \"primeng/api\";\r\nimport {\r\n CustomFieldsModule,\r\n ControlErrorsModule,\r\n EmptyStateModule,\r\n DynamicFormModule,\r\n TokenListModule,\r\n LoadingStateModule,\r\n NumberInputModule,\r\n TableModule,\r\n ObjectCardModule,\r\n ButtonModule,\r\n SidebarModule,\r\n} from \"@seniorsistemas/angular-components\";\r\nimport { HotkeyModule } from \"angular2-hotkeys\";\r\nimport {\r\n CyclicJsonInterceptorModule,\r\n HttpInterceptorModule,\r\n} from \"@seniorsistemas/platform-components\";\r\n\r\n@NgModule({\r\n exports: [\r\n CommonModule,\r\n ConfirmDialogModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n ButtonModule,\r\n LoadingStateModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n CommonModule,\r\n CurrencyMaskModule,\r\n CustomFieldsModule,\r\n ControlErrorsModule,\r\n EmptyStateModule,\r\n DynamicFormModule,\r\n TokenListModule,\r\n PanelModule,\r\n InputTextModule,\r\n ButtonModule,\r\n CheckboxModule,\r\n PrimeTableModule,\r\n ConfirmDialogModule,\r\n CalendarModule,\r\n DropdownModule,\r\n TabViewModule,\r\n PrimeSharedModule,\r\n SidebarModule,\r\n HotkeyModule,\r\n LoadingStateModule,\r\n NumberInputModule,\r\n CyclicJsonInterceptorModule,\r\n HttpInterceptorModule,\r\n TableModule,\r\n ObjectCardModule,\r\n ],\r\n})\r\nexport class SharedModule {}\r\n","import { animate, state, style, transition, trigger } from \"@angular/animations\";\r\nimport { Component, EventEmitter, Input, Output } from \"@angular/core\";\r\n\r\nexport enum StepState {\r\n Default = \"default\",\r\n Success = \"success\",\r\n Warning = \"warning\",\r\n}\r\n\r\nexport interface Step {\r\n idEvent: string;\r\n idItem: string;\r\n label: string;\r\n ariaLabel?: string;\r\n ariaControls?: string;\r\n state?: StepState;\r\n disabled?: boolean;\r\n hidden?: boolean;\r\n tooltip?: string;\r\n}\r\n\r\nexport interface StepSelectionEvent {\r\n step: Step;\r\n index: number;\r\n event: any;\r\n}\r\n\r\nconst leftBottom = \"left bottom\";\r\nconst rightBottom = \"right bottom\";\r\nconst activeDesactive = \"active => desactive\";\r\nconst desactiveActive = \"desactive => active\";\r\n\r\n@Component({\r\n selector: \"s-event-steps\",\r\n templateUrl: \"./event-steps.component.html\",\r\n styleUrls: [\"./event-steps.component.scss\"],\r\n host: {\r\n \"aria-orientation\": \"horizontal\",\r\n role: \"tablist\",\r\n \"tab-index\": \"0\",\r\n },\r\n animations: [\r\n trigger(\"beforeActiveDesative\", [\r\n state(\r\n \"active\",\r\n style({\r\n \"background-position\": leftBottom,\r\n })\r\n ),\r\n state(\r\n \"desactive\",\r\n style({\r\n \"background-position\": rightBottom,\r\n })\r\n ),\r\n transition(activeDesactive, [animate(\"50ms 100ms linear\")]),\r\n transition(desactiveActive, [animate(\"50ms 250ms linear\")]),\r\n ]),\r\n trigger(\"activeDesative\", [\r\n state(\r\n \"active\",\r\n style({\r\n \"background-position\": leftBottom,\r\n })\r\n ),\r\n state(\r\n \"desactive\",\r\n style({\r\n \"background-position\": rightBottom,\r\n })\r\n ),\r\n transition(activeDesactive, [animate(\"100ms 150ms linear\")]),\r\n transition(desactiveActive, [animate(\"100ms 150ms linear\")]),\r\n ]),\r\n trigger(\"afterActiveDesative\", [\r\n state(\r\n \"active\",\r\n style({\r\n \"background-position\": leftBottom,\r\n })\r\n ),\r\n state(\r\n \"desactive\",\r\n style({\r\n \"background-position\": rightBottom,\r\n })\r\n ),\r\n transition(activeDesactive, [animate(\"50ms 250ms linear\")]),\r\n transition(desactiveActive, [animate(\"50ms 100ms linear\")]),\r\n ]),\r\n ],\r\n})\r\nexport class EventStepsComponent {\r\n public static nextId = 0;\r\n\r\n @Input()\r\n public id: string;\r\n @Input()\r\n public steps!: Step[];\r\n @Input()\r\n public activeIndex = 0;\r\n\r\n @Output()\r\n public stepSelected: EventEmitter<StepSelectionEvent> = new EventEmitter();\r\n\r\n constructor() {\r\n EventStepsComponent.nextId += 1;\r\n this.id = `s-steps-${EventStepsComponent.nextId}`;\r\n }\r\n\r\n public stepClick(step: Step, index: number, event: any) {\r\n if (step.disabled) {\r\n return;\r\n }\r\n this.stepSelected.emit({ step, index, event });\r\n }\r\n\r\n public get stepState() {\r\n return StepState;\r\n }\r\n\r\n public barAnimation(index: number, activeIndex: number): boolean {\r\n const visited = index < activeIndex;\r\n const activated = index === activeIndex;\r\n return visited || activated;\r\n }\r\n\r\n public afterBarAnimation(index: number, activeIndex: number): boolean {\r\n const visited = index < activeIndex;\r\n const activated = index === activeIndex - 1;\r\n return visited || activated;\r\n }\r\n\r\n get visibledStep() {\r\n return this.steps.filter((step: Step) => !step.hidden);\r\n }\r\n}\r\n","import { CommonModule } from \"@angular/common\";\r\nimport { NgModule } from \"@angular/core\";\r\nimport { TooltipModule } from \"primeng/tooltip\";\r\nimport { EventStepsComponent } from \"./event-steps.component\";\r\n\r\n@NgModule({\r\n imports: [CommonModule, TooltipModule],\r\n declarations: [EventStepsComponent],\r\n exports: [EventStepsComponent],\r\n})\r\nexport class EventStepsModule {}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { MessageService } from \"primeng\";\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { E001pesDto } from \"./e001pes-dto\";\r\nimport { EntityService } from \"../entity-service\";\r\n@Injectable()\r\nexport class E001pesService extends EntityService<E001pesDto> {\r\n constructor(\r\n protected http: HttpClient,\r\n protected messageService: MessageService,\r\n protected translate: TranslateService\r\n ) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/origination/entities/e001pes`,\r\n `agro/origination/actions`,\r\n `agro/origination/queries`,\r\n translate\r\n );\r\n }\r\n\r\n public getE001pes(body: any) {\r\n return this.http\r\n .post<E001pesService[]>(`${this.queriesUrl}/getE001pes`, body)\r\n .pipe(this.defaultCatch());\r\n }\r\n\r\n public getE001pesByControlStatusEntry(body: any) {\r\n return this.http\r\n .post<E001pesService[]>(`${this.queriesUrl}/getE001pesByControlStatus`, body)\r\n .pipe(this.defaultCatch());\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { PermissionsModule } from \"@seniorsistemas/platform-components\";\r\nimport { E001pesService } from \"./e001pes.service\";\r\n\r\n@NgModule({\r\n imports: [\r\n PermissionsModule.forChild([\r\n {\r\n name: \"e001pes\",\r\n actions: [\"Visualizar\", \"Incluir\", \"Editar\", \"Excluir\"],\r\n uri: `res://senior.com.br/agro/origination/entities/e001pes`,\r\n },\r\n ]),\r\n ],\r\n providers: [E001pesService],\r\n declarations: [],\r\n exports: [],\r\n})\r\nexport class E001pesModule { }\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { MessageService } from \"primeng/api\";\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { E001TnsDto } from \"./e001tns-dto\";\r\nimport { EntityService } from \"../entity-service\";\r\n\r\n@Injectable()\r\nexport class E001TnsService extends EntityService<E001TnsDto> {\r\n constructor(protected http: HttpClient, protected messageService: MessageService, protected translate: TranslateService) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/origination/entities/e001tns`,\r\n `agro/origination/actions`,\r\n `agro/origination/queries`,\r\n translate\r\n );\r\n }\r\n\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { PermissionsModule } from \"@seniorsistemas/platform-components\";\r\nimport { E001TnsService } from \"./e001tns.service\";\r\n\r\n@NgModule({\r\n imports: [\r\n PermissionsModule.forChild([\r\n {\r\n name: \"e001tns\",\r\n actions: [\"Visualizar\", \"Incluir\", \"Editar\", \"Excluir\"],\r\n uri: `res://senior.com.br/agro/origination/entities/e001tns`,\r\n },\r\n ]),\r\n ],\r\n providers: [\r\n E001TnsService,\r\n ],\r\n declarations: [\r\n ],\r\n exports: [\r\n ],\r\n})\r\nexport class E001TnsModule {}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { MessageService } from \"primeng\";\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { EntityService } from \"../entity-service\";\r\nimport { E012famDto } from \"./e012fam-dto\";\r\n\r\n@Injectable()\r\nexport class E012famService extends EntityService<E012famDto> {\r\n constructor(protected http: HttpClient, protected messageService: MessageService, protected translate: TranslateService) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/origination/entities/e012fam`,\r\n `agro/origination/actions`,\r\n `agro/origination/queries`,\r\n translate\r\n );\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { MessageService } from \"primeng/api\";\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { EntityService, ListParams } from \"../entity-service\";\r\nimport { E070EmpDto } from \"./e070emp-dto\";\r\n\r\n@Injectable()\r\nexport class E070EmpService extends EntityService<E070EmpDto> {\r\n constructor(\r\n protected http: HttpClient,\r\n protected messageService: MessageService,\r\n protected translate: TranslateService\r\n ) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/origination/entities/e070emp`,\r\n `agro/origination/actions`,\r\n `agro/origination/queries`,\r\n translate\r\n );\r\n }\r\n\r\n public listExternalE001Emp(listParams: ListParams) {\r\n return this.http\r\n .get<E070EmpDto>(\"erpx_fnd/transacao/entities/e070emp\", {\r\n params: this.getListQueryParams(listParams),\r\n })\r\n .pipe(this.defaultCatch());\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { PermissionsModule } from \"@seniorsistemas/platform-components\";\r\nimport { E070EmpService } from \"./e070emp.service\";\r\n\r\n@NgModule({\r\n imports: [\r\n PermissionsModule.forChild([\r\n {\r\n name: \"e070emp\",\r\n actions: [\"Visualizar\", \"Incluir\", \"Editar\", \"Excluir\"],\r\n uri: `res://senior.com.br/agro/origination/entities/e070emp`,\r\n },\r\n ]),\r\n ],\r\n providers: [E070EmpService],\r\n declarations: [],\r\n exports: [],\r\n})\r\nexport class E070EmpModule {}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { MessageService } from \"primeng/api\";\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { EntityService, ListParams } from \"../entity-service\";\r\nimport { E070FilDto } from \"./e070fil-dto\";\r\n\r\n@Injectable()\r\nexport class E070FilService extends EntityService<E070FilDto> {\r\n constructor(\r\n protected http: HttpClient,\r\n protected messageService: MessageService,\r\n protected translate: TranslateService\r\n ) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/origination/entities/e070fil`,\r\n `agro/origination/actions`,\r\n `agro/origination/queries`,\r\n translate\r\n );\r\n }\r\n\r\n public listExternalE001Tns(listParams: ListParams) {\r\n return this.http\r\n .get<E070FilDto>(\"erpx_fnd/transacao/entities/e070fil\", {\r\n params: this.getListQueryParams(listParams),\r\n })\r\n .pipe(this.defaultCatch());\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { PermissionsModule } from \"@seniorsistemas/platform-components\";\r\nimport { E070FilService } from \"./e070fil.service\";\r\n\r\n@NgModule({\r\n imports: [\r\n PermissionsModule.forChild([\r\n {\r\n name: \"e070fil\",\r\n actions: [\"Visualizar\", \"Incluir\", \"Editar\", \"Excluir\"],\r\n uri: `res://senior.com.br/agro/origination/entities/e070fil`,\r\n },\r\n ]),\r\n ],\r\n providers: [E070FilService],\r\n declarations: [],\r\n exports: [],\r\n})\r\nexport class E070FilModule {}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { MessageService } from \"primeng/api\";\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { EntityService } from \"../entity-service\";\r\nimport { E075DerDto } from \"./e075der-dto\";\r\n\r\n@Injectable()\r\nexport class E075DerService extends EntityService<E075DerDto> {\r\n constructor(\r\n protected http: HttpClient,\r\n protected messageService: MessageService,\r\n protected translate: TranslateService\r\n ) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/origination/entities/e075der`,\r\n `agro/origination/actions`,\r\n `agro/origination/queries`,\r\n translate\r\n );\r\n }\r\n\r\n public getE075derByControlStatus(body: any) {\r\n return this.http\r\n .post<E075DerService[]>(`${this.queriesUrl}/getE075derByControlStatus`, body)\r\n .pipe(this.defaultCatch());\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { PermissionsModule } from \"@seniorsistemas/platform-components\";\r\nimport { E075DerService } from \"./e075der.service\";\r\n\r\n@NgModule({\r\n imports: [\r\n PermissionsModule.forChild([\r\n {\r\n name: \"e075der\",\r\n actions: [\"Visualizar\", \"Incluir\", \"Editar\", \"Excluir\"],\r\n uri: `res://senior.com.br/agro/origination/entities/e075der`,\r\n },\r\n ]),\r\n ],\r\n providers: [E075DerService],\r\n declarations: [],\r\n exports: [],\r\n})\r\nexport class E075DerModule {}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { MessageService } from \"primeng\";\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { EntityService } from \"../entity-service\";\r\nimport { E205depDto } from \"./deposit-dto\";\r\n\r\n@Injectable()\r\nexport class E205depService extends EntityService<E205depDto> {\r\n constructor(protected http: HttpClient, protected messageService: MessageService, protected translate: TranslateService) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/origination/entities/e205dep`,\r\n `agro/origination/actions`,\r\n `agro/origination/queries`,\r\n translate\r\n );\r\n }\r\n\r\n public getE205depByControlStatus(body: any) {\r\n return this.http\r\n .post<E205depDto[]>(`${this.queriesUrl}/getE205depByControlStatus`, body)\r\n .pipe(this.defaultCatch());\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { PermissionsModule } from '@seniorsistemas/platform-components';\r\nimport { EventControlService } from '../event-control/event-control.service';\r\n\r\n@NgModule({\r\n imports: [\r\n PermissionsModule.forChild([\r\n {\r\n name: 'eventControl',\r\n actions: ['Visualizar', 'Incluir', 'Editar', 'Excluir'],\r\n uri: `res://senior.com.br/agro/agro_events/entities/eventControl`,\r\n },\r\n ]),\r\n ],\r\n providers: [\r\n EventControlService,\r\n ],\r\n declarations: [\r\n ],\r\n exports: [\r\n ],\r\n})\r\nexport class EventControlModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { PermissionsModule } from '@seniorsistemas/platform-components';\r\nimport { EventControlItemService } from '../event-control-item/event-control-item.service';\r\n\r\n@NgModule({\r\n imports: [\r\n PermissionsModule.forChild([\r\n {\r\n name: 'eventControlItem',\r\n actions: ['Visualizar', 'Incluir', 'Editar', 'Excluir'],\r\n uri: `res://senior.com.br/agro/agro_events/entities/eventControlItem`,\r\n },\r\n ]),\r\n ],\r\n providers: [\r\n EventControlItemService,\r\n ],\r\n declarations: [\r\n ],\r\n exports: [\r\n ],\r\n})\r\nexport class EventControlItemModule {}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { MessageService } from \"primeng\";\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { EntityService } from \"../entity-service\";\r\nimport { ExternalInvoiceDto } from \"./external-invoice-dto\";\r\n\r\n@Injectable()\r\nexport class ExternalInvoiceService extends EntityService<ExternalInvoiceDto> {\r\n constructor(protected http: HttpClient, protected messageService: MessageService, protected translate: TranslateService) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/origination/entities/externalInvoice`,\r\n `agro/origination/actions`,\r\n `agro/origination/queries`,\r\n translate\r\n );\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { PermissionsModule } from '@seniorsistemas/platform-components';\r\n\r\nimport { ExternalInvoiceService } from '../external-invoice/external-invoice.service';\r\n\r\n@NgModule({\r\n imports: [\r\n PermissionsModule.forChild([\r\n {\r\n name: 'externalInvoice',\r\n actions: ['Visualizar', 'Incluir', 'Editar', 'Excluir'],\r\n uri: `res://senior.com.br/agro/origination/entities/externalInvoice`,\r\n },\r\n ]),\r\n ],\r\n providers: [\r\n ExternalInvoiceService,\r\n ],\r\n declarations: [\r\n ],\r\n exports: [\r\n ],\r\n})\r\nexport class ExternalInvoiceModule {}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { MessageService } from 'primeng/api';\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { InvoiceDto } from '../invoice/invoice-dto';\r\nimport { EntityService } from '../entity-service';\r\n\r\n@Injectable()\r\nexport class InvoiceService extends EntityService<InvoiceDto> {\r\n\r\n constructor(protected http: HttpClient, protected messageService: MessageService, protected translate: TranslateService) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/origination/entities/invoice`,\r\n `agro/origination/actions`,\r\n `agro/origination/queries`,\r\n translate\r\n );\r\n }\r\n\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { PermissionsModule } from '@seniorsistemas/platform-components';\r\nimport { InvoiceService } from '../invoice/invoice.service';\r\n\r\n@NgModule({\r\n imports: [\r\n PermissionsModule.forChild([\r\n {\r\n name: 'invoice',\r\n actions: ['Visualizar', 'Incluir', 'Editar', 'Excluir'],\r\n uri: `res://senior.com.br/agro/origination/entities/invoice`,\r\n },\r\n ]),\r\n ],\r\n providers: [\r\n InvoiceService,\r\n ],\r\n declarations: [\r\n ],\r\n exports: [\r\n ],\r\n})\r\nexport class InvoiceModule {}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { MessageService } from \"primeng\";\r\nimport { LibTranslationService as TranslateService } from \"../../../../services/lib-translation.service\";\r\nimport { OriginationDto } from \"../origination/origination-dto\";\r\nimport { EntityService } from \"../entity-service\";\r\n\r\n@Injectable()\r\nexport class OriginationService extends EntityService<OriginationDto> {\r\n\r\n constructor(\r\n protected http: HttpClient,\r\n protected messageService: MessageService,\r\n protected translate: TranslateService\r\n ) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/origination/entities/balanceEntryControl`,\r\n `agro/origination/actions`,\r\n `agro/origination/queries`,\r\n translate\r\n );\r\n }\r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { PermissionsModule } from \"@seniorsistemas/platform-components\";\r\nimport { OriginationService } from \"./origination.service\";\r\n\r\n@NgModule({\r\n imports: [\r\n PermissionsModule.forChild([\r\n {\r\n name: \"balanceEntryControl\",\r\n actions: [\"Visualizar\", \"Incluir\", \"Editar\", \"Excluir\"],\r\n uri: `res://senior.com.br/agro/origination/entities/balanceEntryControl`,\r\n },\r\n ]),\r\n ],\r\n providers: [OriginationService],\r\n declarations: [],\r\n exports: [],\r\n})\r\nexport class OriginationModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { PermissionsModule } from '@seniorsistemas/platform-components';\r\nimport { ProducerInvoiceService } from './producer-invoice.service';\r\n\r\n@NgModule({\r\n imports: [\r\n PermissionsModule.forChild([\r\n {\r\n name: 'producerInvoice',\r\n actions: ['Visualizar', 'Incluir', 'Editar', 'Excluir'],\r\n uri: `res://senior.com.br/agro/origination/entities/producerInvoice`,\r\n },\r\n ]),\r\n ],\r\n providers: [\r\n ProducerInvoiceService,\r\n ],\r\n declarations: [\r\n ],\r\n exports: [\r\n ],\r\n})\r\nexport class ProducerInvoiceModule {}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { MessageService } from 'primeng/api';\r\nimport { RuralEstateDto } from '../rural-estate/rural-estate-dto';\r\nimport { EntityService } from '../entity-service';\r\nimport { LibTranslationService } from '../../../../services/lib-translation.service';\r\n\r\n@Injectable()\r\nexport class RuralEstateService extends EntityService<RuralEstateDto> {\r\n\r\n constructor(protected http: HttpClient, protected messageService: MessageService, protected translate: LibTranslationService) {\r\n super(\r\n http,\r\n messageService,\r\n `agro/origination/entities/ruralEstate`,\r\n `agro/origination/actions`,\r\n `agro/origination/queries`,\r\n translate\r\n );\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { PermissionsModule } from '@seniorsistemas/platform-components';\r\n\r\nimport { RuralEstateService } from '../rural-estate/rural-estate.service';\r\n\r\n@NgModule({\r\n imports: [\r\n PermissionsModule.forChild([\r\n {\r\n name: 'ruralEstate',\r\n actions: ['Visualizar', 'Incluir', 'Editar', 'Excluir'],\r\n uri: `res://senior.com.br/erpx_fnd/rural_estate/entities/ruralEstate`,\r\n },\r\n ]),\r\n ],\r\n providers: [\r\n RuralEstateService,\r\n ],\r\n declarations: [\r\n ],\r\n exports: [\r\n ],\r\n})\r\nexport class RuralEstateModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { PermissionsModule } from '@seniorsistemas/platform-components';\r\nimport { TicketService } from '../ticket/ticket.service';\r\n\r\n@NgModule({\r\n imports: [\r\n PermissionsModule.forChild([\r\n {\r\n name: 'ticket',\r\n actions: ['Visualizar', 'Incluir', 'Editar', 'Excluir'],\r\n uri: `res://senior.com.br/agro/origination/entities/ticket`,\r\n },\r\n ]),\r\n ],\r\n providers: [\r\n TicketService,\r\n ],\r\n declarations: [\r\n ],\r\n exports: [\r\n ],\r\n})\r\nexport class TicketModule {}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { LibTranslationService } from '../services/lib-translation.service';\r\n\r\n@Pipe({\r\n name: 'libTranslate'\r\n})\r\nexport class LibTranslatePipe implements PipeTransform {\r\n\r\n constructor(\r\n private translateService: LibTranslationService\r\n ){}\r\n\r\n transform(value: unknown, ...args: unknown[]): string {\r\n if (args.length > 0) {\r\n return this.translateService.instant(value as string, args[0]);\r\n }\r\n return this.translateService.instant(value as string);\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LibTranslatePipe } from './pipe/lib-translate.pipe';\r\n\r\n@NgModule({\r\n declarations: [\r\n LibTranslatePipe\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n LibTranslatePipe\r\n ]\r\n})\r\nexport class LibTranslationModule { }\r\n","import { NgModule } from \"@angular/core\";\r\nimport { LocaleModule, ButtonModule, BadgeModule } from \"@seniorsistemas/angular-components\";\r\nimport { DialogModule, FieldsetModule } from \"primeng\";\r\nimport { EventStepsModule } from \"../event-steps/event-steps.module\";\r\nimport { EventControlBoardComponent } from \"./event-control-board.component\";\r\nimport { SharedModule } from \"./shared.module\";\r\nimport { E001pesModule } from \"./service/e001pes/e001pes.module\";\r\nimport { E001TnsModule } from \"./service/e001tns/e001tns.module\";\r\nimport { E012famService } from \"./service/e012fam/e012fam.service\";\r\nimport { E070EmpModule } from \"./service/e070emp/e070emp.module\";\r\nimport { E070FilModule } from \"./service/e070fil/e070fil.module\";\r\nimport { E075DerModule } from \"./service/e075der/e075der.module\";\r\nimport { E205depService } from \"./service/e205dep/e205dep.service\";\r\nimport { EventControlModule } from \"./service/event-control/event-control.module\";\r\nimport { EventControlItemModule } from \"./service/event-control-item/event-control-item.module\";\r\nimport { ExternalInvoiceModule } from \"./service/external-invoice/external-invoice.module\";\r\nimport { InvoiceModule } from \"./service/invoice/invoice.module\";\r\nimport { OriginationModule } from \"./service/origination/origination.module\";\r\nimport { ProducerInvoiceModule } from \"./service/producer-invoice/producer-invoice.module\";\r\nimport { RuralEstateModule } from \"./service/rural-estate/rural-estate.module\";\r\nimport { TicketModule } from \"./service/ticket/ticket.module\";\r\nimport { PaginatorStorageService } from \"./service/paginator-storage.service\";\r\nimport { WebsocketModule } from \"../../services/websocket/websocket.module\";\r\n\r\nimport { LibTranslationModule } from \"../../lib-translation.module\";\r\nimport { EventControlService } from \"./service/event-control/event-control.service\";\r\nimport { EventControlBoardService } from \"./service/event-control-board.service\"\r\n\r\n@NgModule({\r\n imports: [\r\n LocaleModule.forChild(),\r\n SharedModule,\r\n ButtonModule,\r\n EventStepsModule,\r\n DialogModule,\r\n FieldsetModule,\r\n BadgeModule,\r\n E001pesModule,\r\n E001TnsModule,\r\n E070EmpModule,\r\n E070FilModule,\r\n E075DerModule,\r\n EventControlModule,\r\n EventControlItemModule,\r\n ExternalInvoiceModule,\r\n InvoiceModule,\r\n OriginationModule,\r\n ProducerInvoiceModule,\r\n RuralEstateModule,\r\n TicketModule,\r\n WebsocketModule,\r\n LibTranslationModule\r\n ],\r\n declarations: [EventControlBoardComponent],\r\n exports: [EventControlBoardComponent],\r\n providers: [E012famService, E205depService, PaginatorStorageService, EventControlService, EventControlBoardService],\r\n})\r\nexport class EventControlBoardModule {}\r\n","import {\r\n ModuleWithProviders,\r\n NgModule,\r\n InjectionToken\r\n} from \"@angular/core\";\r\n\r\nexport const HostProjectConfigsInjectionToken = new InjectionToken<HostProjectConfigs>(\"hostProjectConfigs\");\r\n\r\nexport interface HostProjectConfigs {\r\n domain: string;\r\n service: string;\r\n}\r\n\r\n@NgModule({\r\n})\r\nexport class AgroAngularComponentsModule {\r\n static forRoot(config: HostProjectConfigs): ModuleWithProviders<AgroAngularComponentsModule> {\r\n return {\r\n ngModule: AgroAngularComponentsModule,\r\n providers: [\r\n {\r\n provide: HostProjectConfigsInjectionToken,\r\n useValue: config\r\n }\r\n ]\r\n };\r\n }\r\n}\r\n"],"names":["DateComparisonType","NumberComparisonType","AgroEntityStatus","AGRO_NUMBERS","AgroStringMasks","HttpCodes","ObjectUtils","moment","require$$0","StringUtils","Subject","BehaviorSubject","getCookie","Injectable","SockJS","Client","filter","take","finalize","switchMap","map","FrameImpl","NgModule","CommonModule","of","userService","HttpParams","catchError","throwError","HttpClient","MessageService","TranslateService","ButtonPriority","BadgeColors","registerLocaleData","takeUntil","Validators","FormField","FieldType","forkJoin","StepState","ActivatedRoute","FormBuilder","Input","Component","LOCALE_ID","ConfirmDialogModule","FormsModule","ReactiveFormsModule","ButtonModule","LoadingStateModule","CurrencyMaskModule","CustomFieldsModule","ControlErrorsModule","EmptyStateModule","DynamicFormModule","TokenListModule","PanelModule","InputTextModule","CheckboxModule","PrimeTableModule","CalendarModule","DropdownModule","TabViewModule","PrimeSharedModule","SidebarModule","HotkeyModule","NumberInputModule","CyclicJsonInterceptorModule","HttpInterceptorModule","TableModule","ObjectCardModule","EventEmitter","Output","trigger","state","style","transition","animate","TooltipModule","PermissionsModule","Pipe","LocaleModule","DialogModule","FieldsetModule","BadgeModule","InjectionToken"],"mappings":"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"}
|