keevo-components 2.0.106 → 2.0.107
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/ng-package.json +14 -0
- package/package.json +32 -42
- package/src/assets/.gitkeep +0 -0
- package/src/index.ts +1 -0
- package/src/lib/api/base-components/base-component-button.ts +29 -0
- package/src/lib/api/base-components/base-component-chart.ts +118 -0
- package/src/lib/api/base-components/base-component-crud-form.ts +377 -0
- package/src/lib/api/base-components/base-component-crud-list.ts +129 -0
- package/src/lib/api/base-components/base-component-crud.ts +92 -0
- package/src/lib/api/base-components/base-component-dropdown-external.ts +29 -0
- package/src/lib/api/base-components/base-component-dropdown-new.ts +112 -0
- package/src/lib/api/base-components/base-component-dropdown.ts +257 -0
- package/src/lib/api/base-components/base-component-input.ts +121 -0
- package/src/lib/api/base-components/base-component-multi-select.ts +187 -0
- package/src/lib/api/base-components/base-component-table.ts +366 -0
- package/src/lib/api/base-components/base-component.ts +47 -0
- package/src/lib/api/components/chart/chart.config.ts +15 -0
- package/src/lib/api/components/chart/chart.model.ts +12 -0
- package/src/lib/api/components/chart/orchart.config.ts +51 -0
- package/src/lib/api/components/chart/orchartnode.ts +44 -0
- package/src/lib/api/components/dropdown/filtro.combo.ts +4 -0
- package/{lib/api/components/step/step.model.d.ts → src/lib/api/components/step/step.model.ts} +15 -13
- package/src/lib/api/components/stepper/kv-stepperpanel.ts +10 -0
- package/src/lib/api/components/table/action-item.ts +13 -0
- package/src/lib/api/components/table/kv-menuitem.ts +198 -0
- package/src/lib/api/components/table/table-dropdown-control.ts +6 -0
- package/src/lib/api/components/table/table.config.column.ts +38 -0
- package/src/lib/api/components/table/table.config.ts +39 -0
- package/src/lib/api/components/table/table.paginate.ts +7 -0
- package/{lib/api/components/table/tabledit.config.d.ts → src/lib/api/components/table/tabledit.config.ts} +9 -8
- package/src/lib/api/components/table/tableedit.config.column.ts +12 -0
- package/src/lib/api/components/tree-table/tree-table-keys.ts +12 -0
- package/src/lib/api/components/tree-table/tree-table.config.ts +34 -0
- package/src/lib/api/directives/directives.module.ts +19 -0
- package/src/lib/api/directives/drag/drag.directive.ts +40 -0
- package/src/lib/api/directives/stepper/dynamicinput.directive.ts +23 -0
- package/src/lib/api/directives/template/template.directive.ts +15 -0
- package/src/lib/api/helpers/component-providers.ts +16 -0
- package/src/lib/api/helpers/keevo-validators.ts +174 -0
- package/src/lib/api/helpers/severity-color.ts +77 -0
- package/src/lib/api/helpers/translate-primeng.ts +25 -0
- package/src/lib/api/modules/primeng.module.ts +144 -0
- package/src/lib/api/pipes/capitalize.pipe.ts +47 -0
- package/src/lib/api/pipes/cpfcnpj.pipe.ts +21 -0
- package/src/lib/api/pipes/mask.pipe.ts +24 -0
- package/src/lib/api/pipes/pipes.module.ts +26 -0
- package/src/lib/api/pipes/telefone.pipe.ts +38 -0
- package/src/lib/api/services/base.api.service.ts +115 -0
- package/src/lib/api/services/breadcrumbs.service.ts +71 -0
- package/src/lib/api/services/chat.service.ts +39 -0
- package/src/lib/api/services/component.service.ts +44 -0
- package/src/lib/api/services/docs.service.ts +129 -0
- package/src/lib/api/services/form.service.ts +139 -0
- package/src/lib/api/services/image.cutter.service.ts +290 -0
- package/src/lib/api/services/imagens.service.ts +28 -0
- package/src/lib/api/services/notification.service.ts +88 -0
- package/src/lib/api/services/object.service.ts +33 -0
- package/src/lib/api/services/orgchart.service.ts +77 -0
- package/src/lib/api/services/pdf.service.ts +54 -0
- package/src/lib/api/types/breadcrumb.model.ts +5 -0
- package/src/lib/api/types/severity.ts +3 -0
- package/src/lib/api/types/stimulsoft.reports.d.ts +67463 -0
- package/src/lib/components/keevo-components-styles.scss +5 -0
- package/src/lib/components/keevo-components.module.ts +105 -0
- package/src/lib/components/kv-avatar/kv-avatar.component.html +75 -0
- package/src/lib/components/kv-avatar/kv-avatar.component.scss +162 -0
- package/src/lib/components/kv-avatar/kv-avatar.component.spec.ts +23 -0
- package/src/lib/components/kv-avatar/kv-avatar.component.ts +165 -0
- package/src/lib/components/kv-avatar/kv-avatar.module.ts +32 -0
- package/src/lib/components/kv-button/kv-button.component.html +26 -0
- package/src/lib/components/kv-button/kv-button.component.spec.ts +23 -0
- package/src/lib/components/kv-button/kv-button.component.ts +55 -0
- package/src/lib/components/kv-button/kv-button.module.ts +20 -0
- package/src/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.html +14 -0
- package/src/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.scss +6 -0
- package/src/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.ts +25 -0
- package/src/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.html +13 -0
- package/src/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.scss +33 -0
- package/src/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.ts +41 -0
- package/src/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.html +12 -0
- package/src/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.scss +18 -0
- package/src/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.ts +14 -0
- package/src/lib/components/kv-buttons/kv-button-success/kv-button-success.component.html +11 -0
- package/src/lib/components/kv-buttons/kv-button-success/kv-button-success.component.scss +17 -0
- package/src/lib/components/kv-buttons/kv-button-success/kv-button-success.component.ts +14 -0
- package/src/lib/components/kv-buttons/kv-button.module.ts +26 -0
- package/src/lib/components/kv-card-selection/kv-card-selection.component.html +63 -0
- package/src/lib/components/kv-card-selection/kv-card-selection.component.scss +54 -0
- package/src/lib/components/kv-card-selection/kv-card-selection.component.spec.ts +23 -0
- package/src/lib/components/kv-card-selection/kv-card-selection.component.ts +73 -0
- package/src/lib/components/kv-card-selection/kv-card-selection.module.ts +19 -0
- package/src/lib/components/kv-carousel/kv-carousel.component.html +26 -0
- package/src/lib/components/kv-carousel/kv-carousel.component.scss +47 -0
- package/src/lib/components/kv-carousel/kv-carousel.component.spec.ts +23 -0
- package/src/lib/components/kv-carousel/kv-carousel.component.ts +40 -0
- package/src/lib/components/kv-carousel/kv-carousel.module.ts +19 -0
- package/src/lib/components/kv-chart/kv-chart.component.html +38 -0
- package/src/lib/components/kv-chart/kv-chart.component.scss +0 -0
- package/src/lib/components/kv-chart/kv-chart.component.spec.ts +28 -0
- package/src/lib/components/kv-chart/kv-chart.component.ts +174 -0
- package/src/lib/components/kv-chart/kv-chart.module.ts +21 -0
- package/src/lib/components/kv-confirmation-modal/kv-confirmation-modal.component.html +9 -0
- package/src/lib/components/kv-confirmation-modal/kv-confirmation-modal.component.scss +7 -0
- package/src/lib/components/kv-confirmation-modal/kv-confirmation-modal.component.spec.ts +23 -0
- package/src/lib/components/kv-confirmation-modal/kv-confirmation-modal.component.ts +32 -0
- package/src/lib/components/kv-confirmation-modal/kv-confirmation-modal.module.ts +14 -0
- package/src/lib/components/kv-content-viewer/kv-content-viewer.component.html +229 -0
- package/src/lib/components/kv-content-viewer/kv-content-viewer.component.scss +185 -0
- package/src/lib/components/kv-content-viewer/kv-content-viewer.component.spec.ts +23 -0
- package/src/lib/components/kv-content-viewer/kv-content-viewer.component.ts +171 -0
- package/src/lib/components/kv-content-viewer/kv-content-viewer.module.ts +25 -0
- package/src/lib/components/kv-error/kv-error.component.html +3 -0
- package/src/lib/components/kv-error/kv-error.component.scss +5 -0
- package/src/lib/components/kv-error/kv-error.component.ts +27 -0
- package/src/lib/components/kv-error/kv-error.module.ts +26 -0
- package/src/lib/components/kv-file-upload/kv-file-upload.component.html +134 -0
- package/src/lib/components/kv-file-upload/kv-file-upload.component.scss +13 -0
- package/src/lib/components/kv-file-upload/kv-file-upload.component.spec.ts +23 -0
- package/src/lib/components/kv-file-upload/kv-file-upload.component.ts +200 -0
- package/src/lib/components/kv-file-upload/kv-file-upload.module.ts +13 -0
- package/src/lib/components/kv-file-viewer/kv-file-viewer.component.html +16 -0
- package/src/lib/components/kv-file-viewer/kv-file-viewer.component.scss +18 -0
- package/src/lib/components/kv-file-viewer/kv-file-viewer.component.ts +42 -0
- package/src/lib/components/kv-file-viewer/kv-file-viewer.module.ts +14 -0
- package/src/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.component.html +34 -0
- package/src/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.component.scss +17 -0
- package/src/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.component.ts +80 -0
- package/src/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.module.ts +15 -0
- package/src/lib/components/kv-file-viewer-preview/kv-file-viewer-preview.component.html +103 -0
- package/src/lib/components/kv-file-viewer-preview/kv-file-viewer-preview.component.scss +153 -0
- package/src/lib/components/kv-file-viewer-preview/kv-file-viewer-preview.component.spec.ts +23 -0
- package/src/lib/components/kv-file-viewer-preview/kv-file-viewer-preview.component.ts +73 -0
- package/src/lib/components/kv-file-viewer-preview/kv-file-viewer-preview.module.ts +18 -0
- package/src/lib/components/kv-filter-card/kv-filter-card.component.html +12 -0
- package/src/lib/components/kv-filter-card/kv-filter-card.component.scss +76 -0
- package/src/lib/components/kv-filter-card/kv-filter-card.component.spec.ts +23 -0
- package/src/lib/components/kv-filter-card/kv-filter-card.component.ts +18 -0
- package/src/lib/components/kv-filter-card/kv-filter-card.module.ts +23 -0
- package/src/lib/components/kv-filter-cards/kv-filter-cards.component.html +81 -0
- package/src/lib/components/kv-filter-cards/kv-filter-cards.component.scss +197 -0
- package/src/lib/components/kv-filter-cards/kv-filter-cards.component.ts +150 -0
- package/src/lib/components/kv-filter-cards/kv-filter-cards.module.ts +20 -0
- package/src/lib/components/kv-filter-cards/kv-filter-cards.pipe.ts +24 -0
- package/src/lib/components/kv-filter-fieldset/kv-filter-fieldset.component.html +25 -0
- package/src/lib/components/kv-filter-fieldset/kv-filter-fieldset.component.scss +22 -0
- package/src/lib/components/kv-filter-fieldset/kv-filter-fieldset.component.spec.ts +23 -0
- package/src/lib/components/kv-filter-fieldset/kv-filter-fieldset.component.ts +20 -0
- package/src/lib/components/kv-filter-fieldset/kv-filter-fieldset.module.ts +20 -0
- package/src/lib/components/kv-g-icon/kv-g-icon.component.html +1 -0
- package/src/lib/components/kv-g-icon/kv-g-icon.component.scss +0 -0
- package/src/lib/components/kv-g-icon/kv-g-icon.component.spec.ts +23 -0
- package/src/lib/components/kv-g-icon/kv-g-icon.component.ts +10 -0
- package/src/lib/components/kv-g-icon/kv-g-icon.module.ts +11 -0
- package/src/lib/components/kv-home-card/kv-home-card.component.html +35 -0
- package/src/lib/components/kv-home-card/kv-home-card.component.scss +5 -0
- package/src/lib/components/kv-home-card/kv-home-card.component.spec.ts +23 -0
- package/src/lib/components/kv-home-card/kv-home-card.component.ts +33 -0
- package/src/lib/components/kv-home-card/kv-home-card.module.ts +18 -0
- package/src/lib/components/kv-icon/kv-icon.component.html +13 -0
- package/src/lib/components/kv-icon/kv-icon.component.scss +69 -0
- package/src/lib/components/kv-icon/kv-icon.component.spec.ts +28 -0
- package/src/lib/components/kv-icon/kv-icon.component.ts +30 -0
- package/src/lib/components/kv-icon/kv-icon.model.ts +3 -0
- package/src/lib/components/kv-icon/kv-icon.module.ts +16 -0
- package/src/lib/components/kv-image-upload/kv-image-upload.component.html +64 -0
- package/src/lib/components/kv-image-upload/kv-image-upload.component.scss +0 -0
- package/src/lib/components/kv-image-upload/kv-image-upload.component.ts +153 -0
- package/src/lib/components/kv-image-upload/kv-image-upload.module.ts +10 -0
- package/src/lib/components/kv-inputs/kv-check/kv-check.component.html +12 -0
- package/src/lib/components/kv-inputs/kv-check/kv-check.component.scss +38 -0
- package/src/lib/components/kv-inputs/kv-check/kv-check.component.ts +32 -0
- package/src/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.html +87 -0
- package/src/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.ts +119 -0
- package/src/lib/components/kv-inputs/kv-editor/components/kv-instrucoes-report/kv-instrucoes-report.component.html +13 -0
- package/src/lib/components/kv-inputs/kv-editor/components/kv-instrucoes-report/kv-instrucoes-report.component.scss +0 -0
- package/src/lib/components/kv-inputs/kv-editor/components/kv-instrucoes-report/kv-instrucoes-report.component.spec.ts +23 -0
- package/src/lib/components/kv-inputs/kv-editor/components/kv-instrucoes-report/kv-instrucoes-report.component.ts +16 -0
- package/src/lib/components/kv-inputs/kv-editor/components/kv-report-modal/kv-report-modal.component.html +18 -0
- package/src/lib/components/kv-inputs/kv-editor/components/kv-report-modal/kv-report-modal.component.scss +0 -0
- package/src/lib/components/kv-inputs/kv-editor/components/kv-report-modal/kv-report-modal.component.ts +41 -0
- package/src/lib/components/kv-inputs/kv-editor/config/kv-editor.config.ts +120 -0
- package/src/lib/components/kv-inputs/kv-editor/kv-editor.component.html +285 -0
- package/src/lib/components/kv-inputs/kv-editor/kv-editor.component.scss +182 -0
- package/src/lib/components/kv-inputs/kv-editor/kv-editor.component.ts +311 -0
- package/{lib/components/kv-inputs/kv-editor/kv-editor.d.ts → src/lib/components/kv-inputs/kv-editor/kv-editor.ts} +6 -6
- package/src/lib/components/kv-inputs/kv-editor/services/kv-editor-mention.service.ts +156 -0
- package/src/lib/components/kv-inputs/kv-editor/services/kv-editor-pdf.service.ts +190 -0
- package/src/lib/components/kv-inputs/kv-editor/services/kv-editor-quill.service.spec.ts +126 -0
- package/src/lib/components/kv-inputs/kv-editor/services/kv-editor-quill.service.ts +84 -0
- package/src/lib/components/kv-inputs/kv-editor/services/kv-editor-relatorio.service.spec.ts +176 -0
- package/src/lib/components/kv-inputs/kv-editor/services/kv-editor-relatorio.service.ts +101 -0
- package/src/lib/components/kv-inputs/kv-editor/types/kv-editor.types.ts +36 -0
- package/src/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.html +37 -0
- package/src/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.scss +23 -0
- package/src/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.ts +197 -0
- package/src/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.html +24 -0
- package/src/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.scss +0 -0
- package/src/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.ts +35 -0
- package/src/lib/components/kv-inputs/kv-input-number/kv-input-number.component.html +23 -0
- package/src/lib/components/kv-inputs/kv-input-number/kv-input-number.component.scss +0 -0
- package/src/lib/components/kv-inputs/kv-input-number/kv-input-number.component.ts +61 -0
- package/src/lib/components/kv-inputs/kv-input-number-addon/kv-input-number-addon.component.html +33 -0
- package/src/lib/components/kv-inputs/kv-input-number-addon/kv-input-number-addon.component.scss +5 -0
- package/src/lib/components/kv-inputs/kv-input-number-addon/kv-input-number-addon.component.ts +63 -0
- package/src/lib/components/kv-inputs/kv-input-password/kv-input-password.component.html +24 -0
- package/src/lib/components/kv-inputs/kv-input-password/kv-input-password.component.scss +0 -0
- package/src/lib/components/kv-inputs/kv-input-password/kv-input-password.component.ts +26 -0
- package/src/lib/components/kv-inputs/kv-input-text/kv-input-text.component.html +23 -0
- package/src/lib/components/kv-inputs/kv-input-text/kv-input-text.component.scss +18 -0
- package/src/lib/components/kv-inputs/kv-input-text/kv-input-text.component.ts +40 -0
- package/src/lib/components/kv-inputs/kv-input-text-addon/kv-input-text-addon.component.html +30 -0
- package/src/lib/components/kv-inputs/kv-input-text-addon/kv-input-text-addon.component.scss +26 -0
- package/src/lib/components/kv-inputs/kv-input-text-addon/kv-input-text-addon.component.ts +38 -0
- package/src/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.html +53 -0
- package/src/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.scss +41 -0
- package/src/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.spec.ts +23 -0
- package/src/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.ts +48 -0
- package/src/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.html +23 -0
- package/src/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.scss +0 -0
- package/src/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.ts +40 -0
- package/src/lib/components/kv-inputs/kv-input-time/kv-input-time.component.html +24 -0
- package/src/lib/components/kv-inputs/kv-input-time/kv-input-time.component.scss +0 -0
- package/src/lib/components/kv-inputs/kv-input-time/kv-input-time.component.ts +27 -0
- package/src/lib/components/kv-inputs/kv-inputs.module.ts +100 -0
- package/src/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.html +87 -0
- package/src/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.scss +62 -0
- package/src/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.ts +54 -0
- package/src/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.html +19 -0
- package/src/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.scss +22 -0
- package/src/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.ts +63 -0
- package/src/lib/components/kv-inputs/kv-select-button/kv-select-button.component.html +26 -0
- package/src/lib/components/kv-inputs/kv-select-button/kv-select-button.component.scss +5 -0
- package/src/lib/components/kv-inputs/kv-select-button/kv-select-button.component.spec.ts +21 -0
- package/src/lib/components/kv-inputs/kv-select-button/kv-select-button.component.ts +30 -0
- package/src/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.html +28 -0
- package/src/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.scss +61 -0
- package/src/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.spec.ts +23 -0
- package/src/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.ts +43 -0
- package/src/lib/components/kv-inputs/kv-switch/kv-switch.component.html +23 -0
- package/src/lib/components/kv-inputs/kv-switch/kv-switch.component.scss +35 -0
- package/src/lib/components/kv-inputs/kv-switch/kv-switch.component.ts +54 -0
- package/src/lib/components/kv-inputs/kv-tree-multi-select/kv-tree-multi-select.component.html +68 -0
- package/src/lib/components/kv-inputs/kv-tree-multi-select/kv-tree-multi-select.component.scss +86 -0
- package/src/lib/components/kv-inputs/kv-tree-multi-select/kv-tree-multi-select.component.ts +59 -0
- package/src/lib/components/kv-label/kv-label.component.html +3 -0
- package/src/lib/components/kv-label/kv-label.component.scss +15 -0
- package/src/lib/components/kv-label/kv-label.component.spec.ts +23 -0
- package/src/lib/components/kv-label/kv-label.component.ts +14 -0
- package/src/lib/components/kv-label/kv-label.module.ts +17 -0
- package/src/lib/components/kv-layout/dropdown-master/dropdown-master.component.html +25 -0
- package/src/lib/components/kv-layout/dropdown-master/dropdown-master.component.scss +19 -0
- package/src/lib/components/kv-layout/dropdown-master/dropdown-master.component.spec.ts +28 -0
- package/src/lib/components/kv-layout/dropdown-master/dropdown-master.component.ts +34 -0
- package/src/lib/components/kv-layout/kv-layout.module.ts +44 -0
- package/src/lib/components/kv-layout/layout/kv-layout.component.html +535 -0
- package/src/lib/components/kv-layout/layout/kv-layout.component.scss +267 -0
- package/src/lib/components/kv-layout/layout/kv-layout.component.spec.ts +23 -0
- package/src/lib/components/kv-layout/layout/kv-layout.component.ts +502 -0
- package/src/lib/components/kv-layout/top-icons/top-icons.component.html +26 -0
- package/src/lib/components/kv-layout/top-icons/top-icons.component.scss +71 -0
- package/src/lib/components/kv-layout/top-icons/top-icons.component.spec.ts +23 -0
- package/src/lib/components/kv-layout/top-icons/top-icons.component.ts +26 -0
- package/src/lib/components/kv-loader/kv-loader.component.html +1 -0
- package/src/lib/components/kv-loader/kv-loader.component.ts +11 -0
- package/src/lib/components/kv-loader/kv-loader.module.ts +17 -0
- package/src/lib/components/kv-loader/kv-loader.service.ts +29 -0
- package/src/lib/components/kv-login/kv-login.component.html +101 -0
- package/src/lib/components/kv-login/kv-login.component.scss +99 -0
- package/src/lib/components/kv-login/kv-login.component.spec.ts +23 -0
- package/src/lib/components/kv-login/kv-login.component.ts +97 -0
- package/src/lib/components/kv-login/kv-login.module.ts +33 -0
- package/src/lib/components/kv-modal/kv-modal.component.html +20 -0
- package/src/lib/components/kv-modal/kv-modal.component.scss +37 -0
- package/src/lib/components/kv-modal/kv-modal.component.spec.ts +21 -0
- package/src/lib/components/kv-modal/kv-modal.component.ts +111 -0
- package/src/lib/components/kv-modal/kv-modal.module.ts +12 -0
- package/src/lib/components/kv-orgchart/kv-orgchart.component.html +125 -0
- package/src/lib/components/kv-orgchart/kv-orgchart.component.scss +73 -0
- package/src/lib/components/kv-orgchart/kv-orgchart.component.ts +283 -0
- package/src/lib/components/kv-orgchart/kv-orgchart.module.ts +31 -0
- package/src/lib/components/kv-page-form/kv-page-form.component.html +91 -0
- package/src/lib/components/kv-page-form/kv-page-form.component.scss +100 -0
- package/src/lib/components/kv-page-form/kv-page-form.component.spec.ts +28 -0
- package/src/lib/components/kv-page-form/kv-page-form.component.ts +206 -0
- package/src/lib/components/kv-page-form/kv-page-form.module.ts +33 -0
- package/src/lib/components/kv-page-stepper/kv-page-stepper.component.html +276 -0
- package/src/lib/components/kv-page-stepper/kv-page-stepper.component.scss +85 -0
- package/src/lib/components/kv-page-stepper/kv-page-stepper.component.spec.ts +23 -0
- package/src/lib/components/kv-page-stepper/kv-page-stepper.component.ts +223 -0
- package/src/lib/components/kv-page-stepper/kv-page-stepper.module.ts +36 -0
- package/src/lib/components/kv-pick-list/kv-pick-list.component.html +32 -0
- package/src/lib/components/kv-pick-list/kv-pick-list.component.scss +57 -0
- package/src/lib/components/kv-pick-list/kv-pick-list.component.spec.ts +26 -0
- package/src/lib/components/kv-pick-list/kv-pick-list.component.ts +461 -0
- package/src/lib/components/kv-pick-list/kv-pick-list.module.ts +24 -0
- package/src/lib/components/kv-progress-bar/kv-progress-bar.component.html +38 -0
- package/src/lib/components/kv-progress-bar/kv-progress-bar.component.scss +128 -0
- package/src/lib/components/kv-progress-bar/kv-progress-bar.component.spec.ts +21 -0
- package/src/lib/components/kv-progress-bar/kv-progress-bar.component.ts +75 -0
- package/src/lib/components/kv-progress-bar/kv-progress-bar.module.ts +19 -0
- package/src/lib/components/kv-progress-bar-alternative/kv-progress-bar-alternative.component.html +43 -0
- package/src/lib/components/kv-progress-bar-alternative/kv-progress-bar-alternative.component.scss +130 -0
- package/src/lib/components/kv-progress-bar-alternative/kv-progress-bar-alternative.component.spec.ts +23 -0
- package/src/lib/components/kv-progress-bar-alternative/kv-progress-bar-alternative.component.ts +82 -0
- package/src/lib/components/kv-progress-bar-alternative/kv-progress-bar-alternative.module.ts +18 -0
- package/src/lib/components/kv-report/kv-report.component.html +3 -0
- package/src/lib/components/kv-report/kv-report.component.scss +14 -0
- package/src/lib/components/kv-report/kv-report.component.spec.ts +28 -0
- package/src/lib/components/kv-report/kv-report.component.ts +44 -0
- package/src/lib/components/kv-report/kv-report.module.ts +18 -0
- package/src/lib/components/kv-stepper/kv-stepper.component.html +94 -0
- package/src/lib/components/kv-stepper/kv-stepper.component.scss +43 -0
- package/src/lib/components/kv-stepper/kv-stepper.component.spec.ts +23 -0
- package/src/lib/components/kv-stepper/kv-stepper.component.ts +73 -0
- package/src/lib/components/kv-stepper/kv-stepper.module.ts +27 -0
- package/src/lib/components/kv-steps/kv-steps.component.html +53 -0
- package/src/lib/components/kv-steps/kv-steps.component.scss +120 -0
- package/src/lib/components/kv-steps/kv-steps.component.ts +122 -0
- package/src/lib/components/kv-table/kv-table.component.html +655 -0
- package/src/lib/components/kv-table/kv-table.component.spec.ts +28 -0
- package/src/lib/components/kv-table/kv-table.component.ts +792 -0
- package/src/lib/components/kv-table/kv-table.module.ts +25 -0
- package/src/lib/components/kv-table-edit/kv-table-edit.component.html +913 -0
- package/src/lib/components/kv-table-edit/kv-table-edit.component.scss +829 -0
- package/src/lib/components/kv-table-edit/kv-table-edit.component.ts +425 -0
- package/src/lib/components/kv-table-edit/kv-table-edit.module.ts +31 -0
- package/src/lib/components/kv-table-expandable/kv-table-expandable.component.html +634 -0
- package/src/lib/components/kv-table-expandable/kv-table-expandable.component.scss +387 -0
- package/src/lib/components/kv-table-expandable/kv-table-expandable.component.ts +546 -0
- package/src/lib/components/kv-table-expandable/kv-table-expandable.module.ts +22 -0
- package/src/lib/components/kv-table-viewer/components/actions-lote-field/actions-lote-field.component.html +25 -0
- package/src/lib/components/kv-table-viewer/components/actions-lote-field/actions-lote-field.component.scss +0 -0
- package/src/lib/components/kv-table-viewer/components/actions-lote-field/actions-lote-field.component.spec.ts +23 -0
- package/src/lib/components/kv-table-viewer/components/actions-lote-field/actions-lote-field.component.ts +17 -0
- package/src/lib/components/kv-table-viewer/components/actions-row-menu/actions-row-menu.component.html +20 -0
- package/src/lib/components/kv-table-viewer/components/actions-row-menu/actions-row-menu.component.scss +0 -0
- package/src/lib/components/kv-table-viewer/components/actions-row-menu/actions-row-menu.component.spec.ts +23 -0
- package/src/lib/components/kv-table-viewer/components/actions-row-menu/actions-row-menu.component.ts +14 -0
- package/src/lib/components/kv-table-viewer/kv-table-viewer.component.html +164 -0
- package/src/lib/components/kv-table-viewer/kv-table-viewer.component.scss +80 -0
- package/src/lib/components/kv-table-viewer/kv-table-viewer.component.spec.ts +23 -0
- package/src/lib/components/kv-table-viewer/kv-table-viewer.component.ts +183 -0
- package/src/lib/components/kv-tag/kv-tag.component.html +3 -0
- package/src/lib/components/kv-tag/kv-tag.component.scss +65 -0
- package/src/lib/components/kv-tag/kv-tag.component.spec.ts +23 -0
- package/src/lib/components/kv-tag/kv-tag.component.ts +16 -0
- package/src/lib/components/kv-tag/kv-tag.module.ts +18 -0
- package/src/lib/components/kv-tags/kv-tags.component.html +19 -0
- package/src/lib/components/kv-tags/kv-tags.component.scss +28 -0
- package/src/lib/components/kv-tags/kv-tags.component.ts +64 -0
- package/src/lib/components/kv-tags/kv-tags.module.ts +18 -0
- package/src/lib/components/kv-timeline/kv-timeline.component.html +28 -0
- package/src/lib/components/kv-timeline/kv-timeline.component.scss +6 -0
- package/src/lib/components/kv-timeline/kv-timeline.component.spec.ts +23 -0
- package/src/lib/components/kv-timeline/kv-timeline.component.ts +77 -0
- package/src/lib/components/kv-tree-table/kv-tree-table.component.html +492 -0
- package/src/lib/components/kv-tree-table/kv-tree-table.component.scss +187 -0
- package/src/lib/components/kv-tree-table/kv-tree-table.component.spec.ts +21 -0
- package/src/lib/components/kv-tree-table/kv-tree-table.component.ts +355 -0
- package/src/lib/components/kv-tree-table/kv-tree-table.module.ts +23 -0
- package/src/lib/components/kv-tree-view/kv-tree-view.component.html +16 -0
- package/src/lib/components/kv-tree-view/kv-tree-view.component.scss +19 -0
- package/src/lib/components/kv-tree-view/kv-tree-view.component.spec.ts +23 -0
- package/src/lib/components/kv-tree-view/kv-tree-view.component.ts +73 -0
- package/src/lib/components/kv-tree-view/kv-tree-view.module.ts +19 -0
- package/src/lib/components/kv-widget-card/kv-widget-card.component.html +71 -0
- package/src/lib/components/kv-widget-card/kv-widget-card.component.scss +27 -0
- package/src/lib/components/kv-widget-card/kv-widget-card.component.spec.ts +28 -0
- package/src/lib/components/kv-widget-card/kv-widget-card.component.ts +107 -0
- package/src/lib/components/kv-widget-card/kv-widget-card.module.ts +20 -0
- package/src/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.html +22 -0
- package/src/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.scss +36 -0
- package/src/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.spec.ts +28 -0
- package/src/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.ts +41 -0
- package/src/lib/components/kv-workspace/kv-workspace.module.ts +45 -0
- package/src/lib/components/kv-workspace/logo/kv-workspace-logo.component.html +20 -0
- package/src/lib/components/kv-workspace/logo/kv-workspace-logo.component.scss +0 -0
- package/src/lib/components/kv-workspace/logo/kv-workspace-logo.component.spec.ts +28 -0
- package/src/lib/components/kv-workspace/logo/kv-workspace-logo.component.ts +18 -0
- package/src/lib/components/kv-workspace/master/kv-workspace-master.component.html +35 -0
- package/src/lib/components/kv-workspace/master/kv-workspace-master.component.scss +29 -0
- package/src/lib/components/kv-workspace/master/kv-workspace-master.component.spec.ts +28 -0
- package/src/lib/components/kv-workspace/master/kv-workspace-master.component.ts +98 -0
- package/src/lib/components/kv-workspace/workspace/kv-workspace.component.html +63 -0
- package/src/lib/components/kv-workspace/workspace/kv-workspace.component.scss +62 -0
- package/src/lib/components/kv-workspace/workspace/kv-workspace.component.ts +91 -0
- package/{public-api.d.ts → src/public-api.ts} +361 -288
- package/tsconfig.lib.json +14 -0
- package/tsconfig.lib.prod.json +10 -0
- package/tsconfig.spec.json +14 -0
- package/esm2022/keevo-components.mjs +0 -5
- package/esm2022/lib/api/base-components/base-component-button.mjs +0 -39
- package/esm2022/lib/api/base-components/base-component-chart.mjs +0 -104
- package/esm2022/lib/api/base-components/base-component-crud-form.mjs +0 -308
- package/esm2022/lib/api/base-components/base-component-crud-list.mjs +0 -91
- package/esm2022/lib/api/base-components/base-component-crud.mjs +0 -80
- package/esm2022/lib/api/base-components/base-component-dropdown-external.mjs +0 -31
- package/esm2022/lib/api/base-components/base-component-dropdown.mjs +0 -238
- package/esm2022/lib/api/base-components/base-component-input.mjs +0 -101
- package/esm2022/lib/api/base-components/base-component-multi-select.mjs +0 -174
- package/esm2022/lib/api/base-components/base-component-table.mjs +0 -354
- package/esm2022/lib/api/base-components/base-component.mjs +0 -51
- package/esm2022/lib/api/components/chart/chart.config.mjs +0 -2
- package/esm2022/lib/api/components/chart/chart.model.mjs +0 -2
- package/esm2022/lib/api/components/chart/orchart.config.mjs +0 -2
- package/esm2022/lib/api/components/chart/orchartnode.mjs +0 -2
- package/esm2022/lib/api/components/dropdown/filtro.combo.mjs +0 -2
- package/esm2022/lib/api/components/step/step.model.mjs +0 -2
- package/esm2022/lib/api/components/stepper/kv-stepperpanel.mjs +0 -2
- package/esm2022/lib/api/components/table/action-item.mjs +0 -2
- package/esm2022/lib/api/components/table/kv-menuitem.mjs +0 -46
- package/esm2022/lib/api/components/table/table-dropdown-control.mjs +0 -2
- package/esm2022/lib/api/components/table/table.config.column.mjs +0 -2
- package/esm2022/lib/api/components/table/table.config.mjs +0 -2
- package/esm2022/lib/api/components/table/table.paginate.mjs +0 -10
- package/esm2022/lib/api/components/table/tabledit.config.mjs +0 -2
- package/esm2022/lib/api/components/table/tableedit.config.column.mjs +0 -2
- package/esm2022/lib/api/components/tree-table/tree-table-keys.mjs +0 -2
- package/esm2022/lib/api/components/tree-table/tree-table.config.mjs +0 -3
- package/esm2022/lib/api/directives/directives.module.mjs +0 -30
- package/esm2022/lib/api/directives/drag/drag.directive.mjs +0 -52
- package/esm2022/lib/api/directives/stepper/dynamicinput.directive.mjs +0 -31
- package/esm2022/lib/api/directives/template/template.directive.mjs +0 -24
- package/esm2022/lib/api/helpers/component-providers.mjs +0 -16
- package/esm2022/lib/api/helpers/keevo-validators.mjs +0 -144
- package/esm2022/lib/api/helpers/translate-primeng.mjs +0 -23
- package/esm2022/lib/api/modules/primeng.module.mjs +0 -283
- package/esm2022/lib/api/pipes/capitalize.pipe.mjs +0 -47
- package/esm2022/lib/api/pipes/cpfcnpj.pipe.mjs +0 -25
- package/esm2022/lib/api/pipes/mask.pipe.mjs +0 -29
- package/esm2022/lib/api/pipes/pipes.module.mjs +0 -39
- package/esm2022/lib/api/pipes/telefone.pipe.mjs +0 -45
- package/esm2022/lib/api/services/base.api.service.mjs +0 -74
- package/esm2022/lib/api/services/breadcrumbs.service.mjs +0 -62
- package/esm2022/lib/api/services/chat.service.mjs +0 -37
- package/esm2022/lib/api/services/component.service.mjs +0 -37
- package/esm2022/lib/api/services/docs.service.mjs +0 -129
- package/esm2022/lib/api/services/form.service.mjs +0 -95
- package/esm2022/lib/api/services/image.cutter.service.mjs +0 -193
- package/esm2022/lib/api/services/imagens.service.mjs +0 -28
- package/esm2022/lib/api/services/notification.service.mjs +0 -69
- package/esm2022/lib/api/services/object.service.mjs +0 -39
- package/esm2022/lib/api/services/orgchart.service.mjs +0 -64
- package/esm2022/lib/api/services/pdf.service.mjs +0 -48
- package/esm2022/lib/api/types/breadcrumb.model.mjs +0 -2
- package/esm2022/lib/components/keevo-components.module.mjs +0 -232
- package/esm2022/lib/components/kv-avatar/kv-avatar.component.mjs +0 -142
- package/esm2022/lib/components/kv-avatar/kv-avatar.module.mjs +0 -55
- package/esm2022/lib/components/kv-button/kv-button.component.mjs +0 -51
- package/esm2022/lib/components/kv-button/kv-button.module.mjs +0 -28
- package/esm2022/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.mjs +0 -25
- package/esm2022/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.mjs +0 -39
- package/esm2022/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.mjs +0 -17
- package/esm2022/lib/components/kv-buttons/kv-button-success/kv-button-success.component.mjs +0 -17
- package/esm2022/lib/components/kv-buttons/kv-button.module.mjs +0 -39
- package/esm2022/lib/components/kv-card-selection/kv-card-selection.component.mjs +0 -60
- package/esm2022/lib/components/kv-card-selection/kv-card-selection.module.mjs +0 -31
- package/esm2022/lib/components/kv-carousel/kv-carousel.component.mjs +0 -34
- package/esm2022/lib/components/kv-carousel/kv-carousel.module.mjs +0 -28
- package/esm2022/lib/components/kv-chart/kv-chart.component.mjs +0 -166
- package/esm2022/lib/components/kv-chart/kv-chart.module.mjs +0 -32
- package/esm2022/lib/components/kv-confirmation-modal/kv-confirmation-modal.component.mjs +0 -32
- package/esm2022/lib/components/kv-confirmation-modal/kv-confirmation-modal.module.mjs +0 -22
- package/esm2022/lib/components/kv-content-viewer/kv-content-viewer.component.mjs +0 -185
- package/esm2022/lib/components/kv-content-viewer/kv-content-viewer.module.mjs +0 -44
- package/esm2022/lib/components/kv-error/kv-error.component.mjs +0 -26
- package/esm2022/lib/components/kv-error/kv-error.module.mjs +0 -35
- package/esm2022/lib/components/kv-file-upload/kv-file-upload.component.mjs +0 -191
- package/esm2022/lib/components/kv-file-upload/kv-file-upload.module.mjs +0 -23
- package/esm2022/lib/components/kv-file-viewer/kv-file-viewer.component.mjs +0 -46
- package/esm2022/lib/components/kv-file-viewer/kv-file-viewer.module.mjs +0 -20
- package/esm2022/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.component.mjs +0 -68
- package/esm2022/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.module.mjs +0 -24
- package/esm2022/lib/components/kv-filter-card/kv-filter-card.component.mjs +0 -29
- package/esm2022/lib/components/kv-filter-card/kv-filter-card.module.mjs +0 -34
- package/esm2022/lib/components/kv-filter-cards/kv-filter-cards.component.mjs +0 -103
- package/esm2022/lib/components/kv-filter-cards/kv-filter-cards.module.mjs +0 -31
- package/esm2022/lib/components/kv-filter-cards/kv-filter-cards.pipe.mjs +0 -30
- package/esm2022/lib/components/kv-filter-fieldset/kv-filter-fieldset.component.mjs +0 -26
- package/esm2022/lib/components/kv-filter-fieldset/kv-filter-fieldset.module.mjs +0 -28
- package/esm2022/lib/components/kv-g-icon/kv-g-icon.component.mjs +0 -11
- package/esm2022/lib/components/kv-g-icon/kv-g-icon.module.mjs +0 -19
- package/esm2022/lib/components/kv-home-card/kv-home-card.component.mjs +0 -27
- package/esm2022/lib/components/kv-home-card/kv-home-card.module.mjs +0 -32
- package/esm2022/lib/components/kv-image-upload/kv-image-upload.component.mjs +0 -136
- package/esm2022/lib/components/kv-image-upload/kv-image-upload.module.mjs +0 -18
- package/esm2022/lib/components/kv-inputs/kv-check/kv-check.component.mjs +0 -29
- package/esm2022/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.mjs +0 -102
- package/esm2022/lib/components/kv-inputs/kv-editor/components/kv-instrucoes-report/kv-instrucoes-report.component.mjs +0 -18
- package/esm2022/lib/components/kv-inputs/kv-editor/components/kv-report-modal/kv-report-modal.component.mjs +0 -40
- package/esm2022/lib/components/kv-inputs/kv-editor/config/kv-editor.config.mjs +0 -110
- package/esm2022/lib/components/kv-inputs/kv-editor/kv-editor.component.mjs +0 -266
- package/esm2022/lib/components/kv-inputs/kv-editor/kv-editor.mjs +0 -7
- package/esm2022/lib/components/kv-inputs/kv-editor/services/kv-editor-mention.service.mjs +0 -135
- package/esm2022/lib/components/kv-inputs/kv-editor/services/kv-editor-pdf.service.mjs +0 -168
- package/esm2022/lib/components/kv-inputs/kv-editor/services/kv-editor-quill.service.mjs +0 -78
- package/esm2022/lib/components/kv-inputs/kv-editor/services/kv-editor-relatorio.service.mjs +0 -95
- package/esm2022/lib/components/kv-inputs/kv-editor/types/kv-editor.types.mjs +0 -2
- package/esm2022/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.mjs +0 -168
- package/esm2022/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.mjs +0 -30
- package/esm2022/lib/components/kv-inputs/kv-input-number/kv-input-number.component.mjs +0 -59
- package/esm2022/lib/components/kv-inputs/kv-input-number-addon/kv-input-number-addon.component.mjs +0 -66
- package/esm2022/lib/components/kv-inputs/kv-input-password/kv-input-password.component.mjs +0 -33
- package/esm2022/lib/components/kv-inputs/kv-input-text/kv-input-text.component.mjs +0 -38
- package/esm2022/lib/components/kv-inputs/kv-input-text-addon/kv-input-text-addon.component.mjs +0 -42
- package/esm2022/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.mjs +0 -50
- package/esm2022/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.mjs +0 -43
- package/esm2022/lib/components/kv-inputs/kv-input-time/kv-input-time.component.mjs +0 -24
- package/esm2022/lib/components/kv-inputs/kv-inputs.module.mjs +0 -165
- package/esm2022/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.mjs +0 -60
- package/esm2022/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.mjs +0 -60
- package/esm2022/lib/components/kv-inputs/kv-select-button/kv-select-button.component.mjs +0 -46
- package/esm2022/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.mjs +0 -37
- package/esm2022/lib/components/kv-inputs/kv-switch/kv-switch.component.mjs +0 -42
- package/esm2022/lib/components/kv-inputs/kv-tree-multi-select/kv-tree-multi-select.component.mjs +0 -58
- package/esm2022/lib/components/kv-label/kv-label.component.mjs +0 -15
- package/esm2022/lib/components/kv-label/kv-label.module.mjs +0 -24
- package/esm2022/lib/components/kv-layout/dropdown-master/dropdown-master.component.mjs +0 -28
- package/esm2022/lib/components/kv-layout/kv-layout.module.mjs +0 -72
- package/esm2022/lib/components/kv-layout/layout/kv-layout.component.mjs +0 -433
- package/esm2022/lib/components/kv-layout/top-icons/top-icons.component.mjs +0 -15
- package/esm2022/lib/components/kv-loader/kv-loader.component.mjs +0 -16
- package/esm2022/lib/components/kv-loader/kv-loader.module.mjs +0 -28
- package/esm2022/lib/components/kv-loader/kv-loader.service.mjs +0 -29
- package/esm2022/lib/components/kv-login/kv-login.component.mjs +0 -62
- package/esm2022/lib/components/kv-login/kv-login.module.mjs +0 -47
- package/esm2022/lib/components/kv-modal/kv-modal.component.mjs +0 -98
- package/esm2022/lib/components/kv-modal/kv-modal.module.mjs +0 -20
- package/esm2022/lib/components/kv-orgchart/kv-orgchart.component.mjs +0 -225
- package/esm2022/lib/components/kv-orgchart/kv-orgchart.module.mjs +0 -59
- package/esm2022/lib/components/kv-page-form/kv-page-form.component.mjs +0 -190
- package/esm2022/lib/components/kv-page-form/kv-page-form.module.mjs +0 -41
- package/esm2022/lib/components/kv-page-stepper/kv-page-stepper.component.mjs +0 -205
- package/esm2022/lib/components/kv-page-stepper/kv-page-stepper.module.mjs +0 -51
- package/esm2022/lib/components/kv-pick-list/kv-pick-list.component.mjs +0 -386
- package/esm2022/lib/components/kv-pick-list/kv-pick-list.module.mjs +0 -39
- package/esm2022/lib/components/kv-progress-bar/kv-progress-bar.component.mjs +0 -58
- package/esm2022/lib/components/kv-progress-bar/kv-progress-bar.module.mjs +0 -28
- package/esm2022/lib/components/kv-progress-bar-alternative/kv-progress-bar-alternative.component.mjs +0 -62
- package/esm2022/lib/components/kv-progress-bar-alternative/kv-progress-bar-alternative.module.mjs +0 -28
- package/esm2022/lib/components/kv-report/kv-report.component.mjs +0 -44
- package/esm2022/lib/components/kv-report/kv-report.module.mjs +0 -24
- package/esm2022/lib/components/kv-stepper/kv-stepper.component.mjs +0 -74
- package/esm2022/lib/components/kv-stepper/kv-stepper.module.mjs +0 -47
- package/esm2022/lib/components/kv-steps/kv-steps.component.mjs +0 -105
- package/esm2022/lib/components/kv-table/kv-table.component.mjs +0 -673
- package/esm2022/lib/components/kv-table/kv-table.module.mjs +0 -40
- package/esm2022/lib/components/kv-table-edit/kv-table-edit.component.mjs +0 -341
- package/esm2022/lib/components/kv-table-edit/kv-table-edit.module.mjs +0 -45
- package/esm2022/lib/components/kv-table-expandable/kv-table-expandable.component.mjs +0 -516
- package/esm2022/lib/components/kv-table-expandable/kv-table-expandable.module.mjs +0 -40
- package/esm2022/lib/components/kv-table-viewer/components/actions-lote-field/actions-lote-field.component.mjs +0 -17
- package/esm2022/lib/components/kv-table-viewer/components/actions-row-menu/actions-row-menu.component.mjs +0 -18
- package/esm2022/lib/components/kv-table-viewer/kv-table-viewer.component.mjs +0 -184
- package/esm2022/lib/components/kv-tag/kv-tag.component.mjs +0 -18
- package/esm2022/lib/components/kv-tag/kv-tag.module.mjs +0 -24
- package/esm2022/lib/components/kv-tags/kv-tags.component.mjs +0 -35
- package/esm2022/lib/components/kv-tags/kv-tags.module.mjs +0 -27
- package/esm2022/lib/components/kv-timeline/kv-timeline.component.mjs +0 -71
- package/esm2022/lib/components/kv-tree-table/kv-tree-table.component.mjs +0 -331
- package/esm2022/lib/components/kv-tree-table/kv-tree-table.module.mjs +0 -39
- package/esm2022/lib/components/kv-tree-view/kv-tree-view.component.mjs +0 -70
- package/esm2022/lib/components/kv-tree-view/kv-tree-view.module.mjs +0 -28
- package/esm2022/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.mjs +0 -40
- package/esm2022/lib/components/kv-workspace/kv-workspace.module.mjs +0 -68
- package/esm2022/lib/components/kv-workspace/logo/kv-workspace-logo.component.mjs +0 -22
- package/esm2022/lib/components/kv-workspace/master/kv-workspace-master.component.mjs +0 -78
- package/esm2022/lib/components/kv-workspace/workspace/kv-workspace.component.mjs +0 -87
- package/esm2022/public-api.mjs +0 -293
- package/fesm2022/keevo-components.mjs +0 -11977
- package/fesm2022/keevo-components.mjs.map +0 -1
- package/index.d.ts +0 -5
- package/lib/api/base-components/base-component-button.d.ts +0 -15
- package/lib/api/base-components/base-component-chart.d.ts +0 -40
- package/lib/api/base-components/base-component-crud-form.d.ts +0 -149
- package/lib/api/base-components/base-component-crud-list.d.ts +0 -70
- package/lib/api/base-components/base-component-crud.d.ts +0 -36
- package/lib/api/base-components/base-component-dropdown-external.d.ts +0 -15
- package/lib/api/base-components/base-component-dropdown.d.ts +0 -57
- package/lib/api/base-components/base-component-input.d.ts +0 -33
- package/lib/api/base-components/base-component-multi-select.d.ts +0 -40
- package/lib/api/base-components/base-component-table.d.ts +0 -88
- package/lib/api/base-components/base-component.d.ts +0 -22
- package/lib/api/components/chart/chart.config.d.ts +0 -14
- package/lib/api/components/chart/chart.model.d.ts +0 -12
- package/lib/api/components/chart/orchart.config.d.ts +0 -41
- package/lib/api/components/chart/orchartnode.d.ts +0 -34
- package/lib/api/components/dropdown/filtro.combo.d.ts +0 -4
- package/lib/api/components/stepper/kv-stepperpanel.d.ts +0 -9
- package/lib/api/components/table/action-item.d.ts +0 -13
- package/lib/api/components/table/kv-menuitem.d.ts +0 -152
- package/lib/api/components/table/table-dropdown-control.d.ts +0 -6
- package/lib/api/components/table/table.config.column.d.ts +0 -38
- package/lib/api/components/table/table.config.d.ts +0 -36
- package/lib/api/components/table/table.paginate.d.ts +0 -10
- package/lib/api/components/table/tableedit.config.column.d.ts +0 -11
- package/lib/api/components/tree-table/tree-table-keys.d.ts +0 -12
- package/lib/api/components/tree-table/tree-table.config.d.ts +0 -31
- package/lib/api/directives/directives.module.d.ts +0 -9
- package/lib/api/directives/drag/drag.directive.d.ts +0 -11
- package/lib/api/directives/stepper/dynamicinput.directive.d.ts +0 -15
- package/lib/api/directives/template/template.directive.d.ts +0 -11
- package/lib/api/helpers/component-providers.d.ts +0 -2
- package/lib/api/helpers/keevo-validators.d.ts +0 -18
- package/lib/api/helpers/translate-primeng.d.ts +0 -4
- package/lib/api/modules/primeng.module.d.ts +0 -69
- package/lib/api/pipes/capitalize.pipe.d.ts +0 -10
- package/lib/api/pipes/cpfcnpj.pipe.d.ts +0 -7
- package/lib/api/pipes/mask.pipe.d.ts +0 -7
- package/lib/api/pipes/pipes.module.d.ts +0 -11
- package/lib/api/pipes/telefone.pipe.d.ts +0 -7
- package/lib/api/services/base.api.service.d.ts +0 -25
- package/lib/api/services/breadcrumbs.service.d.ts +0 -16
- package/lib/api/services/chat.service.d.ts +0 -17
- package/lib/api/services/component.service.d.ts +0 -11
- package/lib/api/services/docs.service.d.ts +0 -12
- package/lib/api/services/form.service.d.ts +0 -31
- package/lib/api/services/image.cutter.service.d.ts +0 -16
- package/lib/api/services/imagens.service.d.ts +0 -10
- package/lib/api/services/notification.service.d.ts +0 -26
- package/lib/api/services/object.service.d.ts +0 -9
- package/lib/api/services/orgchart.service.d.ts +0 -20
- package/lib/api/services/pdf.service.d.ts +0 -7
- package/lib/api/types/breadcrumb.model.d.ts +0 -5
- package/lib/components/keevo-components.module.d.ts +0 -38
- package/lib/components/kv-avatar/kv-avatar.component.d.ts +0 -36
- package/lib/components/kv-avatar/kv-avatar.module.d.ts +0 -15
- package/lib/components/kv-button/kv-button.component.d.ts +0 -24
- package/lib/components/kv-button/kv-button.module.d.ts +0 -9
- package/lib/components/kv-buttons/kv-button-personalize/kv-button-personalize.component.d.ts +0 -11
- package/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.d.ts +0 -19
- package/lib/components/kv-buttons/kv-button-secondary/kv-button-secondary.component.d.ts +0 -7
- package/lib/components/kv-buttons/kv-button-success/kv-button-success.component.d.ts +0 -7
- package/lib/components/kv-buttons/kv-button.module.d.ts +0 -11
- package/lib/components/kv-card-selection/kv-card-selection.component.d.ts +0 -25
- package/lib/components/kv-card-selection/kv-card-selection.module.d.ts +0 -10
- package/lib/components/kv-carousel/kv-carousel.component.d.ts +0 -17
- package/lib/components/kv-carousel/kv-carousel.module.d.ts +0 -9
- package/lib/components/kv-chart/kv-chart.component.d.ts +0 -57
- package/lib/components/kv-chart/kv-chart.module.d.ts +0 -10
- package/lib/components/kv-confirmation-modal/kv-confirmation-modal.component.d.ts +0 -12
- package/lib/components/kv-confirmation-modal/kv-confirmation-modal.module.d.ts +0 -10
- package/lib/components/kv-content-viewer/kv-content-viewer.component.d.ts +0 -56
- package/lib/components/kv-content-viewer/kv-content-viewer.module.d.ts +0 -14
- package/lib/components/kv-error/kv-error.component.d.ts +0 -12
- package/lib/components/kv-error/kv-error.module.d.ts +0 -10
- package/lib/components/kv-file-upload/kv-file-upload.component.d.ts +0 -35
- package/lib/components/kv-file-upload/kv-file-upload.module.d.ts +0 -10
- package/lib/components/kv-file-viewer/kv-file-viewer.component.d.ts +0 -21
- package/lib/components/kv-file-viewer/kv-file-viewer.module.d.ts +0 -8
- package/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.component.d.ts +0 -24
- package/lib/components/kv-file-viewer-novo/kv-file-viewer-novo.module.d.ts +0 -9
- package/lib/components/kv-filter-card/kv-filter-card.component.d.ts +0 -13
- package/lib/components/kv-filter-card/kv-filter-card.module.d.ts +0 -10
- package/lib/components/kv-filter-cards/kv-filter-cards.component.d.ts +0 -32
- package/lib/components/kv-filter-cards/kv-filter-cards.module.d.ts +0 -9
- package/lib/components/kv-filter-cards/kv-filter-cards.pipe.d.ts +0 -7
- package/lib/components/kv-filter-fieldset/kv-filter-fieldset.component.d.ts +0 -10
- package/lib/components/kv-filter-fieldset/kv-filter-fieldset.module.d.ts +0 -9
- package/lib/components/kv-g-icon/kv-g-icon.component.d.ts +0 -5
- package/lib/components/kv-g-icon/kv-g-icon.module.d.ts +0 -9
- package/lib/components/kv-home-card/kv-home-card.component.d.ts +0 -24
- package/lib/components/kv-home-card/kv-home-card.module.d.ts +0 -11
- package/lib/components/kv-image-upload/kv-image-upload.component.d.ts +0 -34
- package/lib/components/kv-image-upload/kv-image-upload.module.d.ts +0 -8
- package/lib/components/kv-inputs/kv-check/kv-check.component.d.ts +0 -12
- package/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.d.ts +0 -33
- package/lib/components/kv-inputs/kv-editor/components/kv-instrucoes-report/kv-instrucoes-report.component.d.ts +0 -8
- package/lib/components/kv-inputs/kv-editor/components/kv-report-modal/kv-report-modal.component.d.ts +0 -14
- package/lib/components/kv-inputs/kv-editor/config/kv-editor.config.d.ts +0 -55
- package/lib/components/kv-inputs/kv-editor/kv-editor.component.d.ts +0 -69
- package/lib/components/kv-inputs/kv-editor/services/kv-editor-mention.service.d.ts +0 -41
- package/lib/components/kv-inputs/kv-editor/services/kv-editor-pdf.service.d.ts +0 -41
- package/lib/components/kv-inputs/kv-editor/services/kv-editor-quill.service.d.ts +0 -28
- package/lib/components/kv-inputs/kv-editor/services/kv-editor-relatorio.service.d.ts +0 -45
- package/lib/components/kv-inputs/kv-editor/types/kv-editor.types.d.ts +0 -32
- package/lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component.d.ts +0 -34
- package/lib/components/kv-inputs/kv-input-mask/kv-input-mask.component.d.ts +0 -12
- package/lib/components/kv-inputs/kv-input-number/kv-input-number.component.d.ts +0 -19
- package/lib/components/kv-inputs/kv-input-number-addon/kv-input-number-addon.component.d.ts +0 -21
- package/lib/components/kv-inputs/kv-input-password/kv-input-password.component.d.ts +0 -13
- package/lib/components/kv-inputs/kv-input-text/kv-input-text.component.d.ts +0 -11
- package/lib/components/kv-inputs/kv-input-text-addon/kv-input-text-addon.component.d.ts +0 -13
- package/lib/components/kv-inputs/kv-input-text-checkbox/kv-input-text-checkbox.component.d.ts +0 -18
- package/lib/components/kv-inputs/kv-input-textarea/kv-input-textarea.component.d.ts +0 -16
- package/lib/components/kv-inputs/kv-input-time/kv-input-time.component.d.ts +0 -10
- package/lib/components/kv-inputs/kv-inputs.module.d.ts +0 -38
- package/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.d.ts +0 -20
- package/lib/components/kv-inputs/kv-radio-group/kv-radio-group.component.d.ts +0 -20
- package/lib/components/kv-inputs/kv-select-button/kv-select-button.component.d.ts +0 -19
- package/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.d.ts +0 -26
- package/lib/components/kv-inputs/kv-switch/kv-switch.component.d.ts +0 -16
- package/lib/components/kv-inputs/kv-tree-multi-select/kv-tree-multi-select.component.d.ts +0 -25
- package/lib/components/kv-label/kv-label.component.d.ts +0 -7
- package/lib/components/kv-label/kv-label.module.d.ts +0 -8
- package/lib/components/kv-layout/dropdown-master/dropdown-master.component.d.ts +0 -12
- package/lib/components/kv-layout/kv-layout.module.d.ts +0 -18
- package/lib/components/kv-layout/layout/kv-layout.component.d.ts +0 -156
- package/lib/components/kv-layout/top-icons/top-icons.component.d.ts +0 -16
- package/lib/components/kv-loader/kv-loader.component.d.ts +0 -7
- package/lib/components/kv-loader/kv-loader.module.d.ts +0 -9
- package/lib/components/kv-loader/kv-loader.service.d.ts +0 -10
- package/lib/components/kv-login/kv-login.component.d.ts +0 -32
- package/lib/components/kv-login/kv-login.module.d.ts +0 -13
- package/lib/components/kv-modal/kv-modal.component.d.ts +0 -27
- package/lib/components/kv-modal/kv-modal.module.d.ts +0 -10
- package/lib/components/kv-orgchart/kv-orgchart.component.d.ts +0 -45
- package/lib/components/kv-orgchart/kv-orgchart.module.d.ts +0 -17
- package/lib/components/kv-page-form/kv-page-form.component.d.ts +0 -98
- package/lib/components/kv-page-form/kv-page-form.module.d.ts +0 -12
- package/lib/components/kv-page-stepper/kv-page-stepper.component.d.ts +0 -84
- package/lib/components/kv-page-stepper/kv-page-stepper.module.d.ts +0 -14
- package/lib/components/kv-pick-list/kv-pick-list.component.d.ts +0 -70
- package/lib/components/kv-pick-list/kv-pick-list.module.d.ts +0 -11
- package/lib/components/kv-progress-bar/kv-progress-bar.component.d.ts +0 -67
- package/lib/components/kv-progress-bar/kv-progress-bar.module.d.ts +0 -9
- package/lib/components/kv-progress-bar-alternative/kv-progress-bar-alternative.component.d.ts +0 -71
- package/lib/components/kv-progress-bar-alternative/kv-progress-bar-alternative.module.d.ts +0 -9
- package/lib/components/kv-report/kv-report.component.d.ts +0 -18
- package/lib/components/kv-report/kv-report.module.d.ts +0 -8
- package/lib/components/kv-stepper/kv-stepper.component.d.ts +0 -32
- package/lib/components/kv-stepper/kv-stepper.module.d.ts +0 -13
- package/lib/components/kv-steps/kv-steps.component.d.ts +0 -21
- package/lib/components/kv-table/kv-table.component.d.ts +0 -154
- package/lib/components/kv-table/kv-table.module.d.ts +0 -12
- package/lib/components/kv-table-edit/kv-table-edit.component.d.ts +0 -66
- package/lib/components/kv-table-edit/kv-table-edit.module.d.ts +0 -15
- package/lib/components/kv-table-expandable/kv-table-expandable.component.d.ts +0 -119
- package/lib/components/kv-table-expandable/kv-table-expandable.module.d.ts +0 -13
- package/lib/components/kv-table-viewer/components/actions-lote-field/actions-lote-field.component.d.ts +0 -8
- package/lib/components/kv-table-viewer/components/actions-row-menu/actions-row-menu.component.d.ts +0 -7
- package/lib/components/kv-table-viewer/kv-table-viewer.component.d.ts +0 -72
- package/lib/components/kv-tag/kv-tag.component.d.ts +0 -7
- package/lib/components/kv-tag/kv-tag.module.d.ts +0 -8
- package/lib/components/kv-tags/kv-tags.component.d.ts +0 -31
- package/lib/components/kv-tags/kv-tags.module.d.ts +0 -8
- package/lib/components/kv-timeline/kv-timeline.component.d.ts +0 -18
- package/lib/components/kv-tree-table/kv-tree-table.component.d.ts +0 -86
- package/lib/components/kv-tree-table/kv-tree-table.module.d.ts +0 -11
- package/lib/components/kv-tree-view/kv-tree-view.component.d.ts +0 -21
- package/lib/components/kv-tree-view/kv-tree-view.module.d.ts +0 -9
- package/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.d.ts +0 -14
- package/lib/components/kv-workspace/kv-workspace.module.d.ts +0 -19
- package/lib/components/kv-workspace/logo/kv-workspace-logo.component.d.ts +0 -11
- package/lib/components/kv-workspace/master/kv-workspace-master.component.d.ts +0 -25
- package/lib/components/kv-workspace/workspace/kv-workspace.component.d.ts +0 -37
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
import { Injectable, inject, signal } from '@angular/core';
|
|
2
|
-
import { DialogService } from 'primeng/dynamicdialog';
|
|
3
|
-
import { PdfService } from '../../../../api/services/pdf.service';
|
|
4
|
-
import { KvReportModalComponent } from '../components/kv-report-modal/kv-report-modal.component';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class KvEditorPdfService {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.pdfService = inject(PdfService);
|
|
9
|
-
this.dialogService = inject(DialogService);
|
|
10
|
-
this.isLoadingPdf = signal(false);
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Obtém o estado de carregamento do PDF
|
|
14
|
-
*/
|
|
15
|
-
getIsLoadingPdf() {
|
|
16
|
-
return this.isLoadingPdf();
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Define o estado de carregamento do PDF
|
|
20
|
-
*/
|
|
21
|
-
setIsLoadingPdf(loading) {
|
|
22
|
-
this.isLoadingPdf.set(loading);
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Gera e abre o modal de relatório
|
|
26
|
-
*/
|
|
27
|
-
async openRelatorio(htmlContent, relatorio, tipoVisualizacao) {
|
|
28
|
-
if (this.isLoadingPdf())
|
|
29
|
-
return;
|
|
30
|
-
this.setIsLoadingPdf(true);
|
|
31
|
-
try {
|
|
32
|
-
await new Promise(resolve => setTimeout(resolve, 2000));
|
|
33
|
-
let htmlComValoresReais = htmlContent;
|
|
34
|
-
if (relatorio) {
|
|
35
|
-
htmlComValoresReais = this.processarHtmlParaPdf(htmlContent, relatorio, tipoVisualizacao);
|
|
36
|
-
}
|
|
37
|
-
const htmlFinalParaPdf = this.adicionarEstilosParaPdf(htmlComValoresReais);
|
|
38
|
-
const pdfBlob = await this.gerarPdfBlob(htmlFinalParaPdf);
|
|
39
|
-
this.abrirModalRelatorio(pdfBlob);
|
|
40
|
-
}
|
|
41
|
-
catch (error) {
|
|
42
|
-
console.error('Falha ao gerar o Blob do PDF:', error);
|
|
43
|
-
alert('Ocorreu um erro ao gerar o relatório.');
|
|
44
|
-
}
|
|
45
|
-
finally {
|
|
46
|
-
this.setIsLoadingPdf(false);
|
|
47
|
-
setTimeout(() => window.dispatchEvent(new Event('resize')), 100);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Processa o HTML substituindo variáveis e limpando formatação
|
|
52
|
-
*/
|
|
53
|
-
processarHtmlParaPdf(htmlContent, relatorio, tipoVisualizacao) {
|
|
54
|
-
let htmlProcessado = htmlContent;
|
|
55
|
-
// Substitui valores das variáveis
|
|
56
|
-
relatorio.variaveis.forEach(variavel => {
|
|
57
|
-
if (typeof variavel.descricao !== 'string' || variavel.descricao.trim() === '') {
|
|
58
|
-
return;
|
|
59
|
-
}
|
|
60
|
-
const specialRegex = this.createInterleavedRegex(variavel.descricao);
|
|
61
|
-
htmlProcessado = htmlProcessado.replace(specialRegex, variavel.value);
|
|
62
|
-
});
|
|
63
|
-
// Remove propriedades de estilo padrão
|
|
64
|
-
htmlProcessado = htmlProcessado.replace(/background-color:\s*rgb\(\s*230,\s*247,\s*255\s*\);?/gi, '');
|
|
65
|
-
htmlProcessado = htmlProcessado.replace(/color:\s*rgb\(\s*0,\s*102,\s*204\s*\);?/gi, '');
|
|
66
|
-
htmlProcessado = htmlProcessado.replace(/;(\s*;)+/g, ';');
|
|
67
|
-
htmlProcessado = htmlProcessado.replace(/\sstyle="[\s;]*"/gi, '');
|
|
68
|
-
// Remove parágrafos vazios e quebras de linha duplas
|
|
69
|
-
htmlProcessado = htmlProcessado.replace(/<p><br><\/p>/g, '');
|
|
70
|
-
htmlProcessado = htmlProcessado.replace(/(<br>\s*){2,}/g, '<br>');
|
|
71
|
-
return htmlProcessado;
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Adiciona estilos CSS específicos para PDF
|
|
75
|
-
*/
|
|
76
|
-
adicionarEstilosParaPdf(htmlContent) {
|
|
77
|
-
const estilosParaPdf = `
|
|
78
|
-
<style>
|
|
79
|
-
#temp-pdf-render-area {
|
|
80
|
-
font-family: 'Sans Serif', Arial, sans-serif;
|
|
81
|
-
font-size: 9pt;
|
|
82
|
-
line-height: 1.2;
|
|
83
|
-
text-align: justify;
|
|
84
|
-
}
|
|
85
|
-
#temp-pdf-render-area p {
|
|
86
|
-
min-height: 1.2em;
|
|
87
|
-
margin: 0;
|
|
88
|
-
padding: 0;
|
|
89
|
-
}
|
|
90
|
-
#temp-pdf-render-area h1, #temp-pdf-render-area h2, #temp-pdf-render-area h3,
|
|
91
|
-
#temp-pdf-render-area h4, #temp-pdf-render-area h5, #temp-pdf-render-area h6 {
|
|
92
|
-
page-break-after: avoid;
|
|
93
|
-
}
|
|
94
|
-
#temp-pdf-render-area [style*="text-align: center"] {
|
|
95
|
-
text-align: center !important;
|
|
96
|
-
}
|
|
97
|
-
#temp-pdf-render-area p, #temp-pdf-render-area h1, #temp-pdf-render-area h2,
|
|
98
|
-
#temp-pdf-render-area h3, #temp-pdf-render-area h4, #temp-pdf-render-area h5,
|
|
99
|
-
#temp-pdf-render-area h6, #temp-pdf-render-area blockquote, #temp-pdf-render-area ul,
|
|
100
|
-
#temp-pdf-render-area ol, #temp-pdf-render-area li, #temp-pdf-render-area table,
|
|
101
|
-
#temp-pdf-render-area tr, #temp-pdf-render-area img {
|
|
102
|
-
page-break-inside: avoid;
|
|
103
|
-
}
|
|
104
|
-
</style>
|
|
105
|
-
`;
|
|
106
|
-
return estilosParaPdf + htmlContent;
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Gera o blob do PDF
|
|
110
|
-
*/
|
|
111
|
-
async gerarPdfBlob(htmlContent) {
|
|
112
|
-
const renderContainer = document.createElement('div');
|
|
113
|
-
renderContainer.id = 'temp-pdf-render-area';
|
|
114
|
-
renderContainer.style.position = 'absolute';
|
|
115
|
-
renderContainer.style.left = '-9999px';
|
|
116
|
-
renderContainer.style.top = '0';
|
|
117
|
-
renderContainer.style.backgroundColor = 'white';
|
|
118
|
-
renderContainer.style.padding = '12mm';
|
|
119
|
-
renderContainer.style.width = '210mm';
|
|
120
|
-
renderContainer.style.fontSize = '12px';
|
|
121
|
-
renderContainer.innerHTML = htmlContent;
|
|
122
|
-
document.body.appendChild(renderContainer);
|
|
123
|
-
try {
|
|
124
|
-
await new Promise(resolve => setTimeout(resolve, 100));
|
|
125
|
-
return await this.pdfService.gerarPdfBlobPorElementoId('temp-pdf-render-area');
|
|
126
|
-
}
|
|
127
|
-
finally {
|
|
128
|
-
if (document.body.contains(renderContainer)) {
|
|
129
|
-
document.body.removeChild(renderContainer);
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Abre o modal com o PDF gerado
|
|
135
|
-
*/
|
|
136
|
-
abrirModalRelatorio(pdfBlob) {
|
|
137
|
-
this.dialogService.open(KvReportModalComponent, {
|
|
138
|
-
header: 'Gerar Relatório',
|
|
139
|
-
width: '60%',
|
|
140
|
-
height: '90%',
|
|
141
|
-
modal: true,
|
|
142
|
-
closable: true,
|
|
143
|
-
data: {
|
|
144
|
-
pdfBlob: pdfBlob
|
|
145
|
-
}
|
|
146
|
-
});
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* Cria uma regex especial para busca em texto com HTML
|
|
150
|
-
*/
|
|
151
|
-
createInterleavedRegex(text) {
|
|
152
|
-
const specialChars = /[-\/\\^$*+?.()|[\]{}]/g;
|
|
153
|
-
const pattern = text
|
|
154
|
-
.split('')
|
|
155
|
-
.map(char => char.replace(specialChars, '\\$&'))
|
|
156
|
-
.join('(<[^>]*>)*');
|
|
157
|
-
return new RegExp(pattern, 'gi');
|
|
158
|
-
}
|
|
159
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvEditorPdfService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
160
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvEditorPdfService, providedIn: 'root' }); }
|
|
161
|
-
}
|
|
162
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvEditorPdfService, decorators: [{
|
|
163
|
-
type: Injectable,
|
|
164
|
-
args: [{
|
|
165
|
-
providedIn: 'root'
|
|
166
|
-
}]
|
|
167
|
-
}] });
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtZWRpdG9yLXBkZi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWVkaXRvci9zZXJ2aWNlcy9rdi1lZGl0b3ItcGRmLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFbEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seURBQXlELENBQUM7O0FBS2pHLE1BQU0sT0FBTyxrQkFBa0I7SUFIL0I7UUFLVSxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3RDLGlCQUFZLEdBQUcsTUFBTSxDQUFVLEtBQUssQ0FBQyxDQUFDO0tBZ0wvQztJQTlLQzs7T0FFRztJQUNILGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxlQUFlLENBQUMsT0FBZ0I7UUFDOUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLGFBQWEsQ0FDakIsV0FBbUIsRUFDbkIsU0FBbUMsRUFDbkMsZ0JBQXVDO1FBRXZDLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUFFLE9BQU87UUFFaEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUzQixJQUFJLENB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LEtBQUs7WUFDWixNQUFNLEVBQUUsS0FBSztZQUNiLEtBQUssRUFBRSxJQUFJO1lBQ1gsUUFBUSxFQUFFLElBQUk7WUFDZCxJQUFJLEVBQUU7Z0JBQ0osT0FBTyxFQUFFLE9BQU87YUFDakI7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxzQkFBc0IsQ0FBQyxJQUFZO1FBQ3pDLE1BQU0sWUFBWSxHQUFHLHdCQUF3QixDQUFDO1FBQzlDLE1BQU0sT0FBTyxHQUFHLElBQUk7YUFDakIsS0FBSyxDQUFDLEVBQUUsQ0FBQzthQUNULEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDO2FBQy9DLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUV0QixPQUFPLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuQyxDQUFDOzhHQW5MVSxrQkFBa0I7a0hBQWxCLGtCQUFrQixjQUZqQixNQUFNOzsyRkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XHJcbmltcG9ydCB7IFBkZlNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9hcGkvc2VydmljZXMvcGRmLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBLdkVkaXRvclJlbGF0b3JpbywgS3ZFZGl0b3JWYXJpYXZlbCB9IGZyb20gJy4uL3R5cGVzL2t2LWVkaXRvci50eXBlcyc7XHJcbmltcG9ydCB7IEt2UmVwb3J0TW9kYWxDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2t2LXJlcG9ydC1tb2RhbC9rdi1yZXBvcnQtbW9kYWwuY29tcG9uZW50JztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEt2RWRpdG9yUGRmU2VydmljZSB7XHJcbiAgXHJcbiAgcHJpdmF0ZSBwZGZTZXJ2aWNlID0gaW5qZWN0KFBkZlNlcnZpY2UpO1xyXG4gIHByaXZhdGUgZGlhbG9nU2VydmljZSA9IGluamVjdChEaWFsb2dTZXJ2aWNlKTtcclxuICBwcml2YXRlIGlzTG9hZGluZ1BkZiA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9idMOpbSBvIGVzdGFkbyBkZSBjYXJyZWdhbWVudG8gZG8gUERGXHJcbiAgICovXHJcbiAgZ2V0SXNMb2FkaW5nUGRmKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNMb2FkaW5nUGRmKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmUgbyBlc3RhZG8gZGUgY2FycmVnYW1lbnRvIGRvIFBERlxyXG4gICAqL1xyXG4gIHNldElzTG9hZGluZ1BkZihsb2FkaW5nOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzTG9hZGluZ1BkZi5zZXQobG9hZGluZyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXJhIGUgYWJyZSBvIG1vZGFsIGRlIHJlbGF0w7NyaW9cclxuICAgKi9cclxuICBhc3luYyBvcGVuUmVsYXRvcmlvKFxyXG4gICAgaHRtbENvbnRlbnQ6IHN0cmluZywgXHJcbiAgICByZWxhdG9yaW86IEt2RWRpdG9yUmVsYXRvcmlvIHwgbnVsbCwgXHJcbiAgICB0aXBvVmlzdWFsaXphY2FvOiAndmFsb3InIHwgJ2Rlc2NyaWNhbydcclxuICApOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICh0aGlzLmlzTG9hZGluZ1BkZigpKSByZXR1cm47XHJcbiAgICBcclxuICAgIHRoaXMuc2V0SXNMb2FkaW5nUGRmKHRydWUpO1xyXG5cclxuICAgIHRyeSB7XHJcbiAgICAgIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4gc2V0VGltZW91dChyZXNvbHZlLCAyMDAwKSk7XHJcbiAgICAgIFxyXG4gICAgICBsZXQgaHRtbENvbVZhbG9yZXNSZWFpcyA9IGh0bWxDb250ZW50O1xyXG5cclxuICAgICAgaWYgKHJlbGF0b3Jpbykge1xyXG4gICAgICAgIGh0bWxDb21WYWxvcmVzUmVhaXMgPSB0aGlzLnByb2Nlc3Nhckh0bWxQYXJhUGRmKGh0bWxDb250ZW50LCByZWxhdG9yaW8sIHRpcG9WaXN1YWxpemFjYW8pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zdCBodG1sRmluYWxQYXJhUGRmID0gdGhpcy5hZGljaW9uYXJFc3RpbG9zUGFyYVBkZihodG1sQ29tVmFsb3Jlc1JlYWlzKTtcclxuICAgICAgY29uc3QgcGRmQmxvYiA9IGF3YWl0IHRoaXMuZ2VyYXJQZGZCbG9iKGh0bWxGaW5hbFBhcmFQZGYpO1xyXG4gICAgICBcclxuICAgICAgdGhpcy5hYnJpck1vZGFsUmVsYXRvcmlvKHBkZkJsb2IpO1xyXG4gICAgICBcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhbGhhIGFvIGdlcmFyIG8gQmxvYiBkbyBQREY6JywgZXJyb3IpO1xyXG4gICAgICBhbGVydCgnT2NvcnJldSB1bSBlcnJvIGFvIGdlcmFyIG8gcmVsYXTDs3Jpby4nKTtcclxuICAgIH0gZmluYWxseSB7XHJcbiAgICAgIHRoaXMuc2V0SXNMb2FkaW5nUGRmKGZhbHNlKTtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ3Jlc2l6ZScpKSwgMTAwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFByb2Nlc3NhIG8gSFRNTCBzdWJzdGl0dWluZG8gdmFyacOhdmVpcyBlIGxpbXBhbmRvIGZvcm1hdGHDp8Ojb1xyXG4gICAqL1xyXG4gIHByaXZhdGUgcHJvY2Vzc2FySHRtbFBhcmFQZGYoXHJcbiAgICBodG1sQ29udGVudDogc3RyaW5nLCBcclxuICAgIHJlbGF0b3JpbzogS3ZFZGl0b3JSZWxhdG9yaW8sIFxyXG4gICAgdGlwb1Zpc3VhbGl6YWNhbzogJ3ZhbG9yJyB8ICdkZXNjcmljYW8nXHJcbiAgKTogc3RyaW5nIHtcclxuICAgIGxldCBodG1sUHJvY2Vzc2FkbyA9IGh0bWxDb250ZW50O1xyXG5cclxuICAgIC8vIFN1YnN0aXR1aSB2YWxvcmVzIGRhcyB2YXJpw6F2ZWlzXHJcbiAgICByZWxhdG9yaW8udmFyaWF2ZWlzLmZvckVhY2godmFyaWF2ZWwgPT4ge1xyXG4gICAgICBpZiAodHlwZW9mIHZhcmlhdmVsLmRlc2NyaWNhbyAhPT0gJ3N0cmluZycgfHwgdmFyaWF2ZWwuZGVzY3JpY2FvLnRyaW0oKSA9PT0gJycpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIGNvbnN0IHNwZWNpYWxSZWdleCA9IHRoaXMuY3JlYXRlSW50ZXJsZWF2ZWRSZWdleCh2YXJpYXZlbC5kZXNjcmljYW8pO1xyXG4gICAgICBodG1sUHJvY2Vzc2FkbyA9IGh0bWxQcm9jZXNzYWRvLnJlcGxhY2Uoc3BlY2lhbFJlZ2V4LCB2YXJpYXZlbC52YWx1ZSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyBSZW1vdmUgcHJvcHJpZWRhZGVzIGRlIGVzdGlsbyBwYWRyw6NvXHJcbiAgICBodG1sUHJvY2Vzc2FkbyA9IGh0bWxQcm9jZXNzYWRvLnJlcGxhY2UoL2JhY2tncm91bmQtY29sb3I6XFxzKnJnYlxcKFxccyoyMzAsXFxzKjI0NyxcXHMqMjU1XFxzKlxcKTs/L2dpLCAnJyk7XHJcbiAgICBodG1sUHJvY2Vzc2FkbyA9IGh0bWxQcm9jZXNzYWRvLnJlcGxhY2UoL2NvbG9yOlxccypyZ2JcXChcXHMqMCxcXHMqMTAyLFxccyoyMDRcXHMqXFwpOz8vZ2ksICcnKTtcclxuICAgIGh0bWxQcm9jZXNzYWRvID0gaHRtbFByb2Nlc3NhZG8ucmVwbGFjZSgvOyhcXHMqOykrL2csICc7Jyk7XHJcbiAgICBodG1sUHJvY2Vzc2FkbyA9IGh0bWxQcm9jZXNzYWRvLnJlcGxhY2UoL1xcc3N0eWxlPVwiW1xccztdKlwiL2dpLCAnJyk7XHJcblxyXG4gICAgLy8gUmVtb3ZlIHBhcsOhZ3JhZm9zIHZhemlvcyBlIHF1ZWJyYXMgZGUgbGluaGEgZHVwbGFzXHJcbiAgICBodG1sUHJvY2Vzc2FkbyA9IGh0bWxQcm9jZXNzYWRvLnJlcGxhY2UoLzxwPjxicj48XFwvcD4vZywgJycpO1xyXG4gICAgaHRtbFByb2Nlc3NhZG8gPSBodG1sUHJvY2Vzc2Fkby5yZXBsYWNlKC8oPGJyPlxccyopezIsfS9nLCAnPGJyPicpO1xyXG5cclxuICAgIHJldHVybiBodG1sUHJvY2Vzc2FkbztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFkaWNpb25hIGVzdGlsb3MgQ1NTIGVzcGVjw61maWNvcyBwYXJhIFBERlxyXG4gICAqL1xyXG4gIHByaXZhdGUgYWRpY2lvbmFyRXN0aWxvc1BhcmFQZGYoaHRtbENvbnRlbnQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBlc3RpbG9zUGFyYVBkZiA9IGBcclxuICAgICAgPHN0eWxlPlxyXG4gICAgICAgICN0ZW1wLXBkZi1yZW5kZXItYXJlYSB7IFxyXG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdTYW5zIFNlcmlmJywgQXJpYWwsIHNhbnMtc2VyaWY7IFxyXG4gICAgICAgICAgZm9udC1zaXplOiA5cHQ7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTsgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICN0ZW1wLXBkZi1yZW5kZXItYXJlYSBwIHtcclxuICAgICAgICAgIG1pbi1oZWlnaHQ6IDEuMmVtO1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgI3RlbXAtcGRmLXJlbmRlci1hcmVhIGgxLCAjdGVtcC1wZGYtcmVuZGVyLWFyZWEgaDIsICN0ZW1wLXBkZi1yZW5kZXItYXJlYSBoMywgXHJcbiAgICAgICAgI3RlbXAtcGRmLXJlbmRlci1hcmVhIGg0LCAjdGVtcC1wZGYtcmVuZGVyLWFyZWEgaDUsICN0ZW1wLXBkZi1yZW5kZXItYXJlYSBoNiB7IFxyXG4gICAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IFxyXG4gICAgICAgIH1cclxuICAgICAgICAjdGVtcC1wZGYtcmVuZGVyLWFyZWEgW3N0eWxlKj1cInRleHQtYWxpZ246IGNlbnRlclwiXSB7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgI3RlbXAtcGRmLXJlbmRlci1hcmVhIHAsICN0ZW1wLXBkZi1yZW5kZXItYXJlYSBoMSwgI3RlbXAtcGRmLXJlbmRlci1hcmVhIGgyLCBcclxuICAgICAgICAjdGVtcC1wZGYtcmVuZGVyLWFyZWEgaDMsICN0ZW1wLXBkZi1yZW5kZXItYXJlYSBoNCwgI3RlbXAtcGRmLXJlbmRlci1hcmVhIGg1LCBcclxuICAgICAgICAjdGVtcC1wZGYtcmVuZGVyLWFyZWEgaDYsICN0ZW1wLXBkZi1yZW5kZXItYXJlYSBibG9ja3F1b3RlLCAjdGVtcC1wZGYtcmVuZGVyLWFyZWEgdWwsIFxyXG4gICAgICAgICN0ZW1wLXBkZi1yZW5kZXItYXJlYSBvbCwgI3RlbXAtcGRmLXJlbmRlci1hcmVhIGxpLCAjdGVtcC1wZGYtcmVuZGVyLWFyZWEgdGFibGUsIFxyXG4gICAgICAgICN0ZW1wLXBkZi1yZW5kZXItYXJlYSB0ciwgI3RlbXAtcGRmLXJlbmRlci1hcmVhIGltZyB7IFxyXG4gICAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyBcclxuICAgICAgICB9XHJcbiAgICAgIDwvc3R5bGU+XHJcbiAgICBgO1xyXG4gICAgXHJcbiAgICByZXR1cm4gZXN0aWxvc1BhcmFQZGYgKyBodG1sQ29udGVudDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdlcmEgbyBibG9iIGRvIFBERlxyXG4gICAqL1xyXG4gIHByaXZhdGUgYXN5bmMgZ2VyYXJQZGZCbG9iKGh0bWxDb250ZW50OiBzdHJpbmcpOiBQcm9taXNlPEJsb2I+IHtcclxuICAgIGNvbnN0IHJlbmRlckNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xyXG4gICAgcmVuZGVyQ29udGFpbmVyLmlkID0gJ3RlbXAtcGRmLXJlbmRlci1hcmVhJztcclxuICAgIHJlbmRlckNvbnRhaW5lci5zdHlsZS5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7XHJcbiAgICByZW5kZXJDb250YWluZXIuc3R5bGUubGVmdCA9ICctOTk5OXB4JztcclxuICAgIHJlbmRlckNvbnRhaW5lci5zdHlsZS50b3AgPSAnMCc7XHJcbiAgICByZW5kZXJDb250YWluZXIuc3R5bGUuYmFja2dyb3VuZENvbG9yID0gJ3doaXRlJztcclxuICAgIHJlbmRlckNvbnRhaW5lci5zdHlsZS5wYWRkaW5nID0gJzEybW0nO1xyXG4gICAgcmVuZGVyQ29udGFpbmVyLnN0eWxlLndpZHRoID0gJzIxMG1tJztcclxuICAgIHJlbmRlckNvbnRhaW5lci5zdHlsZS5mb250U2l6ZSA9ICcxMnB4JztcclxuICAgIHJlbmRlckNvbnRhaW5lci5pbm5lckhUTUwgPSBodG1sQ29udGVudDtcclxuICAgIFxyXG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZW5kZXJDb250YWluZXIpO1xyXG5cclxuICAgIHRyeSB7XHJcbiAgICAgIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4gc2V0VGltZW91dChyZXNvbHZlLCAxMDApKTtcclxuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucGRmU2VydmljZS5nZXJhclBkZkJsb2JQb3JFbGVtZW50b0lkKCd0ZW1wLXBkZi1yZW5kZXItYXJlYScpO1xyXG4gICAgfSBmaW5hbGx5IHtcclxuICAgICAgaWYgKGRvY3VtZW50LmJvZHkuY29udGFpbnMocmVuZGVyQ29udGFpbmVyKSkge1xyXG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQocmVuZGVyQ29udGFpbmVyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWJyZSBvIG1vZGFsIGNvbSBvIFBERiBnZXJhZG9cclxuICAgKi9cclxuICBwcml2YXRlIGFicmlyTW9kYWxSZWxhdG9yaW8ocGRmQmxvYjogQmxvYik6IHZvaWQge1xyXG4gICAgdGhpcy5kaWFsb2dTZXJ2aWNlLm9wZW4oS3ZSZXBvcnRNb2RhbENvbXBvbmVudCwge1xyXG4gICAgICBoZWFkZXI6ICdHZXJhciBSZWxhdMOzcmlvJyxcclxuICAgICAgd2lkdGg6ICc2MCUnLFxyXG4gICAgICBoZWlnaHQ6ICc5MCUnLFxyXG4gICAgICBtb2RhbDogdHJ1ZSxcclxuICAgICAgY2xvc2FibGU6IHRydWUsXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICBwZGZCbG9iOiBwZGZCbG9iXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ3JpYSB1bWEgcmVnZXggZXNwZWNpYWwgcGFyYSBidXNjYSBlbSB0ZXh0byBjb20gSFRNTFxyXG4gICAqL1xyXG4gIHByaXZhdGUgY3JlYXRlSW50ZXJsZWF2ZWRSZWdleCh0ZXh0OiBzdHJpbmcpOiBSZWdFeHAge1xyXG4gICAgY29uc3Qgc3BlY2lhbENoYXJzID0gL1stXFwvXFxcXF4kKis/LigpfFtcXF17fV0vZztcclxuICAgIGNvbnN0IHBhdHRlcm4gPSB0ZXh0XHJcbiAgICAgIC5zcGxpdCgnJylcclxuICAgICAgLm1hcChjaGFyID0+IGNoYXIucmVwbGFjZShzcGVjaWFsQ2hhcnMsICdcXFxcJCYnKSlcclxuICAgICAgLmpvaW4oJyg8W14+XSo+KSonKTtcclxuXHJcbiAgICByZXR1cm4gbmV3IFJlZ0V4cChwYXR0ZXJuLCAnZ2knKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import Quill from 'quill';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class KvEditorQuillService {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.quillInstance = null;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Carrega o CSS do Quill dinamicamente
|
|
10
|
-
*/
|
|
11
|
-
loadCss() {
|
|
12
|
-
return new Promise((resolve, reject) => {
|
|
13
|
-
const existingLink = document.querySelector('link[href*="quill.snow.css"]');
|
|
14
|
-
if (existingLink) {
|
|
15
|
-
resolve();
|
|
16
|
-
return;
|
|
17
|
-
}
|
|
18
|
-
const cssElement = document.createElement('link');
|
|
19
|
-
cssElement.rel = 'stylesheet';
|
|
20
|
-
cssElement.href = 'https://cdn.jsdelivr.net/npm/quill@2.0.2/dist/quill.snow.css';
|
|
21
|
-
cssElement.onload = () => resolve();
|
|
22
|
-
cssElement.onerror = (err) => reject(err);
|
|
23
|
-
document.head.appendChild(cssElement);
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Registra os formatos personalizados do Quill
|
|
28
|
-
*/
|
|
29
|
-
registerCustomFormats() {
|
|
30
|
-
const ColorStyle = Quill.import('attributors/style/color');
|
|
31
|
-
const SizeStyle = Quill.import('attributors/style/size');
|
|
32
|
-
const Font = Quill.import('formats/font');
|
|
33
|
-
const Size = Quill.import('attributors/style/size');
|
|
34
|
-
const AlignStyle = Quill.import('attributors/style/align');
|
|
35
|
-
Size.whitelist = ['15px', '20px', '30px', '40px', '50px', '70px', '90px'];
|
|
36
|
-
Font.whitelist = ['monospace', 'roboto', 'arial', 'times-new-roman', 'serif', 'inter'];
|
|
37
|
-
Quill.register(ColorStyle, true);
|
|
38
|
-
Quill.register(SizeStyle, true);
|
|
39
|
-
Quill.register(Font, true);
|
|
40
|
-
Quill.register(Size, true);
|
|
41
|
-
Quill.register(AlignStyle, true);
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Cria uma instância do Quill com a configuração fornecida
|
|
45
|
-
*/
|
|
46
|
-
createQuillInstance(selector, config) {
|
|
47
|
-
this.registerCustomFormats();
|
|
48
|
-
this.quillInstance = new Quill(selector, {
|
|
49
|
-
theme: config.theme,
|
|
50
|
-
modules: config.modules,
|
|
51
|
-
placeholder: config.placeholder,
|
|
52
|
-
readOnly: config.readOnly,
|
|
53
|
-
debug: config.debug,
|
|
54
|
-
});
|
|
55
|
-
return this.quillInstance;
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Obtém a instância atual do Quill
|
|
59
|
-
*/
|
|
60
|
-
getQuillInstance() {
|
|
61
|
-
return this.quillInstance;
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Limpa a instância do Quill
|
|
65
|
-
*/
|
|
66
|
-
destroyQuillInstance() {
|
|
67
|
-
this.quillInstance = null;
|
|
68
|
-
}
|
|
69
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvEditorQuillService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
70
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvEditorQuillService, providedIn: 'root' }); }
|
|
71
|
-
}
|
|
72
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvEditorQuillService, decorators: [{
|
|
73
|
-
type: Injectable,
|
|
74
|
-
args: [{
|
|
75
|
-
providedIn: 'root'
|
|
76
|
-
}]
|
|
77
|
-
}] });
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtZWRpdG9yLXF1aWxsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtZWRpdG9yL3NlcnZpY2VzL2t2LWVkaXRvci1xdWlsbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDOztBQU0xQixNQUFNLE9BQU8sb0JBQW9CO0lBSGpDO1FBS1Usa0JBQWEsR0FBaUIsSUFBSSxDQUFDO0tBMEU1QztJQXhFQzs7T0FFRztJQUNILE9BQU87UUFDTCxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3JDLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsOEJBQThCLENBQUMsQ0FBQztZQUM1RSxJQUFJLFlBQVksRUFBRSxDQUFDO2dCQUNqQixPQUFPLEVBQUUsQ0FBQztnQkFDVixPQUFPO1lBQ1QsQ0FBQztZQUVELE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDbEQsVUFBVSxDQUFDLEdBQUcsR0FBRyxZQUFZLENBQUM7WUFDOUIsVUFBVSxDQUFDLElBQUksR0FBRyw4REFBOEQsQ0FBQztZQUVqRixVQUFVLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BDLFVBQVUsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUUxQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILHFCQUFxQjtRQUNuQixNQUFNLFVBQVUsR0FBUSxLQUFLLENBQUMsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDaEUsTUFBTSxTQUFTLEdBQVEsS0FBSyxDQUFDLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQzlELE1BQU0sSUFBSSxHQUFRLEtBQUssQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDL0MsTUFBTSxJQUFJLEdBQVEsS0FBSyxDQUFDLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQ3pELE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMseUJBQXlCLENBQVEsQ0FBQztRQUVsRSxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDMUUsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUV2RixLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqQyxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNoQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMzQixLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMzQixLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxtQkFBbUIsQ0FBQyxRQUFnQixFQUFFLE1BQTJCO1FBQy9ELElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBRTdCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ3ZDLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSztZQUNuQixPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU87WUFDdkIsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXO1lBQy9CLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtZQUN6QixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7U0FDcEIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRDs7T0FFRztJQUNILGdCQUFnQjtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxvQkFBb0I7UUFDbEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7SUFDNUIsQ0FBQzs4R0EzRVUsb0JBQW9CO2tIQUFwQixvQkFBb0IsY0FGbkIsTUFBTTs7MkZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IFF1aWxsIGZyb20gJ3F1aWxsJztcclxuaW1wb3J0IHsgS3ZFZGl0b3JRdWlsbENvbmZpZyB9IGZyb20gJy4uL3R5cGVzL2t2LWVkaXRvci50eXBlcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLdkVkaXRvclF1aWxsU2VydmljZSB7XHJcbiAgXHJcbiAgcHJpdmF0ZSBxdWlsbEluc3RhbmNlOiBRdWlsbCB8IG51bGwgPSBudWxsO1xyXG5cclxuICAvKipcclxuICAgKiBDYXJyZWdhIG8gQ1NTIGRvIFF1aWxsIGRpbmFtaWNhbWVudGVcclxuICAgKi9cclxuICBsb2FkQ3NzKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgY29uc3QgZXhpc3RpbmdMaW5rID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignbGlua1tocmVmKj1cInF1aWxsLnNub3cuY3NzXCJdJyk7XHJcbiAgICAgIGlmIChleGlzdGluZ0xpbmspIHtcclxuICAgICAgICByZXNvbHZlKCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zdCBjc3NFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbGluaycpO1xyXG4gICAgICBjc3NFbGVtZW50LnJlbCA9ICdzdHlsZXNoZWV0JztcclxuICAgICAgY3NzRWxlbWVudC5ocmVmID0gJ2h0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vcXVpbGxAMi4wLjIvZGlzdC9xdWlsbC5zbm93LmNzcyc7XHJcblxyXG4gICAgICBjc3NFbGVtZW50Lm9ubG9hZCA9ICgpID0+IHJlc29sdmUoKTtcclxuICAgICAgY3NzRWxlbWVudC5vbmVycm9yID0gKGVycikgPT4gcmVqZWN0KGVycik7XHJcblxyXG4gICAgICBkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGNzc0VsZW1lbnQpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZWdpc3RyYSBvcyBmb3JtYXRvcyBwZXJzb25hbGl6YWRvcyBkbyBRdWlsbFxyXG4gICAqL1xyXG4gIHJlZ2lzdGVyQ3VzdG9tRm9ybWF0cygpOiB2b2lkIHtcclxuICAgIGNvbnN0IENvbG9yU3R5bGU6IGFueSA9IFF1aWxsLmltcG9ydCgnYXR0cmlidXRvcnMvc3R5bGUvY29sb3InKTtcclxuICAgIGNvbnN0IFNpemVTdHlsZTogYW55ID0gUXVpbGwuaW1wb3J0KCdhdHRyaWJ1dG9ycy9zdHlsZS9zaXplJyk7XHJcbiAgICBjb25zdCBGb250OiBhbnkgPSBRdWlsbC5pbXBvcnQoJ2Zvcm1hdHMvZm9udCcpO1xyXG4gICAgY29uc3QgU2l6ZTogYW55ID0gUXVpbGwuaW1wb3J0KCdhdHRyaWJ1dG9ycy9zdHlsZS9zaXplJyk7XHJcbiAgICBjb25zdCBBbGlnblN0eWxlID0gUXVpbGwuaW1wb3J0KCdhdHRyaWJ1dG9ycy9zdHlsZS9hbGlnbicpIGFzIGFueTtcclxuXHJcbiAgICBTaXplLndoaXRlbGlzdCA9IFsnMTVweCcsICcyMHB4JywgJzMwcHgnLCAnNDBweCcsICc1MHB4JywgJzcwcHgnLCAnOTBweCddO1xyXG4gICAgRm9udC53aGl0ZWxpc3QgPSBbJ21vbm9zcGFjZScsICdyb2JvdG8nLCAnYXJpYWwnLCAndGltZXMtbmV3LXJvbWFuJywgJ3NlcmlmJywgJ2ludGVyJ107XHJcblxyXG4gICAgUXVpbGwucmVnaXN0ZXIoQ29sb3JTdHlsZSwgdHJ1ZSk7XHJcbiAgICBRdWlsbC5yZWdpc3RlcihTaXplU3R5bGUsIHRydWUpO1xyXG4gICAgUXVpbGwucmVnaXN0ZXIoRm9udCwgdHJ1ZSk7XHJcbiAgICBRdWlsbC5yZWdpc3RlcihTaXplLCB0cnVlKTtcclxuICAgIFF1aWxsLnJlZ2lzdGVyKEFsaWduU3R5bGUsIHRydWUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ3JpYSB1bWEgaW5zdMOibmNpYSBkbyBRdWlsbCBjb20gYSBjb25maWd1cmHDp8OjbyBmb3JuZWNpZGFcclxuICAgKi9cclxuICBjcmVhdGVRdWlsbEluc3RhbmNlKHNlbGVjdG9yOiBzdHJpbmcsIGNvbmZpZzogS3ZFZGl0b3JRdWlsbENvbmZpZyk6IFF1aWxsIHtcclxuICAgIHRoaXMucmVnaXN0ZXJDdXN0b21Gb3JtYXRzKCk7XHJcbiAgICBcclxuICAgIHRoaXMucXVpbGxJbnN0YW5jZSA9IG5ldyBRdWlsbChzZWxlY3Rvciwge1xyXG4gICAgICB0aGVtZTogY29uZmlnLnRoZW1lLFxyXG4gICAgICBtb2R1bGVzOiBjb25maWcubW9kdWxlcyxcclxuICAgICAgcGxhY2Vob2xkZXI6IGNvbmZpZy5wbGFjZWhvbGRlcixcclxuICAgICAgcmVhZE9ubHk6IGNvbmZpZy5yZWFkT25seSxcclxuICAgICAgZGVidWc6IGNvbmZpZy5kZWJ1ZyxcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiB0aGlzLnF1aWxsSW5zdGFuY2U7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPYnTDqW0gYSBpbnN0w6JuY2lhIGF0dWFsIGRvIFF1aWxsXHJcbiAgICovXHJcbiAgZ2V0UXVpbGxJbnN0YW5jZSgpOiBRdWlsbCB8IG51bGwge1xyXG4gICAgcmV0dXJuIHRoaXMucXVpbGxJbnN0YW5jZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIExpbXBhIGEgaW5zdMOibmNpYSBkbyBRdWlsbFxyXG4gICAqL1xyXG4gIGRlc3Ryb3lRdWlsbEluc3RhbmNlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5xdWlsbEluc3RhbmNlID0gbnVsbDtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import { Injectable, signal } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class KvEditorRelatorioService {
|
|
4
|
-
constructor() {
|
|
5
|
-
this.relatorios = signal([]);
|
|
6
|
-
this.relatorioSelected = signal(null);
|
|
7
|
-
this.idRelatorioSelected = signal(0);
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Define a lista de relatórios disponíveis
|
|
11
|
-
*/
|
|
12
|
-
setRelatorios(relatorios) {
|
|
13
|
-
this.relatorios.set(relatorios);
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Obtém a lista de relatórios
|
|
17
|
-
*/
|
|
18
|
-
getRelatorios() {
|
|
19
|
-
return this.relatorios();
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Seleciona um relatório pelo ID
|
|
23
|
-
*/
|
|
24
|
-
setRelatorioPorId(id) {
|
|
25
|
-
this.idRelatorioSelected.set(id);
|
|
26
|
-
const relatorio = this.relatorios().find(r => r.id === id);
|
|
27
|
-
if (relatorio) {
|
|
28
|
-
this.relatorioSelected.set(relatorio);
|
|
29
|
-
return relatorio;
|
|
30
|
-
}
|
|
31
|
-
return null;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Define o relatório selecionado
|
|
35
|
-
*/
|
|
36
|
-
setRelatorio(relatorio) {
|
|
37
|
-
this.idRelatorioSelected.set(relatorio.id);
|
|
38
|
-
this.relatorioSelected.set(relatorio);
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Obtém o relatório selecionado
|
|
42
|
-
*/
|
|
43
|
-
getRelatorioSelected() {
|
|
44
|
-
return this.relatorioSelected();
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Obtém o ID do relatório selecionado
|
|
48
|
-
*/
|
|
49
|
-
getIdRelatorioSelected() {
|
|
50
|
-
return this.idRelatorioSelected();
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Renderiza o template do contrato com as variáveis
|
|
54
|
-
*/
|
|
55
|
-
renderContrato(texto, variaveis) {
|
|
56
|
-
return texto.replace(/\{(\d+)\}/g, (_, id) => {
|
|
57
|
-
const v = variaveis.find(v => v.id === parseInt(id));
|
|
58
|
-
if (!v)
|
|
59
|
-
return `{${id}}`;
|
|
60
|
-
return `<span class="variavel-inserida"
|
|
61
|
-
style="background-color: #e6f7ff; color: #0066cc; border-radius: 3px; padding: 2px 4px; font-weight: 500;"
|
|
62
|
-
title="${v.descricao ?? ''}">${v.descricao}</span>`;
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* Renderiza o contrato para PDF (sem formatação HTML)
|
|
67
|
-
*/
|
|
68
|
-
renderContratoParaPdf(texto, variaveis, tipoVisualizacao) {
|
|
69
|
-
return texto.replace(/\{(\d+)\}/g, (_, id) => {
|
|
70
|
-
const v = variaveis.find(v => v.id === parseInt(id));
|
|
71
|
-
if (!v)
|
|
72
|
-
return `{${id}}`;
|
|
73
|
-
const descricao = tipoVisualizacao === 'descricao' ? v.descricao : v.value;
|
|
74
|
-
return descricao || '';
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Filtra variáveis baseado no termo de busca
|
|
79
|
-
*/
|
|
80
|
-
filtrarVariaveis(termo) {
|
|
81
|
-
const relatorio = this.getRelatorioSelected();
|
|
82
|
-
if (!relatorio)
|
|
83
|
-
return [];
|
|
84
|
-
return relatorio.variaveis.filter(v => v.descricao.toLowerCase().includes(termo.toLowerCase()));
|
|
85
|
-
}
|
|
86
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvEditorRelatorioService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
87
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvEditorRelatorioService, providedIn: 'root' }); }
|
|
88
|
-
}
|
|
89
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvEditorRelatorioService, decorators: [{
|
|
90
|
-
type: Injectable,
|
|
91
|
-
args: [{
|
|
92
|
-
providedIn: 'root'
|
|
93
|
-
}]
|
|
94
|
-
}] });
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtZWRpdG9yLXJlbGF0b3Jpby5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWVkaXRvci9zZXJ2aWNlcy9rdi1lZGl0b3ItcmVsYXRvcmlvLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTW5ELE1BQU0sT0FBTyx3QkFBd0I7SUFIckM7UUFLVSxlQUFVLEdBQUcsTUFBTSxDQUFzQixFQUFFLENBQUMsQ0FBQztRQUM3QyxzQkFBaUIsR0FBRyxNQUFNLENBQTJCLElBQUksQ0FBQyxDQUFDO1FBQzNELHdCQUFtQixHQUFHLE1BQU0sQ0FBUyxDQUFDLENBQUMsQ0FBQztLQTBGakQ7SUF4RkM7O09BRUc7SUFDSCxhQUFhLENBQUMsVUFBK0I7UUFDM0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7T0FFRztJQUNILGlCQUFpQixDQUFDLEVBQVU7UUFDMUIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUUzRCxJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQ2QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN0QyxPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxZQUFZLENBQUMsU0FBNEI7UUFDdkMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxvQkFBb0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxzQkFBc0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxjQUFjLENBQUMsS0FBYSxFQUFFLFNBQTZCO1FBQ3pELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUU7WUFDM0MsTUFBTSxDQUFDLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDckQsSUFBSSxDQUFDLENBQUM7Z0JBQUUsT0FBTyxJQUFJLEVBQUUsR0FBRyxDQUFDO1lBRXpCLE9BQU87OzZCQUVnQixDQUFDLENBQUMsU0FBUyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsU0FBUyxTQUFTLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxxQkFBcUIsQ0FBQyxLQUFhLEVBQUUsU0FBNkIsRUFBRSxnQkFBdUM7UUFDekcsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRTtZQUMzQyxNQUFNLENBQUMsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNyRCxJQUFJLENBQUMsQ0FBQztnQkFBRSxPQUFPLElBQUksRUFBRSxHQUFHLENBQUM7WUFDekIsTUFBTSxTQUFTLEdBQUcsZ0JBQWdCLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQzNFLE9BQU8sU0FBUyxJQUFJLEVBQUUsQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILGdCQUFnQixDQUFDLEtBQWE7UUFDNUIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDOUMsSUFBSSxDQUFDLFNBQVM7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUUxQixPQUFPLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQ3BDLENBQUMsQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUN4RCxDQUFDO0lBQ0osQ0FBQzs4R0E3RlUsd0JBQXdCO2tIQUF4Qix3QkFBd0IsY0FGdkIsTUFBTTs7MkZBRVAsd0JBQXdCO2tCQUhwQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBLdkVkaXRvclJlbGF0b3JpbywgS3ZFZGl0b3JWYXJpYXZlbCB9IGZyb20gJy4uL3R5cGVzL2t2LWVkaXRvci50eXBlcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLdkVkaXRvclJlbGF0b3Jpb1NlcnZpY2Uge1xyXG4gIFxyXG4gIHByaXZhdGUgcmVsYXRvcmlvcyA9IHNpZ25hbDxLdkVkaXRvclJlbGF0b3Jpb1tdPihbXSk7XHJcbiAgcHJpdmF0ZSByZWxhdG9yaW9TZWxlY3RlZCA9IHNpZ25hbDxLdkVkaXRvclJlbGF0b3JpbyB8IG51bGw+KG51bGwpO1xyXG4gIHByaXZhdGUgaWRSZWxhdG9yaW9TZWxlY3RlZCA9IHNpZ25hbDxudW1iZXI+KDApO1xyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmUgYSBsaXN0YSBkZSByZWxhdMOzcmlvcyBkaXNwb27DrXZlaXNcclxuICAgKi9cclxuICBzZXRSZWxhdG9yaW9zKHJlbGF0b3Jpb3M6IEt2RWRpdG9yUmVsYXRvcmlvW10pOiB2b2lkIHtcclxuICAgIHRoaXMucmVsYXRvcmlvcy5zZXQocmVsYXRvcmlvcyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPYnTDqW0gYSBsaXN0YSBkZSByZWxhdMOzcmlvc1xyXG4gICAqL1xyXG4gIGdldFJlbGF0b3Jpb3MoKTogS3ZFZGl0b3JSZWxhdG9yaW9bXSB7XHJcbiAgICByZXR1cm4gdGhpcy5yZWxhdG9yaW9zKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZWxlY2lvbmEgdW0gcmVsYXTDs3JpbyBwZWxvIElEXHJcbiAgICovXHJcbiAgc2V0UmVsYXRvcmlvUG9ySWQoaWQ6IG51bWJlcik6IEt2RWRpdG9yUmVsYXRvcmlvIHwgbnVsbCB7XHJcbiAgICB0aGlzLmlkUmVsYXRvcmlvU2VsZWN0ZWQuc2V0KGlkKTtcclxuICAgIGNvbnN0IHJlbGF0b3JpbyA9IHRoaXMucmVsYXRvcmlvcygpLmZpbmQociA9PiByLmlkID09PSBpZCk7XHJcbiAgICBcclxuICAgIGlmIChyZWxhdG9yaW8pIHtcclxuICAgICAgdGhpcy5yZWxhdG9yaW9TZWxlY3RlZC5zZXQocmVsYXRvcmlvKTtcclxuICAgICAgcmV0dXJuIHJlbGF0b3JpbztcclxuICAgIH1cclxuICAgIFxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmUgbyByZWxhdMOzcmlvIHNlbGVjaW9uYWRvXHJcbiAgICovXHJcbiAgc2V0UmVsYXRvcmlvKHJlbGF0b3JpbzogS3ZFZGl0b3JSZWxhdG9yaW8pOiB2b2lkIHtcclxuICAgIHRoaXMuaWRSZWxhdG9yaW9TZWxlY3RlZC5zZXQocmVsYXRvcmlvLmlkKTtcclxuICAgIHRoaXMucmVsYXRvcmlvU2VsZWN0ZWQuc2V0KHJlbGF0b3Jpbyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPYnTDqW0gbyByZWxhdMOzcmlvIHNlbGVjaW9uYWRvXHJcbiAgICovXHJcbiAgZ2V0UmVsYXRvcmlvU2VsZWN0ZWQoKTogS3ZFZGl0b3JSZWxhdG9yaW8gfCBudWxsIHtcclxuICAgIHJldHVybiB0aGlzLnJlbGF0b3Jpb1NlbGVjdGVkKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPYnTDqW0gbyBJRCBkbyByZWxhdMOzcmlvIHNlbGVjaW9uYWRvXHJcbiAgICovXHJcbiAgZ2V0SWRSZWxhdG9yaW9TZWxlY3RlZCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuaWRSZWxhdG9yaW9TZWxlY3RlZCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVuZGVyaXphIG8gdGVtcGxhdGUgZG8gY29udHJhdG8gY29tIGFzIHZhcmnDoXZlaXNcclxuICAgKi9cclxuICByZW5kZXJDb250cmF0byh0ZXh0bzogc3RyaW5nLCB2YXJpYXZlaXM6IEt2RWRpdG9yVmFyaWF2ZWxbXSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGV4dG8ucmVwbGFjZSgvXFx7KFxcZCspXFx9L2csIChfLCBpZCkgPT4ge1xyXG4gICAgICBjb25zdCB2ID0gdmFyaWF2ZWlzLmZpbmQodiA9PiB2LmlkID09PSBwYXJzZUludChpZCkpO1xyXG4gICAgICBpZiAoIXYpIHJldHVybiBgeyR7aWR9fWA7XHJcblxyXG4gICAgICByZXR1cm4gYDxzcGFuIGNsYXNzPVwidmFyaWF2ZWwtaW5zZXJpZGFcIlxyXG4gICAgICAgICAgICAgICAgICAgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiAjZTZmN2ZmOyBjb2xvcjogIzAwNjZjYzsgYm9yZGVyLXJhZGl1czogM3B4OyBwYWRkaW5nOiAycHggNHB4OyBmb250LXdlaWdodDogNTAwO1wiXHJcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU9XCIke3YuZGVzY3JpY2FvID8/ICcnfVwiPiR7di5kZXNjcmljYW99PC9zcGFuPmA7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlbmRlcml6YSBvIGNvbnRyYXRvIHBhcmEgUERGIChzZW0gZm9ybWF0YcOnw6NvIEhUTUwpXHJcbiAgICovXHJcbiAgcmVuZGVyQ29udHJhdG9QYXJhUGRmKHRleHRvOiBzdHJpbmcsIHZhcmlhdmVpczogS3ZFZGl0b3JWYXJpYXZlbFtdLCB0aXBvVmlzdWFsaXphY2FvOiAndmFsb3InIHwgJ2Rlc2NyaWNhbycpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRleHRvLnJlcGxhY2UoL1xceyhcXGQrKVxcfS9nLCAoXywgaWQpID0+IHtcclxuICAgICAgY29uc3QgdiA9IHZhcmlhdmVpcy5maW5kKHYgPT4gdi5pZCA9PT0gcGFyc2VJbnQoaWQpKTtcclxuICAgICAgaWYgKCF2KSByZXR1cm4gYHske2lkfX1gO1xyXG4gICAgICBjb25zdCBkZXNjcmljYW8gPSB0aXBvVmlzdWFsaXphY2FvID09PSAnZGVzY3JpY2FvJyA/IHYuZGVzY3JpY2FvIDogdi52YWx1ZTtcclxuICAgICAgcmV0dXJuIGRlc2NyaWNhbyB8fCAnJztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRmlsdHJhIHZhcmnDoXZlaXMgYmFzZWFkbyBubyB0ZXJtbyBkZSBidXNjYVxyXG4gICAqL1xyXG4gIGZpbHRyYXJWYXJpYXZlaXModGVybW86IHN0cmluZyk6IEt2RWRpdG9yVmFyaWF2ZWxbXSB7XHJcbiAgICBjb25zdCByZWxhdG9yaW8gPSB0aGlzLmdldFJlbGF0b3Jpb1NlbGVjdGVkKCk7XHJcbiAgICBpZiAoIXJlbGF0b3JpbykgcmV0dXJuIFtdO1xyXG5cclxuICAgIHJldHVybiByZWxhdG9yaW8udmFyaWF2ZWlzLmZpbHRlcih2ID0+IFxyXG4gICAgICB2LmRlc2NyaWNhby50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRlcm1vLnRvTG93ZXJDYXNlKCkpXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtZWRpdG9yLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWVkaXRvci90eXBlcy9rdi1lZGl0b3IudHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgS3ZFZGl0b3JSZWxhdG9yaW8ge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBkZXNjcmljYW86IHN0cmluZztcclxuICBtb2RlbG9SZWxhdG9yaW86IHN0cmluZztcclxuICB2YXJpYXZlaXM6IEt2RWRpdG9yVmFyaWF2ZWxbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBLdkVkaXRvclZhcmlhdmVsIHtcclxuICBpZDogbnVtYmVyO1xyXG4gIGRlc2NyaWNhbzogc3RyaW5nO1xyXG4gIHZhbHVlOiBzdHJpbmc7XHJcbiAgY29yPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEt2RWRpdG9yQ29uZmlnIHtcclxuICBjb250ZW50VHlwZTogJ2h0bWwnIHwgJ3RleHQnO1xyXG4gIHJlYWRvbmx5OiBib29sZWFuO1xyXG4gIGRlYnVnOiBib29sZWFuO1xyXG4gIGNhbnZhSGVpZ3RoOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgS3ZFZGl0b3JFdmVudHMge1xyXG4gIG9uVGV4dENoYW5nZTogYW55O1xyXG4gIG9uU2VsZWN0aW9uQ2hhbmdlOiBhbnk7XHJcbiAgb3V0cHV0UmF3OiBzdHJpbmc7XHJcbiAgb3V0cHV0SHRtbDogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEt2RWRpdG9yUXVpbGxDb25maWcge1xyXG4gIHRoZW1lOiBzdHJpbmc7XHJcbiAgbW9kdWxlczogYW55O1xyXG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgcmVhZE9ubHk6IGJvb2xlYW47XHJcbiAgZGVidWc6IGJvb2xlYW47XHJcbn1cclxuIl19
|
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, HostListener, Input, Output, ViewChild, } from '@angular/core';
|
|
2
|
-
import { BaseComponentInput } from '../../../api/base-components/base-component-input';
|
|
3
|
-
import { ComponentProviders } from '../../../api/helpers/component-providers';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "../../../api/services/component.service";
|
|
6
|
-
import * as i2 from "@angular/forms";
|
|
7
|
-
import * as i3 from "../../kv-error/kv-error.component";
|
|
8
|
-
import * as i4 from "../../kv-label/kv-label.component";
|
|
9
|
-
import * as i5 from "primeng/calendar";
|
|
10
|
-
export class KvInputCalendarComponent extends BaseComponentInput {
|
|
11
|
-
constructor(componentService) {
|
|
12
|
-
super(componentService);
|
|
13
|
-
this.isYear = false;
|
|
14
|
-
this.isMonthYear = false;
|
|
15
|
-
this.showButtonBar = false;
|
|
16
|
-
this.showIcon = true;
|
|
17
|
-
this.showTime = false;
|
|
18
|
-
this.selectionMode = 'single';
|
|
19
|
-
this.onSelectionChange = new EventEmitter();
|
|
20
|
-
this.onSelectionValue = new EventEmitter();
|
|
21
|
-
this.typeView = 'date';
|
|
22
|
-
this.dateFormat = 'dd/mm/yy';
|
|
23
|
-
this.lastInputValue = '';
|
|
24
|
-
}
|
|
25
|
-
onWindowResize() {
|
|
26
|
-
this.screenWidth = window.innerWidth;
|
|
27
|
-
}
|
|
28
|
-
writeValue(value) {
|
|
29
|
-
this.value = value;
|
|
30
|
-
if (value && typeof value === 'string') {
|
|
31
|
-
this.value = new Date(value);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
ngOnInit() {
|
|
35
|
-
super.ngOnInit();
|
|
36
|
-
if (this.isYear) {
|
|
37
|
-
this.typeView = 'year';
|
|
38
|
-
this.dateFormat = 'yy';
|
|
39
|
-
}
|
|
40
|
-
else if (this.isMonthYear) {
|
|
41
|
-
this.typeView = 'month';
|
|
42
|
-
this.dateFormat = 'mm/yy';
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
this.typeView = 'date';
|
|
46
|
-
this.dateFormat = 'dd/mm/yy';
|
|
47
|
-
}
|
|
48
|
-
this.screenWidth = window.innerWidth;
|
|
49
|
-
}
|
|
50
|
-
onInputChange(event) {
|
|
51
|
-
this.hideOnRangeMode();
|
|
52
|
-
this.onSelectionValue.emit(event);
|
|
53
|
-
if (this.formControl) {
|
|
54
|
-
this.onSelectionChange.emit(this.formControl.value);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
hideOnRangeMode() {
|
|
58
|
-
if (this.selectionMode == 'range') {
|
|
59
|
-
if (this.dateFilter.value[1]) {
|
|
60
|
-
this.dateFilter.hideOverlay();
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
onKeyDate(event) {
|
|
65
|
-
if (this.typeView === 'date') {
|
|
66
|
-
const inputElement = event.target;
|
|
67
|
-
let inputValue = inputElement.value.replace(/\D/g, ''); // Remove tudo que não seja dígito
|
|
68
|
-
const cursorPosition = inputElement.selectionStart; // Pega a posição atual do cursor
|
|
69
|
-
// Limita a entrada a 8 caracteres (ddmmyyyy)
|
|
70
|
-
if (inputValue.length > 8) {
|
|
71
|
-
inputValue = inputValue.substring(0, 8);
|
|
72
|
-
}
|
|
73
|
-
inputValue = this.maskDate(inputValue);
|
|
74
|
-
let indAdicao = inputValue.length > this.lastInputValue.length ? true : false;
|
|
75
|
-
this.lastInputValue = inputValue;
|
|
76
|
-
// Calcula a diferença de tamanho após aplicar a máscara
|
|
77
|
-
const maskedLength = inputValue.length;
|
|
78
|
-
const lengthDiff = maskedLength - this.lastInputValue.length;
|
|
79
|
-
// Atualiza o valor do input sem perder a posição do cursor
|
|
80
|
-
inputElement.value = inputValue;
|
|
81
|
-
// Ajusta a posição do cursor de acordo com a mudança causada pela máscara
|
|
82
|
-
let newCursorPosition = cursorPosition + lengthDiff;
|
|
83
|
-
// Se o cursor estava exatamente em uma posição de barra e foi uma adição, ajusta para pular a barra ( somente na adição de caracteres )
|
|
84
|
-
if (indAdicao) {
|
|
85
|
-
if (cursorPosition === 3 || cursorPosition === 6) {
|
|
86
|
-
newCursorPosition += 1;
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
// Evita que o cursor vá além do final do valor digitado
|
|
90
|
-
if (newCursorPosition > inputElement.value.length) {
|
|
91
|
-
newCursorPosition = inputElement.value.length;
|
|
92
|
-
}
|
|
93
|
-
// Define a nova posição do cursor
|
|
94
|
-
inputElement.setSelectionRange(newCursorPosition, newCursorPosition);
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
onInputBlur(event) {
|
|
98
|
-
super.onInputBlur(event);
|
|
99
|
-
if (this.typeView === 'date') {
|
|
100
|
-
const input = event.target; // Cast para HTMLInputElement
|
|
101
|
-
if (input && input.value) {
|
|
102
|
-
const dateString = input.value; // Pega o valor do input
|
|
103
|
-
const [day, month, year] = dateString.split('/');
|
|
104
|
-
// Verifica se é uma data válida
|
|
105
|
-
if (day &&
|
|
106
|
-
month &&
|
|
107
|
-
year &&
|
|
108
|
-
day.length === 2 &&
|
|
109
|
-
month.length === 2 &&
|
|
110
|
-
year.length === 4) {
|
|
111
|
-
const objDate = new Date(+year, +month - 1, +day);
|
|
112
|
-
if ((!isNaN(objDate.getTime())) && !(+month > 12 || +day > 31)) {
|
|
113
|
-
this.dateFilter.value = objDate; // Atribui a data sem barras ao dateFilter
|
|
114
|
-
}
|
|
115
|
-
else {
|
|
116
|
-
this.formControl?.setErrors({ invalidDate: true, erroMessage: 'Data Invalida!' });
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
maskDate(date) {
|
|
123
|
-
// Aplica a máscara (dd/mm/yyyy)
|
|
124
|
-
let dateMasked = date;
|
|
125
|
-
if (date.length >= 5) {
|
|
126
|
-
dateMasked = date.replace(/^(\d{2})(\d{2})(\d{0,4})/, '$1/$2/$3'); // Formata como dd/mm/yyyy
|
|
127
|
-
}
|
|
128
|
-
else if (date.length >= 3) {
|
|
129
|
-
dateMasked = date.replace(/^(\d{2})(\d{0,2})/, '$1/$2'); // Formata como dd/mm
|
|
130
|
-
}
|
|
131
|
-
return dateMasked;
|
|
132
|
-
}
|
|
133
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvInputCalendarComponent, deps: [{ token: i1.ComponentService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
134
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: KvInputCalendarComponent, selector: "kv-input-calendar", inputs: { isYear: "isYear", isMonthYear: "isMonthYear", minDate: "minDate", maxDate: "maxDate", defaultDate: "defaultDate", showButtonBar: "showButtonBar", showIcon: "showIcon", showTime: "showTime", selectionMode: "selectionMode" }, outputs: { onSelectionChange: "onSelectionChange", onSelectionValue: "onSelectionValue" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, providers: ComponentProviders(KvInputCalendarComponent), viewQueries: [{ propertyName: "dateFilter", first: true, predicate: ["dateFilter"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<span>\r\n <kv-label\r\n [componentId]=\"componentId\"\r\n [label]=\"label && label + (showAsterisk ? '*' : '')\"\r\n />\r\n <p-calendar\r\n\r\n dateMask\r\n (onInput)=\"onKeyDate($event)\"\r\n\r\n #dateFilter\r\n appendTo=\"body\"\r\n [class]=\"baseInputClass\"\r\n [id]=\"componentId\"\r\n [(ngModel)]=\"value\"\r\n [disabled]=\"disabled\"\r\n [defaultDate]=\"defaultDate\"\r\n [minDate]=\"minDate\"\r\n [maxDate]=\"maxDate\"\r\n [selectionMode]=\"selectionMode\"\r\n [showButtonBar]=\"showButtonBar\"\r\n [showIcon]=\"showIcon\"\r\n [showTime]=\"showTime\"\r\n [showOnFocus]=\"showTime || screenWidth > 1366 || selectionMode == 'range'\"\r\n [view]=\"typeView\"\r\n [dateFormat]=\"dateFormat\"\r\n (onBlur)=\"onInputBlur($event)\"\r\n (onClose)=\"onInputClose($event)\"\r\n (onSelect)=\"onInputChange($event)\"\r\n styleClass=\"inputs\"\r\n [placeholder]=\"placeholder\"\r\n >\r\n </p-calendar>\r\n\r\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\r\n</span>\r\n<ng-content></ng-content>\r\n", styles: ["::ng-deep .p-calendar-w-btn .p-datepicker-trigger{background-color:#f2f3f5;border:none;color:#000;border:solid 1px #d1d5db;width:1.875rem}::ng-deep .p-calendar-w-btn .p-datepicker-trigger:hover{background-color:#d9dadb}::ng-deep .p-calendar-w-btn .p-datepicker-trigger:disabled{background-color:#f2f3f5}::ng-deep .p-calendar-w-btn .p-datepicker-trigger:active{background-color:#c0c1c2}::ng-deep input{font-size:.875rem}\n", "@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0\";::ng-deep :root{--kv-color-system: 10,58,120;--kv-color-system-cta: 76, 175, 80;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255;--kv-primary-color: 41, 185, 45;--kv-secondary-color: 0, 37, 66;--kv-tertiary-color: 165, 165, 165;--kv-danger-color: 220, 53, 69}::ng-deep .padrao{--kv-color-system: 10,58,120;--kv-color-system-cta: 76, 175, 80;--kv-color-text: 0, 0, 0;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255}::ng-deep .theme-keevocenter{--kv-color-system: 88,25,153;--kv-color-system-cta: 0, 116, 217;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255}::ng-deep .theme-holos{--kv-color-system: 241,90,36;--kv-color-system-cta: 224, 168, 35;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 240,240,240;--kv-background-card: 2255,255,255}.system-color{color:rgb(var(--kv-color-system),1)}.bg-system-100{background:rgb(var(--kv-color-system),1)}.bg-system-75{background:rgb(var(--kv-color-system),.75)}.bg-system-50{background:rgb(var(--kv-color-system),.5)}.bg-system-25{background:rgb(var(--kv-color-system),.25)}.material-symbols-outlined{font-family:Material Symbols Outlined!important}*{font-family:Inter,Inter var,sans-serif!important}::ng-deep .p-accordion,::ng-deep .p-accordion-header,::ng-deep .p-accordion-content,::ng-deep .p-badge,::ng-deep .p-overlay-badge,::ng-deep .p-breadcrumb,::ng-deep .p-breadcrumb-item,::ng-deep .p-breadcrumb-link,::ng-deep .p-button,::ng-deep .p-calendar,::ng-deep .p-card,::ng-deep .p-card-title,::ng-deep .p-card-subtitle,::ng-deep .p-card-content,::ng-deep .p-checkbox,::ng-deep .p-chip,::ng-deep .p-confirm-dialog,::ng-deep .p-confirm-dialog-message,::ng-deep .p-contextmenu,::ng-deep .p-contextmenu-item,::ng-deep .p-dataview,::ng-deep .p-dataview-content,::ng-deep .p-dialog,::ng-deep .p-dialog-title,::ng-deep .p-dialog-content,::ng-deep .p-dropdown,::ng-deep .p-dropdown-label,::ng-deep .p-dropdown-item,::ng-deep .p-dynamic-dialog,::ng-deep .p-dynamic-dialog-title,::ng-deep .p-dynamic-dialog-content,::ng-deep .p-editor,::ng-deep .p-fieldset,::ng-deep .p-fieldset-legend,::ng-deep .p-fieldset-content,::ng-deep .p-fileupload,::ng-deep .p-inputmask,::ng-deep .p-inputnumber,::ng-deep .p-inputtextarea,::ng-deep .p-inputtext,::ng-deep .p-menu,::ng-deep .p-menuitem,::ng-deep .p-menuitem-text,::ng-deep .p-message,::ng-deep .p-messages,::ng-deep .p-multiselect,::ng-deep .p-multiselect-label,::ng-deep .p-multiselect-item,::ng-deep .p-panelmenu,::ng-deep .p-panelmenu-header,::ng-deep .p-panelmenu-content,::ng-deep .p-panel,::ng-deep .p-panel-header,::ng-deep .p-panel-content,::ng-deep .p-password,::ng-deep .p-picklist,::ng-deep .p-progressbar,::ng-deep .p-radiobutton,::ng-deep .p-rating,::ng-deep .p-sidebar,::ng-deep .p-splitbutton,::ng-deep .p-steps,::ng-deep .p-step,::ng-deep .p-table,::ng-deep .p-datatable,::ng-deep .p-tabview,::ng-deep .p-tabpanel,::ng-deep .p-tag,::ng-deep .p-toast,::ng-deep .p-toolbar,::ng-deep .p-tooltip,::ng-deep .p-tree,::ng-deep .p-treetable,::ng-deep .p-selectbutton,::ng-deep .p-stepper,::ng-deep .p-inputgroup,::ng-deep .p-inputgroup-addon,::ng-deep .p-text{font-family:Inter,Inter var,sans-serif!important}::ng-deep .p-icon,svg{height:.6rem}:host ::ng-deep .inputs{height:1.875rem}:host ::ng-deep .inputs,.p-inputtext,.p-inputtextarea{font-size:.875rem}::ng-deep .p-dialog .p-dialog-header{color:rgb(var(--kv-color-text))!important;background:linear-gradient(0deg,#00000005 .44%,#0000 49.5%),#fff!important;display:flex!important;flex-wrap:wrap;word-wrap:break-word;border-bottom:1px solid rgb(var(--kv-color-text),.15)}::ng-deep .p-dialog{min-width:320px}::ng-deep .p-dialog-content{overflow-x:hidden}::ng-deep .p-dialog-content::-webkit-scrollbar{width:8px}::ng-deep .p-dialog-content::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .p-dialog-content::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .p-dialog-content:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .p-dialog-content::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}::ng-deep .p-dialog-footer{display:flex;justify-content:flex-end;padding:10px;gap:10px}::ng-deep .p-dialog .p-dialog-header .p-dialog-header-icon{display:none}::ng-deep .p-tooltip{font-size:.825rem!important}::ng-deep svg.p-icon{width:.65rem;height:.65rem}::ng-deep .p-checkbox .p-checkbox-box.p-highlight{border-color:#004172;background:#004172}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:hover{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:active{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:disabled{background-color:#002542;opacity:.4;cursor:auto}input{height:1.75rem}::ng-deep .p-checkbox .p-checkbox-box{width:1.125rem;height:1.125rem;border:1.5px solid #d1d5db}::ng-deep p-tablecheckbox p-tableheadercheckbox .p-checkbox{display:flex!important;align-items:center!important;justify-content:right}::ng-deep .p-checkbox{display:flex!important;align-items:center!important;justify-content:center}::ng-deep .p-checkbox-label{font-size:.875rem}\n"], dependencies: [{ kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.KvErrorComponent, selector: "kv-error", inputs: ["formControl", "hasError"] }, { kind: "component", type: i4.KvLabelComponent, selector: "kv-label", inputs: ["componentId", "label"] }, { kind: "component", type: i5.Calendar, selector: "p-calendar", inputs: ["iconDisplay", "style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "variant", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }] }); }
|
|
135
|
-
}
|
|
136
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvInputCalendarComponent, decorators: [{
|
|
137
|
-
type: Component,
|
|
138
|
-
args: [{ selector: 'kv-input-calendar', providers: ComponentProviders(KvInputCalendarComponent), template: "<span>\r\n <kv-label\r\n [componentId]=\"componentId\"\r\n [label]=\"label && label + (showAsterisk ? '*' : '')\"\r\n />\r\n <p-calendar\r\n\r\n dateMask\r\n (onInput)=\"onKeyDate($event)\"\r\n\r\n #dateFilter\r\n appendTo=\"body\"\r\n [class]=\"baseInputClass\"\r\n [id]=\"componentId\"\r\n [(ngModel)]=\"value\"\r\n [disabled]=\"disabled\"\r\n [defaultDate]=\"defaultDate\"\r\n [minDate]=\"minDate\"\r\n [maxDate]=\"maxDate\"\r\n [selectionMode]=\"selectionMode\"\r\n [showButtonBar]=\"showButtonBar\"\r\n [showIcon]=\"showIcon\"\r\n [showTime]=\"showTime\"\r\n [showOnFocus]=\"showTime || screenWidth > 1366 || selectionMode == 'range'\"\r\n [view]=\"typeView\"\r\n [dateFormat]=\"dateFormat\"\r\n (onBlur)=\"onInputBlur($event)\"\r\n (onClose)=\"onInputClose($event)\"\r\n (onSelect)=\"onInputChange($event)\"\r\n styleClass=\"inputs\"\r\n [placeholder]=\"placeholder\"\r\n >\r\n </p-calendar>\r\n\r\n <kv-error [hasError]=\"hasControlError()\">{{ erroMessage() }}</kv-error>\r\n</span>\r\n<ng-content></ng-content>\r\n", styles: ["::ng-deep .p-calendar-w-btn .p-datepicker-trigger{background-color:#f2f3f5;border:none;color:#000;border:solid 1px #d1d5db;width:1.875rem}::ng-deep .p-calendar-w-btn .p-datepicker-trigger:hover{background-color:#d9dadb}::ng-deep .p-calendar-w-btn .p-datepicker-trigger:disabled{background-color:#f2f3f5}::ng-deep .p-calendar-w-btn .p-datepicker-trigger:active{background-color:#c0c1c2}::ng-deep input{font-size:.875rem}\n", "@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0\";::ng-deep :root{--kv-color-system: 10,58,120;--kv-color-system-cta: 76, 175, 80;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255;--kv-primary-color: 41, 185, 45;--kv-secondary-color: 0, 37, 66;--kv-tertiary-color: 165, 165, 165;--kv-danger-color: 220, 53, 69}::ng-deep .padrao{--kv-color-system: 10,58,120;--kv-color-system-cta: 76, 175, 80;--kv-color-text: 0, 0, 0;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255}::ng-deep .theme-keevocenter{--kv-color-system: 88,25,153;--kv-color-system-cta: 0, 116, 217;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 248,250,253;--kv-background-card: 255,255,255}::ng-deep .theme-holos{--kv-color-system: 241,90,36;--kv-color-system-cta: 224, 168, 35;--kv-color-text: 0, 0, 0;--kv-color-text-inv: 255, 255, 165;--kv-background-system: 240,240,240;--kv-background-card: 2255,255,255}.system-color{color:rgb(var(--kv-color-system),1)}.bg-system-100{background:rgb(var(--kv-color-system),1)}.bg-system-75{background:rgb(var(--kv-color-system),.75)}.bg-system-50{background:rgb(var(--kv-color-system),.5)}.bg-system-25{background:rgb(var(--kv-color-system),.25)}.material-symbols-outlined{font-family:Material Symbols Outlined!important}*{font-family:Inter,Inter var,sans-serif!important}::ng-deep .p-accordion,::ng-deep .p-accordion-header,::ng-deep .p-accordion-content,::ng-deep .p-badge,::ng-deep .p-overlay-badge,::ng-deep .p-breadcrumb,::ng-deep .p-breadcrumb-item,::ng-deep .p-breadcrumb-link,::ng-deep .p-button,::ng-deep .p-calendar,::ng-deep .p-card,::ng-deep .p-card-title,::ng-deep .p-card-subtitle,::ng-deep .p-card-content,::ng-deep .p-checkbox,::ng-deep .p-chip,::ng-deep .p-confirm-dialog,::ng-deep .p-confirm-dialog-message,::ng-deep .p-contextmenu,::ng-deep .p-contextmenu-item,::ng-deep .p-dataview,::ng-deep .p-dataview-content,::ng-deep .p-dialog,::ng-deep .p-dialog-title,::ng-deep .p-dialog-content,::ng-deep .p-dropdown,::ng-deep .p-dropdown-label,::ng-deep .p-dropdown-item,::ng-deep .p-dynamic-dialog,::ng-deep .p-dynamic-dialog-title,::ng-deep .p-dynamic-dialog-content,::ng-deep .p-editor,::ng-deep .p-fieldset,::ng-deep .p-fieldset-legend,::ng-deep .p-fieldset-content,::ng-deep .p-fileupload,::ng-deep .p-inputmask,::ng-deep .p-inputnumber,::ng-deep .p-inputtextarea,::ng-deep .p-inputtext,::ng-deep .p-menu,::ng-deep .p-menuitem,::ng-deep .p-menuitem-text,::ng-deep .p-message,::ng-deep .p-messages,::ng-deep .p-multiselect,::ng-deep .p-multiselect-label,::ng-deep .p-multiselect-item,::ng-deep .p-panelmenu,::ng-deep .p-panelmenu-header,::ng-deep .p-panelmenu-content,::ng-deep .p-panel,::ng-deep .p-panel-header,::ng-deep .p-panel-content,::ng-deep .p-password,::ng-deep .p-picklist,::ng-deep .p-progressbar,::ng-deep .p-radiobutton,::ng-deep .p-rating,::ng-deep .p-sidebar,::ng-deep .p-splitbutton,::ng-deep .p-steps,::ng-deep .p-step,::ng-deep .p-table,::ng-deep .p-datatable,::ng-deep .p-tabview,::ng-deep .p-tabpanel,::ng-deep .p-tag,::ng-deep .p-toast,::ng-deep .p-toolbar,::ng-deep .p-tooltip,::ng-deep .p-tree,::ng-deep .p-treetable,::ng-deep .p-selectbutton,::ng-deep .p-stepper,::ng-deep .p-inputgroup,::ng-deep .p-inputgroup-addon,::ng-deep .p-text{font-family:Inter,Inter var,sans-serif!important}::ng-deep .p-icon,svg{height:.6rem}:host ::ng-deep .inputs{height:1.875rem}:host ::ng-deep .inputs,.p-inputtext,.p-inputtextarea{font-size:.875rem}::ng-deep .p-dialog .p-dialog-header{color:rgb(var(--kv-color-text))!important;background:linear-gradient(0deg,#00000005 .44%,#0000 49.5%),#fff!important;display:flex!important;flex-wrap:wrap;word-wrap:break-word;border-bottom:1px solid rgb(var(--kv-color-text),.15)}::ng-deep .p-dialog{min-width:320px}::ng-deep .p-dialog-content{overflow-x:hidden}::ng-deep .p-dialog-content::-webkit-scrollbar{width:8px}::ng-deep .p-dialog-content::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .p-dialog-content::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .p-dialog-content:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .p-dialog-content::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}::ng-deep .p-dialog-footer{display:flex;justify-content:flex-end;padding:10px;gap:10px}::ng-deep .p-dialog .p-dialog-header .p-dialog-header-icon{display:none}::ng-deep .p-tooltip{font-size:.825rem!important}::ng-deep svg.p-icon{width:.65rem;height:.65rem}::ng-deep .p-checkbox .p-checkbox-box.p-highlight{border-color:#004172;background:#004172}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:hover{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:active{background-color:#002542}::ng-deep .p-checkbox .p-checkbox-box.p-highlight:disabled{background-color:#002542;opacity:.4;cursor:auto}input{height:1.75rem}::ng-deep .p-checkbox .p-checkbox-box{width:1.125rem;height:1.125rem;border:1.5px solid #d1d5db}::ng-deep p-tablecheckbox p-tableheadercheckbox .p-checkbox{display:flex!important;align-items:center!important;justify-content:right}::ng-deep .p-checkbox{display:flex!important;align-items:center!important;justify-content:center}::ng-deep .p-checkbox-label{font-size:.875rem}\n"] }]
|
|
139
|
-
}], ctorParameters: () => [{ type: i1.ComponentService }], propDecorators: { isYear: [{
|
|
140
|
-
type: Input
|
|
141
|
-
}], isMonthYear: [{
|
|
142
|
-
type: Input
|
|
143
|
-
}], minDate: [{
|
|
144
|
-
type: Input
|
|
145
|
-
}], maxDate: [{
|
|
146
|
-
type: Input
|
|
147
|
-
}], defaultDate: [{
|
|
148
|
-
type: Input
|
|
149
|
-
}], showButtonBar: [{
|
|
150
|
-
type: Input
|
|
151
|
-
}], showIcon: [{
|
|
152
|
-
type: Input
|
|
153
|
-
}], showTime: [{
|
|
154
|
-
type: Input
|
|
155
|
-
}], selectionMode: [{
|
|
156
|
-
type: Input
|
|
157
|
-
}], onSelectionChange: [{
|
|
158
|
-
type: Output
|
|
159
|
-
}], onSelectionValue: [{
|
|
160
|
-
type: Output
|
|
161
|
-
}], dateFilter: [{
|
|
162
|
-
type: ViewChild,
|
|
163
|
-
args: ['dateFilter']
|
|
164
|
-
}], onWindowResize: [{
|
|
165
|
-
type: HostListener,
|
|
166
|
-
args: ['window:resize', ['$event']]
|
|
167
|
-
}] } });
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtaW5wdXQtY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LWNhbGVuZGFyL2t2LWlucHV0LWNhbGVuZGFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dC1jYWxlbmRhci9rdi1pbnB1dC1jYWxlbmRhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDdkYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMENBQTBDLENBQUM7Ozs7Ozs7QUFZOUUsTUFBTSxPQUFPLHdCQUNYLFNBQVEsa0JBQXdCO0lBeUJoQyxZQUFZLGdCQUFrQztRQUM1QyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQXZCakIsV0FBTSxHQUFZLEtBQUssQ0FBQztRQUN4QixnQkFBVyxHQUFZLEtBQUssQ0FBQztRQU03QixrQkFBYSxHQUFZLEtBQUssQ0FBQztRQUMvQixhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3pCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsa0JBQWEsR0FBb0MsUUFBUSxDQUFDO1FBRXpELHNCQUFpQixHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzFELHFCQUFnQixHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBSW5FLGFBQVEsR0FBcUIsTUFBTSxDQUFDO1FB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QyxxQkFBcUI7UUFDaEYsQ0FBQztRQUNELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7OEdBMUtVLHdCQUF3QjtrR0FBeEIsd0JBQXdCLHFiQUZ4QixrQkFBa0IsQ0FBQyx3QkFBd0IsQ0FBQywySkN2QnpELGtsQ0FxQ0E7OzJGRFphLHdCQUF3QjtrQkFUcEMsU0FBUzsrQkFDRSxtQkFBbUIsYUFNbEIsa0JBQWtCLDBCQUEwQjtxRkFNOUMsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsT0FBTztzQkFBZixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUksaUJBQWlCO3NCQUExQixNQUFNO2dCQUNHLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFFMEIsVUFBVTtzQkFBMUMsU0FBUzt1QkFBQyxZQUFZO2dCQVl2QixjQUFjO3NCQURiLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IENhbGVuZGFyVHlwZVZpZXcgfSBmcm9tICdwcmltZW5nL2NhbGVuZGFyJztcclxuXHJcbmltcG9ydCB7IEJhc2VDb21wb25lbnRJbnB1dCB9IGZyb20gJy4uLy4uLy4uL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtaW5wdXQnO1xyXG5pbXBvcnQgeyBDb21wb25lbnRQcm92aWRlcnMgfSBmcm9tICcuLi8uLi8uLi9hcGkvaGVscGVycy9jb21wb25lbnQtcHJvdmlkZXJzJztcclxuaW1wb3J0IHsgQ29tcG9uZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2FwaS9zZXJ2aWNlcy9jb21wb25lbnQuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2t2LWlucHV0LWNhbGVuZGFyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4va3YtaW5wdXQtY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogW1xyXG4gICAgJy4va3YtaW5wdXQtY2FsZW5kYXIuY29tcG9uZW50LnNjc3MnLFxyXG4gICAgJy4uLy4uL2tlZXZvLWNvbXBvbmVudHMtc3R5bGVzLnNjc3MnLFxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBDb21wb25lbnRQcm92aWRlcnMoS3ZJbnB1dENhbGVuZGFyQ29tcG9uZW50KSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEt2SW5wdXRDYWxlbmRhckNvbXBvbmVudFxyXG4gIGV4dGVuZHMgQmFzZUNvbXBvbmVudElucHV0PERhdGU+XHJcbiAgaW1wbGVtZW50cyBPbkluaXRcclxue1xyXG4gIEBJbnB1dCgpIGlzWWVhcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGlzTW9udGhZZWFyOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpIG1pbkRhdGUhOiBEYXRlO1xyXG4gIEBJbnB1dCgpIG1heERhdGUhOiBEYXRlO1xyXG4gIEBJbnB1dCgpIGRlZmF1bHREYXRlITogRGF0ZTtcclxuXHJcbiAgQElucHV0KCkgc2hvd0J1dHRvbkJhcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNob3dJY29uOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzaG93VGltZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNlbGVjdGlvbk1vZGU6ICdzaW5nbGUnIHwgJ211bHRpcGxlJyB8ICdyYW5nZScgPSAnc2luZ2xlJztcclxuICBcclxuICBAT3V0cHV0KCkgb25TZWxlY3Rpb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBvblNlbGVjdGlvblZhbHVlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBcclxuICBAVmlld0NoaWxkKCdkYXRlRmlsdGVyJykgcHJpdmF0ZSBkYXRlRmlsdGVyOiBhbnk7XHJcblxyXG4gIHR5cGVWaWV3OiBDYWxlbmRhclR5cGVWaWV3ID0gJ2RhdGUnO1xyXG4gIGRhdGVGb3JtYXQ6IHN0cmluZyA9ICdkZC9tbS95eSc7XHJcblxyXG4gIHNjcmVlbldpZHRoITogbnVtYmVyO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihjb21wb25lbnRTZXJ2aWNlOiBDb21wb25lbnRTZXJ2aWNlKSB7XHJcbiAgICBzdXBlcihjb21wb25lbnRTZXJ2aWNlKTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxyXG4gIG9uV2luZG93UmVzaXplKCkge1xyXG4gICAgdGhpcy5zY3JlZW5XaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogRGF0ZSk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG5cclxuICAgIGlmICh2YWx1ZSAmJiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSBuZXcgRGF0ZSh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcblxyXG4gICAgaWYgKHRoaXMuaXNZZWFyKSB7XHJcbiAgICAgIHRoaXMudHlwZVZpZXcgPSAneWVhcic7XHJcbiAgICAgIHRoaXMuZGF0ZUZvcm1hdCA9ICd5eSc7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNNb250aFllYXIpIHtcclxuICAgICAgdGhpcy50eXBlVmlldyA9ICdtb250aCc7XHJcbiAgICAgIHRoaXMuZGF0ZUZvcm1hdCA9ICdtbS95eSc7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnR5cGVWaWV3ID0gJ2RhdGUnO1xyXG4gICAgICB0aGlzLmRhdGVGb3JtYXQgPSAnZGQvbW0veXknO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zY3JlZW5XaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIG9uSW5wdXRDaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5oaWRlT25SYW5nZU1vZGUoKTtcclxuICAgIHRoaXMub25TZWxlY3Rpb25WYWx1ZS5lbWl0KGV2ZW50KTtcclxuXHJcbiAgICBpZiAodGhpcy5mb3JtQ29udHJvbCkge1xyXG4gICAgICB0aGlzLm9uU2VsZWN0aW9uQ2hhbmdlLmVtaXQodGhpcy5mb3JtQ29udHJvbC52YWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoaWRlT25SYW5nZU1vZGUoKSB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3Rpb25Nb2RlID09ICdyYW5nZScpIHtcclxuICAgICAgaWYgKHRoaXMuZGF0ZUZpbHRlci52YWx1ZVsxXSkge1xyXG4gICAgICAgIHRoaXMuZGF0ZUZpbHRlci5oaWRlT3ZlcmxheSgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBsYXN0SW5wdXRWYWx1ZTogc3RyaW5nID0gJyc7XHJcbiAgb25LZXlEYXRlKGV2ZW50OiBhbnkpIHtcclxuICAgIGlmICh0aGlzLnR5cGVWaWV3ID09PSAnZGF0ZScpIHtcclxuXHJcbiAgICAgIGNvbnN0IGlucHV0RWxlbWVudCA9IGV2ZW50LnRhcmdldDtcclxuXHJcbiAgICAgIGxldCBpbnB1dFZhbHVlID0gaW5wdXRFbGVtZW50LnZhbHVlLnJlcGxhY2UoL1xcRC9nLCAnJyk7IC8vIFJlbW92ZSB0dWRvIHF1ZSBuw6NvIHNlamEgZMOtZ2l0b1xyXG5cclxuICAgICAgY29uc3QgY3Vyc29yUG9zaXRpb24gPSBpbnB1dEVsZW1lbnQuc2VsZWN0aW9uU3RhcnQ7IC8vIFBlZ2EgYSBwb3Npw6fDo28gYXR1YWwgZG8gY3Vyc29yXHJcblxyXG4gICAgICAvLyBMaW1pdGEgYSBlbnRyYWRhIGEgOCBjYXJhY3RlcmVzIChkZG1teXl5eSlcclxuICAgICAgaWYgKGlucHV0VmFsdWUubGVuZ3RoID4gOCkge1xyXG4gICAgICAgIGlucHV0VmFsdWUgPSBpbnB1dFZhbHVlLnN1YnN0cmluZygwLCA4KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaW5wdXRWYWx1ZSA9IHRoaXMubWFza0RhdGUoaW5wdXRWYWx1ZSk7XHJcbiAgICAgIGxldCBpbmRBZGljYW8gPVxyXG4gICAgICAgIGlucHV0VmFsdWUubGVuZ3RoID4gdGhpcy5sYXN0SW5wdXRWYWx1ZS5sZW5ndGggPyB0cnVlIDogZmFsc2U7XHJcblxyXG4gICAgICB0aGlzLmxhc3RJbnB1dFZhbHVlID0gaW5wdXRWYWx1ZTtcclxuXHJcbiAgICAgIC8vIENhbGN1bGEgYSBkaWZlcmVuw6dhIGRlIHRhbWFuaG8gYXDDs3MgYXBsaWNhciBhIG3DoXNjYXJhXHJcbiAgICAgIGNvbnN0IG1hc2tlZExlbmd0aCA9IGlucHV0VmFsdWUubGVuZ3RoO1xyXG4gICAgICBjb25zdCBsZW5ndGhEaWZmID0gbWFza2VkTGVuZ3RoIC0gdGhpcy5sYXN0SW5wdXRWYWx1ZS5sZW5ndGg7XHJcblxyXG4gICAgICAvLyBBdHVhbGl6YSBvIHZhbG9yIGRvIGlucHV0IHNlbSBwZXJkZXIgYSBwb3Npw6fDo28gZG8gY3Vyc29yXHJcbiAgICAgIGlucHV0RWxlbWVudC52YWx1ZSA9IGlucHV0VmFsdWU7XHJcblxyXG4gICAgICAvLyBBanVzdGEgYSBwb3Npw6fDo28gZG8gY3Vyc29yIGRlIGFjb3JkbyBjb20gYSBtdWRhbsOnYSBjYXVzYWRhIHBlbGEgbcOhc2NhcmFcclxuICAgICAgbGV0IG5ld0N1cnNvclBvc2l0aW9uID0gY3Vyc29yUG9zaXRpb24gKyBsZW5ndGhEaWZmO1xyXG5cclxuICAgICAgLy8gU2UgbyBjdXJzb3IgZXN0YXZhIGV4YXRhbWVudGUgZW0gdW1hIHBvc2nDp8OjbyBkZSBiYXJyYSBlIGZvaSB1bWEgYWRpw6fDo28sIGFqdXN0YSBwYXJhIHB1bGFyIGEgYmFycmEgKCBzb21lbnRlIG5hIGFkacOnw6NvIGRlIGNhcmFjdGVyZXMgKVxyXG4gICAgICBpZiAoaW5kQWRpY2FvKSB7XHJcbiAgICAgICAgaWYgKGN1cnNvclBvc2l0aW9uID09PSAzIHx8IGN1cnNvclBvc2l0aW9uID09PSA2KSB7XHJcbiAgICAgICAgICBuZXdDdXJzb3JQb3NpdGlvbiArPSAxO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAvLyBFdml0YSBxdWUgbyBjdXJzb3IgdsOhIGFsw6ltIGRvIGZpbmFsIGRvIHZhbG9yIGRpZ2l0YWRvXHJcbiAgICAgIGlmIChuZXdDdXJzb3JQb3NpdGlvbiA+IGlucHV0RWxlbWVudC52YWx1ZS5sZW5ndGgpIHtcclxuICAgICAgICBuZXdDdXJzb3JQb3NpdGlvbiA9IGlucHV0RWxlbWVudC52YWx1ZS5sZW5ndGg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIERlZmluZSBhIG5vdmEgcG9zacOnw6NvIGRvIGN1cnNvclxyXG4gICAgICBpbnB1dEVsZW1lbnQuc2V0U2VsZWN0aW9uUmFuZ2UobmV3Q3Vyc29yUG9zaXRpb24sIG5ld0N1cnNvclBvc2l0aW9uKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIG9uSW5wdXRCbHVyKGV2ZW50OiBFdmVudCk6IHZvaWQge1xyXG4gICAgc3VwZXIub25JbnB1dEJsdXIoZXZlbnQpO1xyXG4gICAgXHJcbiAgICBpZiAodGhpcy50eXBlVmlldyA9PT0gJ2RhdGUnKSB7XHJcbiAgICAgIGNvbnN0IGlucHV0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7IC8vIENhc3QgcGFyYSBIVE1MSW5wdXRFbGVtZW50XHJcbiAgICAgIGlmIChpbnB1dCAmJiBpbnB1dC52YWx1ZSkge1xyXG4gICAgICAgIGNvbnN0IGRhdGVTdHJpbmcgPSBpbnB1dC52YWx1ZTsgLy8gUGVnYSBvIHZhbG9yIGRvIGlucHV0XHJcbiAgICAgICAgY29uc3QgW2RheSwgbW9udGgsIHllYXJdID0gZGF0ZVN0cmluZy5zcGxpdCgnLycpO1xyXG5cclxuXHJcbiAgICAgICAgLy8gVmVyaWZpY2Egc2Ugw6kgdW1hIGRhdGEgdsOhbGlkYVxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIGRheSAmJlxyXG4gICAgICAgICAgbW9udGggJiZcclxuICAgICAgICAgIHllYXIgJiZcclxuICAgICAgICAgIGRheS5sZW5ndGggPT09IDIgJiZcclxuICAgICAgICAgIG1vbnRoLmxlbmd0aCA9PT0gMiAmJlxyXG4gICAgICAgICAgeWVhci5sZW5ndGggPT09IDRcclxuICAgICAgICApIHtcclxuXHJcbiAgICAgICAgICBjb25zdCBvYmpEYXRlID0gbmV3IERhdGUoK3llYXIsICttb250aCAtIDEsICtkYXkpO1xyXG5cclxuICAgICAgICAgIGlmICgoIWlzTmFOKG9iakRhdGUuZ2V0VGltZSgpKSkgJiYgISgrbW9udGggPiAxMiB8fCArZGF5ID4gMzEpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGF0ZUZpbHRlci52YWx1ZSA9IG9iakRhdGU7IC8vIEF0cmlidWkgYSBkYXRhIHNlbSBiYXJyYXMgYW8gZGF0ZUZpbHRlclxyXG4gICAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICAgIHRoaXMuZm9ybUNvbnRyb2w/LnNldEVycm9ycyh7IGludmFsaWREYXRlOiB0cnVlLCBlcnJvTWVzc2FnZTogJ0RhdGEgSW52YWxpZGEhJyB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG5cclxuICAgICAgICBcclxuXHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgbWFza0RhdGUoZGF0ZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIC8vIEFwbGljYSBhIG3DoXNjYXJhIChkZC9tbS95eXl5KVxyXG4gICAgbGV0IGRhdGVNYXNrZWQgPSBkYXRlO1xyXG4gICAgaWYgKGRhdGUubGVuZ3RoID49IDUpIHtcclxuICAgICAgZGF0ZU1hc2tlZCA9IGRhdGUucmVwbGFjZSgvXihcXGR7Mn0pKFxcZHsyfSkoXFxkezAsNH0pLywgJyQxLyQyLyQzJyk7IC8vIEZvcm1hdGEgY29tbyBkZC9tbS95eXl5XHJcbiAgICB9IGVsc2UgaWYgKGRhdGUubGVuZ3RoID49IDMpIHtcclxuICAgICAgZGF0ZU1hc2tlZCA9IGRhdGUucmVwbGFjZSgvXihcXGR7Mn0pKFxcZHswLDJ9KS8sICckMS8kMicpOyAvLyBGb3JtYXRhIGNvbW8gZGQvbW1cclxuICAgIH1cclxuICAgIHJldHVybiBkYXRlTWFza2VkO1xyXG4gIH1cclxufVxyXG4iLCI8c3Bhbj5cclxuICA8a3YtbGFiZWxcclxuICAgIFtjb21wb25lbnRJZF09XCJjb21wb25lbnRJZFwiXHJcbiAgICBbbGFiZWxdPVwibGFiZWwgJiYgbGFiZWwgKyAoc2hvd0FzdGVyaXNrID8gJyonIDogJycpXCJcclxuICAvPlxyXG4gIDxwLWNhbGVuZGFyXHJcblxyXG4gICAgZGF0ZU1hc2tcclxuICAgIChvbklucHV0KT1cIm9uS2V5RGF0ZSgkZXZlbnQpXCJcclxuXHJcbiAgICAjZGF0ZUZpbHRlclxyXG4gICAgYXBwZW5kVG89XCJib2R5XCJcclxuICAgIFtjbGFzc109XCJiYXNlSW5wdXRDbGFzc1wiXHJcbiAgICBbaWRdPVwiY29tcG9uZW50SWRcIlxyXG4gICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXHJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgW2RlZmF1bHREYXRlXT1cImRlZmF1bHREYXRlXCJcclxuICAgIFttaW5EYXRlXT1cIm1pbkRhdGVcIlxyXG4gICAgW21heERhdGVdPVwibWF4RGF0ZVwiXHJcbiAgICBbc2VsZWN0aW9uTW9kZV09XCJzZWxlY3Rpb25Nb2RlXCJcclxuICAgIFtzaG93QnV0dG9uQmFyXT1cInNob3dCdXR0b25CYXJcIlxyXG4gICAgW3Nob3dJY29uXT1cInNob3dJY29uXCJcclxuICAgIFtzaG93VGltZV09XCJzaG93VGltZVwiXHJcbiAgICBbc2hvd09uRm9jdXNdPVwic2hvd1RpbWUgfHwgc2NyZWVuV2lkdGggPiAxMzY2IHx8IHNlbGVjdGlvbk1vZGUgPT0gJ3JhbmdlJ1wiXHJcbiAgICBbdmlld109XCJ0eXBlVmlld1wiXHJcbiAgICBbZGF0ZUZvcm1hdF09XCJkYXRlRm9ybWF0XCJcclxuICAgIChvbkJsdXIpPVwib25JbnB1dEJsdXIoJGV2ZW50KVwiXHJcbiAgICAob25DbG9zZSk9XCJvbklucHV0Q2xvc2UoJGV2ZW50KVwiXHJcbiAgICAob25TZWxlY3QpPVwib25JbnB1dENoYW5nZSgkZXZlbnQpXCJcclxuICAgIHN0eWxlQ2xhc3M9XCJpbnB1dHNcIlxyXG4gICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICA+XHJcbiAgPC9wLWNhbGVuZGFyPlxyXG5cclxuICA8a3YtZXJyb3IgW2hhc0Vycm9yXT1cImhhc0NvbnRyb2xFcnJvcigpXCI+e3sgZXJyb01lc3NhZ2UoKSB9fTwva3YtZXJyb3I+XHJcbjwvc3Bhbj5cclxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4iXX0=
|