@koobiq/components 16.0.0-beta.9 → 17.0.0-beta.1
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/autocomplete/_autocomplete-theme.scss +3 -10
- package/autocomplete/autocomplete.scss +0 -5
- package/badge/_badge-theme.scss +4 -0
- package/badge/badge.component.d.ts +1 -0
- package/button/_button-base.scss +1 -1
- package/button/_button-theme.scss +23 -38
- package/checkbox/_checkbox-theme.scss +9 -6
- package/checkbox/checkbox.scss +6 -8
- package/code-block/_code-block-theme.scss +43 -12
- package/code-block/actionbar.component.scss +34 -6
- package/code-block/code-block.component.d.ts +2 -2
- package/code-block/code-block.scss +101 -27
- package/core/common-behaviors/index.d.ts +2 -0
- package/core/locales/index.d.ts +0 -2
- package/core/option/_option-action-theme.scss +1 -1
- package/core/option/_option-theme.scss +5 -5
- package/core/option/action.scss +1 -1
- package/core/pop-up/pop-up.d.ts +7 -0
- package/core/selection/pseudo-checkbox/pseudo-checkbox.scss +4 -15
- package/core/styles/_variables.scss +1 -1
- package/core/styles/common/_select.scss +2 -1
- package/core/styles/theming/_components-theming.scss +46 -23
- package/core/styles/theming/_scrollbars-theme.scss +7 -2
- package/core/styles/theming/_theming.scss +1 -0
- package/core/styles/typography/_typography.scss +6 -1
- package/dropdown/_dropdown-theme.scss +1 -2
- package/esm2022/alert/alert.component.mjs +12 -12
- package/esm2022/alert/alert.module.mjs +4 -4
- package/esm2022/autocomplete/autocomplete-origin.directive.mjs +4 -4
- package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +6 -6
- package/esm2022/autocomplete/autocomplete.component.mjs +8 -8
- package/esm2022/autocomplete/autocomplete.module.mjs +4 -4
- package/esm2022/badge/badge.component.mjs +13 -12
- package/esm2022/badge/badge.module.mjs +4 -4
- package/esm2022/button/button.component.mjs +16 -13
- package/esm2022/button/button.module.mjs +4 -4
- package/esm2022/button-toggle/button-toggle.component.mjs +12 -12
- package/esm2022/button-toggle/button-toggle.module.mjs +4 -4
- package/esm2022/card/card.component.mjs +5 -5
- package/esm2022/card/card.module.mjs +4 -4
- package/esm2022/checkbox/checkbox-module.mjs +4 -4
- package/esm2022/checkbox/checkbox-required-validator.mjs +3 -3
- package/esm2022/checkbox/checkbox.mjs +7 -7
- package/esm2022/code-block/actionbar.component.mjs +5 -5
- package/esm2022/code-block/code-block.component.mjs +14 -12
- package/esm2022/code-block/code-block.module.mjs +8 -8
- package/esm2022/core/common-behaviors/color.mjs +1 -1
- package/esm2022/core/common-behaviors/common-module.mjs +7 -7
- package/esm2022/core/common-behaviors/error-state.mjs +1 -1
- package/esm2022/core/common-behaviors/index.mjs +3 -1
- package/esm2022/core/error/error-options.mjs +6 -6
- package/esm2022/core/formatters/date/formatter.mjs +5 -5
- package/esm2022/core/formatters/date/formatter.pipe.mjs +52 -52
- package/esm2022/core/formatters/index.mjs +7 -6
- package/esm2022/core/formatters/number/formatter.mjs +19 -19
- package/esm2022/core/forms/forms-module.mjs +4 -4
- package/esm2022/core/forms/forms.directive.mjs +8 -8
- package/esm2022/core/highlight/highlight.pipe.mjs +5 -5
- package/esm2022/core/highlight/index.mjs +4 -4
- package/esm2022/core/line/line.mjs +8 -8
- package/esm2022/core/locales/index.mjs +1 -3
- package/esm2022/core/locales/locale-service.mjs +5 -5
- package/esm2022/core/locales/locale-service.module.mjs +4 -4
- package/esm2022/core/option/action.mjs +9 -8
- package/esm2022/core/option/optgroup.mjs +4 -4
- package/esm2022/core/option/option-module.mjs +4 -4
- package/esm2022/core/option/option.mjs +8 -8
- package/esm2022/core/overlay/overlay-position-map.mjs +1 -1
- package/esm2022/core/pop-up/pop-up-trigger.mjs +6 -6
- package/esm2022/core/pop-up/pop-up.mjs +12 -5
- package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +6 -6
- package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +4 -4
- package/esm2022/core/services/measure-scrollbar.service.mjs +6 -6
- package/esm2022/core/services/theme.service.mjs +5 -5
- package/esm2022/core/utils/data-size/data-size.pipe.mjs +7 -7
- package/esm2022/core/utils/data-size/size.mjs +1 -1
- package/esm2022/core/version.mjs +2 -2
- package/esm2022/datepicker/calendar-body.component.mjs +4 -4
- package/esm2022/datepicker/calendar-header.component.mjs +5 -5
- package/esm2022/datepicker/calendar.component.mjs +6 -6
- package/esm2022/datepicker/datepicker-animations.mjs +1 -1
- package/esm2022/datepicker/datepicker-input.directive.mjs +6 -6
- package/esm2022/datepicker/datepicker-intl.mjs +3 -3
- package/esm2022/datepicker/datepicker-module.mjs +4 -4
- package/esm2022/datepicker/datepicker-toggle.component.mjs +8 -8
- package/esm2022/datepicker/datepicker.component.mjs +10 -10
- package/esm2022/datepicker/month-view.component.mjs +6 -6
- package/esm2022/divider/divider.component.mjs +3 -3
- package/esm2022/divider/divider.module.mjs +4 -4
- package/esm2022/dl/dl.component.mjs +11 -11
- package/esm2022/dl/dl.module.mjs +4 -4
- package/esm2022/dropdown/dropdown-content.directive.mjs +6 -6
- package/esm2022/dropdown/dropdown-item.component.mjs +9 -8
- package/esm2022/dropdown/dropdown-trigger.directive.mjs +6 -6
- package/esm2022/dropdown/dropdown.component.mjs +6 -6
- package/esm2022/dropdown/dropdown.module.mjs +4 -4
- package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +10 -10
- package/esm2022/file-upload/file-drop.mjs +43 -6
- package/esm2022/file-upload/file-upload.mjs +1 -1
- package/esm2022/file-upload/file-upload.module.mjs +4 -4
- package/esm2022/file-upload/multiple-file-upload.component.mjs +7 -7
- package/esm2022/file-upload/single-file-upload.component.mjs +7 -7
- package/esm2022/form-field/cleaner.mjs +3 -3
- package/esm2022/form-field/form-field.mjs +21 -15
- package/esm2022/form-field/form-field.module.mjs +4 -4
- package/esm2022/form-field/hint.mjs +20 -8
- package/esm2022/form-field/password-hint.mjs +24 -21
- package/esm2022/form-field/password-toggle.mjs +6 -6
- package/esm2022/form-field/prefix.mjs +3 -3
- package/esm2022/form-field/stepper.mjs +4 -4
- package/esm2022/form-field/suffix.mjs +3 -3
- package/esm2022/form-field/validate.directive.mjs +17 -12
- package/esm2022/icon/icon-button.component.mjs +7 -6
- package/esm2022/icon/icon-item.component.mjs +7 -6
- package/esm2022/icon/icon.component.mjs +18 -6
- package/esm2022/icon/icon.module.mjs +4 -4
- package/esm2022/input/input-number-validators.mjs +7 -7
- package/esm2022/input/input-number.mjs +12 -9
- package/esm2022/input/input-password.mjs +6 -6
- package/esm2022/input/input.mjs +9 -9
- package/esm2022/input/input.module.mjs +4 -4
- package/esm2022/link/link.component.mjs +5 -5
- package/esm2022/link/link.module.mjs +4 -4
- package/esm2022/list/list-selection.component.mjs +16 -16
- package/esm2022/list/list.component.mjs +9 -9
- package/esm2022/list/list.module.mjs +4 -4
- package/esm2022/loader-overlay/loader-overlay.component.mjs +15 -15
- package/esm2022/loader-overlay/loader-overlay.module.mjs +4 -4
- package/esm2022/markdown/markdown.component.mjs +5 -5
- package/esm2022/markdown/markdown.module.mjs +4 -4
- package/esm2022/markdown/markdown.service.mjs +3 -3
- package/esm2022/modal/css-unit.pipe.mjs +3 -3
- package/esm2022/modal/modal-control.service.mjs +6 -6
- package/esm2022/modal/modal.component.mjs +22 -13
- package/esm2022/modal/modal.directive.mjs +12 -12
- package/esm2022/modal/modal.module.mjs +4 -4
- package/esm2022/modal/modal.service.mjs +5 -5
- package/esm2022/navbar/navbar-item.component.mjs +61 -52
- package/esm2022/navbar/navbar.component.mjs +28 -17
- package/esm2022/navbar/navbar.module.mjs +4 -4
- package/esm2022/navbar/vertical-navbar.component.mjs +9 -8
- package/esm2022/popover/popover-confirm.component.mjs +11 -13
- package/esm2022/popover/popover.component.mjs +16 -11
- package/esm2022/popover/popover.module.mjs +4 -4
- package/esm2022/progress-bar/progress-bar.component.mjs +11 -11
- package/esm2022/progress-bar/progress-bar.module.mjs +4 -4
- package/esm2022/progress-spinner/progress-spinner.component.mjs +12 -12
- package/esm2022/progress-spinner/progress-spinner.module.mjs +4 -4
- package/esm2022/radio/radio.component.mjs +10 -10
- package/esm2022/radio/radio.module.mjs +4 -4
- package/esm2022/risk-level/risk-level.component.mjs +3 -3
- package/esm2022/risk-level/risk-level.module.mjs +4 -4
- package/esm2022/select/select-option.directive.mjs +6 -6
- package/esm2022/select/select.component.mjs +26 -25
- package/esm2022/select/select.module.mjs +4 -4
- package/esm2022/sidebar/sidebar.component.mjs +11 -11
- package/esm2022/sidebar/sidebar.module.mjs +4 -4
- package/esm2022/sidepanel/sidepanel-container.component.mjs +7 -7
- package/esm2022/sidepanel/sidepanel-directives.mjs +18 -18
- package/esm2022/sidepanel/sidepanel-ref.mjs +1 -1
- package/esm2022/sidepanel/sidepanel.module.mjs +4 -4
- package/esm2022/sidepanel/sidepanel.service.mjs +6 -6
- package/esm2022/splitter/splitter.component.mjs +17 -17
- package/esm2022/splitter/splitter.module.mjs +4 -4
- package/esm2022/table/table.component.mjs +3 -3
- package/esm2022/table/table.module.mjs +4 -4
- package/esm2022/tabs/paginated-tab-header.mjs +6 -6
- package/esm2022/tabs/tab-body.component.mjs +11 -11
- package/esm2022/tabs/tab-content.directive.mjs +4 -4
- package/esm2022/tabs/tab-group.component.mjs +21 -21
- package/esm2022/tabs/tab-header.component.mjs +7 -7
- package/esm2022/tabs/tab-label-wrapper.directive.mjs +6 -5
- package/esm2022/tabs/tab-label.directive.mjs +3 -3
- package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +12 -11
- package/esm2022/tabs/tab.component.mjs +5 -5
- package/esm2022/tabs/tabs.module.mjs +4 -4
- package/esm2022/tags/tag-input.mjs +6 -6
- package/esm2022/tags/tag-list.component.mjs +9 -8
- package/esm2022/tags/tag.component.mjs +16 -16
- package/esm2022/tags/tag.module.mjs +4 -4
- package/esm2022/textarea/textarea.component.mjs +36 -25
- package/esm2022/textarea/textarea.module.mjs +4 -4
- package/esm2022/timepicker/timepicker.directive.mjs +6 -6
- package/esm2022/timepicker/timepicker.module.mjs +4 -4
- package/esm2022/timezone/cities-by-filter.pipe.mjs +3 -3
- package/esm2022/timezone/timezone-option.component.mjs +5 -5
- package/esm2022/timezone/timezone-option.directive.mjs +5 -5
- package/esm2022/timezone/timezone-select.component.mjs +9 -9
- package/esm2022/timezone/timezone.module.mjs +4 -4
- package/esm2022/timezone/timezone.utils.mjs +1 -1
- package/esm2022/timezone/utc-offset.pipe.mjs +3 -3
- package/esm2022/title/title.directive.mjs +6 -6
- package/esm2022/title/title.module.mjs +4 -4
- package/esm2022/toast/toast-container.component.mjs +6 -6
- package/esm2022/toast/toast.component.mjs +11 -10
- package/esm2022/toast/toast.module.mjs +4 -4
- package/esm2022/toast/toast.service.mjs +6 -6
- package/esm2022/toast/toast.type.mjs +1 -1
- package/esm2022/toggle/toggle.component.mjs +5 -5
- package/esm2022/toggle/toggle.module.mjs +4 -4
- package/esm2022/tooltip/tooltip.component.mjs +23 -23
- package/esm2022/tooltip/tooltip.module.mjs +4 -4
- package/esm2022/tree/control/base-tree-control.mjs +4 -4
- package/esm2022/tree/control/flat-tree-control.filters.mjs +47 -0
- package/esm2022/tree/control/flat-tree-control.mjs +27 -45
- package/esm2022/tree/control/nested-tree-control.mjs +1 -1
- package/esm2022/tree/control/tree-control.mjs +1 -1
- package/esm2022/tree/data-source/flat-data-source.mjs +1 -1
- package/esm2022/tree/node.mjs +5 -5
- package/esm2022/tree/outlet.mjs +4 -4
- package/esm2022/tree/padding.directive.mjs +6 -6
- package/esm2022/tree/public-api.mjs +2 -1
- package/esm2022/tree/toggle.mjs +12 -12
- package/esm2022/tree/tree-base.mjs +10 -10
- package/esm2022/tree/tree-option.component.mjs +12 -8
- package/esm2022/tree/tree-selection.component.mjs +6 -6
- package/esm2022/tree/tree.mjs +3 -3
- package/esm2022/tree/tree.module.mjs +4 -4
- package/esm2022/tree-select/tree-select.component.mjs +25 -17
- package/esm2022/tree-select/tree-select.module.mjs +9 -9
- package/fesm2022/koobiq-components-alert.mjs +16 -16
- package/fesm2022/koobiq-components-autocomplete.mjs +20 -20
- package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
- package/fesm2022/koobiq-components-badge.mjs +16 -15
- package/fesm2022/koobiq-components-badge.mjs.map +1 -1
- package/fesm2022/koobiq-components-button-toggle.mjs +15 -15
- package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-button.mjs +19 -16
- package/fesm2022/koobiq-components-button.mjs.map +1 -1
- package/fesm2022/koobiq-components-card.mjs +8 -8
- package/fesm2022/koobiq-components-card.mjs.map +1 -1
- package/fesm2022/koobiq-components-checkbox.mjs +13 -13
- package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
- package/fesm2022/koobiq-components-code-block.mjs +22 -21
- package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
- package/fesm2022/koobiq-components-core.mjs +199 -191
- package/fesm2022/koobiq-components-core.mjs.map +1 -1
- package/fesm2022/koobiq-components-datepicker.mjs +45 -45
- package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-divider.mjs +7 -7
- package/fesm2022/koobiq-components-dl.mjs +14 -14
- package/fesm2022/koobiq-components-dl.mjs.map +1 -1
- package/fesm2022/koobiq-components-dropdown.mjs +27 -26
- package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-ellipsis-center.mjs +9 -9
- package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
- package/fesm2022/koobiq-components-file-upload.mjs +58 -21
- package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
- package/fesm2022/koobiq-components-form-field.mjs +97 -72
- package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
- package/fesm2022/koobiq-components-icon.mjs +33 -19
- package/fesm2022/koobiq-components-icon.mjs.map +1 -1
- package/fesm2022/koobiq-components-input.mjs +34 -31
- package/fesm2022/koobiq-components-input.mjs.map +1 -1
- package/fesm2022/koobiq-components-link.mjs +8 -8
- package/fesm2022/koobiq-components-link.mjs.map +1 -1
- package/fesm2022/koobiq-components-list.mjs +27 -27
- package/fesm2022/koobiq-components-list.mjs.map +1 -1
- package/fesm2022/koobiq-components-loader-overlay.mjs +18 -18
- package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
- package/fesm2022/koobiq-components-markdown.mjs +11 -11
- package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-modal.mjs +49 -40
- package/fesm2022/koobiq-components-modal.mjs.map +1 -1
- package/fesm2022/koobiq-components-navbar.mjs +99 -78
- package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-popover.mjs +30 -26
- package/fesm2022/koobiq-components-popover.mjs.map +1 -1
- package/fesm2022/koobiq-components-progress-bar.mjs +14 -14
- package/fesm2022/koobiq-components-progress-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-progress-spinner.mjs +15 -15
- package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
- package/fesm2022/koobiq-components-radio.mjs +13 -13
- package/fesm2022/koobiq-components-radio.mjs.map +1 -1
- package/fesm2022/koobiq-components-risk-level.mjs +7 -7
- package/fesm2022/koobiq-components-select.mjs +35 -34
- package/fesm2022/koobiq-components-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidebar.mjs +14 -14
- package/fesm2022/koobiq-components-sidebar.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidepanel.mjs +32 -32
- package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
- package/fesm2022/koobiq-components-splitter.mjs +20 -20
- package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
- package/fesm2022/koobiq-components-table.mjs +7 -7
- package/fesm2022/koobiq-components-tabs.mjs +71 -69
- package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
- package/fesm2022/koobiq-components-tags.mjs +32 -31
- package/fesm2022/koobiq-components-tags.mjs.map +1 -1
- package/fesm2022/koobiq-components-textarea.mjs +39 -28
- package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
- package/fesm2022/koobiq-components-timepicker.mjs +9 -9
- package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-timezone.mjs +28 -28
- package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
- package/fesm2022/koobiq-components-title.mjs +9 -9
- package/fesm2022/koobiq-components-title.mjs.map +1 -1
- package/fesm2022/koobiq-components-toast.mjs +24 -23
- package/fesm2022/koobiq-components-toast.mjs.map +1 -1
- package/fesm2022/koobiq-components-toggle.mjs +8 -8
- package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-tooltip.mjs +26 -26
- package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree-select.mjs +32 -24
- package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree.mjs +132 -100
- package/fesm2022/koobiq-components-tree.mjs.map +1 -1
- package/file-upload/_file-upload-theme.scss +10 -1
- package/file-upload/file-drop.d.ts +2 -1
- package/file-upload/file-upload.d.ts +4 -1
- package/file-upload/multiple-file-upload.component.d.ts +2 -2
- package/file-upload/single-file-upload.component.d.ts +2 -2
- package/form-field/_form-field-theme.scss +8 -14
- package/form-field/form-field.d.ts +2 -0
- package/form-field/form-field.scss +12 -1
- package/form-field/hint.scss +1 -1
- package/form-field/password-hint.d.ts +7 -5
- package/icon/icon-button.component.d.ts +1 -0
- package/icon/icon-item.component.d.ts +1 -0
- package/icon/icon.component.d.ts +3 -0
- package/input/input-number.d.ts +3 -2
- package/link/_link-theme.scss +1 -0
- package/list/_list-theme.scss +1 -2
- package/list/list.scss +3 -3
- package/modal/_modal-confirm.scss +0 -24
- package/modal/modal.component.d.ts +3 -0
- package/modal/modal.scss +32 -15
- package/navbar/_navbar-theme.scss +8 -7
- package/navbar/navbar-item.component.d.ts +5 -2
- package/navbar/navbar-item.scss +7 -2
- package/navbar/navbar.component.d.ts +3 -0
- package/package.json +12 -12
- package/popover/popover-confirm.component.d.ts +0 -2
- package/popover/popover.component.d.ts +6 -1
- package/prebuilt-themes/dark-theme.css +1 -1
- package/prebuilt-themes/light-theme.css +1 -1
- package/progress-spinner/progress-spinner.scss +10 -5
- package/select/select.scss +7 -0
- package/splitter/_splitter-theme.scss +5 -4
- package/tabs/_tabs-common.scss +1 -1
- package/tabs/_tabs-theme.scss +2 -2
- package/tags/tag-list.scss +4 -0
- package/textarea/textarea.component.d.ts +4 -3
- package/toast/toast.type.d.ts +1 -0
- package/tooltip/tooltip.component.d.ts +1 -1
- package/tree/_tree-theme.scss +5 -5
- package/tree/control/base-tree-control.d.ts +1 -1
- package/tree/control/flat-tree-control.d.ts +5 -3
- package/tree/control/flat-tree-control.filters.d.ts +26 -0
- package/tree/control/tree-control.d.ts +1 -1
- package/tree/public-api.d.ts +1 -0
- package/tree/tree-option.scss +4 -4
- package/tree-select/tree-select.component.d.ts +8 -4
- package/tree-select/tree-select.module.d.ts +1 -1
- package/form-field/password-hint.scss +0 -11
|
@@ -126,20 +126,20 @@ export class KbqMultipleFileUploadComponent {
|
|
|
126
126
|
const fileExt = file.name.split('.').pop() || '';
|
|
127
127
|
return this.acceptedFiles !== '*/*' && this.acceptedFiles.length > 0 ? this.acceptedFiles.includes(fileExt) : true;
|
|
128
128
|
}
|
|
129
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
130
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.5", type: KbqMultipleFileUploadComponent, selector: "kbq-multiple-file-upload", inputs: { accept: "accept", disabled: "disabled", errors: "errors", files: "files", size: "size", inputId: "inputId", customValidation: "customValidation" }, outputs: { fileQueueChanged: "fileQueueChanged" }, host: { classAttribute: "kbq-multiple-file-upload" }, queries: [{ propertyName: "customFileIcon", first: true, predicate: ["kbqFileIcon"], descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: "<div class=\"kbq-file-upload\"\n kbqFileDrop\n [class.kbq-disabled]=\"disabled\"\n [class.selected]=\"files && files.length\"\n [ngClass]=\"size\"\n (filesDropped)=\"onFileDropped($event)\">\n\n <ng-container *ngIf=\"!files.length; else fileOutput\">\n <div class=\"dropzone\">\n <ng-container *ngIf=\"size === 'default' else compactCaption\">\n <i kbq-icon=\"mc-upload-to-cloud_32\"></i>\n <div class=\"dropzone__text\">\n <span class=\"multiple__header\">{{ config.title }}</span>\n <div>\n <span class=\"multiple__caption\">\n {{ config.captionText }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n\n <input #input\n type=\"file\"\n class=\"cdk-visually-hidden\"\n multiple\n [id]=\"inputId\"\n [accept]=\"acceptedFiles\"\n [disabled]=\"disabled\"\n (change)=\"onFileSelectedViaClick($event)\">\n</div>\n\n<div class=\"kbq-file-upload__info-section\">\n <kbq-hint class=\"kbq-file-upload__hint\">\n <ng-content select=\"[hint]\"></ng-content>\n </kbq-hint>\n\n <ng-container *ngIf=\"hasErrors\">\n <kbq-hint class=\"kbq-file-upload__hint kbq-error\"\n *ngFor=\"let error of errors\">\n {{ error }}\n </kbq-hint>\n </ng-container>\n</div>\n\n<ng-template #fileOutput>\n <div class=\"file-upload__dropzone\">\n <div class=\"kbq-file-upload__grid\">\n <div class=\"kbq-file-multiple-uploaded__header\">\n <div class=\"kbq-file-multiple-uploaded__header-inner\">\n <div [class]=\"'kbq-file-upload__' + column.cssClass\" *ngFor=\"let column of columnDefs\">\n {{ column.header }}\n </div>\n </div>\n </div>\n\n <kbq-list-selection [autoSelect]=\"false\" [disabled]=\"disabled\">\n <kbq-list-option\n class=\"multiple__uploaded-item\"\n [value]=\"file.file.name\"\n (keydown.delete)=\"deleteFile(index)\"\n (keydown.backspace)=\"deleteFile(index)\"\n *ngFor=\"let file of files; let index = index;\">\n <div class=\"kbq-file-upload__row\" [class.error]=\"file.hasError\">\n <div class=\"kbq-file-upload__file\">\n <ng-container *ngIf=\"{ loading: file.loading | async, progress: file.progress | async } as asyncData\">\n <ng-container *ngIf=\"!asyncData.loading\"\n [ngTemplateOutlet]=\"$any(customFileIcon)\"\n [ngTemplateOutletContext]=\"{ $implicit: file }\">\n </ng-container>\n\n <kbq-progress-spinner\n class=\"pt-nat-file-upload-name-cell__icon\"\n [value]=\"asyncData.progress || 0\"\n *ngIf=\"asyncData.loading\"\n ></kbq-progress-spinner>\n </ng-container>\n\n <span class=\"file-item__text\" [mcEllipsisCenter]=\"file.file.name\" [minVisibleLength]=\"10\"></span>\n </div>\n <div class=\"kbq-file-upload__size\">\n {{ file.file.size | mcDataSize }}\n </div>\n <div class=\"kbq-file-upload__action\">\n <i kbq-icon-button=\"mc-close-circle_16\" (click)=\"deleteFile(index, $event)\"></i>\n </div>\n </div>\n </kbq-list-option>\n </kbq-list-selection>\n </div>\n\n <div class=\"btn-upload\">\n <div class=\"dropzone\">\n <i kbq-icon=\"mc-upload-to-cloud_24\"></i>\n <span class=\"dropzone__text multiple__caption\">\n {{ config.captionTextWhenSelected }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n </div>\n </div>\n </div>\n</ng-template>\n\n<ng-template #compactCaption>\n <i kbq-icon=\"mc-upload-to-cloud_24\"></i>\n <span class=\"dropzone__text multiple__caption\">\n {{ config.captionText }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n</ng-template>\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.04) 10px,rgba(255,255,255,.04) 10px,rgba(255,255,255,.04) 20px,rgba(0,0,0,.04) 20px,rgba(0,0,0,.04) 30px,rgba(255,255,255,.04) 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.kbq-file-upload{box-sizing:border-box;display:flex;align-items:center;position:relative}.kbq-file-upload .dropzone,.kbq-file-upload .file-item{display:flex;align-items:center}.kbq-file-upload .kbq-ellipsis-center{position:relative;display:flex}.kbq-file-upload .kbq-ellipsis-center .data-text-start{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:pre}.kbq-file-upload .kbq-ellipsis-center .data-text-end{flex:1 0 auto;overflow:hidden;white-space:pre}\n", "@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.04) 10px,rgba(255,255,255,.04) 10px,rgba(255,255,255,.04) 20px,rgba(0,0,0,.04) 20px,rgba(0,0,0,.04) 30px,rgba(255,255,255,.04) 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.kbq-multiple-file-upload .kbq-file-upload{border-radius:var(--kbq-file-upload-size-multiple-big-container-border-radius, 8px);border-width:var(--kbq-file-upload-size-multiple-big-container-border-width, 1px);border-style:dashed}.kbq-multiple-file-upload .kbq-file-upload.default:not(.selected){justify-content:center;padding:var(--kbq-file-upload-size-multiple-big-container-padding-vertical, 24px) var(--kbq-file-upload-size-multiple-big-container-padding-vertical, 24px);min-height:var(--kbq-file-upload-size-multiple-big-container-min-height, 160px);min-width:var(--kbq-file-upload-size-multiple-big-container-min-width, 320px)}.kbq-multiple-file-upload .kbq-file-upload.default:not(.selected) .dropzone{gap:var(--kbq-file-upload-size-multiple-big-container-content-gap-horizontal, 12px)}.kbq-multiple-file-upload .kbq-file-upload.default:not(.selected) .dropzone__text .multiple__caption{padding-top:var(--kbq-file-upload-size-multiple-big-text-block-content-gap-vertical, 4px);gap:var(--kbq-file-upload-size-multiple-big-text-block-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload.compact:not(.selected){padding:var(--kbq-file-upload-size-single-container-padding-vertical, 12px) var(--kbq-file-upload-size-single-container-padding-horizontal, 12px)}.kbq-multiple-file-upload .kbq-file-upload.compact:not(.selected) .dropzone{gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-multiple-file-upload .kbq-file-upload.compact:not(.selected) .dropzone .dropzone__text.multiple__caption{padding-top:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);padding-bottom:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);gap:var(--kbq-file-upload-size-single-text-block-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload .kbq-list-option.multiple__uploaded-item{padding:0}.kbq-multiple-file-upload .kbq-file-upload .kbq-list-option.multiple__uploaded-item .kbq-list-text{padding:calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-vertical, 8px) - var(--kbq-list-size-container-focus-outline-width, 2px)) calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-horizontal, 8px) - var(--kbq-list-size-container-focus-outline-width, 2px))}.kbq-multiple-file-upload .kbq-file-upload .kbq-list-option.multiple__uploaded-item .kbq-icon{margin-right:0}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__grid{min-height:144px}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header-inner,.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row{display:flex;align-items:center}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header-inner .kbq-file-upload__file,.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__file{width:65%;max-width:65%;gap:var(--kbq-file-upload-size-multiple-big-grid-cell-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header-inner .kbq-file-upload__size,.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__size{width:64px;min-width:64px;text-align:left;flex-grow:1}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__file{display:flex;align-items:center}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__file .file-item__text{margin-left:0;width:90%}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header{border-bottom-width:1px;border-bottom-style:solid}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header .kbq-file-multiple-uploaded__header-inner{padding:calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-vertical, 8px) + 3px) calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-horizontal, 8px) + 3px)}.kbq-multiple-file-upload .kbq-file-upload .btn-upload{padding:calc(var(--kbq-file-upload-size-single-container-padding-vertical, 12px) - 1px) calc(var(--kbq-file-upload-size-single-container-padding-horizontal, 12px) - 1px);border-top-left-radius:var(--kbq-file-upload-size-single-container-border-radius, 8px);border-top-right-radius:var(--kbq-file-upload-size-single-container-border-radius, 8px);border-top-width:var(--kbq-file-upload-size-single-container-border-width, 1px);border-top-style:dashed}.kbq-multiple-file-upload .kbq-file-upload .btn-upload .dropzone{gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-multiple-file-upload .kbq-file-upload .btn-upload .dropzone .dropzone__text.multiple__caption{padding-top:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);padding-bottom:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);gap:var(--kbq-file-upload-size-single-text-block-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload .file-upload__dropzone{width:100%;height:100%}.kbq-hint{display:block}.kbq-file-upload__hint{margin-top:var(--kbq-form-field-hint-size-margin-top, 4px)}\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: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.KbqProgressSpinner, selector: "kbq-progress-spinner", inputs: ["color", "id", "value", "mode", "size"] }, { kind: "component", type: i4.KbqIcon, selector: "[kbq-icon]", inputs: ["color", "small", "autoColor"] }, { kind: "component", type: i4.KbqIconButton, selector: "[kbq-icon-button]", inputs: ["color", "small", "tabindex", "disabled"] }, { kind: "component", type: i5.KbqListSelection, selector: "kbq-list-selection", inputs: ["disabled", "autoSelect", "noUnselectLast", "horizontal", "tabIndex", "compareWith"], outputs: ["onSelectAll", "onCopy", "selectionChange"], exportAs: ["kbqListSelection"] }, { kind: "component", type: i5.KbqListOption, selector: "kbq-list-option", inputs: ["checkboxPosition", "value", "disabled", "showCheckbox", "selected"], exportAs: ["kbqListOption"] }, { kind: "component", type: i6.KbqHint, selector: "kbq-hint", inputs: ["color", "id", "fillTextOff", "compact"], exportAs: ["kbqHint"] }, { kind: "directive", type: i7.KbqEllipsisCenterDirective, selector: "[mcEllipsisCenter]", inputs: ["mcEllipsisCenter", "minVisibleLength"] }, { kind: "directive", type: i8.KbqFileDropDirective, selector: "[kbqFileDrop]", outputs: ["filesDropped"], exportAs: ["kbqFileDrop"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.KbqDataSizePipe, name: "mcDataSize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
129
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: KbqMultipleFileUploadComponent, deps: [{ token: i1.FocusMonitor }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: KBQ_FILE_UPLOAD_CONFIGURATION, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
130
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.0", type: KbqMultipleFileUploadComponent, selector: "kbq-multiple-file-upload", inputs: { accept: "accept", disabled: "disabled", errors: "errors", files: "files", size: "size", inputId: "inputId", customValidation: "customValidation" }, outputs: { fileQueueChanged: "fileQueueChanged" }, host: { classAttribute: "kbq-multiple-file-upload" }, queries: [{ propertyName: "customFileIcon", first: true, predicate: ["kbqFileIcon"], descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: "<div class=\"kbq-file-upload\"\n kbqFileDrop\n [class.kbq-disabled]=\"disabled\"\n [class.selected]=\"files && files.length\"\n [ngClass]=\"size\"\n (filesDropped)=\"onFileDropped($event)\">\n\n <ng-container *ngIf=\"!files.length; else fileOutput\">\n <div class=\"dropzone\">\n <ng-container *ngIf=\"size === 'default' else compactCaption\">\n <i kbq-icon=\"mc-upload-to-cloud_32\"></i>\n <div class=\"dropzone__text\">\n <span class=\"multiple__header\">{{ config.title }}</span>\n <div>\n <span class=\"multiple__caption\">\n {{ config.captionText }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n\n <input #input\n type=\"file\"\n class=\"cdk-visually-hidden\"\n multiple\n [id]=\"inputId\"\n [accept]=\"acceptedFiles\"\n [disabled]=\"disabled\"\n (change)=\"onFileSelectedViaClick($event)\">\n</div>\n\n<div class=\"kbq-file-upload__info-section\">\n <kbq-hint class=\"kbq-file-upload__hint\">\n <ng-content select=\"[hint]\"></ng-content>\n </kbq-hint>\n\n <ng-container *ngIf=\"hasErrors\">\n <kbq-hint class=\"kbq-file-upload__hint kbq-error\"\n *ngFor=\"let error of errors\">\n {{ error }}\n </kbq-hint>\n </ng-container>\n</div>\n\n<ng-template #fileOutput>\n <div class=\"file-upload__dropzone\">\n <div class=\"kbq-file-upload__grid\">\n <div class=\"kbq-file-multiple-uploaded__header\">\n <div class=\"kbq-file-multiple-uploaded__header-inner\">\n <div [class]=\"'kbq-file-upload__' + column.cssClass\" *ngFor=\"let column of columnDefs\">\n {{ column.header }}\n </div>\n </div>\n </div>\n\n <kbq-list-selection [autoSelect]=\"false\" [disabled]=\"disabled\">\n <kbq-list-option\n class=\"multiple__uploaded-item\"\n [value]=\"file.file.name\"\n (keydown.delete)=\"deleteFile(index)\"\n (keydown.backspace)=\"deleteFile(index)\"\n *ngFor=\"let file of files; let index = index;\">\n <div class=\"kbq-file-upload__row\" [class.error]=\"file.hasError\">\n <div class=\"kbq-file-upload__file\">\n <ng-container *ngIf=\"{ loading: file.loading | async, progress: file.progress | async } as asyncData\">\n <ng-container *ngIf=\"!asyncData.loading\"\n [ngTemplateOutlet]=\"$any(customFileIcon)\"\n [ngTemplateOutletContext]=\"{ $implicit: file }\">\n </ng-container>\n\n <kbq-progress-spinner\n class=\"pt-nat-file-upload-name-cell__icon\"\n [value]=\"asyncData.progress || 0\"\n *ngIf=\"asyncData.loading\"\n ></kbq-progress-spinner>\n </ng-container>\n\n <span class=\"file-item__text\" [mcEllipsisCenter]=\"file.file.name\" [minVisibleLength]=\"10\"></span>\n </div>\n <div class=\"kbq-file-upload__size\">\n {{ file.file.size | mcDataSize }}\n </div>\n <div class=\"kbq-file-upload__action\">\n <i kbq-icon-button=\"mc-close-circle_16\" (click)=\"deleteFile(index, $event)\"></i>\n </div>\n </div>\n </kbq-list-option>\n </kbq-list-selection>\n </div>\n\n <div class=\"btn-upload\">\n <div class=\"dropzone\">\n <i kbq-icon=\"mc-upload-to-cloud_24\"></i>\n <span class=\"dropzone__text multiple__caption\">\n {{ config.captionTextWhenSelected }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n </div>\n </div>\n </div>\n</ng-template>\n\n<ng-template #compactCaption>\n <i kbq-icon=\"mc-upload-to-cloud_24\"></i>\n <span class=\"dropzone__text multiple__caption\">\n {{ config.captionText }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n</ng-template>\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 10px,#ffffff0a 10px 20px,#0000000a 20px 30px,#ffffff0a 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-file-upload{box-sizing:border-box;display:flex;align-items:center;position:relative}.kbq-file-upload .dropzone,.kbq-file-upload .file-item{display:flex;align-items:center}.kbq-file-upload .kbq-ellipsis-center{position:relative;display:flex}.kbq-file-upload .kbq-ellipsis-center .data-text-start{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:pre}.kbq-file-upload .kbq-ellipsis-center .data-text-end{flex:1 0 auto;overflow:hidden;white-space:pre}\n", "@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 10px,#ffffff0a 10px 20px,#0000000a 20px 30px,#ffffff0a 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-multiple-file-upload .kbq-file-upload{border-radius:var(--kbq-file-upload-size-multiple-big-container-border-radius, 8px);border-width:var(--kbq-file-upload-size-multiple-big-container-border-width, 1px);border-style:dashed}.kbq-multiple-file-upload .kbq-file-upload.default:not(.selected){justify-content:center;padding:var(--kbq-file-upload-size-multiple-big-container-padding-vertical, 24px) var(--kbq-file-upload-size-multiple-big-container-padding-vertical, 24px);min-height:var(--kbq-file-upload-size-multiple-big-container-min-height, 160px);min-width:var(--kbq-file-upload-size-multiple-big-container-min-width, 320px)}.kbq-multiple-file-upload .kbq-file-upload.default:not(.selected) .dropzone{gap:var(--kbq-file-upload-size-multiple-big-container-content-gap-horizontal, 12px)}.kbq-multiple-file-upload .kbq-file-upload.default:not(.selected) .dropzone__text .multiple__caption{padding-top:var(--kbq-file-upload-size-multiple-big-text-block-content-gap-vertical, 4px);gap:var(--kbq-file-upload-size-multiple-big-text-block-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload.compact:not(.selected){padding:var(--kbq-file-upload-size-single-container-padding-vertical, 12px) var(--kbq-file-upload-size-single-container-padding-horizontal, 12px)}.kbq-multiple-file-upload .kbq-file-upload.compact:not(.selected) .dropzone{gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-multiple-file-upload .kbq-file-upload.compact:not(.selected) .dropzone .dropzone__text.multiple__caption{padding-top:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);padding-bottom:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);gap:var(--kbq-file-upload-size-single-text-block-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload .kbq-list-option.multiple__uploaded-item{padding:0}.kbq-multiple-file-upload .kbq-file-upload .kbq-list-option.multiple__uploaded-item .kbq-list-text{padding:calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-vertical, 8px) - var(--kbq-list-size-container-focus-outline-width, 2px)) calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-horizontal, 8px) - var(--kbq-list-size-container-focus-outline-width, 2px))}.kbq-multiple-file-upload .kbq-file-upload .kbq-list-option.multiple__uploaded-item .kbq-icon{margin-right:0}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__grid{min-height:144px}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header-inner,.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row{display:flex;align-items:center}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header-inner .kbq-file-upload__file,.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__file{width:65%;max-width:65%;gap:var(--kbq-file-upload-size-multiple-big-grid-cell-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header-inner .kbq-file-upload__size,.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__size{width:64px;min-width:64px;text-align:left;flex-grow:1}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__file{display:flex;align-items:center}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__file .file-item__text{margin-left:0;width:90%}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header{border-bottom-width:1px;border-bottom-style:solid}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header .kbq-file-multiple-uploaded__header-inner{padding:calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-vertical, 8px) + 3px) calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-horizontal, 8px) + 3px)}.kbq-multiple-file-upload .kbq-file-upload .btn-upload{padding:calc(var(--kbq-file-upload-size-single-container-padding-vertical, 12px) - 1px) calc(var(--kbq-file-upload-size-single-container-padding-horizontal, 12px) - 1px);border-top-left-radius:var(--kbq-file-upload-size-single-container-border-radius, 8px);border-top-right-radius:var(--kbq-file-upload-size-single-container-border-radius, 8px);border-top-width:var(--kbq-file-upload-size-single-container-border-width, 1px);border-top-style:dashed}.kbq-multiple-file-upload .kbq-file-upload .btn-upload .dropzone{gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-multiple-file-upload .kbq-file-upload .btn-upload .dropzone .dropzone__text.multiple__caption{padding-top:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);padding-bottom:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);gap:var(--kbq-file-upload-size-single-text-block-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload .file-upload__dropzone{width:100%;height:100%}.kbq-hint{display:block}.kbq-file-upload__hint{margin-top:var(--kbq-form-field-hint-size-margin-top, 4px)}\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: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.KbqProgressSpinner, selector: "kbq-progress-spinner", inputs: ["color", "id", "value", "mode", "size"] }, { kind: "component", type: i4.KbqIcon, selector: "[kbq-icon]", inputs: ["color", "small", "autoColor"] }, { kind: "component", type: i4.KbqIconButton, selector: "[kbq-icon-button]", inputs: ["color", "small", "tabindex", "disabled"] }, { kind: "component", type: i5.KbqListSelection, selector: "kbq-list-selection", inputs: ["disabled", "autoSelect", "noUnselectLast", "horizontal", "tabIndex", "compareWith"], outputs: ["onSelectAll", "onCopy", "selectionChange"], exportAs: ["kbqListSelection"] }, { kind: "component", type: i5.KbqListOption, selector: "kbq-list-option", inputs: ["checkboxPosition", "value", "disabled", "showCheckbox", "selected"], exportAs: ["kbqListOption"] }, { kind: "component", type: i6.KbqHint, selector: "kbq-hint", inputs: ["color", "id", "fillTextOff", "compact"], exportAs: ["kbqHint"] }, { kind: "directive", type: i7.KbqEllipsisCenterDirective, selector: "[mcEllipsisCenter]", inputs: ["mcEllipsisCenter", "minVisibleLength"] }, { kind: "directive", type: i8.KbqFileDropDirective, selector: "[kbqFileDrop]", outputs: ["filesDropped"], exportAs: ["kbqFileDrop"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.KbqDataSizePipe, name: "mcDataSize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
131
131
|
}
|
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
132
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: KbqMultipleFileUploadComponent, decorators: [{
|
|
133
133
|
type: Component,
|
|
134
134
|
args: [{ selector: 'kbq-multiple-file-upload', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
135
135
|
class: 'kbq-multiple-file-upload'
|
|
136
|
-
}, template: "<div class=\"kbq-file-upload\"\n kbqFileDrop\n [class.kbq-disabled]=\"disabled\"\n [class.selected]=\"files && files.length\"\n [ngClass]=\"size\"\n (filesDropped)=\"onFileDropped($event)\">\n\n <ng-container *ngIf=\"!files.length; else fileOutput\">\n <div class=\"dropzone\">\n <ng-container *ngIf=\"size === 'default' else compactCaption\">\n <i kbq-icon=\"mc-upload-to-cloud_32\"></i>\n <div class=\"dropzone__text\">\n <span class=\"multiple__header\">{{ config.title }}</span>\n <div>\n <span class=\"multiple__caption\">\n {{ config.captionText }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n\n <input #input\n type=\"file\"\n class=\"cdk-visually-hidden\"\n multiple\n [id]=\"inputId\"\n [accept]=\"acceptedFiles\"\n [disabled]=\"disabled\"\n (change)=\"onFileSelectedViaClick($event)\">\n</div>\n\n<div class=\"kbq-file-upload__info-section\">\n <kbq-hint class=\"kbq-file-upload__hint\">\n <ng-content select=\"[hint]\"></ng-content>\n </kbq-hint>\n\n <ng-container *ngIf=\"hasErrors\">\n <kbq-hint class=\"kbq-file-upload__hint kbq-error\"\n *ngFor=\"let error of errors\">\n {{ error }}\n </kbq-hint>\n </ng-container>\n</div>\n\n<ng-template #fileOutput>\n <div class=\"file-upload__dropzone\">\n <div class=\"kbq-file-upload__grid\">\n <div class=\"kbq-file-multiple-uploaded__header\">\n <div class=\"kbq-file-multiple-uploaded__header-inner\">\n <div [class]=\"'kbq-file-upload__' + column.cssClass\" *ngFor=\"let column of columnDefs\">\n {{ column.header }}\n </div>\n </div>\n </div>\n\n <kbq-list-selection [autoSelect]=\"false\" [disabled]=\"disabled\">\n <kbq-list-option\n class=\"multiple__uploaded-item\"\n [value]=\"file.file.name\"\n (keydown.delete)=\"deleteFile(index)\"\n (keydown.backspace)=\"deleteFile(index)\"\n *ngFor=\"let file of files; let index = index;\">\n <div class=\"kbq-file-upload__row\" [class.error]=\"file.hasError\">\n <div class=\"kbq-file-upload__file\">\n <ng-container *ngIf=\"{ loading: file.loading | async, progress: file.progress | async } as asyncData\">\n <ng-container *ngIf=\"!asyncData.loading\"\n [ngTemplateOutlet]=\"$any(customFileIcon)\"\n [ngTemplateOutletContext]=\"{ $implicit: file }\">\n </ng-container>\n\n <kbq-progress-spinner\n class=\"pt-nat-file-upload-name-cell__icon\"\n [value]=\"asyncData.progress || 0\"\n *ngIf=\"asyncData.loading\"\n ></kbq-progress-spinner>\n </ng-container>\n\n <span class=\"file-item__text\" [mcEllipsisCenter]=\"file.file.name\" [minVisibleLength]=\"10\"></span>\n </div>\n <div class=\"kbq-file-upload__size\">\n {{ file.file.size | mcDataSize }}\n </div>\n <div class=\"kbq-file-upload__action\">\n <i kbq-icon-button=\"mc-close-circle_16\" (click)=\"deleteFile(index, $event)\"></i>\n </div>\n </div>\n </kbq-list-option>\n </kbq-list-selection>\n </div>\n\n <div class=\"btn-upload\">\n <div class=\"dropzone\">\n <i kbq-icon=\"mc-upload-to-cloud_24\"></i>\n <span class=\"dropzone__text multiple__caption\">\n {{ config.captionTextWhenSelected }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n </div>\n </div>\n </div>\n</ng-template>\n\n<ng-template #compactCaption>\n <i kbq-icon=\"mc-upload-to-cloud_24\"></i>\n <span class=\"dropzone__text multiple__caption\">\n {{ config.captionText }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n</ng-template>\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.04) 10px,rgba(255,255,255,.04) 10px,rgba(255,255,255,.04) 20px,rgba(0,0,0,.04) 20px,rgba(0,0,0,.04) 30px,rgba(255,255,255,.04) 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.kbq-file-upload{box-sizing:border-box;display:flex;align-items:center;position:relative}.kbq-file-upload .dropzone,.kbq-file-upload .file-item{display:flex;align-items:center}.kbq-file-upload .kbq-ellipsis-center{position:relative;display:flex}.kbq-file-upload .kbq-ellipsis-center .data-text-start{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:pre}.kbq-file-upload .kbq-ellipsis-center .data-text-end{flex:1 0 auto;overflow:hidden;white-space:pre}\n", "@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.04) 10px,rgba(255,255,255,.04) 10px,rgba(255,255,255,.04) 20px,rgba(0,0,0,.04) 20px,rgba(0,0,0,.04) 30px,rgba(255,255,255,.04) 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.kbq-multiple-file-upload .kbq-file-upload{border-radius:var(--kbq-file-upload-size-multiple-big-container-border-radius, 8px);border-width:var(--kbq-file-upload-size-multiple-big-container-border-width, 1px);border-style:dashed}.kbq-multiple-file-upload .kbq-file-upload.default:not(.selected){justify-content:center;padding:var(--kbq-file-upload-size-multiple-big-container-padding-vertical, 24px) var(--kbq-file-upload-size-multiple-big-container-padding-vertical, 24px);min-height:var(--kbq-file-upload-size-multiple-big-container-min-height, 160px);min-width:var(--kbq-file-upload-size-multiple-big-container-min-width, 320px)}.kbq-multiple-file-upload .kbq-file-upload.default:not(.selected) .dropzone{gap:var(--kbq-file-upload-size-multiple-big-container-content-gap-horizontal, 12px)}.kbq-multiple-file-upload .kbq-file-upload.default:not(.selected) .dropzone__text .multiple__caption{padding-top:var(--kbq-file-upload-size-multiple-big-text-block-content-gap-vertical, 4px);gap:var(--kbq-file-upload-size-multiple-big-text-block-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload.compact:not(.selected){padding:var(--kbq-file-upload-size-single-container-padding-vertical, 12px) var(--kbq-file-upload-size-single-container-padding-horizontal, 12px)}.kbq-multiple-file-upload .kbq-file-upload.compact:not(.selected) .dropzone{gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-multiple-file-upload .kbq-file-upload.compact:not(.selected) .dropzone .dropzone__text.multiple__caption{padding-top:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);padding-bottom:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);gap:var(--kbq-file-upload-size-single-text-block-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload .kbq-list-option.multiple__uploaded-item{padding:0}.kbq-multiple-file-upload .kbq-file-upload .kbq-list-option.multiple__uploaded-item .kbq-list-text{padding:calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-vertical, 8px) - var(--kbq-list-size-container-focus-outline-width, 2px)) calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-horizontal, 8px) - var(--kbq-list-size-container-focus-outline-width, 2px))}.kbq-multiple-file-upload .kbq-file-upload .kbq-list-option.multiple__uploaded-item .kbq-icon{margin-right:0}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__grid{min-height:144px}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header-inner,.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row{display:flex;align-items:center}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header-inner .kbq-file-upload__file,.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__file{width:65%;max-width:65%;gap:var(--kbq-file-upload-size-multiple-big-grid-cell-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header-inner .kbq-file-upload__size,.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__size{width:64px;min-width:64px;text-align:left;flex-grow:1}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__file{display:flex;align-items:center}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__file .file-item__text{margin-left:0;width:90%}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header{border-bottom-width:1px;border-bottom-style:solid}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header .kbq-file-multiple-uploaded__header-inner{padding:calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-vertical, 8px) + 3px) calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-horizontal, 8px) + 3px)}.kbq-multiple-file-upload .kbq-file-upload .btn-upload{padding:calc(var(--kbq-file-upload-size-single-container-padding-vertical, 12px) - 1px) calc(var(--kbq-file-upload-size-single-container-padding-horizontal, 12px) - 1px);border-top-left-radius:var(--kbq-file-upload-size-single-container-border-radius, 8px);border-top-right-radius:var(--kbq-file-upload-size-single-container-border-radius, 8px);border-top-width:var(--kbq-file-upload-size-single-container-border-width, 1px);border-top-style:dashed}.kbq-multiple-file-upload .kbq-file-upload .btn-upload .dropzone{gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-multiple-file-upload .kbq-file-upload .btn-upload .dropzone .dropzone__text.multiple__caption{padding-top:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);padding-bottom:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);gap:var(--kbq-file-upload-size-single-text-block-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload .file-upload__dropzone{width:100%;height:100%}.kbq-hint{display:block}.kbq-file-upload__hint{margin-top:var(--kbq-form-field-hint-size-margin-top, 4px)}\n"] }]
|
|
137
|
-
}], ctorParameters:
|
|
136
|
+
}, template: "<div class=\"kbq-file-upload\"\n kbqFileDrop\n [class.kbq-disabled]=\"disabled\"\n [class.selected]=\"files && files.length\"\n [ngClass]=\"size\"\n (filesDropped)=\"onFileDropped($event)\">\n\n <ng-container *ngIf=\"!files.length; else fileOutput\">\n <div class=\"dropzone\">\n <ng-container *ngIf=\"size === 'default' else compactCaption\">\n <i kbq-icon=\"mc-upload-to-cloud_32\"></i>\n <div class=\"dropzone__text\">\n <span class=\"multiple__header\">{{ config.title }}</span>\n <div>\n <span class=\"multiple__caption\">\n {{ config.captionText }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n\n <input #input\n type=\"file\"\n class=\"cdk-visually-hidden\"\n multiple\n [id]=\"inputId\"\n [accept]=\"acceptedFiles\"\n [disabled]=\"disabled\"\n (change)=\"onFileSelectedViaClick($event)\">\n</div>\n\n<div class=\"kbq-file-upload__info-section\">\n <kbq-hint class=\"kbq-file-upload__hint\">\n <ng-content select=\"[hint]\"></ng-content>\n </kbq-hint>\n\n <ng-container *ngIf=\"hasErrors\">\n <kbq-hint class=\"kbq-file-upload__hint kbq-error\"\n *ngFor=\"let error of errors\">\n {{ error }}\n </kbq-hint>\n </ng-container>\n</div>\n\n<ng-template #fileOutput>\n <div class=\"file-upload__dropzone\">\n <div class=\"kbq-file-upload__grid\">\n <div class=\"kbq-file-multiple-uploaded__header\">\n <div class=\"kbq-file-multiple-uploaded__header-inner\">\n <div [class]=\"'kbq-file-upload__' + column.cssClass\" *ngFor=\"let column of columnDefs\">\n {{ column.header }}\n </div>\n </div>\n </div>\n\n <kbq-list-selection [autoSelect]=\"false\" [disabled]=\"disabled\">\n <kbq-list-option\n class=\"multiple__uploaded-item\"\n [value]=\"file.file.name\"\n (keydown.delete)=\"deleteFile(index)\"\n (keydown.backspace)=\"deleteFile(index)\"\n *ngFor=\"let file of files; let index = index;\">\n <div class=\"kbq-file-upload__row\" [class.error]=\"file.hasError\">\n <div class=\"kbq-file-upload__file\">\n <ng-container *ngIf=\"{ loading: file.loading | async, progress: file.progress | async } as asyncData\">\n <ng-container *ngIf=\"!asyncData.loading\"\n [ngTemplateOutlet]=\"$any(customFileIcon)\"\n [ngTemplateOutletContext]=\"{ $implicit: file }\">\n </ng-container>\n\n <kbq-progress-spinner\n class=\"pt-nat-file-upload-name-cell__icon\"\n [value]=\"asyncData.progress || 0\"\n *ngIf=\"asyncData.loading\"\n ></kbq-progress-spinner>\n </ng-container>\n\n <span class=\"file-item__text\" [mcEllipsisCenter]=\"file.file.name\" [minVisibleLength]=\"10\"></span>\n </div>\n <div class=\"kbq-file-upload__size\">\n {{ file.file.size | mcDataSize }}\n </div>\n <div class=\"kbq-file-upload__action\">\n <i kbq-icon-button=\"mc-close-circle_16\" (click)=\"deleteFile(index, $event)\"></i>\n </div>\n </div>\n </kbq-list-option>\n </kbq-list-selection>\n </div>\n\n <div class=\"btn-upload\">\n <div class=\"dropzone\">\n <i kbq-icon=\"mc-upload-to-cloud_24\"></i>\n <span class=\"dropzone__text multiple__caption\">\n {{ config.captionTextWhenSelected }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n </div>\n </div>\n </div>\n</ng-template>\n\n<ng-template #compactCaption>\n <i kbq-icon=\"mc-upload-to-cloud_24\"></i>\n <span class=\"dropzone__text multiple__caption\">\n {{ config.captionText }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n</ng-template>\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 10px,#ffffff0a 10px 20px,#0000000a 20px 30px,#ffffff0a 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-file-upload{box-sizing:border-box;display:flex;align-items:center;position:relative}.kbq-file-upload .dropzone,.kbq-file-upload .file-item{display:flex;align-items:center}.kbq-file-upload .kbq-ellipsis-center{position:relative;display:flex}.kbq-file-upload .kbq-ellipsis-center .data-text-start{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:pre}.kbq-file-upload .kbq-ellipsis-center .data-text-end{flex:1 0 auto;overflow:hidden;white-space:pre}\n", "@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 10px,#ffffff0a 10px 20px,#0000000a 20px 30px,#ffffff0a 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-multiple-file-upload .kbq-file-upload{border-radius:var(--kbq-file-upload-size-multiple-big-container-border-radius, 8px);border-width:var(--kbq-file-upload-size-multiple-big-container-border-width, 1px);border-style:dashed}.kbq-multiple-file-upload .kbq-file-upload.default:not(.selected){justify-content:center;padding:var(--kbq-file-upload-size-multiple-big-container-padding-vertical, 24px) var(--kbq-file-upload-size-multiple-big-container-padding-vertical, 24px);min-height:var(--kbq-file-upload-size-multiple-big-container-min-height, 160px);min-width:var(--kbq-file-upload-size-multiple-big-container-min-width, 320px)}.kbq-multiple-file-upload .kbq-file-upload.default:not(.selected) .dropzone{gap:var(--kbq-file-upload-size-multiple-big-container-content-gap-horizontal, 12px)}.kbq-multiple-file-upload .kbq-file-upload.default:not(.selected) .dropzone__text .multiple__caption{padding-top:var(--kbq-file-upload-size-multiple-big-text-block-content-gap-vertical, 4px);gap:var(--kbq-file-upload-size-multiple-big-text-block-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload.compact:not(.selected){padding:var(--kbq-file-upload-size-single-container-padding-vertical, 12px) var(--kbq-file-upload-size-single-container-padding-horizontal, 12px)}.kbq-multiple-file-upload .kbq-file-upload.compact:not(.selected) .dropzone{gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-multiple-file-upload .kbq-file-upload.compact:not(.selected) .dropzone .dropzone__text.multiple__caption{padding-top:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);padding-bottom:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);gap:var(--kbq-file-upload-size-single-text-block-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload .kbq-list-option.multiple__uploaded-item{padding:0}.kbq-multiple-file-upload .kbq-file-upload .kbq-list-option.multiple__uploaded-item .kbq-list-text{padding:calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-vertical, 8px) - var(--kbq-list-size-container-focus-outline-width, 2px)) calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-horizontal, 8px) - var(--kbq-list-size-container-focus-outline-width, 2px))}.kbq-multiple-file-upload .kbq-file-upload .kbq-list-option.multiple__uploaded-item .kbq-icon{margin-right:0}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__grid{min-height:144px}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header-inner,.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row{display:flex;align-items:center}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header-inner .kbq-file-upload__file,.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__file{width:65%;max-width:65%;gap:var(--kbq-file-upload-size-multiple-big-grid-cell-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header-inner .kbq-file-upload__size,.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__size{width:64px;min-width:64px;text-align:left;flex-grow:1}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__file{display:flex;align-items:center}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-upload__row .kbq-file-upload__file .file-item__text{margin-left:0;width:90%}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header{border-bottom-width:1px;border-bottom-style:solid}.kbq-multiple-file-upload .kbq-file-upload .kbq-file-multiple-uploaded__header .kbq-file-multiple-uploaded__header-inner{padding:calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-vertical, 8px) + 3px) calc(var(--kbq-file-upload-size-multiple-big-grid-cell-padding-horizontal, 8px) + 3px)}.kbq-multiple-file-upload .kbq-file-upload .btn-upload{padding:calc(var(--kbq-file-upload-size-single-container-padding-vertical, 12px) - 1px) calc(var(--kbq-file-upload-size-single-container-padding-horizontal, 12px) - 1px);border-top-left-radius:var(--kbq-file-upload-size-single-container-border-radius, 8px);border-top-right-radius:var(--kbq-file-upload-size-single-container-border-radius, 8px);border-top-width:var(--kbq-file-upload-size-single-container-border-width, 1px);border-top-style:dashed}.kbq-multiple-file-upload .kbq-file-upload .btn-upload .dropzone{gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-multiple-file-upload .kbq-file-upload .btn-upload .dropzone .dropzone__text.multiple__caption{padding-top:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);padding-bottom:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);gap:var(--kbq-file-upload-size-single-text-block-content-gap-horizontal, 4px)}.kbq-multiple-file-upload .kbq-file-upload .file-upload__dropzone{width:100%;height:100%}.kbq-hint{display:block}.kbq-file-upload__hint{margin-top:var(--kbq-form-field-hint-size-margin-top, 4px)}\n"] }]
|
|
137
|
+
}], ctorParameters: () => [{ type: i1.FocusMonitor }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
|
|
138
138
|
type: Optional
|
|
139
139
|
}, {
|
|
140
140
|
type: Inject,
|
|
141
141
|
args: [KBQ_FILE_UPLOAD_CONFIGURATION]
|
|
142
|
-
}] }]
|
|
142
|
+
}] }], propDecorators: { accept: [{
|
|
143
143
|
type: Input
|
|
144
144
|
}], disabled: [{
|
|
145
145
|
type: Input
|
|
@@ -162,4 +162,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImpor
|
|
|
162
162
|
type: ViewChild,
|
|
163
163
|
args: ['input']
|
|
164
164
|
}] } });
|
|
165
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlwbGUtZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9maWxlLXVwbG9hZC9tdWx0aXBsZS1maWxlLXVwbG9hZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2ZpbGUtdXBsb2FkL211bHRpcGxlLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFFTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxXQUFXLEVBQ1gsU0FBUyxFQUNULGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVyRCxPQUFPLEVBQ0gsNkJBQTZCLEVBS2hDLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7OztBQUd2QixJQUFJLDhCQUE4QixHQUFHLENBQUMsQ0FBQztBQVl2QyxNQUFNLENBQUMsTUFBTSw4Q0FBOEMsR0FBOEI7SUFDckYsV0FBVyxFQUFFLHFCQUFxQjtJQUNsQyx1QkFBdUIsRUFBRSxvQkFBb0I7SUFDN0MseUJBQXlCLEVBQUUsc0JBQXNCO0lBQ2pELFVBQVUsRUFBRSxVQUFVO0lBQ3RCLEtBQUssRUFBRSxpQkFBaUI7SUFDeEIsV0FBVyxFQUFFO1FBQ1QsSUFBSSxFQUFFLE1BQU07UUFDWixJQUFJLEVBQUUsUUFBUTtLQUNqQjtDQUNKLENBQUM7QUFhRixNQUFNLE9BQU8sOEJBQThCO0lBbUJ2QyxJQUFJLGFBQWE7UUFDYixPQUFP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QUMvQjt3QkFDRixLQUFLLEVBQUUsMEJBQTBCO3FCQUNwQzs7MEJBaUNJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsNkJBQTZCOzRDQTlCNUMsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDSSxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBRTRELGNBQWM7c0JBQWhGLFlBQVk7dUJBQUMsYUFBYSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO2dCQUU3QyxLQUFLO3NCQUF4QixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBSZW5kZXJlcjIsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FuRGlzYWJsZSB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gICAgS0JRX0ZJTEVfVVBMT0FEX0NPTkZJR1VSQVRJT04sXG4gICAgS2JxRmlsZUl0ZW0sXG4gICAgS2JxRmlsZVZhbGlkYXRvckZuLFxuICAgIEticUlucHV0RmlsZSxcbiAgICBLYnFJbnB1dEZpbGVMYWJlbFxufSBmcm9tICcuL2ZpbGUtdXBsb2FkJztcblxuXG5sZXQgbmV4dE11bHRpcGxlRmlsZVVwbG9hZFVuaXF1ZUlkID0gMDtcbmV4cG9ydCBpbnRlcmZhY2UgS2JxSW5wdXRGaWxlTXVsdGlwbGVMYWJlbCBleHRlbmRzIEticUlucHV0RmlsZUxhYmVsIHtcbiAgICBjYXB0aW9uVGV4dFdoZW5TZWxlY3RlZDogc3RyaW5nO1xuICAgIGNhcHRpb25UZXh0Rm9yQ29tcGFjdFNpemU6IHN0cmluZztcbiAgICBncmlkSGVhZGVyczoge1xuICAgICAgICBmaWxlOiBzdHJpbmc7XG4gICAgICAgIHNpemU6IHN0cmluZztcbiAgICB9O1xuICAgIFtrOiBzdHJpbmcgfCBudW1iZXIgfCBzeW1ib2xdOiB1bmtub3duO1xufVxuXG5cbmV4cG9ydCBjb25zdCBLQlFfTVVMVElQTEVfRklMRV9VUExPQURfREVGQVVMVF9DT05GSUdVUkFUSU9OOiBLYnFJbnB1dEZpbGVNdWx0aXBsZUxhYmVsID0ge1xuICAgIGNhcHRpb25UZXh0OiAn0J/QtdGA0LXRgtCw0YnQuNGC0LUg0YHRjtC00LAg0LjQu9C4JyxcbiAgICBjYXB0aW9uVGV4dFdoZW5TZWxlY3RlZDogJ9Cf0LXRgNC10YLQsNGJ0LjRgtC1INC10YnQtSDQuNC70LgnLFxuICAgIGNhcHRpb25UZXh0Rm9yQ29tcGFjdFNpemU6ICfQn9C10YDQtdGC0LDRidC40YLQtSDRhNCw0LnQu9GLINC40LvQuCcsXG4gICAgYnJvd3NlTGluazogJ9Cy0YvQsdC10YDQuNGC0LUnLFxuICAgIHRpdGxlOiAn0JfQsNCz0YDRg9C30LjRgtC1INGE0LDQudC70YsnLFxuICAgIGdyaWRIZWFkZXJzOiB7XG4gICAgICAgIGZpbGU6ICfQpNCw0LnQuycsXG4gICAgICAgIHNpemU6ICfQoNCw0LfQvNC10YAnXG4gICAgfVxufTtcblxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1tdWx0aXBsZS1maWxlLXVwbG9hZCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL211bHRpcGxlLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9maWxlLXVwbG9hZC5zY3NzJywgJy4vbXVsdGlwbGUtZmlsZS11cGxvYWQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtbXVsdGlwbGUtZmlsZS11cGxvYWQnXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFNdWx0aXBsZUZpbGVVcGxvYWRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIEticUlucHV0RmlsZSwgQ2FuRGlzYWJsZSB7XG4gICAgQElucHV0KCkgYWNjZXB0Pzogc3RyaW5nW107XG4gICAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XG4gICAgQElucHV0KCkgZXJyb3JzOiBzdHJpbmdbXSA9IFtdO1xuICAgIEBJbnB1dCgpIGZpbGVzOiBLYnFGaWxlSXRlbVtdID0gW107XG4gICAgQElucHV0KCkgc2l6ZTogJ2NvbXBhY3QnIHwgJ2RlZmF1bHQnID0gJ2RlZmF1bHQnO1xuICAgIEBJbnB1dCgpIGlucHV0SWQ6IHN0cmluZyA9IGBrYnEtbXVsdGlwbGUtZmlsZS11cGxvYWQtJHtuZXh0TXVsdGlwbGVGaWxlVXBsb2FkVW5pcXVlSWQrK31gO1xuICAgIEBJbnB1dCgpIGN1c3RvbVZhbGlkYXRpb24/OiBLYnFGaWxlVmFsaWRhdG9yRm5bXTtcbiAgICBAT3V0cHV0KCkgZmlsZVF1ZXVlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEticUZpbGVJdGVtW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxLYnFGaWxlSXRlbVtdPigpO1xuXG4gICAgQENvbnRlbnRDaGlsZCgna2JxRmlsZUljb24nLCB7IHN0YXRpYzogZmFsc2UsIHJlYWQ6IFRlbXBsYXRlUmVmIH0pIGN1c3RvbUZpbGVJY29uOiBUZW1wbGF0ZVJlZjxIVE1MRWxlbWVudD47XG5cbiAgICBAVmlld0NoaWxkKCdpbnB1dCcpIGlucHV0OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgaGFzRm9jdXMgPSBmYWxzZTtcbiAgICBjb2x1bW5EZWZzOiB7IGhlYWRlcjogc3RyaW5nOyBjc3NDbGFzczogc3RyaW5nIH1bXTtcblxuICAgIHByaXZhdGUgZm9jdXNNb25pdG9yU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuXG4gICAgZ2V0IGFjY2VwdGVkRmlsZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWNjZXB0ICYmIHRoaXMuYWNjZXB0Lmxlbmd0aCA+IDAgPyB0aGlzLmFjY2VwdC5tYXAoKGV4dDogc3RyaW5nKSA9PiBgLiR7ZXh0fWApLmpvaW4oJywnKSA6ICcqLyonO1xuICAgIH1cblxuICAgIGdldCBoYXNFcnJvcnMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVycm9ycyAmJiAhIXRoaXMuZXJyb3JzLmxlbmd0aDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBmb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvcixcbiAgICAgICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoS0JRX0ZJTEVfVVBMT0FEX0NPTkZJR1VSQVRJT04pIHB1YmxpYyBjb25maWc6IEticUlucHV0RmlsZU11bHRpcGxlTGFiZWxcbiAgICApIHtcbiAgICAgICAgdGhpcy5jb25maWcgPSBjb25maWcgfHwgS0JRX01VTFRJUExFX0ZJTEVfVVBMT0FEX0RFRkFVTFRfQ09ORklHVVJBVElPTjtcbiAgICAgICAgdGhpcy5jb2x1bW5EZWZzID0gW1xuICAgICAgICAgICAgeyBoZWFkZXI6IHRoaXMuY29uZmlnLmdyaWRIZWFkZXJzLmZpbGUsIGNzc0NsYXNzOiAnZmlsZScgfSxcbiAgICAgICAgICAgIHsgaGVhZGVyOiB0aGlzLmNvbmZpZy5ncmlkSGVhZGVycy5zaXplLCBjc3NDbGFzczogJ3NpemUnIH0sXG4gICAgICAgICAgICB7IGhlYWRlcjogJycsIGNzc0NsYXNzOiAnYWN0aW9uJyB9XG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvclN1YnNjcmlwdGlvbiA9IHRoaXMuZm9jdXNNb25pdG9yLm1vbml0b3IodGhpcy5pbnB1dClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKG9yaWdpbikgPT4gdGhpcy5vbkZvY3VzKG9yaWdpbiA9PT0gJ2tleWJvYXJkJykpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIG9uRmlsZVNlbGVjdGVkVmlhQ2xpY2soeyB0YXJnZXQgfTogRXZlbnQpIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHsgcmV0dXJuOyB9XG4gICAgICAgIHRoaXMuZmlsZXMgPSBbXG4gICAgICAgICAgICAuLi50aGlzLmZpbGVzLFxuICAgICAgICAgICAgLi4udGhpcy5tYXBUb0ZpbGVJdGVtKCh0YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuZmlsZXMpXG4gICAgICAgIF07XG4gICAgICAgIC8qIGV2ZW4gaWYgdGhlIHVzZXIgc2VsZWN0cyB0aGUgc2FtZSBmaWxlLFxuICAgICAgICAgICAgICAgICB0aGUgb25jaGFuZ2UgZXZlbnQgd2lsbCBiZSB0cmlnZ2VyZWQgZXZlcnkgdGltZSB1c2VyIGNsaWNrcyBvbiB0aGUgY29udHJvbC4qL1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCwgJ3ZhbHVlJywgbnVsbCk7XG4gICAgICAgIHRoaXMub25GaWxlTGlzdENoYW5nZSgpO1xuICAgIH1cblxuICAgIG9uRmlsZURyb3BwZWQoZmlsZXM6IEZpbGVMaXN0KSB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7IHJldHVybjsgfVxuICAgICAgICB0aGlzLmZpbGVzID0gWy4uLnRoaXMuZmlsZXMsIC4uLnRoaXMubWFwVG9GaWxlSXRlbShmaWxlcyldO1xuXG4gICAgICAgIHRoaXMub25GaWxlTGlzdENoYW5nZSgpO1xuICAgIH1cblxuICAgIGRlbGV0ZUZpbGUoaW5kZXg6IG51bWJlciwgZXZlbnQ/OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7IHJldHVybjsgfVxuICAgICAgICBldmVudD8uc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMuZmlsZXMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgdGhpcy5maWxlcyA9IFsuLi50aGlzLmZpbGVzXTtcblxuICAgICAgICB0aGlzLm9uRmlsZUxpc3RDaGFuZ2UoKTtcbiAgICB9XG5cbiAgICBvbkZpbGVMaXN0Q2hhbmdlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZpbGVRdWV1ZUNoYW5nZWQuZW1pdCh0aGlzLmZpbGVzKTtcbiAgICB9XG5cbiAgICBvbkZvY3VzKGZvY3VzU3RhdGU6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHsgcmV0dXJuOyB9XG4gICAgICAgIHRoaXMuaGFzRm9jdXMgPSBmb2N1c1N0YXRlO1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG1hcFRvRmlsZUl0ZW0oZmlsZXM6IEZpbGVMaXN0IHwgbnVsbCk6IEticUZpbGVJdGVtW10ge1xuICAgICAgICBpZiAoIWZpbGVzKSB7IHJldHVybiBbXTsgfVxuXG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKGZpbGVzKVxuICAgICAgICAgICAgLmZpbHRlcigoZmlsZSkgPT4gdGhpcy5pc0NvcnJlY3RFeHRlbnNpb24oZmlsZSkpXG4gICAgICAgICAgICAubWFwKChmaWxlOiBGaWxlKSA9PiAoe1xuICAgICAgICAgICAgICAgIGZpbGUsXG4gICAgICAgICAgICAgICAgaGFzRXJyb3I6IHRoaXMudmFsaWRhdGVGaWxlKGZpbGUpLFxuICAgICAgICAgICAgICAgIGxvYWRpbmc6IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpLFxuICAgICAgICAgICAgICAgIHByb2dyZXNzOiBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMClcbiAgICAgICAgICAgIH0pKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHZhbGlkYXRlRmlsZShmaWxlOiBGaWxlKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICh0aGlzLmN1c3RvbVZhbGlkYXRpb24gJiYgdGhpcy5jdXN0b21WYWxpZGF0aW9uLmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3QgZXJyb3JzUGVyRmlsZSA9IHRoaXMuY3VzdG9tVmFsaWRhdGlvbi5yZWR1Y2UoXG4gICAgICAgICAgICAgICAgKGVycm9yczogKHN0cmluZyB8IG51bGwpW10sIHZhbGlkYXRvckZuOiBLYnFGaWxlVmFsaWRhdG9yRm4pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JzLnB1c2godmFsaWRhdG9yRm4oZmlsZSkpO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBlcnJvcnM7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBbXSkuZmlsdGVyKEJvb2xlYW4pIGFzIHN0cmluZ1tdO1xuXG4gICAgICAgICAgICB0aGlzLmVycm9ycyA9IFtcbiAgICAgICAgICAgICAgICAuLi50aGlzLmVycm9ycyxcbiAgICAgICAgICAgICAgICAuLi5lcnJvcnNQZXJGaWxlXG4gICAgICAgICAgICBdO1xuXG4gICAgICAgICAgICByZXR1cm4gISFlcnJvcnNQZXJGaWxlLmxlbmd0aDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaXNDb3JyZWN0RXh0ZW5zaW9uKGZpbGU6IEZpbGUpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgZmlsZUV4dDogc3RyaW5nID0gZmlsZS5uYW1lLnNwbGl0KCcuJykucG9wKCkgfHwgJyc7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuYWNjZXB0ZWRGaWxlcyAhPT0gJyovKicgJiYgdGhpcy5hY2NlcHRlZEZpbGVzLmxlbmd0aCA+IDAgPyB0aGlzLmFjY2VwdGVkRmlsZXMuaW5jbHVkZXMoZmlsZUV4dCkgOiB0cnVlO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJrYnEtZmlsZS11cGxvYWRcIlxuICAgICBrYnFGaWxlRHJvcFxuICAgICBbY2xhc3Mua2JxLWRpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgW2NsYXNzLnNlbGVjdGVkXT1cImZpbGVzICYmIGZpbGVzLmxlbmd0aFwiXG4gICAgIFtuZ0NsYXNzXT1cInNpemVcIlxuICAgICAoZmlsZXNEcm9wcGVkKT1cIm9uRmlsZURyb3BwZWQoJGV2ZW50KVwiPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFmaWxlcy5sZW5ndGg7IGVsc2UgZmlsZU91dHB1dFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcHpvbmVcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgICpuZ0lmPVwic2l6ZSA9PT0gJ2RlZmF1bHQnIGVsc2UgY29tcGFjdENhcHRpb25cIj5cbiAgICAgICAgICAgICAgICA8aSBrYnEtaWNvbj1cIm1jLXVwbG9hZC10by1jbG91ZF8zMlwiPjwvaT5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcHpvbmVfX3RleHRcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdWx0aXBsZV9faGVhZGVyXCI+e3sgY29uZmlnLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtdWx0aXBsZV9fY2FwdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbmZpZy5jYXB0aW9uVGV4dCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImticS1saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmticS1mb2N1c2VkXT1cImhhc0ZvY3VzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcl09XCJpbnB1dElkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgY29uZmlnLmJyb3dzZUxpbmsgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPGlucHV0ICNpbnB1dFxuICAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgIGNsYXNzPVwiY2RrLXZpc3VhbGx5LWhpZGRlblwiXG4gICAgICAgICAgIG11bHRpcGxlXG4gICAgICAgICAgIFtpZF09XCJpbnB1dElkXCJcbiAgICAgICAgICAgW2FjY2VwdF09XCJhY2NlcHRlZEZpbGVzXCJcbiAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgKGNoYW5nZSk9XCJvbkZpbGVTZWxlY3RlZFZpYUNsaWNrKCRldmVudClcIj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwia2JxLWZpbGUtdXBsb2FkX19pbmZvLXNlY3Rpb25cIj5cbiAgICA8a2JxLWhpbnQgY2xhc3M9XCJrYnEtZmlsZS11cGxvYWRfX2hpbnRcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2hpbnRdXCI+PC9uZy1jb250ZW50PlxuICAgIDwva2JxLWhpbnQ+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGFzRXJyb3JzXCI+XG4gICAgICAgIDxrYnEtaGludCBjbGFzcz1cImticS1maWxlLXVwbG9hZF9faGludCBrYnEtZXJyb3JcIlxuICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZXJyb3Igb2YgZXJyb3JzXCI+XG4gICAgICAgICAgICAgICAge3sgZXJyb3IgfX1cbiAgICAgICAgPC9rYnEtaGludD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2ZpbGVPdXRwdXQ+XG4gICAgPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkX19kcm9wem9uZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLWZpbGUtdXBsb2FkX19ncmlkXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLWZpbGUtbXVsdGlwbGUtdXBsb2FkZWRfX2hlYWRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtZmlsZS1tdWx0aXBsZS11cGxvYWRlZF9faGVhZGVyLWlubmVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgW2NsYXNzXT1cIidrYnEtZmlsZS11cGxvYWRfXycgKyBjb2x1bW4uY3NzQ2xhc3NcIiAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbkRlZnNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbHVtbi5oZWFkZXIgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGticS1saXN0LXNlbGVjdGlvbiBbYXV0b1NlbGVjdF09XCJmYWxzZVwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiPlxuICAgICAgICAgICAgICAgIDxrYnEtbGlzdC1vcHRpb25cbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtdWx0aXBsZV9fdXBsb2FkZWQtaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJmaWxlLmZpbGUubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIChrZXlkb3duLmRlbGV0ZSk9XCJkZWxldGVGaWxlKGluZGV4KVwiXG4gICAgICAgICAgICAgICAgICAgIChrZXlkb3duLmJhY2tzcGFjZSk9XCJkZWxldGVGaWxlKGluZGV4KVwiXG4gICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBmaWxlIG9mIGZpbGVzOyBsZXQgaW5kZXggPSBpbmRleDtcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImticS1maWxlLXVwbG9hZF9fcm93XCIgW2NsYXNzLmVycm9yXT1cImZpbGUuaGFzRXJyb3JcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtZmlsZS11cGxvYWRfX2ZpbGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwieyBsb2FkaW5nOiBmaWxlLmxvYWRpbmcgfCBhc3luYywgcHJvZ3Jlc3M6IGZpbGUucHJvZ3Jlc3MgfCBhc3luYyB9IGFzIGFzeW5jRGF0YVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWFzeW5jRGF0YS5sb2FkaW5nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCIkYW55KGN1c3RvbUZpbGVJY29uKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBmaWxlIH1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGticS1wcm9ncmVzcy1zcGlubmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInB0LW5hdC1maWxlLXVwbG9hZC1uYW1lLWNlbGxfX2ljb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cImFzeW5jRGF0YS5wcm9ncmVzcyB8fCAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYXN5bmNEYXRhLmxvYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9rYnEtcHJvZ3Jlc3Mtc3Bpbm5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmlsZS1pdGVtX190ZXh0XCIgW21jRWxsaXBzaXNDZW50ZXJdPVwiZmlsZS5maWxlLm5hbWVcIiBbbWluVmlzaWJsZUxlbmd0aF09XCIxMFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImticS1maWxlLXVwbG9hZF9fc2l6ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGZpbGUuZmlsZS5zaXplIHwgbWNEYXRhU2l6ZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLWZpbGUtdXBsb2FkX19hY3Rpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBrYnEtaWNvbi1idXR0b249XCJtYy1jbG9zZS1jaXJjbGVfMTZcIiAoY2xpY2spPVwiZGVsZXRlRmlsZShpbmRleCwgJGV2ZW50KVwiPjwvaT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2ticS1saXN0LW9wdGlvbj5cbiAgICAgICAgICAgIDwva2JxLWxpc3Qtc2VsZWN0aW9uPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuLXVwbG9hZFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRyb3B6b25lXCI+XG4gICAgICAgICAgICAgICAgPGkga2JxLWljb249XCJtYy11cGxvYWQtdG8tY2xvdWRfMjRcIj48L2k+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkcm9wem9uZV9fdGV4dCBtdWx0aXBsZV9fY2FwdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBjb25maWcuY2FwdGlvblRleHRXaGVuU2VsZWN0ZWQgfX1cbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwia2JxLWxpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmticS1mb2N1c2VkXT1cImhhc0ZvY3VzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JdPVwiaW5wdXRJZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgY29uZmlnLmJyb3dzZUxpbmsgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2NvbXBhY3RDYXB0aW9uPlxuICAgIDxpIGticS1pY29uPVwibWMtdXBsb2FkLXRvLWNsb3VkXzI0XCI+PC9pPlxuICAgIDxzcGFuIGNsYXNzPVwiZHJvcHpvbmVfX3RleHQgbXVsdGlwbGVfX2NhcHRpb25cIj5cbiAgICAgICAge3sgY29uZmlnLmNhcHRpb25UZXh0IH19XG4gICAgICAgIDxsYWJlbCBjbGFzcz1cImticS1saW5rXCJcbiAgICAgICAgICAgICAgIFtjbGFzcy5rYnEtZm9jdXNlZF09XCJoYXNGb2N1c1wiXG4gICAgICAgICAgICAgICBbZm9yXT1cImlucHV0SWRcIj5cbiAgICAgICAge3sgY29uZmlnLmJyb3dzZUxpbmsgfX1cbiAgICA8L2xhYmVsPlxuICAgIDwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlwbGUtZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9maWxlLXVwbG9hZC9tdWx0aXBsZS1maWxlLXVwbG9hZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2ZpbGUtdXBsb2FkL211bHRpcGxlLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFFTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxXQUFXLEVBQ1gsU0FBUyxFQUNULGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVyRCxPQUFPLEVBQ0gsNkJBQTZCLEVBS2hDLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7OztBQUd2QixJQUFJLDhCQUE4QixHQUFHLENBQUMsQ0FBQztBQVl2QyxNQUFNLENBQUMsTUFBTSw4Q0FBOEMsR0FBOEI7SUFDckYsV0FBVyxFQUFFLHFCQUFxQjtJQUNsQyx1QkFBdUIsRUFBRSxvQkFBb0I7SUFDN0MseUJBQXlCLEVBQUUsc0JBQXNCO0lBQ2pELFVBQVUsRUFBRSxVQUFVO0lBQ3RCLEtBQUssRUFBRSxpQkFBaUI7SUFDeEIsV0FBVyxFQUFFO1FBQ1QsSUFBSSxFQUFFLE1BQU07UUFDWixJQUFJLEVBQUUsUUFBUTtLQUNqQjtDQUNKLENBQUM7QUFhRixNQUFNLE9BQU8sOEJBQThCO0lBbUJ2QyxJQUFJLGFBQWE7UUFDYixPQUFP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QkFDSSwwQkFBMEIsbUJBR25CLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksUUFDL0I7d0JBQ0YsS0FBSyxFQUFFLDBCQUEwQjtxQkFDcEM7OzBCQWlDSSxRQUFROzswQkFBSSxNQUFNOzJCQUFDLDZCQUE2Qjt5Q0E5QjVDLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0ksZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUU0RCxjQUFjO3NCQUFoRixZQUFZO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtnQkFFN0MsS0FBSztzQkFBeEIsU0FBUzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9jdXNNb25pdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgUmVuZGVyZXIyLFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbkRpc2FibGUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1xuICAgIEtCUV9GSUxFX1VQTE9BRF9DT05GSUdVUkFUSU9OLCBLYnFGaWxlLFxuICAgIEticUZpbGVJdGVtLFxuICAgIEticUZpbGVWYWxpZGF0b3JGbixcbiAgICBLYnFJbnB1dEZpbGUsXG4gICAgS2JxSW5wdXRGaWxlTGFiZWxcbn0gZnJvbSAnLi9maWxlLXVwbG9hZCc7XG5cblxubGV0IG5leHRNdWx0aXBsZUZpbGVVcGxvYWRVbmlxdWVJZCA9IDA7XG5leHBvcnQgaW50ZXJmYWNlIEticUlucHV0RmlsZU11bHRpcGxlTGFiZWwgZXh0ZW5kcyBLYnFJbnB1dEZpbGVMYWJlbCB7XG4gICAgY2FwdGlvblRleHRXaGVuU2VsZWN0ZWQ6IHN0cmluZztcbiAgICBjYXB0aW9uVGV4dEZvckNvbXBhY3RTaXplOiBzdHJpbmc7XG4gICAgZ3JpZEhlYWRlcnM6IHtcbiAgICAgICAgZmlsZTogc3RyaW5nO1xuICAgICAgICBzaXplOiBzdHJpbmc7XG4gICAgfTtcbiAgICBbazogc3RyaW5nIHwgbnVtYmVyIHwgc3ltYm9sXTogdW5rbm93bjtcbn1cblxuXG5leHBvcnQgY29uc3QgS0JRX01VTFRJUExFX0ZJTEVfVVBMT0FEX0RFRkFVTFRfQ09ORklHVVJBVElPTjogS2JxSW5wdXRGaWxlTXVsdGlwbGVMYWJlbCA9IHtcbiAgICBjYXB0aW9uVGV4dDogJ9Cf0LXRgNC10YLQsNGJ0LjRgtC1INGB0Y7QtNCwINC40LvQuCcsXG4gICAgY2FwdGlvblRleHRXaGVuU2VsZWN0ZWQ6ICfQn9C10YDQtdGC0LDRidC40YLQtSDQtdGJ0LUg0LjQu9C4JyxcbiAgICBjYXB0aW9uVGV4dEZvckNvbXBhY3RTaXplOiAn0J/QtdGA0LXRgtCw0YnQuNGC0LUg0YTQsNC50LvRiyDQuNC70LgnLFxuICAgIGJyb3dzZUxpbms6ICfQstGL0LHQtdGA0LjRgtC1JyxcbiAgICB0aXRsZTogJ9CX0LDQs9GA0YPQt9C40YLQtSDRhNCw0LnQu9GLJyxcbiAgICBncmlkSGVhZGVyczoge1xuICAgICAgICBmaWxlOiAn0KTQsNC50LsnLFxuICAgICAgICBzaXplOiAn0KDQsNC30LzQtdGAJ1xuICAgIH1cbn07XG5cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdrYnEtbXVsdGlwbGUtZmlsZS11cGxvYWQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9tdWx0aXBsZS1maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZmlsZS11cGxvYWQuc2NzcycsICcuL211bHRpcGxlLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAna2JxLW11bHRpcGxlLWZpbGUtdXBsb2FkJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgS2JxTXVsdGlwbGVGaWxlVXBsb2FkQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBLYnFJbnB1dEZpbGUsIENhbkRpc2FibGUge1xuICAgIEBJbnB1dCgpIGFjY2VwdD86IHN0cmluZ1tdO1xuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGVycm9yczogc3RyaW5nW10gPSBbXTtcbiAgICBASW5wdXQoKSBmaWxlczogS2JxRmlsZUl0ZW1bXSA9IFtdO1xuICAgIEBJbnB1dCgpIHNpemU6ICdjb21wYWN0JyB8ICdkZWZhdWx0JyA9ICdkZWZhdWx0JztcbiAgICBASW5wdXQoKSBpbnB1dElkOiBzdHJpbmcgPSBga2JxLW11bHRpcGxlLWZpbGUtdXBsb2FkLSR7bmV4dE11bHRpcGxlRmlsZVVwbG9hZFVuaXF1ZUlkKyt9YDtcbiAgICBASW5wdXQoKSBjdXN0b21WYWxpZGF0aW9uPzogS2JxRmlsZVZhbGlkYXRvckZuW107XG4gICAgQE91dHB1dCgpIGZpbGVRdWV1ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxLYnFGaWxlSXRlbVtdPiA9IG5ldyBFdmVudEVtaXR0ZXI8S2JxRmlsZUl0ZW1bXT4oKTtcblxuICAgIEBDb250ZW50Q2hpbGQoJ2ticUZpbGVJY29uJywgeyBzdGF0aWM6IGZhbHNlLCByZWFkOiBUZW1wbGF0ZVJlZiB9KSBjdXN0b21GaWxlSWNvbjogVGVtcGxhdGVSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZCgnaW5wdXQnKSBpbnB1dDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIGhhc0ZvY3VzID0gZmFsc2U7XG4gICAgY29sdW1uRGVmczogeyBoZWFkZXI6IHN0cmluZzsgY3NzQ2xhc3M6IHN0cmluZyB9W107XG5cbiAgICBwcml2YXRlIGZvY3VzTW9uaXRvclN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcblxuICAgIGdldCBhY2NlcHRlZEZpbGVzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmFjY2VwdCAmJiB0aGlzLmFjY2VwdC5sZW5ndGggPiAwID8gdGhpcy5hY2NlcHQubWFwKChleHQ6IHN0cmluZykgPT4gYC4ke2V4dH1gKS5qb2luKCcsJykgOiAnKi8qJztcbiAgICB9XG5cbiAgICBnZXQgaGFzRXJyb3JzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5lcnJvcnMgJiYgISF0aGlzLmVycm9ycy5sZW5ndGg7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEtCUV9GSUxFX1VQTE9BRF9DT05GSUdVUkFUSU9OKSBwdWJsaWMgY29uZmlnOiBLYnFJbnB1dEZpbGVNdWx0aXBsZUxhYmVsXG4gICAgKSB7XG4gICAgICAgIHRoaXMuY29uZmlnID0gY29uZmlnIHx8IEtCUV9NVUxUSVBMRV9GSUxFX1VQTE9BRF9ERUZBVUxUX0NPTkZJR1VSQVRJT047XG4gICAgICAgIHRoaXMuY29sdW1uRGVmcyA9IFtcbiAgICAgICAgICAgIHsgaGVhZGVyOiB0aGlzLmNvbmZpZy5ncmlkSGVhZGVycy5maWxlLCBjc3NDbGFzczogJ2ZpbGUnIH0sXG4gICAgICAgICAgICB7IGhlYWRlcjogdGhpcy5jb25maWcuZ3JpZEhlYWRlcnMuc2l6ZSwgY3NzQ2xhc3M6ICdzaXplJyB9LFxuICAgICAgICAgICAgeyBoZWFkZXI6ICcnLCBjc3NDbGFzczogJ2FjdGlvbicgfVxuICAgICAgICBdO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb2N1c01vbml0b3JTdWJzY3JpcHRpb24gPSB0aGlzLmZvY3VzTW9uaXRvci5tb25pdG9yKHRoaXMuaW5wdXQpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChvcmlnaW4pID0+IHRoaXMub25Gb2N1cyhvcmlnaW4gPT09ICdrZXlib2FyZCcpKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb2N1c01vbml0b3JTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBvbkZpbGVTZWxlY3RlZFZpYUNsaWNrKHsgdGFyZ2V0IH06IEV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7IHJldHVybjsgfVxuICAgICAgICB0aGlzLmZpbGVzID0gW1xuICAgICAgICAgICAgLi4udGhpcy5maWxlcyxcbiAgICAgICAgICAgIC4uLnRoaXMubWFwVG9GaWxlSXRlbSgodGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLmZpbGVzKVxuICAgICAgICBdO1xuICAgICAgICAvKiBldmVuIGlmIHRoZSB1c2VyIHNlbGVjdHMgdGhlIHNhbWUgZmlsZSxcbiAgICAgICAgICAgICAgICAgdGhlIG9uY2hhbmdlIGV2ZW50IHdpbGwgYmUgdHJpZ2dlcmVkIGV2ZXJ5IHRpbWUgdXNlciBjbGlja3Mgb24gdGhlIGNvbnRyb2wuKi9cbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQsICd2YWx1ZScsIG51bGwpO1xuICAgICAgICB0aGlzLm9uRmlsZUxpc3RDaGFuZ2UoKTtcbiAgICB9XG5cbiAgICBvbkZpbGVEcm9wcGVkKGZpbGVzOiBGaWxlTGlzdCB8IEticUZpbGVbXSkge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkgeyByZXR1cm47IH1cbiAgICAgICAgdGhpcy5maWxlcyA9IFsuLi50aGlzLmZpbGVzLCAuLi50aGlzLm1hcFRvRmlsZUl0ZW0oZmlsZXMpXTtcblxuICAgICAgICB0aGlzLm9uRmlsZUxpc3RDaGFuZ2UoKTtcbiAgICB9XG5cbiAgICBkZWxldGVGaWxlKGluZGV4OiBudW1iZXIsIGV2ZW50PzogTW91c2VFdmVudCkge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkgeyByZXR1cm47IH1cbiAgICAgICAgZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLmZpbGVzLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgIHRoaXMuZmlsZXMgPSBbLi4udGhpcy5maWxlc107XG5cbiAgICAgICAgdGhpcy5vbkZpbGVMaXN0Q2hhbmdlKCk7XG4gICAgfVxuXG4gICAgb25GaWxlTGlzdENoYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWxlUXVldWVDaGFuZ2VkLmVtaXQodGhpcy5maWxlcyk7XG4gICAgfVxuXG4gICAgb25Gb2N1cyhmb2N1c1N0YXRlOiBib29sZWFuKSB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7IHJldHVybjsgfVxuICAgICAgICB0aGlzLmhhc0ZvY3VzID0gZm9jdXNTdGF0ZTtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtYXBUb0ZpbGVJdGVtKGZpbGVzOiBGaWxlTGlzdCB8IEticUZpbGVbXSB8IG51bGwpOiBLYnFGaWxlSXRlbVtdIHtcbiAgICAgICAgaWYgKCFmaWxlcykgeyByZXR1cm4gW107IH1cblxuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShmaWxlcylcbiAgICAgICAgICAgIC5maWx0ZXIoKGZpbGUpID0+IHRoaXMuaXNDb3JyZWN0RXh0ZW5zaW9uKGZpbGUpKVxuICAgICAgICAgICAgLm1hcCgoZmlsZTogRmlsZSkgPT4gKHtcbiAgICAgICAgICAgICAgICBmaWxlLFxuICAgICAgICAgICAgICAgIGhhc0Vycm9yOiB0aGlzLnZhbGlkYXRlRmlsZShmaWxlKSxcbiAgICAgICAgICAgICAgICBsb2FkaW5nOiBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKSxcbiAgICAgICAgICAgICAgICBwcm9ncmVzczogbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDApXG4gICAgICAgICAgICB9KSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB2YWxpZGF0ZUZpbGUoZmlsZTogRmlsZSk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAodGhpcy5jdXN0b21WYWxpZGF0aW9uICYmIHRoaXMuY3VzdG9tVmFsaWRhdGlvbi5sZW5ndGgpIHtcbiAgICAgICAgICAgIGNvbnN0IGVycm9yc1BlckZpbGUgPSB0aGlzLmN1c3RvbVZhbGlkYXRpb24ucmVkdWNlKFxuICAgICAgICAgICAgICAgIChlcnJvcnM6IChzdHJpbmcgfCBudWxsKVtdLCB2YWxpZGF0b3JGbjogS2JxRmlsZVZhbGlkYXRvckZuKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGVycm9ycy5wdXNoKHZhbGlkYXRvckZuKGZpbGUpKTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZXJyb3JzO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgW10pLmZpbHRlcihCb29sZWFuKSBhcyBzdHJpbmdbXTtcblxuICAgICAgICAgICAgdGhpcy5lcnJvcnMgPSBbXG4gICAgICAgICAgICAgICAgLi4udGhpcy5lcnJvcnMsXG4gICAgICAgICAgICAgICAgLi4uZXJyb3JzUGVyRmlsZVxuICAgICAgICAgICAgXTtcblxuICAgICAgICAgICAgcmV0dXJuICEhZXJyb3JzUGVyRmlsZS5sZW5ndGg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGlzQ29ycmVjdEV4dGVuc2lvbihmaWxlOiBGaWxlKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IGZpbGVFeHQ6IHN0cmluZyA9IGZpbGUubmFtZS5zcGxpdCgnLicpLnBvcCgpIHx8ICcnO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmFjY2VwdGVkRmlsZXMgIT09ICcqLyonICYmIHRoaXMuYWNjZXB0ZWRGaWxlcy5sZW5ndGggPiAwID8gdGhpcy5hY2NlcHRlZEZpbGVzLmluY2x1ZGVzKGZpbGVFeHQpIDogdHJ1ZTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwia2JxLWZpbGUtdXBsb2FkXCJcbiAgICAga2JxRmlsZURyb3BcbiAgICAgW2NsYXNzLmticS1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgIFtjbGFzcy5zZWxlY3RlZF09XCJmaWxlcyAmJiBmaWxlcy5sZW5ndGhcIlxuICAgICBbbmdDbGFzc109XCJzaXplXCJcbiAgICAgKGZpbGVzRHJvcHBlZCk9XCJvbkZpbGVEcm9wcGVkKCRldmVudClcIj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZmlsZXMubGVuZ3RoOyBlbHNlIGZpbGVPdXRwdXRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRyb3B6b25lXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICAqbmdJZj1cInNpemUgPT09ICdkZWZhdWx0JyBlbHNlIGNvbXBhY3RDYXB0aW9uXCI+XG4gICAgICAgICAgICAgICAgPGkga2JxLWljb249XCJtYy11cGxvYWQtdG8tY2xvdWRfMzJcIj48L2k+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRyb3B6b25lX190ZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXVsdGlwbGVfX2hlYWRlclwiPnt7IGNvbmZpZy50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXVsdGlwbGVfX2NhcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb25maWcuY2FwdGlvblRleHQgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJrYnEtbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5rYnEtZm9jdXNlZF09XCJoYXNGb2N1c1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JdPVwiaW5wdXRJZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbmZpZy5icm93c2VMaW5rIH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxpbnB1dCAjaW5wdXRcbiAgICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgICBjbGFzcz1cImNkay12aXN1YWxseS1oaWRkZW5cIlxuICAgICAgICAgICBtdWx0aXBsZVxuICAgICAgICAgICBbaWRdPVwiaW5wdXRJZFwiXG4gICAgICAgICAgIFthY2NlcHRdPVwiYWNjZXB0ZWRGaWxlc1wiXG4gICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgIChjaGFuZ2UpPVwib25GaWxlU2VsZWN0ZWRWaWFDbGljaygkZXZlbnQpXCI+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImticS1maWxlLXVwbG9hZF9faW5mby1zZWN0aW9uXCI+XG4gICAgPGticS1oaW50IGNsYXNzPVwia2JxLWZpbGUtdXBsb2FkX19oaW50XCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltoaW50XVwiPjwvbmctY29udGVudD5cbiAgICA8L2ticS1oaW50PlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc0Vycm9yc1wiPlxuICAgICAgICA8a2JxLWhpbnQgY2xhc3M9XCJrYnEtZmlsZS11cGxvYWRfX2hpbnQga2JxLWVycm9yXCJcbiAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGVycm9yIG9mIGVycm9yc1wiPlxuICAgICAgICAgICAgICAgIHt7IGVycm9yIH19XG4gICAgICAgIDwva2JxLWhpbnQ+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNmaWxlT3V0cHV0PlxuICAgIDxkaXYgY2xhc3M9XCJmaWxlLXVwbG9hZF9fZHJvcHpvbmVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImticS1maWxlLXVwbG9hZF9fZ3JpZFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImticS1maWxlLW11bHRpcGxlLXVwbG9hZGVkX19oZWFkZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLWZpbGUtbXVsdGlwbGUtdXBsb2FkZWRfX2hlYWRlci1pbm5lclwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IFtjbGFzc109XCIna2JxLWZpbGUtdXBsb2FkX18nICsgY29sdW1uLmNzc0NsYXNzXCIgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb2x1bW5EZWZzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBjb2x1bW4uaGVhZGVyIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxrYnEtbGlzdC1zZWxlY3Rpb24gW2F1dG9TZWxlY3RdPVwiZmFsc2VcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj5cbiAgICAgICAgICAgICAgICA8a2JxLWxpc3Qtb3B0aW9uXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibXVsdGlwbGVfX3VwbG9hZGVkLWl0ZW1cIlxuICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiZmlsZS5maWxlLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bi5kZWxldGUpPVwiZGVsZXRlRmlsZShpbmRleClcIlxuICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bi5iYWNrc3BhY2UpPVwiZGVsZXRlRmlsZShpbmRleClcIlxuICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZmlsZSBvZiBmaWxlczsgbGV0IGluZGV4ID0gaW5kZXg7XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtZmlsZS11cGxvYWRfX3Jvd1wiIFtjbGFzcy5lcnJvcl09XCJmaWxlLmhhc0Vycm9yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLWZpbGUtdXBsb2FkX19maWxlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInsgbG9hZGluZzogZmlsZS5sb2FkaW5nIHwgYXN5bmMsIHByb2dyZXNzOiBmaWxlLnByb2dyZXNzIHwgYXN5bmMgfSBhcyBhc3luY0RhdGFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFhc3luY0RhdGEubG9hZGluZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiJGFueShjdXN0b21GaWxlSWNvbilcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogZmlsZSB9XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxrYnEtcHJvZ3Jlc3Mtc3Bpbm5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwdC1uYXQtZmlsZS11cGxvYWQtbmFtZS1jZWxsX19pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJhc3luY0RhdGEucHJvZ3Jlc3MgfHwgMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImFzeW5jRGF0YS5sb2FkaW5nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwva2JxLXByb2dyZXNzLXNwaW5uZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZpbGUtaXRlbV9fdGV4dFwiIFttY0VsbGlwc2lzQ2VudGVyXT1cImZpbGUuZmlsZS5uYW1lXCIgW21pblZpc2libGVMZW5ndGhdPVwiMTBcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtZmlsZS11cGxvYWRfX3NpemVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBmaWxlLmZpbGUuc2l6ZSB8IG1jRGF0YVNpemUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImticS1maWxlLXVwbG9hZF9fYWN0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkga2JxLWljb24tYnV0dG9uPVwibWMtY2xvc2UtY2lyY2xlXzE2XCIgKGNsaWNrKT1cImRlbGV0ZUZpbGUoaW5kZXgsICRldmVudClcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9rYnEtbGlzdC1vcHRpb24+XG4gICAgICAgICAgICA8L2ticS1saXN0LXNlbGVjdGlvbj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJ0bi11cGxvYWRcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wem9uZVwiPlxuICAgICAgICAgICAgICAgIDxpIGticS1pY29uPVwibWMtdXBsb2FkLXRvLWNsb3VkXzI0XCI+PC9pPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZHJvcHpvbmVfX3RleHQgbXVsdGlwbGVfX2NhcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAge3sgY29uZmlnLmNhcHRpb25UZXh0V2hlblNlbGVjdGVkIH19XG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImticS1saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5rYnEtZm9jdXNlZF09XCJoYXNGb2N1c1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbZm9yXT1cImlucHV0SWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbmZpZy5icm93c2VMaW5rIH19XG4gICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNjb21wYWN0Q2FwdGlvbj5cbiAgICA8aSBrYnEtaWNvbj1cIm1jLXVwbG9hZC10by1jbG91ZF8yNFwiPjwvaT5cbiAgICA8c3BhbiBjbGFzcz1cImRyb3B6b25lX190ZXh0IG11bHRpcGxlX19jYXB0aW9uXCI+XG4gICAgICAgIHt7IGNvbmZpZy5jYXB0aW9uVGV4dCB9fVxuICAgICAgICA8bGFiZWwgY2xhc3M9XCJrYnEtbGlua1wiXG4gICAgICAgICAgICAgICBbY2xhc3Mua2JxLWZvY3VzZWRdPVwiaGFzRm9jdXNcIlxuICAgICAgICAgICAgICAgW2Zvcl09XCJpbnB1dElkXCI+XG4gICAgICAgIHt7IGNvbmZpZy5icm93c2VMaW5rIH19XG4gICAgPC9sYWJlbD5cbiAgICA8L3NwYW4+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -99,20 +99,20 @@ export class KbqSingleFileUploadComponent {
|
|
|
99
99
|
const fileExt = file.name.split('.').pop() || '';
|
|
100
100
|
return this.acceptedFiles !== '*/*' && this.acceptedFiles.length > 0 ? this.acceptedFiles.includes(fileExt) : true;
|
|
101
101
|
}
|
|
102
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
103
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.5", type: KbqSingleFileUploadComponent, selector: "kbq-single-file-upload", inputs: { accept: "accept", disabled: "disabled", errors: "errors", files: "files", inputId: "inputId", customValidation: "customValidation" }, outputs: { fileQueueChanged: "fileQueueChanged" }, host: { classAttribute: "kbq-single-file-upload" }, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: "<div class=\"kbq-file-upload\"\n kbqFileDrop\n [class.kbq-disabled]=\"disabled\"\n [class.kbq-error]=\"errors && errors.length\"\n (filesDropped)=\"onFileDropped($event)\">\n <div class=\"dropzone\" *ngIf=\"!files.length; else fileOutput\">\n <i kbq-icon=\"mc-upload-to-cloud_24\"></i>\n <span class=\"dropzone__text\">\n {{ config.captionText }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n </div>\n <input #input\n type=\"file\"\n class=\"cdk-visually-hidden\"\n [id]=\"inputId\"\n [accept]=\"acceptedFiles\"\n [disabled]=\"disabled\"\n (change)=\"onFileSelectedViaClick($event)\">\n</div>\n<kbq-hint class=\"kbq-file-upload__hint\">\n <ng-content select=\"[hint]\"></ng-content>\n</kbq-hint>\n<ng-container *ngIf=\"errors && errors.length\">\n <kbq-hint class=\"kbq-file-upload__hint kbq-error\" *ngFor=\"let error of errors\">{{ error }}</kbq-hint>\n</ng-container>\n\n\n<ng-template #fileOutput>\n <div class=\"file-item\" *ngIf=\"files && files.length\">\n <div class=\"file-item__text-wrapper\">\n <ng-container *ngIf=\"{ loading: files[0].loading | async, progress: files[0].progress | async} as asyncData\">\n <ng-container *ngIf=\"!asyncData.loading\">\n <ng-content select=\"[kbq-icon]\"></ng-content>\n </ng-container>\n\n <kbq-progress-spinner\n [value]=\"asyncData.progress || 0\"\n *ngIf=\"asyncData.loading\"\n ></kbq-progress-spinner>\n </ng-container>\n\n <div class=\"file-item__text\" [mcEllipsisCenter]=\"files[0].file.name\" [minVisibleLength]=\"10\"></div>\n </div>\n <i kbq-icon-button=\"mc-close-circle_16\"\n [color]=\"'contrast'\"\n [disabled]=\"disabled\"\n (keydown.delete)=\"deleteItem()\"\n (keydown.backspace)=\"deleteItem()\"\n (click)=\"deleteItem($event)\">\n </i>\n </div>\n</ng-template>\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.04) 10px,rgba(255,255,255,.04) 10px,rgba(255,255,255,.04) 20px,rgba(0,0,0,.04) 20px,rgba(0,0,0,.04) 30px,rgba(255,255,255,.04) 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.kbq-file-upload{box-sizing:border-box;display:flex;align-items:center;position:relative}.kbq-file-upload .dropzone,.kbq-file-upload .file-item{display:flex;align-items:center}.kbq-file-upload .kbq-ellipsis-center{position:relative;display:flex}.kbq-file-upload .kbq-ellipsis-center .data-text-start{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:pre}.kbq-file-upload .kbq-ellipsis-center .data-text-end{flex:1 0 auto;overflow:hidden;white-space:pre}\n", "@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.04) 10px,rgba(255,255,255,.04) 10px,rgba(255,255,255,.04) 20px,rgba(0,0,0,.04) 20px,rgba(0,0,0,.04) 30px,rgba(255,255,255,.04) 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.kbq-single-file-upload .kbq-file-upload{padding:calc(var(--kbq-file-upload-size-single-container-padding-vertical, 12px) - 1px) calc(var(--kbq-file-upload-size-single-container-padding-horizontal, 12px) - 1px);border-radius:var(--kbq-file-upload-size-single-container-border-radius, 8px);border-width:var(--kbq-file-upload-size-single-container-border-width, 1px);border-style:dashed}.kbq-single-file-upload .kbq-file-upload .dropzone__text{padding-top:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);padding-bottom:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);gap:var(--kbq-file-upload-size-single-text-block-content-gap-horizontal, 4px)}.kbq-single-file-upload .kbq-file-upload .dropzone{gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-single-file-upload .kbq-file-upload .file-item{width:100%}.kbq-single-file-upload .kbq-file-upload .file-item .file-item__text-wrapper{display:flex;align-items:center;width:100%;gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-single-file-upload .kbq-file-upload .file-item .file-item__text-wrapper .file-item__text{width:120px;flex-grow:1}.kbq-hint{display:block}.kbq-file-upload__hint{margin-top:var(--kbq-form-field-hint-size-margin-top, 4px)}\n"], dependencies: [{ 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.KbqProgressSpinner, selector: "kbq-progress-spinner", inputs: ["color", "id", "value", "mode", "size"] }, { kind: "component", type: i4.KbqIcon, selector: "[kbq-icon]", inputs: ["color", "small", "autoColor"] }, { kind: "component", type: i4.KbqIconButton, selector: "[kbq-icon-button]", inputs: ["color", "small", "tabindex", "disabled"] }, { kind: "component", type: i5.KbqHint, selector: "kbq-hint", inputs: ["color", "id", "fillTextOff", "compact"], exportAs: ["kbqHint"] }, { kind: "directive", type: i6.KbqEllipsisCenterDirective, selector: "[mcEllipsisCenter]", inputs: ["mcEllipsisCenter", "minVisibleLength"] }, { kind: "directive", type: i7.KbqFileDropDirective, selector: "[kbqFileDrop]", outputs: ["filesDropped"], exportAs: ["kbqFileDrop"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
102
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: KbqSingleFileUploadComponent, deps: [{ token: i1.FocusMonitor }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: KBQ_FILE_UPLOAD_CONFIGURATION, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
103
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.0", type: KbqSingleFileUploadComponent, selector: "kbq-single-file-upload", inputs: { accept: "accept", disabled: "disabled", errors: "errors", files: "files", inputId: "inputId", customValidation: "customValidation" }, outputs: { fileQueueChanged: "fileQueueChanged" }, host: { classAttribute: "kbq-single-file-upload" }, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: "<div class=\"kbq-file-upload\"\n kbqFileDrop\n [class.kbq-disabled]=\"disabled\"\n [class.kbq-error]=\"errors && errors.length\"\n (filesDropped)=\"onFileDropped($event)\">\n <div class=\"dropzone\" *ngIf=\"!files.length; else fileOutput\">\n <i kbq-icon=\"mc-upload-to-cloud_24\"></i>\n <span class=\"dropzone__text\">\n {{ config.captionText }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n </div>\n <input #input\n type=\"file\"\n class=\"cdk-visually-hidden\"\n [id]=\"inputId\"\n [accept]=\"acceptedFiles\"\n [disabled]=\"disabled\"\n (change)=\"onFileSelectedViaClick($event)\">\n</div>\n<kbq-hint class=\"kbq-file-upload__hint\">\n <ng-content select=\"[hint]\"></ng-content>\n</kbq-hint>\n<ng-container *ngIf=\"errors && errors.length\">\n <kbq-hint class=\"kbq-file-upload__hint kbq-error\" *ngFor=\"let error of errors\">{{ error }}</kbq-hint>\n</ng-container>\n\n\n<ng-template #fileOutput>\n <div class=\"file-item\" *ngIf=\"files && files.length\">\n <div class=\"file-item__text-wrapper\">\n <ng-container *ngIf=\"{ loading: files[0].loading | async, progress: files[0].progress | async} as asyncData\">\n <ng-container *ngIf=\"!asyncData.loading\">\n <ng-content select=\"[kbq-icon]\"></ng-content>\n </ng-container>\n\n <kbq-progress-spinner\n [value]=\"asyncData.progress || 0\"\n *ngIf=\"asyncData.loading\"\n ></kbq-progress-spinner>\n </ng-container>\n\n <div class=\"file-item__text\" [mcEllipsisCenter]=\"files[0].file.name\" [minVisibleLength]=\"10\"></div>\n </div>\n <i kbq-icon-button=\"mc-close-circle_16\"\n [color]=\"'contrast'\"\n [disabled]=\"disabled\"\n (keydown.delete)=\"deleteItem()\"\n (keydown.backspace)=\"deleteItem()\"\n (click)=\"deleteItem($event)\">\n </i>\n </div>\n</ng-template>\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 10px,#ffffff0a 10px 20px,#0000000a 20px 30px,#ffffff0a 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-file-upload{box-sizing:border-box;display:flex;align-items:center;position:relative}.kbq-file-upload .dropzone,.kbq-file-upload .file-item{display:flex;align-items:center}.kbq-file-upload .kbq-ellipsis-center{position:relative;display:flex}.kbq-file-upload .kbq-ellipsis-center .data-text-start{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:pre}.kbq-file-upload .kbq-ellipsis-center .data-text-end{flex:1 0 auto;overflow:hidden;white-space:pre}\n", "@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 10px,#ffffff0a 10px 20px,#0000000a 20px 30px,#ffffff0a 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-single-file-upload .kbq-file-upload{padding:calc(var(--kbq-file-upload-size-single-container-padding-vertical, 12px) - 1px) calc(var(--kbq-file-upload-size-single-container-padding-horizontal, 12px) - 1px);border-radius:var(--kbq-file-upload-size-single-container-border-radius, 8px);border-width:var(--kbq-file-upload-size-single-container-border-width, 1px);border-style:dashed}.kbq-single-file-upload .kbq-file-upload .dropzone__text{padding-top:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);padding-bottom:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);gap:var(--kbq-file-upload-size-single-text-block-content-gap-horizontal, 4px)}.kbq-single-file-upload .kbq-file-upload .dropzone{gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-single-file-upload .kbq-file-upload .file-item{width:100%}.kbq-single-file-upload .kbq-file-upload .file-item .file-item__text-wrapper{display:flex;align-items:center;width:100%;gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-single-file-upload .kbq-file-upload .file-item .file-item__text-wrapper .file-item__text{width:120px;flex-grow:1}.kbq-hint{display:block}.kbq-file-upload__hint{margin-top:var(--kbq-form-field-hint-size-margin-top, 4px)}\n"], dependencies: [{ 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.KbqProgressSpinner, selector: "kbq-progress-spinner", inputs: ["color", "id", "value", "mode", "size"] }, { kind: "component", type: i4.KbqIcon, selector: "[kbq-icon]", inputs: ["color", "small", "autoColor"] }, { kind: "component", type: i4.KbqIconButton, selector: "[kbq-icon-button]", inputs: ["color", "small", "tabindex", "disabled"] }, { kind: "component", type: i5.KbqHint, selector: "kbq-hint", inputs: ["color", "id", "fillTextOff", "compact"], exportAs: ["kbqHint"] }, { kind: "directive", type: i6.KbqEllipsisCenterDirective, selector: "[mcEllipsisCenter]", inputs: ["mcEllipsisCenter", "minVisibleLength"] }, { kind: "directive", type: i7.KbqFileDropDirective, selector: "[kbqFileDrop]", outputs: ["filesDropped"], exportAs: ["kbqFileDrop"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
104
104
|
}
|
|
105
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
105
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: KbqSingleFileUploadComponent, decorators: [{
|
|
106
106
|
type: Component,
|
|
107
107
|
args: [{ selector: 'kbq-single-file-upload', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
108
108
|
class: 'kbq-single-file-upload'
|
|
109
|
-
}, template: "<div class=\"kbq-file-upload\"\n kbqFileDrop\n [class.kbq-disabled]=\"disabled\"\n [class.kbq-error]=\"errors && errors.length\"\n (filesDropped)=\"onFileDropped($event)\">\n <div class=\"dropzone\" *ngIf=\"!files.length; else fileOutput\">\n <i kbq-icon=\"mc-upload-to-cloud_24\"></i>\n <span class=\"dropzone__text\">\n {{ config.captionText }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n </div>\n <input #input\n type=\"file\"\n class=\"cdk-visually-hidden\"\n [id]=\"inputId\"\n [accept]=\"acceptedFiles\"\n [disabled]=\"disabled\"\n (change)=\"onFileSelectedViaClick($event)\">\n</div>\n<kbq-hint class=\"kbq-file-upload__hint\">\n <ng-content select=\"[hint]\"></ng-content>\n</kbq-hint>\n<ng-container *ngIf=\"errors && errors.length\">\n <kbq-hint class=\"kbq-file-upload__hint kbq-error\" *ngFor=\"let error of errors\">{{ error }}</kbq-hint>\n</ng-container>\n\n\n<ng-template #fileOutput>\n <div class=\"file-item\" *ngIf=\"files && files.length\">\n <div class=\"file-item__text-wrapper\">\n <ng-container *ngIf=\"{ loading: files[0].loading | async, progress: files[0].progress | async} as asyncData\">\n <ng-container *ngIf=\"!asyncData.loading\">\n <ng-content select=\"[kbq-icon]\"></ng-content>\n </ng-container>\n\n <kbq-progress-spinner\n [value]=\"asyncData.progress || 0\"\n *ngIf=\"asyncData.loading\"\n ></kbq-progress-spinner>\n </ng-container>\n\n <div class=\"file-item__text\" [mcEllipsisCenter]=\"files[0].file.name\" [minVisibleLength]=\"10\"></div>\n </div>\n <i kbq-icon-button=\"mc-close-circle_16\"\n [color]=\"'contrast'\"\n [disabled]=\"disabled\"\n (keydown.delete)=\"deleteItem()\"\n (keydown.backspace)=\"deleteItem()\"\n (click)=\"deleteItem($event)\">\n </i>\n </div>\n</ng-template>\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg
|
|
110
|
-
}], ctorParameters:
|
|
109
|
+
}, template: "<div class=\"kbq-file-upload\"\n kbqFileDrop\n [class.kbq-disabled]=\"disabled\"\n [class.kbq-error]=\"errors && errors.length\"\n (filesDropped)=\"onFileDropped($event)\">\n <div class=\"dropzone\" *ngIf=\"!files.length; else fileOutput\">\n <i kbq-icon=\"mc-upload-to-cloud_24\"></i>\n <span class=\"dropzone__text\">\n {{ config.captionText }}\n <label class=\"kbq-link\"\n [class.kbq-focused]=\"hasFocus\"\n [for]=\"inputId\">\n {{ config.browseLink }}\n </label>\n </span>\n </div>\n <input #input\n type=\"file\"\n class=\"cdk-visually-hidden\"\n [id]=\"inputId\"\n [accept]=\"acceptedFiles\"\n [disabled]=\"disabled\"\n (change)=\"onFileSelectedViaClick($event)\">\n</div>\n<kbq-hint class=\"kbq-file-upload__hint\">\n <ng-content select=\"[hint]\"></ng-content>\n</kbq-hint>\n<ng-container *ngIf=\"errors && errors.length\">\n <kbq-hint class=\"kbq-file-upload__hint kbq-error\" *ngFor=\"let error of errors\">{{ error }}</kbq-hint>\n</ng-container>\n\n\n<ng-template #fileOutput>\n <div class=\"file-item\" *ngIf=\"files && files.length\">\n <div class=\"file-item__text-wrapper\">\n <ng-container *ngIf=\"{ loading: files[0].loading | async, progress: files[0].progress | async} as asyncData\">\n <ng-container *ngIf=\"!asyncData.loading\">\n <ng-content select=\"[kbq-icon]\"></ng-content>\n </ng-container>\n\n <kbq-progress-spinner\n [value]=\"asyncData.progress || 0\"\n *ngIf=\"asyncData.loading\"\n ></kbq-progress-spinner>\n </ng-container>\n\n <div class=\"file-item__text\" [mcEllipsisCenter]=\"files[0].file.name\" [minVisibleLength]=\"10\"></div>\n </div>\n <i kbq-icon-button=\"mc-close-circle_16\"\n [color]=\"'contrast'\"\n [disabled]=\"disabled\"\n (keydown.delete)=\"deleteItem()\"\n (keydown.backspace)=\"deleteItem()\"\n (click)=\"deleteItem($event)\">\n </i>\n </div>\n</ng-template>\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 10px,#ffffff0a 10px 20px,#0000000a 20px 30px,#ffffff0a 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-file-upload{box-sizing:border-box;display:flex;align-items:center;position:relative}.kbq-file-upload .dropzone,.kbq-file-upload .file-item{display:flex;align-items:center}.kbq-file-upload .kbq-ellipsis-center{position:relative;display:flex}.kbq-file-upload .kbq-ellipsis-center .data-text-start{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:pre}.kbq-file-upload .kbq-ellipsis-center .data-text-end{flex:1 0 auto;overflow:hidden;white-space:pre}\n", "@keyframes kbq-progress{0%{background-position:0 0}to{background-position:29px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 10px,#ffffff0a 10px 20px,#0000000a 20px 30px,#ffffff0a 31px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-button-size-border-radius, 8px)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-button-size-border-width, 2px))}.kbq-no-select{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-single-file-upload .kbq-file-upload{padding:calc(var(--kbq-file-upload-size-single-container-padding-vertical, 12px) - 1px) calc(var(--kbq-file-upload-size-single-container-padding-horizontal, 12px) - 1px);border-radius:var(--kbq-file-upload-size-single-container-border-radius, 8px);border-width:var(--kbq-file-upload-size-single-container-border-width, 1px);border-style:dashed}.kbq-single-file-upload .kbq-file-upload .dropzone__text{padding-top:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);padding-bottom:var(--kbq-file-upload-size-single-text-block-padding-vertical, 4px);gap:var(--kbq-file-upload-size-single-text-block-content-gap-horizontal, 4px)}.kbq-single-file-upload .kbq-file-upload .dropzone{gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-single-file-upload .kbq-file-upload .file-item{width:100%}.kbq-single-file-upload .kbq-file-upload .file-item .file-item__text-wrapper{display:flex;align-items:center;width:100%;gap:var(--kbq-file-upload-size-single-container-content-gap-horizontal, 8px)}.kbq-single-file-upload .kbq-file-upload .file-item .file-item__text-wrapper .file-item__text{width:120px;flex-grow:1}.kbq-hint{display:block}.kbq-file-upload__hint{margin-top:var(--kbq-form-field-hint-size-margin-top, 4px)}\n"] }]
|
|
110
|
+
}], ctorParameters: () => [{ type: i1.FocusMonitor }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
|
|
111
111
|
type: Optional
|
|
112
112
|
}, {
|
|
113
113
|
type: Inject,
|
|
114
114
|
args: [KBQ_FILE_UPLOAD_CONFIGURATION]
|
|
115
|
-
}] }]
|
|
115
|
+
}] }], propDecorators: { accept: [{
|
|
116
116
|
type: Input
|
|
117
117
|
}], disabled: [{
|
|
118
118
|
type: Input
|
|
@@ -130,4 +130,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImpor
|
|
|
130
130
|
type: ViewChild,
|
|
131
131
|
args: ['input']
|
|
132
132
|
}] } });
|
|
133
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvc2luZ2xlLWZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvc2luZ2xlLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUVMLFFBQVEsRUFDUixNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsRUFDVCxpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFckQsT0FBTyxFQUNILDZCQUE2QixFQUtoQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7O0FBR3ZCLElBQUksNEJBQTRCLEdBQUcsQ0FBQyxDQUFDO0FBRXJDLE1BQU0sQ0FBQyxNQUFNLDRDQUE0QyxHQUFzQjtJQUMzRSxXQUFXLEVBQUUscUJBQXFCO0lBQ2xDLFVBQVUsRUFBRSxVQUFVO0NBQ3pCLENBQUM7QUFZRixNQUFNLE9BQU8sNEJBQTRCO0lBZXJDLElBQUksYUFBYTtRQUNiLE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBVyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdB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SSxDQUFDO0lBQ3ZILENBQUM7aUlBckdRLDRCQUE0Qix3R0F1QmIsNkJBQTZCO3FIQXZCNUMsNEJBQTRCLHFaQzlDekMsOHVFQXlEQTs7MkZEWGEsNEJBQTRCO2tCQVZ4QyxTQUFTOytCQUNJLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDRixLQUFLLEVBQUUsd0JBQXdCO3FCQUNsQzs7MEJBeUJJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsNkJBQTZCOzRDQXRCNUMsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNJLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFFYSxLQUFLO3NCQUF4QixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFJlbmRlcmVyMixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYW5EaXNhYmxlIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgICBLQlFfRklMRV9VUExPQURfQ09ORklHVVJBVElPTixcbiAgICBLYnFGaWxlSXRlbSxcbiAgICBLYnFGaWxlVmFsaWRhdG9yRm4sXG4gICAgS2JxSW5wdXRGaWxlLFxuICAgIEticUlucHV0RmlsZUxhYmVsXG59IGZyb20gJy4vZmlsZS11cGxvYWQnO1xuXG5cbmxldCBuZXh0U2luZ2xlRmlsZVVwbG9hZFVuaXF1ZUlkID0gMDtcblxuZXhwb3J0IGNvbnN0IEtCUV9TSU5HTEVfRklMRV9VUExPQURfREVGQVVMVF9DT05GSUdVUkFUSU9OOiBLYnFJbnB1dEZpbGVMYWJlbCA9IHtcbiAgICBjYXB0aW9uVGV4dDogJ9Cf0LXRgNC10YLQsNGJ0LjRgtC1INGE0LDQudC7INC40LvQuCcsXG4gICAgYnJvd3NlTGluazogJ9Cy0YvQsdC10YDQuNGC0LUnXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1zaW5nbGUtZmlsZS11cGxvYWQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zaW5nbGUtZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ZpbGUtdXBsb2FkLnNjc3MnLCAnLi9zaW5nbGUtZmlsZS11cGxvYWQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtc2luZ2xlLWZpbGUtdXBsb2FkJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgS2JxU2luZ2xlRmlsZVVwbG9hZENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgS2JxSW5wdXRGaWxlLCBDYW5EaXNhYmxlIHtcbiAgICBASW5wdXQoKSBhY2NlcHQ6IHN0cmluZ1tdO1xuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgZXJyb3JzOiBzdHJpbmdbXSA9IFtdO1xuICAgIEBJbnB1dCgpIGZpbGVzOiBLYnFGaWxlSXRlbVtdID0gW107XG4gICAgQElucHV0KCkgaW5wdXRJZDogc3RyaW5nID0gYGticS1zaW5nbGUtZmlsZS11cGxvYWQtJHtuZXh0U2luZ2xlRmlsZVVwbG9hZFVuaXF1ZUlkKyt9YDtcbiAgICBASW5wdXQoKSBjdXN0b21WYWxpZGF0aW9uPzogS2JxRmlsZVZhbGlkYXRvckZuW107XG4gICAgQE91dHB1dCgpIGZpbGVRdWV1ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxLYnFGaWxlSXRlbSB8IG51bGw+ID0gbmV3IEV2ZW50RW1pdHRlcjxLYnFGaWxlSXRlbSB8IG51bGw+KCk7XG5cbiAgICBAVmlld0NoaWxkKCdpbnB1dCcpIGlucHV0OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgaGFzRm9jdXMgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgZm9jdXNNb25pdG9yU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuXG4gICAgZ2V0IGFjY2VwdGVkRmlsZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWNjZXB0ICYmIHRoaXMuYWNjZXB0Lmxlbmd0aCA+IDAgPyB0aGlzLmFjY2VwdC5tYXAoKGV4dDogc3RyaW5nKSA9PiBgLiR7ZXh0fWApLmpvaW4oJywnKSA6ICcqLyonO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGZvY3VzTW9uaXRvcjogRm9jdXNNb25pdG9yLFxuICAgICAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChLQlFfRklMRV9VUExPQURfQ09ORklHVVJBVElPTikgcHVibGljIGNvbmZpZzogS2JxSW5wdXRGaWxlTGFiZWxcbiAgICApIHtcbiAgICAgICAgdGhpcy5jb25maWcgPSBjb25maWcgfHwgS0JRX1NJTkdMRV9GSUxFX1VQTE9BRF9ERUZBVUxUX0NPTkZJR1VSQVRJT047XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvclN1YnNjcmlwdGlvbiA9IHRoaXMuZm9jdXNNb25pdG9yLm1vbml0b3IodGhpcy5pbnB1dClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKG9yaWdpbikgPT4gdGhpcy5vbkZvY3VzKG9yaWdpbiA9PT0gJ2tleWJvYXJkJykpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIG9uRmlsZVNlbGVjdGVkVmlhQ2xpY2soeyB0YXJnZXQgfTogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHsgcmV0dXJuOyB9XG5cbiAgICAgICAgY29uc3QgZmlsZXM6IEZpbGVMaXN0IHwgbnVsbCA9ICh0YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuZmlsZXM7XG4gICAgICAgIGlmIChmaWxlcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmZpbGVzID0gW3RoaXMubWFwVG9GaWxlSXRlbShmaWxlc1swXSldO1xuICAgICAgICAgICAgdGhpcy5maWxlUXVldWVDaGFuZ2VkLmVtaXQodGhpcy5maWxlc1swXSk7XG4gICAgICAgIH1cbiAgICAgICAgLyogZXZlbiBpZiB0aGUgdXNlciBzZWxlY3RzIHRoZSBzYW1lIGZpbGUsXG4gICAgICAgICB0aGUgb25jaGFuZ2UgZXZlbnQgd2lsbCBiZSB0cmlnZ2VyZWQgZXZlcnkgdGltZSB1c2VyIGNsaWNrcyBvbiB0aGUgY29udHJvbC4qL1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCwgJ3ZhbHVlJywgbnVsbCk7XG4gICAgfVxuXG4gICAgZGVsZXRlSXRlbShldmVudD86IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHsgcmV0dXJuOyB9XG5cbiAgICAgICAgZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLmZpbGVzID0gW107XG4gICAgICAgIHRoaXMuZXJyb3JzID0gW107XG4gICAgICAgIHRoaXMuZmlsZVF1ZXVlQ2hhbmdlZC5lbWl0KG51bGwpO1xuICAgIH1cblxuICAgIG9uRmlsZURyb3BwZWQoZmlsZXM6IEZpbGVMaXN0KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7IHJldHVybjsgfVxuXG4gICAgICAgIGlmICh0aGlzLmlzQ29ycmVjdEV4dGVuc2lvbihmaWxlc1swXSkpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsZXMgPSBBcnJheS5mcm9tKGZpbGVzKVxuICAgICAgICAgICAgICAgIC5tYXAoKGZpbGUpID0+IHRoaXMubWFwVG9GaWxlSXRlbShmaWxlKSk7XG4gICAgICAgICAgICB0aGlzLmZpbGVRdWV1ZUNoYW5nZWQuZW1pdCh0aGlzLmZpbGVzWzBdKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uRm9jdXMoZm9jdXNTdGF0ZTogYm9vbGVhbikge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkgeyByZXR1cm47IH1cbiAgICAgICAgdGhpcy5oYXNGb2N1cyA9IGZvY3VzU3RhdGU7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgbWFwVG9GaWxlSXRlbShmaWxlOiBGaWxlKTogS2JxRmlsZUl0ZW0ge1xuICAgICAgICB0aGlzLnZhbGlkYXRlRmlsZShmaWxlKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZmlsZSxcbiAgICAgICAgICAgIHByb2dyZXNzOiBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMCksXG4gICAgICAgICAgICBsb2FkaW5nOiBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgdmFsaWRhdGVGaWxlKGZpbGU6IEZpbGUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY3VzdG9tVmFsaWRhdGlvbiAmJiB0aGlzLmN1c3RvbVZhbGlkYXRpb24ubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmVycm9ycyA9IHRoaXMuY3VzdG9tVmFsaWRhdGlvbi5yZWR1Y2UoXG4gICAgICAgICAgICAgICAgKGVycm9yczogKHN0cmluZyB8IG51bGwpW10sIHZhbGlkYXRvckZuOiBLYnFGaWxlVmFsaWRhdG9yRm4pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JzLnB1c2godmFsaWRhdG9yRm4oZmlsZSkpO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBlcnJvcnM7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBbXSkuZmlsdGVyKEJvb2xlYW4pIGFzIHN0cmluZ1tdO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc0NvcnJlY3RFeHRlbnNpb24oZmlsZTogRmlsZSk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBmaWxlRXh0OiBzdHJpbmcgPSBmaWxlLm5hbWUuc3BsaXQoJy4nKS5wb3AoKSB8fCAnJztcblxuICAgICAgICByZXR1cm4gdGhpcy5hY2NlcHRlZEZpbGVzICE9PSAnKi8qJyAmJiB0aGlzLmFjY2VwdGVkRmlsZXMubGVuZ3RoID4gMCA/IHRoaXMuYWNjZXB0ZWRGaWxlcy5pbmNsdWRlcyhmaWxlRXh0KSA6IHRydWU7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImticS1maWxlLXVwbG9hZFwiXG4gICAgIGticUZpbGVEcm9wXG4gICAgIFtjbGFzcy5rYnEtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICBbY2xhc3Mua2JxLWVycm9yXT1cImVycm9ycyAmJiBlcnJvcnMubGVuZ3RoXCJcbiAgICAgKGZpbGVzRHJvcHBlZCk9XCJvbkZpbGVEcm9wcGVkKCRldmVudClcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRyb3B6b25lXCIgKm5nSWY9XCIhZmlsZXMubGVuZ3RoOyBlbHNlIGZpbGVPdXRwdXRcIj5cbiAgICAgICAgICAgIDxpIGticS1pY29uPVwibWMtdXBsb2FkLXRvLWNsb3VkXzI0XCI+PC9pPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkcm9wem9uZV9fdGV4dFwiPlxuICAgICAgICAgICAgICAgIHt7IGNvbmZpZy5jYXB0aW9uVGV4dCB9fVxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImticS1saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmticS1mb2N1c2VkXT1cImhhc0ZvY3VzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2Zvcl09XCJpbnB1dElkXCI+XG4gICAgICAgICAgICAgICAge3sgY29uZmlnLmJyb3dzZUxpbmsgfX1cbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICA8aW5wdXQgI2lucHV0XG4gICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICAgY2xhc3M9XCJjZGstdmlzdWFsbHktaGlkZGVuXCJcbiAgICAgICAgICAgW2lkXT1cImlucHV0SWRcIlxuICAgICAgICAgICBbYWNjZXB0XT1cImFjY2VwdGVkRmlsZXNcIlxuICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAoY2hhbmdlKT1cIm9uRmlsZVNlbGVjdGVkVmlhQ2xpY2soJGV2ZW50KVwiPlxuPC9kaXY+XG48a2JxLWhpbnQgY2xhc3M9XCJrYnEtZmlsZS11cGxvYWRfX2hpbnRcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbaGludF1cIj48L25nLWNvbnRlbnQ+XG48L2ticS1oaW50PlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cImVycm9ycyAmJiBlcnJvcnMubGVuZ3RoXCI+XG4gICAgPGticS1oaW50IGNsYXNzPVwia2JxLWZpbGUtdXBsb2FkX19oaW50IGticS1lcnJvclwiICpuZ0Zvcj1cImxldCBlcnJvciBvZiBlcnJvcnNcIj57eyBlcnJvciB9fTwva2JxLWhpbnQ+XG48L25nLWNvbnRhaW5lcj5cblxuXG48bmctdGVtcGxhdGUgI2ZpbGVPdXRwdXQ+XG4gICAgPGRpdiBjbGFzcz1cImZpbGUtaXRlbVwiICpuZ0lmPVwiZmlsZXMgJiYgZmlsZXMubGVuZ3RoXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaWxlLWl0ZW1fX3RleHQtd3JhcHBlclwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInsgbG9hZGluZzogZmlsZXNbMF0ubG9hZGluZyB8IGFzeW5jLCBwcm9ncmVzczogZmlsZXNbMF0ucHJvZ3Jlc3MgfCBhc3luY30gYXMgYXN5bmNEYXRhXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFhc3luY0RhdGEubG9hZGluZ1wiPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJba2JxLWljb25dXCI+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgPGticS1wcm9ncmVzcy1zcGlubmVyXG4gICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJhc3luY0RhdGEucHJvZ3Jlc3MgfHwgMFwiXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYXN5bmNEYXRhLmxvYWRpbmdcIlxuICAgICAgICAgICAgICAgID48L2ticS1wcm9ncmVzcy1zcGlubmVyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWxlLWl0ZW1fX3RleHRcIiBbbWNFbGxpcHNpc0NlbnRlcl09XCJmaWxlc1swXS5maWxlLm5hbWVcIiBbbWluVmlzaWJsZUxlbmd0aF09XCIxMFwiPjwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGkga2JxLWljb24tYnV0dG9uPVwibWMtY2xvc2UtY2lyY2xlXzE2XCJcbiAgICAgICAgICAgW2NvbG9yXT1cIidjb250cmFzdCdcIlxuICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAoa2V5ZG93bi5kZWxldGUpPVwiZGVsZXRlSXRlbSgpXCJcbiAgICAgICAgICAgKGtleWRvd24uYmFja3NwYWNlKT1cImRlbGV0ZUl0ZW0oKVwiXG4gICAgICAgICAgIChjbGljayk9XCJkZWxldGVJdGVtKCRldmVudClcIj5cbiAgICAgICAgPC9pPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
133
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvc2luZ2xlLWZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvc2luZ2xlLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUVMLFFBQVEsRUFDUixNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsRUFDVCxpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFckQsT0FBTyxFQUNILDZCQUE2QixFQUtoQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7O0FBR3ZCLElBQUksNEJBQTRCLEdBQUcsQ0FBQyxDQUFDO0FBRXJDLE1BQU0sQ0FBQyxNQUFNLDRDQUE0QyxHQUFzQjtJQUMzRSxXQUFXLEVBQUUscUJBQXFCO0lBQ2xDLFVBQVUsRUFBRSxVQUFVO0NBQ3pCLENBQUM7QUFZRixNQUFNLE9BQU8sNEJBQTRCO0lBZXJDLElBQUksYUFBYTtRQUNiLE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBVyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDakgsQ0FBQztJQUVELFlBQ1ksWUFBMEIsRUFDMUIsR0FBc0IsRUFDdEIsUUFBbUIsRUFDK0IsTUFBeUI7UUFIM0UsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUMrQixXQUFNLEdBQU4sTUFBTSxDQUFtQjtRQXJCOUUsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixXQUFNLEdBQWEsRUFBRSxDQUFDO1FBQ3RCLFVBQUssR0FBa0IsRUFBRSxDQUFDO1FBQzFCLFlBQU8sR0FBVywwQkFBMEIsNEJBQTRCLEVBQUUsRUFBRSxDQUFDO1FBRTVFLHFCQUFnQixHQUFxQyxJQUFJLFlBQVksRUFBc0IsQ0FBQztRQUl0RyxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRVQsNkJBQXdCLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQztRQVlsRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sSUFBSSw0Q0FBNEMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO2FBQ2hFLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsRUFBRSxNQUFNLEVBQVM7UUFDcEMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFBQyxPQUFPO1FBQUMsQ0FBQztRQUU5QixNQUFNLEtBQUssR0FBcUIsTUFBMkIsQ0FBQyxLQUFLLENBQUM7UUFDbEUsSUFBSSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDaEIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBQ0Q7c0ZBQzhFO1FBQzlFLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWtCO1FBQ3pCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQUMsT0FBTztRQUFDLENBQUM7UUFFOUIsS0FBSyxFQUFFLGVBQWUsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUEyQjtRQUNyQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUFDLE9BQU87UUFBQyxDQUFDO1FBRTlCLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztpQkFDekIsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDN0MsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDOUMsQ0FBQztJQUNMLENBQUM7SUFFRCxPQUFPLENBQUMsVUFBbUI7UUFDdkIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFBQyxPQUFPO1FBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUMzQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTyxhQUFhLENBQUMsSUFBVTtRQUM1QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXhCLE9BQU87WUFDSCxJQUFJO1lBQ0osUUFBUSxFQUFFLElBQUksZUFBZSxDQUFTLENBQUMsQ0FBQztZQUN4QyxPQUFPLEVBQUUsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDO1NBQy9DLENBQUM7SUFDTixDQUFDO0lBRU8sWUFBWSxDQUFDLElBQVU7UUFDM0IsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3hELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FDdEMsQ0FBQyxNQUF5QixFQUFFLFdBQStCLEVBQUUsRUFBRTtnQkFDM0QsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFFL0IsT0FBTyxNQUFNLENBQUM7WUFDbEIsQ0FBQyxFQUNELEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQWEsQ0FBQztRQUN4QyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGtCQUFrQixDQUFDLElBQVU7UUFDakMsTUFBTSxPQUFPLEdBQVcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDO1FBRXpELE9BQU8sSUFBSSxDQUFDLGFBQWEsS0FBSyxLQUFLLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3ZILENBQUM7aUlBckdRLDRCQUE0Qix3R0F1QmIsNkJBQTZCO3FIQXZCNUMsNEJBQTRCLHFaQzlDekMsOHVFQXlEQTs7MkZEWGEsNEJBQTRCO2tCQVZ4QyxTQUFTOytCQUNJLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDRixLQUFLLEVBQUUsd0JBQXdCO3FCQUNsQzs7MEJBeUJJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsNkJBQTZCO3lDQXRCNUMsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNJLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFFYSxLQUFLO3NCQUF4QixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFJlbmRlcmVyMixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYW5EaXNhYmxlIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgICBLQlFfRklMRV9VUExPQURfQ09ORklHVVJBVElPTiwgS2JxRmlsZSxcbiAgICBLYnFGaWxlSXRlbSxcbiAgICBLYnFGaWxlVmFsaWRhdG9yRm4sXG4gICAgS2JxSW5wdXRGaWxlLFxuICAgIEticUlucHV0RmlsZUxhYmVsXG59IGZyb20gJy4vZmlsZS11cGxvYWQnO1xuXG5cbmxldCBuZXh0U2luZ2xlRmlsZVVwbG9hZFVuaXF1ZUlkID0gMDtcblxuZXhwb3J0IGNvbnN0IEtCUV9TSU5HTEVfRklMRV9VUExPQURfREVGQVVMVF9DT05GSUdVUkFUSU9OOiBLYnFJbnB1dEZpbGVMYWJlbCA9IHtcbiAgICBjYXB0aW9uVGV4dDogJ9Cf0LXRgNC10YLQsNGJ0LjRgtC1INGE0LDQudC7INC40LvQuCcsXG4gICAgYnJvd3NlTGluazogJ9Cy0YvQsdC10YDQuNGC0LUnXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1zaW5nbGUtZmlsZS11cGxvYWQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zaW5nbGUtZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ZpbGUtdXBsb2FkLnNjc3MnLCAnLi9zaW5nbGUtZmlsZS11cGxvYWQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtc2luZ2xlLWZpbGUtdXBsb2FkJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgS2JxU2luZ2xlRmlsZVVwbG9hZENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgS2JxSW5wdXRGaWxlLCBDYW5EaXNhYmxlIHtcbiAgICBASW5wdXQoKSBhY2NlcHQ6IHN0cmluZ1tdO1xuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgZXJyb3JzOiBzdHJpbmdbXSA9IFtdO1xuICAgIEBJbnB1dCgpIGZpbGVzOiBLYnFGaWxlSXRlbVtdID0gW107XG4gICAgQElucHV0KCkgaW5wdXRJZDogc3RyaW5nID0gYGticS1zaW5nbGUtZmlsZS11cGxvYWQtJHtuZXh0U2luZ2xlRmlsZVVwbG9hZFVuaXF1ZUlkKyt9YDtcbiAgICBASW5wdXQoKSBjdXN0b21WYWxpZGF0aW9uPzogS2JxRmlsZVZhbGlkYXRvckZuW107XG4gICAgQE91dHB1dCgpIGZpbGVRdWV1ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxLYnFGaWxlSXRlbSB8IG51bGw+ID0gbmV3IEV2ZW50RW1pdHRlcjxLYnFGaWxlSXRlbSB8IG51bGw+KCk7XG5cbiAgICBAVmlld0NoaWxkKCdpbnB1dCcpIGlucHV0OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgaGFzRm9jdXMgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgZm9jdXNNb25pdG9yU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuXG4gICAgZ2V0IGFjY2VwdGVkRmlsZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWNjZXB0ICYmIHRoaXMuYWNjZXB0Lmxlbmd0aCA+IDAgPyB0aGlzLmFjY2VwdC5tYXAoKGV4dDogc3RyaW5nKSA9PiBgLiR7ZXh0fWApLmpvaW4oJywnKSA6ICcqLyonO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGZvY3VzTW9uaXRvcjogRm9jdXNNb25pdG9yLFxuICAgICAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChLQlFfRklMRV9VUExPQURfQ09ORklHVVJBVElPTikgcHVibGljIGNvbmZpZzogS2JxSW5wdXRGaWxlTGFiZWxcbiAgICApIHtcbiAgICAgICAgdGhpcy5jb25maWcgPSBjb25maWcgfHwgS0JRX1NJTkdMRV9GSUxFX1VQTE9BRF9ERUZBVUxUX0NPTkZJR1VSQVRJT047XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvclN1YnNjcmlwdGlvbiA9IHRoaXMuZm9jdXNNb25pdG9yLm1vbml0b3IodGhpcy5pbnB1dClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKG9yaWdpbikgPT4gdGhpcy5vbkZvY3VzKG9yaWdpbiA9PT0gJ2tleWJvYXJkJykpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIG9uRmlsZVNlbGVjdGVkVmlhQ2xpY2soeyB0YXJnZXQgfTogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHsgcmV0dXJuOyB9XG5cbiAgICAgICAgY29uc3QgZmlsZXM6IEZpbGVMaXN0IHwgbnVsbCA9ICh0YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuZmlsZXM7XG4gICAgICAgIGlmIChmaWxlcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmZpbGVzID0gW3RoaXMubWFwVG9GaWxlSXRlbShmaWxlc1swXSldO1xuICAgICAgICAgICAgdGhpcy5maWxlUXVldWVDaGFuZ2VkLmVtaXQodGhpcy5maWxlc1swXSk7XG4gICAgICAgIH1cbiAgICAgICAgLyogZXZlbiBpZiB0aGUgdXNlciBzZWxlY3RzIHRoZSBzYW1lIGZpbGUsXG4gICAgICAgICB0aGUgb25jaGFuZ2UgZXZlbnQgd2lsbCBiZSB0cmlnZ2VyZWQgZXZlcnkgdGltZSB1c2VyIGNsaWNrcyBvbiB0aGUgY29udHJvbC4qL1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCwgJ3ZhbHVlJywgbnVsbCk7XG4gICAgfVxuXG4gICAgZGVsZXRlSXRlbShldmVudD86IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHsgcmV0dXJuOyB9XG5cbiAgICAgICAgZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLmZpbGVzID0gW107XG4gICAgICAgIHRoaXMuZXJyb3JzID0gW107XG4gICAgICAgIHRoaXMuZmlsZVF1ZXVlQ2hhbmdlZC5lbWl0KG51bGwpO1xuICAgIH1cblxuICAgIG9uRmlsZURyb3BwZWQoZmlsZXM6IEZpbGVMaXN0IHwgS2JxRmlsZVtdKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7IHJldHVybjsgfVxuXG4gICAgICAgIGlmICh0aGlzLmlzQ29ycmVjdEV4dGVuc2lvbihmaWxlc1swXSkpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsZXMgPSBBcnJheS5mcm9tKGZpbGVzKVxuICAgICAgICAgICAgICAgIC5tYXAoKGZpbGUpID0+IHRoaXMubWFwVG9GaWxlSXRlbShmaWxlKSk7XG4gICAgICAgICAgICB0aGlzLmZpbGVRdWV1ZUNoYW5nZWQuZW1pdCh0aGlzLmZpbGVzWzBdKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uRm9jdXMoZm9jdXNTdGF0ZTogYm9vbGVhbikge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkgeyByZXR1cm47IH1cbiAgICAgICAgdGhpcy5oYXNGb2N1cyA9IGZvY3VzU3RhdGU7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgbWFwVG9GaWxlSXRlbShmaWxlOiBGaWxlKTogS2JxRmlsZUl0ZW0ge1xuICAgICAgICB0aGlzLnZhbGlkYXRlRmlsZShmaWxlKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZmlsZSxcbiAgICAgICAgICAgIHByb2dyZXNzOiBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMCksXG4gICAgICAgICAgICBsb2FkaW5nOiBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgdmFsaWRhdGVGaWxlKGZpbGU6IEZpbGUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY3VzdG9tVmFsaWRhdGlvbiAmJiB0aGlzLmN1c3RvbVZhbGlkYXRpb24ubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmVycm9ycyA9IHRoaXMuY3VzdG9tVmFsaWRhdGlvbi5yZWR1Y2UoXG4gICAgICAgICAgICAgICAgKGVycm9yczogKHN0cmluZyB8IG51bGwpW10sIHZhbGlkYXRvckZuOiBLYnFGaWxlVmFsaWRhdG9yRm4pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JzLnB1c2godmFsaWRhdG9yRm4oZmlsZSkpO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBlcnJvcnM7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBbXSkuZmlsdGVyKEJvb2xlYW4pIGFzIHN0cmluZ1tdO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc0NvcnJlY3RFeHRlbnNpb24oZmlsZTogRmlsZSk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBmaWxlRXh0OiBzdHJpbmcgPSBmaWxlLm5hbWUuc3BsaXQoJy4nKS5wb3AoKSB8fCAnJztcblxuICAgICAgICByZXR1cm4gdGhpcy5hY2NlcHRlZEZpbGVzICE9PSAnKi8qJyAmJiB0aGlzLmFjY2VwdGVkRmlsZXMubGVuZ3RoID4gMCA/IHRoaXMuYWNjZXB0ZWRGaWxlcy5pbmNsdWRlcyhmaWxlRXh0KSA6IHRydWU7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImticS1maWxlLXVwbG9hZFwiXG4gICAgIGticUZpbGVEcm9wXG4gICAgIFtjbGFzcy5rYnEtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICBbY2xhc3Mua2JxLWVycm9yXT1cImVycm9ycyAmJiBlcnJvcnMubGVuZ3RoXCJcbiAgICAgKGZpbGVzRHJvcHBlZCk9XCJvbkZpbGVEcm9wcGVkKCRldmVudClcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRyb3B6b25lXCIgKm5nSWY9XCIhZmlsZXMubGVuZ3RoOyBlbHNlIGZpbGVPdXRwdXRcIj5cbiAgICAgICAgICAgIDxpIGticS1pY29uPVwibWMtdXBsb2FkLXRvLWNsb3VkXzI0XCI+PC9pPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkcm9wem9uZV9fdGV4dFwiPlxuICAgICAgICAgICAgICAgIHt7IGNvbmZpZy5jYXB0aW9uVGV4dCB9fVxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImticS1saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmticS1mb2N1c2VkXT1cImhhc0ZvY3VzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2Zvcl09XCJpbnB1dElkXCI+XG4gICAgICAgICAgICAgICAge3sgY29uZmlnLmJyb3dzZUxpbmsgfX1cbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICA8aW5wdXQgI2lucHV0XG4gICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICAgY2xhc3M9XCJjZGstdmlzdWFsbHktaGlkZGVuXCJcbiAgICAgICAgICAgW2lkXT1cImlucHV0SWRcIlxuICAgICAgICAgICBbYWNjZXB0XT1cImFjY2VwdGVkRmlsZXNcIlxuICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAoY2hhbmdlKT1cIm9uRmlsZVNlbGVjdGVkVmlhQ2xpY2soJGV2ZW50KVwiPlxuPC9kaXY+XG48a2JxLWhpbnQgY2xhc3M9XCJrYnEtZmlsZS11cGxvYWRfX2hpbnRcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbaGludF1cIj48L25nLWNvbnRlbnQ+XG48L2ticS1oaW50PlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cImVycm9ycyAmJiBlcnJvcnMubGVuZ3RoXCI+XG4gICAgPGticS1oaW50IGNsYXNzPVwia2JxLWZpbGUtdXBsb2FkX19oaW50IGticS1lcnJvclwiICpuZ0Zvcj1cImxldCBlcnJvciBvZiBlcnJvcnNcIj57eyBlcnJvciB9fTwva2JxLWhpbnQ+XG48L25nLWNvbnRhaW5lcj5cblxuXG48bmctdGVtcGxhdGUgI2ZpbGVPdXRwdXQ+XG4gICAgPGRpdiBjbGFzcz1cImZpbGUtaXRlbVwiICpuZ0lmPVwiZmlsZXMgJiYgZmlsZXMubGVuZ3RoXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaWxlLWl0ZW1fX3RleHQtd3JhcHBlclwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInsgbG9hZGluZzogZmlsZXNbMF0ubG9hZGluZyB8IGFzeW5jLCBwcm9ncmVzczogZmlsZXNbMF0ucHJvZ3Jlc3MgfCBhc3luY30gYXMgYXN5bmNEYXRhXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFhc3luY0RhdGEubG9hZGluZ1wiPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJba2JxLWljb25dXCI+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgPGticS1wcm9ncmVzcy1zcGlubmVyXG4gICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJhc3luY0RhdGEucHJvZ3Jlc3MgfHwgMFwiXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiYXN5bmNEYXRhLmxvYWRpbmdcIlxuICAgICAgICAgICAgICAgID48L2ticS1wcm9ncmVzcy1zcGlubmVyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWxlLWl0ZW1fX3RleHRcIiBbbWNFbGxpcHNpc0NlbnRlcl09XCJmaWxlc1swXS5maWxlLm5hbWVcIiBbbWluVmlzaWJsZUxlbmd0aF09XCIxMFwiPjwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGkga2JxLWljb24tYnV0dG9uPVwibWMtY2xvc2UtY2lyY2xlXzE2XCJcbiAgICAgICAgICAgW2NvbG9yXT1cIidjb250cmFzdCdcIlxuICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAoa2V5ZG93bi5kZWxldGUpPVwiZGVsZXRlSXRlbSgpXCJcbiAgICAgICAgICAgKGtleWRvd24uYmFja3NwYWNlKT1cImRlbGV0ZUl0ZW0oKVwiXG4gICAgICAgICAgIChjbGljayk9XCJkZWxldGVJdGVtKCRldmVudClcIj5cbiAgICAgICAgPC9pPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -2,10 +2,10 @@ import { Component, ViewEncapsulation } from '@angular/core';
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
import * as i1 from "@koobiq/components/icon";
|
|
4
4
|
export class KbqCleaner {
|
|
5
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
6
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
5
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: KbqCleaner, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.0", type: KbqCleaner, selector: "kbq-cleaner", host: { classAttribute: "kbq-cleaner" }, exportAs: ["kbqCleaner"], ngImport: i0, template: `<i kbq-icon-button="mc-close-circle_16" [autoColor]="true"></i>`, isInline: true, styles: [".kbq-cleaner{display:flex;align-items:center;justify-content:center;width:var(--kbq-form-field-size-icon-button-size, 24px);margin-right:var(--kbq-form-field-size-icon-button-margin-right, 4px);height:100%;cursor:pointer}\n"], dependencies: [{ kind: "component", type: i1.KbqIconButton, selector: "[kbq-icon-button]", inputs: ["color", "small", "tabindex", "disabled"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
7
7
|
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: KbqCleaner, decorators: [{
|
|
9
9
|
type: Component,
|
|
10
10
|
args: [{ selector: 'kbq-cleaner', exportAs: 'kbqCleaner', template: `<i kbq-icon-button="mc-close-circle_16" [autoColor]="true"></i>`, host: {
|
|
11
11
|
class: 'kbq-cleaner'
|