@senior-agronegocio/angular-components 0.0.9883 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +25 -0
- package/agro-angular-components.module.d.ts +13 -9
- package/common/agro-array-utils.class.d.ts +48 -48
- package/common/agro-cookie-utils.class.d.ts +9 -9
- package/common/agro-date-utils.class.d.ts +88 -88
- package/common/agro-logics.class.d.ts +23 -23
- package/common/agro-name-utils.class.d.ts +22 -22
- package/common/agro-number-utils.class.d.ts +77 -77
- package/common/agro-object-stringifier.class.d.ts +16 -16
- package/common/agro-object-utils.class.d.ts +184 -173
- package/common/agro-platform-utils.class.d.ts +60 -60
- package/common/agro-regex.constant.d.ts +155 -155
- package/common/agro-string-utils.class.d.ts +97 -97
- package/common/agro-unit-converter.class.d.ts +23 -23
- package/common/colors.class.d.ts +78 -78
- package/common/edl-query-builder.class.d.ts +27 -0
- package/common/index.d.ts +15 -12
- package/components/cancel-event-dialog/cancel-event-dialog-config.d.ts +8 -8
- package/components/cancel-event-dialog/cancel-event-dialog.component.d.ts +34 -33
- package/components/cancel-event-dialog/cancel-event-dialog.module.d.ts +14 -2
- package/components/cancel-event-dialog/index.d.ts +3 -3
- package/components/event-control-board/common/control-status.d.ts +5 -5
- package/components/event-control-board/common/documentsToIssue.d.ts +4 -4
- package/components/event-control-board/common/event-control-constants.d.ts +11 -11
- package/components/event-control-board/common/event-operation.d.ts +52 -52
- package/components/event-control-board/common/event-origin.d.ts +12 -12
- package/components/event-control-board/common/event-status.d.ts +7 -7
- package/components/event-control-board/common/input-fields-translate.d.ts +5 -5
- package/components/event-control-board/common/input-fields.d.ts +5 -5
- package/components/event-control-board/common/invoice-type.d.ts +9 -9
- package/components/event-control-board/common/lookup-error-message.constants.d.ts +3 -3
- package/components/event-control-board/common/operation.d.ts +5 -5
- package/components/event-control-board/common/operationType.d.ts +5 -5
- package/components/event-control-board/common/status-entity.d.ts +4 -4
- package/components/event-control-board/common/ticket-status.d.ts +7 -7
- package/components/event-control-board/common/transfer-status.d.ts +6 -6
- package/components/event-control-board/event-control-board.component.d.ts +120 -106
- package/components/event-control-board/event-control-board.module.d.ts +31 -2
- package/components/event-control-board/index.d.ts +22 -22
- package/components/event-control-board/service/e001pes/e001pes-dto.d.ts +12 -12
- package/components/event-control-board/service/e001pes/e001pes.d.ts +15 -15
- package/components/event-control-board/service/e001pes/e001pes.module.d.ts +7 -2
- package/components/event-control-board/service/e001pes/e001pes.service.d.ts +16 -13
- package/components/event-control-board/service/e001tns/e001tns-dto.d.ts +14 -14
- package/components/event-control-board/service/e001tns/e001tns.d.ts +19 -19
- package/components/event-control-board/service/e001tns/e001tns.module.d.ts +7 -2
- package/components/event-control-board/service/e001tns/e001tns.service.d.ts +14 -11
- package/components/event-control-board/service/e012fam/e012fam-dto.d.ts +11 -11
- package/components/event-control-board/service/e012fam/e012fam.d.ts +14 -14
- package/components/event-control-board/service/e012fam/e012fam.service.d.ts +14 -11
- package/components/event-control-board/service/e070emp/e070emp-dto.d.ts +10 -10
- package/components/event-control-board/service/e070emp/e070emp.d.ts +13 -13
- package/components/event-control-board/service/e070emp/e070emp.module.d.ts +7 -2
- package/components/event-control-board/service/e070emp/e070emp.service.d.ts +15 -12
- package/components/event-control-board/service/e070fil/e070fil-dto.d.ts +14 -14
- package/components/event-control-board/service/e070fil/e070fil.d.ts +17 -17
- package/components/event-control-board/service/e070fil/e070fil.module.d.ts +7 -2
- package/components/event-control-board/service/e070fil/e070fil.service.d.ts +15 -12
- package/components/event-control-board/service/e075der/e075der-dto.d.ts +15 -15
- package/components/event-control-board/service/e075der/e075der.d.ts +18 -18
- package/components/event-control-board/service/e075der/e075der.module.d.ts +7 -2
- package/components/event-control-board/service/e075der/e075der.service.d.ts +15 -12
- package/components/event-control-board/service/e113saf/e113saf-dto.d.ts +11 -11
- package/components/event-control-board/service/e113saf/e113saf.d.ts +14 -14
- package/components/event-control-board/service/e205dep/deposit-dto.d.ts +11 -11
- package/components/event-control-board/service/e205dep/e205dep-dto.d.ts +15 -15
- package/components/event-control-board/service/e205dep/e205dep.d.ts +16 -16
- package/components/event-control-board/service/e205dep/e205dep.service.d.ts +15 -12
- package/components/event-control-board/service/event-control/event-control-dto.d.ts +15 -15
- package/components/event-control-board/service/event-control/event-control.d.ts +21 -21
- package/components/event-control-board/service/event-control/event-control.module.d.ts +7 -2
- package/components/event-control-board/service/event-control/event-control.service.d.ts +14 -11
- package/components/event-control-board/service/event-control-item/event-control-item-dto.d.ts +18 -18
- package/components/event-control-board/service/event-control-item/event-control-item.d.ts +25 -25
- package/components/event-control-board/service/event-control-item/event-control-item.module.d.ts +7 -2
- package/components/event-control-board/service/event-control-item/event-control-item.service.d.ts +18 -15
- package/components/event-control-board/service/external-invoice/external-invoice-dto.d.ts +13 -13
- package/components/event-control-board/service/external-invoice/external-invoice.d.ts +13 -13
- package/components/event-control-board/service/external-invoice/external-invoice.module.d.ts +7 -2
- package/components/event-control-board/service/external-invoice/external-invoice.service.d.ts +14 -11
- package/components/event-control-board/service/fixation-entity/fixation-dto.d.ts +41 -41
- package/components/event-control-board/service/fixation-entity/fixation.module.d.ts +7 -2
- package/components/event-control-board/service/fixation-entity/fixation.service.d.ts +18 -15
- package/components/event-control-board/service/invoice/invoice-dto.d.ts +15 -15
- package/components/event-control-board/service/invoice/invoice.d.ts +21 -21
- package/components/event-control-board/service/invoice/invoice.module.d.ts +7 -2
- package/components/event-control-board/service/invoice/invoice.service.d.ts +14 -11
- package/components/event-control-board/service/origination/operationType.d.ts +5 -5
- package/components/event-control-board/service/origination/origination-dto.d.ts +50 -50
- package/components/event-control-board/service/origination/origination.d.ts +51 -51
- package/components/event-control-board/service/origination/origination.module.d.ts +7 -2
- package/components/event-control-board/service/origination/origination.service.d.ts +14 -11
- package/components/event-control-board/service/paginator-storage.service.d.ts +8 -8
- package/components/event-control-board/service/rural-estate/rural-estate-dto.d.ts +28 -28
- package/components/event-control-board/service/rural-estate/rural-estate.d.ts +34 -34
- package/components/event-control-board/service/rural-estate/rural-estate.module.d.ts +7 -2
- package/components/event-control-board/service/rural-estate/rural-estate.service.d.ts +14 -11
- package/components/event-control-board/service/ticket/ticket-dto.d.ts +17 -17
- package/components/event-control-board/service/ticket/ticket.d.ts +18 -18
- package/components/event-control-board/service/ticket/ticket.module.d.ts +7 -2
- package/components/event-control-board/service/ticket/ticket.service.d.ts +48 -45
- package/components/event-control-board/service/transfer/transfer-dto.d.ts +32 -32
- package/components/event-control-board/service/transfer/transfer.module.d.ts +7 -2
- package/components/event-control-board/service/transfer/transfer.service.d.ts +16 -13
- package/components/event-control-board/shared.module.d.ts +31 -2
- package/components/event-steps/event-steps.component.d.ts +39 -36
- package/components/event-steps/event-steps.module.d.ts +9 -2
- package/components/event-steps/index.d.ts +2 -2
- package/components/financial-title-table/financial-title-table-options.interface.d.ts +10 -10
- package/components/financial-title-table/financial-title-table.component.d.ts +128 -126
- package/components/financial-title-table/financial-title-table.module.d.ts +26 -2
- package/components/financial-title-table/index.d.ts +4 -4
- package/components/financial-title-table/services/financial/agro-financial.service.d.ts +26 -23
- package/components/financial-title-table/services/financial/enums.d.ts +27 -27
- package/components/financial-title-table/services/financial/index.d.ts +3 -3
- package/components/financial-title-table/services/financial/intefaces.d.ts +107 -107
- package/components/index.d.ts +5 -5
- package/components/modal-invoice-pj/for-fixation/modal-fixation-options.interface.d.ts +5 -5
- package/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.component.d.ts +40 -36
- package/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.module.d.ts +26 -2
- package/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.component.d.ts +32 -28
- package/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.module.d.ts +26 -2
- package/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.component.d.ts +20 -17
- package/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.module.d.ts +26 -2
- package/components/modal-invoice-pj/index.d.ts +9 -9
- package/components/modal-invoice-pj/modal-invoice-pj-base.class.d.ts +64 -55
- package/components/modal-invoice-pj/modal-invoice-pj-options.interface.d.ts +10 -10
- package/components/modal-invoice-pj/modal-shared-imports.d.ts +7 -8
- package/components/modal-invoice-pj/services/agro-invoice/agro-invoice.module.d.ts +8 -2
- package/components/modal-invoice-pj/services/agro-invoice/agro-invoice.service.d.ts +19 -16
- package/components/modal-invoice-pj/services/agro-invoice/index.d.ts +2 -2
- package/components/modal-invoice-pj/services/agro-invoice/interfaces.d.ts +75 -75
- package/enums/agro-entity-status.enum.d.ts +4 -4
- package/enums/agro-numbers.enum.d.ts +1008 -1008
- package/enums/agro-string-masks.enum.d.ts +10 -10
- package/enums/date-comparison-type.enum.d.ts +4 -4
- package/enums/fixation-status.d.ts +8 -8
- package/enums/http-codes.enum.d.ts +64 -64
- package/enums/index.d.ts +8 -7
- package/enums/invoice-status.enum.d.ts +12 -12
- package/enums/number-comparison-type.enum.d.ts +8 -8
- package/enums/unit-measurement.enum.d.ts +49 -49
- package/esm2022/agro-angular-components.module.mjs +24 -0
- package/esm2022/common/agro-array-utils.class.mjs +74 -0
- package/esm2022/common/agro-cookie-utils.class.mjs +47 -0
- package/esm2022/common/agro-date-utils.class.mjs +121 -0
- package/esm2022/common/agro-logics.class.mjs +54 -0
- package/esm2022/common/agro-name-utils.class.mjs +60 -0
- package/esm2022/common/agro-number-utils.class.mjs +129 -0
- package/esm2022/common/agro-object-stringifier.class.mjs +34 -0
- package/esm2022/common/agro-object-utils.class.mjs +320 -0
- package/esm2022/common/agro-platform-utils.class.mjs +119 -0
- package/esm2022/common/agro-regex.constant.mjs +156 -0
- package/esm2022/common/agro-string-utils.class.mjs +363 -0
- package/esm2022/common/agro-unit-converter.class.mjs +254 -0
- package/esm2022/common/colors.class.mjs +79 -0
- package/esm2022/common/edl-query-builder.class.mjs +141 -0
- package/esm2022/common/index.mjs +14 -0
- package/esm2022/components/cancel-event-dialog/cancel-event-dialog-config.mjs +2 -0
- package/esm2022/components/cancel-event-dialog/cancel-event-dialog.component.mjs +117 -0
- package/esm2022/components/cancel-event-dialog/cancel-event-dialog.module.mjs +24 -0
- package/esm2022/components/cancel-event-dialog/index.mjs +3 -0
- package/esm2022/components/event-control-board/common/control-status.mjs +7 -0
- package/esm2022/components/event-control-board/common/documentsToIssue.mjs +6 -0
- package/esm2022/components/event-control-board/common/event-control-constants.mjs +113 -0
- package/esm2022/components/event-control-board/common/event-operation.mjs +54 -0
- package/esm2022/components/event-control-board/common/event-origin.mjs +14 -0
- package/esm2022/components/event-control-board/common/event-status.mjs +9 -0
- package/esm2022/components/event-control-board/common/input-fields-translate.mjs +11 -0
- package/esm2022/components/event-control-board/common/input-fields.mjs +7 -0
- package/esm2022/components/event-control-board/common/invoice-type.mjs +11 -0
- package/esm2022/components/event-control-board/common/lookup-error-message.constants.mjs +11 -0
- package/esm2022/components/event-control-board/common/operation.mjs +7 -0
- package/esm2022/components/event-control-board/common/operationType.mjs +7 -0
- package/esm2022/components/event-control-board/common/status-entity.mjs +6 -0
- package/esm2022/components/event-control-board/common/ticket-status.mjs +9 -0
- package/esm2022/components/event-control-board/common/transfer-status.mjs +8 -0
- package/esm2022/components/event-control-board/event-control-board.component.mjs +609 -0
- package/esm2022/components/event-control-board/event-control-board.module.mjs +120 -0
- package/esm2022/components/event-control-board/index.mjs +22 -0
- package/esm2022/components/event-control-board/service/e001pes/e001pes-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/e001pes/e001pes.mjs +30 -0
- package/esm2022/components/event-control-board/service/e001pes/e001pes.module.mjs +34 -0
- package/esm2022/components/event-control-board/service/e001pes/e001pes.service.mjs +33 -0
- package/esm2022/components/event-control-board/service/e001tns/e001tns-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/e001tns/e001tns.mjs +51 -0
- package/esm2022/components/event-control-board/service/e001tns/e001tns.module.mjs +38 -0
- package/esm2022/components/event-control-board/service/e001tns/e001tns.service.mjs +23 -0
- package/esm2022/components/event-control-board/service/e012fam/e012fam-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/e012fam/e012fam.mjs +29 -0
- package/esm2022/components/event-control-board/service/e012fam/e012fam.service.mjs +23 -0
- package/esm2022/components/event-control-board/service/e070emp/e070emp-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/e070emp/e070emp.mjs +37 -0
- package/esm2022/components/event-control-board/service/e070emp/e070emp.module.mjs +34 -0
- package/esm2022/components/event-control-board/service/e070emp/e070emp.service.mjs +30 -0
- package/esm2022/components/event-control-board/service/e070fil/e070fil-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/e070fil/e070fil.mjs +52 -0
- package/esm2022/components/event-control-board/service/e070fil/e070fil.module.mjs +34 -0
- package/esm2022/components/event-control-board/service/e070fil/e070fil.service.mjs +30 -0
- package/esm2022/components/event-control-board/service/e075der/e075der-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/e075der/e075der.mjs +41 -0
- package/esm2022/components/event-control-board/service/e075der/e075der.module.mjs +34 -0
- package/esm2022/components/event-control-board/service/e075der/e075der.service.mjs +28 -0
- package/esm2022/components/event-control-board/service/e113saf/e113saf-dto.mjs +2 -0
- package/{esm2015/components/event-control-board/service/e113saf/e113saf.js → esm2022/components/event-control-board/service/e113saf/e113saf.mjs} +29 -20
- package/esm2022/components/event-control-board/service/e205dep/deposit-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/e205dep/e205dep-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/e205dep/e205dep.mjs +31 -0
- package/esm2022/components/event-control-board/service/e205dep/e205dep.service.mjs +28 -0
- package/esm2022/components/event-control-board/service/event-control/event-control-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/event-control/event-control.mjs +32 -0
- package/esm2022/components/event-control-board/service/event-control/event-control.module.mjs +34 -0
- package/esm2022/components/event-control-board/service/event-control/event-control.service.mjs +23 -0
- package/esm2022/components/event-control-board/service/event-control-item/event-control-item-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/event-control-item/event-control-item.mjs +52 -0
- package/esm2022/components/event-control-board/service/event-control-item/event-control-item.module.mjs +34 -0
- package/esm2022/components/event-control-board/service/event-control-item/event-control-item.service.mjs +28 -0
- package/esm2022/components/event-control-board/service/external-invoice/external-invoice-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/external-invoice/external-invoice.mjs +28 -0
- package/esm2022/components/event-control-board/service/external-invoice/external-invoice.module.mjs +34 -0
- package/esm2022/components/event-control-board/service/external-invoice/external-invoice.service.mjs +23 -0
- package/esm2022/components/event-control-board/service/fixation-entity/fixation-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/fixation-entity/fixation.module.mjs +34 -0
- package/esm2022/components/event-control-board/service/fixation-entity/fixation.service.mjs +28 -0
- package/esm2022/components/event-control-board/service/invoice/invoice-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/invoice/invoice.mjs +56 -0
- package/esm2022/components/event-control-board/service/invoice/invoice.module.mjs +38 -0
- package/esm2022/components/event-control-board/service/invoice/invoice.service.mjs +23 -0
- package/esm2022/components/event-control-board/service/origination/operationType.mjs +7 -0
- package/esm2022/components/event-control-board/service/origination/origination-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/origination/origination.mjs +86 -0
- package/esm2022/components/event-control-board/service/origination/origination.module.mjs +34 -0
- package/esm2022/components/event-control-board/service/origination/origination.service.mjs +23 -0
- package/esm2022/components/event-control-board/service/paginator-storage.service.mjs +21 -0
- package/esm2022/components/event-control-board/service/rural-estate/rural-estate-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/rural-estate/rural-estate.mjs +102 -0
- package/esm2022/components/event-control-board/service/rural-estate/rural-estate.module.mjs +34 -0
- package/esm2022/components/event-control-board/service/rural-estate/rural-estate.service.mjs +23 -0
- package/esm2022/components/event-control-board/service/ticket/ticket-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/ticket/ticket.mjs +51 -0
- package/esm2022/components/event-control-board/service/ticket/ticket.module.mjs +38 -0
- package/esm2022/components/event-control-board/service/ticket/ticket.service.mjs +58 -0
- package/esm2022/components/event-control-board/service/transfer/transfer-dto.mjs +2 -0
- package/esm2022/components/event-control-board/service/transfer/transfer.module.mjs +38 -0
- package/esm2022/components/event-control-board/service/transfer/transfer.service.mjs +33 -0
- package/esm2022/components/event-control-board/shared.module.mjs +200 -0
- package/esm2022/components/event-steps/event-steps.component.mjs +129 -0
- package/esm2022/components/event-steps/event-steps.module.mjs +19 -0
- package/esm2022/components/event-steps/index.mjs +3 -0
- package/esm2022/components/financial-title-table/financial-title-table-options.interface.mjs +2 -0
- package/esm2022/components/financial-title-table/financial-title-table.component.mjs +422 -0
- package/esm2022/components/financial-title-table/financial-title-table.module.mjs +100 -0
- package/esm2022/components/financial-title-table/index.mjs +4 -0
- package/esm2022/components/financial-title-table/services/financial/agro-financial.service.mjs +68 -0
- package/esm2022/components/financial-title-table/services/financial/enums.mjs +33 -0
- package/esm2022/components/financial-title-table/services/financial/index.mjs +3 -0
- package/esm2022/components/financial-title-table/services/financial/intefaces.mjs +2 -0
- package/esm2022/components/index.mjs +6 -0
- package/esm2022/components/modal-invoice-pj/for-fixation/modal-fixation-options.interface.mjs +2 -0
- package/esm2022/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.component.mjs +190 -0
- package/esm2022/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.module.mjs +38 -0
- package/esm2022/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.component.mjs +67 -0
- package/esm2022/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.module.mjs +38 -0
- package/esm2022/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.component.mjs +41 -0
- package/esm2022/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.module.mjs +38 -0
- package/esm2022/components/modal-invoice-pj/index.mjs +8 -0
- package/esm2022/components/modal-invoice-pj/modal-invoice-pj-base.class.mjs +207 -0
- package/esm2022/components/modal-invoice-pj/modal-invoice-pj-options.interface.mjs +2 -0
- package/esm2022/components/modal-invoice-pj/modal-shared-imports.mjs +42 -0
- package/esm2022/components/modal-invoice-pj/services/agro-invoice/agro-invoice.module.mjs +41 -0
- package/esm2022/components/modal-invoice-pj/services/agro-invoice/agro-invoice.service.mjs +48 -0
- package/esm2022/components/modal-invoice-pj/services/agro-invoice/index.mjs +3 -0
- package/esm2022/components/modal-invoice-pj/services/agro-invoice/interfaces.mjs +13 -0
- package/esm2022/enums/agro-entity-status.enum.mjs +6 -0
- package/{esm5/enums/agro-numbers.enum.js → esm2022/enums/agro-numbers.enum.mjs} +1009 -1009
- package/esm2022/enums/agro-string-masks.enum.mjs +12 -0
- package/esm2022/enums/date-comparison-type.enum.mjs +6 -0
- package/esm2022/enums/fixation-status.mjs +10 -0
- package/{esm2015/enums/http-codes.enum.js → esm2022/enums/http-codes.enum.mjs} +66 -66
- package/esm2022/enums/index.mjs +8 -0
- package/esm2022/enums/invoice-status.enum.mjs +14 -0
- package/esm2022/enums/number-comparison-type.enum.mjs +10 -0
- package/esm2022/enums/unit-measurement.enum.mjs +60 -0
- package/esm2022/form-validator/agro-form-validator.mjs +315 -0
- package/esm2022/form-validator/index.mjs +2 -0
- package/esm2022/lib-translation.module.mjs +26 -0
- package/esm2022/pipe/cnpj-cpf/cnpj-cpf.pipe.mjs +30 -0
- package/esm2022/pipe/cnpj-cpf/cnpj-cpf.pipe.module.mjs +18 -0
- package/esm2022/pipe/cnpj-cpf/index.mjs +3 -0
- package/esm2022/pipe/index.mjs +6 -0
- package/esm2022/pipe/kilogram/index.mjs +3 -0
- package/esm2022/pipe/kilogram/kilogram.module.mjs +20 -0
- package/esm2022/pipe/kilogram/kilogram.pipe.mjs +38 -0
- package/esm2022/pipe/lib-translate.pipe.mjs +24 -0
- package/esm2022/pipe/stringifier/index.mjs +3 -0
- package/esm2022/pipe/stringifier/stringifier.pipe.mjs +15 -0
- package/esm2022/pipe/stringifier/stringifier.pipe.module.mjs +18 -0
- package/esm2022/pipe/telephone/index.mjs +3 -0
- package/esm2022/pipe/telephone/telephone.pipe.mjs +93 -0
- package/esm2022/pipe/telephone/telephone.pipe.module.mjs +18 -0
- package/esm2022/public-api.mjs +11 -0
- package/esm2022/senior-agronegocio-angular-components.mjs +5 -0
- package/esm2022/services/agro-entity-service.mjs +137 -0
- package/esm2022/services/i18n/en-US.mjs +322 -0
- package/esm2022/services/i18n/es-CO.mjs +322 -0
- package/esm2022/services/i18n/pt-BR.mjs +322 -0
- package/esm2022/services/index.mjs +3 -0
- package/esm2022/services/lib-translation.service.mjs +58 -0
- package/esm2022/services/producer-invoice/index.mjs +3 -0
- package/esm2022/services/producer-invoice/producer-invoice-dto.mjs +2 -0
- package/esm2022/services/producer-invoice/producer-invoice.mjs +49 -0
- package/esm2022/services/producer-invoice/producer-invoice.service.mjs +56 -0
- package/esm2022/services/websocket/async-lock.mjs +27 -0
- package/esm2022/services/websocket/index.mjs +7 -0
- package/esm2022/services/websocket/models/index.mjs +2 -0
- package/esm2022/services/websocket/models/primitive-manager.mjs +45 -0
- package/esm2022/services/websocket/protocols/index.mjs +2 -0
- package/esm2022/services/websocket/protocols/on-event-options.mjs +2 -0
- package/esm2022/services/websocket/protocols/primitive-event.mjs +2 -0
- package/esm2022/services/websocket/user-information.service.mjs +34 -0
- package/esm2022/services/websocket/websocket.module.mjs +27 -0
- package/esm2022/services/websocket/websocket.service.mjs +327 -0
- package/{fesm2015/senior-agronegocio-angular-components.js → fesm2022/senior-agronegocio-angular-components.mjs} +8600 -7930
- package/fesm2022/senior-agronegocio-angular-components.mjs.map +1 -0
- package/form-validator/agro-form-validator.d.ts +117 -117
- package/form-validator/index.d.ts +1 -1
- package/index.d.ts +5 -0
- package/lib-translation.module.d.ts +8 -2
- package/package.json +60 -29
- package/pipe/cnpj-cpf/cnpj-cpf.pipe.d.ts +7 -4
- package/pipe/cnpj-cpf/cnpj-cpf.pipe.module.d.ts +8 -2
- package/pipe/cnpj-cpf/index.d.ts +2 -2
- package/pipe/index.d.ts +5 -5
- package/pipe/kilogram/index.d.ts +2 -2
- package/pipe/kilogram/kilogram.module.d.ts +8 -2
- package/pipe/kilogram/kilogram.pipe.d.ts +11 -8
- package/pipe/lib-translate.pipe.d.ts +10 -7
- package/pipe/stringifier/index.d.ts +2 -2
- package/pipe/stringifier/stringifier.pipe.d.ts +12 -9
- package/pipe/stringifier/stringifier.pipe.module.d.ts +8 -2
- package/pipe/telephone/index.d.ts +2 -2
- package/pipe/telephone/telephone.pipe.d.ts +24 -21
- package/pipe/telephone/telephone.pipe.module.d.ts +8 -2
- package/public-api.d.ts +9 -8
- package/services/agro-entity-service.d.ts +63 -62
- package/services/i18n/en-US.d.ts +321 -321
- package/services/i18n/es-CO.d.ts +321 -321
- package/services/i18n/pt-BR.d.ts +321 -321
- package/services/index.d.ts +2 -2
- package/services/lib-translation.service.d.ts +19 -16
- package/services/producer-invoice/index.d.ts +3 -3
- package/services/producer-invoice/producer-invoice-dto.d.ts +26 -26
- package/services/producer-invoice/producer-invoice.d.ts +27 -27
- package/services/producer-invoice/producer-invoice.service.d.ts +21 -18
- package/services/websocket/async-lock.d.ts +6 -6
- package/services/websocket/index.d.ts +6 -6
- package/services/websocket/models/index.d.ts +1 -1
- package/services/websocket/models/primitive-manager.d.ts +19 -19
- package/services/websocket/protocols/index.d.ts +2 -2
- package/services/websocket/protocols/on-event-options.d.ts +8 -8
- package/services/websocket/protocols/primitive-event.d.ts +10 -10
- package/services/websocket/user-information.service.d.ts +10 -7
- package/services/websocket/websocket.module.d.ts +7 -2
- package/services/websocket/websocket.service.d.ts +103 -100
- package/bundles/senior-agronegocio-angular-components.umd.js +0 -8888
- package/bundles/senior-agronegocio-angular-components.umd.js.map +0 -1
- package/bundles/senior-agronegocio-angular-components.umd.min.js +0 -17
- package/bundles/senior-agronegocio-angular-components.umd.min.js.map +0 -1
- package/esm2015/agro-angular-components.module.js +0 -22
- package/esm2015/common/agro-array-utils.class.js +0 -74
- package/esm2015/common/agro-cookie-utils.class.js +0 -47
- package/esm2015/common/agro-date-utils.class.js +0 -121
- package/esm2015/common/agro-logics.class.js +0 -54
- package/esm2015/common/agro-name-utils.class.js +0 -60
- package/esm2015/common/agro-number-utils.class.js +0 -129
- package/esm2015/common/agro-object-stringifier.class.js +0 -34
- package/esm2015/common/agro-object-utils.class.js +0 -301
- package/esm2015/common/agro-platform-utils.class.js +0 -119
- package/esm2015/common/agro-regex.constant.js +0 -156
- package/esm2015/common/agro-string-utils.class.js +0 -364
- package/esm2015/common/agro-unit-converter.class.js +0 -255
- package/esm2015/common/colors.class.js +0 -79
- package/esm2015/common/index.js +0 -13
- package/esm2015/components/cancel-event-dialog/cancel-event-dialog-config.js +0 -1
- package/esm2015/components/cancel-event-dialog/cancel-event-dialog.component.js +0 -117
- package/esm2015/components/cancel-event-dialog/cancel-event-dialog.module.js +0 -19
- package/esm2015/components/cancel-event-dialog/index.js +0 -3
- package/esm2015/components/event-control-board/common/control-status.js +0 -7
- package/esm2015/components/event-control-board/common/documentsToIssue.js +0 -6
- package/esm2015/components/event-control-board/common/event-control-constants.js +0 -113
- package/esm2015/components/event-control-board/common/event-operation.js +0 -54
- package/esm2015/components/event-control-board/common/event-origin.js +0 -14
- package/esm2015/components/event-control-board/common/event-status.js +0 -9
- package/esm2015/components/event-control-board/common/input-fields-translate.js +0 -11
- package/esm2015/components/event-control-board/common/input-fields.js +0 -7
- package/esm2015/components/event-control-board/common/invoice-type.js +0 -11
- package/esm2015/components/event-control-board/common/lookup-error-message.constants.js +0 -11
- package/esm2015/components/event-control-board/common/operation.js +0 -7
- package/esm2015/components/event-control-board/common/operationType.js +0 -7
- package/esm2015/components/event-control-board/common/status-entity.js +0 -6
- package/esm2015/components/event-control-board/common/ticket-status.js +0 -9
- package/esm2015/components/event-control-board/common/transfer-status.js +0 -8
- package/esm2015/components/event-control-board/event-control-board.component.js +0 -597
- package/esm2015/components/event-control-board/event-control-board.module.js +0 -66
- package/esm2015/components/event-control-board/index.js +0 -22
- package/esm2015/components/event-control-board/service/e001pes/e001pes-dto.js +0 -1
- package/esm2015/components/event-control-board/service/e001pes/e001pes.js +0 -20
- package/esm2015/components/event-control-board/service/e001pes/e001pes.module.js +0 -24
- package/esm2015/components/event-control-board/service/e001pes/e001pes.service.js +0 -34
- package/esm2015/components/event-control-board/service/e001tns/e001tns-dto.js +0 -1
- package/esm2015/components/event-control-board/service/e001tns/e001tns.js +0 -42
- package/esm2015/components/event-control-board/service/e001tns/e001tns.module.js +0 -26
- package/esm2015/components/event-control-board/service/e001tns/e001tns.service.js +0 -24
- package/esm2015/components/event-control-board/service/e012fam/e012fam-dto.js +0 -1
- package/esm2015/components/event-control-board/service/e012fam/e012fam.js +0 -20
- package/esm2015/components/event-control-board/service/e012fam/e012fam.service.js +0 -24
- package/esm2015/components/event-control-board/service/e070emp/e070emp-dto.js +0 -1
- package/esm2015/components/event-control-board/service/e070emp/e070emp.js +0 -29
- package/esm2015/components/event-control-board/service/e070emp/e070emp.module.js +0 -24
- package/esm2015/components/event-control-board/service/e070emp/e070emp.service.js +0 -31
- package/esm2015/components/event-control-board/service/e070fil/e070fil-dto.js +0 -1
- package/esm2015/components/event-control-board/service/e070fil/e070fil.js +0 -41
- package/esm2015/components/event-control-board/service/e070fil/e070fil.module.js +0 -24
- package/esm2015/components/event-control-board/service/e070fil/e070fil.service.js +0 -31
- package/esm2015/components/event-control-board/service/e075der/e075der-dto.js +0 -1
- package/esm2015/components/event-control-board/service/e075der/e075der.js +0 -31
- package/esm2015/components/event-control-board/service/e075der/e075der.module.js +0 -24
- package/esm2015/components/event-control-board/service/e075der/e075der.service.js +0 -29
- package/esm2015/components/event-control-board/service/e113saf/e113saf-dto.js +0 -1
- package/esm2015/components/event-control-board/service/e205dep/deposit-dto.js +0 -1
- package/esm2015/components/event-control-board/service/e205dep/e205dep-dto.js +0 -1
- package/esm2015/components/event-control-board/service/e205dep/e205dep.js +0 -20
- package/esm2015/components/event-control-board/service/e205dep/e205dep.service.js +0 -29
- package/esm2015/components/event-control-board/service/event-control/event-control-dto.js +0 -1
- package/esm2015/components/event-control-board/service/event-control/event-control.js +0 -20
- package/esm2015/components/event-control-board/service/event-control/event-control.module.js +0 -24
- package/esm2015/components/event-control-board/service/event-control/event-control.service.js +0 -24
- package/esm2015/components/event-control-board/service/event-control-item/event-control-item-dto.js +0 -1
- package/esm2015/components/event-control-board/service/event-control-item/event-control-item.js +0 -35
- package/esm2015/components/event-control-board/service/event-control-item/event-control-item.module.js +0 -24
- package/esm2015/components/event-control-board/service/event-control-item/event-control-item.service.js +0 -29
- package/esm2015/components/event-control-board/service/external-invoice/external-invoice-dto.js +0 -1
- package/esm2015/components/event-control-board/service/external-invoice/external-invoice.js +0 -20
- package/esm2015/components/event-control-board/service/external-invoice/external-invoice.module.js +0 -24
- package/esm2015/components/event-control-board/service/external-invoice/external-invoice.service.js +0 -24
- package/esm2015/components/event-control-board/service/fixation-entity/fixation-dto.js +0 -1
- package/esm2015/components/event-control-board/service/fixation-entity/fixation.module.js +0 -24
- package/esm2015/components/event-control-board/service/fixation-entity/fixation.service.js +0 -29
- package/esm2015/components/event-control-board/service/invoice/invoice-dto.js +0 -1
- package/esm2015/components/event-control-board/service/invoice/invoice.js +0 -43
- package/esm2015/components/event-control-board/service/invoice/invoice.module.js +0 -26
- package/esm2015/components/event-control-board/service/invoice/invoice.service.js +0 -24
- package/esm2015/components/event-control-board/service/origination/operationType.js +0 -7
- package/esm2015/components/event-control-board/service/origination/origination-dto.js +0 -1
- package/esm2015/components/event-control-board/service/origination/origination.js +0 -59
- package/esm2015/components/event-control-board/service/origination/origination.module.js +0 -24
- package/esm2015/components/event-control-board/service/origination/origination.service.js +0 -24
- package/esm2015/components/event-control-board/service/paginator-storage.service.js +0 -32
- package/esm2015/components/event-control-board/service/rural-estate/rural-estate-dto.js +0 -1
- package/esm2015/components/event-control-board/service/rural-estate/rural-estate.js +0 -78
- package/esm2015/components/event-control-board/service/rural-estate/rural-estate.module.js +0 -24
- package/esm2015/components/event-control-board/service/rural-estate/rural-estate.service.js +0 -24
- package/esm2015/components/event-control-board/service/ticket/ticket-dto.js +0 -1
- package/esm2015/components/event-control-board/service/ticket/ticket.js +0 -39
- package/esm2015/components/event-control-board/service/ticket/ticket.module.js +0 -26
- package/esm2015/components/event-control-board/service/ticket/ticket.service.js +0 -59
- package/esm2015/components/event-control-board/service/transfer/transfer-dto.js +0 -1
- package/esm2015/components/event-control-board/service/transfer/transfer.module.js +0 -26
- package/esm2015/components/event-control-board/service/transfer/transfer.service.js +0 -34
- package/esm2015/components/event-control-board/shared.module.js +0 -56
- package/esm2015/components/event-steps/event-steps.component.js +0 -103
- package/esm2015/components/event-steps/event-steps.module.js +0 -16
- package/esm2015/components/event-steps/index.js +0 -3
- package/esm2015/components/financial-title-table/financial-title-table-options.interface.js +0 -1
- package/esm2015/components/financial-title-table/financial-title-table.component.js +0 -416
- package/esm2015/components/financial-title-table/financial-title-table.module.js +0 -45
- package/esm2015/components/financial-title-table/index.js +0 -4
- package/esm2015/components/financial-title-table/services/financial/agro-financial.service.js +0 -69
- package/esm2015/components/financial-title-table/services/financial/enums.js +0 -33
- package/esm2015/components/financial-title-table/services/financial/index.js +0 -3
- package/esm2015/components/financial-title-table/services/financial/intefaces.js +0 -1
- package/esm2015/components/index.js +0 -6
- package/esm2015/components/modal-invoice-pj/for-fixation/modal-fixation-options.interface.js +0 -1
- package/esm2015/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.component.js +0 -191
- package/esm2015/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.module.js +0 -16
- package/esm2015/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.component.js +0 -64
- package/esm2015/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.module.js +0 -16
- package/esm2015/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.component.js +0 -37
- package/esm2015/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.module.js +0 -16
- package/esm2015/components/modal-invoice-pj/index.js +0 -8
- package/esm2015/components/modal-invoice-pj/modal-invoice-pj-base.class.js +0 -196
- package/esm2015/components/modal-invoice-pj/modal-invoice-pj-options.interface.js +0 -1
- package/esm2015/components/modal-invoice-pj/modal-shared-imports.js +0 -32
- package/esm2015/components/modal-invoice-pj/services/agro-invoice/agro-invoice.module.js +0 -28
- package/esm2015/components/modal-invoice-pj/services/agro-invoice/agro-invoice.service.js +0 -49
- package/esm2015/components/modal-invoice-pj/services/agro-invoice/index.js +0 -3
- package/esm2015/components/modal-invoice-pj/services/agro-invoice/interfaces.js +0 -13
- package/esm2015/enums/agro-entity-status.enum.js +0 -6
- package/esm2015/enums/agro-numbers.enum.js +0 -1009
- package/esm2015/enums/agro-string-masks.enum.js +0 -12
- package/esm2015/enums/date-comparison-type.enum.js +0 -6
- package/esm2015/enums/fixation-status.js +0 -10
- package/esm2015/enums/index.js +0 -8
- package/esm2015/enums/invoice-status.enum.js +0 -14
- package/esm2015/enums/number-comparison-type.enum.js +0 -10
- package/esm2015/enums/unit-measurement.enum.js +0 -60
- package/esm2015/form-validator/agro-form-validator.js +0 -319
- package/esm2015/form-validator/index.js +0 -2
- package/esm2015/lib-translation.module.js +0 -23
- package/esm2015/pipe/cnpj-cpf/cnpj-cpf.pipe.js +0 -28
- package/esm2015/pipe/cnpj-cpf/cnpj-cpf.pipe.module.js +0 -15
- package/esm2015/pipe/cnpj-cpf/index.js +0 -3
- package/esm2015/pipe/index.js +0 -6
- package/esm2015/pipe/kilogram/index.js +0 -3
- package/esm2015/pipe/kilogram/kilogram.module.js +0 -17
- package/esm2015/pipe/kilogram/kilogram.pipe.js +0 -38
- package/esm2015/pipe/lib-translate.pipe.js +0 -24
- package/esm2015/pipe/stringifier/index.js +0 -3
- package/esm2015/pipe/stringifier/stringifier.pipe.js +0 -13
- package/esm2015/pipe/stringifier/stringifier.pipe.module.js +0 -15
- package/esm2015/pipe/telephone/index.js +0 -3
- package/esm2015/pipe/telephone/telephone.pipe.js +0 -91
- package/esm2015/pipe/telephone/telephone.pipe.module.js +0 -15
- package/esm2015/public-api.js +0 -9
- package/esm2015/senior-agronegocio-angular-components.js +0 -7
- package/esm2015/services/agro-entity-service.js +0 -132
- package/esm2015/services/i18n/en-US.js +0 -322
- package/esm2015/services/i18n/es-CO.js +0 -322
- package/esm2015/services/i18n/pt-BR.js +0 -322
- package/esm2015/services/index.js +0 -3
- package/esm2015/services/lib-translation.service.js +0 -58
- package/esm2015/services/producer-invoice/index.js +0 -3
- package/esm2015/services/producer-invoice/producer-invoice-dto.js +0 -1
- package/esm2015/services/producer-invoice/producer-invoice.js +0 -32
- package/esm2015/services/producer-invoice/producer-invoice.service.js +0 -64
- package/esm2015/services/websocket/async-lock.js +0 -34
- package/esm2015/services/websocket/index.js +0 -6
- package/esm2015/services/websocket/models/index.js +0 -2
- package/esm2015/services/websocket/models/primitive-manager.js +0 -39
- package/esm2015/services/websocket/protocols/index.js +0 -1
- package/esm2015/services/websocket/protocols/on-event-options.js +0 -1
- package/esm2015/services/websocket/protocols/primitive-event.js +0 -1
- package/esm2015/services/websocket/user-information.service.js +0 -34
- package/esm2015/services/websocket/websocket.module.js +0 -21
- package/esm2015/services/websocket/websocket.service.js +0 -338
- package/esm5/agro-angular-components.module.js +0 -26
- package/esm5/common/agro-array-utils.class.js +0 -90
- package/esm5/common/agro-cookie-utils.class.js +0 -54
- package/esm5/common/agro-date-utils.class.js +0 -126
- package/esm5/common/agro-logics.class.js +0 -96
- package/esm5/common/agro-name-utils.class.js +0 -64
- package/esm5/common/agro-number-utils.class.js +0 -137
- package/esm5/common/agro-object-stringifier.class.js +0 -38
- package/esm5/common/agro-object-utils.class.js +0 -306
- package/esm5/common/agro-platform-utils.class.js +0 -123
- package/esm5/common/agro-regex.constant.js +0 -156
- package/esm5/common/agro-string-utils.class.js +0 -380
- package/esm5/common/agro-unit-converter.class.js +0 -258
- package/esm5/common/colors.class.js +0 -83
- package/esm5/common/index.js +0 -13
- package/esm5/components/cancel-event-dialog/cancel-event-dialog-config.js +0 -1
- package/esm5/components/cancel-event-dialog/cancel-event-dialog.component.js +0 -128
- package/esm5/components/cancel-event-dialog/cancel-event-dialog.module.js +0 -22
- package/esm5/components/cancel-event-dialog/index.js +0 -3
- package/esm5/components/event-control-board/common/control-status.js +0 -7
- package/esm5/components/event-control-board/common/documentsToIssue.js +0 -6
- package/esm5/components/event-control-board/common/event-control-constants.js +0 -113
- package/esm5/components/event-control-board/common/event-operation.js +0 -54
- package/esm5/components/event-control-board/common/event-origin.js +0 -14
- package/esm5/components/event-control-board/common/event-status.js +0 -9
- package/esm5/components/event-control-board/common/input-fields-translate.js +0 -11
- package/esm5/components/event-control-board/common/input-fields.js +0 -7
- package/esm5/components/event-control-board/common/invoice-type.js +0 -11
- package/esm5/components/event-control-board/common/lookup-error-message.constants.js +0 -11
- package/esm5/components/event-control-board/common/operation.js +0 -7
- package/esm5/components/event-control-board/common/operationType.js +0 -7
- package/esm5/components/event-control-board/common/status-entity.js +0 -6
- package/esm5/components/event-control-board/common/ticket-status.js +0 -9
- package/esm5/components/event-control-board/common/transfer-status.js +0 -8
- package/esm5/components/event-control-board/event-control-board.component.js +0 -619
- package/esm5/components/event-control-board/event-control-board.module.js +0 -69
- package/esm5/components/event-control-board/index.js +0 -22
- package/esm5/components/event-control-board/service/e001pes/e001pes-dto.js +0 -1
- package/esm5/components/event-control-board/service/e001pes/e001pes.js +0 -25
- package/esm5/components/event-control-board/service/e001pes/e001pes.module.js +0 -27
- package/esm5/components/event-control-board/service/e001pes/e001pes.service.js +0 -37
- package/esm5/components/event-control-board/service/e001tns/e001tns-dto.js +0 -1
- package/esm5/components/event-control-board/service/e001tns/e001tns.js +0 -45
- package/esm5/components/event-control-board/service/e001tns/e001tns.module.js +0 -29
- package/esm5/components/event-control-board/service/e001tns/e001tns.service.js +0 -27
- package/esm5/components/event-control-board/service/e012fam/e012fam-dto.js +0 -1
- package/esm5/components/event-control-board/service/e012fam/e012fam.js +0 -25
- package/esm5/components/event-control-board/service/e012fam/e012fam.service.js +0 -27
- package/esm5/components/event-control-board/service/e070emp/e070emp-dto.js +0 -1
- package/esm5/components/event-control-board/service/e070emp/e070emp.js +0 -34
- package/esm5/components/event-control-board/service/e070emp/e070emp.module.js +0 -27
- package/esm5/components/event-control-board/service/e070emp/e070emp.service.js +0 -34
- package/esm5/components/event-control-board/service/e070fil/e070fil-dto.js +0 -1
- package/esm5/components/event-control-board/service/e070fil/e070fil.js +0 -48
- package/esm5/components/event-control-board/service/e070fil/e070fil.module.js +0 -27
- package/esm5/components/event-control-board/service/e070fil/e070fil.service.js +0 -34
- package/esm5/components/event-control-board/service/e075der/e075der-dto.js +0 -1
- package/esm5/components/event-control-board/service/e075der/e075der.js +0 -36
- package/esm5/components/event-control-board/service/e075der/e075der.module.js +0 -27
- package/esm5/components/event-control-board/service/e075der/e075der.service.js +0 -32
- package/esm5/components/event-control-board/service/e113saf/e113saf-dto.js +0 -1
- package/esm5/components/event-control-board/service/e113saf/e113saf.js +0 -25
- package/esm5/components/event-control-board/service/e205dep/deposit-dto.js +0 -1
- package/esm5/components/event-control-board/service/e205dep/e205dep-dto.js +0 -1
- package/esm5/components/event-control-board/service/e205dep/e205dep.js +0 -25
- package/esm5/components/event-control-board/service/e205dep/e205dep.service.js +0 -32
- package/esm5/components/event-control-board/service/event-control/event-control-dto.js +0 -1
- package/esm5/components/event-control-board/service/event-control/event-control.js +0 -25
- package/esm5/components/event-control-board/service/event-control/event-control.module.js +0 -27
- package/esm5/components/event-control-board/service/event-control/event-control.service.js +0 -27
- package/esm5/components/event-control-board/service/event-control-item/event-control-item-dto.js +0 -1
- package/esm5/components/event-control-board/service/event-control-item/event-control-item.js +0 -40
- package/esm5/components/event-control-board/service/event-control-item/event-control-item.module.js +0 -27
- package/esm5/components/event-control-board/service/event-control-item/event-control-item.service.js +0 -32
- package/esm5/components/event-control-board/service/external-invoice/external-invoice-dto.js +0 -1
- package/esm5/components/event-control-board/service/external-invoice/external-invoice.js +0 -25
- package/esm5/components/event-control-board/service/external-invoice/external-invoice.module.js +0 -27
- package/esm5/components/event-control-board/service/external-invoice/external-invoice.service.js +0 -27
- package/esm5/components/event-control-board/service/fixation-entity/fixation-dto.js +0 -1
- package/esm5/components/event-control-board/service/fixation-entity/fixation.module.js +0 -27
- package/esm5/components/event-control-board/service/fixation-entity/fixation.service.js +0 -32
- package/esm5/components/event-control-board/service/invoice/invoice-dto.js +0 -1
- package/esm5/components/event-control-board/service/invoice/invoice.js +0 -48
- package/esm5/components/event-control-board/service/invoice/invoice.module.js +0 -29
- package/esm5/components/event-control-board/service/invoice/invoice.service.js +0 -27
- package/esm5/components/event-control-board/service/origination/operationType.js +0 -7
- package/esm5/components/event-control-board/service/origination/origination-dto.js +0 -1
- package/esm5/components/event-control-board/service/origination/origination.js +0 -62
- package/esm5/components/event-control-board/service/origination/origination.module.js +0 -27
- package/esm5/components/event-control-board/service/origination/origination.service.js +0 -27
- package/esm5/components/event-control-board/service/paginator-storage.service.js +0 -71
- package/esm5/components/event-control-board/service/rural-estate/rural-estate-dto.js +0 -1
- package/esm5/components/event-control-board/service/rural-estate/rural-estate.js +0 -83
- package/esm5/components/event-control-board/service/rural-estate/rural-estate.module.js +0 -27
- package/esm5/components/event-control-board/service/rural-estate/rural-estate.service.js +0 -27
- package/esm5/components/event-control-board/service/ticket/ticket-dto.js +0 -1
- package/esm5/components/event-control-board/service/ticket/ticket.js +0 -44
- package/esm5/components/event-control-board/service/ticket/ticket.module.js +0 -29
- package/esm5/components/event-control-board/service/ticket/ticket.service.js +0 -62
- package/esm5/components/event-control-board/service/transfer/transfer-dto.js +0 -1
- package/esm5/components/event-control-board/service/transfer/transfer.module.js +0 -29
- package/esm5/components/event-control-board/service/transfer/transfer.service.js +0 -37
- package/esm5/components/event-control-board/shared.module.js +0 -59
- package/esm5/components/event-steps/event-steps.component.js +0 -113
- package/esm5/components/event-steps/event-steps.module.js +0 -19
- package/esm5/components/event-steps/index.js +0 -3
- package/esm5/components/financial-title-table/financial-title-table-options.interface.js +0 -1
- package/esm5/components/financial-title-table/financial-title-table.component.js +0 -438
- package/esm5/components/financial-title-table/financial-title-table.module.js +0 -48
- package/esm5/components/financial-title-table/index.js +0 -4
- package/esm5/components/financial-title-table/services/financial/agro-financial.service.js +0 -76
- package/esm5/components/financial-title-table/services/financial/enums.js +0 -33
- package/esm5/components/financial-title-table/services/financial/index.js +0 -3
- package/esm5/components/financial-title-table/services/financial/intefaces.js +0 -1
- package/esm5/components/index.js +0 -6
- package/esm5/components/modal-invoice-pj/for-fixation/modal-fixation-options.interface.js +0 -1
- package/esm5/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.component.js +0 -223
- package/esm5/components/modal-invoice-pj/for-fixation/modal-invoice-pj-for-fixation.module.js +0 -19
- package/esm5/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.component.js +0 -67
- package/esm5/components/modal-invoice-pj/for-origination/modal-invoice-pj-for-origination.module.js +0 -19
- package/esm5/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.component.js +0 -40
- package/esm5/components/modal-invoice-pj/for-transfer/modal-invoice-pj-for-transfer.module.js +0 -19
- package/esm5/components/modal-invoice-pj/index.js +0 -8
- package/esm5/components/modal-invoice-pj/modal-invoice-pj-base.class.js +0 -213
- package/esm5/components/modal-invoice-pj/modal-invoice-pj-options.interface.js +0 -1
- package/esm5/components/modal-invoice-pj/modal-shared-imports.js +0 -32
- package/esm5/components/modal-invoice-pj/services/agro-invoice/agro-invoice.module.js +0 -31
- package/esm5/components/modal-invoice-pj/services/agro-invoice/agro-invoice.service.js +0 -56
- package/esm5/components/modal-invoice-pj/services/agro-invoice/index.js +0 -3
- package/esm5/components/modal-invoice-pj/services/agro-invoice/interfaces.js +0 -13
- package/esm5/enums/agro-entity-status.enum.js +0 -6
- package/esm5/enums/agro-string-masks.enum.js +0 -12
- package/esm5/enums/date-comparison-type.enum.js +0 -6
- package/esm5/enums/fixation-status.js +0 -10
- package/esm5/enums/http-codes.enum.js +0 -66
- package/esm5/enums/index.js +0 -8
- package/esm5/enums/invoice-status.enum.js +0 -14
- package/esm5/enums/number-comparison-type.enum.js +0 -10
- package/esm5/enums/unit-measurement.enum.js +0 -60
- package/esm5/form-validator/agro-form-validator.js +0 -341
- package/esm5/form-validator/index.js +0 -2
- package/esm5/lib-translation.module.js +0 -26
- package/esm5/pipe/cnpj-cpf/cnpj-cpf.pipe.js +0 -35
- package/esm5/pipe/cnpj-cpf/cnpj-cpf.pipe.module.js +0 -18
- package/esm5/pipe/cnpj-cpf/index.js +0 -3
- package/esm5/pipe/index.js +0 -6
- package/esm5/pipe/kilogram/index.js +0 -3
- package/esm5/pipe/kilogram/kilogram.module.js +0 -20
- package/esm5/pipe/kilogram/kilogram.pipe.js +0 -41
- package/esm5/pipe/lib-translate.pipe.js +0 -29
- package/esm5/pipe/stringifier/index.js +0 -3
- package/esm5/pipe/stringifier/stringifier.pipe.js +0 -16
- package/esm5/pipe/stringifier/stringifier.pipe.module.js +0 -18
- package/esm5/pipe/telephone/index.js +0 -3
- package/esm5/pipe/telephone/telephone.pipe.js +0 -95
- package/esm5/pipe/telephone/telephone.pipe.module.js +0 -18
- package/esm5/public-api.js +0 -9
- package/esm5/senior-agronegocio-angular-components.js +0 -7
- package/esm5/services/agro-entity-service.js +0 -143
- package/esm5/services/i18n/en-US.js +0 -322
- package/esm5/services/i18n/es-CO.js +0 -322
- package/esm5/services/i18n/pt-BR.js +0 -322
- package/esm5/services/index.js +0 -3
- package/esm5/services/lib-translation.service.js +0 -60
- package/esm5/services/producer-invoice/index.js +0 -3
- package/esm5/services/producer-invoice/producer-invoice-dto.js +0 -1
- package/esm5/services/producer-invoice/producer-invoice.js +0 -37
- package/esm5/services/producer-invoice/producer-invoice.service.js +0 -72
- package/esm5/services/websocket/async-lock.js +0 -43
- package/esm5/services/websocket/index.js +0 -6
- package/esm5/services/websocket/models/index.js +0 -2
- package/esm5/services/websocket/models/primitive-manager.js +0 -58
- package/esm5/services/websocket/protocols/index.js +0 -1
- package/esm5/services/websocket/protocols/on-event-options.js +0 -1
- package/esm5/services/websocket/protocols/primitive-event.js +0 -1
- package/esm5/services/websocket/user-information.service.js +0 -38
- package/esm5/services/websocket/websocket.module.js +0 -24
- package/esm5/services/websocket/websocket.service.js +0 -410
- package/fesm2015/senior-agronegocio-angular-components.js.map +0 -1
- package/fesm5/senior-agronegocio-angular-components.js +0 -8646
- package/fesm5/senior-agronegocio-angular-components.js.map +0 -1
- package/senior-agronegocio-angular-components.d.ts +0 -6
- package/senior-agronegocio-angular-components.metadata.json +0 -1
|
@@ -1,416 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { registerLocaleData } from "@angular/common";
|
|
3
|
-
import localePt from "@angular/common/locales/pt";
|
|
4
|
-
import { Component, EventEmitter, Input, Output, ViewChild } from "@angular/core";
|
|
5
|
-
import { FormArray, FormControl, FormGroup, Validators } from "@angular/forms";
|
|
6
|
-
import { BadgeColors, ButtonPriority, ButtonSize, FieldType } from "@seniorsistemas/angular-components";
|
|
7
|
-
import { LazyLoadEvent, MessageService, Table } from "primeng";
|
|
8
|
-
import { catchError, takeUntil } from "rxjs/operators";
|
|
9
|
-
import { AgroObjectUtils } from "../../common/agro-object-utils.class";
|
|
10
|
-
import { AGRO_NUMBERS } from "../../enums";
|
|
11
|
-
import { LibTranslationService } from "../../services/lib-translation.service";
|
|
12
|
-
import { AgroFinancialService } from "./services/financial/agro-financial.service";
|
|
13
|
-
import { OrderByType, TitleFieldsOrderBy } from "./services/financial/enums";
|
|
14
|
-
let FinancialTitleTableComponent = class FinancialTitleTableComponent {
|
|
15
|
-
constructor(translate, financialService, messageService) {
|
|
16
|
-
this.translate = translate;
|
|
17
|
-
this.financialService = financialService;
|
|
18
|
-
this.messageService = messageService;
|
|
19
|
-
this.selected = [];
|
|
20
|
-
this.selectionChange = new EventEmitter();
|
|
21
|
-
this.gridData = [];
|
|
22
|
-
this.errorMessage = {
|
|
23
|
-
required: this.translate.instant("agro.angular_components.error_required"),
|
|
24
|
-
lessThanZero: this.translate.instant("agro.angular_components.error_less_or_equal_zero"),
|
|
25
|
-
greatherThanAllowed: this.translate.instant("agro.angular_components.error_greater_than_allowed"),
|
|
26
|
-
};
|
|
27
|
-
this.tableInitialized = false;
|
|
28
|
-
this.showSidebar = false;
|
|
29
|
-
this.gridColumns = [];
|
|
30
|
-
this.sidebarFields = [];
|
|
31
|
-
this.componentLoading = false;
|
|
32
|
-
this.buttonSize = ButtonSize;
|
|
33
|
-
this.buttonPriority = ButtonPriority;
|
|
34
|
-
this.badgeColors = BadgeColors;
|
|
35
|
-
this.form = new FormGroup({
|
|
36
|
-
titlesForm: new FormArray([], []),
|
|
37
|
-
});
|
|
38
|
-
this.currentListParams = { first: 0, rows: 10, sortField: null, sortOrder: null, filters: {} };
|
|
39
|
-
this.ngUnsubscribe = new EventEmitter();
|
|
40
|
-
registerLocaleData(localePt);
|
|
41
|
-
}
|
|
42
|
-
get titlesForm() {
|
|
43
|
-
return this.form.get("titlesForm");
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Inicializa colunas da tabela e campos exibidos no sidebar,
|
|
47
|
-
* depois dispara a primeira busca de títulos com os filtros informados em {@link options}.
|
|
48
|
-
*/
|
|
49
|
-
ngOnInit() {
|
|
50
|
-
this.gridColumns = [
|
|
51
|
-
this.getFields("title", "agro.angular_components.title", ["numberTitle"], FieldType.String, TitleFieldsOrderBy.NUMBER_TITLE),
|
|
52
|
-
this.getFields("type", "agro.angular_components.type", ["titleType.cod", "titleType.desc"], FieldType.String, null),
|
|
53
|
-
this.getFields("entryDate", "agro.angular_components.entry", ["issueDate"], FieldType.Date, TitleFieldsOrderBy.ISSUE_DATE),
|
|
54
|
-
this.getFields("dueDate", "agro.angular_components.due_date", ["dueDate"], FieldType.Date, TitleFieldsOrderBy.DUE_DATE),
|
|
55
|
-
this.getFields("valueOrigin", "agro.angular_components.original_value", ["values.originalValue"], FieldType.Money, TitleFieldsOrderBy.ORIGINAL_VALUE),
|
|
56
|
-
this.getFields("valueOpen", "agro.angular_components.open_value", ["values.openValue"], FieldType.Money, TitleFieldsOrderBy.OPEN_VALUE),
|
|
57
|
-
this.getFields("valueNet", "agro.angular_components.value_net", ["values.netValue"], FieldType.Money, TitleFieldsOrderBy.NET_VALUE),
|
|
58
|
-
this.getFields("valuePaid", "agro.angular_components.value_to_pay", ["valuePaid"], FieldType.Money, null),
|
|
59
|
-
];
|
|
60
|
-
this.sidebarFields = [
|
|
61
|
-
this.getFields("company", "agro.angular_components.company", ["company.cod", "company.desc"], FieldType.String, null),
|
|
62
|
-
this.getFields("branch", "agro.angular_components.branch", ["branch.cod", "branch.desc"], FieldType.String, null),
|
|
63
|
-
this.getFields("producer", "agro.angular_components.producer", ["producer.cod", "producer.desc"], FieldType.String, null),
|
|
64
|
-
...this.gridColumns.filter((col) => !["valuePaid", "valueNet"].includes(col.field)),
|
|
65
|
-
this.getFields("valueFees", "agro.angular_components.value_fees", ["values.interestValue"], FieldType.Money, null),
|
|
66
|
-
this.getFields("valueFine", "agro.angular_components.value_fine", ["values.fineValue"], FieldType.Money, null),
|
|
67
|
-
this.getFields("valueCharge", "agro.angular_components.value_charge", ["values.chargeValue"], FieldType.Money, null),
|
|
68
|
-
this.getFields("valueCorrection", "agro.angular_components.value_correction", ["values.monetaryCorrectionValue"], FieldType.Money, null),
|
|
69
|
-
this.getFields("valueAdditional", "agro.angular_components.value_additional", ["values.otherAdditionValue"], FieldType.Money, null),
|
|
70
|
-
this.getFields("valueDiscount", "agro.angular_components.value_discount", ["values.discountValue"], FieldType.Money, null),
|
|
71
|
-
this.getFields("valueOtherDiscount", "agro.angular_components.value_other_discount", ["values.otherDiscountValue"], FieldType.Money, null),
|
|
72
|
-
...this.gridColumns.filter((col) => ["valueNet"].includes(col.field)),
|
|
73
|
-
];
|
|
74
|
-
this.updateGrid(this.currentListParams);
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Após a renderização da tabela, sincroniza o estado de checkbox/linha editável
|
|
78
|
-
* com o array de títulos selecionados para evitar acesso a referências ainda não criadas.
|
|
79
|
-
*/
|
|
80
|
-
ngAfterViewInit() {
|
|
81
|
-
this.tableInitialized = true;
|
|
82
|
-
this.synchronizeCheckboxAndEditableFieldState();
|
|
83
|
-
}
|
|
84
|
-
ngOnDestroy() {
|
|
85
|
-
this.ngUnsubscribe.next();
|
|
86
|
-
this.ngUnsubscribe.complete();
|
|
87
|
-
}
|
|
88
|
-
getPageSize() {
|
|
89
|
-
var _a;
|
|
90
|
-
return (_a = this.currentListParams) === null || _a === void 0 ? void 0 : _a.rows;
|
|
91
|
-
}
|
|
92
|
-
getRowIndex() {
|
|
93
|
-
var _a;
|
|
94
|
-
return (_a = this.currentListParams) === null || _a === void 0 ? void 0 : _a.first;
|
|
95
|
-
}
|
|
96
|
-
getSortField() {
|
|
97
|
-
var _a;
|
|
98
|
-
return (_a = this.currentListParams) === null || _a === void 0 ? void 0 : _a.sortField;
|
|
99
|
-
}
|
|
100
|
-
getSortOrder() {
|
|
101
|
-
var _a;
|
|
102
|
-
return (_a = this.currentListParams) === null || _a === void 0 ? void 0 : _a.sortOrder;
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Faz requisição paginada/ordenada para listar os títulos, monta o formulário
|
|
106
|
-
* reativo para cada linha e trata erros de backend exibindo mensagem ao usuário.
|
|
107
|
-
*
|
|
108
|
-
* @param event parâmetros de paginação, ordenação e filtros vindos do PrimeNG.
|
|
109
|
-
*/
|
|
110
|
-
updateGrid(event) {
|
|
111
|
-
this.componentLoading = true;
|
|
112
|
-
const size = event.rows;
|
|
113
|
-
const page = event.first / size;
|
|
114
|
-
const field = event.sortField;
|
|
115
|
-
const sortOrder = event.sortOrder;
|
|
116
|
-
this.currentListParams = event;
|
|
117
|
-
const input = {
|
|
118
|
-
pageRequest: { offset: page, orderBy: this.getRecOrderBy(field, sortOrder), size },
|
|
119
|
-
filter: this.options,
|
|
120
|
-
};
|
|
121
|
-
this.financialService
|
|
122
|
-
.listTitles(input)
|
|
123
|
-
.pipe(takeUntil(this.ngUnsubscribe), catchError((err) => {
|
|
124
|
-
this.componentLoading = false;
|
|
125
|
-
const detailMsg = (err === null || err === void 0 ? void 0 : err.message) || "agro.angular_components.error_loading_accounts_description";
|
|
126
|
-
this.addMessage("warn", "agro.angular_components.error_loading_accounts_title", detailMsg);
|
|
127
|
-
throw err;
|
|
128
|
-
}))
|
|
129
|
-
.subscribe((list) => {
|
|
130
|
-
this.gridData = list.titles || [];
|
|
131
|
-
this.createFormGroupForTitle();
|
|
132
|
-
this.gridTotalRecords = list.totalElements;
|
|
133
|
-
this.componentLoading = false;
|
|
134
|
-
this.synchronizeCheckboxAndEditableFieldState();
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
onSelectionChange(event) {
|
|
138
|
-
this.selected = event;
|
|
139
|
-
this.synchronizeCheckboxAndEditableFieldState();
|
|
140
|
-
this.selectionChange.emit(this.selected);
|
|
141
|
-
}
|
|
142
|
-
/**
|
|
143
|
-
* Quando um item é desmarcado, limpa o `valuePaid` correspondente
|
|
144
|
-
* tanto no modelo da linha quanto no {@link titlesForm}, sem disparar novos eventos.
|
|
145
|
-
*
|
|
146
|
-
* @param event evento de desmarcação emitido pelo PrimeNG.
|
|
147
|
-
*/
|
|
148
|
-
onUnselect(event) {
|
|
149
|
-
var _a;
|
|
150
|
-
const row = this.gridData.find((r) => r.id === event.data.id);
|
|
151
|
-
if (row) {
|
|
152
|
-
row.valuePaid = null;
|
|
153
|
-
// atualiza form control correspondente
|
|
154
|
-
const idx = this.gridData.findIndex((g) => g.id === row.id);
|
|
155
|
-
const ctrl = (_a = this.titlesForm.at(idx)) === null || _a === void 0 ? void 0 : _a.get("valuePaid");
|
|
156
|
-
if (ctrl) {
|
|
157
|
-
ctrl.setValue(null, { emitEvent: false });
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
showDetails(rowData) {
|
|
162
|
-
this.selectedRow = rowData;
|
|
163
|
-
this.showSidebar = true;
|
|
164
|
-
}
|
|
165
|
-
closeDetails() {
|
|
166
|
-
this.showSidebar = false;
|
|
167
|
-
}
|
|
168
|
-
isLastColumn(index, columns) {
|
|
169
|
-
return index === columns.length - 1;
|
|
170
|
-
}
|
|
171
|
-
getStyleColumns(field) {
|
|
172
|
-
let styleClass = {};
|
|
173
|
-
switch (field) {
|
|
174
|
-
case "checkbox":
|
|
175
|
-
styleClass = { width: "50px" };
|
|
176
|
-
break;
|
|
177
|
-
case "title":
|
|
178
|
-
case "dueDate":
|
|
179
|
-
styleClass = { width: "150px" };
|
|
180
|
-
break;
|
|
181
|
-
case "type":
|
|
182
|
-
case "entryDate":
|
|
183
|
-
styleClass = { width: "120px" };
|
|
184
|
-
break;
|
|
185
|
-
default:
|
|
186
|
-
styleClass = { width: "198px" };
|
|
187
|
-
break;
|
|
188
|
-
}
|
|
189
|
-
return styleClass;
|
|
190
|
-
}
|
|
191
|
-
getProp(obj, col) {
|
|
192
|
-
if (!obj || !(col === null || col === void 0 ? void 0 : col.path)) {
|
|
193
|
-
return "-";
|
|
194
|
-
}
|
|
195
|
-
let separator = "";
|
|
196
|
-
let result = "";
|
|
197
|
-
for (const path of col.path) {
|
|
198
|
-
result += separator + AgroObjectUtils.getPropAndFormatValue(obj, path, col.type);
|
|
199
|
-
separator = " - ";
|
|
200
|
-
}
|
|
201
|
-
return result;
|
|
202
|
-
}
|
|
203
|
-
/**
|
|
204
|
-
* Reconstrói o {@link titlesForm} com base na {@link gridData} atual,
|
|
205
|
-
* preservando valores já informados em itens selecionados e registrando listeners de mudança.
|
|
206
|
-
*/
|
|
207
|
-
createFormGroupForTitle() {
|
|
208
|
-
const titlesFormArray = this.form.get("titlesForm");
|
|
209
|
-
titlesFormArray.clear();
|
|
210
|
-
this.gridData.forEach((item) => {
|
|
211
|
-
var _a;
|
|
212
|
-
const selectedItem = this.selected.find((sel) => sel.id === item.id);
|
|
213
|
-
const group = new FormGroup({
|
|
214
|
-
id: new FormControl(item.id || null, []),
|
|
215
|
-
valuePaid: new FormControl((_a = selectedItem === null || selectedItem === void 0 ? void 0 : selectedItem.valuePaid) !== null && _a !== void 0 ? _a : null, []),
|
|
216
|
-
});
|
|
217
|
-
this.subscribeToValuePaidChanges(group, item);
|
|
218
|
-
titlesFormArray.push(group);
|
|
219
|
-
});
|
|
220
|
-
}
|
|
221
|
-
/**
|
|
222
|
-
* Observa mudanças no campo `valuePaid` de uma linha.
|
|
223
|
-
* Atualiza o array {@link selected} quando o título está selecionado,
|
|
224
|
-
* aplica o limite do valor líquido (`netValue`) e evita loops de eventos usando
|
|
225
|
-
* `setValue` com `emitEvent: false`.
|
|
226
|
-
*
|
|
227
|
-
* @param formGroup grupo de formulário associado à linha da tabela.
|
|
228
|
-
* @param item título financeiro correspondente à linha.
|
|
229
|
-
*/
|
|
230
|
-
subscribeToValuePaidChanges(formGroup, item) {
|
|
231
|
-
const valuePaidControl = formGroup.get("valuePaid");
|
|
232
|
-
valuePaidControl.valueChanges.pipe(takeUntil(this.ngUnsubscribe)).subscribe((rawValue) => {
|
|
233
|
-
var _a, _b, _c, _d;
|
|
234
|
-
const valuePaid = this.parseNumberSafe(rawValue);
|
|
235
|
-
const titleId = (_a = formGroup.get("id")) === null || _a === void 0 ? void 0 : _a.value;
|
|
236
|
-
// atualiza selected se o título estiver selecionado
|
|
237
|
-
const selIndex = this.selected.findIndex((s) => s.id === titleId);
|
|
238
|
-
if (selIndex !== -1) {
|
|
239
|
-
// garante que valuePaid seja numérico ou null
|
|
240
|
-
this.selected[selIndex].valuePaid = valuePaid;
|
|
241
|
-
const net = Number((_c = (_b = this.selected[selIndex]) === null || _b === void 0 ? void 0 : _b.values) === null || _c === void 0 ? void 0 : _c.netValue) || 0;
|
|
242
|
-
if (valuePaid !== null && valuePaid > net) {
|
|
243
|
-
this.selected[selIndex].valuePaid = net;
|
|
244
|
-
// Usado para evitar loop infinito de eventos
|
|
245
|
-
valuePaidControl.setValue(net, { emitEvent: false });
|
|
246
|
-
}
|
|
247
|
-
// atualiza flag de erro
|
|
248
|
-
this.selected[selIndex].hasError = valuePaidControl.invalid;
|
|
249
|
-
// emite mudança de seleção
|
|
250
|
-
this.selectionChange.emit(this.selected);
|
|
251
|
-
}
|
|
252
|
-
else {
|
|
253
|
-
// se não estiver selecionado, apenas aplica limite local baseado no item
|
|
254
|
-
const net = Number((_d = item === null || item === void 0 ? void 0 : item.values) === null || _d === void 0 ? void 0 : _d.netValue) || 0;
|
|
255
|
-
if (valuePaid !== null && valuePaid > net) {
|
|
256
|
-
valuePaidControl.setValue(net, { emitEvent: false });
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
|
-
});
|
|
260
|
-
}
|
|
261
|
-
parseNumberSafe(value) {
|
|
262
|
-
if (value === null || value === undefined || value === "") {
|
|
263
|
-
return null;
|
|
264
|
-
}
|
|
265
|
-
if (typeof value === "number") {
|
|
266
|
-
return value;
|
|
267
|
-
}
|
|
268
|
-
if (typeof value === "string") {
|
|
269
|
-
const cleaned = value.replace(/\./g, "").replace(",", ".");
|
|
270
|
-
const n = parseFloat(cleaned);
|
|
271
|
-
return isNaN(n) ? null : n;
|
|
272
|
-
}
|
|
273
|
-
return null;
|
|
274
|
-
}
|
|
275
|
-
/**
|
|
276
|
-
* Inicia o modo de edição na linha da tabela PrimeNG e aplica regras de validação
|
|
277
|
-
* no formulário reativo correspondente àquela linha.
|
|
278
|
-
*
|
|
279
|
-
* @param row objeto de linha recebido da tabela.
|
|
280
|
-
*/
|
|
281
|
-
initRowEdit(row) {
|
|
282
|
-
if (this.table) {
|
|
283
|
-
this.table.initRowEdit(row);
|
|
284
|
-
this.applyValidationToRowEdit(row);
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
/**
|
|
288
|
-
* Adiciona validadores dinamicamente ao campo `valuePaid` da linha em edição,
|
|
289
|
-
* marca o controle como sujo e força revalidação imediata para exibir erros na tela.
|
|
290
|
-
*
|
|
291
|
-
* @param row objeto de linha para aplicar validação.
|
|
292
|
-
*/
|
|
293
|
-
applyValidationToRowEdit(row) {
|
|
294
|
-
const rowIndex = this.gridData.findIndex((r) => r.id === row.id);
|
|
295
|
-
const formGroup = this.titlesForm.at(rowIndex);
|
|
296
|
-
if (!formGroup) {
|
|
297
|
-
return;
|
|
298
|
-
}
|
|
299
|
-
const valuePaidControl = formGroup.get("valuePaid");
|
|
300
|
-
valuePaidControl === null || valuePaidControl === void 0 ? void 0 : valuePaidControl.setValidators([this.getValidatorsForRowEdit(), Validators.required]);
|
|
301
|
-
valuePaidControl === null || valuePaidControl === void 0 ? void 0 : valuePaidControl.markAsDirty();
|
|
302
|
-
valuePaidControl === null || valuePaidControl === void 0 ? void 0 : valuePaidControl.updateValueAndValidity();
|
|
303
|
-
}
|
|
304
|
-
/**
|
|
305
|
-
* Constrói o {@link ValidatorFn} que valida o `valuePaid`:
|
|
306
|
-
* - deve ser maior que zero;
|
|
307
|
-
* - não pode ultrapassar o valor líquido (`netValue`) do título.
|
|
308
|
-
*
|
|
309
|
-
* Retorna os erros consumidos pelo componente `s-control-errors`.
|
|
310
|
-
*/
|
|
311
|
-
getValidatorsForRowEdit() {
|
|
312
|
-
return (control) => {
|
|
313
|
-
var _a, _b;
|
|
314
|
-
const parent = control.parent;
|
|
315
|
-
const titleId = (_a = parent === null || parent === void 0 ? void 0 : parent.get("id")) === null || _a === void 0 ? void 0 : _a.value;
|
|
316
|
-
const rawValue = control.value;
|
|
317
|
-
const valuePaid = this.parseNumberSafe(rawValue);
|
|
318
|
-
if (valuePaid === null || valuePaid === undefined) {
|
|
319
|
-
return null;
|
|
320
|
-
}
|
|
321
|
-
if (valuePaid <= AGRO_NUMBERS.ZERO) {
|
|
322
|
-
return { lessThanZero: true };
|
|
323
|
-
}
|
|
324
|
-
// procura pelo título no selected ou no gridData (prioriza selected)
|
|
325
|
-
const selectedRow = this.selected.find((sel) => sel.id === titleId) || this.gridData.find((g) => g.id === titleId);
|
|
326
|
-
const netValue = Number((_b = selectedRow === null || selectedRow === void 0 ? void 0 : selectedRow.values) === null || _b === void 0 ? void 0 : _b.netValue) || 0;
|
|
327
|
-
if (valuePaid > netValue) {
|
|
328
|
-
return { greatherThanAllowed: true };
|
|
329
|
-
}
|
|
330
|
-
return null;
|
|
331
|
-
};
|
|
332
|
-
}
|
|
333
|
-
cancelRowEdit(row) {
|
|
334
|
-
if (this.table) {
|
|
335
|
-
this.table.cancelRowEdit(row);
|
|
336
|
-
}
|
|
337
|
-
}
|
|
338
|
-
/**
|
|
339
|
-
* Mantém o estado visual da tabela (checkbox marcado e linha editável) em
|
|
340
|
-
* sincronia com o array de títulos selecionados, inclusive restaurando valores
|
|
341
|
-
* digitados ao recarregar, ordenar ou paginar a grid.
|
|
342
|
-
*/
|
|
343
|
-
synchronizeCheckboxAndEditableFieldState() {
|
|
344
|
-
if (!this.gridData || !this.tableInitialized) {
|
|
345
|
-
return;
|
|
346
|
-
}
|
|
347
|
-
this.gridData.forEach((row, index) => {
|
|
348
|
-
var _a;
|
|
349
|
-
const selectedRow = this.selected.find((sel) => sel.id === row.id);
|
|
350
|
-
const ctrl = (_a = this.titlesForm.at(index)) === null || _a === void 0 ? void 0 : _a.get("valuePaid");
|
|
351
|
-
if (selectedRow) {
|
|
352
|
-
// Sincroniza o valor pago do item selecionado
|
|
353
|
-
row.valuePaid = selectedRow.valuePaid;
|
|
354
|
-
if (ctrl) {
|
|
355
|
-
ctrl.setValue(selectedRow.valuePaid, { emitEvent: false });
|
|
356
|
-
}
|
|
357
|
-
this.initRowEdit(row);
|
|
358
|
-
}
|
|
359
|
-
else {
|
|
360
|
-
// Cancela a edição se não estiver selecionado
|
|
361
|
-
if (ctrl) {
|
|
362
|
-
ctrl.setValue(null, { emitEvent: false });
|
|
363
|
-
}
|
|
364
|
-
this.cancelRowEdit(row);
|
|
365
|
-
}
|
|
366
|
-
});
|
|
367
|
-
}
|
|
368
|
-
getFields(field, header, path, type, fieldOrderBy) {
|
|
369
|
-
return { field, path, type, header: this.translate.instant(header), orderBy: fieldOrderBy };
|
|
370
|
-
}
|
|
371
|
-
addMessage(severity, summary, detail, sticky = false, life = 7000) {
|
|
372
|
-
this.messageService.add({
|
|
373
|
-
severity,
|
|
374
|
-
sticky,
|
|
375
|
-
life,
|
|
376
|
-
summary: this.translate.instant(summary),
|
|
377
|
-
detail: this.translate.instant(detail),
|
|
378
|
-
});
|
|
379
|
-
}
|
|
380
|
-
getRecOrderBy(field, order) {
|
|
381
|
-
const gridColumnField = this.gridColumns.find((col) => col.field === field);
|
|
382
|
-
if ((gridColumnField === null || gridColumnField === void 0 ? void 0 : gridColumnField.orderBy) === null) {
|
|
383
|
-
return null;
|
|
384
|
-
}
|
|
385
|
-
return {
|
|
386
|
-
field: (gridColumnField === null || gridColumnField === void 0 ? void 0 : gridColumnField.orderBy) || TitleFieldsOrderBy.NUMBER_TITLE,
|
|
387
|
-
order: order === 1 ? OrderByType.ASC : OrderByType.DESC,
|
|
388
|
-
};
|
|
389
|
-
}
|
|
390
|
-
};
|
|
391
|
-
FinancialTitleTableComponent.ctorParameters = () => [
|
|
392
|
-
{ type: LibTranslationService },
|
|
393
|
-
{ type: AgroFinancialService },
|
|
394
|
-
{ type: MessageService }
|
|
395
|
-
];
|
|
396
|
-
__decorate([
|
|
397
|
-
ViewChild("TitleTable")
|
|
398
|
-
], FinancialTitleTableComponent.prototype, "table", void 0);
|
|
399
|
-
__decorate([
|
|
400
|
-
Input()
|
|
401
|
-
], FinancialTitleTableComponent.prototype, "options", void 0);
|
|
402
|
-
__decorate([
|
|
403
|
-
Input()
|
|
404
|
-
], FinancialTitleTableComponent.prototype, "selected", void 0);
|
|
405
|
-
__decorate([
|
|
406
|
-
Output()
|
|
407
|
-
], FinancialTitleTableComponent.prototype, "selectionChange", void 0);
|
|
408
|
-
FinancialTitleTableComponent = __decorate([
|
|
409
|
-
Component({
|
|
410
|
-
selector: "s-financial-title-table",
|
|
411
|
-
template: "<ng-container *sLoadingState=\"componentLoading\">\r\n <div [hidden]=\"gridData?.length > 0\">\r\n <s-empty-state\r\n iconClass=\"fa fa-inbox\"\r\n title=\"{{ 'agro.angular_components.no_accounts_found_title' | libTranslate }}\"\r\n [showPrimaryAction]=\"false\"\r\n description=\"{{ 'agro.angular_components.no_accounts_found_description' | libTranslate }}\"\r\n ></s-empty-state>\r\n </div>\r\n <p-table\r\n #TitleTable\r\n [hidden]=\"gridData?.length === 0\"\r\n [value]=\"gridData\"\r\n [columns]=\"gridColumns\"\r\n dataKey=\"id\"\r\n [lazy]=\"true\"\r\n [paginator]=\"true\"\r\n [totalRecords]=\"gridTotalRecords\"\r\n [sortField]=\"getSortField()\"\r\n [sortOrder]=\"getSortOrder()\"\r\n [first]=\"getRowIndex()\"\r\n [rows]=\"getPageSize()\"\r\n [lazyLoadOnInit]=\"false\"\r\n [rowsPerPageOptions]=\"[10, 20, 50, 100]\"\r\n (onLazyLoad)=\"updateGrid($event)\"\r\n [(selection)]=\"selected\"\r\n (selectionChange)=\"onSelectionChange($event)\"\r\n (onRowUnselect)=\"onUnselect($event)\"\r\n sortMode=\"single\"\r\n [selectionMode]=\"'multiple'\"\r\n editMode=\"row\"\r\n [scrollable]=\"true\"\r\n [sTableFrozenPosition]=\"'right'\"\r\n [sTableFrozenValue]=\"gridData\"\r\n frozenWidth=\"160px\"\r\n >\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n <th class=\"table-checkbox-header\" scope=\"col\" [ngStyle]=\"getStyleColumns('checkbox')\">\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n </th>\r\n <ng-container *ngFor=\"let col of columns; let i = index\">\r\n <ng-container *ngIf=\"col.orderBy; else notSortable\">\r\n <th [pSortableColumn]=\"col.field\" [scope]=\"'col'\" [ngStyle]=\"getStyleColumns(col.field)\">\r\n {{ col.header }}\r\n <p-sortIcon [field]=\"col.field\"></p-sortIcon>\r\n </th>\r\n </ng-container>\r\n <ng-template #notSortable>\r\n <th [scope]=\"'col'\" [ngStyle]=\"getStyleColumns(col.field)\">\r\n {{ col.header }}\r\n </th>\r\n </ng-template>\r\n </ng-container>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"frozenheader\">\r\n <tr>\r\n <th scope=\"col\" pFrozenColumn>\r\n {{ 'agro.angular_components.details' | libTranslate }}\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template\r\n pTemplate=\"body\"\r\n let-rowData\r\n let-columns=\"columns\"\r\n let-rowIndex=\"rowIndex\"\r\n let-editing=\"editing\"\r\n let-ri=\"rowIndex\"\r\n >\r\n <tr [pEditableRow]=\"rowData\" [formGroup]=\"$any(titlesForm.at(rowIndex))\">\r\n <td class=\"table-checkbox-header\" [ngStyle]=\"getStyleColumns('checkbox')\">\r\n <p-tableCheckbox [value]=\"rowData\"></p-tableCheckbox>\r\n </td>\r\n <td *ngFor=\"let col of columns; let i = index\" [ngStyle]=\"getStyleColumns(col.field)\">\r\n <p-cellEditor>\r\n <ng-template pTemplate=\"input\">\r\n <ng-container [ngSwitch]=\"col.field\">\r\n <ng-container *ngSwitchCase=\"'valuePaid'\">\r\n <input\r\n pInputText\r\n sNumberInput\r\n class=\"w-full\"\r\n id=\"valuePaid-input-{{ rowData.id || rowIndex }}\"\r\n decimalSeparator=\",\"\r\n thousandsSeparator=\".\"\r\n formControlName=\"valuePaid\"\r\n type=\"text\"\r\n [scale]=\"2\"\r\n [allowNegative]=\"false\"\r\n [attr.aria-label]=\"'agro.angular_components.value_paid' | libTranslate\"\r\n />\r\n <br />\r\n <s-control-errors\r\n [control]=\"$any(titlesForm.at(rowIndex)).get('valuePaid')\"\r\n [errorMessages]=\"errorMessage\"\r\n >\r\n </s-control-errors>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n {{ getProp(rowData, col) }}\r\n </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template pTemplate=\"output\">\r\n <ng-container [ngSwitch]=\"col.field\">\r\n <ng-container *ngSwitchCase=\"'valuePaid'\">\r\n {{ rowData['valuePaid'] || 0 | currency: 'BRL':'symbol':'1.2-2':'pt-BR' }}\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n {{ getProp(rowData, col) }}\r\n </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n </p-cellEditor>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"frozenbody\" let-rowData let-columns>\r\n <tr [pEditableRow]=\"rowData\">\r\n <td pFrozenColumn>\r\n <s-button\r\n id=\"details-{{ rowData.id }}\"\r\n (click)=\"showDetails(rowData)\"\r\n (keydown.enter)=\"showDetails(rowData)\"\r\n label=\"{{ 'agro.angular_components.details' | libTranslate }}\"\r\n [priority]=\"buttonPriority.Default\"\r\n [disabled]=\"false\"\r\n [auxiliary]=\"true\"\r\n [size]=\"buttonSize.Small\"\r\n iconClass=\"fa fa-rocket\"\r\n ></s-button>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n</ng-container>\r\n<s-sidebar\r\n [(visible)]=\"showSidebar\"\r\n position=\"right\"\r\n [header]=\"('agro.angular_components.account_details' | libTranslate) + ' ' + (selectedRow?.numberTitle || '')\"\r\n>\r\n <div class=\"ui-fluid\">\r\n <div class=\"ui-g\">\r\n <ng-container *ngFor=\"let field of sidebarFields\">\r\n <div class=\"ui-g-4\">\r\n <span>\r\n <strong>{{ field.header }}</strong>\r\n </span>\r\n <p>{{ getProp(selectedRow, field) || '-' }}</p>\r\n </div>\r\n </ng-container>\r\n <ng-template #noValue>-</ng-template>\r\n <div class=\"ui-g-4\">\r\n <span>\r\n <strong>{{ 'agro.angular_components.status_label' | libTranslate }}</strong>\r\n </span>\r\n <p>\r\n <ng-container [ngSwitch]=\"selectedRow?.status\">\r\n <span *ngSwitchCase=\"'OPEN'\">\r\n <s-badge\r\n [color]=\"badgeColors.Yellow\"\r\n text=\"{{ 'agro.angular_components.status_open' | libTranslate }}\"\r\n [selectable]=\"false\"\r\n ></s-badge>\r\n </span>\r\n <span *ngSwitchCase=\"'PAID'\">\r\n <s-badge\r\n [color]=\"badgeColors.Green\"\r\n text=\"{{ 'agro.angular_components.status_paid' | libTranslate }}\"\r\n [selectable]=\"false\"\r\n ></s-badge>\r\n </span>\r\n </ng-container>\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n <s-footer>\r\n <s-button label=\"{{ 'agro.angular_components.close' | libTranslate }}\" (onClick)=\"closeDetails()\"> </s-button>\r\n </s-footer>\r\n</s-sidebar>\r\n",
|
|
412
|
-
styles: [".error-message{color:#c13018;margin-top:5px;font-size:12px}"]
|
|
413
|
-
})
|
|
414
|
-
], FinancialTitleTableComponent);
|
|
415
|
-
export { FinancialTitleTableComponent };
|
|
416
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluYW5jaWFsLXRpdGxlLXRhYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3ItYWdyb25lZ29jaW8vYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9maW5hbmNpYWwtdGl0bGUtdGFibGUvZmluYW5jaWFsLXRpdGxlLXRhYmxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxRQUFRLE1BQU0sNEJBQTRCLENBQUM7QUFDbEQsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwSCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQWUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUYsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxXQUFXLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQXNCN0UsSUFBYSw0QkFBNEIsR0FBekMsTUFB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QUMsQ0FBQyxXQUFXLENBQUMsSUFBSTtTQUMxRCxDQUFDO0lBQ04sQ0FBQztDQUNKLENBQUE7O1lBcGFtQyxxQkFBcUI7WUFDZCxvQkFBb0I7WUFDdEIsY0FBYzs7QUExQzFCO0lBQXhCLFNBQVMsQ0FBQyxZQUFZLENBQUM7MkRBQWM7QUFFN0I7SUFBUixLQUFLLEVBQUU7NkRBQWlDO0FBQ2hDO0lBQVIsS0FBSyxFQUFFOzhEQUF3QztBQUN0QztJQUFULE1BQU0sRUFBRTtxRUFBNkM7QUFMN0MsNEJBQTRCO0lBTHhDLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSx5QkFBeUI7UUFDbkMsazFSQUFxRDs7S0FFeEQsQ0FBQztHQUNXLDRCQUE0QixDQTZjeEM7U0E3Y1ksNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVnaXN0ZXJMb2NhbGVEYXRhIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgbG9jYWxlUHQgZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL3B0XCI7XHJcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybUFycmF5LCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JGbiwgVmFsaWRhdG9ycyB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBCYWRnZUNvbG9ycywgQnV0dG9uUHJpb3JpdHksIEJ1dHRvblNpemUsIEZpZWxkVHlwZSB9IGZyb20gXCJAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzXCI7XHJcbmltcG9ydCB7IExhenlMb2FkRXZlbnQsIE1lc3NhZ2VTZXJ2aWNlLCBUYWJsZSB9IGZyb20gXCJwcmltZW5nXCI7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBBZ3JvT2JqZWN0VXRpbHMgfSBmcm9tIFwiLi4vLi4vY29tbW9uL2Fncm8tb2JqZWN0LXV0aWxzLmNsYXNzXCI7XHJcbmltcG9ydCB7IEFHUk9fTlVNQkVSUyB9IGZyb20gXCIuLi8uLi9lbnVtc1wiO1xyXG5pbXBvcnQgeyBMaWJUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvbGliLXRyYW5zbGF0aW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgRmluYW5jaWFsVGl0bGVPcHRpb25zIH0gZnJvbSBcIi4vZmluYW5jaWFsLXRpdGxlLXRhYmxlLW9wdGlvbnMuaW50ZXJmYWNlXCI7XHJcbmltcG9ydCB7IEFncm9GaW5hbmNpYWxTZXJ2aWNlIH0gZnJvbSBcIi4vc2VydmljZXMvZmluYW5jaWFsL2Fncm8tZmluYW5jaWFsLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgT3JkZXJCeVR5cGUsIFRpdGxlRmllbGRzT3JkZXJCeSB9IGZyb20gXCIuL3NlcnZpY2VzL2ZpbmFuY2lhbC9lbnVtc1wiO1xyXG5pbXBvcnQge1xyXG4gICAgRmluYW5jaWFsUXVlcnlEYXRhUmVzcG9uc2UsXHJcbiAgICBGaW5hbmNpYWxUaXRsZUxpc3REdG8sXHJcbiAgICBSZWNPcmRlckJ5LFxyXG4gICAgUmVjb3JkVGl0bGVEdG8sXHJcbiAgICBSZXF1ZXN0TGlzdFRpdGxlc0lucHV0LFxyXG59IGZyb20gXCIuL3NlcnZpY2VzL2ZpbmFuY2lhbC9pbnRlZmFjZXNcIjtcclxuXHJcbmludGVyZmFjZSBDb2x1bW5Db25maWcge1xyXG4gICAgZmllbGQ6IHN0cmluZztcclxuICAgIGhlYWRlcjogc3RyaW5nO1xyXG4gICAgcGF0aDogc3RyaW5nW107XHJcbiAgICB0eXBlOiBGaWVsZFR5cGU7XHJcbiAgICBvcmRlckJ5OiBUaXRsZUZpZWxkc09yZGVyQnkgfCBudWxsO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcInMtZmluYW5jaWFsLXRpdGxlLXRhYmxlXCIsXHJcbiAgICB0ZW1wbGF0ZVVybDogXCIuL2ZpbmFuY2lhbC10aXRsZS10YWJsZS5jb21wb25lbnQuaHRtbFwiLFxyXG4gICAgc3R5bGVVcmxzOiBbXCIuL2ZpbmFuY2lhbC10aXRsZS10YWJsZS5jb21wb25lbnQuY3NzXCJdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRmluYW5jaWFsVGl0bGVUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuICAgIEBWaWV3Q2hpbGQoXCJUaXRsZVRhYmxlXCIpIHRhYmxlOiBUYWJsZTtcclxuXHJcbiAgICBASW5wdXQoKSBvcHRpb25zITogRmluYW5jaWFsVGl0bGVPcHRpb25zO1xyXG4gICAgQElucHV0KCkgc2VsZWN0ZWQ6IEZpbmFuY2lhbFRpdGxlTGlzdER0b1tdID0gW107XHJcbiAgICBAT3V0cHV0KCkgc2VsZWN0aW9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcclxuXHJcbiAgICBncmlkRGF0YTogRmluYW5jaWFsVGl0bGVMaXN0RHRvW10gPSBbXTtcclxuICAgIGdyaWRUb3RhbFJlY29yZHM6IG51bWJlcjtcclxuXHJcbiAgICBlcnJvck1lc3NhZ2U6IGFueSA9IHtcclxuICAgICAgICByZXF1aXJlZDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX3JlcXVpcmVkXCIpLFxyXG4gICAgICAgIGxlc3NUaGFuWmVybzogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX2xlc3Nfb3JfZXF1YWxfemVyb1wiKSxcclxuICAgICAgICBncmVhdGhlclRoYW5BbGxvd2VkOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3JfZ3JlYXRlcl90aGFuX2FsbG93ZWRcIiksXHJcbiAgICB9O1xyXG5cclxuICAgIHRhYmxlSW5pdGlhbGl6ZWQgPSBmYWxzZTtcclxuICAgIHNob3dTaWRlYmFyID0gZmFsc2U7XHJcbiAgICBzZWxlY3RlZFJvdzogUmVjb3JkVGl0bGVEdG87XHJcblxyXG4gICAgZ3JpZENvbHVtbnM6IENvbHVtbkNvbmZpZ1tdID0gW107XHJcbiAgICBzaWRlYmFyRmllbGRzOiBhbnlbXSA9IFtdO1xyXG5cclxuICAgIGNvbXBvbmVudExvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgICBidXR0b25TaXplID0gQnV0dG9uU2l6ZTtcclxuICAgIGJ1dHRvblByaW9yaXR5ID0gQnV0dG9uUHJpb3JpdHk7XHJcbiAgICBiYWRnZUNvbG9ycyA9IEJhZGdlQ29sb3JzO1xyXG5cclxuICAgIGZvcm0gPSBuZXcgRm9ybUdyb3VwKHtcclxuICAgICAgICB0aXRsZXNGb3JtOiBuZXcgRm9ybUFycmF5KFtdLCBbXSksXHJcbiAgICB9KTtcclxuXHJcbiAgICBwcml2YXRlIGN1cnJlbnRMaXN0UGFyYW1zOiBMYXp5TG9hZEV2ZW50ID0geyBmaXJzdDogMCwgcm93czogMTAsIHNvcnRGaWVsZDogbnVsbCwgc29ydE9yZGVyOiBudWxsLCBmaWx0ZXJzOiB7fSB9O1xyXG4gICAgcmVhZG9ubHkgbmdVbnN1YnNjcmliZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgICBnZXQgdGl0bGVzRm9ybSgpOiBGb3JtQXJyYXkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmZvcm0uZ2V0KFwidGl0bGVzRm9ybVwiKSBhcyBGb3JtQXJyYXk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IExpYlRyYW5zbGF0aW9uU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGZpbmFuY2lhbFNlcnZpY2U6IEFncm9GaW5hbmNpYWxTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlXHJcbiAgICApIHtcclxuICAgICAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlUHQpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogSW5pY2lhbGl6YSBjb2x1bmFzIGRhIHRhYmVsYSBlIGNhbXBvcyBleGliaWRvcyBubyBzaWRlYmFyLFxyXG4gICAgICogZGVwb2lzIGRpc3BhcmEgYSBwcmltZWlyYSBidXNjYSBkZSB0w610dWxvcyBjb20gb3MgZmlsdHJvcyBpbmZvcm1hZG9zIGVtIHtAbGluayBvcHRpb25zfS5cclxuICAgICAqL1xyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5ncmlkQ29sdW1ucyA9IFtcclxuICAgICAgICAgICAgdGhpcy5nZXRGaWVsZHMoXCJ0aXRsZVwiLCBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnRpdGxlXCIsIFtcIm51bWJlclRpdGxlXCJdLCBGaWVsZFR5cGUuU3RyaW5nLCBUaXRsZUZpZWxkc09yZGVyQnkuTlVNQkVSX1RJVExFKSxcclxuICAgICAgICAgICAgdGhpcy5nZXRGaWVsZHMoXCJ0eXBlXCIsIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMudHlwZVwiLCBbXCJ0aXRsZVR5cGUuY29kXCIsIFwidGl0bGVUeXBlLmRlc2NcIl0sIEZpZWxkVHlwZS5TdHJpbmcsIG51bGwpLFxyXG4gICAgICAgICAgICB0aGlzLmdldEZpZWxkcyhcImVudHJ5RGF0ZVwiLCBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVudHJ5XCIsIFtcImlzc3VlRGF0ZVwiXSwgRmllbGRUeXBlLkRhdGUsIFRpdGxlRmllbGRzT3JkZXJCeS5JU1NVRV9EQVRFKSxcclxuICAgICAgICAgICAgdGhpcy5nZXRGaWVsZHMoXCJkdWVEYXRlXCIsIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZHVlX2RhdGVcIiwgW1wiZHVlRGF0ZVwiXSwgRmllbGRUeXBlLkRhdGUsIFRpdGxlRmllbGRzT3JkZXJCeS5EVUVfREFURSksXHJcbiAgICAgICAgICAgIHRoaXMuZ2V0RmllbGRzKFxyXG4gICAgICAgICAgICAgICAgXCJ2YWx1ZU9yaWdpblwiLFxyXG4gICAgICAgICAgICAgICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5vcmlnaW5hbF92YWx1ZVwiLFxyXG4gICAgICAgICAgICAgICAgW1widmFsdWVzLm9yaWdpbmFsVmFsdWVcIl0sXHJcbiAgICAgICAgICAgICAgICBGaWVsZFR5cGUuTW9uZXksXHJcbiAgICAgICAgICAgICAgICBUaXRsZUZpZWxkc09yZGVyQnkuT1JJR0lOQUxfVkFMVUVcclxuICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgdGhpcy5nZXRGaWVsZHMoXHJcbiAgICAgICAgICAgICAgICBcInZhbHVlT3BlblwiLFxyXG4gICAgICAgICAgICAgICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5vcGVuX3ZhbHVlXCIsXHJcbiAgICAgICAgICAgICAgICBbXCJ2YWx1ZXMub3BlblZhbHVlXCJdLFxyXG4gICAgICAgICAgICAgICAgRmllbGRUeXBlLk1vbmV5LFxyXG4gICAgICAgICAgICAgICAgVGl0bGVGaWVsZHNPcmRlckJ5Lk9QRU5fVkFMVUVcclxuICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgdGhpcy5nZXRGaWVsZHMoXHJcbiAgICAgICAgICAgICAgICBcInZhbHVlTmV0XCIsXHJcbiAgICAgICAgICAgICAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnZhbHVlX25ldFwiLFxyXG4gICAgICAgICAgICAgICAgW1widmFsdWVzLm5ldFZhbHVlXCJdLFxyXG4gICAgICAgICAgICAgICAgRmllbGRUeXBlLk1vbmV5LFxyXG4gICAgICAgICAgICAgICAgVGl0bGVGaWVsZHNPcmRlckJ5Lk5FVF9WQUxVRVxyXG4gICAgICAgICAgICApLFxyXG4gICAgICAgICAgICB0aGlzLmdldEZpZWxkcyhcInZhbHVlUGFpZFwiLCBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnZhbHVlX3RvX3BheVwiLCBbXCJ2YWx1ZVBhaWRcIl0sIEZpZWxkVHlwZS5Nb25leSwgbnVsbCksXHJcbiAgICAgICAgXTtcclxuICAgICAgICB0aGlzLnNpZGViYXJGaWVsZHMgPSBbXHJcbiAgICAgICAgICAgIHRoaXMuZ2V0RmllbGRzKFwiY29tcGFueVwiLCBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmNvbXBhbnlcIiwgW1wiY29tcGFueS5jb2RcIiwgXCJjb21wYW55LmRlc2NcIl0sIEZpZWxkVHlwZS5TdHJpbmcsIG51bGwpLFxyXG4gICAgICAgICAgICB0aGlzLmdldEZpZWxkcyhcImJyYW5jaFwiLCBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmJyYW5jaFwiLCBbXCJicmFuY2guY29kXCIsIFwiYnJhbmNoLmRlc2NcIl0sIEZpZWxkVHlwZS5TdHJpbmcsIG51bGwpLFxyXG4gICAgICAgICAgICB0aGlzLmdldEZpZWxkcyhcInByb2R1Y2VyXCIsIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucHJvZHVjZXJcIiwgW1wicHJvZHVjZXIuY29kXCIsIFwicHJvZHVjZXIuZGVzY1wiXSwgRmllbGRUeXBlLlN0cmluZywgbnVsbCksXHJcbiAgICAgICAgICAgIC4uLnRoaXMuZ3JpZENvbHVtbnMuZmlsdGVyKChjb2wpID0+ICFbXCJ2YWx1ZVBhaWRcIiwgXCJ2YWx1ZU5ldFwiXS5pbmNsdWRlcyhjb2wuZmllbGQpKSxcclxuICAgICAgICAgICAgdGhpcy5nZXRGaWVsZHMoXCJ2YWx1ZUZlZXNcIiwgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy52YWx1ZV9mZWVzXCIsIFtcInZhbHVlcy5pbnRlcmVzdFZhbHVlXCJdLCBGaWVsZFR5cGUuTW9uZXksIG51bGwpLFxyXG4gICAgICAgICAgICB0aGlzLmdldEZpZWxkcyhcInZhbHVlRmluZVwiLCBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnZhbHVlX2ZpbmVcIiwgW1widmFsdWVzLmZpbmVWYWx1ZVwiXSwgRmllbGRUeXBlLk1vbmV5LCBudWxsKSxcclxuICAgICAgICAgICAgdGhpcy5nZXRGaWVsZHMoXCJ2YWx1ZUNoYXJnZVwiLCBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnZhbHVlX2NoYXJnZVwiLCBbXCJ2YWx1ZXMuY2hhcmdlVmFsdWVcIl0sIEZpZWxkVHlwZS5Nb25leSwgbnVsbCksXHJcbiAgICAgICAgICAgIHRoaXMuZ2V0RmllbGRzKFxyXG4gICAgICAgICAgICAgICAgXCJ2YWx1ZUNvcnJlY3Rpb25cIixcclxuICAgICAgICAgICAgICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMudmFsdWVfY29ycmVjdGlvblwiLFxyXG4gICAgICAgICAgICAgICAgW1widmFsdWVzLm1vbmV0YXJ5Q29ycmVjdGlvblZhbHVlXCJdLFxyXG4gICAgICAgICAgICAgICAgRmllbGRUeXBlLk1vbmV5LFxyXG4gICAgICAgICAgICAgICAgbnVsbFxyXG4gICAgICAgICAgICApLFxyXG4gICAgICAgICAgICB0aGlzLmdldEZpZWxkcyhcclxuICAgICAgICAgICAgICAgIFwidmFsdWVBZGRpdGlvbmFsXCIsXHJcbiAgICAgICAgICAgICAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnZhbHVlX2FkZGl0aW9uYWxcIixcclxuICAgICAgICAgICAgICAgIFtcInZhbHVlcy5vdGhlckFkZGl0aW9uVmFsdWVcIl0sXHJcbiAgICAgICAgICAgICAgICBGaWVsZFR5cGUuTW9uZXksXHJcbiAgICAgICAgICAgICAgICBudWxsXHJcbiAgICAgICAgICAgICksXHJcbiAgICAgICAgICAgIHRoaXMuZ2V0RmllbGRzKFwidmFsdWVEaXNjb3VudFwiLCBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnZhbHVlX2Rpc2NvdW50XCIsIFtcInZhbHVlcy5kaXNjb3VudFZhbHVlXCJdLCBGaWVsZFR5cGUuTW9uZXksIG51bGwpLFxyXG4gICAgICAgICAgICB0aGlzLmdldEZpZWxkcyhcclxuICAgICAgICAgICAgICAgIFwidmFsdWVPdGhlckRpc2NvdW50XCIsXHJcbiAgICAgICAgICAgICAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnZhbHVlX290aGVyX2Rpc2NvdW50XCIsXHJcbiAgICAgICAgICAgICAgICBbXCJ2YWx1ZXMub3RoZXJEaXNjb3VudFZhbHVlXCJdLFxyXG4gICAgICAgICAgICAgICAgRmllbGRUeXBlLk1vbmV5LFxyXG4gICAgICAgICAgICAgICAgbnVsbFxyXG4gICAgICAgICAgICApLFxyXG4gICAgICAgICAgICAuLi50aGlzLmdyaWRDb2x1bW5zLmZpbHRlcigoY29sKSA9PiBbXCJ2YWx1ZU5ldFwiXS5pbmNsdWRlcyhjb2wuZmllbGQpKSxcclxuICAgICAgICBdO1xyXG4gICAgICAgIHRoaXMudXBkYXRlR3JpZCh0aGlzLmN1cnJlbnRMaXN0UGFyYW1zKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEFww7NzIGEgcmVuZGVyaXphw6fDo28gZGEgdGFiZWxhLCBzaW5jcm9uaXphIG8gZXN0YWRvIGRlIGNoZWNrYm94L2xpbmhhIGVkaXTDoXZlbFxyXG4gICAgICogY29tIG8gYXJyYXkgZGUgdMOtdHVsb3Mgc2VsZWNpb25hZG9zIHBhcmEgZXZpdGFyIGFjZXNzbyBhIHJlZmVyw6puY2lhcyBhaW5kYSBuw6NvIGNyaWFkYXMuXHJcbiAgICAgKi9cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgICAgICB0aGlzLnRhYmxlSW5pdGlhbGl6ZWQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuc3luY2hyb25pemVDaGVja2JveEFuZEVkaXRhYmxlRmllbGRTdGF0ZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XHJcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0UGFnZVNpemUoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudExpc3RQYXJhbXM/LnJvd3M7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0Um93SW5kZXgoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudExpc3RQYXJhbXM/LmZpcnN0O1xyXG4gICAgfVxyXG5cclxuICAgIGdldFNvcnRGaWVsZCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jdXJyZW50TGlzdFBhcmFtcz8uc29ydEZpZWxkO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFNvcnRPcmRlcigpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jdXJyZW50TGlzdFBhcmFtcz8uc29ydE9yZGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRmF6IHJlcXVpc2nDp8OjbyBwYWdpbmFkYS9vcmRlbmFkYSBwYXJhIGxpc3RhciBvcyB0w610dWxvcywgbW9udGEgbyBmb3JtdWzDoXJpb1xyXG4gICAgICogcmVhdGl2byBwYXJhIGNhZGEgbGluaGEgZSB0cmF0YSBlcnJvcyBkZSBiYWNrZW5kIGV4aWJpbmRvIG1lbnNhZ2VtIGFvIHVzdcOhcmlvLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBldmVudCBwYXLDom1ldHJvcyBkZSBwYWdpbmHDp8Ojbywgb3JkZW5hw6fDo28gZSBmaWx0cm9zIHZpbmRvcyBkbyBQcmltZU5HLlxyXG4gICAgICovXHJcbiAgICB1cGRhdGVHcmlkKGV2ZW50OiBMYXp5TG9hZEV2ZW50KSB7XHJcbiAgICAgICAgdGhpcy5jb21wb25lbnRMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICBjb25zdCBzaXplID0gZXZlbnQucm93cztcclxuICAgICAgICBjb25zdCBwYWdlID0gZXZlbnQuZmlyc3QgLyBzaXplO1xyXG4gICAgICAgIGNvbnN0IGZpZWxkID0gZXZlbnQuc29ydEZpZWxkO1xyXG4gICAgICAgIGNvbnN0IHNvcnRPcmRlciA9IGV2ZW50LnNvcnRPcmRlcjtcclxuICAgICAgICB0aGlzLmN1cnJlbnRMaXN0UGFyYW1zID0gZXZlbnQ7XHJcblxyXG4gICAgICAgIGNvbnN0IGlucHV0OiBSZXF1ZXN0TGlzdFRpdGxlc0lucHV0ID0ge1xyXG4gICAgICAgICAgICBwYWdlUmVxdWVzdDogeyBvZmZzZXQ6IHBhZ2UsIG9yZGVyQnk6IHRoaXMuZ2V0UmVjT3JkZXJCeShmaWVsZCwgc29ydE9yZGVyKSwgc2l6ZSB9LFxyXG4gICAgICAgICAgICBmaWx0ZXI6IHRoaXMub3B0aW9ucyxcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB0aGlzLmZpbmFuY2lhbFNlcnZpY2VcclxuICAgICAgICAgICAgLmxpc3RUaXRsZXMoaW5wdXQpXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSksXHJcbiAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRldGFpbE1zZyA9IGVycj8ubWVzc2FnZSB8fCBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX2xvYWRpbmdfYWNjb3VudHNfZGVzY3JpcHRpb25cIjtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZE1lc3NhZ2UoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFwid2FyblwiLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX2xvYWRpbmdfYWNjb3VudHNfdGl0bGVcIixcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGV0YWlsTXNnXHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBlcnI7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGxpc3Q6IEZpbmFuY2lhbFF1ZXJ5RGF0YVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmdyaWREYXRhID0gbGlzdC50aXRsZXMgfHwgW107XHJcblxyXG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVGb3JtR3JvdXBGb3JUaXRsZSgpO1xyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuZ3JpZFRvdGFsUmVjb3JkcyA9IGxpc3QudG90YWxFbGVtZW50cztcclxuICAgICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zeW5jaHJvbml6ZUNoZWNrYm94QW5kRWRpdGFibGVGaWVsZFN0YXRlKCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG9uU2VsZWN0aW9uQ2hhbmdlKGV2ZW50OiBhbnkpIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkID0gZXZlbnQ7XHJcbiAgICAgICAgdGhpcy5zeW5jaHJvbml6ZUNoZWNrYm94QW5kRWRpdGFibGVGaWVsZFN0YXRlKCk7XHJcbiAgICAgICAgdGhpcy5zZWxlY3Rpb25DaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGVkKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFF1YW5kbyB1bSBpdGVtIMOpIGRlc21hcmNhZG8sIGxpbXBhIG8gYHZhbHVlUGFpZGAgY29ycmVzcG9uZGVudGVcclxuICAgICAqIHRhbnRvIG5vIG1vZGVsbyBkYSBsaW5oYSBxdWFudG8gbm8ge0BsaW5rIHRpdGxlc0Zvcm19LCBzZW0gZGlzcGFyYXIgbm92b3MgZXZlbnRvcy5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gZXZlbnQgZXZlbnRvIGRlIGRlc21hcmNhw6fDo28gZW1pdGlkbyBwZWxvIFByaW1lTkcuXHJcbiAgICAgKi9cclxuICAgIG9uVW5zZWxlY3QoZXZlbnQ6IGFueSkge1xyXG4gICAgICAgIGNvbnN0IHJvdyA9IHRoaXMuZ3JpZERhdGEuZmluZCgocikgPT4gci5pZCA9PT0gZXZlbnQuZGF0YS5pZCk7XHJcbiAgICAgICAgaWYgKHJvdykge1xyXG4gICAgICAgICAgICByb3cudmFsdWVQYWlkID0gbnVsbDtcclxuICAgICAgICAgICAgLy8gYXR1YWxpemEgZm9ybSBjb250cm9sIGNvcnJlc3BvbmRlbnRlXHJcbiAgICAgICAgICAgIGNvbnN0IGlkeCA9IHRoaXMuZ3JpZERhdGEuZmluZEluZGV4KChnKSA9PiBnLmlkID09PSByb3cuaWQpO1xyXG4gICAgICAgICAgICBjb25zdCBjdHJsID0gdGhpcy50aXRsZXNGb3JtLmF0KGlkeCk/LmdldChcInZhbHVlUGFpZFwiKTtcclxuICAgICAgICAgICAgaWYgKGN0cmwpIHtcclxuICAgICAgICAgICAgICAgIGN0cmwuc2V0VmFsdWUobnVsbCwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHNob3dEZXRhaWxzKHJvd0RhdGE6IGFueSkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRSb3cgPSByb3dEYXRhO1xyXG4gICAgICAgIHRoaXMuc2hvd1NpZGViYXIgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIGNsb3NlRGV0YWlscygpIHtcclxuICAgICAgICB0aGlzLnNob3dTaWRlYmFyID0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgaXNMYXN0Q29sdW1uKGluZGV4OiBudW1iZXIsIGNvbHVtbnM6IGFueVtdKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIGluZGV4ID09PSBjb2x1bW5zLmxlbmd0aCAtIDE7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0U3R5bGVDb2x1bW5zKGZpZWxkOiBzdHJpbmcpOiBhbnkge1xyXG4gICAgICAgIGxldCBzdHlsZUNsYXNzID0ge307XHJcbiAgICAgICAgc3dpdGNoIChmaWVsZCkge1xyXG4gICAgICAgICAgICBjYXNlIFwiY2hlY2tib3hcIjpcclxuICAgICAgICAgICAgICAgIHN0eWxlQ2xhc3MgPSB7IHdpZHRoOiBcIjUwcHhcIiB9O1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgXCJ0aXRsZVwiOlxyXG4gICAgICAgICAgICBjYXNlIFwiZHVlRGF0ZVwiOlxyXG4gICAgICAgICAgICAgICAgc3R5bGVDbGFzcyA9IHsgd2lkdGg6IFwiMTUwcHhcIiB9O1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgXCJ0eXBlXCI6XHJcbiAgICAgICAgICAgIGNhc2UgXCJlbnRyeURhdGVcIjpcclxuICAgICAgICAgICAgICAgIHN0eWxlQ2xhc3MgPSB7IHdpZHRoOiBcIjEyMHB4XCIgfTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgc3R5bGVDbGFzcyA9IHsgd2lkdGg6IFwiMTk4cHhcIiB9O1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBzdHlsZUNsYXNzO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFByb3Aob2JqOiBhbnksIGNvbDogYW55KTogYW55IHtcclxuICAgICAgICBpZiAoIW9iaiB8fCAhY29sPy5wYXRoKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBcIi1cIjtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IHNlcGFyYXRvciA9IFwiXCI7XHJcbiAgICAgICAgbGV0IHJlc3VsdCA9IFwiXCI7XHJcbiAgICAgICAgZm9yIChjb25zdCBwYXRoIG9mIGNvbC5wYXRoKSB7XHJcbiAgICAgICAgICAgIHJlc3VsdCArPSBzZXBhcmF0b3IgKyBBZ3JvT2JqZWN0VXRpbHMuZ2V0UHJvcEFuZEZvcm1hdFZhbHVlKG9iaiwgcGF0aCwgY29sLnR5cGUpO1xyXG4gICAgICAgICAgICBzZXBhcmF0b3IgPSBcIiAtIFwiO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJlY29uc3Ryw7NpIG8ge0BsaW5rIHRpdGxlc0Zvcm19IGNvbSBiYXNlIG5hIHtAbGluayBncmlkRGF0YX0gYXR1YWwsXHJcbiAgICAgKiBwcmVzZXJ2YW5kbyB2YWxvcmVzIGrDoSBpbmZvcm1hZG9zIGVtIGl0ZW5zIHNlbGVjaW9uYWRvcyBlIHJlZ2lzdHJhbmRvIGxpc3RlbmVycyBkZSBtdWRhbsOnYS5cclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBjcmVhdGVGb3JtR3JvdXBGb3JUaXRsZSgpIHtcclxuICAgICAgICBjb25zdCB0aXRsZXNGb3JtQXJyYXkgPSB0aGlzLmZvcm0uZ2V0KFwidGl0bGVzRm9ybVwiKSBhcyBGb3JtQXJyYXk7XHJcbiAgICAgICAgdGl0bGVzRm9ybUFycmF5LmNsZWFyKCk7XHJcbiAgICAgICAgdGhpcy5ncmlkRGF0YS5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNlbGVjdGVkSXRlbSA9IHRoaXMuc2VsZWN0ZWQuZmluZCgoc2VsKSA9PiBzZWwuaWQgPT09IGl0ZW0uaWQpO1xyXG4gICAgICAgICAgICBjb25zdCBncm91cCA9IG5ldyBGb3JtR3JvdXAoe1xyXG4gICAgICAgICAgICAgICAgaWQ6IG5ldyBGb3JtQ29udHJvbChpdGVtLmlkIHx8IG51bGwsIFtdKSxcclxuICAgICAgICAgICAgICAgIHZhbHVlUGFpZDogbmV3IEZvcm1Db250cm9sKHNlbGVjdGVkSXRlbT8udmFsdWVQYWlkID8/IG51bGwsIFtdKSxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIHRoaXMuc3Vic2NyaWJlVG9WYWx1ZVBhaWRDaGFuZ2VzKGdyb3VwLCBpdGVtKTtcclxuICAgICAgICAgICAgdGl0bGVzRm9ybUFycmF5LnB1c2goZ3JvdXApO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogT2JzZXJ2YSBtdWRhbsOnYXMgbm8gY2FtcG8gYHZhbHVlUGFpZGAgZGUgdW1hIGxpbmhhLlxyXG4gICAgICogQXR1YWxpemEgbyBhcnJheSB7QGxpbmsgc2VsZWN0ZWR9IHF1YW5kbyBvIHTDrXR1bG8gZXN0w6Egc2VsZWNpb25hZG8sXHJcbiAgICAgKiBhcGxpY2EgbyBsaW1pdGUgZG8gdmFsb3IgbMOtcXVpZG8gKGBuZXRWYWx1ZWApIGUgZXZpdGEgbG9vcHMgZGUgZXZlbnRvcyB1c2FuZG9cclxuICAgICAqIGBzZXRWYWx1ZWAgY29tIGBlbWl0RXZlbnQ6IGZhbHNlYC5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gZm9ybUdyb3VwIGdydXBvIGRlIGZvcm11bMOhcmlvIGFzc29jaWFkbyDDoCBsaW5oYSBkYSB0YWJlbGEuXHJcbiAgICAgKiBAcGFyYW0gaXRlbSB0w610dWxvIGZpbmFuY2Vpcm8gY29ycmVzcG9uZGVudGUgw6AgbGluaGEuXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgc3Vic2NyaWJlVG9WYWx1ZVBhaWRDaGFuZ2VzKGZvcm1Hcm91cDogRm9ybUdyb3VwLCBpdGVtOiBGaW5hbmNpYWxUaXRsZUxpc3REdG8pIHtcclxuICAgICAgICBjb25zdCB2YWx1ZVBhaWRDb250cm9sID0gZm9ybUdyb3VwLmdldChcInZhbHVlUGFpZFwiKTtcclxuICAgICAgICB2YWx1ZVBhaWRDb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoKHJhd1ZhbHVlKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlUGFpZCA9IHRoaXMucGFyc2VOdW1iZXJTYWZlKHJhd1ZhbHVlKTtcclxuICAgICAgICAgICAgY29uc3QgdGl0bGVJZCA9IGZvcm1Hcm91cC5nZXQoXCJpZFwiKT8udmFsdWU7XHJcblxyXG4gICAgICAgICAgICAvLyBhdHVhbGl6YSBzZWxlY3RlZCBzZSBvIHTDrXR1bG8gZXN0aXZlciBzZWxlY2lvbmFkb1xyXG4gICAgICAgICAgICBjb25zdCBzZWxJbmRleCA9IHRoaXMuc2VsZWN0ZWQuZmluZEluZGV4KChzKSA9PiBzLmlkID09PSB0aXRsZUlkKTtcclxuICAgICAgICAgICAgaWYgKHNlbEluZGV4ICE9PSAtMSkge1xyXG4gICAgICAgICAgICAgICAgLy8gZ2FyYW50ZSBxdWUgdmFsdWVQYWlkIHNlamEgbnVtw6lyaWNvIG91IG51bGxcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRbc2VsSW5kZXhdLnZhbHVlUGFpZCA9IHZhbHVlUGFpZDtcclxuXHJcbiAgICAgICAgICAgICAgICBjb25zdCBuZXQgPSBOdW1iZXIodGhpcy5zZWxlY3RlZFtzZWxJbmRleF0/LnZhbHVlcz8ubmV0VmFsdWUpIHx8IDA7XHJcbiAgICAgICAgICAgICAgICBpZiAodmFsdWVQYWlkICE9PSBudWxsICYmIHZhbHVlUGFpZCA+IG5ldCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRbc2VsSW5kZXhdLnZhbHVlUGFpZCA9IG5ldDtcclxuICAgICAgICAgICAgICAgICAgICAvLyBVc2FkbyBwYXJhIGV2aXRhciBsb29wIGluZmluaXRvIGRlIGV2ZW50b3NcclxuICAgICAgICAgICAgICAgICAgICB2YWx1ZVBhaWRDb250cm9sLnNldFZhbHVlKG5ldCwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC8vIGF0dWFsaXphIGZsYWcgZGUgZXJyb1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFtzZWxJbmRleF0uaGFzRXJyb3IgPSB2YWx1ZVBhaWRDb250cm9sLmludmFsaWQ7XHJcbiAgICAgICAgICAgICAgICAvLyBlbWl0ZSBtdWRhbsOnYSBkZSBzZWxlw6fDo29cclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uQ2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAvLyBzZSBuw6NvIGVzdGl2ZXIgc2VsZWNpb25hZG8sIGFwZW5hcyBhcGxpY2EgbGltaXRlIGxvY2FsIGJhc2VhZG8gbm8gaXRlbVxyXG4gICAgICAgICAgICAgICAgY29uc3QgbmV0ID0gTnVtYmVyKGl0ZW0/LnZhbHVlcz8ubmV0VmFsdWUpIHx8IDA7XHJcbiAgICAgICAgICAgICAgICBpZiAodmFsdWVQYWlkICE9PSBudWxsICYmIHZhbHVlUGFpZCA+IG5ldCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlUGFpZENvbnRyb2wuc2V0VmFsdWUobmV0LCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHBhcnNlTnVtYmVyU2FmZSh2YWx1ZTogYW55KTogbnVtYmVyIHwgbnVsbCB7XHJcbiAgICAgICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09IFwiXCIpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09IFwibnVtYmVyXCIpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGNsZWFuZWQgPSB2YWx1ZS5yZXBsYWNlKC9cXC4vZywgXCJcIikucmVwbGFjZShcIixcIiwgXCIuXCIpO1xyXG4gICAgICAgICAgICBjb25zdCBuID0gcGFyc2VGbG9hdChjbGVhbmVkKTtcclxuICAgICAgICAgICAgcmV0dXJuIGlzTmFOKG4pID8gbnVsbCA6IG47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogSW5pY2lhIG8gbW9kbyBkZSBlZGnDp8OjbyBuYSBsaW5oYSBkYSB0YWJlbGEgUHJpbWVORyBlIGFwbGljYSByZWdyYXMgZGUgdmFsaWRhw6fDo29cclxuICAgICAqIG5vIGZvcm11bMOhcmlvIHJlYXRpdm8gY29ycmVzcG9uZGVudGUgw6BxdWVsYSBsaW5oYS5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gcm93IG9iamV0byBkZSBsaW5oYSByZWNlYmlkbyBkYSB0YWJlbGEuXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgaW5pdFJvd0VkaXQocm93OiBhbnkpIHtcclxuICAgICAgICBpZiAodGhpcy50YWJsZSkge1xyXG4gICAgICAgICAgICB0aGlzLnRhYmxlLmluaXRSb3dFZGl0KHJvdyk7XHJcbiAgICAgICAgICAgIHRoaXMuYXBwbHlWYWxpZGF0aW9uVG9Sb3dFZGl0KHJvdyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQWRpY2lvbmEgdmFsaWRhZG9yZXMgZGluYW1pY2FtZW50ZSBhbyBjYW1wbyBgdmFsdWVQYWlkYCBkYSBsaW5oYSBlbSBlZGnDp8OjbyxcclxuICAgICAqIG1hcmNhIG8gY29udHJvbGUgY29tbyBzdWpvIGUgZm9yw6dhIHJldmFsaWRhw6fDo28gaW1lZGlhdGEgcGFyYSBleGliaXIgZXJyb3MgbmEgdGVsYS5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gcm93IG9iamV0byBkZSBsaW5oYSBwYXJhIGFwbGljYXIgdmFsaWRhw6fDo28uXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgYXBwbHlWYWxpZGF0aW9uVG9Sb3dFZGl0KHJvdzogYW55KSB7XHJcbiAgICAgICAgY29uc3Qgcm93SW5kZXggPSB0aGlzLmdyaWREYXRhLmZpbmRJbmRleCgocikgPT4gci5pZCA9PT0gcm93LmlkKTtcclxuICAgICAgICBjb25zdCBmb3JtR3JvdXAgPSB0aGlzLnRpdGxlc0Zvcm0uYXQocm93SW5kZXgpIGFzIEZvcm1Hcm91cDtcclxuICAgICAgICBpZiAoIWZvcm1Hcm91cCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHZhbHVlUGFpZENvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KFwidmFsdWVQYWlkXCIpO1xyXG4gICAgICAgIHZhbHVlUGFpZENvbnRyb2w/LnNldFZhbGlkYXRvcnMoW3RoaXMuZ2V0VmFsaWRhdG9yc0ZvclJvd0VkaXQoKSwgVmFsaWRhdG9ycy5yZXF1aXJlZF0pO1xyXG4gICAgICAgIHZhbHVlUGFpZENvbnRyb2w/Lm1hcmtBc0RpcnR5KCk7XHJcbiAgICAgICAgdmFsdWVQYWlkQ29udHJvbD8udXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ29uc3Ryw7NpIG8ge0BsaW5rIFZhbGlkYXRvckZufSBxdWUgdmFsaWRhIG8gYHZhbHVlUGFpZGA6XHJcbiAgICAgKiAtIGRldmUgc2VyIG1haW9yIHF1ZSB6ZXJvO1xyXG4gICAgICogLSBuw6NvIHBvZGUgdWx0cmFwYXNzYXIgbyB2YWxvciBsw61xdWlkbyAoYG5ldFZhbHVlYCkgZG8gdMOtdHVsby5cclxuICAgICAqXHJcbiAgICAgKiBSZXRvcm5hIG9zIGVycm9zIGNvbnN1bWlkb3MgcGVsbyBjb21wb25lbnRlIGBzLWNvbnRyb2wtZXJyb3JzYC5cclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBnZXRWYWxpZGF0b3JzRm9yUm93RWRpdCgpOiBWYWxpZGF0b3JGbiB7XHJcbiAgICAgICAgcmV0dXJuIChjb250cm9sOiBGb3JtQ29udHJvbCkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBwYXJlbnQgPSBjb250cm9sLnBhcmVudCBhcyBGb3JtR3JvdXA7XHJcbiAgICAgICAgICAgIGNvbnN0IHRpdGxlSWQgPSBwYXJlbnQ/LmdldChcImlkXCIpPy52YWx1ZTtcclxuICAgICAgICAgICAgY29uc3QgcmF3VmFsdWUgPSBjb250cm9sLnZhbHVlO1xyXG4gICAgICAgICAgICBjb25zdCB2YWx1ZVBhaWQgPSB0aGlzLnBhcnNlTnVtYmVyU2FmZShyYXdWYWx1ZSk7XHJcbiAgICAgICAgICAgIGlmICh2YWx1ZVBhaWQgPT09IG51bGwgfHwgdmFsdWVQYWlkID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICh2YWx1ZVBhaWQgPD0gQUdST19OVU1CRVJTLlpFUk8pIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB7IGxlc3NUaGFuWmVybzogdHJ1ZSB9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC8vIHByb2N1cmEgcGVsbyB0w610dWxvIG5vIHNlbGVjdGVkIG91IG5vIGdyaWREYXRhIChwcmlvcml6YSBzZWxlY3RlZClcclxuICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWRSb3cgPSB0aGlzLnNlbGVjdGVkLmZpbmQoKHNlbCkgPT4gc2VsLmlkID09PSB0aXRsZUlkKSB8fCB0aGlzLmdyaWREYXRhLmZpbmQoKGcpID0+IGcuaWQgPT09IHRpdGxlSWQpO1xyXG4gICAgICAgICAgICBjb25zdCBuZXRWYWx1ZSA9IE51bWJlcihzZWxlY3RlZFJvdz8udmFsdWVzPy5uZXRWYWx1ZSkgfHwgMDtcclxuICAgICAgICAgICAgaWYgKHZhbHVlUGFpZCA+IG5ldFZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4geyBncmVhdGhlclRoYW5BbGxvd2VkOiB0cnVlIH07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNhbmNlbFJvd0VkaXQocm93OiBhbnkpIHtcclxuICAgICAgICBpZiAodGhpcy50YWJsZSkge1xyXG4gICAgICAgICAgICB0aGlzLnRhYmxlLmNhbmNlbFJvd0VkaXQocm93KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBNYW50w6ltIG8gZXN0YWRvIHZpc3VhbCBkYSB0YWJlbGEgKGNoZWNrYm94IG1hcmNhZG8gZSBsaW5oYSBlZGl0w6F2ZWwpIGVtXHJcbiAgICAgKiBzaW5jcm9uaWEgY29tIG8gYXJyYXkgZGUgdMOtdHVsb3Mgc2VsZWNpb25hZG9zLCBpbmNsdXNpdmUgcmVzdGF1cmFuZG8gdmFsb3Jlc1xyXG4gICAgICogZGlnaXRhZG9zIGFvIHJlY2FycmVnYXIsIG9yZGVuYXIgb3UgcGFnaW5hciBhIGdyaWQuXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgc3luY2hyb25pemVDaGVja2JveEFuZEVkaXRhYmxlRmllbGRTdGF0ZSgpIHtcclxuICAgICAgICBpZiAoIXRoaXMuZ3JpZERhdGEgfHwgIXRoaXMudGFibGVJbml0aWFsaXplZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmdyaWREYXRhLmZvckVhY2goKHJvdywgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWRSb3cgPSB0aGlzLnNlbGVjdGVkLmZpbmQoKHNlbCkgPT4gc2VsLmlkID09PSByb3cuaWQpO1xyXG5cclxuICAgICAgICAgICAgY29uc3QgY3RybCA9IHRoaXMudGl0bGVzRm9ybS5hdChpbmRleCk/LmdldChcInZhbHVlUGFpZFwiKTtcclxuXHJcbiAgICAgICAgICAgIGlmIChzZWxlY3RlZFJvdykge1xyXG4gICAgICAgICAgICAgICAgLy8gU2luY3Jvbml6YSBvIHZhbG9yIHBhZ28gZG8gaXRlbSBzZWxlY2lvbmFkb1xyXG4gICAgICAgICAgICAgICAgcm93LnZhbHVlUGFpZCA9IHNlbGVjdGVkUm93LnZhbHVlUGFpZDtcclxuICAgICAgICAgICAgICAgIGlmIChjdHJsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY3RybC5zZXRWYWx1ZShzZWxlY3RlZFJvdy52YWx1ZVBhaWQsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRoaXMuaW5pdFJvd0VkaXQocm93KTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIC8vIENhbmNlbGEgYSBlZGnDp8OjbyBzZSBuw6NvIGVzdGl2ZXIgc2VsZWNpb25hZG9cclxuICAgICAgICAgICAgICAgIGlmIChjdHJsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY3RybC5zZXRWYWx1ZShudWxsLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNhbmNlbFJvd0VkaXQocm93KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0RmllbGRzKGZpZWxkOiBzdHJpbmcsIGhlYWRlcjogc3RyaW5nLCBwYXRoOiBzdHJpbmdbXSwgdHlwZTogRmllbGRUeXBlLCBmaWVsZE9yZGVyQnk6IFRpdGxlRmllbGRzT3JkZXJCeSk6IENvbHVtbkNvbmZpZyB7XHJcbiAgICAgICAgcmV0dXJuIHsgZmllbGQsIHBhdGgsIHR5cGUsIGhlYWRlcjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChoZWFkZXIpLCBvcmRlckJ5OiBmaWVsZE9yZGVyQnkgfTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGFkZE1lc3NhZ2Uoc2V2ZXJpdHk6IHN0cmluZywgc3VtbWFyeTogc3RyaW5nLCBkZXRhaWw6IHN0cmluZywgc3RpY2t5ID0gZmFsc2UsIGxpZmUgPSA3MDAwKSB7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoe1xyXG4gICAgICAgICAgICBzZXZlcml0eSxcclxuICAgICAgICAgICAgc3RpY2t5LFxyXG4gICAgICAgICAgICBsaWZlLFxyXG4gICAgICAgICAgICBzdW1tYXJ5OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KHN1bW1hcnkpLFxyXG4gICAgICAgICAgICBkZXRhaWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoZGV0YWlsKSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldFJlY09yZGVyQnkoZmllbGQ6IHN0cmluZywgb3JkZXI6IG51bWJlcik6IFJlY09yZGVyQnkge1xyXG4gICAgICAgIGNvbnN0IGdyaWRDb2x1bW5GaWVsZCA9IHRoaXMuZ3JpZENvbHVtbnMuZmluZCgoY29sKSA9PiBjb2wuZmllbGQgPT09IGZpZWxkKTtcclxuICAgICAgICBpZiAoZ3JpZENvbHVtbkZpZWxkPy5vcmRlckJ5ID09PSBudWxsKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBmaWVsZDogZ3JpZENvbHVtbkZpZWxkPy5vcmRlckJ5IHx8IFRpdGxlRmllbGRzT3JkZXJCeS5OVU1CRVJfVElUTEUsXHJcbiAgICAgICAgICAgIG9yZGVyOiBvcmRlciA9PT0gMSA/IE9yZGVyQnlUeXBlLkFTQyA6IE9yZGVyQnlUeXBlLkRFU0MsXHJcbiAgICAgICAgfTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { ObserversModule } from '@angular/cdk/observers';
|
|
3
|
-
import { CommonModule } from '@angular/common';
|
|
4
|
-
import { NgModule } from '@angular/core';
|
|
5
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
6
|
-
import { BadgeModule, ButtonModule, ControlErrorsModule, EmptyStateModule, LoadingStateModule, LocaleModule, NumberInputModule, SidebarModule, TableHeaderCheckboxModule, TableModule, } from "@seniorsistemas/angular-components";
|
|
7
|
-
import { CyclicJsonInterceptorModule, HttpInterceptorModule } from "@seniorsistemas/platform-components";
|
|
8
|
-
import { InputTextModule, SharedModule } from "primeng";
|
|
9
|
-
import { TableModule as PrimeTableModule } from "primeng/table";
|
|
10
|
-
import { LibTranslationModule } from "../../lib-translation.module";
|
|
11
|
-
import { FinancialTitleTableComponent } from "./financial-title-table.component";
|
|
12
|
-
let FinancialTitleTableModule = class FinancialTitleTableModule {
|
|
13
|
-
};
|
|
14
|
-
FinancialTitleTableModule = __decorate([
|
|
15
|
-
NgModule({
|
|
16
|
-
imports: [
|
|
17
|
-
HttpInterceptorModule,
|
|
18
|
-
CyclicJsonInterceptorModule,
|
|
19
|
-
CommonModule,
|
|
20
|
-
CyclicJsonInterceptorModule,
|
|
21
|
-
HttpInterceptorModule,
|
|
22
|
-
LocaleModule.forChild(),
|
|
23
|
-
EmptyStateModule,
|
|
24
|
-
TableModule,
|
|
25
|
-
PrimeTableModule,
|
|
26
|
-
LibTranslationModule,
|
|
27
|
-
BadgeModule,
|
|
28
|
-
ButtonModule,
|
|
29
|
-
SidebarModule,
|
|
30
|
-
ReactiveFormsModule,
|
|
31
|
-
FormsModule,
|
|
32
|
-
LoadingStateModule,
|
|
33
|
-
InputTextModule,
|
|
34
|
-
NumberInputModule,
|
|
35
|
-
TableHeaderCheckboxModule,
|
|
36
|
-
SharedModule,
|
|
37
|
-
ObserversModule,
|
|
38
|
-
ControlErrorsModule,
|
|
39
|
-
],
|
|
40
|
-
declarations: [FinancialTitleTableComponent],
|
|
41
|
-
exports: [FinancialTitleTableComponent],
|
|
42
|
-
})
|
|
43
|
-
], FinancialTitleTableModule);
|
|
44
|
-
export { FinancialTitleTableModule };
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluYW5jaWFsLXRpdGxlLXRhYmxlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzZW5pb3ItYWdyb25lZ29jaW8vYW5ndWxhci1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy9maW5hbmNpYWwtdGl0bGUtdGFibGUvZmluYW5jaWFsLXRpdGxlLXRhYmxlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQ0gsV0FBVyxFQUNYLFlBQVksRUFDWixtQkFBbUIsRUFDbkIsZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQixZQUFZLEVBQ1osaUJBQWlCLEVBQ2pCLGFBQWEsRUFDYix5QkFBeUIsRUFDekIsV0FBVyxHQUNkLE1BQU0sb0NBQW9DLENBQUM7QUFDNUMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekcsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQTZCakYsSUFBYSx5QkFBeUIsR0FBdEMsTUFBYSx5QkFBeUI7Q0FBRyxDQUFBO0FBQTVCLHlCQUF5QjtJQTVCckMsUUFBUSxDQUFDO1FBQ04sT0FBTyxFQUFFO1lBQ0wscUJBQXFCO1lBQ3JCLDJCQUEyQjtZQUMzQixZQUFZO1lBQ1osMkJBQTJCO1lBQzNCLHFCQUFxQjtZQUNyQixZQUFZLENBQUMsUUFBUSxFQUFFO1lBQ3ZCLGdCQUFnQjtZQUNoQixXQUFXO1lBQ1gsZ0JBQWdCO1lBQ2hCLG9CQUFvQjtZQUNwQixXQUFXO1lBQ1gsWUFBWTtZQUNaLGFBQWE7WUFDYixtQkFBbUI7WUFDbkIsV0FBVztZQUNYLGtCQUFrQjtZQUNsQixlQUFlO1lBQ2YsaUJBQWlCO1lBQ2pCLHlCQUF5QjtZQUN6QixZQUFZO1lBQ1osZUFBZTtZQUNmLG1CQUFtQjtTQUN0QjtRQUNELFlBQVksRUFBRSxDQUFDLDRCQUE0QixDQUFDO1FBQzVDLE9BQU8sRUFBRSxDQUFDLDRCQUE0QixDQUFDO0tBQzFDLENBQUM7R0FDVyx5QkFBeUIsQ0FBRztTQUE1Qix5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZlcnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb2JzZXJ2ZXJzJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7XHJcbiAgICBCYWRnZU1vZHVsZSxcclxuICAgIEJ1dHRvbk1vZHVsZSxcclxuICAgIENvbnRyb2xFcnJvcnNNb2R1bGUsXHJcbiAgICBFbXB0eVN0YXRlTW9kdWxlLFxyXG4gICAgTG9hZGluZ1N0YXRlTW9kdWxlLFxyXG4gICAgTG9jYWxlTW9kdWxlLFxyXG4gICAgTnVtYmVySW5wdXRNb2R1bGUsXHJcbiAgICBTaWRlYmFyTW9kdWxlLFxyXG4gICAgVGFibGVIZWFkZXJDaGVja2JveE1vZHVsZSxcclxuICAgIFRhYmxlTW9kdWxlLFxyXG59IGZyb20gXCJAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzXCI7XHJcbmltcG9ydCB7IEN5Y2xpY0pzb25JbnRlcmNlcHRvck1vZHVsZSwgSHR0cEludGVyY2VwdG9yTW9kdWxlIH0gZnJvbSBcIkBzZW5pb3JzaXN0ZW1hcy9wbGF0Zm9ybS1jb21wb25lbnRzXCI7XHJcbmltcG9ydCB7IElucHV0VGV4dE1vZHVsZSwgU2hhcmVkTW9kdWxlIH0gZnJvbSBcInByaW1lbmdcIjtcclxuaW1wb3J0IHsgVGFibGVNb2R1bGUgYXMgUHJpbWVUYWJsZU1vZHVsZSB9IGZyb20gXCJwcmltZW5nL3RhYmxlXCI7XHJcbmltcG9ydCB7IExpYlRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSBcIi4uLy4uL2xpYi10cmFuc2xhdGlvbi5tb2R1bGVcIjtcclxuaW1wb3J0IHsgRmluYW5jaWFsVGl0bGVUYWJsZUNvbXBvbmVudCB9IGZyb20gXCIuL2ZpbmFuY2lhbC10aXRsZS10YWJsZS5jb21wb25lbnRcIjtcclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBIdHRwSW50ZXJjZXB0b3JNb2R1bGUsXHJcbiAgICAgICAgQ3ljbGljSnNvbkludGVyY2VwdG9yTW9kdWxlLFxyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBDeWNsaWNKc29uSW50ZXJjZXB0b3JNb2R1bGUsXHJcbiAgICAgICAgSHR0cEludGVyY2VwdG9yTW9kdWxlLFxyXG4gICAgICAgIExvY2FsZU1vZHVsZS5mb3JDaGlsZCgpLFxyXG4gICAgICAgIEVtcHR5U3RhdGVNb2R1bGUsXHJcbiAgICAgICAgVGFibGVNb2R1bGUsXHJcbiAgICAgICAgUHJpbWVUYWJsZU1vZHVsZSxcclxuICAgICAgICBMaWJUcmFuc2xhdGlvbk1vZHVsZSxcclxuICAgICAgICBCYWRnZU1vZHVsZSxcclxuICAgICAgICBCdXR0b25Nb2R1bGUsXHJcbiAgICAgICAgU2lkZWJhck1vZHVsZSxcclxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgICAgIExvYWRpbmdTdGF0ZU1vZHVsZSxcclxuICAgICAgICBJbnB1dFRleHRNb2R1bGUsXHJcbiAgICAgICAgTnVtYmVySW5wdXRNb2R1bGUsXHJcbiAgICAgICAgVGFibGVIZWFkZXJDaGVja2JveE1vZHVsZSxcclxuICAgICAgICBTaGFyZWRNb2R1bGUsXHJcbiAgICAgICAgT2JzZXJ2ZXJzTW9kdWxlLFxyXG4gICAgICAgIENvbnRyb2xFcnJvcnNNb2R1bGUsXHJcbiAgICBdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbRmluYW5jaWFsVGl0bGVUYWJsZUNvbXBvbmVudF0sXHJcbiAgICBleHBvcnRzOiBbRmluYW5jaWFsVGl0bGVUYWJsZUNvbXBvbmVudF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGaW5hbmNpYWxUaXRsZVRhYmxlTW9kdWxlIHt9XHJcbiJdfQ==
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export { FinancialTitleTableComponent } from "./financial-title-table.component";
|
|
2
|
-
export { FinancialTitleTableModule } from "./financial-title-table.module";
|
|
3
|
-
export * from "./services/financial/index";
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvZmluYW5jaWFsLXRpdGxlLXRhYmxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTNFLGNBQWMsNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBGaW5hbmNpYWxUaXRsZVRhYmxlQ29tcG9uZW50IH0gZnJvbSBcIi4vZmluYW5jaWFsLXRpdGxlLXRhYmxlLmNvbXBvbmVudFwiO1xyXG5leHBvcnQgeyBGaW5hbmNpYWxUaXRsZVRhYmxlTW9kdWxlIH0gZnJvbSBcIi4vZmluYW5jaWFsLXRpdGxlLXRhYmxlLm1vZHVsZVwiO1xyXG5leHBvcnQgeyBGaW5hbmNpYWxUaXRsZU9wdGlvbnMgfSBmcm9tIFwiLi9maW5hbmNpYWwtdGl0bGUtdGFibGUtb3B0aW9ucy5pbnRlcmZhY2VcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vc2VydmljZXMvZmluYW5jaWFsL2luZGV4XCI7XHJcbiJdfQ==
|