keevo-components 1.8.540 → 1.8.541
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 +12 -0
- package/package.json +27 -40
- package/src/assets/.gitkeep +0 -0
- package/src/assets/images/LogoEvo.png +0 -0
- package/src/assets/images/LogoPequenaEvo.png +0 -0
- package/src/assets/images/background.png +0 -0
- package/src/assets/images/keepass-logo.png +0 -0
- package/src/assets/images/keepass-logo.svg +74 -0
- package/src/assets/images/keevo-logo.png +0 -0
- package/src/assets/images/logokeevo_2.png +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 +367 -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/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 +36 -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 +11 -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 +157 -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 +139 -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/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.module.ts +94 -0
- package/src/lib/components/kv-avatar/kv-avatar.component.html +34 -0
- package/src/lib/components/kv-avatar/kv-avatar.component.scss +114 -0
- package/src/lib/components/kv-avatar/kv-avatar.component.spec.ts +23 -0
- package/src/lib/components/kv-avatar/kv-avatar.component.ts +154 -0
- package/src/lib/components/kv-avatar/kv-avatar.module.ts +32 -0
- package/src/lib/components/kv-button/kv-button.component.html +20 -0
- package/src/lib/components/kv-button/kv-button.component.spec.ts +23 -0
- package/src/lib/components/kv-button/kv-button.component.ts +21 -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 +12 -0
- package/src/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.scss +28 -0
- package/src/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.ts +38 -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 +72 -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 +32 -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-content-viewer/kv-content-viewer.component.html +151 -0
- package/src/lib/components/kv-content-viewer/kv-content-viewer.component.scss +159 -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 +133 -0
- package/src/lib/components/kv-content-viewer/kv-content-viewer.module.ts +21 -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 +56 -0
- package/src/lib/components/kv-file-upload/kv-file-upload.component.scss +9 -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 +163 -0
- package/src/lib/components/kv-file-upload/kv-file-upload.module.ts +10 -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 +18 -0
- package/src/lib/components/kv-filter-card/kv-filter-card.component.scss +74 -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-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-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 +154 -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.scss +56 -0
- package/src/lib/components/kv-inputs/kv-dropdown/kv-dropdown.component.ts +119 -0
- package/src/lib/components/kv-inputs/kv-editor/kv-editor.component.html +102 -0
- package/src/lib/components/kv-inputs/kv-editor/kv-editor.component.scss +45 -0
- package/src/lib/components/kv-inputs/kv-editor/kv-editor.component.ts +177 -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-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-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 +46 -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 +83 -0
- package/src/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.html +85 -0
- package/src/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.scss +44 -0
- package/src/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.ts +53 -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 +26 -0
- package/src/lib/components/kv-inputs/kv-select-buttons/kv-select-buttons.component.scss +41 -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 +41 -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 +6 -0
- package/src/lib/components/kv-label/kv-label.component.scss +9 -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 +15 -0
- package/src/lib/components/kv-layout/dropdown-master/dropdown-master.component.scss +0 -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 +35 -0
- package/src/lib/components/kv-layout/layout/kv-layout.component.html +507 -0
- package/src/lib/components/kv-layout/layout/kv-layout.component.scss +290 -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 +344 -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 +116 -0
- package/src/lib/components/kv-page-form/kv-page-form.component.scss +74 -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 +251 -0
- package/src/lib/components/kv-page-stepper/kv-page-stepper.component.scss +129 -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 +34 -0
- package/src/lib/components/kv-pick-list/kv-pick-list.component.html +31 -0
- package/src/lib/components/kv-pick-list/kv-pick-list.component.scss +19 -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 +130 -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-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 +63 -0
- package/src/lib/components/kv-stepper/kv-stepper.component.scss +41 -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 +24 -0
- package/src/lib/components/kv-table/kv-table.component.html +637 -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 +775 -0
- package/src/lib/components/kv-table-edit/kv-table-edit.component.scss +727 -0
- package/src/lib/components/kv-table-edit/kv-table-edit.component.ts +388 -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-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-workspace/empresa/kv-workspace-empresa.component.html +14 -0
- package/src/lib/components/kv-workspace/empresa/kv-workspace-empresa.component.scss +0 -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 +77 -0
- package/src/lib/components/kv-workspace/kv-workspace.module.ts +43 -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 +12 -0
- package/src/lib/components/kv-workspace/master/kv-workspace-master.component.scss +0 -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 +72 -0
- package/src/lib/components/kv-workspace/workspace/kv-workspace.component.html +50 -0
- package/src/lib/components/kv-workspace/workspace/kv-workspace.component.scss +17 -0
- package/src/lib/components/kv-workspace/workspace/kv-workspace.component.ts +60 -0
- package/{public-api.d.ts → src/public-api.ts} +298 -251
- 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 -302
- 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/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 -131
- package/esm2022/lib/api/helpers/translate-primeng.mjs +0 -23
- package/esm2022/lib/api/modules/primeng.module.mjs +0 -275
- 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 -191
- 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/types/breadcrumb.model.mjs +0 -2
- package/esm2022/lib/components/keevo-components.module.mjs +0 -207
- package/esm2022/lib/components/kv-avatar/kv-avatar.component.mjs +0 -133
- package/esm2022/lib/components/kv-avatar/kv-avatar.module.mjs +0 -55
- package/esm2022/lib/components/kv-button/kv-button.component.mjs +0 -23
- 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 -35
- 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-content-viewer/kv-content-viewer.component.mjs +0 -143
- package/esm2022/lib/components/kv-content-viewer/kv-content-viewer.module.mjs +0 -36
- 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 -160
- package/esm2022/lib/components/kv-file-upload/kv-file-upload.module.mjs +0 -18
- 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-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/kv-editor.component.mjs +0 -148
- 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-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-checkbox/kv-input-text-checkbox.component.mjs +0 -47
- 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 -131
- package/esm2022/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.mjs +0 -48
- 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 -36
- 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 -50
- package/esm2022/lib/components/kv-layout/layout/kv-layout.component.mjs +0 -285
- 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 -97
- 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 -217
- 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 -207
- package/esm2022/lib/components/kv-page-stepper/kv-page-stepper.module.mjs +0 -47
- package/esm2022/lib/components/kv-pick-list/kv-pick-list.component.mjs +0 -144
- 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-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 -76
- package/esm2022/lib/components/kv-stepper/kv-stepper.module.mjs +0 -40
- 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 -323
- 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-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 -72
- package/esm2022/lib/components/kv-workspace/kv-workspace.module.mjs +0 -64
- 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 -63
- package/esm2022/lib/components/kv-workspace/workspace/kv-workspace.component.mjs +0 -74
- package/esm2022/public-api.mjs +0 -256
- package/fesm2022/keevo-components.mjs +0 -9765
- 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 -33
- package/lib/api/components/table/table.paginate.d.ts +0 -10
- package/lib/api/components/table/tableedit.config.column.d.ts +0 -10
- 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 -17
- package/lib/api/helpers/translate-primeng.d.ts +0 -4
- package/lib/api/modules/primeng.module.d.ts +0 -67
- 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 -15
- 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/types/breadcrumb.model.d.ts +0 -5
- package/lib/components/keevo-components.module.d.ts +0 -34
- package/lib/components/kv-avatar/kv-avatar.component.d.ts +0 -35
- package/lib/components/kv-avatar/kv-avatar.module.d.ts +0 -15
- package/lib/components/kv-button/kv-button.component.d.ts +0 -14
- 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 -15
- 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-content-viewer/kv-content-viewer.component.d.ts +0 -44
- package/lib/components/kv-content-viewer/kv-content-viewer.module.d.ts +0 -12
- 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 -32
- package/lib/components/kv-file-upload/kv-file-upload.module.d.ts +0 -8
- 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-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 -33
- 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/kv-editor.component.d.ts +0 -30
- 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-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-checkbox/kv-input-text-checkbox.component.d.ts +0 -17
- 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 -30
- package/lib/components/kv-inputs/kv-multi-select/kv-multi-select.component.d.ts +0 -16
- 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 -24
- 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 -14
- package/lib/components/kv-layout/layout/kv-layout.component.d.ts +0 -123
- 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 -104
- 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 -13
- package/lib/components/kv-pick-list/kv-pick-list.component.d.ts +0 -50
- 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-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 -12
- 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 -61
- 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-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 -20
- package/lib/components/kv-workspace/kv-workspace.module.d.ts +0 -18
- 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 -18
- package/lib/components/kv-workspace/workspace/kv-workspace.component.d.ts +0 -29
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { Component, effect, EventEmitter, inject, input, Input, Output } from '@angular/core';
|
|
2
|
-
import { FormBuilder } from '@angular/forms';
|
|
3
|
-
import { BaseComponentCrudForm } from '../../api/base-components/base-component-crud-form';
|
|
4
|
-
import { KeevoValidators } from '../../../public-api';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "primeng/dynamicdialog";
|
|
7
|
-
import * as i2 from "../../api/services/notification.service";
|
|
8
|
-
import * as i3 from "@angular/router";
|
|
9
|
-
import * as i4 from "@angular/forms";
|
|
10
|
-
import * as i5 from "../kv-inputs/kv-input-password/kv-input-password.component";
|
|
11
|
-
import * as i6 from "../kv-inputs/kv-input-text/kv-input-text.component";
|
|
12
|
-
/**
|
|
13
|
-
* Componente de login personalizado.
|
|
14
|
-
* Este componente permite que os usuários façam login no sistema utilizando o estilo padrão dos sistemas Keevo.
|
|
15
|
-
*/
|
|
16
|
-
export class KvLoginComponent extends BaseComponentCrudForm {
|
|
17
|
-
constructor(dialogService, notificationService, activatedRoute, dynamicDialogRef, dynamicDialogConfig, router) {
|
|
18
|
-
super(dialogService, notificationService, activatedRoute, dynamicDialogRef, dynamicDialogConfig, router);
|
|
19
|
-
/** Evento emitido quando o usuário faz login. */
|
|
20
|
-
this.onLogin = new EventEmitter();
|
|
21
|
-
this.urlRedirect = input('');
|
|
22
|
-
this.urlRedefinirSenha = 'https://keepass.seg.br/redefinirsenha';
|
|
23
|
-
this.urlCadastrarKeepass = 'https://keepass.seg.br/cadastrar';
|
|
24
|
-
this.formBuilder = inject(FormBuilder);
|
|
25
|
-
effect(() => {
|
|
26
|
-
if (this.urlRedirect()) {
|
|
27
|
-
this.urlRedefinirSenha = `${this.urlRedefinirSenha}?redirect=${encodeURIComponent(this.urlRedirect())}`;
|
|
28
|
-
this.urlCadastrarKeepass = `${this.urlCadastrarKeepass}?redirect=${encodeURIComponent(this.urlRedirect())}`;
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
configureForm() {
|
|
33
|
-
this.formGroup = this.formBuilder.group({
|
|
34
|
-
usuario: ['', KeevoValidators.required('Campo obrigatório')],
|
|
35
|
-
senha: ['', KeevoValidators.required('Campo obrigatório')]
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
loadForm(id) {
|
|
39
|
-
}
|
|
40
|
-
save() {
|
|
41
|
-
if (this.validateForm()) {
|
|
42
|
-
this.onLogin.emit(this.formGroup.value);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvLoginComponent, deps: [{ token: i1.DialogService }, { token: i2.NotificationService }, { token: i3.ActivatedRoute }, { token: i1.DynamicDialogRef }, { token: i1.DynamicDialogConfig }, { token: i3.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
46
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.8", type: KvLoginComponent, selector: "kv-login", inputs: { Background: { classPropertyName: "Background", publicName: "Background", isSignal: false, isRequired: false, transformFunction: null }, SystemLogo: { classPropertyName: "SystemLogo", publicName: "SystemLogo", isSignal: false, isRequired: false, transformFunction: null }, SystemColorPrimary: { classPropertyName: "SystemColorPrimary", publicName: "SystemColorPrimary", isSignal: false, isRequired: false, transformFunction: null }, SystemColorSecondary: { classPropertyName: "SystemColorSecondary", publicName: "SystemColorSecondary", isSignal: false, isRequired: false, transformFunction: null }, urlRedirect: { classPropertyName: "urlRedirect", publicName: "urlRedirect", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onLogin: "onLogin" }, usesInheritance: true, ngImport: i0, template: "<div\r\n id=\"kvLogin-container\"\r\n class=\"flex justify-content-center align-items-center flex-column h-screen\"\r\n [style.background-image]=\"'url(' + Background + ')'\"\r\n>\r\n <!-- CARD PRINCIPAL -->\r\n <div\r\n [formGroup]=\"formGroup\"\r\n id=\"kvLogin-card\"\r\n class=\"flex flex-column align-items-center justify-content-between bg-white border-round-xl\"\r\n [style.width.rem]=\"20\"\r\n [style.height.rem]=\"28\"\r\n (keydown.enter)=\"save()\"\r\n >\r\n <!-- LOGO DO SISTEMA -->\r\n <div\r\n class=\"flex flex-row align-items-center justify-content-center p-3 mt-2\"\r\n >\r\n <img alt=\"Logo do Sistema\" [style.height.rem]=\"4\" [src]=\"SystemLogo\" />\r\n </div>\r\n\r\n <!-- INFORMA\u00C7\u00D5ES CENTRAIS -->\r\n <div class=\"grid formgrid p-fluid gap-2 p-3 pb-0\">\r\n <div\r\n class=\"mb-2 w-full flex flex-row align-items-center justify-content-srart gap-1 font-medium\"\r\n >\r\n <img\r\n [style.height.rem]=\"1.5\"\r\n class=\"ml-2\"\r\n alt=\"keepass\"\r\n src=\"https://work-assets.keevo.com.br/img/icone-keepass-preto.png\"\r\n />\r\n <label class=\"mt-1 text-sm\"> Entrar com KeePass </label>\r\n </div>\r\n\r\n <kv-input-text\r\n componentId=\"usuario\"\r\n label=\"CPF ou e-mail\"\r\n formControlName=\"usuario\"\r\n class=\"field col-12\"\r\n >\r\n </kv-input-text>\r\n\r\n <kv-input-password\r\n componentId=\"senha\"\r\n label=\"Senha\"\r\n [toggleMask]=\"true\"\r\n formControlName=\"senha\"\r\n [required]=\"true\"\r\n class=\"field col-12\"\r\n >\r\n </kv-input-password>\r\n\r\n <div\r\n class=\"flex w-full justify-content-end mb-2 h-2\"\r\n id=\"kvLogin-esqueceu-senha\"\r\n >\r\n <a\r\n [href]=\"urlRedefinirSenha\"\r\n target=\"_blank\"\r\n class=\"text-xs\"\r\n [style.color]=\"SystemColorPrimary\"\r\n >\r\n Esqueceu a senha?\r\n </a>\r\n </div>\r\n\r\n <div id=\"kvLogin-cadastro\" class=\"flex w-full justify-content-center h-2\">\r\n <label class=\"text-xs font-normal\">\r\n Novo no KeePass?\r\n <a\r\n [href]=\"urlCadastrarKeepass\"\r\n target=\"_blank\"\r\n class=\"text-xs m-0 p-0\"\r\n [style.color]=\"SystemColorPrimary\"\r\n >\r\n Cadastre-se.\r\n </a>\r\n </label>\r\n </div>\r\n </div>\r\n\r\n <button\r\n id=\"kvLogin-login-button\"\r\n [style.background-color]=\"SystemColorPrimary\"\r\n [style.color]=\"'white'\"\r\n class=\"w-full\"\r\n (click)=\"save()\"\r\n [style.height.px]=\"50\"\r\n >\r\n <strong>Login</strong>\r\n </button>\r\n </div>\r\n\r\n <div class=\"logo-keevo\">\r\n <img src=\"https://work-assets.keevo.com.br/img/keevo-logo-temp.png\" />\r\n <label class=\"text-xs\" [style.color]=\"SystemColorSecondary\">\r\n Copyright \u00A9 2024 - Keevo Ltda Todos os direitos reservados.\r\n </label>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";:host{overflow:hidden}#kvLogin-container{font-family:Inter var,Roboto,Arial,Helvetica,sans-serif!important;background:no-repeat center;background-size:cover;padding:20px}#kvLogin-card{box-shadow:#00000059 0 5px 15px}#kvLogin-esqueceu-senha{position:relative;bottom:.5rem;padding-right:10px}#kvLogin-esqueceu-senha a{text-decoration:none;font-weight:500;cursor:pointer;transition:text-shadow .2s ease-in-out}#kvLogin-esqueceu-senha a:hover{text-shadow:0 0 2px rgba(158,158,158,.692)}#kvLogin-cadastro{margin-bottom:1rem}#kvLogin-cadastro a{text-decoration:none;font-weight:600;cursor:pointer;gap:3px;transition:text-shadow .2s ease-in-out}#kvLogin-cadastro a:hover{text-shadow:0 0 2px rgba(158,158,158,.692)}#kvLogin-login-button{width:100%;height:3rem!important;border-radius:0 0 .5rem .5rem;border:none;cursor:pointer;font-size:14px;transition:all ease-in .2s;-webkit-transition:all ease-in .2s;-moz-transition:all ease-in .2s;-ms-transition:all ease-in .2s;-o-transition:all ease-in .2s}#kvLogin-login-button:hover{opacity:.9}.logo-keevo{text-align:center}.logo-keevo img{height:2rem;width:auto;display:block;margin:0 auto;margin-top:5rem}.logo-keevo label{display:block;margin-top:.5rem}@media (max-height: 700px){.logo-keevo img{margin-top:1rem}#kvLogin-container{padding:10px}#kvLogin-container img{max-width:90%}}\n"], dependencies: [{ kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.KvInputPasswordComponent, selector: "kv-input-password", inputs: ["feedback", "mediumRegex", "strongRegex", "toggleMask"] }, { kind: "component", type: i6.KvInputTextComponent, selector: "kv-input-text", inputs: ["textCaptalized"] }] }); }
|
|
47
|
-
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvLoginComponent, decorators: [{
|
|
49
|
-
type: Component,
|
|
50
|
-
args: [{ selector: 'kv-login', template: "<div\r\n id=\"kvLogin-container\"\r\n class=\"flex justify-content-center align-items-center flex-column h-screen\"\r\n [style.background-image]=\"'url(' + Background + ')'\"\r\n>\r\n <!-- CARD PRINCIPAL -->\r\n <div\r\n [formGroup]=\"formGroup\"\r\n id=\"kvLogin-card\"\r\n class=\"flex flex-column align-items-center justify-content-between bg-white border-round-xl\"\r\n [style.width.rem]=\"20\"\r\n [style.height.rem]=\"28\"\r\n (keydown.enter)=\"save()\"\r\n >\r\n <!-- LOGO DO SISTEMA -->\r\n <div\r\n class=\"flex flex-row align-items-center justify-content-center p-3 mt-2\"\r\n >\r\n <img alt=\"Logo do Sistema\" [style.height.rem]=\"4\" [src]=\"SystemLogo\" />\r\n </div>\r\n\r\n <!-- INFORMA\u00C7\u00D5ES CENTRAIS -->\r\n <div class=\"grid formgrid p-fluid gap-2 p-3 pb-0\">\r\n <div\r\n class=\"mb-2 w-full flex flex-row align-items-center justify-content-srart gap-1 font-medium\"\r\n >\r\n <img\r\n [style.height.rem]=\"1.5\"\r\n class=\"ml-2\"\r\n alt=\"keepass\"\r\n src=\"https://work-assets.keevo.com.br/img/icone-keepass-preto.png\"\r\n />\r\n <label class=\"mt-1 text-sm\"> Entrar com KeePass </label>\r\n </div>\r\n\r\n <kv-input-text\r\n componentId=\"usuario\"\r\n label=\"CPF ou e-mail\"\r\n formControlName=\"usuario\"\r\n class=\"field col-12\"\r\n >\r\n </kv-input-text>\r\n\r\n <kv-input-password\r\n componentId=\"senha\"\r\n label=\"Senha\"\r\n [toggleMask]=\"true\"\r\n formControlName=\"senha\"\r\n [required]=\"true\"\r\n class=\"field col-12\"\r\n >\r\n </kv-input-password>\r\n\r\n <div\r\n class=\"flex w-full justify-content-end mb-2 h-2\"\r\n id=\"kvLogin-esqueceu-senha\"\r\n >\r\n <a\r\n [href]=\"urlRedefinirSenha\"\r\n target=\"_blank\"\r\n class=\"text-xs\"\r\n [style.color]=\"SystemColorPrimary\"\r\n >\r\n Esqueceu a senha?\r\n </a>\r\n </div>\r\n\r\n <div id=\"kvLogin-cadastro\" class=\"flex w-full justify-content-center h-2\">\r\n <label class=\"text-xs font-normal\">\r\n Novo no KeePass?\r\n <a\r\n [href]=\"urlCadastrarKeepass\"\r\n target=\"_blank\"\r\n class=\"text-xs m-0 p-0\"\r\n [style.color]=\"SystemColorPrimary\"\r\n >\r\n Cadastre-se.\r\n </a>\r\n </label>\r\n </div>\r\n </div>\r\n\r\n <button\r\n id=\"kvLogin-login-button\"\r\n [style.background-color]=\"SystemColorPrimary\"\r\n [style.color]=\"'white'\"\r\n class=\"w-full\"\r\n (click)=\"save()\"\r\n [style.height.px]=\"50\"\r\n >\r\n <strong>Login</strong>\r\n </button>\r\n </div>\r\n\r\n <div class=\"logo-keevo\">\r\n <img src=\"https://work-assets.keevo.com.br/img/keevo-logo-temp.png\" />\r\n <label class=\"text-xs\" [style.color]=\"SystemColorSecondary\">\r\n Copyright \u00A9 2024 - Keevo Ltda Todos os direitos reservados.\r\n </label>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";:host{overflow:hidden}#kvLogin-container{font-family:Inter var,Roboto,Arial,Helvetica,sans-serif!important;background:no-repeat center;background-size:cover;padding:20px}#kvLogin-card{box-shadow:#00000059 0 5px 15px}#kvLogin-esqueceu-senha{position:relative;bottom:.5rem;padding-right:10px}#kvLogin-esqueceu-senha a{text-decoration:none;font-weight:500;cursor:pointer;transition:text-shadow .2s ease-in-out}#kvLogin-esqueceu-senha a:hover{text-shadow:0 0 2px rgba(158,158,158,.692)}#kvLogin-cadastro{margin-bottom:1rem}#kvLogin-cadastro a{text-decoration:none;font-weight:600;cursor:pointer;gap:3px;transition:text-shadow .2s ease-in-out}#kvLogin-cadastro a:hover{text-shadow:0 0 2px rgba(158,158,158,.692)}#kvLogin-login-button{width:100%;height:3rem!important;border-radius:0 0 .5rem .5rem;border:none;cursor:pointer;font-size:14px;transition:all ease-in .2s;-webkit-transition:all ease-in .2s;-moz-transition:all ease-in .2s;-ms-transition:all ease-in .2s;-o-transition:all ease-in .2s}#kvLogin-login-button:hover{opacity:.9}.logo-keevo{text-align:center}.logo-keevo img{height:2rem;width:auto;display:block;margin:0 auto;margin-top:5rem}.logo-keevo label{display:block;margin-top:.5rem}@media (max-height: 700px){.logo-keevo img{margin-top:1rem}#kvLogin-container{padding:10px}#kvLogin-container img{max-width:90%}}\n"] }]
|
|
51
|
-
}], ctorParameters: () => [{ type: i1.DialogService }, { type: i2.NotificationService }, { type: i3.ActivatedRoute }, { type: i1.DynamicDialogRef }, { type: i1.DynamicDialogConfig }, { type: i3.Router }], propDecorators: { Background: [{
|
|
52
|
-
type: Input
|
|
53
|
-
}], SystemLogo: [{
|
|
54
|
-
type: Input
|
|
55
|
-
}], SystemColorPrimary: [{
|
|
56
|
-
type: Input
|
|
57
|
-
}], SystemColorSecondary: [{
|
|
58
|
-
type: Input
|
|
59
|
-
}], onLogin: [{
|
|
60
|
-
type: Output
|
|
61
|
-
}] } });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbG9naW4va3YtbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbG9naW4va3YtbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsT0FBTyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsS0FBSyxFQUNMLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQVF2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFFM0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7OztBQUV0RDs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEscUJBQXFCO0lBb0J6RCxZQUNFLGFBQTRCLEVBQzVCLG1CQUF3QyxFQUN4QyxjQUE4QixFQUM5QixnQkFBa0MsRUFDbEMsbUJBQXdDLEVBQ3hDLE1BQWM7UUFDZCxLQUFLLENBQ0gsYUFBYSxFQUNiLG1CQUFtQixFQUNuQixjQUFjLEVBQ2QsZ0JBQWdCLEVBQ2hCLG1CQUFtQixFQUNuQixNQUFNLENBQ1AsQ0FBQTtRQXhCSCxpREFBaUQ7UUFDdkMsWUFBTyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBRS9ELGdCQUFXLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBRWhDLHNCQUFpQixHQUFHLHVDQUF1QyxDQUFDO1FBQzVELHdCQUFtQixHQUFHLGtDQUFrQyxDQUFDO1FBRWpELGdCQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBa0J4QyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1YsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztnQkFDdkIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixhQUFhLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQ3hHLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsYUFBYSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQzlHLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUSxhQUFhO1FBQ3BCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7WUFDdEMsT0FBTyxFQUFFLENBQUMsRUFBRSxFQUFFLGVBQWUsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUM1RCxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsZUFBZSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1NBQzNELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUSxRQUFRLENBQUMsRUFBTztJQUV6QixDQUFDO0lBRVEsSUFBSTtRQUNYLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxQyxDQUFDO0lBQ0gsQ0FBQzs4R0EzRFUsZ0JBQWdCO2tHQUFoQixnQkFBZ0IsbzFCQ3BDN0IsOG5HQXFHQTs7MkZEakVhLGdCQUFnQjtrQkFMNUIsU0FBUzsrQkFDRSxVQUFVO3VPQU9YLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUcsVUFBVTtzQkFBbEIsS0FBSztnQkFFRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRUcsb0JBQW9CO3NCQUE1QixLQUFLO2dCQUVJLE9BQU87c0JBQWhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFjdGl2YXRlZFJvdXRlLFxyXG4gIFJvdXRlclxyXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBlZmZlY3QsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGluamVjdCxcclxuICBpbnB1dCxcclxuICBJbnB1dCxcclxuICBPdXRwdXRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7XHJcbiAgRGlhbG9nU2VydmljZSxcclxuICBEeW5hbWljRGlhbG9nQ29uZmlnLFxyXG4gIER5bmFtaWNEaWFsb2dSZWZcclxufSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5cclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50Q3J1ZEZvcm0gfSBmcm9tICcuLi8uLi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWNydWQtZm9ybSc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9hcGkvc2VydmljZXMvbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBLZWV2b1ZhbGlkYXRvcnMgfSBmcm9tICcuLi8uLi8uLi9wdWJsaWMtYXBpJztcclxuXHJcbi8qKlxyXG4gKiBDb21wb25lbnRlIGRlIGxvZ2luIHBlcnNvbmFsaXphZG8uXHJcbiAqIEVzdGUgY29tcG9uZW50ZSBwZXJtaXRlIHF1ZSBvcyB1c3XDoXJpb3MgZmHDp2FtIGxvZ2luIG5vIHNpc3RlbWEgdXRpbGl6YW5kbyBvIGVzdGlsbyBwYWRyw6NvIGRvcyBzaXN0ZW1hcyBLZWV2by5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtbG9naW4nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9rdi1sb2dpbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4va3YtbG9naW4uY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgS3ZMb2dpbkNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnRDcnVkRm9ybSB7XHJcblxyXG4gIC8qKiBVUkwgZGEgaW1hZ2VtIGRlIGZ1bmRvIGRvIGNvbXBvbmVudGUuICovXHJcbiAgQElucHV0KCkgQmFja2dyb3VuZCE6IGFueTtcclxuICAvKiogVVJMIGRvIGxvZ28gZG8gc2lzdGVtYS4gKi9cclxuICBASW5wdXQoKSBTeXN0ZW1Mb2dvITogYW55O1xyXG4gIC8qKiBDb3IgcHJpbcOhcmlhIGRvIHNpc3RlbWEuICovXHJcbiAgQElucHV0KCkgU3lzdGVtQ29sb3JQcmltYXJ5ITogc3RyaW5nO1xyXG4gIC8qKiBDb3Igc2VjdW5kw6FyaWEgZG8gc2lzdGVtYS4gKi9cclxuICBASW5wdXQoKSBTeXN0ZW1Db2xvclNlY29uZGFyeSE6IHN0cmluZztcclxuICAvKiogRXZlbnRvIGVtaXRpZG8gcXVhbmRvIG8gdXN1w6FyaW8gZmF6IGxvZ2luLiAqL1xyXG4gIEBPdXRwdXQoKSBvbkxvZ2luOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICB1cmxSZWRpcmVjdCA9IGlucHV0PHN0cmluZz4oJycpO1xyXG5cclxuICB1cmxSZWRlZmluaXJTZW5oYSA9ICdodHRwczovL2tlZXBhc3Muc2VnLmJyL3JlZGVmaW5pcnNlbmhhJztcclxuICB1cmxDYWRhc3RyYXJLZWVwYXNzID0gJ2h0dHBzOi8va2VlcGFzcy5zZWcuYnIvY2FkYXN0cmFyJztcclxuXHJcbiAgcHJpdmF0ZSBmb3JtQnVpbGRlciA9IGluamVjdChGb3JtQnVpbGRlcik7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcclxuICAgIG5vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICBkeW5hbWljRGlhbG9nUmVmOiBEeW5hbWljRGlhbG9nUmVmLFxyXG4gICAgZHluYW1pY0RpYWxvZ0NvbmZpZzogRHluYW1pY0RpYWxvZ0NvbmZpZyxcclxuICAgIHJvdXRlcjogUm91dGVyKSB7XHJcbiAgICBzdXBlcihcclxuICAgICAgZGlhbG9nU2VydmljZSxcclxuICAgICAgbm90aWZpY2F0aW9uU2VydmljZSxcclxuICAgICAgYWN0aXZhdGVkUm91dGUsXHJcbiAgICAgIGR5bmFtaWNEaWFsb2dSZWYsXHJcbiAgICAgIGR5bmFtaWNEaWFsb2dDb25maWcsXHJcbiAgICAgIHJvdXRlclxyXG4gICAgKVxyXG5cclxuICAgIGVmZmVjdCgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLnVybFJlZGlyZWN0KCkpIHtcclxuICAgICAgICB0aGlzLnVybFJlZGVmaW5pclNlbmhhID0gYCR7dGhpcy51cmxSZWRlZmluaXJTZW5oYX0/cmVkaXJlY3Q9JHtlbmNvZGVVUklDb21wb25lbnQodGhpcy51cmxSZWRpcmVjdCgpKX1gO1xyXG4gICAgICAgIHRoaXMudXJsQ2FkYXN0cmFyS2VlcGFzcyA9IGAke3RoaXMudXJsQ2FkYXN0cmFyS2VlcGFzc30/cmVkaXJlY3Q9JHtlbmNvZGVVUklDb21wb25lbnQodGhpcy51cmxSZWRpcmVjdCgpKX1gO1xyXG4gICAgICB9IFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBjb25maWd1cmVGb3JtKCk6IHZvaWQge1xyXG4gICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcclxuICAgICAgdXN1YXJpbzogWycnLCBLZWV2b1ZhbGlkYXRvcnMucmVxdWlyZWQoJ0NhbXBvIG9icmlnYXTDs3JpbycpXSxcclxuICAgICAgc2VuaGE6IFsnJywgS2Vldm9WYWxpZGF0b3JzLnJlcXVpcmVkKCdDYW1wbyBvYnJpZ2F0w7NyaW8nKV1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgbG9hZEZvcm0oaWQ6IGFueSk6IHZvaWQge1xyXG5cclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIHNhdmUoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy52YWxpZGF0ZUZvcm0oKSkge1xyXG4gICAgICB0aGlzLm9uTG9naW4uZW1pdCh0aGlzLmZvcm1Hcm91cC52YWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBpZD1cImt2TG9naW4tY29udGFpbmVyXCJcclxuICBjbGFzcz1cImZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW4gaC1zY3JlZW5cIlxyXG4gIFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cIid1cmwoJyArIEJhY2tncm91bmQgKyAnKSdcIlxyXG4+XHJcbiAgPCEtLSBDQVJEIFBSSU5DSVBBTCAtLT5cclxuICA8ZGl2XHJcbiAgICBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiXHJcbiAgICBpZD1cImt2TG9naW4tY2FyZFwiXHJcbiAgICBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGJnLXdoaXRlIGJvcmRlci1yb3VuZC14bFwiXHJcbiAgICBbc3R5bGUud2lkdGgucmVtXT1cIjIwXCJcclxuICAgIFtzdHlsZS5oZWlnaHQucmVtXT1cIjI4XCJcclxuICAgIChrZXlkb3duLmVudGVyKT1cInNhdmUoKVwiXHJcbiAgPlxyXG4gICAgPCEtLSBMT0dPIERPIFNJU1RFTUEgLS0+XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwiZmxleCBmbGV4LXJvdyBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciBwLTMgbXQtMlwiXHJcbiAgICA+XHJcbiAgICAgIDxpbWcgYWx0PVwiTG9nbyBkbyBTaXN0ZW1hXCIgW3N0eWxlLmhlaWdodC5yZW1dPVwiNFwiIFtzcmNdPVwiU3lzdGVtTG9nb1wiIC8+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8IS0tIElORk9STUHDh8OVRVMgQ0VOVFJBSVMgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBmb3JtZ3JpZCBwLWZsdWlkIGdhcC0yIHAtMyBwYi0wXCI+XHJcbiAgICAgIDxkaXZcclxuICAgICAgICBjbGFzcz1cIm1iLTIgdy1mdWxsIGZsZXggZmxleC1yb3cgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1zcmFydCBnYXAtMSBmb250LW1lZGl1bVwiXHJcbiAgICAgID5cclxuICAgICAgICA8aW1nXHJcbiAgICAgICAgICBbc3R5bGUuaGVpZ2h0LnJlbV09XCIxLjVcIlxyXG4gICAgICAgICAgY2xhc3M9XCJtbC0yXCJcclxuICAgICAgICAgIGFsdD1cImtlZXBhc3NcIlxyXG4gICAgICAgICAgc3JjPVwiaHR0cHM6Ly93b3JrLWFzc2V0cy5rZWV2by5jb20uYnIvaW1nL2ljb25lLWtlZXBhc3MtcHJldG8ucG5nXCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxsYWJlbCBjbGFzcz1cIm10LTEgdGV4dC1zbVwiPiBFbnRyYXIgY29tIEtlZVBhc3MgPC9sYWJlbD5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8a3YtaW5wdXQtdGV4dFxyXG4gICAgICAgIGNvbXBvbmVudElkPVwidXN1YXJpb1wiXHJcbiAgICAgICAgbGFiZWw9XCJDUEYgb3UgZS1tYWlsXCJcclxuICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ1c3VhcmlvXCJcclxuICAgICAgICBjbGFzcz1cImZpZWxkIGNvbC0xMlwiXHJcbiAgICAgID5cclxuICAgICAgPC9rdi1pbnB1dC10ZXh0PlxyXG5cclxuICAgICAgPGt2LWlucHV0LXBhc3N3b3JkXHJcbiAgICAgICAgY29tcG9uZW50SWQ9XCJzZW5oYVwiXHJcbiAgICAgICAgbGFiZWw9XCJTZW5oYVwiXHJcbiAgICAgICAgW3RvZ2dsZU1hc2tdPVwidHJ1ZVwiXHJcbiAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic2VuaGFcIlxyXG4gICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgICBjbGFzcz1cImZpZWxkIGNvbC0xMlwiXHJcbiAgICAgID5cclxuICAgICAgPC9rdi1pbnB1dC1wYXNzd29yZD5cclxuXHJcbiAgICAgIDxkaXZcclxuICAgICAgICBjbGFzcz1cImZsZXggdy1mdWxsIGp1c3RpZnktY29udGVudC1lbmQgbWItMiBoLTJcIlxyXG4gICAgICAgIGlkPVwia3ZMb2dpbi1lc3F1ZWNldS1zZW5oYVwiXHJcbiAgICAgID5cclxuICAgICAgICA8YVxyXG4gICAgICAgICAgW2hyZWZdPVwidXJsUmVkZWZpbmlyU2VuaGFcIlxyXG4gICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcclxuICAgICAgICAgIGNsYXNzPVwidGV4dC14c1wiXHJcbiAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiU3lzdGVtQ29sb3JQcmltYXJ5XCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICBFc3F1ZWNldSBhIHNlbmhhP1xyXG4gICAgICAgIDwvYT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGlkPVwia3ZMb2dpbi1jYWRhc3Ryb1wiIGNsYXNzPVwiZmxleCB3LWZ1bGwganVzdGlmeS1jb250ZW50LWNlbnRlciBoLTJcIj5cclxuICAgICAgICA8bGFiZWwgY2xhc3M9XCJ0ZXh0LXhzIGZvbnQtbm9ybWFsXCI+XHJcbiAgICAgICAgICBOb3ZvIG5vIEtlZVBhc3M/XHJcbiAgICAgICAgICA8YVxyXG4gICAgICAgICAgICBbaHJlZl09XCJ1cmxDYWRhc3RyYXJLZWVwYXNzXCJcclxuICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LXhzIG0tMCBwLTBcIlxyXG4gICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiU3lzdGVtQ29sb3JQcmltYXJ5XCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgQ2FkYXN0cmUtc2UuXHJcbiAgICAgICAgICA8L2E+XHJcbiAgICAgICAgPC9sYWJlbD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8YnV0dG9uXHJcbiAgICAgIGlkPVwia3ZMb2dpbi1sb2dpbi1idXR0b25cIlxyXG4gICAgICBbc3R5bGUuYmFja2dyb3VuZC1jb2xvcl09XCJTeXN0ZW1Db2xvclByaW1hcnlcIlxyXG4gICAgICBbc3R5bGUuY29sb3JdPVwiJ3doaXRlJ1wiXHJcbiAgICAgIGNsYXNzPVwidy1mdWxsXCJcclxuICAgICAgKGNsaWNrKT1cInNhdmUoKVwiXHJcbiAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiNTBcIlxyXG4gICAgPlxyXG4gICAgICA8c3Ryb25nPkxvZ2luPC9zdHJvbmc+XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImxvZ28ta2Vldm9cIj5cclxuICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly93b3JrLWFzc2V0cy5rZWV2by5jb20uYnIvaW1nL2tlZXZvLWxvZ28tdGVtcC5wbmdcIiAvPlxyXG4gICAgPGxhYmVsIGNsYXNzPVwidGV4dC14c1wiIFtzdHlsZS5jb2xvcl09XCJTeXN0ZW1Db2xvclNlY29uZGFyeVwiPlxyXG4gICAgICBDb3B5cmlnaHQgwqkgMjAyNCAtIEtlZXZvIEx0ZGEgVG9kb3Mgb3MgZGlyZWl0b3MgcmVzZXJ2YWRvcy5cclxuICAgIDwvbGFiZWw+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
3
|
-
import { NgModule } from '@angular/core';
|
|
4
|
-
import { ProgressSpinnerModule } from 'primeng/progressspinner';
|
|
5
|
-
import { KvButtonsModule } from '../kv-buttons/kv-button.module';
|
|
6
|
-
import { KvInputsModule } from '../kv-inputs/kv-inputs.module';
|
|
7
|
-
import { KvLoginComponent } from './kv-login.component';
|
|
8
|
-
import { PrimeNgModule } from '../../api/modules/primeng.module';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
export class KvLoginModule {
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvLoginModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
12
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.8", ngImport: i0, type: KvLoginModule, declarations: [KvLoginComponent], imports: [CommonModule,
|
|
13
|
-
PrimeNgModule,
|
|
14
|
-
FormsModule,
|
|
15
|
-
ReactiveFormsModule,
|
|
16
|
-
KvInputsModule,
|
|
17
|
-
KvButtonsModule,
|
|
18
|
-
ProgressSpinnerModule], exports: [KvLoginComponent] }); }
|
|
19
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvLoginModule, imports: [CommonModule,
|
|
20
|
-
PrimeNgModule,
|
|
21
|
-
FormsModule,
|
|
22
|
-
ReactiveFormsModule,
|
|
23
|
-
KvInputsModule,
|
|
24
|
-
KvButtonsModule,
|
|
25
|
-
ProgressSpinnerModule] }); }
|
|
26
|
-
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvLoginModule, decorators: [{
|
|
28
|
-
type: NgModule,
|
|
29
|
-
args: [{
|
|
30
|
-
declarations: [
|
|
31
|
-
KvLoginComponent
|
|
32
|
-
],
|
|
33
|
-
imports: [
|
|
34
|
-
CommonModule,
|
|
35
|
-
PrimeNgModule,
|
|
36
|
-
FormsModule,
|
|
37
|
-
ReactiveFormsModule,
|
|
38
|
-
KvInputsModule,
|
|
39
|
-
KvButtonsModule,
|
|
40
|
-
ProgressSpinnerModule,
|
|
41
|
-
],
|
|
42
|
-
exports: [
|
|
43
|
-
KvLoginComponent
|
|
44
|
-
]
|
|
45
|
-
}]
|
|
46
|
-
}] });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbG9naW4ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbG9naW4va3YtbG9naW4ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQ0wsV0FBVyxFQUNYLG1CQUFtQixFQUNwQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFaEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7O0FBbUJqRSxNQUFNLE9BQU8sYUFBYTs4R0FBYixhQUFhOytHQUFiLGFBQWEsaUJBZnRCLGdCQUFnQixhQUdoQixZQUFZO1lBQ1osYUFBYTtZQUNiLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsY0FBYztZQUNkLGVBQWU7WUFDZixxQkFBcUIsYUFHckIsZ0JBQWdCOytHQUdQLGFBQWEsWUFadEIsWUFBWTtZQUNaLGFBQWE7WUFDYixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLGNBQWM7WUFDZCxlQUFlO1lBQ2YscUJBQXFCOzsyRkFNWixhQUFhO2tCQWpCekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osZ0JBQWdCO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixhQUFhO3dCQUNiLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YscUJBQXFCO3FCQUN0QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZ0JBQWdCO3FCQUNqQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5pbXBvcnQge1xyXG4gIEZvcm1zTW9kdWxlLFxyXG4gIFJlYWN0aXZlRm9ybXNNb2R1bGVcclxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Byb2dyZXNzc3Bpbm5lcic7XHJcblxyXG5pbXBvcnQgeyBLdkJ1dHRvbnNNb2R1bGUgfSBmcm9tICcuLi9rdi1idXR0b25zL2t2LWJ1dHRvbi5tb2R1bGUnO1xyXG5pbXBvcnQgeyBLdklucHV0c01vZHVsZSB9IGZyb20gJy4uL2t2LWlucHV0cy9rdi1pbnB1dHMubW9kdWxlJztcclxuaW1wb3J0IHsgS3ZMb2dpbkNvbXBvbmVudCB9IGZyb20gJy4va3YtbG9naW4uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUHJpbWVOZ01vZHVsZSB9IGZyb20gJy4uLy4uL2FwaS9tb2R1bGVzL3ByaW1lbmcubW9kdWxlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBLdkxvZ2luQ29tcG9uZW50XHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBQcmltZU5nTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgS3ZJbnB1dHNNb2R1bGUsXHJcbiAgICBLdkJ1dHRvbnNNb2R1bGUsXHJcbiAgICBQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBLdkxvZ2luQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgS3ZMb2dpbk1vZHVsZSB7IH1cclxuIl19
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
import { Component, HostListener, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "primeng/dynamicdialog";
|
|
4
|
-
import * as i2 from "@angular/common";
|
|
5
|
-
import * as i3 from "../kv-button/kv-button.component";
|
|
6
|
-
export class KvModalComponent {
|
|
7
|
-
constructor(dynamicDialogRef) {
|
|
8
|
-
this.dynamicDialogRef = dynamicDialogRef;
|
|
9
|
-
/**
|
|
10
|
-
* Ações do Dialog
|
|
11
|
-
*/
|
|
12
|
-
this.actions = [];
|
|
13
|
-
this.actionsPosition = 'right';
|
|
14
|
-
this.justify_content = 'justify-content-start';
|
|
15
|
-
}
|
|
16
|
-
ngOnInit() {
|
|
17
|
-
this.addSubTitle();
|
|
18
|
-
this.setMarginBottom();
|
|
19
|
-
this.defPositionButtons();
|
|
20
|
-
}
|
|
21
|
-
onWindowResize() {
|
|
22
|
-
this.setMarginBottom();
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Adiciona sub-título à tela
|
|
26
|
-
*/
|
|
27
|
-
addSubTitle() {
|
|
28
|
-
if (this.subtitle) {
|
|
29
|
-
const headerElement = document.querySelector('.p-dialog .p-dialog-header');
|
|
30
|
-
if (headerElement) {
|
|
31
|
-
const subtitleElement = document.createElement('span');
|
|
32
|
-
subtitleElement.textContent = this.subtitle;
|
|
33
|
-
subtitleElement.style.fontSize = '0.75rem';
|
|
34
|
-
subtitleElement.style.width = '100%';
|
|
35
|
-
subtitleElement.style.marginLeft = '2px';
|
|
36
|
-
headerElement.appendChild(subtitleElement);
|
|
37
|
-
}
|
|
38
|
-
if (this.subHeader) {
|
|
39
|
-
const headerElement = document.querySelector('.p-dialog .p-dialog-header');
|
|
40
|
-
const subHeader = this.subHeader.nativeElement;
|
|
41
|
-
if (headerElement && this.subHeader) {
|
|
42
|
-
subHeader.style.width = '100%';
|
|
43
|
-
subHeader.style.marginLeft = '2px';
|
|
44
|
-
headerElement.appendChild(this.subHeader.nativeElement);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
defPositionButtons() {
|
|
50
|
-
if (this.actionsPosition === 'right') {
|
|
51
|
-
this.justify_content = 'justify-content-end';
|
|
52
|
-
}
|
|
53
|
-
if (this.actionsPosition === 'center') {
|
|
54
|
-
this.justify_content = 'justify-content-center';
|
|
55
|
-
}
|
|
56
|
-
if (this.actionsPosition === 'left') {
|
|
57
|
-
this.justify_content = 'justify-content-start';
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
setMarginBottom() {
|
|
61
|
-
let actionsFieldHeight = document.getElementById('actions-field')?.offsetHeight;
|
|
62
|
-
let divBox = document.getElementById('content-modal');
|
|
63
|
-
if (divBox) {
|
|
64
|
-
if (actionsFieldHeight) {
|
|
65
|
-
divBox.style.marginBottom = `${actionsFieldHeight + 30}px`;
|
|
66
|
-
}
|
|
67
|
-
else {
|
|
68
|
-
divBox.style.marginBottom = `50px`;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
clickExecute(action) {
|
|
73
|
-
if (action.command) {
|
|
74
|
-
action.command();
|
|
75
|
-
if (action.closeAfterClick != false)
|
|
76
|
-
this.dynamicDialogRef.close();
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvModalComponent, deps: [{ token: i1.DynamicDialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
80
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.8", type: KvModalComponent, selector: "kv-modal", inputs: { actions: "actions", actionsPosition: "actionsPosition", subtitle: "subtitle", subHeader: "subHeader" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, ngImport: i0, template: "<!-- RENDERIZA\u00C7\u00C3O DO MODAL -->\r\n<div class=\"col-12 mb-4\" id=\"content-modal\">\r\n <!-- COLOCAR UM COMPONENTE SUBHEADER AQUI -->\r\n\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<!-- RENDERIZA\u00C7\u00C3O DOS BOT\u00D5ES -->\r\n\r\n<div class=\"bg-white flex flex-row flex-wrap gap-2 p-2 modal-barra-acoes {{justify_content}}\" *ngIf=\"actions\" id=\"actions-field\">\r\n <kv-button\r\n *ngFor=\" let action of actions\"\r\n [ngClass]=\"action.visible==false?'hidden':''\"\r\n icon=\"{{action.icon}}\"\r\n label=\"{{action.label}}\"\r\n [disabled]=\"action.disabled || false\"\r\n (onClick)=\"clickExecute(action)\"\r\n [severity]=\"action.severity ||'primary'\"\r\n />\r\n</div>\r\n", styles: ["*{padding-bottom:0rem;padding-top:0rem}.barra-acoes{position:fixed;bottom:0;left:0;right:0;background-color:#fff;padding:10px;z-index:999}#page-form-container{padding-bottom:40px}@media screen and (max-width: 991px){#page-form-container{padding-bottom:100px}}.modal-barra-acoes{position:fixed;bottom:0;left:0;right:0;z-index:999;margin-right:1.5rem}::ng-deep .p-dialog .p-dialog-header .p-dialog-title{font-size:1.125rem}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.KvButtonComponent, selector: "kv-button", inputs: ["fullWidth", "type", "loading", "severity", "size", "icon", "label", "disabled"], outputs: ["onClick"] }] }); }
|
|
81
|
-
}
|
|
82
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvModalComponent, decorators: [{
|
|
83
|
-
type: Component,
|
|
84
|
-
args: [{ selector: 'kv-modal', template: "<!-- RENDERIZA\u00C7\u00C3O DO MODAL -->\r\n<div class=\"col-12 mb-4\" id=\"content-modal\">\r\n <!-- COLOCAR UM COMPONENTE SUBHEADER AQUI -->\r\n\r\n <ng-content></ng-content>\r\n</div>\r\n\r\n<!-- RENDERIZA\u00C7\u00C3O DOS BOT\u00D5ES -->\r\n\r\n<div class=\"bg-white flex flex-row flex-wrap gap-2 p-2 modal-barra-acoes {{justify_content}}\" *ngIf=\"actions\" id=\"actions-field\">\r\n <kv-button\r\n *ngFor=\" let action of actions\"\r\n [ngClass]=\"action.visible==false?'hidden':''\"\r\n icon=\"{{action.icon}}\"\r\n label=\"{{action.label}}\"\r\n [disabled]=\"action.disabled || false\"\r\n (onClick)=\"clickExecute(action)\"\r\n [severity]=\"action.severity ||'primary'\"\r\n />\r\n</div>\r\n", styles: ["*{padding-bottom:0rem;padding-top:0rem}.barra-acoes{position:fixed;bottom:0;left:0;right:0;background-color:#fff;padding:10px;z-index:999}#page-form-container{padding-bottom:40px}@media screen and (max-width: 991px){#page-form-container{padding-bottom:100px}}.modal-barra-acoes{position:fixed;bottom:0;left:0;right:0;z-index:999;margin-right:1.5rem}::ng-deep .p-dialog .p-dialog-header .p-dialog-title{font-size:1.125rem}\n"] }]
|
|
85
|
-
}], ctorParameters: () => [{ type: i1.DynamicDialogRef }], propDecorators: { actions: [{
|
|
86
|
-
type: Input
|
|
87
|
-
}], actionsPosition: [{
|
|
88
|
-
type: Input
|
|
89
|
-
}], subtitle: [{
|
|
90
|
-
type: Input
|
|
91
|
-
}], subHeader: [{
|
|
92
|
-
type: Input
|
|
93
|
-
}], onWindowResize: [{
|
|
94
|
-
type: HostListener,
|
|
95
|
-
args: ['window:resize', ['$event']]
|
|
96
|
-
}] } });
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUNOLE1BQU0sZUFBZSxDQUFDOzs7OztBQVd2QixNQUFNLE9BQU8sZ0JBQWdCO0lBRTNCLFlBQXNCLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBRXhEOztXQUVHO1FBQ00sWUFBTyxHQUFpQixFQUFFLENBQUM7UUFDM0Isb0JBQWUsR0FBVyxPQUFPLENBQUM7UUFLM0Msb0JBQWUsR0FBVyx1QkFBdUIsQ0FBQztJQVhVLENBQUM7SUFjN0QsUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUdELGNBQWM7UUFDWixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7SUFDeEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUVULElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsNEJBQTRCLENBQUMsQ0FBQztZQUMzRSxJQUFJLGFBQWEsRUFBRSxDQUFDO2dCQUNsQixNQUFNLGVBQWUsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN2RCxlQUFlLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7Z0JBQzVDLGVBQWUsQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQTtnQkFDMUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFBO2dCQUNwQyxlQUFlLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUE7Z0JBRXhDLGFBQWEsQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDN0MsQ0FBQztZQUVELElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNuQixNQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLDRCQUE0QixDQUFDLENBQUM7Z0JBQzNFLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDO2dCQUMvQyxJQUFJLGFBQWEsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7b0JBQ3BDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQTtvQkFDOUIsU0FBUyxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFBO29CQUVsQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUM7Z0JBQzFELENBQUM7WUFDSCxDQUFDO1FBRUgsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxJQUFJLENBQUMsZUFBZSxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ3JDLElBQUksQ0FBQyxlQUFlLEdBQUcscUJBQXFCLENBQUE7UUFDOUMsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLGVBQWUsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUN0QyxJQUFJLENBQUMsZUFBZSxHQUFHLHdCQUF3QixDQUFBO1FBQ2pELENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssTUFBTSxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLGVBQWUsR0FBRyx1QkFBdUIsQ0FBQTtRQUNoRCxDQUFDO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLGtCQUFrQixHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLEVBQUUsWUFBWSxDQUFDO1FBRWhGLElBQUksTUFBTSxHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUM7UUFFdEQsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUVYLElBQUksa0JBQWtCLEVBQUUsQ0FBQztnQkFDdkIsTUFBTSxDQUFDLEtBQUssQ0FBQyxZQUFZLEdBQUcsR0FBRyxrQkFBa0IsR0FBRyxFQUFFLElBQUksQ0FBQztZQUM3RCxDQUFDO2lCQUNJLENBQUM7Z0JBQ0osTUFBTSxDQUFDLEtBQUssQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDO1lBQ3JDLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELFlBQVksQ0FBQyxNQUFrQjtRQUM3QixJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUVuQixNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFFakIsSUFBSSxNQUFNLENBQUMsZUFBZSxJQUFJLEtBQUs7Z0JBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3JFLENBQUM7SUFDSCxDQUFDOzhHQTdGVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQixzT0NoQjdCLDJ2QkFvQkE7OzJGREphLGdCQUFnQjtrQkFMNUIsU0FBUzsrQkFDRSxVQUFVO3FGQVdYLE9BQU87c0JBQWYsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFZTixjQUFjO3NCQURiLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgSW5wdXRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IER5bmFtaWNEaWFsb2dSZWYgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5cclxuaW1wb3J0IHsgQWN0aW9uSXRlbSB9IGZyb20gJy4uLy4uLy4uL3B1YmxpYy1hcGknO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdrdi1tb2RhbCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2t2LW1vZGFsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9rdi1tb2RhbC5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLdk1vZGFsQ29tcG9uZW50IHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGR5bmFtaWNEaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYpIHsgfVxyXG5cclxuICAvKipcclxuICAgKiBBw6fDtWVzIGRvIERpYWxvZ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGFjdGlvbnM6IEFjdGlvbkl0ZW1bXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGFjdGlvbnNQb3NpdGlvbjogc3RyaW5nID0gJ3JpZ2h0JztcclxuICBASW5wdXQoKSBzdWJ0aXRsZSE6IHN0cmluZztcclxuXHJcbiAgQElucHV0KCkgc3ViSGVhZGVyITogRWxlbWVudFJlZjtcclxuXHJcbiAganVzdGlmeV9jb250ZW50OiBzdHJpbmcgPSAnanVzdGlmeS1jb250ZW50LXN0YXJ0JztcclxuXHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hZGRTdWJUaXRsZSgpO1xyXG4gICAgdGhpcy5zZXRNYXJnaW5Cb3R0b20oKTtcclxuICAgIHRoaXMuZGVmUG9zaXRpb25CdXR0b25zKCk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcclxuICBvbldpbmRvd1Jlc2l6ZSgpIHtcclxuICAgIHRoaXMuc2V0TWFyZ2luQm90dG9tKClcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFkaWNpb25hIHN1Yi10w610dWxvIMOgIHRlbGFcclxuICAgKi9cclxuICBhZGRTdWJUaXRsZSgpIHtcclxuXHJcbiAgICBpZiAodGhpcy5zdWJ0aXRsZSkge1xyXG4gICAgICBjb25zdCBoZWFkZXJFbGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLnAtZGlhbG9nIC5wLWRpYWxvZy1oZWFkZXInKTtcclxuICAgICAgaWYgKGhlYWRlckVsZW1lbnQpIHtcclxuICAgICAgICBjb25zdCBzdWJ0aXRsZUVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XHJcbiAgICAgICAgc3VidGl0bGVFbGVtZW50LnRleHRDb250ZW50ID0gdGhpcy5zdWJ0aXRsZTtcclxuICAgICAgICBzdWJ0aXRsZUVsZW1lbnQuc3R5bGUuZm9udFNpemUgPSAnMC43NXJlbSdcclxuICAgICAgICBzdWJ0aXRsZUVsZW1lbnQuc3R5bGUud2lkdGggPSAnMTAwJSdcclxuICAgICAgICBzdWJ0aXRsZUVsZW1lbnQuc3R5bGUubWFyZ2luTGVmdCA9ICcycHgnXHJcblxyXG4gICAgICAgIGhlYWRlckVsZW1lbnQuYXBwZW5kQ2hpbGQoc3VidGl0bGVFbGVtZW50KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHRoaXMuc3ViSGVhZGVyKSB7XHJcbiAgICAgICAgY29uc3QgaGVhZGVyRWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5wLWRpYWxvZyAucC1kaWFsb2ctaGVhZGVyJyk7XHJcbiAgICAgICAgY29uc3Qgc3ViSGVhZGVyID0gdGhpcy5zdWJIZWFkZXIubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBpZiAoaGVhZGVyRWxlbWVudCAmJiB0aGlzLnN1YkhlYWRlcikge1xyXG4gICAgICAgICAgc3ViSGVhZGVyLnN0eWxlLndpZHRoID0gJzEwMCUnXHJcbiAgICAgICAgICBzdWJIZWFkZXIuc3R5bGUubWFyZ2luTGVmdCA9ICcycHgnXHJcbiAgXHJcbiAgICAgICAgICBoZWFkZXJFbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuc3ViSGVhZGVyLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGRlZlBvc2l0aW9uQnV0dG9ucygpIHtcclxuICAgIGlmICh0aGlzLmFjdGlvbnNQb3NpdGlvbiA9PT0gJ3JpZ2h0Jykge1xyXG4gICAgICB0aGlzLmp1c3RpZnlfY29udGVudCA9ICdqdXN0aWZ5LWNvbnRlbnQtZW5kJ1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuYWN0aW9uc1Bvc2l0aW9uID09PSAnY2VudGVyJykge1xyXG4gICAgICB0aGlzLmp1c3RpZnlfY29udGVudCA9ICdqdXN0aWZ5LWNvbnRlbnQtY2VudGVyJ1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuYWN0aW9uc1Bvc2l0aW9uID09PSAnbGVmdCcpIHtcclxuICAgICAgdGhpcy5qdXN0aWZ5X2NvbnRlbnQgPSAnanVzdGlmeS1jb250ZW50LXN0YXJ0J1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0TWFyZ2luQm90dG9tKCkge1xyXG4gICAgbGV0IGFjdGlvbnNGaWVsZEhlaWdodCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdhY3Rpb25zLWZpZWxkJyk/Lm9mZnNldEhlaWdodDtcclxuXHJcbiAgICBsZXQgZGl2Qm94ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NvbnRlbnQtbW9kYWwnKTtcclxuICAgIFxyXG4gICAgaWYgKGRpdkJveCkge1xyXG4gICAgICBcclxuICAgICAgaWYgKGFjdGlvbnNGaWVsZEhlaWdodCkge1xyXG4gICAgICAgIGRpdkJveC5zdHlsZS5tYXJnaW5Cb3R0b20gPSBgJHthY3Rpb25zRmllbGRIZWlnaHQgKyAzMH1weGA7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgZGl2Qm94LnN0eWxlLm1hcmdpbkJvdHRvbSA9IGA1MHB4YDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2xpY2tFeGVjdXRlKGFjdGlvbjogQWN0aW9uSXRlbSkge1xyXG4gICAgaWYgKGFjdGlvbi5jb21tYW5kKSB7XHJcblxyXG4gICAgICBhY3Rpb24uY29tbWFuZCgpO1xyXG5cclxuICAgICAgaWYgKGFjdGlvbi5jbG9zZUFmdGVyQ2xpY2sgIT0gZmFsc2UpIHRoaXMuZHluYW1pY0RpYWxvZ1JlZi5jbG9zZSgpO1xyXG4gICAgfVxyXG4gIH1cclxufSIsIjwhLS0gUkVOREVSSVpBw4fDg08gRE8gTU9EQUwgLS0+XHJcbjxkaXYgY2xhc3M9XCJjb2wtMTIgbWItNFwiIGlkPVwiY29udGVudC1tb2RhbFwiPlxyXG4gICAgPCEtLSBDT0xPQ0FSIFVNIENPTVBPTkVOVEUgU1VCSEVBREVSIEFRVUkgLS0+XHJcblxyXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG48L2Rpdj5cclxuXHJcbjwhLS0gUkVOREVSSVpBw4fDg08gRE9TIEJPVMOVRVMgLS0+XHJcblxyXG48ZGl2IGNsYXNzPVwiYmctd2hpdGUgZmxleCBmbGV4LXJvdyBmbGV4LXdyYXAgZ2FwLTIgcC0yIG1vZGFsLWJhcnJhLWFjb2VzIHt7anVzdGlmeV9jb250ZW50fX1cIiAqbmdJZj1cImFjdGlvbnNcIiBpZD1cImFjdGlvbnMtZmllbGRcIj5cclxuICAgIDxrdi1idXR0b25cclxuICAgICAgICAqbmdGb3I9XCIgbGV0IGFjdGlvbiBvZiBhY3Rpb25zXCJcclxuICAgICAgICBbbmdDbGFzc109XCJhY3Rpb24udmlzaWJsZT09ZmFsc2U/J2hpZGRlbic6JydcIlxyXG4gICAgICAgIGljb249XCJ7e2FjdGlvbi5pY29ufX1cIlxyXG4gICAgICAgIGxhYmVsPVwie3thY3Rpb24ubGFiZWx9fVwiXHJcbiAgICAgICAgW2Rpc2FibGVkXT1cImFjdGlvbi5kaXNhYmxlZCB8fCBmYWxzZVwiXHJcbiAgICAgICAgKG9uQ2xpY2spPVwiY2xpY2tFeGVjdXRlKGFjdGlvbilcIlxyXG4gICAgICAgIFtzZXZlcml0eV09XCJhY3Rpb24uc2V2ZXJpdHkgfHwncHJpbWFyeSdcIlxyXG4gICAgLz5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { KvModalComponent } from './kv-modal.component';
|
|
4
|
-
import { PrimeNgModule } from '../../api/modules/primeng.module';
|
|
5
|
-
import { KvButtonModule } from '../kv-button/kv-button.module';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class KvModalModule {
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.8", ngImport: i0, type: KvModalModule, declarations: [KvModalComponent], imports: [CommonModule, PrimeNgModule, KvButtonModule], exports: [KvModalComponent] }); }
|
|
10
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvModalModule, imports: [CommonModule, PrimeNgModule, KvButtonModule] }); }
|
|
11
|
-
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvModalModule, decorators: [{
|
|
13
|
-
type: NgModule,
|
|
14
|
-
args: [{
|
|
15
|
-
declarations: [KvModalComponent],
|
|
16
|
-
imports: [CommonModule, PrimeNgModule, KvButtonModule],
|
|
17
|
-
exports: [KvModalComponent],
|
|
18
|
-
}]
|
|
19
|
-
}] });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtbW9kYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBTy9ELE1BQU0sT0FBTyxhQUFhOzhHQUFiLGFBQWE7K0dBQWIsYUFBYSxpQkFKVCxnQkFBZ0IsYUFDckIsWUFBWSxFQUFFLGFBQWEsRUFBRSxjQUFjLGFBQzNDLGdCQUFnQjsrR0FFZixhQUFhLFlBSGQsWUFBWSxFQUFFLGFBQWEsRUFBRSxjQUFjOzsyRkFHMUMsYUFBYTtrQkFMekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDaEMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGFBQWEsRUFBRSxjQUFjLENBQUM7b0JBQ3RELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO2lCQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEt2TW9kYWxDb21wb25lbnQgfSBmcm9tICcuL2t2LW1vZGFsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFByaW1lTmdNb2R1bGUgfSBmcm9tICcuLi8uLi9hcGkvbW9kdWxlcy9wcmltZW5nLm1vZHVsZSc7XHJcbmltcG9ydCB7IEt2QnV0dG9uTW9kdWxlIH0gZnJvbSAnLi4va3YtYnV0dG9uL2t2LWJ1dHRvbi5tb2R1bGUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtLdk1vZGFsQ29tcG9uZW50XSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBQcmltZU5nTW9kdWxlLCBLdkJ1dHRvbk1vZHVsZV0sXHJcbiAgZXhwb3J0czogW0t2TW9kYWxDb21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgS3ZNb2RhbE1vZHVsZSB7fVxyXG4iXX0=
|
|
@@ -1,225 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, model, Output, signal, ViewChild, ViewContainerRef, } from '@angular/core';
|
|
2
|
-
import { OrgChart } from 'd3-org-chart';
|
|
3
|
-
import * as d3 from 'd3';
|
|
4
|
-
import { fromEvent } from 'rxjs';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../../api/services/orgchart.service";
|
|
7
|
-
import * as i2 from "primeng/api";
|
|
8
|
-
import * as i3 from "@angular/common";
|
|
9
|
-
import * as i4 from "primeng/tooltip";
|
|
10
|
-
import * as i5 from "primeng/dropdown";
|
|
11
|
-
import * as i6 from "../kv-button/kv-button.component";
|
|
12
|
-
export class KvOrgchartComponent {
|
|
13
|
-
constructor(cdr, service, filterService) {
|
|
14
|
-
this.cdr = cdr;
|
|
15
|
-
this.service = service;
|
|
16
|
-
this.filterService = filterService;
|
|
17
|
-
this.dataSource = model(null);
|
|
18
|
-
this.filtrosOpt = signal([]);
|
|
19
|
-
this.selectedOpt = null;
|
|
20
|
-
//#region Emissores de evento
|
|
21
|
-
this.onNodeClick = new EventEmitter();
|
|
22
|
-
// #endregion
|
|
23
|
-
this.compact = true;
|
|
24
|
-
this.mostraMenu = false;
|
|
25
|
-
}
|
|
26
|
-
//#region Iniciar OrgChart e Atualização de dados
|
|
27
|
-
ngOnInit() {
|
|
28
|
-
this.iniciarHandlersDeEventos();
|
|
29
|
-
}
|
|
30
|
-
ngAfterViewInit() {
|
|
31
|
-
if (!this.chart) {
|
|
32
|
-
this.chart = new OrgChart();
|
|
33
|
-
}
|
|
34
|
-
this.iniciarChart();
|
|
35
|
-
}
|
|
36
|
-
iniciarChart() {
|
|
37
|
-
if (!this.dataSource() || !this.chart) {
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
const chartContainer = this.chartContainer.nativeElement;
|
|
41
|
-
this.chart
|
|
42
|
-
.createZoom(() => {
|
|
43
|
-
return d3.zoom().filter((e) => {
|
|
44
|
-
const element = e.srcElement;
|
|
45
|
-
if (element.classList.contains('no-zoom')) {
|
|
46
|
-
return false;
|
|
47
|
-
}
|
|
48
|
-
return true;
|
|
49
|
-
});
|
|
50
|
-
})
|
|
51
|
-
.container(chartContainer)
|
|
52
|
-
.data(this.dataSource())
|
|
53
|
-
.nodeWidth(() => this.config.cardWidht)
|
|
54
|
-
.nodeHeight((d) => {
|
|
55
|
-
return d.data.expanded && this.config.cardExpandedHeight
|
|
56
|
-
? this.config.cardExpandedHeight
|
|
57
|
-
: this.config.cardHeight;
|
|
58
|
-
})
|
|
59
|
-
.compact(false)
|
|
60
|
-
.buttonContent(({ node, state }) => {
|
|
61
|
-
return `<div style="color:#FFFFFF; border-radius:100%;font-size:5px;margin:auto auto;background-color:#64748B;">
|
|
62
|
-
<span>
|
|
63
|
-
${node.children && node.children.length > 0
|
|
64
|
-
? `<i class="material-symbols-outlined">
|
|
65
|
-
keyboard_arrow_up
|
|
66
|
-
</i>`
|
|
67
|
-
: `<i class="material-symbols-outlined">
|
|
68
|
-
keyboard_arrow_down
|
|
69
|
-
</i>`}
|
|
70
|
-
</span>
|
|
71
|
-
</div>`;
|
|
72
|
-
})
|
|
73
|
-
.linkUpdate((node, index, nodes) => {
|
|
74
|
-
d3.select(nodes[index])
|
|
75
|
-
.attr('stroke-width', this.config.conectionWidth || '2px')
|
|
76
|
-
.style('stroke', this.config.connectionColor || '#d6d6d6');
|
|
77
|
-
})
|
|
78
|
-
.nodeContent((d) => {
|
|
79
|
-
const node = {
|
|
80
|
-
data: d.data.data,
|
|
81
|
-
children: d.children,
|
|
82
|
-
id: d.data.id,
|
|
83
|
-
parentId: d.data.parentId,
|
|
84
|
-
expanded: d.data.expanded,
|
|
85
|
-
orgConfig: d.orgConfig,
|
|
86
|
-
};
|
|
87
|
-
const x = this.renderNodeTemplate(node);
|
|
88
|
-
return x;
|
|
89
|
-
})
|
|
90
|
-
.nodeUpdate(function (d) {
|
|
91
|
-
d.data.orgConfig.clicks.forEach((click) => {
|
|
92
|
-
d3.select(this)
|
|
93
|
-
.select(click)
|
|
94
|
-
.on('click', (e, d) => {
|
|
95
|
-
const dados = d;
|
|
96
|
-
const node = {
|
|
97
|
-
data: dados.data.data,
|
|
98
|
-
children: dados.children,
|
|
99
|
-
id: dados.data.id,
|
|
100
|
-
parentId: dados.data.parentId,
|
|
101
|
-
expanded: dados.data.expanded,
|
|
102
|
-
orgConfig: dados.orgConfig,
|
|
103
|
-
};
|
|
104
|
-
window.dispatchEvent(new CustomEvent('KvOrgChart_NodeClick', {
|
|
105
|
-
detail: {
|
|
106
|
-
node,
|
|
107
|
-
seletor: click,
|
|
108
|
-
},
|
|
109
|
-
}));
|
|
110
|
-
});
|
|
111
|
-
});
|
|
112
|
-
})
|
|
113
|
-
.defaultFont('Roboto')
|
|
114
|
-
.render();
|
|
115
|
-
this.chart.expandAll();
|
|
116
|
-
}
|
|
117
|
-
ngOnChanges(changes) {
|
|
118
|
-
if (changes['dataSource']) {
|
|
119
|
-
this.iniciarChart();
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
//#endregion
|
|
123
|
-
// #region Renderização de template
|
|
124
|
-
renderNodeTemplate(node) {
|
|
125
|
-
this.viewContainerRef.clear();
|
|
126
|
-
const view = this.viewContainerRef.createEmbeddedView(this.nodeTemplate, {
|
|
127
|
-
node: node,
|
|
128
|
-
});
|
|
129
|
-
this.cdr.detectChanges();
|
|
130
|
-
return view.rootNodes[0].outerHTML;
|
|
131
|
-
}
|
|
132
|
-
iniciarHandlersDeEventos() {
|
|
133
|
-
this.nodeClickSubscription = fromEvent(window, 'KvOrgChart_NodeClick').subscribe((event) => {
|
|
134
|
-
this.emitirClick(event.detail.node, event.detail.seletor);
|
|
135
|
-
});
|
|
136
|
-
this.nodeAddSubscription = this.service.nodeAdd$.subscribe((node) => {
|
|
137
|
-
this.adicionarNode(node);
|
|
138
|
-
});
|
|
139
|
-
this.nodeRemoveSubscription = this.service.nodeRemove$.subscribe((id) => {
|
|
140
|
-
this.removerNode(id);
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
ngOnDestroy() {
|
|
144
|
-
this.nodeClickSubscription.unsubscribe();
|
|
145
|
-
this.nodeAddSubscription.unsubscribe();
|
|
146
|
-
this.nodeRemoveSubscription.unsubscribe();
|
|
147
|
-
}
|
|
148
|
-
emitirClick(node, seletorCss) {
|
|
149
|
-
const event = {
|
|
150
|
-
node: node,
|
|
151
|
-
seletorCss: seletorCss ?? '',
|
|
152
|
-
};
|
|
153
|
-
this.onNodeClick.emit(event);
|
|
154
|
-
}
|
|
155
|
-
adicionarNode(node) {
|
|
156
|
-
const arr = [...this.dataSource(), node];
|
|
157
|
-
this.dataSource.set(arr);
|
|
158
|
-
this.iniciarChart();
|
|
159
|
-
}
|
|
160
|
-
removerNode(id) {
|
|
161
|
-
const indPai = this.dataSource().some((x) => x.parentId == id);
|
|
162
|
-
if (indPai) {
|
|
163
|
-
alert('Não é possível remover um nó que possui filhos');
|
|
164
|
-
}
|
|
165
|
-
else {
|
|
166
|
-
const arr = this.dataSource().filter((x) => x.id != id);
|
|
167
|
-
this.dataSource.set(arr);
|
|
168
|
-
this.iniciarChart();
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
// #endregion
|
|
172
|
-
// #region Funções de utilidade
|
|
173
|
-
pesquisar(e) {
|
|
174
|
-
const valor = e.target.value;
|
|
175
|
-
this.filtrosOpt.set(this.filtrarArray(valor));
|
|
176
|
-
}
|
|
177
|
-
filtrarArray(valor) {
|
|
178
|
-
if (valor && this.config.filters) {
|
|
179
|
-
const dataSource = this.dataSource();
|
|
180
|
-
const valorLower = valor.toLowerCase(); // Converte o valor de busca para minúsculas
|
|
181
|
-
const arr = dataSource.filter((node) => {
|
|
182
|
-
return this.config.filters.every((filter) => {
|
|
183
|
-
// Converte os valores para minúsculas e verifica se contém a string de busca
|
|
184
|
-
return node.data[filter].toLowerCase().includes(valorLower);
|
|
185
|
-
});
|
|
186
|
-
});
|
|
187
|
-
return arr ?? null;
|
|
188
|
-
}
|
|
189
|
-
else {
|
|
190
|
-
return null;
|
|
191
|
-
}
|
|
192
|
-
}
|
|
193
|
-
centralizarNo(id) {
|
|
194
|
-
console.log(id);
|
|
195
|
-
this.chart.setCentered(id).render();
|
|
196
|
-
this.filter.hide();
|
|
197
|
-
this.filter.clear();
|
|
198
|
-
}
|
|
199
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvOrgchartComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.OrgChartService }, { token: i2.FilterService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
200
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.8", type: KvOrgchartComponent, selector: "kv-orgchart", inputs: { dataSource: { classPropertyName: "dataSource", publicName: "dataSource", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: false, isRequired: false, transformFunction: null }, nodeTemplate: { classPropertyName: "nodeTemplate", publicName: "nodeTemplate", isSignal: false, isRequired: false, transformFunction: null }, filterItemTemplate: { classPropertyName: "filterItemTemplate", publicName: "filterItemTemplate", isSignal: false, isRequired: false, transformFunction: null }, filterSelectedItemTemplate: { classPropertyName: "filterSelectedItemTemplate", publicName: "filterSelectedItemTemplate", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { dataSource: "dataSourceChange", onNodeClick: "onNodeClick" }, viewQueries: [{ propertyName: "chartContainer", first: true, predicate: ["chartContainer"], descendants: true }, { propertyName: "viewContainerRef", first: true, predicate: ["nodeTemplate"], descendants: true, read: ViewContainerRef }, { propertyName: "filter", first: true, predicate: ["filter"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div #chartContainer id=\"chartContainer\" [ngClass]=\"{ backGround: true }\">\r\n <div class=\"div-botoes w-full flex gap-1\">\r\n <div\r\n id=\"menubar\"\r\n class=\"shadow-2 flex justify-content-between align-content-center\"\r\n >\r\n <div class=\"grid formgrid p-fluid flex-grow-1\">\r\n <!-- <div #filterContainer class=\"col-4 grid formgrid p-fluid\">\r\n <kv-input-text class=\"col-12\" #filtro (onInput)=\"pesquisar($event)\">\r\n </kv-input-text>\r\n </div>\r\n\r\n @if(filtrosOpt().length > 0) {\r\n \r\n <div id=\"filtro-org-chart\" [style.width.px]=\"filterContainer.offsetWidth*0.9\">\r\n\r\n @for (opt of filtrosOpt(); track $index) {\r\n <div class=\"filtro-org-chart-item\">\r\n {{ opt.data.name }}\r\n\r\n </div>\r\n\r\n }\r\n\r\n </div>\r\n\r\n } -->\r\n\r\n <p-dropdown\r\n #filter\r\n placeholder=\"Filtrar...\"\r\n [style]=\"{\r\n height: '30px',\r\n 'display': 'flex',\r\n 'align-items': 'center',\r\n 'margin-left': '15px',\r\n 'max-width': '95%'\r\n }\"\r\n [filter]=\"true\"\r\n [filterFields]=\"config.filters\"\r\n [options]=\"this.dataSource()!\"\r\n [showClear]=\"true\"\r\n (onChange)=\"centralizarNo($event.value.id)\"\r\n >\r\n <!-- [itemTemplate]=\"itemTemplate\"\r\n [selectedItemTemplate]=\"selectedItemTemplate\" -->\r\n <!-- [filteredOptions]=\"this.dataSource()!\" -->\r\n <!-- [filterFields]=\"data.name\" -->\r\n\r\n <ng-template #itemTemplate let-item pTemplate=\"item\">\r\n <ng-container\r\n [ngTemplateOutlet]=\"filterItemTemplate!\"\r\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\r\n />\r\n </ng-template>\r\n\r\n <ng-template #selectedItemTemplate let-item pTemplate=\"selectedItem\">\r\n <ng-container\r\n [ngTemplateOutlet]=\"filterSelectedItemTemplate!\"\r\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\r\n />\r\n </ng-template>\r\n </p-dropdown>\r\n </div>\r\n\r\n <!-- Actions bar -->\r\n <div class=\"flex gap-1 flex-row flex-grow-0\">\r\n <div style=\"width: 30px\" class=\"mr-2\">\r\n <kv-button\r\n (onClick)=\"chart.expandAll()\"\r\n class=\"button-expand-all\"\r\n [fullWidth]=\"false\"\r\n size=\"small\"\r\n severity=\"tertiary\"\r\n [icon]=\"'expand_all'\"\r\n [pTooltip]=\"'Expandir Todos'\"\r\n >\r\n </kv-button>\r\n </div>\r\n\r\n <div style=\"width: 30px\" class=\"mr-2\">\r\n <kv-button\r\n (onClick)=\"chart.collapseAll()\"\r\n class=\"button-colappse-all\"\r\n [fullWidth]=\"false\"\r\n size=\"small\"\r\n severity=\"tertiary\"\r\n [icon]=\"'collapse_all'\"\r\n [pTooltip]=\"'Recolher Todos'\"\r\n >\r\n </kv-button>\r\n </div>\r\n\r\n <div style=\"width: 30px\" class=\"mr-2\">\r\n <kv-button\r\n (onClick)=\"chart.fit().render()\"\r\n class=\"button-focus-center\"\r\n [fullWidth]=\"false\"\r\n size=\"small\"\r\n severity=\"primary\"\r\n [icon]=\"'center_focus_weak'\"\r\n [pTooltip]=\"'Centralizar Organograma'\"\r\n >\r\n </kv-button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<link\r\n rel=\"stylesheet\"\r\n href=\"https://fonts.googleapis.com/icon?family=Material+Icons\"\r\n/>\r\n\r\n<link\r\n rel=\"stylesheet\"\r\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,400,0,0\"\r\n/>\r\n\r\n<div style=\"display: none\">\r\n <ng-template #nodeTemplate let-node>\r\n <div class=\"node-content\">erro</div>\r\n </ng-template>\r\n</div>\r\n", styles: ["#chartContainer{height:100%;overflow:hidden}:host ::ng-deep #chartContainer svg.svg-chart-container{height:100%!important;position:relative;width:100%;top:-56px;z-index:0;background-color:#fff}.div-botoes{z-index:1;width:100%;position:relative}:host ::ng-deep .p-organizationChart{overflow:hidden}svg{width:100%;height:100%}#menubar{width:100%;padding:5px;border-radius:8px;background:#eaeaea}.filtro-input{width:300px}#filtro-org-chart{height:300px;overflow-y:auto;overflow-x:hidden;position:absolute;top:40px;left:8px;background:#fff;color:#4b5563;border:0 none;border-radius:6px;box-shadow:0 2px 12px #0000001a}.filtro-org-chart-item{cursor:pointer;height:35px;padding:3px}.filtro-org-chart-item:hover{background-color:#d9dadb}.filtro-org-chart-item:active{background-color:#c0c1c2}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i5.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "component", type: i6.KvButtonComponent, selector: "kv-button", inputs: ["fullWidth", "type", "loading", "severity", "size", "icon", "label", "disabled"], outputs: ["onClick"] }] }); }
|
|
201
|
-
}
|
|
202
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvOrgchartComponent, decorators: [{
|
|
203
|
-
type: Component,
|
|
204
|
-
args: [{ selector: 'kv-orgchart', template: "<div #chartContainer id=\"chartContainer\" [ngClass]=\"{ backGround: true }\">\r\n <div class=\"div-botoes w-full flex gap-1\">\r\n <div\r\n id=\"menubar\"\r\n class=\"shadow-2 flex justify-content-between align-content-center\"\r\n >\r\n <div class=\"grid formgrid p-fluid flex-grow-1\">\r\n <!-- <div #filterContainer class=\"col-4 grid formgrid p-fluid\">\r\n <kv-input-text class=\"col-12\" #filtro (onInput)=\"pesquisar($event)\">\r\n </kv-input-text>\r\n </div>\r\n\r\n @if(filtrosOpt().length > 0) {\r\n \r\n <div id=\"filtro-org-chart\" [style.width.px]=\"filterContainer.offsetWidth*0.9\">\r\n\r\n @for (opt of filtrosOpt(); track $index) {\r\n <div class=\"filtro-org-chart-item\">\r\n {{ opt.data.name }}\r\n\r\n </div>\r\n\r\n }\r\n\r\n </div>\r\n\r\n } -->\r\n\r\n <p-dropdown\r\n #filter\r\n placeholder=\"Filtrar...\"\r\n [style]=\"{\r\n height: '30px',\r\n 'display': 'flex',\r\n 'align-items': 'center',\r\n 'margin-left': '15px',\r\n 'max-width': '95%'\r\n }\"\r\n [filter]=\"true\"\r\n [filterFields]=\"config.filters\"\r\n [options]=\"this.dataSource()!\"\r\n [showClear]=\"true\"\r\n (onChange)=\"centralizarNo($event.value.id)\"\r\n >\r\n <!-- [itemTemplate]=\"itemTemplate\"\r\n [selectedItemTemplate]=\"selectedItemTemplate\" -->\r\n <!-- [filteredOptions]=\"this.dataSource()!\" -->\r\n <!-- [filterFields]=\"data.name\" -->\r\n\r\n <ng-template #itemTemplate let-item pTemplate=\"item\">\r\n <ng-container\r\n [ngTemplateOutlet]=\"filterItemTemplate!\"\r\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\r\n />\r\n </ng-template>\r\n\r\n <ng-template #selectedItemTemplate let-item pTemplate=\"selectedItem\">\r\n <ng-container\r\n [ngTemplateOutlet]=\"filterSelectedItemTemplate!\"\r\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\r\n />\r\n </ng-template>\r\n </p-dropdown>\r\n </div>\r\n\r\n <!-- Actions bar -->\r\n <div class=\"flex gap-1 flex-row flex-grow-0\">\r\n <div style=\"width: 30px\" class=\"mr-2\">\r\n <kv-button\r\n (onClick)=\"chart.expandAll()\"\r\n class=\"button-expand-all\"\r\n [fullWidth]=\"false\"\r\n size=\"small\"\r\n severity=\"tertiary\"\r\n [icon]=\"'expand_all'\"\r\n [pTooltip]=\"'Expandir Todos'\"\r\n >\r\n </kv-button>\r\n </div>\r\n\r\n <div style=\"width: 30px\" class=\"mr-2\">\r\n <kv-button\r\n (onClick)=\"chart.collapseAll()\"\r\n class=\"button-colappse-all\"\r\n [fullWidth]=\"false\"\r\n size=\"small\"\r\n severity=\"tertiary\"\r\n [icon]=\"'collapse_all'\"\r\n [pTooltip]=\"'Recolher Todos'\"\r\n >\r\n </kv-button>\r\n </div>\r\n\r\n <div style=\"width: 30px\" class=\"mr-2\">\r\n <kv-button\r\n (onClick)=\"chart.fit().render()\"\r\n class=\"button-focus-center\"\r\n [fullWidth]=\"false\"\r\n size=\"small\"\r\n severity=\"primary\"\r\n [icon]=\"'center_focus_weak'\"\r\n [pTooltip]=\"'Centralizar Organograma'\"\r\n >\r\n </kv-button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<link\r\n rel=\"stylesheet\"\r\n href=\"https://fonts.googleapis.com/icon?family=Material+Icons\"\r\n/>\r\n\r\n<link\r\n rel=\"stylesheet\"\r\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,400,0,0\"\r\n/>\r\n\r\n<div style=\"display: none\">\r\n <ng-template #nodeTemplate let-node>\r\n <div class=\"node-content\">erro</div>\r\n </ng-template>\r\n</div>\r\n", styles: ["#chartContainer{height:100%;overflow:hidden}:host ::ng-deep #chartContainer svg.svg-chart-container{height:100%!important;position:relative;width:100%;top:-56px;z-index:0;background-color:#fff}.div-botoes{z-index:1;width:100%;position:relative}:host ::ng-deep .p-organizationChart{overflow:hidden}svg{width:100%;height:100%}#menubar{width:100%;padding:5px;border-radius:8px;background:#eaeaea}.filtro-input{width:300px}#filtro-org-chart{height:300px;overflow-y:auto;overflow-x:hidden;position:absolute;top:40px;left:8px;background:#fff;color:#4b5563;border:0 none;border-radius:6px;box-shadow:0 2px 12px #0000001a}.filtro-org-chart-item{cursor:pointer;height:35px;padding:3px}.filtro-org-chart-item:hover{background-color:#d9dadb}.filtro-org-chart-item:active{background-color:#c0c1c2}\n"] }]
|
|
205
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.OrgChartService }, { type: i2.FilterService }], propDecorators: { config: [{
|
|
206
|
-
type: Input
|
|
207
|
-
}], chartContainer: [{
|
|
208
|
-
type: ViewChild,
|
|
209
|
-
args: ['chartContainer']
|
|
210
|
-
}], viewContainerRef: [{
|
|
211
|
-
type: ViewChild,
|
|
212
|
-
args: ['nodeTemplate', { read: ViewContainerRef }]
|
|
213
|
-
}], nodeTemplate: [{
|
|
214
|
-
type: Input
|
|
215
|
-
}], filterItemTemplate: [{
|
|
216
|
-
type: Input
|
|
217
|
-
}], filterSelectedItemTemplate: [{
|
|
218
|
-
type: Input
|
|
219
|
-
}], onNodeClick: [{
|
|
220
|
-
type: Output
|
|
221
|
-
}], filter: [{
|
|
222
|
-
type: ViewChild,
|
|
223
|
-
args: ['filter']
|
|
224
|
-
}] } });
|
|
225
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3Ytb3JnY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3Ytb3JnY2hhcnQva3Ytb3JnY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3Ytb3JnY2hhcnQva3Ytb3JnY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUlOLFNBQVMsRUFDVCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4QyxPQUFPLEtBQUssRUFBRSxNQUFNLElBQUksQ0FBQztBQUl6QixPQUFPLEVBQUUsU0FBUyxFQUFnQixNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7QUFZL0MsTUFBTSxPQUFPLG1CQUFtQjtJQThCOUIsWUFDVSxHQUFzQixFQUN0QixPQUF3QixFQUN4QixhQUE0QjtRQUY1QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUN4QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQTVCdEMsZUFBVSxHQUFHLEtBQUssQ0FBd0IsSUFBSSxDQUFDLENBQUM7UUFFaEQsZUFBVSxHQUFHLE1BQU0sQ0FBaUIsRUFBRSxDQUFDLENBQUM7UUFDeEMsZ0JBQVcsR0FBRyxJQUFJLENBQUE7UUFhbEIsNkJBQTZCO1FBRW5CLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUVoRCxhQUFhO1FBRWIsWUFBTyxHQUFZLElBQUksQ0FBQztRQUN4QixlQUFVLEdB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Q2YsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUE7UUFDbkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQTtRQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFBO0lBQ3JCLENBQUM7OEdBclBVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLGlqQ0FZSyxnQkFBZ0IscUlDN0NyRCxzbUlBNkhBOzsyRkQ1RmEsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGFBQWE7Z0pBY2QsTUFBTTtzQkFBZCxLQUFLO2dCQUN1QixjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQjtnQkFFM0IsZ0JBQWdCO3NCQURmLFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFO2dCQUU1QyxZQUFZO3NCQUFwQixLQUFLO2dCQUVHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRywwQkFBMEI7c0JBQWxDLEtBQUs7Z0JBTUksV0FBVztzQkFBcEIsTUFBTTtnQkFzTmMsTUFBTTtzQkFBMUIsU0FBUzt1QkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgbW9kZWwsXHJcbiAgT3V0cHV0LFxyXG4gIHNpZ25hbCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIHZpZXdDaGlsZCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0NvbnRhaW5lclJlZixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IE9yZ0NoYXJ0IH0gZnJvbSAnZDMtb3JnLWNoYXJ0JztcclxuaW1wb3J0ICogYXMgZDMgZnJvbSAnZDMnO1xyXG5cclxuaW1wb3J0IE9yZ0NoYXJ0Q29uZmlnIGZyb20gJy4uLy4uL2FwaS9jb21wb25lbnRzL2NoYXJ0L29yY2hhcnQuY29uZmlnJztcclxuaW1wb3J0IE9yZ0NoYXJ0Tm9kZSBmcm9tICcuLi8uLi9hcGkvY29tcG9uZW50cy9jaGFydC9vcmNoYXJ0bm9kZSc7XHJcbmltcG9ydCB7IGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE9yZ0NoYXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL2FwaS9zZXJ2aWNlcy9vcmdjaGFydC5zZXJ2aWNlJztcclxuXHJcbmltcG9ydCB7IEZpbHRlclNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IERyb3Bkb3duLCBEcm9wZG93bk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvZHJvcGRvd24nO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3Ytb3JnY2hhcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9rdi1vcmdjaGFydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4va3Ytb3JnY2hhcnQuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEt2T3JnY2hhcnRDb21wb25lbnQge1xyXG5cclxuXHJcbiAgY2hhcnQhOiBhbnk7XHJcblxyXG4gIGRhdGFTb3VyY2UgPSBtb2RlbDxPcmdDaGFydE5vZGVbXSB8IG51bGw+KG51bGwpO1xyXG5cclxuICBmaWx0cm9zT3B0ID0gc2lnbmFsPE9yZ0NoYXJ0Tm9kZVtdPihbXSk7XHJcbiAgc2VsZWN0ZWRPcHQgPSBudWxsXHJcblxyXG4gIEBJbnB1dCgpIGNvbmZpZyE6IE9yZ0NoYXJ0Q29uZmlnO1xyXG4gIEBWaWV3Q2hpbGQoJ2NoYXJ0Q29udGFpbmVyJykgY2hhcnRDb250YWluZXIhOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ25vZGVUZW1wbGF0ZScsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KVxyXG4gIHZpZXdDb250YWluZXJSZWYhOiBWaWV3Q29udGFpbmVyUmVmO1xyXG4gIEBJbnB1dCgpIG5vZGVUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIEBJbnB1dCgpIGZpbHRlckl0ZW1UZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQElucHV0KCkgZmlsdGVyU2VsZWN0ZWRJdGVtVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuXHJcblxyXG4gIC8vI3JlZ2lvbiBFbWlzc29yZXMgZGUgZXZlbnRvXHJcblxyXG4gIEBPdXRwdXQoKSBvbk5vZGVDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICAvLyAjZW5kcmVnaW9uXHJcblxyXG4gIGNvbXBhY3Q6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIG1vc3RyYU1lbnU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIHNlcnZpY2U6IE9yZ0NoYXJ0U2VydmljZSxcclxuICAgIHByaXZhdGUgZmlsdGVyU2VydmljZTogRmlsdGVyU2VydmljZVxyXG4gICkge31cclxuXHJcbiAgLy8jcmVnaW9uIEluaWNpYXIgT3JnQ2hhcnQgZSBBdHVhbGl6YcOnw6NvIGRlIGRhZG9zXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmluaWNpYXJIYW5kbGVyc0RlRXZlbnRvcygpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgaWYgKCF0aGlzLmNoYXJ0KSB7XHJcbiAgICAgIHRoaXMuY2hhcnQgPSBuZXcgT3JnQ2hhcnQoKTtcclxuICAgIH1cclxuICAgIHRoaXMuaW5pY2lhckNoYXJ0KCk7XHJcbiAgfVxyXG5cclxuICBpbmljaWFyQ2hhcnQoKSB7XHJcbiAgICBpZiAoIXRoaXMuZGF0YVNvdXJjZSgpIHx8ICF0aGlzLmNoYXJ0KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBjaGFydENvbnRhaW5lciA9IHRoaXMuY2hhcnRDb250YWluZXIubmF0aXZlRWxlbWVudDtcclxuICAgIHRoaXMuY2hhcnRcclxuICAgICAgLmNyZWF0ZVpvb20oKCkgPT4ge1xyXG4gICAgICAgIHJldHVybiBkMy56b29tKCkuZmlsdGVyKChlKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBlbGVtZW50OiBIVE1MRWxlbWVudCA9IGUuc3JjRWxlbWVudDtcclxuICAgICAgICAgIGlmIChlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnbm8tem9vbScpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9KVxyXG4gICAgICAuY29udGFpbmVyKGNoYXJ0Q29udGFpbmVyKVxyXG4gICAgICAuZGF0YSh0aGlzLmRhdGFTb3VyY2UoKSlcclxuICAgICAgLm5vZGVXaWR0aCgoKSA9PiB0aGlzLmNvbmZpZy5jYXJkV2lkaHQpXHJcbiAgICAgIC5ub2RlSGVpZ2h0KChkOiBhbnkpID0+IHtcclxuICAgICAgICByZXR1cm4gZC5kYXRhLmV4cGFuZGVkICYmIHRoaXMuY29uZmlnLmNhcmRFeHBhbmRlZEhlaWdodFxyXG4gICAgICAgICAgPyB0aGlzLmNvbmZpZy5jYXJkRXhwYW5kZWRIZWlnaHRcclxuICAgICAgICAgIDogdGhpcy5jb25maWcuY2FyZEhlaWdodDtcclxuICAgICAgfSlcclxuICAgICAgLmNvbXBhY3QoZmFsc2UpXHJcbiAgICAgIC5idXR0b25Db250ZW50KCh7IG5vZGUsIHN0YXRlIH06IHsgbm9kZTogYW55OyBzdGF0ZTogYW55IH0pID0+IHtcclxuICAgICAgICByZXR1cm4gYDxkaXYgc3R5bGU9XCJjb2xvcjojRkZGRkZGOyBib3JkZXItcmFkaXVzOjEwMCU7Zm9udC1zaXplOjVweDttYXJnaW46YXV0byBhdXRvO2JhY2tncm91bmQtY29sb3I6IzY0NzQ4QjtcIj5cclxuICAgICAgICAgIDxzcGFuPlxyXG4gICAgICAgICAgJHtcclxuICAgICAgICAgICAgbm9kZS5jaGlsZHJlbiAmJiBub2RlLmNoaWxkcmVuLmxlbmd0aCA+IDBcclxuICAgICAgICAgICAgICA/IGA8aSBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWRcIj5cclxuICAgICAgICAgICAgICBrZXlib2FyZF9hcnJvd191cFxyXG4gICAgICAgICAgICAgIDwvaT5gXHJcbiAgICAgICAgICAgICAgOiBgPGkgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+XHJcbiAgICAgICAgICAgICAga2V5Ym9hcmRfYXJyb3dfZG93blxyXG4gICAgICAgICAgICA8L2k+YFxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5gO1xyXG4gICAgICB9KVxyXG4gICAgICAubGlua1VwZGF0ZSgobm9kZTogYW55LCBpbmRleDogYW55LCBub2RlczogYW55KSA9PiB7XHJcbiAgICAgICAgZDMuc2VsZWN0KG5vZGVzW2luZGV4XSlcclxuICAgICAgICAgIC5hdHRyKCdzdHJva2Utd2lkdGgnLCB0aGlzLmNvbmZpZy5jb25lY3Rpb25XaWR0aCB8fCAnMnB4JylcclxuICAgICAgICAgIC5zdHlsZSgnc3Ryb2tlJywgdGhpcy5jb25maWcuY29ubmVjdGlvbkNvbG9yIHx8ICcjZDZkNmQ2Jyk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5ub2RlQ29udGVudCgoZDogYW55KSA9PiB7XHJcbiAgICAgICAgY29uc3Qgbm9kZTogT3JnQ2hhcnROb2RlID0ge1xyXG4gICAgICAgICAgZGF0YTogZC5kYXRhLmRhdGEsXHJcbiAgICAgICAgICBjaGlsZHJlbjogZC5jaGlsZHJlbixcclxuICAgICAgICAgIGlkOiBkLmRhdGEuaWQsXHJcbiAgICAgICAgICBwYXJlbnRJZDogZC5kYXRhLnBhcmVudElkLFxyXG4gICAgICAgICAgZXhwYW5kZWQ6IGQuZGF0YS5leHBhbmRlZCxcclxuICAgICAgICAgIG9yZ0NvbmZpZzogZC5vcmdDb25maWcsXHJcbiAgICAgICAgfTtcclxuICAgICAgICBjb25zdCB4ID0gdGhpcy5yZW5kZXJOb2RlVGVtcGxhdGUobm9kZSk7XHJcbiAgICAgICAgcmV0dXJuIHg7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5ub2RlVXBkYXRlKGZ1bmN0aW9uICh0aGlzOiBhbnksIGQ6IGFueSkge1xyXG4gICAgICAgIGQuZGF0YS5vcmdDb25maWcuY2xpY2tzLmZvckVhY2goKGNsaWNrOiBhbnkpID0+IHtcclxuICAgICAgICAgIGQzLnNlbGVjdCh0aGlzKVxyXG4gICAgICAgICAgICAuc2VsZWN0KGNsaWNrKVxyXG4gICAgICAgICAgICAub24oJ2NsaWNrJywgKGUsIGQpID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCBkYWRvczogYW55ID0gZDtcclxuICAgICAgICAgICAgICBjb25zdCBub2RlOiBPcmdDaGFydE5vZGUgPSB7XHJcbiAgICAgICAgICAgICAgICBkYXRhOiBkYWRvcy5kYXRhLmRhdGEsXHJcbiAgICAgICAgICAgICAgICBjaGlsZHJlbjogZGFkb3MuY2hpbGRyZW4sXHJcbiAgICAgICAgICAgICAgICBpZDogZGFkb3MuZGF0YS5pZCxcclxuICAgICAgICAgICAgICAgIHBhcmVudElkOiBkYWRvcy5kYXRhLnBhcmVudElkLFxyXG4gICAgICAgICAgICAgICAgZXhwYW5kZWQ6IGRhZG9zLmRhdGEuZXhwYW5kZWQsXHJcbiAgICAgICAgICAgICAgICBvcmdDb25maWc6IGRhZG9zLm9yZ0NvbmZpZyxcclxuICAgICAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgICAgICB3aW5kb3cuZGlzcGF0Y2hFdmVudChcclxuICAgICAgICAgICAgICAgIG5ldyBDdXN0b21FdmVudCgnS3ZPcmdDaGFydF9Ob2RlQ2xpY2snLCB7XHJcbiAgICAgICAgICAgICAgICAgIGRldGFpbDoge1xyXG4gICAgICAgICAgICAgICAgICAgIG5vZGUsXHJcbiAgICAgICAgICAgICAgICAgICAgc2VsZXRvcjogY2xpY2ssXHJcbiAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9KVxyXG4gICAgICAuZGVmYXVsdEZvbnQoJ1JvYm90bycpXHJcbiAgICAgIC5yZW5kZXIoKTtcclxuXHJcbiAgICB0aGlzLmNoYXJ0LmV4cGFuZEFsbCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXNbJ2RhdGFTb3VyY2UnXSkge1xyXG4gICAgICB0aGlzLmluaWNpYXJDaGFydCgpO1xyXG4gICAgfVxyXG4gIH1cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgLy8gI3JlZ2lvbiBSZW5kZXJpemHDp8OjbyBkZSB0ZW1wbGF0ZVxyXG4gIHJlbmRlck5vZGVUZW1wbGF0ZShub2RlOiBPcmdDaGFydE5vZGUpOiBzdHJpbmcge1xyXG4gICAgdGhpcy52aWV3Q29udGFpbmVyUmVmLmNsZWFyKCk7XHJcbiAgICBjb25zdCB2aWV3ID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLm5vZGVUZW1wbGF0ZSwge1xyXG4gICAgICBub2RlOiBub2RlLFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICByZXR1cm4gdmlldy5yb290Tm9kZXNbMF0ub3V0ZXJIVE1MO1xyXG4gIH1cclxuICAvLyAjZW5kcmVnaW9uXHJcblxyXG4gIC8vICNyZWdpb24gRXZlbnRvc1xyXG4gIHByaXZhdGUgbm9kZUNsaWNrU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xyXG4gIHByaXZhdGUgbm9kZUFkZFN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcclxuICBwcml2YXRlIG5vZGVSZW1vdmVTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIGluaWNpYXJIYW5kbGVyc0RlRXZlbnRvcygpIHtcclxuICAgIHRoaXMubm9kZUNsaWNrU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50PEN1c3RvbUV2ZW50PihcclxuICAgICAgd2luZG93LFxyXG4gICAgICAnS3ZPcmdDaGFydF9Ob2RlQ2xpY2snXHJcbiAgICApLnN1YnNjcmliZSgoZXZlbnQ6IEN1c3RvbUV2ZW50KSA9PiB7XHJcbiAgICAgIHRoaXMuZW1pdGlyQ2xpY2soZXZlbnQuZGV0YWlsLm5vZGUsIGV2ZW50LmRldGFpbC5zZWxldG9yKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMubm9kZUFkZFN1YnNjcmlwdGlvbiA9IHRoaXMuc2VydmljZS5ub2RlQWRkJC5zdWJzY3JpYmUoXHJcbiAgICAgIChub2RlOiBPcmdDaGFydE5vZGUpID0+IHtcclxuICAgICAgICB0aGlzLmFkaWNpb25hck5vZGUobm9kZSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5ub2RlUmVtb3ZlU3Vic2NyaXB0aW9uID0gdGhpcy5zZXJ2aWNlLm5vZGVSZW1vdmUkLnN1YnNjcmliZShcclxuICAgICAgKGlkOiBudW1iZXIpID0+IHtcclxuICAgICAgICB0aGlzLnJlbW92ZXJOb2RlKGlkKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLm5vZGVDbGlja1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5ub2RlQWRkU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLm5vZGVSZW1vdmVTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIGVtaXRpckNsaWNrKG5vZGU6IE5vZGUsIHNlbGV0b3JDc3M/OiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IGV2ZW50ID0ge1xyXG4gICAgICBub2RlOiBub2RlLFxyXG4gICAgICBzZWxldG9yQ3NzOiBzZWxldG9yQ3NzID8/ICcnLFxyXG4gICAgfTtcclxuICAgIHRoaXMub25Ob2RlQ2xpY2suZW1pdChldmVudCk7XHJcbiAgfVxyXG4gIGFkaWNpb25hck5vZGUobm9kZTogT3JnQ2hhcnROb2RlKSB7XHJcbiAgICBjb25zdCBhcnIgPSBbLi4udGhpcy5kYXRhU291cmNlKCkhLCBub2RlXTtcclxuICAgIHRoaXMuZGF0YVNvdXJjZS5zZXQoYXJyKTtcclxuICAgIHRoaXMuaW5pY2lhckNoYXJ0KCk7XHJcbiAgfVxyXG4gIHJlbW92ZXJOb2RlKGlkOiBudW1iZXIpIHtcclxuICAgIGNvbnN0IGluZFBhaSA9IHRoaXMuZGF0YVNvdXJjZSgpIS5zb21lKCh4OiBhbnkpID0+IHgucGFyZW50SWQgPT0gaWQpO1xyXG4gICAgaWYgKGluZFBhaSkge1xyXG4gICAgICBhbGVydCgnTsOjbyDDqSBwb3Nzw612ZWwgcmVtb3ZlciB1bSBuw7MgcXVlIHBvc3N1aSBmaWxob3MnKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IGFyciA9IHRoaXMuZGF0YVNvdXJjZSgpIS5maWx0ZXIoKHg6IGFueSkgPT4geC5pZCAhPSBpZCk7XHJcbiAgICAgIHRoaXMuZGF0YVNvdXJjZS5zZXQoYXJyKTtcclxuICAgICAgdGhpcy5pbmljaWFyQ2hhcnQoKTtcclxuICAgIH1cclxuICB9XHJcbiAgLy8gI2VuZHJlZ2lvblxyXG5cclxuXHJcblxyXG4gIC8vICNyZWdpb24gRnVuw6fDtWVzIGRlIHV0aWxpZGFkZVxyXG5cclxuICBwZXNxdWlzYXIoZTogYW55KSB7XHJcbiAgICBjb25zdCB2YWxvciA9IGUudGFyZ2V0LnZhbHVlXHJcbiAgICB0aGlzLmZpbHRyb3NPcHQuc2V0KHRoaXMuZmlsdHJhckFycmF5KHZhbG9yKSEpXHJcbiAgfVxyXG5cclxuICBmaWx0cmFyQXJyYXkodmFsb3I6IHN0cmluZyk6IE9yZ0NoYXJ0Tm9kZVtdIHwgbnVsbCB7XHJcbiAgICBpZiAodmFsb3IgJiYgdGhpcy5jb25maWcuZmlsdGVycykge1xyXG4gICAgICBjb25zdCBkYXRhU291cmNlID0gdGhpcy5kYXRhU291cmNlKCkhO1xyXG4gICAgICBjb25zdCB2YWxvckxvd2VyID0gdmFsb3IudG9Mb3dlckNhc2UoKTsgLy8gQ29udmVydGUgbyB2YWxvciBkZSBidXNjYSBwYXJhIG1pbsO6c2N1bGFzXHJcblxyXG4gICAgICBjb25zdCBhcnIgPSBkYXRhU291cmNlLmZpbHRlcigobm9kZTogT3JnQ2hhcnROb2RlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlnLmZpbHRlcnMhLmV2ZXJ5KChmaWx0ZXI6IHN0cmluZykgPT4ge1xyXG4gICAgICAgICAgLy8gQ29udmVydGUgb3MgdmFsb3JlcyBwYXJhIG1pbsO6c2N1bGFzIGUgdmVyaWZpY2Egc2UgY29udMOpbSBhIHN0cmluZyBkZSBidXNjYVxyXG4gICAgICAgICAgcmV0dXJuIG5vZGUuZGF0YVtmaWx0ZXJdLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModmFsb3JMb3dlcik7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgcmV0dXJuIGFyciA/PyBudWxsO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAVmlld0NoaWxkKCdmaWx0ZXInKSBmaWx0ZXIhOiBEcm9wZG93bjtcclxuXHJcblxyXG4gIGNlbnRyYWxpemFyTm8oaWQ6IGFueSkge1xyXG4gICAgY29uc29sZS5sb2coaWQpXHJcbiAgICB0aGlzLmNoYXJ0LnNldENlbnRlcmVkKGlkKS5yZW5kZXIoKVxyXG4gICAgdGhpcy5maWx0ZXIuaGlkZSgpXHJcbiAgICB0aGlzLmZpbHRlci5jbGVhcigpXHJcbiAgfVxyXG5cclxuXHJcbiAgLy8gI2VuZHJlZ2lvblxyXG59XHJcbiIsIjxkaXYgI2NoYXJ0Q29udGFpbmVyIGlkPVwiY2hhcnRDb250YWluZXJcIiBbbmdDbGFzc109XCJ7IGJhY2tHcm91bmQ6IHRydWUgfVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJkaXYtYm90b2VzIHctZnVsbCBmbGV4IGdhcC0xXCI+XHJcbiAgICA8ZGl2XHJcbiAgICAgIGlkPVwibWVudWJhclwiXHJcbiAgICAgIGNsYXNzPVwic2hhZG93LTIgZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1jb250ZW50LWNlbnRlclwiXHJcbiAgICA+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGZvcm1ncmlkIHAtZmx1aWQgZmxleC1ncm93LTFcIj5cclxuICAgICAgICA8IS0tIDxkaXYgI2ZpbHRlckNvbnRhaW5lciBjbGFzcz1cImNvbC00IGdyaWQgZm9ybWdyaWQgcC1mbHVpZFwiPlxyXG4gICAgICAgICAgICA8a3YtaW5wdXQtdGV4dCBjbGFzcz1cImNvbC0xMlwiICNmaWx0cm8gKG9uSW5wdXQpPVwicGVzcXVpc2FyKCRldmVudClcIj5cclxuICAgICAgICAgICAgPC9rdi1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgQGlmKGZpbHRyb3NPcHQoKS5sZW5ndGggPiAwKSB7XHJcbiBcclxuICAgICAgICAgICAgICA8ZGl2IGlkPVwiZmlsdHJvLW9yZy1jaGFydFwiIFtzdHlsZS53aWR0aC5weF09XCJmaWx0ZXJDb250YWluZXIub2Zmc2V0V2lkdGgqMC45XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgQGZvciAob3B0IG9mIGZpbHRyb3NPcHQoKTsgdHJhY2sgJGluZGV4KSB7XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWx0cm8tb3JnLWNoYXJ0LWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICB7eyBvcHQuZGF0YS5uYW1lIH19XHJcblxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgIH0gLS0+XHJcblxyXG4gICAgICAgIDxwLWRyb3Bkb3duXHJcbiAgICAgICAgICAjZmlsdGVyXHJcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cIkZpbHRyYXIuLi5cIlxyXG4gICAgICAgICAgW3N0eWxlXT1cIntcclxuICAgICAgICAgICAgaGVpZ2h0OiAnMzBweCcsXHJcbiAgICAgICAgICAgICdkaXNwbGF5JzogJ2ZsZXgnLFxyXG4gICAgICAgICAgICAnYWxpZ24taXRlbXMnOiAnY2VudGVyJyxcclxuICAgICAgICAgICAgJ21hcmdpbi1sZWZ0JzogJzE1cHgnLFxyXG4gICAgICAgICAgICAnbWF4LXdpZHRoJzogJzk1JSdcclxuICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgW2ZpbHRlcl09XCJ0cnVlXCJcclxuICAgICAgICAgIFtmaWx0ZXJGaWVsZHNdPVwiY29uZmlnLmZpbHRlcnNcIlxyXG4gICAgICAgICAgW29wdGlvbnNdPVwidGhpcy5kYXRhU291cmNlKCkhXCJcclxuICAgICAgICAgIFtzaG93Q2xlYXJdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAob25DaGFuZ2UpPVwiY2VudHJhbGl6YXJObygkZXZlbnQudmFsdWUuaWQpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8IS0tIFtpdGVtVGVtcGxhdGVdPVwiaXRlbVRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICBbc2VsZWN0ZWRJdGVtVGVtcGxhdGVdPVwic2VsZWN0ZWRJdGVtVGVtcGxhdGVcIiAtLT5cclxuICAgICAgICAgIDwhLS0gW2ZpbHRlcmVkT3B0aW9uc109XCJ0aGlzLmRhdGFTb3VyY2UoKSFcIiAtLT5cclxuICAgICAgICAgIDwhLS0gW2ZpbHRlckZpZWxkc109XCJkYXRhLm5hbWVcIiAtLT5cclxuXHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2l0ZW1UZW1wbGF0ZSBsZXQtaXRlbSBwVGVtcGxhdGU9XCJpdGVtXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJmaWx0ZXJJdGVtVGVtcGxhdGUhXCJcclxuICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGl0ZW0gfVwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjc2VsZWN0ZWRJdGVtVGVtcGxhdGUgbGV0LWl0ZW0gcFRlbXBsYXRlPVwic2VsZWN0ZWRJdGVtXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJmaWx0ZXJTZWxlY3RlZEl0ZW1UZW1wbGF0ZSFcIlxyXG4gICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogaXRlbSB9XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9wLWRyb3Bkb3duPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS0gQWN0aW9ucyBiYXIgLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGdhcC0xIGZsZXgtcm93IGZsZXgtZ3Jvdy0wXCI+XHJcbiAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOiAzMHB4XCIgY2xhc3M9XCJtci0yXCI+XHJcbiAgICAgICAgICA8a3YtYnV0dG9uXHJcbiAgICAgICAgICAgIChvbkNsaWNrKT1cImNoYXJ0LmV4cGFuZEFsbCgpXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJidXR0b24tZXhwYW5kLWFsbFwiXHJcbiAgICAgICAgICAgIFtmdWxsV2lkdGhdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICBzaXplPVwic21hbGxcIlxyXG4gICAgICAgICAgICBzZXZlcml0eT1cInRlcnRpYXJ5XCJcclxuICAgICAgICAgICAgW2ljb25dPVwiJ2V4cGFuZF9hbGwnXCJcclxuICAgICAgICAgICAgW3BUb29sdGlwXT1cIidFeHBhbmRpciBUb2RvcydcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgPC9rdi1idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDogMzBweFwiIGNsYXNzPVwibXItMlwiPlxyXG4gICAgICAgICAgPGt2LWJ1dHRvblxyXG4gICAgICAgICAgICAob25DbGljayk9XCJjaGFydC5jb2xsYXBzZUFsbCgpXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJidXR0b24tY29sYXBwc2UtYWxsXCJcclxuICAgICAgICAgICAgW2Z1bGxXaWR0aF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXHJcbiAgICAgICAgICAgIHNldmVyaXR5PVwidGVydGlhcnlcIlxyXG4gICAgICAgICAgICBbaWNvbl09XCInY29sbGFwc2VfYWxsJ1wiXHJcbiAgICAgICAgICAgIFtwVG9vbHRpcF09XCInUmVjb2xoZXIgVG9kb3MnXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgIDwva3YtYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDMwcHhcIiBjbGFzcz1cIm1yLTJcIj5cclxuICAgICAgICAgIDxrdi1idXR0b25cclxuICAgICAgICAgICAgKG9uQ2xpY2spPVwiY2hhcnQuZml0KCkucmVuZGVyKClcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImJ1dHRvbi1mb2N1cy1jZW50ZXJcIlxyXG4gICAgICAgICAgICBbZnVsbFdpZHRoXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcclxuICAgICAgICAgICAgc2V2ZXJpdHk9XCJwcmltYXJ5XCJcclxuICAgICAgICAgICAgW2ljb25dPVwiJ2NlbnRlcl9mb2N1c193ZWFrJ1wiXHJcbiAgICAgICAgICAgIFtwVG9vbHRpcF09XCInQ2VudHJhbGl6YXIgT3JnYW5vZ3JhbWEnXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgIDwva3YtYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxsaW5rXHJcbiAgcmVsPVwic3R5bGVzaGVldFwiXHJcbiAgaHJlZj1cImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vaWNvbj9mYW1pbHk9TWF0ZXJpYWwrSWNvbnNcIlxyXG4vPlxyXG5cclxuPGxpbmtcclxuICByZWw9XCJzdHlsZXNoZWV0XCJcclxuICBocmVmPVwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1NYXRlcmlhbCtTeW1ib2xzK091dGxpbmVkOm9wc3osd2dodCxGSUxMLEdSQURANDgsNDAwLDAsMFwiXHJcbi8+XHJcblxyXG48ZGl2IHN0eWxlPVwiZGlzcGxheTogbm9uZVwiPlxyXG4gIDxuZy10ZW1wbGF0ZSAjbm9kZVRlbXBsYXRlIGxldC1ub2RlPlxyXG4gICAgPGRpdiBjbGFzcz1cIm5vZGUtY29udGVudFwiPmVycm88L2Rpdj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG48L2Rpdj5cclxuIl19
|